diff --git a/apps/core/src/components/address-alias/AddressAlias.tsx b/apps/core/src/components/address-alias/AddressAlias.tsx index 9456c6a5c4..769f4088df 100644 --- a/apps/core/src/components/address-alias/AddressAlias.tsx +++ b/apps/core/src/components/address-alias/AddressAlias.tsx @@ -15,7 +15,11 @@ interface AddressAliasProps { noTruncate?: boolean; truncateUnknown?: boolean; onCopy?: (e: React.MouseEvent) => void; - renderAddress?: (addressToDisplay: string, copyButton: React.ReactNode) => React.ReactNode; + renderAddress?: ( + addressToDisplay: string, + copyButton: React.ReactNode, + hasAlias: boolean, + ) => React.ReactNode; renderAlias?: (addressAlias: string) => React.ReactNode; hideAlias?: boolean; } @@ -37,8 +41,8 @@ export function AddressAlias({ noTruncate || !truncateUnknown ? address : trimOrFormatAddress(address); const copyButton = onCopy && ( - - + + ); @@ -50,27 +54,31 @@ export function AddressAlias({ {!hideAlias && addressAlias && (
- {addressAlias.imageUrl ? ( - - ) : ( - - )} - {renderAlias?.(addressAlias.alias) ?? addressAlias.alias} +
+ {addressAlias.imageUrl ? ( + + ) : ( + + )} +
+ + {renderAlias?.(addressAlias.alias) ?? addressAlias.alias} +
)} -
+
{renderAddress ? ( - renderAddress(addressToDisplay, copyButton) + renderAddress(addressToDisplay, copyButton, !!addressAlias) ) : ( <> {addressHead} diff --git a/apps/explorer/src/components/ui/InternalLink.tsx b/apps/explorer/src/components/ui/InternalLink.tsx index 4abbfa0d0a..98643b484e 100644 --- a/apps/explorer/src/components/ui/InternalLink.tsx +++ b/apps/explorer/src/components/ui/InternalLink.tsx @@ -9,21 +9,17 @@ import { AddressAlias, useGetDefaultIotaName, useCopyToClipboard, - ImageIcon, - ImageIconSize, } from '@iota/core'; import { isValidIotaName } from '@iota/iota-names-sdk'; import { formatAddress, formatDigest, formatType, isValidIotaAddress } from '@iota/iota-sdk/utils'; import clsx from 'clsx'; import React, { type ReactNode } from 'react'; -import { useValidatorByAddress } from '~/hooks'; import { Link, type LinkProps } from '~/components/ui'; interface BaseInternalLinkProps extends LinkProps { showAddressAlias?: boolean; hideAlias?: boolean; - showValidatorImage?: boolean; noTruncate?: boolean; label?: string | ReactNode; renderAddressAlias?: (alias: string) => ReactNode; @@ -32,29 +28,6 @@ interface BaseInternalLinkProps extends LinkProps { onCopyError?: (e: unknown, text: string) => void; } -function ValidatorIdentityLabel({ - name, - imageUrl, -}: { - name: string; - imageUrl?: string | null; -}): ReactNode { - return ( -
-
- -
- {name} -
- ); -} - function createInternalLink( base: string, propName: T, @@ -70,7 +43,6 @@ function createInternalLink( renderAddressAlias, showAddressAlias = ['address', 'object', 'validator'].includes(base), hideAlias = false, - showValidatorImage = false, className, ...props }: BaseInternalLinkProps & Record) => { @@ -82,9 +54,6 @@ function createInternalLink( const isResolveIotaName = base === 'address' && isValidIotaAddress(id); const { data: iotaName } = useGetDefaultIotaName(isResolveIotaName ? id : null); - const validator = useValidatorByAddress( - showValidatorImage && base === 'address' ? id : undefined, - ); const copyToClipboard = useCopyToClipboard(); async function handleCopyClick(event: React.MouseEvent) { @@ -97,11 +66,7 @@ function createInternalLink( } } - const validatorLabel = validator ? ( - - ) : null; - - if (showAddressAlias && !validatorLabel) { + if (showAddressAlias) { return ( ( noTruncate={noTruncate} truncateUnknown={!noTruncate} hideAlias={hideAlias} - renderAddress={(address, copyButton) => ( + renderAddress={(address, copyButton, hasAlias) => ( ( className, )} variant="mono" + size={hasAlias ? 'sm' : undefined} to={to} {...props} > - {iotaName || label || address} + {hasAlias ? label || address : iotaName || label || address} {copyButton} @@ -140,7 +106,7 @@ function createInternalLink( to={to} {...props} > - {validatorLabel || label || truncatedAddress} + {label || truncatedAddress} {copyText && ( diff --git a/apps/explorer/src/lib/ui/utils/generateActivityTableColumns.tsx b/apps/explorer/src/lib/ui/utils/generateActivityTableColumns.tsx index a57cde375b..df258360be 100644 --- a/apps/explorer/src/lib/ui/utils/generateActivityTableColumns.tsx +++ b/apps/explorer/src/lib/ui/utils/generateActivityTableColumns.tsx @@ -133,7 +133,6 @@ export function generateActivityTableColumns( address={sender} copyText={sender} className="[&>div]:max-w-[200px] [&>div]:truncate" - showValidatorImage /> ); @@ -160,7 +159,6 @@ export function generateActivityTableColumns( address={counterparty} copyText={counterparty} className="[&>div]:max-w-[200px] [&>div]:truncate" - showValidatorImage /> ); @@ -203,7 +201,7 @@ export function generateActivityTableColumns(
{sign + formatted} IOTA diff --git a/apps/explorer/src/lib/ui/utils/generateTransactionsTableColumns.tsx b/apps/explorer/src/lib/ui/utils/generateTransactionsTableColumns.tsx index d84bd261e3..8dfb837665 100644 --- a/apps/explorer/src/lib/ui/utils/generateTransactionsTableColumns.tsx +++ b/apps/explorer/src/lib/ui/utils/generateTransactionsTableColumns.tsx @@ -188,7 +188,6 @@ export function generateTransactionsTableColumns( address={address} copyText={address} className="[&>div]:max-w-[200px] [&>div]:truncate" - showValidatorImage /> );