{"version":3,"file":"static/chunks/1464-1ed0f203b10bfc43.js","mappings":"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","sources":["webpack://_N_E/./lib/address/parseMetaPayload.ts","webpack://_N_E/./lib/address/useAddressMetadataInfoQuery.ts","webpack://_N_E/./lib/hooks/useIsAccountActionAllowed.tsx","webpack://_N_E/./lib/token/tokenTypes.ts","webpack://_N_E/./stubs/token.ts","webpack://_N_E/./ui/shared/AccountActionsMenu/parts/ButtonItem.tsx","webpack://_N_E/./ui/shared/AccountActionsMenu/parts/MenuItem.tsx","webpack://_N_E/./ui/shared/AccountActionsMenu/items/MetadataUpdateMenuItem.tsx","webpack://_N_E/./ui/shared/AccountActionsMenu/items/PrivateTagMenuItem.tsx","webpack://_N_E/./ui/shared/AccountActionsMenu/items/PublicTagMenuItem.tsx","webpack://_N_E/./ui/shared/AccountActionsMenu/items/TokenInfoMenuItem.tsx","webpack://_N_E/./ui/shared/AccountActionsMenu/AccountActionsMenu.tsx","webpack://_N_E/./ui/shared/ContainerWithScrollY.tsx","webpack://_N_E/./ui/shared/HintPopover.tsx","webpack://_N_E/./ui/shared/DetailsInfoItem.tsx","webpack://_N_E/./ui/shared/DetailsSponsoredItem.tsx","webpack://_N_E/./ui/shared/Hint.tsx","webpack://_N_E/./ui/shared/RawDataSnippet.tsx","webpack://_N_E/./ui/shared/TruncatedValue.tsx","webpack://_N_E/./ui/shared/ad/AdBanner.tsx","webpack://_N_E/./ui/shared/chakra/Menu.tsx","webpack://_N_E/./ui/shared/entities/nft/NftEntity.tsx","webpack://_N_E/./ui/tokenInstance/contexts/metadataUpdate.tsx"],"sourcesContent":["import type { AddressMetadataTag } from 'types/api/addressMetadata';\nimport type { AddressMetadataTagFormatted } from 'types/client/addressMetadata';\n\ntype MetaParsed = NonNullable;\n\nexport default function parseMetaPayload(meta: AddressMetadataTag['meta']): AddressMetadataTagFormatted['meta'] {\n try {\n const parsedMeta = JSON.parse(meta || '');\n\n if (typeof parsedMeta !== 'object' || parsedMeta === null || Array.isArray(parsedMeta)) {\n throw new Error('Invalid JSON');\n }\n\n const result: AddressMetadataTagFormatted['meta'] = {};\n\n const stringFields: Array = [\n 'textColor',\n 'bgColor',\n 'tagIcon',\n 'tagUrl',\n 'tooltipIcon',\n 'tooltipTitle',\n 'tooltipDescription',\n 'tooltipUrl',\n 'appID',\n 'appMarketplaceURL',\n 'appLogoURL',\n 'appActionButtonText',\n 'warpcastHandle',\n 'data',\n 'alertBgColor',\n 'alertTextColor',\n 'alertStatus',\n ];\n\n for (const stringField of stringFields) {\n if (stringField in parsedMeta && typeof parsedMeta[stringField as keyof typeof parsedMeta] === 'string') {\n result[stringField] = parsedMeta[stringField as keyof typeof parsedMeta];\n }\n }\n\n return result;\n } catch (error) {\n return null;\n }\n}\n","import type { AddressMetadataInfoFormatted, AddressMetadataTagFormatted } from 'types/client/addressMetadata';\n\nimport config from 'configs/app';\nimport useApiQuery from 'lib/api/useApiQuery';\n\nimport parseMetaPayload from './parseMetaPayload';\n\nexport default function useAddressMetadataInfoQuery(addresses: Array, isEnabled = true) {\n\n const resource = 'address_metadata_info';\n\n return useApiQuery(resource, {\n queryParams: {\n addresses,\n chainId: config.chain.id,\n tagsLimit: '20',\n },\n queryOptions: {\n enabled: isEnabled && addresses.length > 0 && config.features.addressMetadata.isEnabled,\n select: (data) => {\n const addresses = Object.entries(data.addresses)\n .map(([ address, { tags, reputation } ]) => {\n const formattedTags: Array = tags.map((tag) => ({ ...tag, meta: parseMetaPayload(tag.meta) }));\n return [ address.toLowerCase(), { tags: formattedTags, reputation } ] as const;\n })\n .reduce((result, item) => {\n result[item[0]] = item[1];\n return result;\n }, {} as AddressMetadataInfoFormatted['addresses']);\n\n return { addresses };\n },\n },\n });\n}\n","import { useQueryClient } from '@tanstack/react-query';\nimport React from 'react';\n\nimport type { UserInfo } from 'types/api/account';\n\nimport { resourceKey } from 'lib/api/resources';\nimport useLoginUrl from 'lib/hooks/useLoginUrl';\n\nexport default function useIsAccountActionAllowed() {\n const queryClient = useQueryClient();\n\n const profileData = queryClient.getQueryData([ resourceKey('user_info') ]);\n const isAuth = Boolean(profileData);\n const loginUrl = useLoginUrl();\n\n return React.useCallback(() => {\n if (!loginUrl) {\n return false;\n }\n\n if (!isAuth) {\n window.location.assign(loginUrl);\n return false;\n }\n\n return true;\n }, [ isAuth, loginUrl ]);\n}\n","import type { NFTTokenType, TokenType } from 'types/api/token';\n\nimport config from 'configs/app';\n\nconst tokenStandardName = config.chain.tokenStandard;\n\nexport const NFT_TOKEN_TYPES: Record = {\n 'ERC-721': `${ tokenStandardName }-721`,\n 'ERC-1155': `${ tokenStandardName }-1155`,\n 'ERC-404': `${ tokenStandardName }-404`,\n};\n\nexport const TOKEN_TYPES: Record = {\n 'ERC-20': `${ tokenStandardName }-20`,\n ...NFT_TOKEN_TYPES,\n};\n\nexport const NFT_TOKEN_TYPE_IDS: Array = [ 'ERC-721', 'ERC-1155', 'ERC-404' ];\nexport const TOKEN_TYPE_IDS: Array = [ 'ERC-20', ...NFT_TOKEN_TYPE_IDS ];\n\nexport function getTokenTypeName(typeId: TokenType) {\n return TOKEN_TYPES[typeId];\n}\n","import type {\n TokenCounters,\n TokenHolder,\n TokenHolders,\n TokenHoldersPagination,\n TokenInfo,\n TokenInstance,\n TokenType,\n} from 'types/api/token';\nimport type { TokenInstanceTransferPagination, TokenInstanceTransferResponse } from 'types/api/tokens';\nimport type { TokenTransfer, TokenTransferPagination, TokenTransferResponse } from 'types/api/tokenTransfer';\n\nimport { ADDRESS_PARAMS, ADDRESS_HASH } from './addressParams';\nimport { TX_HASH } from './tx';\nimport { generateListStub } from './utils';\n\nexport const BLOCK_HASH = '0x8fa7b9e5e5e79deeb62d608db22ba9a5cb45388c7ebb9223ae77331c6080dc70';\n\nexport const TOKEN_INFO_ERC_20: TokenInfo<'ERC-20'> = {\n address: ADDRESS_HASH,\n circulating_market_cap: '117629601.61913824',\n decimals: '18',\n exchange_rate: '0.999997',\n holders: '16026',\n name: 'Stub Token (goerli)',\n symbol: 'STUB',\n total_supply: '60000000000000000000000',\n type: 'ERC-20',\n icon_url: null,\n};\n\nexport const TOKEN_INFO_ERC_721: TokenInfo<'ERC-721'> = {\n ...TOKEN_INFO_ERC_20,\n circulating_market_cap: null,\n type: 'ERC-721',\n};\n\nexport const TOKEN_INFO_ERC_1155: TokenInfo<'ERC-1155'> = {\n ...TOKEN_INFO_ERC_20,\n circulating_market_cap: null,\n type: 'ERC-1155',\n};\n\nexport const TOKEN_INFO_ERC_404: TokenInfo<'ERC-404'> = {\n ...TOKEN_INFO_ERC_20,\n circulating_market_cap: null,\n type: 'ERC-404',\n};\n\nexport const TOKEN_COUNTERS: TokenCounters = {\n token_holders_count: '123456',\n transfers_count: '123456',\n};\n\nexport const TOKEN_HOLDER_ERC_20: TokenHolder = {\n address: ADDRESS_PARAMS,\n value: '1021378038331138520',\n};\n\nexport const TOKEN_HOLDER_ERC_1155: TokenHolder = {\n address: ADDRESS_PARAMS,\n token_id: '12345',\n value: '1021378038331138520',\n};\n\nexport const getTokenHoldersStub = (type?: TokenType, pagination: TokenHoldersPagination | null = null): TokenHolders => {\n switch (type) {\n case 'ERC-721':\n return generateListStub<'token_holders'>(TOKEN_HOLDER_ERC_20, 50, { next_page_params: pagination });\n case 'ERC-1155':\n return generateListStub<'token_holders'>(TOKEN_HOLDER_ERC_1155, 50, { next_page_params: pagination });\n case 'ERC-404':\n return generateListStub<'token_holders'>(TOKEN_HOLDER_ERC_1155, 50, { next_page_params: pagination });\n default:\n return generateListStub<'token_holders'>(TOKEN_HOLDER_ERC_20, 50, { next_page_params: pagination });\n }\n};\n\nexport const getTokenInstanceHoldersStub = (type?: TokenType, pagination: TokenHoldersPagination | null = null): TokenHolders => {\n switch (type) {\n case 'ERC-721':\n return generateListStub<'token_instance_holders'>(TOKEN_HOLDER_ERC_20, 10, { next_page_params: pagination });\n case 'ERC-1155':\n return generateListStub<'token_instance_holders'>(TOKEN_HOLDER_ERC_1155, 10, { next_page_params: pagination });\n case 'ERC-404':\n return generateListStub<'token_instance_holders'>(TOKEN_HOLDER_ERC_1155, 10, { next_page_params: pagination });\n default:\n return generateListStub<'token_instance_holders'>(TOKEN_HOLDER_ERC_20, 10, { next_page_params: pagination });\n }\n};\n\nexport const TOKEN_TRANSFER_ERC_20: TokenTransfer = {\n block_hash: BLOCK_HASH,\n from: ADDRESS_PARAMS,\n log_index: '4',\n method: 'addLiquidity',\n timestamp: '2022-06-24T10:22:11.000000Z',\n to: ADDRESS_PARAMS,\n token: TOKEN_INFO_ERC_20,\n total: {\n decimals: '18',\n value: '9851351626684503',\n },\n tx_hash: TX_HASH,\n type: 'token_minting',\n};\n\nexport const TOKEN_TRANSFER_ERC_721: TokenTransfer = {\n ...TOKEN_TRANSFER_ERC_20,\n total: {\n token_id: '35870',\n },\n token: TOKEN_INFO_ERC_721,\n};\n\nexport const TOKEN_TRANSFER_ERC_1155: TokenTransfer = {\n ...TOKEN_TRANSFER_ERC_20,\n total: {\n token_id: '35870',\n value: '123',\n decimals: '18',\n },\n token: TOKEN_INFO_ERC_1155,\n};\n\nexport const TOKEN_TRANSFER_ERC_404: TokenTransfer = {\n ...TOKEN_TRANSFER_ERC_20,\n total: {\n token_id: '35870',\n value: '123',\n decimals: '18',\n },\n token: TOKEN_INFO_ERC_404,\n};\n\nexport const getTokenTransfersStub = (type?: TokenType, pagination: TokenTransferPagination | null = null): TokenTransferResponse => {\n switch (type) {\n case 'ERC-721':\n return generateListStub<'token_transfers'>(TOKEN_TRANSFER_ERC_721, 50, { next_page_params: pagination });\n case 'ERC-1155':\n return generateListStub<'token_transfers'>(TOKEN_TRANSFER_ERC_1155, 50, { next_page_params: pagination });\n case 'ERC-404':\n return generateListStub<'token_transfers'>(TOKEN_TRANSFER_ERC_404, 50, { next_page_params: pagination });\n default:\n return generateListStub<'token_transfers'>(TOKEN_TRANSFER_ERC_20, 50, { next_page_params: pagination });\n }\n};\n\nexport const getTokenInstanceTransfersStub = (type?: TokenType, pagination: TokenInstanceTransferPagination | null = null): TokenInstanceTransferResponse => {\n switch (type) {\n case 'ERC-721':\n return generateListStub<'token_instance_transfers'>(TOKEN_TRANSFER_ERC_721, 10, { next_page_params: pagination });\n case 'ERC-1155':\n return generateListStub<'token_instance_transfers'>(TOKEN_TRANSFER_ERC_1155, 10, { next_page_params: pagination });\n case 'ERC-404':\n return generateListStub<'token_instance_transfers'>(TOKEN_TRANSFER_ERC_404, 10, { next_page_params: pagination });\n default:\n return generateListStub<'token_instance_transfers'>(TOKEN_TRANSFER_ERC_20, 10, { next_page_params: pagination });\n }\n};\n\nexport const TOKEN_INSTANCE: TokenInstance = {\n animation_url: null,\n external_app_url: 'https://vipsland.com/nft/collections/genesis/188882',\n id: '188882',\n image_url: 'https://ipfs.vipsland.com/nft/collections/genesis/188882.gif',\n is_unique: true,\n metadata: {\n attributes: Array(3).fill({ trait_type: 'skin tone', value: 'very light skin tone' }),\n description: '**GENESIS #188882**, **8a77ca1bcaa4036f** :: *844th* generation of *#57806 and #57809* :: **eGenetic Hash Code (eDNA)** = *2822355e953a462d*',\n external_url: 'https://vipsland.com/nft/collections/genesis/188882',\n image: 'https://ipfs.vipsland.com/nft/collections/genesis/188882.gif',\n name: 'GENESIS #188882, 8a77ca1bcaa4036f',\n },\n owner: ADDRESS_PARAMS,\n holder_address_hash: ADDRESS_HASH,\n};\n","import { IconButton, Tooltip } from '@chakra-ui/react';\nimport React from 'react';\n\nimport type { IconName } from 'ui/shared/IconSvg';\nimport IconSvg from 'ui/shared/IconSvg';\n\ninterface Props {\n className?: string;\n onClick: () => void;\n label: string;\n icon: IconName | React.ReactElement;\n isDisabled?: boolean;\n}\n\nconst ButtonItem = ({ className, label, onClick, icon, isDisabled }: Props) => {\n return (\n \n : icon }\n onClick={ onClick }\n isDisabled={ isDisabled }\n size=\"sm\"\n variant=\"outline\"\n px=\"4px\"\n />\n \n );\n};\n\nexport default ButtonItem;\n","import { MenuItem as MenuItemChakra } from '@chakra-ui/react';\nimport React from 'react';\n\ninterface Props {\n className?: string;\n children: React.ReactNode;\n onClick: () => void;\n isDisabled?: boolean;\n}\n\nconst MenuItem = ({ className, children, onClick, isDisabled }: Props) => {\n return (\n \n { children }\n \n );\n};\n\nexport default MenuItem;\n","import React from 'react';\n\nimport type { ItemProps } from '../types';\n\nimport IconSvg from 'ui/shared/IconSvg';\nimport { useMetadataUpdateContext } from 'ui/tokenInstance/contexts/metadataUpdate';\n\nimport ButtonItem from '../parts/ButtonItem';\nimport MenuItem from '../parts/MenuItem';\n\nconst MetadataUpdateMenuItem = ({ type, className }: ItemProps) => {\n\n const { status, setStatus } = useMetadataUpdateContext() || {};\n\n const handleClick = React.useCallback(() => {\n setStatus?.('MODAL_OPENED');\n }, [ setStatus ]);\n\n const element = (() => {\n switch (type) {\n case 'button': {\n return (\n \n );\n }\n case 'menu_item': {\n return (\n \n \n Refresh metadata\n \n );\n }\n }\n })();\n\n return element;\n};\n\nexport default React.memo(MetadataUpdateMenuItem);\n","import { useDisclosure } from '@chakra-ui/react';\nimport { useQueryClient } from '@tanstack/react-query';\nimport { useRouter } from 'next/router';\nimport React from 'react';\n\nimport type { ItemProps } from '../types';\nimport type { Address } from 'types/api/address';\nimport type { Transaction } from 'types/api/transaction';\n\nimport { getResourceKey } from 'lib/api/useApiQuery';\nimport getPageType from 'lib/mixpanel/getPageType';\nimport AddressModal from 'ui/privateTags/AddressModal/AddressModal';\nimport TransactionModal from 'ui/privateTags/TransactionModal/TransactionModal';\nimport IconSvg from 'ui/shared/IconSvg';\n\nimport ButtonItem from '../parts/ButtonItem';\nimport MenuItem from '../parts/MenuItem';\n\ninterface Props extends ItemProps {\n entityType?: 'address' | 'tx';\n}\n\nconst PrivateTagMenuItem = ({ className, hash, onBeforeClick, entityType = 'address', type }: Props) => {\n const modal = useDisclosure();\n const queryClient = useQueryClient();\n const router = useRouter();\n\n const queryKey = getResourceKey(entityType === 'tx' ? 'tx' : 'address', { pathParams: { hash } });\n const queryData = queryClient.getQueryData
(queryKey);\n\n const handleClick = React.useCallback(() => {\n if (!onBeforeClick()) {\n return;\n }\n\n modal.onOpen();\n }, [ modal, onBeforeClick ]);\n\n const handleAddPrivateTag = React.useCallback(async() => {\n await queryClient.refetchQueries({ queryKey });\n modal.onClose();\n }, [ queryClient, queryKey, modal ]);\n\n if (\n queryData &&\n (\n ('private_tags' in queryData && queryData.private_tags?.length) ||\n ('tx_tag' in queryData && queryData.tx_tag)\n )\n ) {\n return null;\n }\n\n const pageType = getPageType(router.pathname);\n const modalProps = {\n isOpen: modal.isOpen,\n onClose: modal.onClose,\n onSuccess: handleAddPrivateTag,\n pageType,\n };\n\n const element = (() => {\n switch (type) {\n case 'button': {\n return ;\n }\n case 'menu_item': {\n return (\n \n \n Add private tag\n \n );\n }\n }\n })();\n\n return (\n <>\n { element }\n { entityType === 'tx' ?\n :\n \n }\n \n );\n};\n\nexport default React.memo(PrivateTagMenuItem);\n","import { useRouter } from 'next/router';\nimport React from 'react';\n\nimport type { ItemProps } from '../types';\n\nimport IconSvg from 'ui/shared/IconSvg';\n\nimport ButtonItem from '../parts/ButtonItem';\nimport MenuItem from '../parts/MenuItem';\n\nconst PublicTagMenuItem = ({ className, hash, onBeforeClick, type }: ItemProps) => {\n const router = useRouter();\n\n const handleClick = React.useCallback(() => {\n if (!onBeforeClick()) {\n return;\n }\n\n router.push({ pathname: '/public-tags/submit', query: { addresses: [ hash ] } });\n }, [ hash, onBeforeClick, router ]);\n\n const element = (() => {\n switch (type) {\n case 'button': {\n return ;\n }\n case 'menu_item': {\n return (\n \n \n Add public tag\n \n );\n }\n }\n })();\n\n return element;\n};\n\nexport default React.memo(PublicTagMenuItem);\n","import { chakra, useDisclosure } from '@chakra-ui/react';\nimport { useRouter } from 'next/router';\nimport React from 'react';\n\nimport type { ItemProps } from '../types';\n\nimport config from 'configs/app';\nimport useApiQuery from 'lib/api/useApiQuery';\nimport useHasAccount from 'lib/hooks/useHasAccount';\nimport { PAGE_TYPE_DICT } from 'lib/mixpanel/getPageType';\nimport AddressVerificationModal from 'ui/addressVerification/AddressVerificationModal';\nimport IconSvg from 'ui/shared/IconSvg';\n\nimport ButtonItem from '../parts/ButtonItem';\nimport MenuItem from '../parts/MenuItem';\n\nconst TokenInfoMenuItem = ({ className, hash, onBeforeClick, type }: ItemProps) => {\n const router = useRouter();\n const modal = useDisclosure();\n const isAuth = useHasAccount();\n\n const verifiedAddressesQuery = useApiQuery('verified_addresses', {\n pathParams: { chainId: config.chain.id },\n queryOptions: {\n enabled: isAuth,\n },\n });\n const applicationsQuery = useApiQuery('token_info_applications', {\n pathParams: { chainId: config.chain.id, id: undefined },\n queryOptions: {\n enabled: isAuth,\n },\n });\n const tokenInfoQuery = useApiQuery('token_verified_info', {\n pathParams: { hash, chainId: config.chain.id },\n queryOptions: {\n refetchOnMount: false,\n },\n });\n\n const handleAddAddressClick = React.useCallback(() => {\n if (!onBeforeClick({ pathname: '/account/verified-addresses' })) {\n return;\n }\n\n modal.onOpen();\n }, [ modal, onBeforeClick ]);\n\n const handleAddApplicationClick = React.useCallback(async() => {\n router.push({ pathname: '/account/verified-addresses', query: { address: hash } });\n }, [ hash, router ]);\n\n const handleVerifiedAddressSubmit = React.useCallback(async() => {\n await verifiedAddressesQuery.refetch();\n }, [ verifiedAddressesQuery ]);\n\n const handleShowMyAddressesClick = React.useCallback(async() => {\n router.push({ pathname: '/account/verified-addresses' });\n }, [ router ]);\n\n const element = (() => {\n const icon = ;\n const isVerifiedAddress = verifiedAddressesQuery.data?.verifiedAddresses\n .find(({ contractAddress }) => contractAddress.toLowerCase() === hash.toLowerCase());\n const hasApplication = applicationsQuery.data?.submissions.some(({ tokenAddress }) => tokenAddress.toLowerCase() === hash.toLowerCase());\n\n const label = (() => {\n if (!isVerifiedAddress) {\n return tokenInfoQuery.data?.tokenAddress ? 'Update token info' : 'Add token info';\n }\n\n return hasApplication || tokenInfoQuery.data?.tokenAddress ? 'Update token info' : 'Add token info';\n })();\n\n const onClick = isVerifiedAddress ? handleAddApplicationClick : handleAddAddressClick;\n\n switch (type) {\n case 'button': {\n return ;\n }\n case 'menu_item': {\n return (\n \n { icon }\n { label }\n \n );\n }\n }\n })();\n\n return (\n <>\n { element }\n \n \n );\n};\n\nexport default React.memo(TokenInfoMenuItem);\n","import { Box, IconButton, MenuButton, MenuList, Skeleton, chakra } from '@chakra-ui/react';\nimport { useRouter } from 'next/router';\nimport React from 'react';\n\nimport type { ItemProps } from './types';\n\nimport config from 'configs/app';\nimport useFetchProfileInfo from 'lib/hooks/useFetchProfileInfo';\nimport useIsAccountActionAllowed from 'lib/hooks/useIsAccountActionAllowed';\nimport * as mixpanel from 'lib/mixpanel/index';\nimport getQueryParamString from 'lib/router/getQueryParamString';\nimport Menu from 'ui/shared/chakra/Menu';\nimport IconSvg from 'ui/shared/IconSvg';\n\nimport MetadataUpdateMenuItem from './items/MetadataUpdateMenuItem';\nimport PrivateTagMenuItem from './items/PrivateTagMenuItem';\nimport PublicTagMenuItem from './items/PublicTagMenuItem';\nimport TokenInfoMenuItem from './items/TokenInfoMenuItem';\n\ninterface Props {\n isLoading?: boolean;\n className?: string;\n showUpdateMetadataItem?: boolean;\n}\n\nconst AccountActionsMenu = ({ isLoading, className, showUpdateMetadataItem }: Props) => {\n const router = useRouter();\n\n const hash = getQueryParamString(router.query.hash);\n const isTokenPage = router.pathname === '/token/[hash]';\n const isTokenInstancePage = router.pathname === '/token/[hash]/instance/[id]';\n const isTxPage = router.pathname === '/tx/[hash]';\n const isAccountActionAllowed = useIsAccountActionAllowed();\n\n const userInfoQuery = useFetchProfileInfo();\n\n const handleButtonClick = React.useCallback(() => {\n mixpanel.logEvent(mixpanel.EventTypes.PAGE_WIDGET, { Type: 'Address actions (more button)' });\n }, []);\n\n if (!config.features.account.isEnabled) {\n return null;\n }\n\n const userWithoutEmail = userInfoQuery.data && !userInfoQuery.data.email;\n\n const items = [\n {\n render: (props: ItemProps) => ,\n enabled: isTokenInstancePage && showUpdateMetadataItem,\n },\n {\n render: (props: ItemProps) => ,\n enabled: isTokenPage && config.features.addressVerification.isEnabled && !userWithoutEmail,\n },\n {\n render: (props: ItemProps) => ,\n enabled: true,\n },\n {\n render: (props: ItemProps) => ,\n enabled: !isTxPage && config.features.publicTagsSubmission.isEnabled,\n },\n ].filter(({ enabled }) => enabled);\n\n if (items.length === 0) {\n return null;\n }\n\n if (isLoading) {\n return ;\n }\n\n if (items.length === 1) {\n return (\n \n { items[0].render({ type: 'button', hash, onBeforeClick: isAccountActionAllowed }) }\n \n );\n }\n\n return (\n \n }\n aria-label=\"Show address menu\"\n />\n \n { items.map(({ render }, index) => (\n \n { render({ type: 'menu_item', hash, onBeforeClick: isAccountActionAllowed }) }\n \n )) }\n \n \n );\n};\n\nexport default React.memo(chakra(AccountActionsMenu));\n","import { Flex, useColorModeValue, chakra } from '@chakra-ui/react';\nimport React from 'react';\n\nexport type Props = {\n children: React.ReactNode;\n gradientHeight: number;\n className?: string;\n onScrollVisibilityChange?: (isVisible: boolean) => void;\n}\n\nconst ContainerWithScrollY = ({ className, gradientHeight, children, onScrollVisibilityChange }: Props) => {\n const ref = React.useRef(null);\n const [ hasScroll, setHasScroll ] = React.useState(false);\n\n React.useEffect(() => {\n if (!ref.current) {\n return;\n }\n\n const hasScroll = ref.current.scrollHeight >= ref.current.clientHeight + gradientHeight / 2;\n setHasScroll(hasScroll);\n onScrollVisibilityChange?.(hasScroll);\n }, [ gradientHeight, onScrollVisibilityChange ]);\n\n const gradientEndColor = useColorModeValue('white', 'black');\n\n return (\n \n { children }\n \n );\n};\n\nexport default chakra(ContainerWithScrollY);\n","import type {\n PopoverBodyProps,\n PopoverContentProps,\n PopoverProps } from '@chakra-ui/react';\nimport {\n Skeleton,\n DarkMode,\n PopoverArrow,\n PopoverBody,\n PopoverContent,\n PopoverTrigger,\n Portal,\n chakra,\n useColorModeValue,\n} from '@chakra-ui/react';\nimport React from 'react';\n\nimport Popover from 'ui/shared/chakra/Popover';\n\nimport IconSvg from './IconSvg';\n\ninterface Props {\n label: React.ReactNode;\n className?: string;\n isLoading?: boolean;\n popoverProps?: Partial;\n popoverContentProps?: Partial;\n popoverBodyProps?: Partial;\n}\n\nconst HintPopover = ({ label, isLoading, className, popoverProps, popoverContentProps, popoverBodyProps }: Props) => {\n const bgColor = useColorModeValue('gray.700', 'gray.900');\n\n if (isLoading) {\n return ;\n }\n\n return (\n \n \n \n \n \n \n \n \n \n { label }\n \n \n \n \n \n );\n};\n\nexport default React.memo(chakra(HintPopover));\n","import { chakra, GridItem, Flex, Text, Skeleton } from '@chakra-ui/react';\nimport React from 'react';\n\nimport * as ContainerWithScrollY from 'ui/shared/ContainerWithScrollY';\nimport Hint from 'ui/shared/Hint';\nimport HintPopover from 'ui/shared/HintPopover';\n\nconst LabelScrollText = () => (\n \n Scroll to see more\n \n);\n\ninterface LabelProps {\n hint?: React.ReactNode;\n children: React.ReactNode;\n isLoading?: boolean;\n className?: string;\n id?: string;\n hasScroll?: boolean;\n type?: 'tooltip' | 'popover';\n}\n\nconst Label = chakra(({ hint, children, isLoading, id, className, hasScroll, type }: LabelProps) => {\n return (\n \n \n { hint && (type === 'popover' ?\n :\n ) }\n \n { children }\n { hasScroll && }\n \n \n \n );\n});\n\ninterface ValueProps {\n children: React.ReactNode;\n className?: string;\n}\n\nconst Value = chakra(({ children, className }: ValueProps) => {\n return (\n \n { children }\n \n );\n});\n\nconst ValueWithScroll = chakra(({ children, gradientHeight, onScrollVisibilityChange, className }: ContainerWithScrollY.Props) => {\n return (\n \n \n { children }\n \n \n );\n});\n\nexport {\n Label,\n Value,\n ValueWithScroll,\n};\n","import { GridItem } from '@chakra-ui/react';\nimport React from 'react';\n\nimport config from 'configs/app';\nimport * as cookies from 'lib/cookies';\nimport useIsMobile from 'lib/hooks/useIsMobile';\nimport AdBanner from 'ui/shared/ad/AdBanner';\nimport * as DetailsInfoItem from 'ui/shared/DetailsInfoItem';\n\nconst feature = config.features.adsBanner;\n\ninterface Props {\n isLoading?: boolean;\n}\n\nconst DetailsSponsoredItem = ({ isLoading }: Props) => {\n const isMobile = useIsMobile();\n const hasAdblockCookie = cookies.get(cookies.NAMES.ADBLOCK_DETECTED);\n\n if (!feature.isEnabled || hasAdblockCookie === 'true') {\n return null;\n }\n\n if (isMobile) {\n return (\n \n \n \n );\n }\n\n return (\n <>\n \n Sponsored\n \n \n \n \n \n );\n};\n\nexport default React.memo(DetailsSponsoredItem);\n","import type { TooltipProps } from '@chakra-ui/react';\nimport { chakra, IconButton, Tooltip, useDisclosure, Skeleton } from '@chakra-ui/react';\nimport React from 'react';\n\nimport IconSvg from 'ui/shared/IconSvg';\n\ninterface Props {\n label: string | React.ReactNode;\n className?: string;\n tooltipProps?: Partial;\n isLoading?: boolean;\n}\n\nconst Hint = ({ label, className, tooltipProps, isLoading }: Props) => {\n // have to implement controlled tooltip because of the issue - https://github.com/chakra-ui/chakra-ui/issues/7107\n const { isOpen, onOpen, onToggle, onClose } = useDisclosure();\n\n const handleClick = React.useCallback((event: React.MouseEvent) => {\n event.stopPropagation();\n onToggle();\n }, [ onToggle ]);\n\n if (isLoading) {\n return ;\n }\n\n return (\n \n }\n boxSize={ 5 }\n variant=\"simple\"\n display=\"inline-block\"\n flexShrink={ 0 }\n className={ className }\n onMouseEnter={ onOpen }\n onMouseLeave={ onClose }\n onClick={ handleClick }\n />\n \n );\n};\n\nexport default React.memo(chakra(Hint));\n","import type { ChakraProps } from '@chakra-ui/react';\nimport { Box, Flex, chakra, useColorModeValue, Skeleton } from '@chakra-ui/react';\nimport React from 'react';\n\nimport CopyToClipboard from './CopyToClipboard';\n\ninterface Props {\n data: React.ReactNode;\n title?: string;\n className?: string;\n rightSlot?: React.ReactNode;\n beforeSlot?: React.ReactNode;\n textareaMaxHeight?: string;\n textareaMinHeight?: string;\n showCopy?: boolean;\n isLoading?: boolean;\n contentProps?: ChakraProps;\n}\n\nconst RawDataSnippet = ({\n data,\n className,\n title,\n rightSlot,\n beforeSlot,\n textareaMaxHeight,\n textareaMinHeight,\n showCopy = true,\n isLoading,\n contentProps,\n}: Props) => {\n // https://bugs.chromium.org/p/chromium/issues/detail?id=1362573\n // there is a problem with scrollbar color in chromium\n // so blackAlpha.50 here is replaced with #f5f5f6\n // and whiteAlpha.50 is replaced with #1a1b1b\n // const bgColor = useColorModeValue('blackAlpha.50', 'whiteAlpha.50');\n const bgColor = useColorModeValue('#f5f5f6', '#1a1b1b');\n return (\n \n { (title || rightSlot || showCopy) && (\n \n { title && { title } }\n { rightSlot }\n { typeof data === 'string' && showCopy && }\n \n ) }\n { beforeSlot }\n \n { data }\n \n \n );\n};\n\nexport default React.memo(chakra(RawDataSnippet));\n","import type { PlacementWithLogical } from '@chakra-ui/react';\nimport { Skeleton, chakra } from '@chakra-ui/react';\nimport React from 'react';\n\nimport TruncatedTextTooltip from 'ui/shared/TruncatedTextTooltip';\n\ninterface Props {\n className?: string;\n isLoading?: boolean;\n value: string;\n tooltipPlacement?: PlacementWithLogical;\n}\n\nconst TruncatedValue = ({ className, isLoading, value, tooltipPlacement }: Props) => {\n return (\n \n \n { value }\n \n \n );\n};\n\nexport default React.memo(chakra(TruncatedValue));\n","import { chakra } from '@chakra-ui/react';\nimport React from 'react';\n\nimport type { BannerPlatform } from './types';\n\nimport config from 'configs/app';\nimport { useAppContext } from 'lib/contexts/app';\nimport * as cookies from 'lib/cookies';\n\nimport AdBannerContent from './AdBannerContent';\n\nconst feature = config.features.adsBanner;\n\ninterface Props {\n className?: string;\n isLoading?: boolean;\n platform?: BannerPlatform;\n}\n\nconst AdBanner = ({ className, isLoading, platform }: Props) => {\n const provider = useAppContext().adBannerProvider;\n\n const hasAdblockCookie = cookies.get(cookies.NAMES.ADBLOCK_DETECTED, useAppContext().cookies);\n\n if (!feature.isEnabled || hasAdblockCookie === 'true' || !provider) {\n return null;\n }\n\n return (\n \n );\n};\n\nexport default chakra(AdBanner);\n","import type { MenuProps } from '@chakra-ui/react';\n// eslint-disable-next-line no-restricted-imports\nimport { Menu as MenuBase } from '@chakra-ui/react';\nimport React from 'react';\n\nconst Menu = (props: MenuProps) => {\n return ;\n};\n\nexport default React.memo(Menu);\n","import { chakra } from '@chakra-ui/react';\nimport _omit from 'lodash/omit';\nimport React from 'react';\n\nimport { route } from 'nextjs-routes';\n\nimport * as EntityBase from 'ui/shared/entities/base/components';\nimport TruncatedValue from 'ui/shared/TruncatedValue';\n\nconst Container = EntityBase.Container;\n\ntype IconProps = Pick & {\n name?: EntityBase.IconBaseProps['name'];\n};\n\nconst Icon = (props: IconProps) => {\n if (props.noIcon) {\n return null;\n }\n\n return (\n \n );\n};\n\ntype LinkProps = EntityBase.LinkBaseProps & Pick;\n\nconst Link = chakra((props: LinkProps) => {\n const defaultHref = route({ pathname: '/token/[hash]/instance/[id]', query: { hash: props.hash, id: props.id } });\n\n return (\n \n { props.children }\n \n );\n});\n\ntype ContentProps = Omit & Pick;\n\nconst Content = chakra((props: ContentProps) => {\n return (\n \n );\n});\n\nexport interface EntityProps extends EntityBase.EntityBaseProps {\n hash: string;\n id: string;\n}\n\nconst NftEntity = (props: EntityProps) => {\n const linkProps = _omit(props, [ 'className' ]);\n const partsProps = _omit(props, [ 'className', 'onClick' ]);\n\n return (\n \n \n \n \n \n \n );\n};\n\nexport default React.memo(chakra(NftEntity));\n\nexport {\n Container,\n Link,\n Icon,\n Content,\n};\n","import React from 'react';\n\ninterface MetadataUpdateProviderProps {\n children: React.ReactNode;\n}\n\ninterface TMetadataUpdateContext {\n status: Status;\n setStatus: (status: Status) => void;\n}\n\nexport const MetadataUpdateContext = React.createContext(null);\n\ntype Status = 'INITIAL' | 'MODAL_OPENED' | 'WAITING_FOR_RESPONSE' | 'SUCCESS' | 'ERROR';\n\nexport function MetadataUpdateProvider({ children }: MetadataUpdateProviderProps) {\n\n const [ status, setStatus ] = React.useState('INITIAL');\n\n const value = React.useMemo(() => {\n return {\n status,\n setStatus,\n };\n }, [ status ]);\n\n return (\n \n { children }\n \n );\n}\n\nexport function useMetadataUpdateContext() {\n const context = React.useContext(MetadataUpdateContext);\n if (context === undefined) {\n return null;\n }\n return context;\n}\n"],"names":["useAddressMetadataInfoQuery","addresses","isEnabled","useApiQuery","queryParams","chainId","config","chain","id","tagsLimit","queryOptions","enabled","length","features","addressMetadata","select","Object","entries","data","map","address","tags","reputation","param","formattedTags","tag","meta","parseMetaPayload","parsedMeta","JSON","parse","Array","isArray","result","stringField","error","toLowerCase","reduce","item","useIsAccountActionAllowed","isAuth","Boolean","queryClient","useQueryClient","getQueryData","resourceKey","loginUrl","useLoginUrl","React","window","location","assign","tokenStandardName","tokenStandard","TOKEN_TYPES","concat","NFT_TOKEN_TYPE_IDS","TOKEN_TYPE_IDS","getTokenTypeName","typeId","TOKEN_INFO_ERC_20","ADDRESS_HASH","circulating_market_cap","decimals","exchange_rate","holders","name","symbol","total_supply","type","icon_url","TOKEN_INFO_ERC_721","TOKEN_INFO_ERC_1155","TOKEN_INFO_ERC_404","TOKEN_COUNTERS","token_holders_count","transfers_count","TOKEN_HOLDER_ERC_20","ADDRESS_PARAMS","value","TOKEN_HOLDER_ERC_1155","token_id","getTokenHoldersStub","pagination","generateListStub","next_page_params","getTokenInstanceHoldersStub","TOKEN_TRANSFER_ERC_20","block_hash","from","log_index","method","timestamp","to","token","total","tx_hash","TX_HASH","TOKEN_TRANSFER_ERC_721","TOKEN_TRANSFER_ERC_1155","TOKEN_TRANSFER_ERC_404","getTokenTransfersStub","getTokenInstanceTransfersStub","TOKEN_INSTANCE","animation_url","external_app_url","image_url","is_unique","metadata","attributes","fill","trait_type","description","external_url","image","owner","holder_address_hash","parts_ButtonItem","className","label","onClick","icon","isDisabled","jsx_runtime","jsx","Tooltip","IconButton","aria-label","IconSvg","boxSize","size","variant","px","parts_MenuItem","children","MenuItemChakra","py","items_MetadataUpdateMenuItem","status","setStatus","useMetadataUpdateContext","handleClick","ButtonItem","jsxs","MenuItem","mr","span","items_PrivateTagMenuItem","queryData","hash","onBeforeClick","entityType","modal","useDisclosure","router","useRouter","queryKey","getResourceKey","pathParams","onOpen","handleAddPrivateTag","refetchQueries","onClose","private_tags","tx_tag","pageType","getPageType","pathname","modalProps","isOpen","onSuccess","element","Fragment","TransactionModal","transaction_hash","AddressModal","address_hash","items_PublicTagMenuItem","push","query","items_TokenInfoMenuItem","useHasAccount","verifiedAddressesQuery","applicationsQuery","undefined","tokenInfoQuery","refetchOnMount","handleAddAddressClick","handleAddApplicationClick","handleVerifiedAddressSubmit","refetch","handleShowMyAddressesClick","p","isVerifiedAddress","verifiedAddresses","find","contractAddress","hasApplication","submissions","some","tokenAddress","chakra","ml","AddressVerificationModal","defaultAddress","PAGE_TYPE_DICT","onSubmit","onAddTokenInfoClick","onShowListClick","AccountActionsMenu_AccountActionsMenu","isLoading","showUpdateMetadataItem","getQueryParamString","isTokenPage","isTokenInstancePage","isTxPage","isAccountActionAllowed","userInfoQuery","useFetchProfileInfo","handleButtonClick","mixpanel","PAGE_WIDGET","Type","account","userWithoutEmail","email","items","render","MetadataUpdateMenuItem","props","TokenInfoMenuItem","addressVerification","PrivateTagMenuItem","PublicTagMenuItem","publicTagsSubmission","filter","Skeleton","w","h","borderRadius","Box","Menu","MenuButton","as","colorScheme","MenuList","minWidth","zIndex","index","__webpack_exports__","Z","gradientHeight","onScrollVisibilityChange","ref","hasScroll","setHasScroll","current","scrollHeight","clientHeight","gradientEndColor","useColorModeValue","react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__","Flex","flexDirection","overflowY","_after","position","content","bottom","left","right","height","bgGradient","pr","pb","shared_HintPopover","popoverProps","popoverContentProps","popoverBodyProps","bgColor","Popover","trigger","isLazy","placement","PopoverTrigger","color","_hover","cursor","Portal","PopoverContent","maxW","base","lg","PopoverArrow","PopoverBody","fontSize","lineHeight","DarkMode","LabelScrollText","Text","fontWeight","align","Label","hint","GridItem","_notFirst","mt","columnGap","alignItems","HintPopover","my","Hint","isLoaded","Value","display","flexWrap","rowGap","pl","whiteSpace","ValueWithScroll","ContainerWithScrollY","feature","adsBanner","isMobile","useIsMobile","hasAdblockCookie","cookies","ADBLOCK_DETECTED","AdBanner","mx","justifyContent","DetailsInfoItem","tooltipProps","onToggle","event","stopPropagation","flexShrink","onMouseEnter","onMouseLeave","title","rightSlot","beforeSlot","textareaMaxHeight","textareaMinHeight","showCopy","contentProps","mb","CopyToClipboard","text","maxH","minH","wordBreak","overflowX","tooltipPlacement","TruncatedTextTooltip","overflow","textOverflow","platform","provider","useAppContext","adBannerProvider","AdBannerContent","MenuBase","gutter","Container","EntityBase","Icon","noIcon","iconSize","Link","defaultHref","route","href","Content","TruncatedValue","ZP","linkProps","_omit","partsProps","MetadataUpdateContext","MetadataUpdateProvider","Provider","context"],"sourceRoot":""}