@0xsequence/marketplace-sdk 0.5.7 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunk-2J7JIOW5.js +2 -0
- package/dist/{chunk-3OU7BADC.js → chunk-6MYDUGVO.js} +21 -4
- package/dist/chunk-6MYDUGVO.js.map +1 -0
- package/dist/chunk-6WMO5YM5.js +94 -0
- package/dist/chunk-6WMO5YM5.js.map +1 -0
- package/dist/{chunk-YA3DWLDC.js → chunk-A5ICXOCZ.js} +156 -227
- package/dist/chunk-A5ICXOCZ.js.map +1 -0
- package/dist/{chunk-G2T7HCWE.js → chunk-C42WHQRT.js} +3 -3
- package/dist/{chunk-G2T7HCWE.js.map → chunk-C42WHQRT.js.map} +1 -1
- package/dist/{chunk-ZBLU3Q22.js → chunk-DLB2EQRX.js} +2 -2
- package/dist/{chunk-ZBLU3Q22.js.map → chunk-DLB2EQRX.js.map} +1 -1
- package/dist/{chunk-YOKGP2EQ.js → chunk-FG2BBP3P.js} +1 -1
- package/dist/{chunk-YOKGP2EQ.js.map → chunk-FG2BBP3P.js.map} +1 -1
- package/dist/{chunk-Y56IIYDF.js → chunk-GMWUIMX4.js} +5 -5
- package/dist/{chunk-Y56IIYDF.js.map → chunk-GMWUIMX4.js.map} +1 -1
- package/dist/{chunk-OMCWTRBR.js → chunk-NKHM2AIS.js} +21 -4
- package/dist/chunk-NKHM2AIS.js.map +1 -0
- package/dist/{chunk-YYBU45PK.js → chunk-NXORBVUS.js} +2 -2
- package/dist/{chunk-L2K4DBH2.js → chunk-UZ3GJXBR.js} +3003 -3124
- package/dist/chunk-UZ3GJXBR.js.map +1 -0
- package/dist/{chunk-6YHHCGGY.js → chunk-VPJHNXZ2.js} +50 -74
- package/dist/chunk-VPJHNXZ2.js.map +1 -0
- package/dist/index-BwDj_3at.d.ts +72 -0
- package/dist/index.d.ts +4 -4
- package/dist/index.js +175 -88
- package/dist/react/_internal/databeat/index.js +7 -6
- package/dist/react/_internal/index.d.ts +2 -2
- package/dist/react/_internal/index.js +1 -1
- package/dist/react/hooks/index.d.ts +3 -65
- package/dist/react/hooks/index.js +8 -8
- package/dist/react/hooks/options/index.d.ts +8 -0
- package/dist/react/hooks/options/index.js +17 -0
- package/dist/react/hooks/options/index.js.map +1 -0
- package/dist/react/index.css +40 -29
- package/dist/react/index.css.map +1 -1
- package/dist/react/index.d.ts +3 -2
- package/dist/react/index.js +17 -13
- package/dist/react/ssr/index.js.map +1 -1
- package/dist/react/ui/components/collectible-card/index.css +40 -29
- package/dist/react/ui/components/collectible-card/index.css.map +1 -1
- package/dist/react/ui/components/collectible-card/index.d.ts +3 -2
- package/dist/react/ui/components/collectible-card/index.js +12 -11
- package/dist/react/ui/components/marketplace-logos/index.d.ts +1 -1
- package/dist/react/ui/components/marketplace-logos/index.js +1 -1
- package/dist/react/ui/icons/index.js +1 -1
- package/dist/react/ui/index.css +40 -29
- package/dist/react/ui/index.css.map +1 -1
- package/dist/react/ui/index.d.ts +1 -1
- package/dist/react/ui/index.js +12 -11
- package/dist/react/ui/modals/_internal/components/actionModal/index.css +48 -48
- package/dist/react/ui/modals/_internal/components/actionModal/index.css.map +1 -1
- package/dist/react/ui/modals/_internal/components/actionModal/index.d.ts +1 -1
- package/dist/react/ui/modals/_internal/components/actionModal/index.js +7 -6
- package/dist/styles/index.js +2 -2
- package/dist/types/index.js +1 -1
- package/dist/utils/index.d.ts +9 -7
- package/dist/utils/index.js +5 -3
- package/package.json +9 -5
- package/src/react/__tests__/provider.test.tsx +4 -4
- package/src/react/_internal/api/__mocks__/indexer.msw.ts +5 -5
- package/src/react/_internal/api/__mocks__/metadata.msw.ts +2 -2
- package/src/react/_internal/api/zod-schema.ts +2 -2
- package/src/react/_internal/types.ts +2 -2
- package/src/react/_internal/wagmi/__tests__/create-config.test.ts +6 -6
- package/src/react/_internal/wallet/__tests__/wallet.test.ts +1 -1
- package/src/react/_internal/wallet/wallet.ts +6 -2
- package/src/react/hooks/__tests__/useAutoSelectFeeOption.test.tsx +8 -12
- package/src/react/hooks/__tests__/useBalanceOfCollectible.test.tsx +5 -4
- package/src/react/hooks/__tests__/useCancelOrder.test.tsx +13 -6
- package/src/react/hooks/__tests__/useCancelTransactionSteps.test.tsx +6 -7
- package/src/react/hooks/__tests__/useCollectible.test.tsx +6 -7
- package/src/react/hooks/__tests__/useCollection.test.tsx +5 -6
- package/src/react/hooks/__tests__/useCollectionBalanceDetails.test.tsx +5 -4
- package/src/react/hooks/__tests__/useCollectionDetails.test.tsx +7 -6
- package/src/react/hooks/__tests__/useCollectionDetailsPolling.test.tsx +5 -4
- package/src/react/hooks/__tests__/useComparePrices.test.tsx +1 -2
- package/src/react/hooks/__tests__/useConvertPriceToUSD.test.tsx +2 -3
- package/src/react/hooks/__tests__/useCountListingsForCollectible.test.tsx +4 -5
- package/src/react/hooks/__tests__/useCountOfCollectables.test.tsx +6 -7
- package/src/react/hooks/__tests__/useCountOffersForCollectible.test.tsx +4 -5
- package/src/react/hooks/__tests__/useCurrencies.test.tsx +3 -4
- package/src/react/hooks/__tests__/useCurrency.test.tsx +4 -6
- package/src/react/hooks/__tests__/useCurrencyBalance.test.tsx +12 -7
- package/src/react/hooks/__tests__/useFilters.test.tsx +5 -6
- package/src/react/hooks/__tests__/useFloorOrder.test.tsx +5 -6
- package/src/react/hooks/__tests__/useGenerateBuyTransaction.test.tsx +6 -7
- package/src/react/hooks/__tests__/useGenerateCancelTransaction.test.tsx +1 -2
- package/src/react/hooks/__tests__/useGenerateListingTransaction.test.tsx +2 -3
- package/src/react/hooks/__tests__/useGenerateOfferTransaction.test.tsx +1 -2
- package/src/react/hooks/__tests__/useGenerateSellTransaction.test.tsx +1 -2
- package/src/react/hooks/__tests__/useHighestOffer.test.tsx +6 -7
- package/src/react/hooks/__tests__/useListBalances.test.tsx +1 -1
- package/src/react/hooks/__tests__/useListCollectibleActivities.test.tsx +2 -3
- package/src/react/hooks/__tests__/useListCollectibles.test.tsx +6 -7
- package/src/react/hooks/__tests__/useListCollectiblesPaginated.test.tsx +2 -3
- package/src/react/hooks/__tests__/useListCollectionActivities.test.tsx +3 -4
- package/src/react/hooks/__tests__/useListCollections.test.tsx +1 -2
- package/src/react/hooks/__tests__/useListListingsForCollectible.test.tsx +6 -7
- package/src/react/hooks/__tests__/useListOffersForCollectible.test.tsx +6 -7
- package/src/react/hooks/__tests__/useLowestListing.test.tsx +6 -7
- package/src/react/hooks/__tests__/useMarketplaceConfig.test.tsx +1 -2
- package/src/react/hooks/__tests__/useRoyaltyPercentage.test.tsx +1 -1
- package/src/react/hooks/options/__tests__/marketplaceConfigOptions.test.tsx +3 -4
- package/src/react/hooks/options/collectionOptions.ts +42 -0
- package/src/react/hooks/options/index.ts +2 -0
- package/src/react/hooks/useCancelOrder.tsx +3 -3
- package/src/react/hooks/useCancelTransactionSteps.tsx +11 -11
- package/src/react/hooks/useCollection.tsx +6 -37
- package/src/react/hooks/useCollectionBalanceDetails.tsx +3 -3
- package/src/react/hooks/useCollectionDetailsPolling.tsx +1 -1
- package/src/react/hooks/useCurrencies.tsx +1 -1
- package/src/react/hooks/useGenerateListingTransaction.tsx +1 -1
- package/src/react/hooks/useGenerateOfferTransaction.tsx +1 -1
- package/src/react/hooks/useGetReceiptFromHash.tsx +1 -1
- package/src/react/hooks/useListCollectibleActivities.tsx +1 -1
- package/src/react/hooks/useListCollectionActivities.tsx +1 -1
- package/src/react/index.ts +1 -0
- package/src/react/provider.tsx +2 -2
- package/src/react/ssr/__tests__/create-ssr-client.test.ts +1 -22
- package/src/react/ssr/create-ssr-client.ts +1 -1
- package/src/react/ui/components/_internals/action-button/ActionButton.tsx +3 -3
- package/src/react/ui/components/_internals/action-button/components/ActionButtonBody.tsx +2 -2
- package/src/react/ui/components/_internals/action-button/components/NonOwnerActions.tsx +4 -4
- package/src/react/ui/components/_internals/action-button/components/OwnerActions.tsx +2 -2
- package/src/react/ui/components/_internals/action-button/hooks/useActionButtonLogic.ts +1 -1
- package/src/react/ui/components/_internals/custom-select/__tests__/CustomSelect.test.tsx +2 -7
- package/src/react/ui/components/collectible-card/CollectibleCard.tsx +9 -2
- package/src/react/ui/components/collectible-card/Footer.tsx +1 -1
- package/src/react/ui/components/marketplace-logos/marketplace-logos.tsx +1 -1
- package/src/react/ui/icons/index.ts +2 -5
- package/src/react/ui/{icons/DiamondEye.tsx → images/marketplaces/LooksRare.tsx} +1 -1
- package/src/react/ui/modals/BuyModal/__tests__/Modal.test.tsx +10 -11
- package/src/react/ui/modals/BuyModal/hooks/__tests__/useBuyCollectable.test.tsx +343 -0
- package/src/react/ui/modals/BuyModal/hooks/__tests__/useCheckoutOptions.test.tsx +2 -7
- package/src/react/ui/modals/BuyModal/hooks/__tests__/useFees.test.tsx +4 -4
- package/src/react/ui/modals/BuyModal/hooks/__tests__/useLoadData.test.tsx +1 -1
- package/src/react/ui/modals/BuyModal/hooks/useCheckoutOptions.ts +3 -3
- package/src/react/ui/modals/BuyModal/hooks/useLoadData.ts +1 -1
- package/src/react/ui/modals/BuyModal/modals/Modal1155.tsx +23 -24
- package/src/react/ui/modals/BuyModal/modals/__tests__/CheckoutModal.test.tsx +2 -2
- package/src/react/ui/modals/BuyModal/modals/__tests__/Modal1155.test.tsx +209 -242
- package/src/react/ui/modals/CreateListingModal/__tests__/Modal.test.tsx +5 -11
- package/src/react/ui/modals/CreateListingModal/hooks/useGetTokenApproval.ts +1 -1
- package/src/react/ui/modals/CreateListingModal/index.tsx +1 -1
- package/src/react/ui/modals/MakeOfferModal/Modal.tsx +1 -1
- package/src/react/ui/modals/MakeOfferModal/__tests__/Modal.test.tsx +46 -49
- package/src/react/ui/modals/SellModal/__tests__/Modal.test.tsx +9 -28
- package/src/react/ui/modals/SellModal/hooks/useGetTokenApproval.tsx +2 -2
- package/src/react/ui/modals/SuccessfulPurchaseModal/__tests__/Modal.test.tsx +3 -3
- package/src/react/ui/modals/_internal/components/actionModal/ActionModal.tsx +4 -4
- package/src/react/ui/modals/_internal/components/actionModal/store.ts +1 -1
- package/src/react/ui/modals/_internal/components/alertMessage/index.tsx +2 -3
- package/src/react/ui/modals/_internal/components/currencyOptionsSelect/__tests__/index.test.tsx +4 -4
- package/src/react/ui/modals/_internal/components/expirationDateSelect/index.tsx +1 -1
- package/src/react/ui/modals/_internal/components/priceInput/__tests__/index.test.tsx +1 -8
- package/src/react/ui/modals/_internal/components/quantityInput/index.tsx +9 -5
- package/src/react/ui/modals/_internal/components/switchChainModal/__tests__/SwitchChainModal.test.tsx +4 -10
- package/src/react/ui/modals/_internal/components/switchChainModal/index.tsx +2 -2
- package/src/react/ui/modals/_internal/components/switchChainModal/store.ts +1 -1
- package/src/react/ui/modals/_internal/components/transaction-footer/index.tsx +9 -3
- package/src/react/ui/modals/_internal/components/transaction-footer/transactionFooter.css.ts +11 -0
- package/src/react/ui/modals/_internal/components/transactionStatusModal/__tests__/TransactionStatusModal.test.tsx +4 -9
- package/src/react/ui/modals/_internal/components/transactionStatusModal/__tests__/utils.test.ts +3 -3
- package/src/react/ui/modals/_internal/components/transactionStatusModal/hooks/useTransactionStatus.ts +4 -4
- package/src/react/ui/modals/_internal/components/transactionStatusModal/index.tsx +1 -1
- package/src/react/ui/modals/modal-provider.tsx +2 -2
- package/src/utils/__tests__/address.test.ts +1 -1
- package/src/utils/__tests__/getMarketplaceDetails.test.ts +4 -4
- package/src/utils/getMarketplaceDetails.ts +7 -7
- package/src/utils/index.ts +1 -0
- package/src/utils/networkconfigToWagmiChain.ts +17 -0
- package/src/utils/price.ts +2 -5
- package/test/const.ts +35 -0
- package/test/globalSetup.ts +15 -0
- package/test/index.ts +1 -0
- package/{src/react/_internal/test → test}/mocks/wallet.ts +5 -5
- package/test/setup.ts +20 -0
- package/test/test-utils.tsx +157 -0
- package/tsconfig.json +7 -1
- package/tsconfig.tsbuildinfo +1 -1
- package/vitest.config.js +5 -3
- package/dist/chunk-3OU7BADC.js.map +0 -1
- package/dist/chunk-6YHHCGGY.js.map +0 -1
- package/dist/chunk-GFADBQPX.js +0 -2
- package/dist/chunk-L2K4DBH2.js.map +0 -1
- package/dist/chunk-OMCWTRBR.js.map +0 -1
- package/dist/chunk-YA3DWLDC.js.map +0 -1
- package/src/react/_internal/test/setup.ts +0 -28
- package/src/react/_internal/test-utils.tsx +0 -97
- package/src/react/ui/icons/ArrowUp.tsx +0 -32
- package/src/react/ui/icons/InventoryIcon.tsx +0 -44
- package/src/react/ui/icons/MinusIcon.tsx +0 -34
- package/src/react/ui/icons/PlusIcon.tsx +0 -32
- package/src/react/ui/icons/PositiveCircleIcon.tsx +0 -38
- package/src/react/ui/modals/BuyModal/hooks/__tests__/useBuyCollectable.test.tsx.bak +0 -379
- package/dist/{chunk-GFADBQPX.js.map → chunk-2J7JIOW5.js.map} +0 -0
- package/dist/{chunk-YYBU45PK.js.map → chunk-NXORBVUS.js.map} +0 -0
- package/dist/{types-BVD42zE_.d.ts → types-CPl0DH-A.d.ts} +1 -1
- /package/src/react/ui/icons/{Bell.tsx → BellIcon.tsx} +0 -0
|
@@ -38,7 +38,7 @@ var calculatePriceDifferencePercentage = ({
|
|
|
38
38
|
return percentageDifference.toFixed(2);
|
|
39
39
|
};
|
|
40
40
|
var formatPrice = (amount, decimals) => {
|
|
41
|
-
const formattedUnits = Number(formatUnits(
|
|
41
|
+
const formattedUnits = Number(formatUnits(amount, decimals));
|
|
42
42
|
return formattedUnits.toLocaleString("en-US", {
|
|
43
43
|
minimumFractionDigits: 0,
|
|
44
44
|
maximumFractionDigits: decimals
|
|
@@ -46,8 +46,8 @@ var formatPrice = (amount, decimals) => {
|
|
|
46
46
|
};
|
|
47
47
|
|
|
48
48
|
// src/react/ui/components/marketplace-logos/marketplace-logos.tsx
|
|
49
|
-
import { lazy, Suspense } from "react";
|
|
50
49
|
import { Image } from "@0xsequence/design-system";
|
|
50
|
+
import { Suspense, lazy } from "react";
|
|
51
51
|
import { jsx } from "react/jsx-runtime";
|
|
52
52
|
var createMarketplaceLogo = (importFn, alt) => {
|
|
53
53
|
const LazyLogo = lazy(async () => {
|
|
@@ -224,6 +224,22 @@ function getRootDomain(url) {
|
|
|
224
224
|
return parts[parts.length - 2] || parts[0];
|
|
225
225
|
}
|
|
226
226
|
|
|
227
|
+
// src/utils/networkconfigToWagmiChain.ts
|
|
228
|
+
var networkToWagmiChain = (network) => ({
|
|
229
|
+
...network,
|
|
230
|
+
id: Number(network.chainId),
|
|
231
|
+
name: network.name,
|
|
232
|
+
nativeCurrency: { ...network.nativeToken },
|
|
233
|
+
rpcUrls: {
|
|
234
|
+
default: {
|
|
235
|
+
http: [network.rpcUrl]
|
|
236
|
+
},
|
|
237
|
+
public: {
|
|
238
|
+
http: [network.rpcUrl]
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
});
|
|
242
|
+
|
|
227
243
|
export {
|
|
228
244
|
truncateMiddle,
|
|
229
245
|
truncateEnd,
|
|
@@ -231,6 +247,7 @@ export {
|
|
|
231
247
|
getPresentableChainName,
|
|
232
248
|
calculatePriceDifferencePercentage,
|
|
233
249
|
formatPrice,
|
|
234
|
-
getMarketplaceDetails
|
|
250
|
+
getMarketplaceDetails,
|
|
251
|
+
networkToWagmiChain
|
|
235
252
|
};
|
|
236
|
-
//# sourceMappingURL=chunk-
|
|
253
|
+
//# sourceMappingURL=chunk-6MYDUGVO.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/utils/address.ts","../src/utils/network.ts","../src/utils/price.ts","../src/react/ui/components/marketplace-logos/marketplace-logos.tsx","../src/utils/getMarketplaceDetails.ts","../src/utils/networkconfigToWagmiChain.ts"],"sourcesContent":["export const truncateMiddle = (\n\taddress: string,\n\tminPrefix = 20,\n\tminSuffix = 3,\n): string => {\n\tif (minPrefix + minSuffix >= 40) {\n\t\treturn address;\n\t}\n\treturn `${address.substring(0, 2 + minPrefix)}…${address.substring(address.length - minSuffix)}`;\n};\n\nexport const truncateEnd = (text: string | undefined, truncateAt: number) => {\n\tif (!text) return '';\n\n\tlet finalText = text;\n\n\tif (text.length >= truncateAt) {\n\t\tfinalText = `${text.slice(0, truncateAt)}...`;\n\t}\n\n\treturn finalText;\n};\n\nexport const compareAddress = (a = '', b = '') => {\n\treturn a.toLowerCase() === b.toLowerCase();\n};\n","import { networks, type ChainId as sequenceChainId } from '@0xsequence/network';\nimport type { ChainId } from '../react/_internal';\n\nexport const getPresentableChainName = (chainId: ChainId) => {\n\tconst id = Number(chainId) as sequenceChainId;\n\treturn networks[id]?.name;\n};\n","import { formatUnits } from 'viem';\n\ntype CalculatePriceDifferencePercentageArgs = {\n\tinputPriceRaw: bigint;\n\tbasePriceRaw: bigint;\n\tdecimals: number;\n};\n\nexport const calculatePriceDifferencePercentage = ({\n\tinputPriceRaw,\n\tbasePriceRaw,\n\tdecimals,\n}: CalculatePriceDifferencePercentageArgs) => {\n\tconst inputPrice = Number(formatUnits(inputPriceRaw, decimals));\n\tconst basePrice = Number(formatUnits(basePriceRaw, decimals));\n\tconst difference = inputPrice - basePrice;\n\tconst percentageDifference = (difference / basePrice) * 100;\n\n\treturn percentageDifference.toFixed(2);\n};\n\nexport const formatPrice = (amount: bigint, decimals: number): string => {\n\tconst formattedUnits = Number(formatUnits(amount, decimals));\n\treturn formattedUnits.toLocaleString('en-US', {\n\t\tminimumFractionDigits: 0,\n\t\tmaximumFractionDigits: decimals,\n\t});\n};\n","import { Image } from '@0xsequence/design-system';\nimport { type ComponentProps, Suspense, lazy } from 'react';\n\n/* @__PURE__ */\nconst createMarketplaceLogo = (\n\timportFn: () => Promise<{ default: string }>,\n\talt: string,\n) => {\n\tconst LazyLogo = lazy(async () => {\n\t\tconst src = await importFn();\n\t\treturn {\n\t\t\tdefault: function MarketplaceLogo({\n\t\t\t\talt: altProp,\n\t\t\t\t...props\n\t\t\t}: ComponentProps<typeof Image>) {\n\t\t\t\treturn <Image src={src.default} alt={altProp || alt} {...props} />;\n\t\t\t},\n\t\t};\n\t});\n\n\treturn function MarketplaceLogo(props: ComponentProps<typeof Image>) {\n\t\treturn (\n\t\t\t<Suspense\n\t\t\t\tfallback={<div style={{ width: props.width, height: props.height }} />}\n\t\t\t>\n\t\t\t\t<LazyLogo {...props} />\n\t\t\t</Suspense>\n\t\t);\n\t};\n};\n\nexport const AlienSwapLogo = createMarketplaceLogo(\n\t() => import('../../images/marketplaces/alien_swap.png'),\n\t'AlienSwap Logo',\n);\nexport const AquaXyzLogo = createMarketplaceLogo(\n\t() => import('../../images/marketplaces/aqua-xyz.png'),\n\t'AquaXyz Logo',\n);\nexport const AuraLogo = createMarketplaceLogo(\n\t() => import('../../images/marketplaces/aura.png'),\n\t'Aura Logo',\n);\nexport const BlurLogo = createMarketplaceLogo(\n\t() => import('../../images/marketplaces/blur.png'),\n\t'Blur Logo',\n);\nexport const CoinbaseLogo = createMarketplaceLogo(\n\t() => import('../../images/marketplaces/coinbase.png'),\n\t'Coinbase Logo',\n);\nexport const ElementLogo = createMarketplaceLogo(\n\t() => import('../../images/marketplaces/element.png'),\n\t'Element Logo',\n);\nexport const FoundationLogo = createMarketplaceLogo(\n\t() => import('../../images/marketplaces/foundation.png'),\n\t'Foundation Logo',\n);\nexport const LooksRareLogo = createMarketplaceLogo(\n\t() => import('../../images/marketplaces/looks-rare.png'),\n\t'LooksRare Logo',\n);\nexport const MagicEdenLogo = createMarketplaceLogo(\n\t() => import('../../images/marketplaces/magic-eden.png'),\n\t'MagicEden Logo',\n);\nexport const ManifoldLogo = createMarketplaceLogo(\n\t() => import('../../images/marketplaces/manifold.png'),\n\t'Manifold Logo',\n);\nexport const MintifyLogo = createMarketplaceLogo(\n\t() => import('../../images/marketplaces/mintify.png'),\n\t'Mintify Logo',\n);\nexport const NftxLogo = createMarketplaceLogo(\n\t() => import('../../images/marketplaces/nftx.png'),\n\t'NFTX Logo',\n);\nexport const OkxLogo = createMarketplaceLogo(\n\t() => import('../../images/marketplaces/okx.png'),\n\t'OKX Logo',\n);\nexport const OpenSeaLogo = createMarketplaceLogo(\n\t() => import('../../images/marketplaces/open-sea.png'),\n\t'OpenSea Logo',\n);\nexport const RaribleLogo = createMarketplaceLogo(\n\t() => import('../../images/marketplaces/rarible.png'),\n\t'Rarible Logo',\n);\nexport const SequenceLogo = createMarketplaceLogo(\n\t() => import('../../images/marketplaces/sequence.png'),\n\t'Sequence Logo',\n);\nexport const SudoSwapLogo = createMarketplaceLogo(\n\t() => import('../../images/marketplaces/sudo-swap.png'),\n\t'SudoSwap Logo',\n);\nexport const SuperRareLogo = createMarketplaceLogo(\n\t() => import('../../images/marketplaces/super-rare.png'),\n\t'SuperRare Logo',\n);\nexport const X2y2Logo = createMarketplaceLogo(\n\t() => import('../../images/marketplaces/x2y2.png'),\n\t'X2Y2 Logo',\n);\nexport const ZoraLogo = createMarketplaceLogo(\n\t() => import('../../images/marketplaces/zora.png'),\n\t'Zora Logo',\n);\n","import type { Image } from '@0xsequence/design-system';\nimport type { ComponentType } from 'react';\nimport {\n\tAlienSwapLogo,\n\tBlurLogo,\n\tLooksRareLogo,\n\tMagicEdenLogo,\n\tMintifyLogo,\n\tOpenSeaLogo,\n\tSequenceLogo,\n\tX2y2Logo,\n} from '../react/ui/components/marketplace-logos';\nimport { MarketplaceKind } from '../types';\n\ninterface Marketplace {\n\tlogo: ComponentType<React.ComponentProps<typeof Image>>;\n\tdisplayName: string;\n}\n\nconst MARKETPLACES: Record<string, Marketplace> = {\n\tsequence: {\n\t\tlogo: SequenceLogo,\n\t\tdisplayName: 'Sequence',\n\t},\n\topensea: {\n\t\tlogo: OpenSeaLogo,\n\t\tdisplayName: 'OpenSea',\n\t},\n\tmagiceden: {\n\t\tlogo: MagicEdenLogo,\n\t\tdisplayName: 'Magic Eden',\n\t},\n\tmintify: {\n\t\tlogo: MintifyLogo,\n\t\tdisplayName: 'Mintify',\n\t},\n\tlooksrare: {\n\t\tlogo: LooksRareLogo,\n\t\tdisplayName: 'Looks Rare',\n\t},\n\tx2y2: {\n\t\tlogo: X2y2Logo,\n\t\tdisplayName: 'X2Y2',\n\t},\n\tblur: {\n\t\tlogo: BlurLogo,\n\t\tdisplayName: 'Blur',\n\t},\n\talienswap: {\n\t\tlogo: AlienSwapLogo,\n\t\tdisplayName: 'AlienSwap',\n\t},\n} as const;\n\nconst KIND_TO_MARKETPLACE: Partial<\n\tRecord<MarketplaceKind, keyof typeof MARKETPLACES>\n> = {\n\t[MarketplaceKind.sequence_marketplace_v1]: 'sequence',\n\t[MarketplaceKind.sequence_marketplace_v2]: 'sequence',\n\t[MarketplaceKind.opensea]: 'opensea',\n\t[MarketplaceKind.mintify]: 'mintify',\n\t[MarketplaceKind.looks_rare]: 'looksrare',\n\t[MarketplaceKind.x2y2]: 'x2y2',\n\t[MarketplaceKind.blur]: 'blur',\n};\n\ntype MarketplaceDetailsProp = {\n\toriginName: string;\n\tkind: MarketplaceKind;\n};\n\n// TODO: add suport for more marketplaces and improve detection of marketplace\nexport function getMarketplaceDetails({\n\toriginName,\n\tkind,\n}: MarketplaceDetailsProp) {\n\tif (\n\t\tkind === MarketplaceKind.sequence_marketplace_v1 ||\n\t\tkind === MarketplaceKind.sequence_marketplace_v2\n\t) {\n\t\treturn MARKETPLACES.sequence;\n\t}\n\n\tlet name = originName.toLowerCase();\n\n\ttry {\n\t\t//Check if the name can be parsed as a url\n\t\tnew URL(name);\n\t\t// if it can we are naively trying to extract the root domain\n\t\tname = getRootDomain(name) || name;\n\t} catch {}\n\n\tname = name.replace(/ /g, '');\n\n\tconst details = MARKETPLACES[name];\n\n\tif (details) {\n\t\treturn details;\n\t}\n\n\tif (KIND_TO_MARKETPLACE[kind]) {\n\t\treturn MARKETPLACES[KIND_TO_MARKETPLACE[kind]];\n\t}\n}\n\nfunction getRootDomain(url: string) {\n\tconst domain = url.replace(/^(https?:\\/\\/)?(www\\.)?/, '');\n\tconst parts = domain.split('.');\n\treturn parts[parts.length - 2] || parts[0];\n}\n","import type { NetworkConfig } from '@0xsequence/network';\nimport type { Chain } from 'viem';\n\nexport const networkToWagmiChain = (network: NetworkConfig): Chain => ({\n\t...network,\n\tid: Number(network.chainId),\n\tname: network.name,\n\tnativeCurrency: { ...network.nativeToken },\n\trpcUrls: {\n\t\tdefault: {\n\t\t\thttp: [network.rpcUrl],\n\t\t},\n\t\tpublic: {\n\t\t\thttp: [network.rpcUrl],\n\t\t},\n\t},\n});\n"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
"use client"
|
|
2
|
+
import {
|
|
3
|
+
AddressSchema,
|
|
4
|
+
ChainIdSchema,
|
|
5
|
+
QueryArgSchema
|
|
6
|
+
} from "./chunk-FG2BBP3P.js";
|
|
7
|
+
import {
|
|
8
|
+
builderMarketplaceApi,
|
|
9
|
+
collectionKeys,
|
|
10
|
+
configKeys,
|
|
11
|
+
getMetadataClient
|
|
12
|
+
} from "./chunk-LNMMWV77.js";
|
|
13
|
+
import {
|
|
14
|
+
MarketplaceConfigFetchError,
|
|
15
|
+
ProjectNotFoundError
|
|
16
|
+
} from "./chunk-WM4RGBFQ.js";
|
|
17
|
+
|
|
18
|
+
// src/react/hooks/options/collectionOptions.ts
|
|
19
|
+
import { queryOptions } from "@tanstack/react-query";
|
|
20
|
+
import { z } from "zod";
|
|
21
|
+
var UseCollectionSchema = z.object({
|
|
22
|
+
chainId: ChainIdSchema.pipe(z.coerce.string()),
|
|
23
|
+
collectionAddress: AddressSchema,
|
|
24
|
+
query: QueryArgSchema
|
|
25
|
+
});
|
|
26
|
+
var fetchCollection = async (args, config) => {
|
|
27
|
+
const parsedArgs = UseCollectionSchema.parse(args);
|
|
28
|
+
const metadataClient = getMetadataClient(config);
|
|
29
|
+
return metadataClient.getContractInfo({
|
|
30
|
+
chainID: parsedArgs.chainId,
|
|
31
|
+
contractAddress: parsedArgs.collectionAddress
|
|
32
|
+
}).then((resp) => resp.contractInfo);
|
|
33
|
+
};
|
|
34
|
+
var collectionOptions = (args, config) => {
|
|
35
|
+
return queryOptions({
|
|
36
|
+
...args.query,
|
|
37
|
+
queryKey: [...collectionKeys.detail, args, config],
|
|
38
|
+
queryFn: () => fetchCollection(args, config)
|
|
39
|
+
});
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
// src/react/hooks/options/marketplaceConfigOptions.ts
|
|
43
|
+
import { queryOptions as queryOptions2 } from "@tanstack/react-query";
|
|
44
|
+
var fetchBuilderConfig = async (projectId, env) => {
|
|
45
|
+
const url = `${builderMarketplaceApi(projectId, env)}`;
|
|
46
|
+
const response = await fetch(`${url}/settings.json`);
|
|
47
|
+
const json = await response.json();
|
|
48
|
+
if (!response.ok) {
|
|
49
|
+
console.error("Failed to fetch marketplace config:", response.status, json);
|
|
50
|
+
switch (json.code) {
|
|
51
|
+
case 3e3:
|
|
52
|
+
throw new ProjectNotFoundError(projectId, url);
|
|
53
|
+
default:
|
|
54
|
+
throw new MarketplaceConfigFetchError(json.msg);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
return json;
|
|
58
|
+
};
|
|
59
|
+
var fetchStyles = async (projectId, env) => {
|
|
60
|
+
const response = await fetch(
|
|
61
|
+
`${builderMarketplaceApi(projectId, env)}/styles.css`
|
|
62
|
+
);
|
|
63
|
+
const styles = await response.text();
|
|
64
|
+
return styles.replaceAll(/['"]/g, "");
|
|
65
|
+
};
|
|
66
|
+
var fetchMarketplaceConfig = async (env, projectId) => {
|
|
67
|
+
const [marketplaceConfig, cssString] = await Promise.all([
|
|
68
|
+
fetchBuilderConfig(projectId, env),
|
|
69
|
+
fetchStyles(projectId, env)
|
|
70
|
+
]);
|
|
71
|
+
return {
|
|
72
|
+
...marketplaceConfig,
|
|
73
|
+
cssString,
|
|
74
|
+
manifestUrl: `${builderMarketplaceApi(projectId, env)}/manifest.json`
|
|
75
|
+
};
|
|
76
|
+
};
|
|
77
|
+
var marketplaceConfigOptions = (config) => {
|
|
78
|
+
let env = "production";
|
|
79
|
+
if ("_internal" in config && config._internal !== void 0) {
|
|
80
|
+
env = config._internal.builderEnv ?? env;
|
|
81
|
+
}
|
|
82
|
+
const projectId = config.projectId;
|
|
83
|
+
return queryOptions2({
|
|
84
|
+
queryKey: [...configKeys.marketplace, env, projectId],
|
|
85
|
+
queryFn: () => fetchMarketplaceConfig(env, projectId)
|
|
86
|
+
});
|
|
87
|
+
};
|
|
88
|
+
|
|
89
|
+
export {
|
|
90
|
+
fetchCollection,
|
|
91
|
+
collectionOptions,
|
|
92
|
+
marketplaceConfigOptions
|
|
93
|
+
};
|
|
94
|
+
//# sourceMappingURL=chunk-6WMO5YM5.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/react/hooks/options/collectionOptions.ts","../src/react/hooks/options/marketplaceConfigOptions.ts"],"sourcesContent":["import { queryOptions } from '@tanstack/react-query';\nimport { z } from 'zod';\nimport type { SdkConfig } from '../../../types';\nimport {\n\tAddressSchema,\n\tChainIdSchema,\n\tQueryArgSchema,\n\tcollectionKeys,\n\tgetMetadataClient,\n} from '../../_internal';\nimport type { UseCollectionArgs } from '../useCollection';\n\nexport const UseCollectionSchema = z.object({\n\tchainId: ChainIdSchema.pipe(z.coerce.string()),\n\tcollectionAddress: AddressSchema,\n\tquery: QueryArgSchema,\n});\n\nexport const fetchCollection = async (\n\targs: UseCollectionArgs,\n\tconfig: SdkConfig,\n) => {\n\tconst parsedArgs = UseCollectionSchema.parse(args);\n\tconst metadataClient = getMetadataClient(config);\n\treturn metadataClient\n\t\t.getContractInfo({\n\t\t\tchainID: parsedArgs.chainId,\n\t\t\tcontractAddress: parsedArgs.collectionAddress,\n\t\t})\n\t\t.then((resp) => resp.contractInfo);\n};\n\nexport const collectionOptions = (\n\targs: UseCollectionArgs,\n\tconfig: SdkConfig,\n) => {\n\treturn queryOptions({\n\t\t...args.query,\n\t\tqueryKey: [...collectionKeys.detail, args, config],\n\t\tqueryFn: () => fetchCollection(args, config),\n\t});\n};\n","import { queryOptions } from '@tanstack/react-query';\nimport type {\n\tEnv,\n\tMarketplaceConfig,\n\tMarketplaceSettings,\n\tSdkConfig,\n} from '../../../types';\nimport {\n\tMarketplaceConfigFetchError,\n\tProjectNotFoundError,\n} from '../../../utils/_internal/error/transaction';\nimport { builderMarketplaceApi, configKeys } from '../../_internal';\n\nconst fetchBuilderConfig = async (projectId: string, env: Env) => {\n\tconst url = `${builderMarketplaceApi(projectId, env)}`;\n\tconst response = await fetch(`${url}/settings.json`);\n\n\tconst json = await response.json();\n\tif (!response.ok) {\n\t\tconsole.error('Failed to fetch marketplace config:', response.status, json);\n\t\t//@ts-ignore\n\t\tswitch (json.code) {\n\t\t\tcase 3000: // Throws 3000 if the project is not found\n\t\t\t\tthrow new ProjectNotFoundError(projectId, url);\n\t\t\tdefault:\n\t\t\t\t//@ts-ignore\n\t\t\t\tthrow new MarketplaceConfigFetchError(json.msg);\n\t\t}\n\t}\n\treturn json as MarketplaceSettings;\n};\n\nconst fetchStyles = async (projectId: string, env: Env) => {\n\tconst response = await fetch(\n\t\t`${builderMarketplaceApi(projectId, env)}/styles.css`,\n\t);\n\tconst styles = await response.text();\n\t// React sanitizes this string, so we need to remove all quotes, they are not needed anyway\n\treturn styles.replaceAll(/['\"]/g, '');\n};\n\nconst fetchMarketplaceConfig = async (\n\tenv: Env,\n\tprojectId: string,\n): Promise<MarketplaceConfig> => {\n\tconst [marketplaceConfig, cssString] = await Promise.all([\n\t\tfetchBuilderConfig(projectId, env),\n\t\tfetchStyles(projectId, env),\n\t]);\n\n\treturn {\n\t\t...marketplaceConfig,\n\t\tcssString,\n\t\tmanifestUrl: `${builderMarketplaceApi(projectId, env)}/manifest.json`,\n\t};\n};\n\nexport const marketplaceConfigOptions = (\n\tconfig: Pick<SdkConfig, 'projectId'> | SdkConfig,\n) => {\n\tlet env: Env = 'production';\n\tif ('_internal' in config && config._internal !== undefined) {\n\t\tenv = config._internal.builderEnv ?? env;\n\t}\n\n\tconst projectId = config.projectId;\n\treturn queryOptions({\n\t\tqueryKey: [...configKeys.marketplace, env, projectId],\n\t\tqueryFn: () => fetchMarketplaceConfig(env, projectId),\n\t});\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA,SAAS,oBAAoB;AAC7B,SAAS,SAAS;AAWX,IAAM,sBAAsB,EAAE,OAAO;AAAA,EAC3C,SAAS,cAAc,KAAK,EAAE,OAAO,OAAO,CAAC;AAAA,EAC7C,mBAAmB;AAAA,EACnB,OAAO;AACR,CAAC;AAEM,IAAM,kBAAkB,OAC9B,MACA,WACI;AACJ,QAAM,aAAa,oBAAoB,MAAM,IAAI;AACjD,QAAM,iBAAiB,kBAAkB,MAAM;AAC/C,SAAO,eACL,gBAAgB;AAAA,IAChB,SAAS,WAAW;AAAA,IACpB,iBAAiB,WAAW;AAAA,EAC7B,CAAC,EACA,KAAK,CAAC,SAAS,KAAK,YAAY;AACnC;AAEO,IAAM,oBAAoB,CAChC,MACA,WACI;AACJ,SAAO,aAAa;AAAA,IACnB,GAAG,KAAK;AAAA,IACR,UAAU,CAAC,GAAG,eAAe,QAAQ,MAAM,MAAM;AAAA,IACjD,SAAS,MAAM,gBAAgB,MAAM,MAAM;AAAA,EAC5C,CAAC;AACF;;;ACzCA,SAAS,gBAAAA,qBAAoB;AAa7B,IAAM,qBAAqB,OAAO,WAAmB,QAAa;AACjE,QAAM,MAAM,GAAG,sBAAsB,WAAW,GAAG,CAAC;AACpD,QAAM,WAAW,MAAM,MAAM,GAAG,GAAG,gBAAgB;AAEnD,QAAM,OAAO,MAAM,SAAS,KAAK;AACjC,MAAI,CAAC,SAAS,IAAI;AACjB,YAAQ,MAAM,uCAAuC,SAAS,QAAQ,IAAI;AAE1E,YAAQ,KAAK,MAAM;AAAA,MAClB,KAAK;AACJ,cAAM,IAAI,qBAAqB,WAAW,GAAG;AAAA,MAC9C;AAEC,cAAM,IAAI,4BAA4B,KAAK,GAAG;AAAA,IAChD;AAAA,EACD;AACA,SAAO;AACR;AAEA,IAAM,cAAc,OAAO,WAAmB,QAAa;AAC1D,QAAM,WAAW,MAAM;AAAA,IACtB,GAAG,sBAAsB,WAAW,GAAG,CAAC;AAAA,EACzC;AACA,QAAM,SAAS,MAAM,SAAS,KAAK;AAEnC,SAAO,OAAO,WAAW,SAAS,EAAE;AACrC;AAEA,IAAM,yBAAyB,OAC9B,KACA,cACgC;AAChC,QAAM,CAAC,mBAAmB,SAAS,IAAI,MAAM,QAAQ,IAAI;AAAA,IACxD,mBAAmB,WAAW,GAAG;AAAA,IACjC,YAAY,WAAW,GAAG;AAAA,EAC3B,CAAC;AAED,SAAO;AAAA,IACN,GAAG;AAAA,IACH;AAAA,IACA,aAAa,GAAG,sBAAsB,WAAW,GAAG,CAAC;AAAA,EACtD;AACD;AAEO,IAAM,2BAA2B,CACvC,WACI;AACJ,MAAI,MAAW;AACf,MAAI,eAAe,UAAU,OAAO,cAAc,QAAW;AAC5D,UAAM,OAAO,UAAU,cAAc;AAAA,EACtC;AAEA,QAAM,YAAY,OAAO;AACzB,SAAOC,cAAa;AAAA,IACnB,UAAU,CAAC,GAAG,WAAW,aAAa,KAAK,SAAS;AAAA,IACpD,SAAS,MAAM,uBAAuB,KAAK,SAAS;AAAA,EACrD,CAAC;AACF;","names":["queryOptions","queryOptions"]}
|