@0xsequence/marketplace-sdk 0.9.0 → 0.10.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/.storybook/main.ts +63 -0
- package/.storybook/preview.ts +24 -0
- package/.storybook/vitest.setup.ts +6 -0
- package/CHANGELOG.md +77 -8
- package/dist/{CalendarIcon-DbQ7Vxcw.js → CalendarIcon-CqsuAuCm.js} +4 -51
- package/dist/CalendarIcon-CqsuAuCm.js.map +1 -0
- package/dist/{CollectibleCard-C8Ae64Ab.d.ts → CollectibleCard-Dd-CG6dE.d.ts} +8 -7
- package/dist/InfoIcon-v0w_Lu7t.js +53 -0
- package/dist/InfoIcon-v0w_Lu7t.js.map +1 -0
- package/dist/{_internal-BgWcRIak.js → _internal-C75gOSNo.js} +2 -10
- package/dist/_internal-C75gOSNo.js.map +1 -0
- package/dist/actionModal-CMUeVsFX.js +116 -0
- package/dist/actionModal-CMUeVsFX.js.map +1 -0
- package/dist/{alien_swap-B_76IMma.js → alien_swap-CYv6YlOF.js} +1 -1
- package/dist/{alien_swap-B_76IMma.js.map → alien_swap-CYv6YlOF.js.map} +1 -1
- package/dist/{api-DTIan01C.js → api-BiMGqWdz.js} +17 -34
- package/dist/api-BiMGqWdz.js.map +1 -0
- package/dist/{aqua-xyz-CMN_TFY5.js → aqua-xyz-Bzn5baeH.js} +1 -1
- package/dist/{aqua-xyz-CMN_TFY5.js.map → aqua-xyz-Bzn5baeH.js.map} +1 -1
- package/dist/{aura-Cye_TuHj.js → aura-DzIWh8WT.js} +1 -1
- package/dist/{aura-Cye_TuHj.js.map → aura-DzIWh8WT.js.map} +1 -1
- package/dist/base-DqaJPvfN.js +22 -0
- package/dist/base-DqaJPvfN.js.map +1 -0
- package/dist/{blur-DWDMyMpK.js → blur-DSH-Cbpj.js} +1 -1
- package/dist/{blur-DWDMyMpK.js.map → blur-DSH-Cbpj.js.map} +1 -1
- package/dist/{coinbase-ByA_XRB0.js → coinbase-Df8URNxq.js} +1 -1
- package/dist/{coinbase-ByA_XRB0.js.map → coinbase-Df8URNxq.js.map} +1 -1
- package/dist/{new-marketplace-types-Bfis0U4J.d.ts → create-config-DKJ-F0jc.d.ts} +402 -41
- package/dist/{wagmi-CDzEQbfk.js → create-config-fQ-jbJD1.js} +20 -10
- package/dist/create-config-fQ-jbJD1.js.map +1 -0
- package/dist/{element-b77CyXIZ.js → element-Cx6uJu5N.js} +1 -1
- package/dist/{element-b77CyXIZ.js.map → element-Cx6uJu5N.js.map} +1 -1
- package/dist/{foundation-DbOrKP9Y.js → foundation-D6U4aRLN.js} +1 -1
- package/dist/{foundation-DbOrKP9Y.js.map → foundation-D6U4aRLN.js.map} +1 -1
- package/dist/get-provider-CYYHfrlg.js +10 -0
- package/dist/get-provider-CYYHfrlg.js.map +1 -0
- package/dist/get-query-client-D19vvfJo.js +23 -0
- package/dist/get-query-client-D19vvfJo.js.map +1 -0
- package/dist/hooks-4pxIbLbM.js +4044 -0
- package/dist/hooks-4pxIbLbM.js.map +1 -0
- package/dist/{index-BL9RUSEK.d.ts → index-136YrWDH.d.ts} +1 -1
- package/dist/{index-D5v5iluA.d.ts → index-BAhaEfqY.d.ts} +1 -1
- package/dist/index-BKBin-rq.d.ts +979 -0
- package/dist/{index-BQsgAvtX.d.ts → index-BUWB_RXp.d.ts} +776 -570
- package/dist/{index-21LE7OhL.d.ts → index-BhVFc2rX.d.ts} +6 -3
- package/dist/{index-DXMfTZ1F.d.ts → index-C5aqo8xu.d.ts} +1 -1
- package/dist/{index-ByznONYE.d.ts → index-CKrYP7ot.d.ts} +20 -48
- package/dist/{index-DaE5ZNHb.d.ts → index-CUwMH7Ht.d.ts} +5 -5
- package/dist/{index-CLy8y5hm.d.ts → index-Cu70Lw-w.d.ts} +1 -1
- package/dist/index.css +414 -1
- package/dist/index.d.ts +8 -10
- package/dist/index.js +13 -9
- package/dist/{looks-rare-C1VqNcSM.js → looks-rare-ChBRBY-p.js} +1 -1
- package/dist/{looks-rare-C1VqNcSM.js.map → looks-rare-ChBRBY-p.js.map} +1 -1
- package/dist/{magic-eden-ea_AGCZr.js → magic-eden-D5U7N1xL.js} +1 -1
- package/dist/{magic-eden-ea_AGCZr.js.map → magic-eden-D5U7N1xL.js.map} +1 -1
- package/dist/{manifold-8y8J2sjT.js → manifold-CtLF52zU.js} +1 -1
- package/dist/{manifold-8y8J2sjT.js.map → manifold-CtLF52zU.js.map} +1 -1
- package/dist/{marketplace-nwnZv9Cb.js → marketplace-DmFiyBoS.js} +1 -1
- package/dist/{marketplace-nwnZv9Cb.js.map → marketplace-DmFiyBoS.js.map} +1 -1
- package/dist/{marketplace-logos-CSeGcPW4.js → marketplace-logos-Cd6W-qOq.js} +21 -21
- package/dist/{marketplace-logos-CSeGcPW4.js.map → marketplace-logos-Cd6W-qOq.js.map} +1 -1
- package/dist/{marketplace.gen-BSDIX7NZ.js → marketplace.gen-HpnpL5xU.js} +3 -3
- package/dist/marketplace.gen-HpnpL5xU.js.map +1 -0
- package/dist/{marketplaceConfig-C6X1SUik.js → marketplaceConfig-GQTTmihy.js} +3 -3
- package/dist/marketplaceConfig-GQTTmihy.js.map +1 -0
- package/dist/{mintify-LA68TzWg.js → mintify-Bi3Bce68.js} +1 -1
- package/dist/{mintify-LA68TzWg.js.map → mintify-Bi3Bce68.js.map} +1 -1
- package/dist/network-CGD0oKtS.js +15 -0
- package/dist/network-CGD0oKtS.js.map +1 -0
- package/dist/{nftx-D3Tc8nzd.js → nftx-BDQZjtkX.js} +1 -1
- package/dist/{nftx-D3Tc8nzd.js.map → nftx-BDQZjtkX.js.map} +1 -1
- package/dist/{okx-hbqg6oIJ.js → okx-D4meadLe.js} +1 -1
- package/dist/{okx-hbqg6oIJ.js.map → okx-D4meadLe.js.map} +1 -1
- package/dist/{open-sea-BccuK8-t.js → open-sea-DN0hgfVw.js} +1 -1
- package/dist/{open-sea-BccuK8-t.js.map → open-sea-DN0hgfVw.js.map} +1 -1
- package/dist/{primary-sale-C55ALnfQ.js → primary-sale-CmWxSfFQ.js} +1 -1
- package/dist/{primary-sale-C55ALnfQ.js.map → primary-sale-CmWxSfFQ.js.map} +1 -1
- package/dist/provider-DPGUA10G.js +125 -0
- package/dist/provider-DPGUA10G.js.map +1 -0
- package/dist/{queries-CUU65uYZ.js → queries-Ce_2othB.js} +165 -7
- package/dist/queries-Ce_2othB.js.map +1 -0
- package/dist/{rarible-BgTwwj9g.js → rarible-B0xlD88A.js} +1 -1
- package/dist/{rarible-BgTwwj9g.js.map → rarible-B0xlD88A.js.map} +1 -1
- package/dist/react/_internal/api/index.d.ts +2 -4
- package/dist/react/_internal/api/index.js +7 -4
- package/dist/react/_internal/databeat/index.d.ts +2 -73
- package/dist/react/_internal/databeat/index.js +4 -21
- package/dist/react/_internal/index.d.ts +2 -7
- package/dist/react/_internal/index.js +11 -6
- package/dist/react/_internal/wagmi/index.d.ts +2 -4
- package/dist/react/_internal/wagmi/index.js +5 -3
- package/dist/react/hooks/index.d.ts +12 -17
- package/dist/react/hooks/index.js +23 -19
- package/dist/react/hooks/options/index.d.ts +2 -3
- package/dist/react/hooks/options/index.js +12 -7
- package/dist/react/index.d.ts +12 -17
- package/dist/react/index.js +28 -19
- package/dist/react/queries/index.d.ts +9 -8
- package/dist/react/queries/index.js +20 -15
- package/dist/react/ssr/index.d.ts +7 -9
- package/dist/react/ssr/index.js +11 -6
- package/dist/react/ssr/index.js.map +1 -1
- package/dist/react/ui/components/marketplace-collectible-card/index.d.ts +3 -8
- package/dist/react/ui/components/marketplace-collectible-card/index.js +27 -18
- package/dist/react/ui/components/marketplace-collectible-card/utils/index.d.ts +2 -7
- package/dist/react/ui/components/marketplace-collectible-card/utils/index.js +11 -6
- package/dist/react/ui/components/marketplace-logos/index.d.ts +21 -21
- package/dist/react/ui/components/marketplace-logos/index.js +1 -1
- package/dist/react/ui/icons/index.js +13 -9
- package/dist/react/ui/index.d.ts +3 -8
- package/dist/react/ui/index.js +27 -18
- package/dist/react/ui/modals/_internal/components/actionModal/index.d.ts +2 -2
- package/dist/react/ui/modals/_internal/components/actionModal/index.js +23 -18
- package/dist/{react-DAIicQPT.js → react-DP0M2Wfm.js} +799 -4306
- package/dist/react-DP0M2Wfm.js.map +1 -0
- package/dist/{react-BbHBl6gg.css → react-DeDyTgo7.css} +1 -1
- package/dist/{react-BbHBl6gg.css.map → react-DeDyTgo7.css.map} +1 -1
- package/dist/{sequence-Do3kzb4J.js → sequence-BIrOVRXO.js} +1 -1
- package/dist/{sequence-Do3kzb4J.js.map → sequence-BIrOVRXO.js.map} +1 -1
- package/dist/{sudo-swap-B6vPKxBz.js → sudo-swap-BPMon-M5.js} +1 -1
- package/dist/{sudo-swap-B6vPKxBz.js.map → sudo-swap-BPMon-M5.js.map} +1 -1
- package/dist/{super-rare-eCm1SE6O.js → super-rare-kPN6Ua8i.js} +1 -1
- package/dist/{super-rare-eCm1SE6O.js.map → super-rare-kPN6Ua8i.js.map} +1 -1
- package/dist/{token-Da4TdyUk.js → token-CHSBPYVG.js} +1 -1
- package/dist/{token-Da4TdyUk.js.map → token-CHSBPYVG.js.map} +1 -1
- package/dist/{transaction-CcVViHEL.js → transaction-CnctdNzS.js} +3 -21
- package/dist/transaction-CnctdNzS.js.map +1 -0
- package/dist/types/index.d.ts +2 -3
- package/dist/types/index.js +2 -2
- package/dist/{types-DwWE6xOF.js → types-Yw2ywj6j.js} +1 -1
- package/dist/{types-DwWE6xOF.js.map → types-Yw2ywj6j.js.map} +1 -1
- package/dist/utils/abi/index.d.ts +4 -4
- package/dist/utils/abi/index.js +4 -4
- package/dist/utils/abi/marketplace/index.d.ts +1 -1
- package/dist/utils/abi/marketplace/index.js +1 -1
- package/dist/utils/abi/primary-sale/index.d.ts +1 -1
- package/dist/utils/abi/primary-sale/index.js +1 -1
- package/dist/utils/abi/token/index.d.ts +1 -1
- package/dist/utils/abi/token/index.js +1 -1
- package/dist/utils/index.d.ts +7 -8
- package/dist/utils/index.js +12 -9
- package/dist/{utils-CW2NA5KG.js → utils-9RXDgcBl.js} +4 -11
- package/dist/utils-9RXDgcBl.js.map +1 -0
- package/dist/{utils-BPYfgDSL.js → utils-DjVJ9tov.js} +5 -6
- package/dist/utils-DjVJ9tov.js.map +1 -0
- package/dist/wagmi-Do_KW5ke.js +0 -0
- package/dist/{x2y2-DD17tT91.js → x2y2-BLz-_Q2O.js} +1 -1
- package/dist/{x2y2-DD17tT91.js.map → x2y2-BLz-_Q2O.js.map} +1 -1
- package/dist/{zora-BpSG9UzS.js → zora-UGhKs-aL.js} +1 -1
- package/dist/{zora-BpSG9UzS.js.map → zora-UGhKs-aL.js.map} +1 -1
- package/eslint.config.mjs +4 -0
- package/package.json +27 -14
- package/postcss.config.mjs +6 -0
- package/src/index.css +5 -4
- package/src/index.ts +1 -0
- package/src/react/__tests__/provider.test.tsx +4 -3
- package/src/react/_internal/api/__mocks__/indexer.msw.ts +16 -0
- package/src/react/_internal/api/__mocks__/laos.msw.ts +387 -0
- package/src/react/_internal/api/__mocks__/marketplace.msw.ts +2 -0
- package/src/react/_internal/api/__tests__/laos-api.test.ts +756 -0
- package/src/react/_internal/api/laos-api.ts +3 -0
- package/src/react/_internal/api/marketplace.gen.ts +5 -3
- package/src/react/_internal/api/query-keys.ts +12 -4
- package/src/react/_internal/api/services.ts +2 -14
- package/src/react/_internal/databeat/index.ts +15 -14
- package/src/react/_internal/databeat/types.ts +22 -0
- package/src/react/_internal/databeat/utils.ts +26 -0
- package/src/react/_internal/utils.ts +4 -4
- package/src/react/_internal/wagmi/create-config.ts +28 -13
- package/src/react/_internal/wallet/wallet.ts +4 -4
- package/src/react/hooks/__tests__/useBalanceOfCollectible.laos.test.tsx +367 -0
- package/src/react/hooks/__tests__/useCheckoutOptions.test.tsx +158 -0
- package/src/react/hooks/__tests__/useCheckoutOptionsSalesContract.test.tsx +42 -65
- package/src/react/hooks/__tests__/useCollectionBalanceDetails.test.tsx +17 -0
- package/src/react/hooks/__tests__/useCollectionDetailsPolling.test.tsx +11 -3
- package/src/react/hooks/__tests__/useConvertPriceToUSD.test.tsx +3 -3
- package/src/react/hooks/__tests__/useCurrencyBalance.test.tsx +7 -3
- package/src/react/hooks/__tests__/useFilters.test.tsx +2 -2
- package/src/react/hooks/__tests__/useGetTokenRanges.test.tsx +111 -0
- package/src/react/hooks/__tests__/useListTokenMetadata.test.tsx +83 -57
- package/src/react/hooks/__tests__/useTransferTokens.test.tsx +469 -0
- package/src/react/hooks/index.ts +3 -1
- package/src/react/hooks/useCheckoutOptions.tsx +96 -0
- package/src/react/hooks/useCheckoutOptionsSalesContract.tsx +98 -57
- package/src/react/hooks/useCollectionBalanceDetails.tsx +95 -68
- package/src/react/hooks/useCollectionDetailsPolling.tsx +3 -7
- package/src/react/hooks/useComparePrices.tsx +90 -82
- package/src/react/hooks/useConvertPriceToUSD.tsx +85 -71
- package/src/react/hooks/useCurrencyBalance.tsx +132 -46
- package/src/react/hooks/useERC721SaleMintedTokens.tsx +8 -5
- package/src/react/hooks/useFilters.tsx +154 -111
- package/src/react/hooks/useGetCountOfPrimarySaleItems.tsx +48 -0
- package/src/react/hooks/useGetTokenRanges.tsx +83 -22
- package/src/react/hooks/useList1155ShopCardData.tsx +2 -0
- package/src/react/hooks/useList721ShopCardData.tsx +12 -7
- package/src/react/hooks/useListCollections.tsx +25 -25
- package/src/react/hooks/useListMarketCardData.tsx +2 -1
- package/src/react/hooks/useListPrimarySaleItems.tsx +66 -0
- package/src/react/hooks/useListTokenMetadata.ts +71 -0
- package/src/react/hooks/useOpenConnectModal.tsx +9 -0
- package/src/react/hooks/useTokenSaleDetailsBatch.tsx +3 -7
- package/src/react/hooks/useTokenSupplies.ts +81 -0
- package/src/react/hooks/useTransferTokens.tsx +2 -2
- package/src/react/provider.tsx +73 -9
- package/src/react/queries/__tests__/balanceOfCollectible.laos.test.ts +123 -0
- package/src/react/queries/__tests__/inventory.laos.test.ts +496 -0
- package/src/react/queries/balanceOfCollectible.ts +7 -4
- package/src/react/queries/checkoutOptions.ts +85 -0
- package/src/react/queries/checkoutOptionsSalesContract.ts +89 -0
- package/src/react/queries/collectionBalanceDetails.ts +92 -0
- package/src/react/queries/comparePrices.ts +108 -0
- package/src/react/queries/convertPriceToUSD.ts +92 -0
- package/src/react/queries/filters.ts +138 -0
- package/src/react/queries/getTokenRanges.ts +62 -0
- package/src/react/queries/index.ts +3 -0
- package/src/react/queries/inventory.ts +6 -0
- package/src/react/queries/listBalances.ts +4 -3
- package/src/react/queries/listCollections.ts +7 -3
- package/src/react/queries/listTokenMetadata.ts +2 -2
- package/src/react/queries/marketplaceConfig.ts +1 -1
- package/src/react/queries/primarySaleItems.ts +85 -0
- package/src/react/queries/primarySaleItemsCount.ts +64 -0
- package/src/react/queries/tokenSupplies.ts +93 -0
- package/src/react/ui/components/_internals/action-button/ActionButton.tsx +66 -66
- package/src/react/ui/components/_internals/action-button/__tests__/ActionButtonBody.test.tsx +22 -4
- package/src/react/ui/components/_internals/action-button/components/ActionButtonBody.tsx +5 -4
- package/src/react/ui/components/_internals/action-button/components/NonOwnerActions.tsx +3 -0
- package/src/react/ui/components/_internals/action-button/components/OwnerActions.tsx +4 -4
- package/src/react/ui/components/_internals/action-button/hooks/useActionButtonLogic.ts +13 -8
- package/src/react/ui/components/_internals/action-button/store.ts +44 -34
- package/src/react/ui/components/_internals/custom-select/CustomSelect.stories.tsx +582 -0
- package/src/react/ui/components/_internals/pill/Pill.stories.tsx +83 -0
- package/src/react/ui/components/marketplace-collectible-card/Footer.tsx +11 -4
- package/src/react/ui/components/marketplace-collectible-card/components/ActionButtonWrapper.tsx +7 -4
- package/src/react/ui/components/marketplace-collectible-card/types.ts +4 -3
- package/src/react/ui/components/marketplace-collectible-card/utils/supplyStatus.ts +4 -7
- package/src/react/ui/components/marketplace-collectible-card/variants/ShopCard.tsx +5 -1
- package/src/react/ui/components/marketplace-logos/marketplace-logos.stories.tsx +199 -0
- package/src/react/ui/components/media/Media.stories.tsx +642 -0
- package/src/react/ui/components/media/Media.tsx +24 -19
- package/src/react/ui/components/media/types.ts +6 -0
- package/src/react/ui/modals/BuyModal/__tests__/BuyModalRouter.test.tsx +15 -0
- package/src/react/ui/modals/BuyModal/__tests__/ERC1155ShopModal.test.tsx +6 -0
- package/src/react/ui/modals/BuyModal/__tests__/Modal1155.test.tsx +7 -1
- package/src/react/ui/modals/BuyModal/__tests__/store.test.ts +9 -1
- package/src/react/ui/modals/BuyModal/components/ERC1155QuantityModal.tsx +15 -8
- package/src/react/ui/modals/BuyModal/components/ERC1155ShopModal.tsx +3 -0
- package/src/react/ui/modals/BuyModal/hooks/__tests__/useERC1155Checkout.test.tsx +30 -27
- package/src/react/ui/modals/BuyModal/hooks/useCheckoutOptions.ts +2 -2
- package/src/react/ui/modals/BuyModal/hooks/useERC1155Checkout.ts +11 -2
- package/src/react/ui/modals/BuyModal/hooks/useERC721SalePaymentParams.ts +1 -1
- package/src/react/ui/modals/BuyModal/hooks/usePaymentModalParams.ts +7 -0
- package/src/react/ui/modals/BuyModal/index.tsx +9 -1
- package/src/react/ui/modals/BuyModal/store.ts +26 -0
- package/src/react/ui/modals/CreateListingModal/Modal.tsx +28 -11
- package/src/react/ui/modals/CreateListingModal/store.ts +3 -3
- package/src/react/ui/modals/MakeOfferModal/Modal.tsx +30 -13
- package/src/react/ui/modals/MakeOfferModal/store.ts +3 -3
- package/src/react/ui/modals/SellModal/Modal.tsx +11 -8
- package/src/react/ui/modals/SellModal/store.ts +3 -3
- package/src/react/ui/modals/TransferModal/__tests__/__snapshots__/store.test.ts.snap +17 -0
- package/src/react/ui/modals/TransferModal/__tests__/store.test.ts +366 -0
- package/src/react/ui/modals/TransferModal/_views/enterWalletAddress/__tests__/useHandleTransfer.test.tsx +402 -0
- package/src/react/ui/modals/TransferModal/_views/enterWalletAddress/_components/TokenQuantityInput.tsx +51 -48
- package/src/react/ui/modals/TransferModal/_views/enterWalletAddress/_components/TransferButton.tsx +39 -47
- package/src/react/ui/modals/TransferModal/_views/enterWalletAddress/_components/WalletAddressInput.tsx +9 -8
- package/src/react/ui/modals/TransferModal/_views/enterWalletAddress/index.tsx +31 -35
- package/src/react/ui/modals/TransferModal/_views/enterWalletAddress/useHandleTransfer.tsx +19 -10
- package/src/react/ui/modals/TransferModal/index.tsx +28 -31
- package/src/react/ui/modals/TransferModal/messages.ts +1 -1
- package/src/react/ui/modals/TransferModal/store.ts +122 -0
- package/src/react/ui/modals/_internal/components/calendar/index.tsx +0 -1
- package/src/react/ui/modals/_internal/components/currencyImage/index.tsx +10 -14
- package/src/react/ui/modals/_internal/components/currencyOptionsSelect/__tests__/index.test.tsx +5 -2
- package/src/react/ui/modals/_internal/components/currencyOptionsSelect/index.tsx +23 -17
- package/src/react/ui/modals/_internal/components/expirationDateSelect/index.tsx +10 -10
- package/src/react/ui/modals/_internal/components/floorPriceText/__tests__/FloorPriceText.test.tsx +6 -6
- package/src/react/ui/modals/_internal/components/priceInput/__tests__/PriceInput.test.tsx +13 -5
- package/src/react/ui/modals/_internal/components/priceInput/index.tsx +41 -26
- package/src/react/ui/modals/_internal/components/quantityInput/__tests__/index.test.tsx +68 -59
- package/src/react/ui/modals/_internal/components/quantityInput/index.tsx +155 -20
- package/src/react/ui/modals/_internal/components/selectWaasFeeOptions/__tests__/SelectWaasFeeOptions.test.tsx +339 -40
- package/src/react/ui/modals/_internal/components/selectWaasFeeOptions/index.tsx +95 -101
- package/src/react/ui/modals/_internal/components/selectWaasFeeOptions/store.ts +72 -14
- package/src/react/ui/modals/_internal/components/selectWaasFeeOptions/useWaasFeeOptionManager.tsx +29 -13
- package/src/react/ui/modals/_internal/components/tokenPreview/index.tsx +2 -2
- package/src/react/ui/modals/_internal/components/transactionDetails/index.tsx +2 -2
- package/src/react/ui/modals/_internal/components/transactionPreview/index.tsx +88 -89
- package/src/react/ui/modals/_internal/components/transactionStatusModal/__tests__/TransactionStatusModal.test.tsx +36 -10
- package/src/react/ui/modals/_internal/components/transactionStatusModal/index.tsx +32 -20
- package/src/react/ui/modals/_internal/components/transactionStatusModal/store.ts +91 -62
- package/src/react/ui/modals/_internal/components/waasFeeOptionsSelect/WaasFeeOptionsSelect.tsx +43 -44
- package/src/react/ui/modals/_internal/types.ts +2 -2
- package/src/types/sdk-config.ts +6 -1
- package/src/utils/network.ts +15 -0
- package/test/test-utils.tsx +2 -0
- package/vitest.shims.d.ts +2 -0
- package/vitest.storybook.config.js +33 -0
- package/dist/CalendarIcon-DbQ7Vxcw.js.map +0 -1
- package/dist/_internal-BgWcRIak.js.map +0 -1
- package/dist/api-DTIan01C.js.map +0 -1
- package/dist/builder-api-C_zj5mr3.d.ts +0 -12
- package/dist/index-BUVWziLP.d.ts +0 -60
- package/dist/index-COt10OgI.d.ts +0 -24
- package/dist/index-DPNWNa7t.d.ts +0 -414
- package/dist/index-DsfCs3-x.d.ts +0 -122
- package/dist/index-dUb6wb4Y.d.ts +0 -22
- package/dist/marketplace.gen-BSDIX7NZ.js.map +0 -1
- package/dist/marketplaceConfig-C6X1SUik.js.map +0 -1
- package/dist/queries-CUU65uYZ.js.map +0 -1
- package/dist/react-DAIicQPT.js.map +0 -1
- package/dist/transaction-CcVViHEL.js.map +0 -1
- package/dist/utils-BPYfgDSL.js.map +0 -1
- package/dist/utils-CW2NA5KG.js.map +0 -1
- package/dist/wagmi-CDzEQbfk.js.map +0 -1
- package/src/react/hooks/__tests__/useGetTokenSuppliesMap.test.tsx +0 -104
- package/src/react/hooks/useGetTokenSuppliesMap.tsx +0 -73
- package/src/react/hooks/useListPrimarySaleItems.ts +0 -102
- package/src/react/queries/getTokenSuppliesMap.ts +0 -77
- package/src/react/ui/modals/TransferModal/_store.ts +0 -66
- package/src/react/ui/modals/_internal/components/quantityInput/QuantityInputBase.tsx +0 -166
- package/src/react/ui/modals/_internal/stores/accountModal.ts +0 -3
- /package/dist/{abi-BKyRjVcZ.js → abi-BMvgNbKQ.js} +0 -0
- /package/dist/{index-C39K_8SG.d.ts → index-CD2bj_xW.d.ts} +0 -0
- /package/dist/{options-B4QN7Xou.js → options-BBBR8u_4.js} +0 -0
|
@@ -22,6 +22,7 @@ export type TokenSuppliesParams = {
|
|
|
22
22
|
export type TokenBalancesParams = {
|
|
23
23
|
chainId: string;
|
|
24
24
|
accountAddress: string;
|
|
25
|
+
contractAddress: string;
|
|
25
26
|
includeMetadata?: boolean;
|
|
26
27
|
page?: PaginationOptions;
|
|
27
28
|
};
|
|
@@ -71,6 +72,7 @@ export class LaosAPI {
|
|
|
71
72
|
async getTokenBalances({
|
|
72
73
|
chainId,
|
|
73
74
|
accountAddress,
|
|
75
|
+
contractAddress,
|
|
74
76
|
includeMetadata = true,
|
|
75
77
|
page = {
|
|
76
78
|
sort: [
|
|
@@ -89,6 +91,7 @@ export class LaosAPI {
|
|
|
89
91
|
body: JSON.stringify({
|
|
90
92
|
chainId,
|
|
91
93
|
accountAddress,
|
|
94
|
+
contractAddress,
|
|
92
95
|
includeMetadata,
|
|
93
96
|
page,
|
|
94
97
|
}),
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/* eslint-disable */
|
|
2
|
-
// marketplace-api
|
|
2
|
+
// marketplace-api cf3a5fae407a732cd5a90e4fd68184ac5591b2c1
|
|
3
3
|
// --
|
|
4
4
|
// Code generated by webrpc-gen@v0.25.4 with typescript generator. DO NOT EDIT.
|
|
5
5
|
//
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
export const WebrpcHeader = "Webrpc";
|
|
9
9
|
|
|
10
10
|
export const WebrpcHeaderValue =
|
|
11
|
-
"webrpc@v0.25.4;gen-typescript@v0.17.0;marketplace-api@v0.0.0-
|
|
11
|
+
"webrpc@v0.25.4;gen-typescript@v0.17.0;marketplace-api@v0.0.0-cf3a5fae407a732cd5a90e4fd68184ac5591b2c1;marketplace-sdk@v0.10.0";
|
|
12
12
|
|
|
13
13
|
// WebRPC description and code-gen version
|
|
14
14
|
export const WebRPCVersion = "v1";
|
|
@@ -17,7 +17,7 @@ export const WebRPCVersion = "v1";
|
|
|
17
17
|
export const WebRPCSchemaVersion = "";
|
|
18
18
|
|
|
19
19
|
// Schema hash generated from your RIDL schema
|
|
20
|
-
export const WebRPCSchemaHash = "
|
|
20
|
+
export const WebRPCSchemaHash = "cf3a5fae407a732cd5a90e4fd68184ac5591b2c1";
|
|
21
21
|
|
|
22
22
|
type WebrpcGenVersions = {
|
|
23
23
|
webrpcGenVersion: string;
|
|
@@ -586,6 +586,8 @@ export interface PrimarySaleItem {
|
|
|
586
586
|
priceAmount: string;
|
|
587
587
|
priceAmountFormatted: string;
|
|
588
588
|
supply: string;
|
|
589
|
+
supplyCap: string;
|
|
590
|
+
unlimitedSupply: boolean;
|
|
589
591
|
createdAt: string;
|
|
590
592
|
updatedAt: string;
|
|
591
593
|
deletedAt?: string;
|
|
@@ -78,9 +78,16 @@ class ConfigKeys {
|
|
|
78
78
|
}
|
|
79
79
|
|
|
80
80
|
// biome-ignore lint/complexity/noStaticOnlyClass: static class provides better organization and type safety for query keys
|
|
81
|
-
class
|
|
82
|
-
static all = ['
|
|
83
|
-
static
|
|
81
|
+
class TokenKeys {
|
|
82
|
+
static all = ['tokens'] as const;
|
|
83
|
+
static metadata = [...TokenKeys.all, 'metadata'] as const;
|
|
84
|
+
static supplies = [...TokenKeys.all, 'supplies'] as const;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
// biome-ignore lint/complexity/noStaticOnlyClass: static class provides better organization and type safety for query keys
|
|
88
|
+
class TokenSuppliesKeys {
|
|
89
|
+
static all = ['tokenSupplies'] as const;
|
|
90
|
+
static maps = [...TokenSuppliesKeys.all, 'map'] as const;
|
|
84
91
|
}
|
|
85
92
|
export const collectableKeys = CollectableKeys;
|
|
86
93
|
export const collectionKeys = CollectionKeys;
|
|
@@ -88,4 +95,5 @@ export const balanceQueries = BalanceQueries;
|
|
|
88
95
|
export const checkoutKeys = CheckoutKeys;
|
|
89
96
|
export const currencyKeys = CurrencyKeys;
|
|
90
97
|
export const configKeys = ConfigKeys;
|
|
91
|
-
export const
|
|
98
|
+
export const tokenKeys = TokenKeys;
|
|
99
|
+
export const tokenSuppliesKeys = TokenSuppliesKeys;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { SequenceAPIClient } from '@0xsequence/api';
|
|
2
2
|
import { SequenceIndexer } from '@0xsequence/indexer';
|
|
3
3
|
import { SequenceMetadata } from '@0xsequence/metadata';
|
|
4
|
-
import {
|
|
4
|
+
import { stringTemplate } from '@0xsequence/network';
|
|
5
5
|
import type { ApiConfig, Env, SdkConfig } from '../../../types/sdk-config';
|
|
6
|
-
import {
|
|
6
|
+
import { getNetwork } from '../../../utils/network';
|
|
7
7
|
import { BuilderAPI } from './builder-api';
|
|
8
8
|
import { SequenceMarketplace } from './marketplace-api';
|
|
9
9
|
|
|
@@ -22,18 +22,6 @@ const SERVICES = {
|
|
|
22
22
|
|
|
23
23
|
type ChainNameOrId = string | number;
|
|
24
24
|
|
|
25
|
-
const getNetwork = (nameOrId: ChainNameOrId) => {
|
|
26
|
-
for (const network of Object.values(networks)) {
|
|
27
|
-
if (
|
|
28
|
-
network.name === String(nameOrId).toLowerCase() ||
|
|
29
|
-
network.chainId === Number(nameOrId)
|
|
30
|
-
) {
|
|
31
|
-
return network;
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
throw new MissingConfigError(`Network configuration for chain ${nameOrId}`);
|
|
35
|
-
};
|
|
36
|
-
|
|
37
25
|
const metadataURL = (env: Env = 'production') => {
|
|
38
26
|
const prefix = getPrefix(env);
|
|
39
27
|
return stringTemplate(SERVICES.metadata, { prefix });
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { Event as DatabeatEvent } from '@databeat/tracker';
|
|
2
2
|
import { Databeat } from '@databeat/tracker';
|
|
3
|
+
import { useContext } from 'react';
|
|
3
4
|
|
|
4
|
-
import {
|
|
5
|
+
import { MarketplaceSdkContext } from '../../provider';
|
|
5
6
|
import type {
|
|
6
7
|
EventType,
|
|
8
|
+
TrackBuyModalOpened,
|
|
7
9
|
TrackCreateListing,
|
|
8
10
|
TrackCreateOffer,
|
|
9
11
|
TrackSellItems,
|
|
@@ -22,6 +24,14 @@ export class DatabeatAnalytics extends Databeat<Extract<EventTypes, string>> {
|
|
|
22
24
|
});
|
|
23
25
|
}
|
|
24
26
|
|
|
27
|
+
trackBuyModalOpened(args: TrackBuyModalOpened) {
|
|
28
|
+
this.track({
|
|
29
|
+
event: 'BUY_MODAL_OPENED',
|
|
30
|
+
props: args.props,
|
|
31
|
+
nums: args.nums,
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
|
|
25
35
|
trackCreateListing(args: TrackCreateListing) {
|
|
26
36
|
this.track({
|
|
27
37
|
event: 'CREATE_LISTING',
|
|
@@ -47,16 +57,7 @@ export class DatabeatAnalytics extends Databeat<Extract<EventTypes, string>> {
|
|
|
47
57
|
}
|
|
48
58
|
|
|
49
59
|
export const useAnalytics = () => {
|
|
50
|
-
const
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
const auth: Auth = {};
|
|
54
|
-
auth.headers = { 'X-Access-Key': config.projectAccessKey };
|
|
55
|
-
|
|
56
|
-
return new DatabeatAnalytics(server, auth, {
|
|
57
|
-
defaultEnabled: true,
|
|
58
|
-
initProps: () => {
|
|
59
|
-
return { origin: window.location.origin };
|
|
60
|
-
},
|
|
61
|
-
});
|
|
60
|
+
const context = useContext(MarketplaceSdkContext);
|
|
61
|
+
|
|
62
|
+
return context.analytics;
|
|
62
63
|
};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { BuyModalProps } from '../../ui/modals/BuyModal/store';
|
|
1
2
|
import type { MarketplaceKind, OrderbookKind } from '../api';
|
|
2
3
|
|
|
3
4
|
export enum EventType {
|
|
@@ -8,6 +9,7 @@ export enum EventType {
|
|
|
8
9
|
CANCEL_LISTING = 4,
|
|
9
10
|
CANCEL_OFFER = 5,
|
|
10
11
|
TRANSACTION_FAILED = 6,
|
|
12
|
+
BUY_MODAL_OPENED = 7,
|
|
11
13
|
}
|
|
12
14
|
|
|
13
15
|
interface PropsEvent {
|
|
@@ -41,6 +43,26 @@ export interface TrackBuyItems {
|
|
|
41
43
|
nums: TradeItemsValues;
|
|
42
44
|
}
|
|
43
45
|
|
|
46
|
+
type BuyModalOpenedProps = Omit<
|
|
47
|
+
BuyModalProps,
|
|
48
|
+
| 'marketplaceType'
|
|
49
|
+
| 'customCreditCardProviderCallback'
|
|
50
|
+
| 'chainId'
|
|
51
|
+
| 'skipNativeBalanceCheck'
|
|
52
|
+
| 'nativeTokenAddress'
|
|
53
|
+
> & {
|
|
54
|
+
buyAnalyticsId: string;
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
type BuyModalOpenedNums = {
|
|
58
|
+
chainId: number;
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
export interface TrackBuyModalOpened {
|
|
62
|
+
props: BuyModalOpenedProps;
|
|
63
|
+
nums: BuyModalOpenedNums;
|
|
64
|
+
}
|
|
65
|
+
|
|
44
66
|
export interface TrackSellItems {
|
|
45
67
|
props: TradeItemsInfo & Transaction;
|
|
46
68
|
nums: TradeItemsValues;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
// Flattens an object and turns it into a string and number object for use with analytics
|
|
2
|
+
// Ignores arrays and converts booleans to strings
|
|
3
|
+
export function flattenAnalyticsArgs(args: object) {
|
|
4
|
+
const analyticsProps: Record<string, string> = {};
|
|
5
|
+
const analyticsNums: Record<string, number> = {};
|
|
6
|
+
|
|
7
|
+
function recurse(obj: object, prefix = '') {
|
|
8
|
+
for (const [key, value] of Object.entries(obj)) {
|
|
9
|
+
const path = prefix ? `${prefix}.${key}` : key;
|
|
10
|
+
if (typeof value === 'string' || typeof value === 'boolean') {
|
|
11
|
+
analyticsProps[path] = value.toString();
|
|
12
|
+
} else if (typeof value === 'number') {
|
|
13
|
+
analyticsNums[path] = value;
|
|
14
|
+
} else if (isPojo(value)) {
|
|
15
|
+
recurse(value, path);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
recurse(args);
|
|
21
|
+
return { analyticsProps, analyticsNums };
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
function isPojo(val: unknown): val is Record<string, unknown> {
|
|
25
|
+
return typeof val === 'object' && val !== null && !Array.isArray(val);
|
|
26
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Hex, TypedData, TypedDataDomain } from 'viem';
|
|
1
|
+
import type { Address, Hex, TypedData, TypedDataDomain } from 'viem';
|
|
2
2
|
import { type PostRequest, type Signature, type Step, StepType } from './api';
|
|
3
3
|
|
|
4
4
|
export interface SignatureStep {
|
|
@@ -6,7 +6,7 @@ export interface SignatureStep {
|
|
|
6
6
|
domain?: TypedDataDomain;
|
|
7
7
|
types?: TypedData;
|
|
8
8
|
primaryType?: string;
|
|
9
|
-
to:
|
|
9
|
+
to: Address; // TODO: This should not be here, its wrongly typed in webrpc
|
|
10
10
|
data: string;
|
|
11
11
|
value: string;
|
|
12
12
|
price: string;
|
|
@@ -22,7 +22,7 @@ export interface TransactionStep {
|
|
|
22
22
|
| StepType.createOffer
|
|
23
23
|
| StepType.createListing;
|
|
24
24
|
data: Hex;
|
|
25
|
-
to:
|
|
25
|
+
to: Address;
|
|
26
26
|
value: Hex;
|
|
27
27
|
price: Hex;
|
|
28
28
|
maxFeePerGas?: Hex;
|
|
@@ -32,7 +32,7 @@ export interface TransactionStep {
|
|
|
32
32
|
export interface ApprovalStep {
|
|
33
33
|
id: StepType.tokenApproval;
|
|
34
34
|
data: string;
|
|
35
|
-
to:
|
|
35
|
+
to: Address;
|
|
36
36
|
value: string;
|
|
37
37
|
price: string;
|
|
38
38
|
}
|
|
@@ -12,19 +12,10 @@ export const createWagmiConfig = (
|
|
|
12
12
|
sdkConfig: SdkConfig,
|
|
13
13
|
ssr?: boolean,
|
|
14
14
|
) => {
|
|
15
|
-
const chains =
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
const projectAccessKey =
|
|
20
|
-
nodeGatewayOverrides?.accessKey ?? sdkConfig.projectAccessKey;
|
|
21
|
-
|
|
22
|
-
const transports = getTransportConfigs(
|
|
23
|
-
chains,
|
|
24
|
-
projectAccessKey,
|
|
25
|
-
nodeGatewayEnv,
|
|
26
|
-
nodeGatewayUrl,
|
|
27
|
-
);
|
|
15
|
+
const { chains, transports } = getWagmiChainsAndTransports({
|
|
16
|
+
marketplaceConfig,
|
|
17
|
+
sdkConfig,
|
|
18
|
+
});
|
|
28
19
|
|
|
29
20
|
const walletType = marketplaceConfig.settings.walletOptions.walletType;
|
|
30
21
|
|
|
@@ -51,6 +42,30 @@ export const createWagmiConfig = (
|
|
|
51
42
|
});
|
|
52
43
|
};
|
|
53
44
|
|
|
45
|
+
export function getWagmiChainsAndTransports({
|
|
46
|
+
marketplaceConfig,
|
|
47
|
+
sdkConfig,
|
|
48
|
+
}: {
|
|
49
|
+
marketplaceConfig: MarketplaceConfig;
|
|
50
|
+
sdkConfig: SdkConfig;
|
|
51
|
+
}) {
|
|
52
|
+
const chains = getChainConfigs(marketplaceConfig);
|
|
53
|
+
const nodeGatewayOverrides = sdkConfig._internal?.overrides?.api?.nodeGateway;
|
|
54
|
+
const nodeGatewayEnv = nodeGatewayOverrides?.env ?? 'production';
|
|
55
|
+
const nodeGatewayUrl = nodeGatewayOverrides?.url;
|
|
56
|
+
const projectAccessKey =
|
|
57
|
+
nodeGatewayOverrides?.accessKey ?? sdkConfig.projectAccessKey;
|
|
58
|
+
|
|
59
|
+
const transports = getTransportConfigs(
|
|
60
|
+
chains,
|
|
61
|
+
projectAccessKey,
|
|
62
|
+
nodeGatewayEnv,
|
|
63
|
+
nodeGatewayUrl,
|
|
64
|
+
);
|
|
65
|
+
|
|
66
|
+
return { chains, transports };
|
|
67
|
+
}
|
|
68
|
+
|
|
54
69
|
function getAllCollections(marketConfig: MarketplaceConfig) {
|
|
55
70
|
return [...marketConfig.market.collections, ...marketConfig.shop.collections];
|
|
56
71
|
}
|
|
@@ -46,7 +46,7 @@ export interface WalletInstance {
|
|
|
46
46
|
walletKind: WalletKind;
|
|
47
47
|
getChainId: () => Promise<number>;
|
|
48
48
|
switchChain: (chainId: number) => Promise<void>;
|
|
49
|
-
address: () => Promise<
|
|
49
|
+
address: () => Promise<Address>;
|
|
50
50
|
handleSignMessageStep: (stepItem: SignatureStep) => Promise<Hex | undefined>;
|
|
51
51
|
handleSendTransactionStep: (
|
|
52
52
|
chainId: number,
|
|
@@ -242,21 +242,21 @@ export const wallet = ({
|
|
|
242
242
|
switch (tokenType) {
|
|
243
243
|
case 'ERC20':
|
|
244
244
|
return (await publicClient.readContract({
|
|
245
|
-
address: contractAddress as
|
|
245
|
+
address: contractAddress as Address,
|
|
246
246
|
abi: erc20Abi,
|
|
247
247
|
functionName: 'allowance',
|
|
248
248
|
args: [walletAddress, spenderAddress],
|
|
249
249
|
})) as bigint;
|
|
250
250
|
case 'ERC721':
|
|
251
251
|
return (await publicClient.readContract({
|
|
252
|
-
address: contractAddress as
|
|
252
|
+
address: contractAddress as Address,
|
|
253
253
|
abi: erc721Abi,
|
|
254
254
|
functionName: 'isApprovedForAll',
|
|
255
255
|
args: [walletAddress, spenderAddress],
|
|
256
256
|
})) as boolean;
|
|
257
257
|
case 'ERC1155':
|
|
258
258
|
return (await publicClient.readContract({
|
|
259
|
-
address: contractAddress as
|
|
259
|
+
address: contractAddress as Address,
|
|
260
260
|
abi: ERC1155_ABI,
|
|
261
261
|
functionName: 'isApprovedForAll',
|
|
262
262
|
args: [walletAddress, spenderAddress],
|