@0xsequence/marketplace-sdk 1.2.0 → 2.0.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/preview.tsx +4 -7
- package/CHANGELOG.md +192 -1
- package/compile-tailwind.js +1 -1
- package/dist/BellIcon.js +48 -0
- package/dist/BellIcon.js.map +1 -0
- package/dist/Card.js +831 -0
- package/dist/Card.js.map +1 -0
- package/dist/ShopCard.d.ts +83 -0
- package/dist/_internal.js +78 -0
- package/dist/_internal.js.map +1 -0
- package/dist/abi.js +157 -0
- package/dist/abi.js.map +1 -0
- package/dist/alertMessage.js +29 -0
- package/dist/alertMessage.js.map +1 -0
- package/dist/alien_swap.js +6 -0
- package/dist/alien_swap.js.map +1 -0
- package/dist/api.js +187 -0
- package/dist/api.js.map +1 -0
- package/dist/aqua-xyz.js +6 -0
- package/dist/aqua-xyz.js.map +1 -0
- package/dist/aura.js +6 -0
- package/dist/aura.js.map +1 -0
- package/dist/blur.js +6 -0
- package/dist/blur.js.map +1 -0
- package/dist/builder-api.js +41 -0
- package/dist/builder-api.js.map +1 -0
- package/dist/calendar.js +51 -0
- package/dist/calendar.js.map +1 -0
- package/dist/checkout.js +52 -0
- package/dist/checkout.js.map +1 -0
- package/dist/coinbase.js +6 -0
- package/dist/coinbase.js.map +1 -0
- package/dist/collectible.js +620 -0
- package/dist/collectible.js.map +1 -0
- package/dist/collection.js +396 -0
- package/dist/collection.js.map +1 -0
- package/dist/config.js +75 -0
- package/dist/config.js.map +1 -0
- package/dist/consts.d.ts +7 -0
- package/dist/consts.js +8 -0
- package/dist/consts.js.map +1 -0
- package/dist/contracts.js +116 -0
- package/dist/contracts.js.map +1 -0
- package/dist/create-config.d.ts +12255 -0
- package/dist/create-config.js +170 -0
- package/dist/create-config.js.map +1 -0
- package/dist/currency.js +186 -0
- package/dist/currency.js.map +1 -0
- package/dist/currencyImage.js +28 -0
- package/dist/currencyImage.js.map +1 -0
- package/dist/dist.js +2771 -0
- package/dist/dist.js.map +1 -0
- package/dist/element.js +6 -0
- package/dist/element.js.map +1 -0
- package/dist/expirationDateSelect.js +245 -0
- package/dist/expirationDateSelect.js.map +1 -0
- package/dist/filter-state.d.ts +153 -0
- package/dist/filters.d.ts +29 -0
- package/dist/foundation.js +6 -0
- package/dist/foundation.js.map +1 -0
- package/dist/hooks.js +26 -0
- package/dist/hooks.js.map +1 -0
- package/dist/hooks2.js +24 -0
- package/dist/hooks2.js.map +1 -0
- package/dist/index.d.ts +12 -8
- package/dist/index.js +13 -16
- package/dist/index10.d.ts +61 -0
- package/dist/index11.d.ts +639 -0
- package/dist/index12.d.ts +563 -0
- package/dist/index13.d.ts +19 -0
- package/dist/index14.d.ts +19 -0
- package/dist/index15.d.ts +25 -0
- package/dist/index16.d.ts +8 -0
- package/dist/index17.d.ts +853 -0
- package/dist/index18.d.ts +552 -0
- package/dist/index19.d.ts +338 -0
- package/dist/index2.d.ts +2174 -0
- package/dist/index21.d.ts +319 -0
- package/dist/index22.d.ts +230 -0
- package/dist/index23.d.ts +516 -0
- package/dist/index24.d.ts +24 -0
- package/dist/index26.d.ts +27 -0
- package/dist/index27.d.ts +25 -0
- package/dist/index28.d.ts +115 -0
- package/dist/index3.d.ts +2216 -0
- package/dist/index31.d.ts +48 -0
- package/dist/index32.d.ts +1 -0
- package/dist/index33.d.ts +56 -0
- package/dist/index34.d.ts +99 -0
- package/dist/index35.d.ts +171 -0
- package/dist/index36.d.ts +131 -0
- package/dist/index37.d.ts +135 -0
- package/dist/index38.d.ts +85 -0
- package/dist/index39.d.ts +91 -0
- package/dist/index4.d.ts +3426 -0
- package/dist/index40.d.ts +46 -0
- package/dist/index5.d.ts +809 -0
- package/dist/index6.d.ts +2541 -0
- package/dist/index7.d.ts +1803 -0
- package/dist/index8.d.ts +121 -0
- package/dist/index9.d.ts +47 -0
- package/dist/inventory.d.ts +46 -0
- package/dist/inventory.js +91 -0
- package/dist/inventory.js.map +1 -0
- package/dist/looks-rare.js +6 -0
- package/dist/looks-rare.js.map +1 -0
- package/dist/magic-eden.js +6 -0
- package/dist/magic-eden.js.map +1 -0
- package/dist/manifold.js +6 -0
- package/dist/manifold.js.map +1 -0
- package/dist/marketplace-logos.js +50 -0
- package/dist/marketplace-logos.js.map +1 -0
- package/dist/marketplace.js +1913 -0
- package/dist/marketplace.js.map +1 -0
- package/dist/marketplace2.js +70 -0
- package/dist/marketplace2.js.map +1 -0
- package/dist/metadata.d.ts +733 -0
- package/dist/mintify.js +6 -0
- package/dist/mintify.js.map +1 -0
- package/dist/network.js +15 -0
- package/dist/network.js.map +1 -0
- package/dist/networkconfigToWagmiChain.js +16 -0
- package/dist/networkconfigToWagmiChain.js.map +1 -0
- package/dist/nftx.js +6 -0
- package/dist/nftx.js.map +1 -0
- package/dist/okx.js +6 -0
- package/dist/okx.js.map +1 -0
- package/dist/open-sea.js +6 -0
- package/dist/open-sea.js.map +1 -0
- package/dist/primary-sale-checkout-options.d.ts +29 -0
- package/dist/primary-sale.js +3048 -0
- package/dist/primary-sale.js.map +1 -0
- package/dist/quantityInput.js +93 -0
- package/dist/quantityInput.js.map +1 -0
- package/dist/ranges.d.ts +125 -0
- package/dist/rarible.js +6 -0
- package/dist/rarible.js.map +1 -0
- package/dist/react/_internal/api/index.d.ts +5 -2
- package/dist/react/_internal/api/index.js +4 -7
- package/dist/react/_internal/databeat/index.d.ts +4 -1
- package/dist/react/_internal/databeat/index.js +4 -37
- package/dist/react/_internal/index.d.ts +5 -2
- package/dist/react/_internal/index.js +6 -11
- package/dist/react/_internal/wagmi/index.d.ts +4 -1
- package/dist/react/_internal/wagmi/index.js +2 -5
- package/dist/react/hooks/_deprecated/index.d.ts +47 -0
- package/dist/react/hooks/_deprecated/index.js +4 -0
- package/dist/react/hooks/checkout/index.d.ts +7 -0
- package/dist/react/hooks/checkout/index.js +7 -0
- package/dist/react/hooks/collectible/index.d.ts +7 -0
- package/dist/react/hooks/collectible/index.js +7 -0
- package/dist/react/hooks/collection/index.d.ts +11 -0
- package/dist/react/hooks/collection/index.js +7 -0
- package/dist/react/hooks/config/index.d.ts +9 -8
- package/dist/react/hooks/config/index.js +4 -37
- package/dist/react/hooks/contracts/index.d.ts +4 -7
- package/dist/react/hooks/contracts/index.js +3 -16
- package/dist/react/hooks/currency/index.d.ts +47 -0
- package/dist/react/hooks/currency/index.js +7 -0
- package/dist/react/hooks/index.d.ts +47 -37
- package/dist/react/hooks/index.js +14 -38
- package/dist/react/hooks/inventory/index.d.ts +7 -0
- package/dist/react/hooks/inventory/index.js +4 -0
- package/dist/react/hooks/token/index.d.ts +7 -0
- package/dist/react/hooks/token/index.js +7 -0
- package/dist/react/hooks/transactions/index.d.ts +6 -3
- package/dist/react/hooks/transactions/index.js +5 -38
- package/dist/react/hooks/ui/card-data/index.d.ts +8 -0
- package/dist/react/hooks/ui/card-data/index.js +4 -0
- package/dist/react/hooks/ui/index.d.ts +11 -5
- package/dist/react/hooks/ui/index.js +8 -38
- package/dist/react/hooks/ui/url-state/index.d.ts +7 -0
- package/dist/react/hooks/ui/url-state/index.js +4 -0
- package/dist/react/hooks/utils/index.d.ts +6 -37
- package/dist/react/hooks/utils/index.js +5 -38
- package/dist/react/index.d.ts +47 -37
- package/dist/react/index.js +20 -38
- package/dist/react/providers/index.d.ts +6 -0
- package/dist/react/providers/index.js +6 -0
- package/dist/react/queries/checkout/index.d.ts +7 -0
- package/dist/react/queries/checkout/index.js +4 -0
- package/dist/react/queries/collectible/index.d.ts +7 -0
- package/dist/react/queries/collectible/index.js +5 -0
- package/dist/react/queries/collection/index.d.ts +11 -0
- package/dist/react/queries/collection/index.js +4 -0
- package/dist/react/queries/currency/index.d.ts +6 -0
- package/dist/react/queries/currency/index.js +4 -0
- package/dist/react/queries/index.d.ts +23 -24
- package/dist/react/queries/index.js +11 -30
- package/dist/react/queries/inventory/index.d.ts +7 -3
- package/dist/react/queries/inventory/index.js +3 -21
- package/dist/react/queries/marketplace/index.d.ts +7 -0
- package/dist/react/queries/marketplace/index.js +5 -0
- package/dist/react/queries/token/index.d.ts +7 -0
- package/dist/react/queries/token/index.js +4 -0
- package/dist/react/ssr/index.d.ts +13 -25
- package/dist/react/ssr/index.js +13 -36
- package/dist/react/ui/components/marketplace-collectible-card/ActionButton/index.d.ts +6 -0
- package/dist/react/ui/components/marketplace-collectible-card/ActionButton/index.js +6 -0
- package/dist/react/ui/components/marketplace-collectible-card/Card/index.d.ts +10 -0
- package/dist/react/ui/components/marketplace-collectible-card/Card/index.js +6 -0
- package/dist/react/ui/components/marketplace-collectible-card/index.d.ts +45 -5
- package/dist/react/ui/components/marketplace-collectible-card/index.js +6 -38
- package/dist/react/ui/components/marketplace-collectible-card/utils/index.d.ts +6 -3
- package/dist/react/ui/components/marketplace-collectible-card/utils/index.js +3 -12
- package/dist/react/ui/components/marketplace-logos/index.d.ts +23 -22
- package/dist/react/ui/components/marketplace-logos/index.js +1 -1
- package/dist/react/ui/hooks/index.d.ts +47 -0
- package/dist/react/ui/hooks/index.js +15 -0
- package/dist/react/ui/icons/index.d.ts +3 -1
- package/dist/react/ui/icons/index.js +3 -14
- package/dist/react/ui/index.d.ts +47 -5
- package/dist/react/ui/index.js +6 -38
- package/dist/react/ui/modals/BuyModal/index.d.ts +47 -0
- package/dist/react/ui/modals/BuyModal/index.js +4 -0
- package/dist/react/ui/modals/CreateListingModal/index.d.ts +4 -0
- package/dist/react/ui/modals/CreateListingModal/index.js +6 -0
- package/dist/react/ui/modals/CreateListingModal/internal/hooks/index.d.ts +190 -0
- package/dist/react/ui/modals/CreateListingModal/internal/hooks/index.js +4 -0
- package/dist/react/ui/modals/MakeOfferModal/index.d.ts +4 -0
- package/dist/react/ui/modals/MakeOfferModal/index.js +4 -0
- package/dist/react/ui/modals/MakeOfferModal/internal/hooks/index.d.ts +188 -0
- package/dist/react/ui/modals/MakeOfferModal/internal/hooks/index.js +3 -0
- package/dist/react/ui/modals/SellModal/index.d.ts +6 -0
- package/dist/react/ui/modals/SellModal/index.js +6 -0
- package/dist/react/ui/modals/TransferModal/index.d.ts +47 -0
- package/dist/react/ui/modals/TransferModal/index.js +6 -0
- package/dist/react/ui/modals/_internal/components/alertMessage/index.d.ts +14 -0
- package/dist/react/ui/modals/_internal/components/alertMessage/index.js +3 -0
- package/dist/react/ui/modals/_internal/components/baseModal/index.d.ts +144 -0
- package/dist/react/ui/modals/_internal/components/baseModal/index.js +6 -0
- package/dist/react/ui/modals/_internal/components/calendar/index.d.ts +73 -0
- package/dist/react/ui/modals/_internal/components/calendar/index.js +5 -0
- package/dist/react/ui/modals/_internal/components/calendarDropdown/index.d.ts +21 -0
- package/dist/react/ui/modals/_internal/components/calendarDropdown/index.js +6 -0
- package/dist/react/ui/modals/_internal/components/currencyImage/index.d.ts +15 -0
- package/dist/react/ui/modals/_internal/components/currencyImage/index.js +5 -0
- package/dist/react/ui/modals/_internal/components/currencyOptionsSelect/index.d.ts +30 -0
- package/dist/react/ui/modals/_internal/components/currencyOptionsSelect/index.js +6 -0
- package/dist/react/ui/modals/_internal/components/expirationDateSelect/index.d.ts +2 -0
- package/dist/react/ui/modals/_internal/components/expirationDateSelect/index.js +6 -0
- package/dist/react/ui/modals/_internal/components/floorPriceText/index.d.ts +24 -0
- package/dist/react/ui/modals/_internal/components/floorPriceText/index.js +6 -0
- package/dist/react/ui/modals/_internal/components/priceInput/index.d.ts +45 -0
- package/dist/react/ui/modals/_internal/components/priceInput/index.js +6 -0
- package/dist/react/ui/modals/_internal/components/quantityInput/index.d.ts +24 -0
- package/dist/react/ui/modals/_internal/components/quantityInput/index.js +6 -0
- package/dist/react/ui/modals/_internal/components/selectWaasFeeOptions/index.d.ts +18 -0
- package/dist/react/ui/modals/_internal/components/selectWaasFeeOptions/index.js +6 -0
- package/dist/react/ui/modals/_internal/components/switchChainErrorModal/index.d.ts +14 -0
- package/dist/react/ui/modals/_internal/components/switchChainErrorModal/index.js +6 -0
- package/dist/react/ui/modals/_internal/components/timeAgo/index.d.ts +12 -0
- package/dist/react/ui/modals/_internal/components/timeAgo/index.js +5 -0
- package/dist/react/ui/modals/_internal/components/tokenPreview/index.d.ts +19 -0
- package/dist/react/ui/modals/_internal/components/tokenPreview/index.js +6 -0
- package/dist/react/ui/modals/_internal/components/transaction-footer/index.d.ts +26 -0
- package/dist/react/ui/modals/_internal/components/transaction-footer/index.js +4 -0
- package/dist/react/ui/modals/_internal/components/transactionDetails/index.d.ts +28 -0
- package/dist/react/ui/modals/_internal/components/transactionDetails/index.js +6 -0
- package/dist/react/ui/modals/_internal/components/transactionHeader/index.d.ts +16 -0
- package/dist/react/ui/modals/_internal/components/transactionHeader/index.js +3 -0
- package/dist/react/ui/modals/_internal/components/transactionPreview/index.d.ts +36 -0
- package/dist/react/ui/modals/_internal/components/transactionPreview/index.js +6 -0
- package/dist/react/ui/modals/_internal/components/transactionStatusModal/index.d.ts +27 -0
- package/dist/react/ui/modals/_internal/components/transactionStatusModal/index.js +6 -0
- package/dist/react/utils/index.d.ts +6 -19
- package/dist/react/utils/index.js +3 -8
- package/dist/react.js +16224 -0
- package/dist/react.js.map +1 -0
- package/dist/sequence.js +6 -0
- package/dist/sequence.js.map +1 -0
- package/dist/ssr.js +26 -0
- package/dist/ssr.js.map +1 -0
- package/dist/steps.d.ts +85 -0
- package/dist/styles/index.css +2040 -375
- package/dist/sudo-swap.js +6 -0
- package/dist/sudo-swap.js.map +1 -0
- package/dist/super-rare.js +6 -0
- package/dist/super-rare.js.map +1 -0
- package/dist/switchChainErrorModal.js +97 -0
- package/dist/switchChainErrorModal.js.map +1 -0
- package/dist/timeAgo.js +29 -0
- package/dist/timeAgo.js.map +1 -0
- package/dist/token-balances.d.ts +359 -0
- package/dist/token-balances.js +62 -0
- package/dist/token-balances.js.map +1 -0
- package/dist/token.js +2091 -0
- package/dist/token.js.map +1 -0
- package/dist/token2.js +247 -0
- package/dist/token2.js.map +1 -0
- package/dist/transaction-footer.js +45 -0
- package/dist/transaction-footer.js.map +1 -0
- package/dist/transaction.js +70 -0
- package/dist/transaction.js.map +1 -0
- package/dist/transactionHeader.js +32 -0
- package/dist/transactionHeader.js.map +1 -0
- package/dist/types/index.d.ts +5 -2
- package/dist/types/index.js +3 -4
- package/dist/types.d.ts +88 -0
- package/dist/types.js +41 -0
- package/dist/types.js.map +1 -0
- package/dist/url-state.js +170 -0
- package/dist/url-state.js.map +1 -0
- package/dist/utils/abi/index.d.ts +6 -5
- package/dist/utils/abi/index.js +5 -5
- 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 +9 -7
- package/dist/utils/index.js +9 -13
- package/dist/utils.js +230 -0
- package/dist/utils.js.map +1 -0
- package/dist/utils2.js +76 -0
- package/dist/utils2.js.map +1 -0
- package/dist/waas-types.d.ts +19 -0
- package/dist/wagmi.js +0 -0
- package/dist/x2y2.js +6 -0
- package/dist/x2y2.js.map +1 -0
- package/dist/xstate-store.cjs.d.ts +18 -0
- package/dist/zora.js +6 -0
- package/dist/zora.js.map +1 -0
- package/eslint/sequence-types.js +1069 -0
- package/eslint.config.mjs +337 -9
- package/image.d.ts +5 -0
- package/package.json +52 -50
- package/postcss.config.mjs +1 -1
- package/preserve-directives.ts +235 -0
- package/public/mockServiceWorker.js +0 -1
- package/src/react/_internal/api/builder-api.ts +26 -4
- package/src/react/_internal/api/index.ts +1 -2
- package/src/react/_internal/api/marketplace-api.ts +57 -25
- package/src/react/_internal/api/services.ts +56 -4
- package/src/react/_internal/api-mocks.ts +8 -0
- package/src/react/_internal/databeat/index.ts +4 -0
- package/src/react/_internal/databeat/types.ts +24 -28
- package/src/react/_internal/index.ts +70 -0
- package/src/react/_internal/query-builder.ts +203 -0
- package/src/react/_internal/types.ts +88 -18
- package/src/react/_internal/utils.ts +34 -52
- package/src/react/_internal/wagmi/__tests__/create-config.test.ts +11 -5
- package/src/react/_internal/wagmi/create-config.ts +2 -2
- package/src/react/_internal/wagmi/get-connectors.ts +22 -7
- package/src/react/hooks/_deprecated/index.ts +61 -0
- package/src/react/hooks/checkout/index.ts +1 -0
- package/src/react/hooks/checkout/primary-sale-checkout-options.test.tsx +206 -0
- package/src/react/hooks/checkout/primary-sale-checkout-options.tsx +111 -0
- package/src/react/hooks/collectible/balance.test.tsx +149 -0
- package/src/react/hooks/collectible/balance.tsx +39 -0
- package/src/react/hooks/collectible/erc721-sale-details.tsx +184 -0
- package/src/react/hooks/collectible/index.ts +16 -0
- package/src/react/hooks/collectible/market-count.test.tsx +133 -0
- package/src/react/hooks/collectible/market-count.tsx +75 -0
- package/src/react/hooks/collectible/market-highest-offer.test.tsx +112 -0
- package/src/react/hooks/collectible/market-highest-offer.tsx +74 -0
- package/src/react/hooks/collectible/market-list-paginated.test.tsx +211 -0
- package/src/react/hooks/collectible/market-list-paginated.tsx +109 -0
- package/src/react/hooks/collectible/market-list.test.tsx +243 -0
- package/src/react/hooks/collectible/market-list.tsx +79 -0
- package/src/react/hooks/collectible/market-listings-count.test.tsx +110 -0
- package/src/react/hooks/collectible/market-listings-count.tsx +75 -0
- package/src/react/hooks/collectible/market-listings.test.tsx +140 -0
- package/src/react/hooks/collectible/market-listings.tsx +99 -0
- package/src/react/hooks/collectible/market-lowest-listing.test.tsx +157 -0
- package/src/react/hooks/collectible/market-lowest-listing.tsx +74 -0
- package/src/react/hooks/collectible/market-offers-count.test.tsx +110 -0
- package/src/react/hooks/collectible/market-offers-count.tsx +75 -0
- package/src/react/hooks/collectible/market-offers.test.tsx +139 -0
- package/src/react/hooks/collectible/market-offers.tsx +79 -0
- package/src/react/hooks/collectible/metadata.test.tsx +119 -0
- package/src/react/hooks/collectible/metadata.tsx +72 -0
- package/src/react/hooks/collectible/primary-sale-item.test.tsx +503 -0
- package/src/react/hooks/collectible/primary-sale-item.tsx +69 -0
- package/src/react/hooks/collectible/primary-sale-items-count.test.tsx +154 -0
- package/src/react/hooks/collectible/primary-sale-items-count.tsx +22 -0
- package/src/react/hooks/collectible/primary-sale-items.test.tsx +259 -0
- package/src/react/hooks/collectible/primary-sale-items.tsx +66 -0
- package/src/react/hooks/collectible/token-balances.test.tsx +175 -0
- package/src/react/hooks/collectible/token-balances.tsx +38 -0
- package/src/react/hooks/collection/__snapshots__/list.test.tsx.snap +303 -0
- package/src/react/hooks/collection/balance-details.test.tsx +163 -0
- package/src/react/hooks/collection/balance-details.tsx +106 -0
- package/src/react/hooks/collection/index.ts +11 -0
- package/src/react/hooks/collection/list.test.tsx +111 -0
- package/src/react/hooks/collection/list.tsx +80 -0
- package/src/react/hooks/collection/market-detail-polling.test.tsx +146 -0
- package/src/react/hooks/collection/market-detail-polling.tsx +65 -0
- package/src/react/hooks/collection/market-filtered-count.test.tsx +121 -0
- package/src/react/hooks/collection/market-filtered-count.tsx +39 -0
- package/src/react/hooks/collection/market-floor.test.tsx +104 -0
- package/src/react/hooks/collection/market-floor.tsx +74 -0
- package/src/react/hooks/collection/market-items-count.test.tsx +121 -0
- package/src/react/hooks/collection/market-items-count.tsx +90 -0
- package/src/react/hooks/collection/market-items-paginated.test.tsx +142 -0
- package/src/react/hooks/collection/market-items-paginated.tsx +110 -0
- package/src/react/hooks/collection/market-items.test.tsx +184 -0
- package/src/react/hooks/collection/market-items.tsx +95 -0
- package/src/react/hooks/collection/metadata.test.tsx +103 -0
- package/src/react/hooks/collection/metadata.tsx +75 -0
- package/src/react/hooks/collection/useCollectionActiveListingsCurrencies.test.tsx +150 -0
- package/src/react/hooks/collection/useCollectionActiveListingsCurrencies.tsx +74 -0
- package/src/react/hooks/collection/useCollectionActiveOffersCurrencies.test.tsx +150 -0
- package/src/react/hooks/collection/useCollectionActiveOffersCurrencies.tsx +74 -0
- package/src/react/hooks/config/__snapshots__/useMarketplaceConfig.test.tsx.snap +12 -11
- package/src/react/hooks/config/useConnectorMetadata.tsx +1 -1
- package/src/react/hooks/config/useMarketplaceConfig.test.tsx +3 -1
- package/src/react/hooks/config/useMarketplaceConfig.tsx +1 -1
- package/src/react/hooks/contracts/index.ts +1 -0
- package/src/react/hooks/contracts/useERC721Owner.test.tsx +82 -0
- package/src/react/hooks/contracts/useERC721Owner.tsx +47 -0
- package/src/react/hooks/contracts/useSalesContractABI.ts +2 -2
- package/src/react/hooks/currency/compare-prices.test.tsx +221 -0
- package/src/react/hooks/currency/compare-prices.tsx +104 -0
- package/src/react/hooks/currency/convert-to-usd.test.tsx +173 -0
- package/src/react/hooks/currency/convert-to-usd.tsx +96 -0
- package/src/react/hooks/currency/currency.test.tsx +131 -0
- package/src/react/hooks/currency/currency.tsx +65 -0
- package/src/react/hooks/currency/index.ts +4 -0
- package/src/react/hooks/currency/list.test.tsx +191 -0
- package/src/react/hooks/currency/list.tsx +65 -0
- package/src/react/hooks/data/orders/useOrders.test.tsx +143 -0
- package/src/react/hooks/data/orders/useOrders.tsx +73 -0
- package/src/react/hooks/data/tokens/useCurrencyBalance.tsx +1 -1
- package/src/react/hooks/index.ts +9 -12
- package/src/react/hooks/inventory/index.ts +1 -0
- package/src/react/hooks/inventory/inventory.test.tsx +160 -0
- package/src/react/hooks/inventory/inventory.tsx +17 -0
- package/src/react/hooks/token/balances.test.tsx +111 -0
- package/src/react/hooks/token/balances.tsx +59 -0
- package/src/react/hooks/token/currency-balance.test.tsx +83 -0
- package/src/react/hooks/token/currency-balance.tsx +151 -0
- package/src/react/hooks/token/index.ts +5 -0
- package/src/react/hooks/token/metadata-search.test.tsx +292 -0
- package/src/react/hooks/token/metadata-search.tsx +192 -0
- package/src/react/hooks/token/metadata.test.tsx +140 -0
- package/src/react/hooks/token/metadata.tsx +73 -0
- package/src/react/hooks/token/ranges.test.tsx +112 -0
- package/src/react/hooks/token/ranges.tsx +93 -0
- package/src/react/hooks/transactions/index.ts +5 -0
- package/src/react/hooks/transactions/useBuyTransaction.tsx +95 -0
- package/src/react/hooks/transactions/useCancelOrder.test.tsx +15 -35
- package/src/react/hooks/transactions/useCancelOrder.tsx +3 -9
- package/src/react/hooks/transactions/useCancelTransactionSteps.tsx +3 -9
- package/src/react/hooks/transactions/useGenerateCancelTransaction.test.tsx +23 -12
- package/src/react/hooks/transactions/useGenerateCancelTransaction.tsx +16 -11
- package/src/react/hooks/transactions/useGenerateListingTransaction.test.tsx +17 -57
- package/src/react/hooks/transactions/useGenerateListingTransaction.tsx +17 -12
- package/src/react/hooks/transactions/useGenerateOfferTransaction.test.tsx +14 -15
- package/src/react/hooks/transactions/useGenerateOfferTransaction.tsx +11 -11
- package/src/react/hooks/transactions/useGenerateSellTransaction.test.tsx +28 -38
- package/src/react/hooks/transactions/useGenerateSellTransaction.tsx +16 -15
- package/src/react/hooks/transactions/useMarketTransactionSteps.test.tsx +105 -0
- package/src/react/hooks/transactions/useMarketTransactionSteps.tsx +89 -0
- package/src/react/hooks/transactions/useOrderSteps.tsx +23 -36
- package/src/react/hooks/transactions/usePrimarySaleTransactionSteps.ts +196 -0
- package/src/react/hooks/transactions/useProcessStep.test.tsx +63 -59
- package/src/react/hooks/transactions/useProcessStep.ts +52 -54
- package/src/react/hooks/transactions/useTransactionExecution.test.tsx +99 -0
- package/src/react/hooks/transactions/useTransactionExecution.ts +31 -0
- package/src/react/hooks/transactions/useTransactionType.ts +20 -0
- package/src/react/hooks/transactions/useTransferTokens.test.tsx +16 -16
- package/src/react/hooks/transactions/useTransferTokens.tsx +17 -5
- package/src/react/hooks/ui/card-data/index.ts +4 -0
- package/src/react/hooks/ui/card-data/market-card-data-paged.test.tsx +375 -0
- package/src/react/hooks/ui/card-data/market-card-data-paged.tsx +265 -0
- package/src/react/hooks/ui/card-data/market-card-data.test.tsx +299 -0
- package/src/react/hooks/ui/card-data/market-card-data.tsx +178 -0
- package/src/react/hooks/ui/card-data/primary-sale-1155-card-data.tsx +89 -0
- package/src/react/hooks/ui/card-data/primary-sale-721-card-data.tsx +227 -0
- package/src/react/hooks/ui/index.ts +3 -1
- package/src/react/hooks/ui/url-state/filter-state.test.tsx +569 -0
- package/src/react/hooks/ui/url-state/filter-state.tsx +264 -0
- package/src/react/hooks/ui/url-state/index.ts +1 -0
- package/src/react/hooks/ui/useCollectibleCardOfferState.test.tsx +75 -0
- package/src/react/hooks/ui/useCollectibleCardOfferState.ts +47 -0
- package/src/react/hooks/ui/useFilters.test.tsx +4 -1
- package/src/react/hooks/ui/useFilters.tsx +2 -2
- package/src/react/hooks/util/optimisticCancelUpdates.test.ts +489 -0
- package/src/react/hooks/util/optimisticCancelUpdates.ts +21 -22
- package/src/react/hooks/utils/index.ts +0 -4
- package/src/react/hooks/utils/useAutoSelectFeeOption.test.tsx +8 -5
- package/src/react/hooks/utils/useAutoSelectFeeOption.tsx +33 -17
- package/src/react/hooks/utils/useRoyalty.test.tsx +1 -1
- package/src/react/hooks/utils/useRoyalty.tsx +99 -34
- package/src/react/hooks/utils/useWaasFeeOptions.tsx +234 -0
- package/src/react/hooks/utils/waasFeeOptionsStore.ts +141 -0
- package/src/react/index.ts +3 -0
- package/src/react/providers/index.tsx +3 -3
- package/src/react/providers/modal-provider.tsx +6 -17
- package/src/react/providers/provider.test.tsx +1 -1
- package/src/react/providers/shadow-root.tsx +1 -1
- package/src/react/providers/theme-provider.tsx +1 -1
- package/src/react/queries/checkout/index.ts +1 -0
- package/src/react/queries/checkout/primary-sale-checkout-options.ts +118 -0
- package/src/react/queries/collectible/balance.ts +113 -0
- package/src/react/queries/collectible/index.ts +15 -0
- package/src/react/queries/collectible/market-count.ts +91 -0
- package/src/react/queries/collectible/market-highest-offer.ts +74 -0
- package/src/react/queries/collectible/market-list-paginated.ts +110 -0
- package/src/react/queries/collectible/market-list.ts +116 -0
- package/src/react/queries/collectible/market-listings-count.ts +70 -0
- package/src/react/queries/collectible/market-listings.ts +71 -0
- package/src/react/queries/collectible/market-lowest-listing.ts +74 -0
- package/src/react/queries/collectible/market-offers-count.ts +70 -0
- package/src/react/queries/collectible/market-offers.ts +90 -0
- package/src/react/queries/collectible/metadata.ts +84 -0
- package/src/react/queries/collectible/primary-sale-item.ts +79 -0
- package/src/react/queries/collectible/primary-sale-items-count.ts +67 -0
- package/src/react/queries/collectible/primary-sale-items.ts +96 -0
- package/src/react/queries/collectible/queryKeys.ts +12 -0
- package/src/react/queries/collectible/token-balances.ts +83 -0
- package/src/react/queries/collection/activeListingsCurrencies.ts +74 -0
- package/src/react/queries/collection/activeOffersCurrencies.ts +74 -0
- package/src/react/queries/collection/balance-details.ts +103 -0
- package/src/react/queries/collection/index.ts +9 -0
- package/src/react/queries/collection/list.ts +195 -0
- package/src/react/queries/collection/market-detail.ts +60 -0
- package/src/react/queries/collection/market-filtered-count.ts +67 -0
- package/src/react/queries/collection/market-floor.ts +58 -0
- package/src/react/queries/collection/market-items-count.ts +69 -0
- package/src/react/queries/collection/market-items-paginated.ts +84 -0
- package/src/react/queries/collection/market-items.ts +72 -0
- package/src/react/queries/collection/metadata.ts +60 -0
- package/src/react/queries/collection/queryKeys.ts +12 -0
- package/src/react/queries/currency/compare-prices.ts +122 -0
- package/src/react/queries/currency/convert-to-usd.ts +99 -0
- package/src/react/queries/currency/currency.ts +82 -0
- package/src/react/queries/currency/index.ts +4 -0
- package/src/react/queries/currency/list.ts +100 -0
- package/src/react/queries/index.ts +6 -7
- package/src/react/queries/inventory/inventory.ts +139 -91
- package/src/react/queries/marketplace/config.ts +85 -0
- package/src/react/queries/marketplace/filters.ts +139 -0
- package/src/react/queries/marketplace/index.ts +2 -0
- package/src/react/queries/marketplace/queryKeys.ts +12 -0
- package/src/react/queries/orders.ts +48 -0
- package/src/react/queries/token/balances.ts +107 -0
- package/src/react/queries/token/index.ts +5 -0
- package/src/react/queries/token/metadata-search.ts +95 -0
- package/src/react/queries/token/metadata.ts +80 -0
- package/src/react/queries/token/queryKeys.ts +12 -0
- package/src/react/queries/token/ranges.ts +74 -0
- package/src/react/queries/token/supplies.ts +86 -0
- package/src/react/ssr/__tests__/__snapshots__/create-ssr-client.test.ts.snap +11 -10
- package/src/react/ssr/create-ssr-client.ts +1 -1
- package/src/react/ssr/index.ts +5 -0
- package/src/react/types/query.ts +8 -7
- package/src/react/ui/components/_internals/ErrorDisplay.tsx +87 -0
- package/src/react/ui/components/_internals/ErrorLogBox.tsx +8 -1
- package/src/react/ui/components/_internals/custom-select/CustomSelect.tsx +13 -14
- package/src/react/ui/components/_internals/pill/__tests__/Pill.test.tsx +9 -5
- package/src/react/ui/components/marketplace-collectible-card/ActionButton/ActionButton.stories.tsx +293 -0
- package/src/react/ui/components/marketplace-collectible-card/ActionButton/ActionButton.tsx +114 -0
- package/src/react/ui/components/marketplace-collectible-card/ActionButton/__tests__/ActionButtonBody.test.tsx +106 -0
- package/src/react/ui/components/marketplace-collectible-card/ActionButton/__tests__/NonOwnerActions.test.tsx +70 -0
- package/src/react/ui/components/marketplace-collectible-card/ActionButton/__tests__/OwnerActions.test.tsx +68 -0
- package/src/react/ui/components/marketplace-collectible-card/ActionButton/__tests__/useActionButtonLogic.test.tsx +101 -0
- package/src/react/ui/components/marketplace-collectible-card/ActionButton/components/ActionButtonBody.tsx +57 -0
- package/src/react/ui/components/marketplace-collectible-card/ActionButton/components/NonOwnerActions.tsx +136 -0
- package/src/react/ui/components/marketplace-collectible-card/ActionButton/components/OwnerActions.tsx +91 -0
- package/src/react/ui/components/marketplace-collectible-card/ActionButton/hooks/useActionButtonLogic.ts +97 -0
- package/src/react/ui/components/marketplace-collectible-card/ActionButton/index.ts +1 -0
- package/src/react/ui/components/marketplace-collectible-card/ActionButton/store.ts +85 -0
- package/src/react/ui/components/marketplace-collectible-card/Card/card-badge.tsx +37 -0
- package/src/react/ui/components/marketplace-collectible-card/Card/card-content.tsx +27 -0
- package/src/react/ui/components/marketplace-collectible-card/Card/card-footer.tsx +38 -0
- package/src/react/ui/components/marketplace-collectible-card/Card/card-media.tsx +69 -0
- package/src/react/ui/components/marketplace-collectible-card/Card/card-price.tsx +44 -0
- package/src/react/ui/components/marketplace-collectible-card/Card/card-sale-details.tsx +37 -0
- package/src/react/ui/components/marketplace-collectible-card/Card/card-skeleton.tsx +39 -0
- package/src/react/ui/components/marketplace-collectible-card/Card/card-title.tsx +109 -0
- package/src/react/ui/components/marketplace-collectible-card/Card/card.tsx +51 -0
- package/src/react/ui/components/marketplace-collectible-card/Card/index.ts +30 -0
- package/src/react/ui/components/marketplace-collectible-card/CollectibleCardSkeleton.tsx +1 -1
- package/src/react/ui/components/marketplace-collectible-card/_internals/PriceDisplay.tsx +87 -0
- package/src/react/ui/components/marketplace-collectible-card/constants.ts +20 -0
- package/src/react/ui/components/marketplace-collectible-card/index.ts +6 -0
- package/src/react/ui/components/marketplace-collectible-card/types.ts +31 -16
- package/src/react/ui/components/marketplace-collectible-card/utils/determineCardAction.ts +63 -0
- package/src/react/ui/components/marketplace-collectible-card/utils/formatPrice.ts +71 -2
- package/src/react/ui/components/marketplace-collectible-card/utils/index.ts +3 -0
- package/src/react/ui/components/marketplace-collectible-card/utils/renderSkeleton.tsx +44 -0
- package/src/react/ui/components/marketplace-collectible-card/utils/shopCardState.ts +83 -0
- package/src/react/ui/components/marketplace-collectible-card/utils/supplyStatus.ts +5 -5
- package/src/react/ui/components/marketplace-collectible-card/variants/MarketCard.tsx +63 -78
- package/src/react/ui/components/marketplace-collectible-card/variants/MarketCardPresentation.tsx +170 -0
- package/src/react/ui/components/marketplace-collectible-card/variants/NonTradableInventoryCard.tsx +56 -38
- package/src/react/ui/components/marketplace-collectible-card/variants/ShopCard.tsx +55 -65
- package/src/react/ui/components/marketplace-collectible-card/variants/ShopCardPresentation.tsx +144 -0
- package/src/react/ui/components/marketplace-logos/marketplace-logos.tsx +1 -5
- package/src/react/ui/components/media/Media.tsx +1 -1
- package/src/react/ui/components/media/MediaSkeleton.tsx +1 -1
- package/src/react/ui/hooks/index.ts +2 -0
- package/src/react/ui/icons/BellIcon.tsx +7 -3
- package/src/react/ui/icons/iconVariants.ts +11 -0
- package/src/react/ui/icons/index.ts +0 -3
- package/src/react/ui/index.ts +37 -8
- package/src/react/ui/modals/BuyModal/components/BuyModalContent.tsx +161 -0
- package/src/react/ui/modals/BuyModal/components/CollectibleMetadataSummary.tsx +141 -0
- package/src/react/ui/modals/BuyModal/components/CryptoPaymentModal.tsx +177 -0
- package/src/react/ui/modals/BuyModal/components/CryptoPaymentModalSkeleton.tsx +48 -0
- package/src/react/ui/modals/BuyModal/components/Modal.tsx +2 -2
- package/src/react/ui/modals/BuyModal/components/TrailsCss.ts +216 -0
- package/src/react/ui/modals/BuyModal/components/sequence-checkout/ERC1155QuantityModal.tsx +197 -0
- package/src/react/ui/modals/BuyModal/components/sequence-checkout/SequenceCheckoutNew.tsx +161 -0
- package/src/react/ui/modals/BuyModal/components/sequence-checkout/usePaymentModalParams.ts +204 -0
- package/src/react/ui/modals/BuyModal/components/types.ts +6 -5
- package/src/react/ui/modals/BuyModal/hooks/__tests__/useERC1155SalePaymentParams.test.tsx +369 -0
- package/src/react/ui/modals/BuyModal/hooks/useBuyModalData.ts +151 -0
- package/src/react/ui/modals/BuyModal/hooks/useERC1155SalePaymentParams.ts +244 -0
- package/src/react/ui/modals/BuyModal/hooks/useExecuteBundledTransactions.ts +167 -0
- package/src/react/ui/modals/BuyModal/hooks/useHasSufficientBalance.ts +30 -0
- package/src/react/ui/modals/BuyModal/hooks/useMarketPlatformFee.ts +2 -2
- package/src/react/ui/modals/BuyModal/index.tsx +6 -3
- package/src/react/ui/modals/BuyModal/internal/__tests__/determineCheckoutMode.test.ts +119 -0
- package/src/react/ui/modals/BuyModal/internal/buyModalContext.ts +146 -0
- package/src/react/ui/modals/BuyModal/internal/cryptoPaymentModalContext.tsx +399 -0
- package/src/react/ui/modals/BuyModal/internal/determineCheckoutMode.ts +49 -0
- package/src/react/ui/modals/BuyModal/store.ts +25 -94
- package/src/react/ui/modals/CreateListingModal/Modal.tsx +141 -308
- package/src/react/ui/modals/CreateListingModal/__tests__/Modal.test.tsx +35 -61
- package/src/react/ui/modals/CreateListingModal/index.tsx +16 -9
- package/src/react/ui/modals/CreateListingModal/internal/context.ts +416 -0
- package/src/react/ui/modals/CreateListingModal/internal/helpers/validation.ts +79 -0
- package/src/react/ui/modals/CreateListingModal/internal/hooks/index.ts +1 -0
- package/src/react/ui/modals/CreateListingModal/internal/hooks/use-collectible-approval.ts +49 -0
- package/src/react/ui/modals/CreateListingModal/internal/listing-mutations.ts +267 -0
- package/src/react/ui/modals/CreateListingModal/internal/store.ts +150 -0
- package/src/react/ui/modals/MakeOfferModal/Modal.tsx +130 -348
- package/src/react/ui/modals/MakeOfferModal/__stories__/MakeOfferModal.mock-data.ts +494 -0
- package/src/react/ui/modals/MakeOfferModal/__stories__/MakeOfferModal.stories.tsx +699 -0
- package/src/react/ui/modals/MakeOfferModal/__tests__/Modal.test.tsx +28 -155
- package/src/react/ui/modals/MakeOfferModal/index.tsx +17 -11
- package/src/react/ui/modals/MakeOfferModal/internal/context.ts +453 -0
- package/src/react/ui/modals/MakeOfferModal/internal/helpers/validation.ts +99 -0
- package/src/react/ui/modals/MakeOfferModal/internal/hooks/index.ts +1 -0
- package/src/react/ui/modals/MakeOfferModal/internal/hooks/use-erc20-allowance.ts +43 -0
- package/src/react/ui/modals/MakeOfferModal/internal/offer-mutations.ts +231 -0
- package/src/react/ui/modals/MakeOfferModal/internal/store.ts +150 -0
- package/src/react/ui/modals/SellModal/Modal.tsx +74 -213
- package/src/react/ui/modals/SellModal/index.tsx +5 -11
- package/src/react/ui/modals/SellModal/internal/context.ts +284 -0
- package/src/react/ui/modals/SellModal/internal/sell-mutations.ts +163 -0
- package/src/react/ui/modals/SellModal/internal/store.ts +76 -0
- package/src/react/ui/modals/SellModal/internal/use-generate-sell-transaction.ts +93 -0
- package/src/react/ui/modals/TransferModal/__tests__/store.test.ts +51 -345
- package/src/react/ui/modals/TransferModal/_views/enterWalletAddress/_components/TokenQuantityInput.tsx +36 -34
- package/src/react/ui/modals/TransferModal/_views/enterWalletAddress/_components/WalletAddressInput.tsx +19 -28
- package/src/react/ui/modals/TransferModal/index.tsx +98 -97
- package/src/react/ui/modals/TransferModal/internal/context.ts +404 -0
- package/src/react/ui/modals/TransferModal/internal/store.ts +118 -0
- package/src/react/ui/modals/_internal/components/alertMessage/index.tsx +2 -3
- package/src/react/ui/modals/_internal/components/baseModal/ActionModal.tsx +338 -0
- package/src/react/ui/modals/_internal/components/baseModal/BaseModal.tsx +51 -0
- package/src/react/ui/modals/_internal/components/baseModal/ErrorBoundary.tsx +83 -0
- package/src/react/ui/modals/_internal/components/baseModal/ErrorModal.tsx +51 -0
- package/src/react/ui/modals/_internal/components/baseModal/LoadingModal.tsx +35 -0
- package/src/react/ui/modals/_internal/components/baseModal/SmartErrorHandler.tsx +31 -0
- package/src/react/ui/modals/_internal/components/baseModal/__tests__/ErrorBoundary.test.tsx +390 -0
- package/src/react/ui/modals/_internal/components/baseModal/errors/ModalInitializationError.tsx +91 -0
- package/src/react/ui/modals/_internal/components/baseModal/errors/errorActionType.ts +5 -0
- package/src/react/ui/modals/_internal/components/baseModal/index.ts +13 -0
- package/src/react/ui/modals/_internal/components/calendarDropdown/TimeSelector.tsx +1 -1
- package/src/react/ui/modals/_internal/components/calendarDropdown/index.tsx +14 -9
- package/src/react/ui/modals/_internal/components/consts.ts +19 -5
- package/src/react/ui/modals/_internal/components/currencyImage/index.tsx +5 -7
- package/src/react/ui/modals/_internal/components/currencyOptionsSelect/__tests__/index.test.tsx +6 -14
- package/src/react/ui/modals/_internal/components/currencyOptionsSelect/index.tsx +17 -24
- package/src/react/ui/modals/_internal/components/expirationDateSelect/index.tsx +1 -1
- package/src/react/ui/modals/_internal/components/floorPriceText/__tests__/FloorPriceText.test.tsx +61 -40
- package/src/react/ui/modals/_internal/components/floorPriceText/index.tsx +23 -19
- package/src/react/ui/modals/_internal/components/priceInput/__tests__/PriceInput.test.tsx +3 -3
- package/src/react/ui/modals/_internal/components/priceInput/index.tsx +66 -66
- package/src/react/ui/modals/_internal/components/quantityInput/__tests__/index.test.tsx +22 -137
- package/src/react/ui/modals/_internal/components/quantityInput/index.tsx +84 -131
- package/src/react/ui/modals/_internal/components/selectWaasFeeOptions/__tests__/SelectWaasFeeOptions.test.tsx +14 -31
- package/src/react/ui/modals/_internal/components/selectWaasFeeOptions/_components/ActionButtons.tsx +37 -25
- package/src/react/ui/modals/_internal/components/selectWaasFeeOptions/index.tsx +13 -6
- package/src/react/ui/modals/_internal/components/selectWaasFeeOptions/store.ts +9 -26
- package/src/react/ui/modals/_internal/components/selectWaasFeeOptions/useWaasFeeOptionManager.tsx +27 -29
- package/src/react/ui/modals/_internal/components/switchChainErrorModal/store.ts +2 -2
- package/src/react/ui/modals/_internal/components/tokenPreview/index.tsx +10 -9
- package/src/react/ui/modals/_internal/components/transactionDetails/index.tsx +11 -7
- package/src/react/ui/modals/_internal/components/transactionPreview/index.tsx +8 -7
- package/src/react/ui/modals/_internal/components/transactionPreview/useTransactionPreviewTitle.tsx +1 -1
- package/src/react/ui/modals/_internal/components/transactionStatusModal/__tests__/TransactionStatusModal.test.tsx +3 -5
- 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 -15
- package/src/react/ui/modals/_internal/components/transactionStatusModal/index.tsx +14 -15
- package/src/react/ui/modals/_internal/components/transactionStatusModal/store.ts +8 -11
- package/src/react/ui/modals/_internal/components/waasFeeOptionsSelect/WaasFeeOptionsSelect.tsx +65 -10
- package/src/react/ui/modals/_internal/constants/opensea-currencies.ts +484 -0
- package/src/react/ui/modals/_internal/helpers/currency.ts +56 -0
- package/src/react/ui/modals/_internal/helpers/dnum-utils.ts +40 -0
- package/src/react/ui/modals/_internal/helpers/flow-state.ts +269 -0
- package/src/react/ui/modals/_internal/helpers/step-guards.ts +131 -0
- package/src/react/ui/modals/_internal/types/steps.ts +145 -0
- package/src/react/ui/modals/_internal/types.ts +2 -9
- package/src/react/utils/index.ts +2 -0
- package/src/react/utils/normalize-attributes.test.ts +94 -0
- package/src/react/utils/normalize-attributes.ts +89 -0
- package/src/react/utils/normalize-properties.test.ts +77 -0
- package/src/react/utils/normalize-properties.ts +60 -0
- package/src/react/utils/normalizePriceFilters.ts +25 -0
- package/src/react/utils/waitForTransactionReceipt.ts +2 -2
- package/src/styles/index.css +2 -0
- package/src/styles/styles.ts +2036 -374
- package/src/types/api-types.ts +6 -14
- package/src/types/buyModalErrors.ts +24 -30
- package/src/types/index.ts +4 -2
- package/src/types/sdk-config.ts +14 -1
- package/src/types/transactions.ts +10 -0
- package/src/types/types.ts +93 -14
- package/src/utils/__tests__/getMarketplaceDetails.test.ts +1 -1
- package/src/utils/_internal/error/base.ts +1 -1
- package/src/utils/_internal/error/transaction.ts +4 -5
- package/src/utils/abi/helpers.ts +38 -0
- package/src/utils/abi/index.ts +1 -0
- package/src/utils/decode/erc20.ts +2 -2
- package/src/utils/errors.ts +527 -0
- package/src/utils/getConduitAddressForOrderbook.ts +38 -0
- package/src/utils/getErrorMessage.ts +37 -0
- package/src/utils/getMarketplaceDetails.ts +1 -1
- package/src/utils/getSequenceMarketRequestId.ts +3 -7
- package/src/utils/getWagmiErrorMessage.ts +241 -0
- package/src/utils/getWebRPCErrorMessage.ts +63 -0
- package/src/utils/networkconfigToWagmiChain.ts +2 -1
- package/src/utils/price.ts +12 -10
- package/test/const.ts +3 -3
- package/test/globalSetup.ts +4 -5
- package/test/handlers.ts +2 -2
- package/test/server-setup.ts +8 -8
- package/test/setup.ts +11 -0
- package/test/test-utils.tsx +23 -6
- package/tsconfig.json +8 -1
- package/tsdown.config.ts +13 -3
- package/dist/BellIcon-DMKEumAz.js +0 -45
- package/dist/BellIcon-DMKEumAz.js.map +0 -1
- package/dist/CartIcon-UyB4NYKt.js +0 -102
- package/dist/CartIcon-UyB4NYKt.js.map +0 -1
- package/dist/CollectibleCard-z05qWzKE.d.ts +0 -8
- package/dist/_internal-DkS2VUn5.js +0 -22
- package/dist/_internal-DkS2VUn5.js.map +0 -1
- package/dist/abi-fa-o9gH3.js +0 -134
- package/dist/abi-fa-o9gH3.js.map +0 -1
- package/dist/alien_swap-Cq8LuElo.js +0 -6
- package/dist/alien_swap-Cq8LuElo.js.map +0 -1
- package/dist/api-GwTR0dBA.js +0 -210
- package/dist/api-GwTR0dBA.js.map +0 -1
- package/dist/aqua-xyz-0yye_c-Z.js +0 -6
- package/dist/aqua-xyz-0yye_c-Z.js.map +0 -1
- package/dist/aura-TaxFvTFQ.js +0 -6
- package/dist/aura-TaxFvTFQ.js.map +0 -1
- package/dist/blur-BupOTobO.js +0 -6
- package/dist/blur-BupOTobO.js.map +0 -1
- package/dist/builder-api-m4JAA6ee.js +0 -28
- package/dist/builder-api-m4JAA6ee.js.map +0 -1
- package/dist/builder.gen--XD71cNL.js +0 -303
- package/dist/builder.gen--XD71cNL.js.map +0 -1
- package/dist/coinbase-DTgZ4wDT.js +0 -6
- package/dist/coinbase-DTgZ4wDT.js.map +0 -1
- package/dist/collectibles-CZ6i8sXK.js +0 -324
- package/dist/collectibles-CZ6i8sXK.js.map +0 -1
- package/dist/collections-5NcU-7ZR.js +0 -331
- package/dist/collections-5NcU-7ZR.js.map +0 -1
- package/dist/components-CY8kx2kb.js +0 -123
- package/dist/components-CY8kx2kb.js.map +0 -1
- package/dist/contracts-DRJHF89h.js +0 -97
- package/dist/contracts-DRJHF89h.js.map +0 -1
- package/dist/create-config-BxyfYCEk.js +0 -172
- package/dist/create-config-BxyfYCEk.js.map +0 -1
- package/dist/create-config-CFBeD8CB.d.ts +0 -2019
- package/dist/element-D4dDznlu.js +0 -6
- package/dist/element-D4dDznlu.js.map +0 -1
- package/dist/filters-B5niI_fX.d.ts +0 -60
- package/dist/foundation-GHZOKAzN.js +0 -6
- package/dist/foundation-GHZOKAzN.js.map +0 -1
- package/dist/index-8scPf0CS.d.ts +0 -55
- package/dist/index-9qsplZ8r.d.ts +0 -18
- package/dist/index-BIuYTMc2.d.ts +0 -122
- package/dist/index-BNrz99xy.d.ts +0 -24
- package/dist/index-BYQOPS8e.d.ts +0 -1003
- package/dist/index-BkZ7SPLc.d.ts +0 -288
- package/dist/index-BnUku_aF.d.ts +0 -808
- package/dist/index-BtDAHMW_.d.ts +0 -50
- package/dist/index-C-c_M_sE.d.ts +0 -107
- package/dist/index-CNIiC8Z_.d.ts +0 -67
- package/dist/index-CbERNN3s.d.ts +0 -505
- package/dist/index-CsfxsN0t.d.ts +0 -61
- package/dist/index-DASjaiJL.d.ts +0 -406
- package/dist/index-DD7Vc4cE.d.ts +0 -809
- package/dist/index-DIc8OqWV.d.ts +0 -152
- package/dist/index-DVI_vggD.d.ts +0 -171
- package/dist/index-DqxQeYT2.d.ts +0 -450
- package/dist/index-Dsf9FRtr.d.ts +0 -121
- package/dist/index-DxAReMEO.d.ts +0 -357
- package/dist/index-UXRoZmd_.d.ts +0 -70
- package/dist/index-isFvc5gd.d.ts +0 -2541
- package/dist/index-j3nuJWyJ.d.ts +0 -139
- package/dist/index-nVb7o0hc.d.ts +0 -7
- package/dist/index-pbE88Tt7.d.ts +0 -1803
- package/dist/inventory--t6Zu55O.js +0 -75
- package/dist/inventory--t6Zu55O.js.map +0 -1
- package/dist/listCollectiblesPaginated-BlE5mSzh.d.ts +0 -327
- package/dist/listCollections-DWyqFSQ3.d.ts +0 -828
- package/dist/looks-rare-2HBhMpOf.js +0 -6
- package/dist/looks-rare-2HBhMpOf.js.map +0 -1
- package/dist/lowestListing-DsunDO1c.d.ts +0 -475
- package/dist/magic-eden-BYdTp-uk.js +0 -6
- package/dist/magic-eden-BYdTp-uk.js.map +0 -1
- package/dist/manifold-yE0x6ZmO.js +0 -6
- package/dist/manifold-yE0x6ZmO.js.map +0 -1
- package/dist/market-DuBpFsDg.js +0 -219
- package/dist/market-DuBpFsDg.js.map +0 -1
- package/dist/marketCurrencies-BgwmbGFk.d.ts +0 -164
- package/dist/marketCurrencies-Bolonndy.js +0 -59
- package/dist/marketCurrencies-Bolonndy.js.map +0 -1
- package/dist/marketplace-NQB-sEQL.js +0 -1913
- package/dist/marketplace-NQB-sEQL.js.map +0 -1
- package/dist/marketplace-logos-Cz9RrtQo.js +0 -50
- package/dist/marketplace-logos-Cz9RrtQo.js.map +0 -1
- package/dist/marketplace.gen-906FrJQJ.js +0 -1147
- package/dist/marketplace.gen-906FrJQJ.js.map +0 -1
- package/dist/marketplaceConfig-Bqjo7NYO.js +0 -85
- package/dist/marketplaceConfig-Bqjo7NYO.js.map +0 -1
- package/dist/mintify-BXQx3mZB.js +0 -6
- package/dist/mintify-BXQx3mZB.js.map +0 -1
- package/dist/network-DwdZ_5-7.js +0 -15
- package/dist/network-DwdZ_5-7.js.map +0 -1
- package/dist/networkconfigToWagmiChain-Ct-hGq8M.js +0 -16
- package/dist/networkconfigToWagmiChain-Ct-hGq8M.js.map +0 -1
- package/dist/nftx-B929_3Ce.js +0 -6
- package/dist/nftx-B929_3Ce.js.map +0 -1
- package/dist/okx-sZ0-Udny.js +0 -6
- package/dist/okx-sZ0-Udny.js.map +0 -1
- package/dist/open-sea-DO9PhTrz.js +0 -6
- package/dist/open-sea-DO9PhTrz.js.map +0 -1
- package/dist/orders-DH76ym2e.js +0 -469
- package/dist/orders-DH76ym2e.js.map +0 -1
- package/dist/primary-sale-1u4QlPdA.js +0 -3048
- package/dist/primary-sale-1u4QlPdA.js.map +0 -1
- package/dist/primary-sales-CECrqatg.js +0 -156
- package/dist/primary-sales-CECrqatg.js.map +0 -1
- package/dist/query-brXxOcH0.d.ts +0 -31
- package/dist/rarible-Ccb2hs7y.js +0 -6
- package/dist/rarible-Ccb2hs7y.js.map +0 -1
- package/dist/react/hooks/data/collectibles/index.d.ts +0 -11
- package/dist/react/hooks/data/collectibles/index.js +0 -39
- package/dist/react/hooks/data/collections/index.d.ts +0 -11
- package/dist/react/hooks/data/collections/index.js +0 -39
- package/dist/react/hooks/data/index.d.ts +0 -37
- package/dist/react/hooks/data/index.js +0 -39
- package/dist/react/hooks/data/inventory/index.d.ts +0 -37
- package/dist/react/hooks/data/inventory/index.js +0 -39
- package/dist/react/hooks/data/market/index.d.ts +0 -12
- package/dist/react/hooks/data/market/index.js +0 -39
- package/dist/react/hooks/data/orders/index.d.ts +0 -11
- package/dist/react/hooks/data/orders/index.js +0 -39
- package/dist/react/hooks/data/primary-sales/index.d.ts +0 -37
- package/dist/react/hooks/data/primary-sales/index.js +0 -39
- package/dist/react/hooks/data/tokens/index.d.ts +0 -5
- package/dist/react/hooks/data/tokens/index.js +0 -39
- package/dist/react/queries/collectibles/index.d.ts +0 -11
- package/dist/react/queries/collectibles/index.js +0 -22
- package/dist/react/queries/collections/index.d.ts +0 -11
- package/dist/react/queries/collections/index.js +0 -20
- package/dist/react/queries/market/index.d.ts +0 -6
- package/dist/react/queries/market/index.js +0 -22
- package/dist/react/queries/orders/index.d.ts +0 -11
- package/dist/react/queries/orders/index.js +0 -13
- package/dist/react/queries/primary-sales/index.d.ts +0 -4
- package/dist/react/queries/primary-sales/index.js +0 -13
- package/dist/react/queries/tokens/index.d.ts +0 -5
- package/dist/react/queries/tokens/index.js +0 -13
- package/dist/react/queries/utils/index.d.ts +0 -4
- package/dist/react/queries/utils/index.js +0 -22
- package/dist/react/ssr/index.js.map +0 -1
- package/dist/react/ui/components/marketplace-collectible-card/components/footer/components/index.d.ts +0 -3
- package/dist/react/ui/components/marketplace-collectible-card/components/footer/components/index.js +0 -22
- package/dist/react/ui/components/marketplace-collectible-card/components/footer/index.d.ts +0 -51
- package/dist/react/ui/components/marketplace-collectible-card/components/footer/index.js +0 -39
- package/dist/react/ui/modals/_internal/components/actionModal/index.d.ts +0 -40
- package/dist/react/ui/modals/_internal/components/actionModal/index.js +0 -39
- package/dist/react-CBsgOdVP.js +0 -13476
- package/dist/react-CBsgOdVP.js.map +0 -1
- package/dist/sequence-CRdb1yEs.js +0 -6
- package/dist/sequence-CRdb1yEs.js.map +0 -1
- package/dist/src-Dz2CfBL0.js +0 -8
- package/dist/src-Dz2CfBL0.js.map +0 -1
- package/dist/sudo-swap-BIklG2gq.js +0 -6
- package/dist/sudo-swap-BIklG2gq.js.map +0 -1
- package/dist/super-rare-h8645_5E.js +0 -6
- package/dist/super-rare-h8645_5E.js.map +0 -1
- package/dist/token-Cv7l2ZaL.js +0 -2091
- package/dist/token-Cv7l2ZaL.js.map +0 -1
- package/dist/tokenBalances-CouzNX4j.js +0 -57
- package/dist/tokenBalances-CouzNX4j.js.map +0 -1
- package/dist/tokenSupplies-C3zJll0M.d.ts +0 -265
- package/dist/tokens-BvIRUCGG.js +0 -225
- package/dist/tokens-BvIRUCGG.js.map +0 -1
- package/dist/transaction-DZUW5RHu.js +0 -76
- package/dist/transaction-DZUW5RHu.js.map +0 -1
- package/dist/types-B_-cnkcP.js +0 -13
- package/dist/types-B_-cnkcP.js.map +0 -1
- package/dist/types-CMDwfhfR.d.ts +0 -78
- package/dist/utils-9ToOvt-c.js +0 -235
- package/dist/utils-9ToOvt-c.js.map +0 -1
- package/dist/utils-B6di6O-C.js +0 -43
- package/dist/utils-B6di6O-C.js.map +0 -1
- package/dist/utils-BCYTEOvy.js +0 -122
- package/dist/utils-BCYTEOvy.js.map +0 -1
- package/dist/waitForTransactionReceipt-CbSeUSXe.js +0 -26
- package/dist/waitForTransactionReceipt-CbSeUSXe.js.map +0 -1
- package/dist/x2y2-OvF__ugj.js +0 -6
- package/dist/x2y2-OvF__ugj.js.map +0 -1
- package/dist/zora-DzCeu-eE.js +0 -6
- package/dist/zora-DzCeu-eE.js.map +0 -1
- package/src/react/_internal/api/__mocks__/builder.msw.ts +0 -239
- package/src/react/_internal/api/__mocks__/indexer.msw.ts +0 -216
- package/src/react/_internal/api/__mocks__/marketplace.msw.ts +0 -402
- package/src/react/_internal/api/__mocks__/metadata.msw.ts +0 -195
- package/src/react/_internal/api/builder.gen.ts +0 -773
- package/src/react/_internal/api/marketplace.gen.ts +0 -2718
- package/src/react/_internal/api/query-keys.ts +0 -124
- package/src/react/hooks/data/collectibles/index.ts +0 -6
- package/src/react/hooks/data/collectibles/useBalanceOfCollectible.test.tsx +0 -141
- package/src/react/hooks/data/collectibles/useBalanceOfCollectible.tsx +0 -39
- package/src/react/hooks/data/collectibles/useCollectible.test.tsx +0 -117
- package/src/react/hooks/data/collectibles/useCollectible.tsx +0 -69
- package/src/react/hooks/data/collectibles/useCountOfCollectables.test.tsx +0 -128
- package/src/react/hooks/data/collectibles/useCountOfCollectables.tsx +0 -70
- package/src/react/hooks/data/collectibles/useListCollectibleActivities.test.tsx +0 -192
- package/src/react/hooks/data/collectibles/useListCollectibleActivities.tsx +0 -98
- package/src/react/hooks/data/collectibles/useListCollectibles.test.tsx +0 -231
- package/src/react/hooks/data/collectibles/useListCollectibles.tsx +0 -78
- package/src/react/hooks/data/collectibles/useListCollectiblesPaginated.test.tsx +0 -211
- package/src/react/hooks/data/collectibles/useListCollectiblesPaginated.tsx +0 -107
- package/src/react/hooks/data/collectibles/useTokenBalances.test.tsx +0 -151
- package/src/react/hooks/data/collectibles/useTokenBalances.tsx +0 -38
- package/src/react/hooks/data/collections/__snapshots__/useListCollections.test.tsx.snap +0 -303
- package/src/react/hooks/data/collections/index.ts +0 -8
- package/src/react/hooks/data/collections/useCollection.test.tsx +0 -98
- package/src/react/hooks/data/collections/useCollection.tsx +0 -66
- package/src/react/hooks/data/collections/useCollectionActiveListingsCurrencies.test.tsx +0 -112
- package/src/react/hooks/data/collections/useCollectionActiveListingsCurrencies.tsx +0 -74
- package/src/react/hooks/data/collections/useCollectionActiveOffersCurrencies.test.tsx +0 -110
- package/src/react/hooks/data/collections/useCollectionActiveOffersCurrencies.tsx +0 -74
- package/src/react/hooks/data/collections/useCollectionBalanceDetails.test.tsx +0 -158
- package/src/react/hooks/data/collections/useCollectionBalanceDetails.tsx +0 -106
- package/src/react/hooks/data/collections/useCollectionDetails.test.tsx +0 -83
- package/src/react/hooks/data/collections/useCollectionDetails.ts +0 -69
- package/src/react/hooks/data/collections/useCollectionDetailsPolling.test.tsx +0 -137
- package/src/react/hooks/data/collections/useCollectionDetailsPolling.tsx +0 -64
- package/src/react/hooks/data/collections/useListCollectionActivities.test.tsx +0 -227
- package/src/react/hooks/data/collections/useListCollectionActivities.tsx +0 -93
- package/src/react/hooks/data/collections/useListCollections.test.tsx +0 -110
- package/src/react/hooks/data/collections/useListCollections.tsx +0 -80
- package/src/react/hooks/data/index.ts +0 -6
- package/src/react/hooks/data/inventory/index.ts +0 -1
- package/src/react/hooks/data/inventory/useInventory.test.tsx +0 -162
- package/src/react/hooks/data/inventory/useInventory.tsx +0 -12
- package/src/react/hooks/data/market/index.ts +0 -3
- package/src/react/hooks/data/market/useCurrency.test.tsx +0 -127
- package/src/react/hooks/data/market/useCurrency.tsx +0 -65
- package/src/react/hooks/data/market/useListMarketCardData.test.tsx +0 -297
- package/src/react/hooks/data/market/useListMarketCardData.tsx +0 -165
- package/src/react/hooks/data/market/useMarketCurrencies.test.tsx +0 -216
- package/src/react/hooks/data/market/useMarketCurrencies.tsx +0 -65
- package/src/react/hooks/data/orders/index.ts +0 -11
- package/src/react/hooks/data/orders/useCountItemsOrdersForCollection.tsx +0 -90
- package/src/react/hooks/data/orders/useCountListingsForCollectible.test.tsx +0 -107
- package/src/react/hooks/data/orders/useCountListingsForCollectible.tsx +0 -75
- package/src/react/hooks/data/orders/useCountOffersForCollectible.test.tsx +0 -107
- package/src/react/hooks/data/orders/useCountOffersForCollectible.tsx +0 -75
- package/src/react/hooks/data/orders/useFloorOrder.test.tsx +0 -100
- package/src/react/hooks/data/orders/useFloorOrder.tsx +0 -70
- package/src/react/hooks/data/orders/useGetCountOfFilteredOrders.tsx +0 -39
- package/src/react/hooks/data/orders/useHighestOffer.test.tsx +0 -101
- package/src/react/hooks/data/orders/useHighestOffer.tsx +0 -72
- package/src/react/hooks/data/orders/useListItemsOrdersForCollection.tsx +0 -93
- package/src/react/hooks/data/orders/useListItemsOrdersForCollectionPaginated.tsx +0 -108
- package/src/react/hooks/data/orders/useListListingsForCollectible.test.tsx +0 -140
- package/src/react/hooks/data/orders/useListListingsForCollectible.tsx +0 -101
- package/src/react/hooks/data/orders/useListOffersForCollectible.test.tsx +0 -139
- package/src/react/hooks/data/orders/useListOffersForCollectible.tsx +0 -80
- package/src/react/hooks/data/orders/useLowestListing.test.tsx +0 -146
- package/src/react/hooks/data/orders/useLowestListing.tsx +0 -72
- package/src/react/hooks/data/primary-sales/index.ts +0 -7
- package/src/react/hooks/data/primary-sales/useCountOfPrimarySaleItems.tsx +0 -13
- package/src/react/hooks/data/primary-sales/useErc721SalesData.tsx +0 -184
- package/src/react/hooks/data/primary-sales/useGetCountOfPrimarySaleItems.tsx +0 -48
- package/src/react/hooks/data/primary-sales/useList1155ShopCardData.tsx +0 -96
- package/src/react/hooks/data/primary-sales/useList721ShopCardData.tsx +0 -194
- package/src/react/hooks/data/primary-sales/useListPrimarySaleItems.tsx +0 -66
- package/src/react/hooks/data/primary-sales/usePrimarySaleItem.tsx +0 -71
- package/src/react/hooks/data/tokens/index.ts +0 -5
- package/src/react/hooks/data/tokens/useCurrencyBalance.test.tsx +0 -83
- package/src/react/hooks/data/tokens/useGetTokenRanges.test.tsx +0 -111
- package/src/react/hooks/data/tokens/useGetTokenRanges.tsx +0 -94
- package/src/react/hooks/data/tokens/useListBalances.test.tsx +0 -100
- package/src/react/hooks/data/tokens/useListBalances.tsx +0 -29
- package/src/react/hooks/data/tokens/useListTokenMetadata.test.tsx +0 -137
- package/src/react/hooks/data/tokens/useListTokenMetadata.tsx +0 -73
- package/src/react/hooks/data/tokens/useSearchTokenMetadata.test.tsx +0 -284
- package/src/react/hooks/data/tokens/useSearchTokenMetadata.tsx +0 -189
- package/src/react/hooks/data/tokens/useTokenSupplies.ts +0 -69
- package/src/react/hooks/ui/useFilterState.tsx +0 -250
- package/src/react/hooks/utils/useCheckoutOptions.test.tsx +0 -162
- package/src/react/hooks/utils/useCheckoutOptions.tsx +0 -98
- package/src/react/hooks/utils/useCheckoutOptionsSalesContract.test.tsx +0 -206
- package/src/react/hooks/utils/useCheckoutOptionsSalesContract.tsx +0 -108
- package/src/react/hooks/utils/useComparePrices.test.tsx +0 -215
- package/src/react/hooks/utils/useComparePrices.tsx +0 -102
- package/src/react/hooks/utils/useConvertPriceToUSD.test.tsx +0 -172
- package/src/react/hooks/utils/useConvertPriceToUSD.tsx +0 -96
- package/src/react/queries/collectibles/balanceOfCollectible.ts +0 -90
- package/src/react/queries/collectibles/collectible.ts +0 -81
- package/src/react/queries/collectibles/countOfCollectables.ts +0 -109
- package/src/react/queries/collectibles/index.ts +0 -7
- package/src/react/queries/collectibles/listCollectibleActivities.ts +0 -121
- package/src/react/queries/collectibles/listCollectibles.ts +0 -115
- package/src/react/queries/collectibles/listCollectiblesPaginated.ts +0 -104
- package/src/react/queries/collectibles/tokenBalances.ts +0 -89
- package/src/react/queries/collections/activeListingsCurrencies.ts +0 -84
- package/src/react/queries/collections/activeOffersCurrencies.ts +0 -84
- package/src/react/queries/collections/collection.ts +0 -69
- package/src/react/queries/collections/collectionBalanceDetails.ts +0 -107
- package/src/react/queries/collections/collectionDetails.ts +0 -79
- package/src/react/queries/collections/index.ts +0 -7
- package/src/react/queries/collections/listCollectionActivities.ts +0 -117
- package/src/react/queries/collections/listCollections.ts +0 -175
- package/src/react/queries/market/checkoutOptions.ts +0 -107
- package/src/react/queries/market/checkoutOptionsSalesContract.ts +0 -108
- package/src/react/queries/market/currency.ts +0 -92
- package/src/react/queries/market/filters.ts +0 -152
- package/src/react/queries/market/index.ts +0 -6
- package/src/react/queries/market/marketCurrencies.ts +0 -120
- package/src/react/queries/market/marketplaceConfig.ts +0 -117
- package/src/react/queries/orders/countItemsOrdersForCollection.ts +0 -86
- package/src/react/queries/orders/countListingsForCollectible.ts +0 -90
- package/src/react/queries/orders/countOffersForCollectible.ts +0 -90
- package/src/react/queries/orders/floorOrder.ts +0 -74
- package/src/react/queries/orders/getCountOfFilteredOrders.ts +0 -88
- package/src/react/queries/orders/highestOffer.ts +0 -78
- package/src/react/queries/orders/index.ts +0 -11
- package/src/react/queries/orders/listItemsOrdersForCollection.ts +0 -90
- package/src/react/queries/orders/listItemsOrdersForCollectionPaginated.ts +0 -90
- package/src/react/queries/orders/listListingsForCollectible.ts +0 -97
- package/src/react/queries/orders/listOffersForCollectible.ts +0 -116
- package/src/react/queries/orders/lowestListing.ts +0 -81
- package/src/react/queries/primary-sales/countOfPrimarySaleItems.ts +0 -62
- package/src/react/queries/primary-sales/index.ts +0 -4
- package/src/react/queries/primary-sales/primarySaleItem.ts +0 -80
- package/src/react/queries/primary-sales/primarySaleItems.ts +0 -94
- package/src/react/queries/primary-sales/primarySaleItemsCount.ts +0 -79
- package/src/react/queries/tokens/getTokenRanges.ts +0 -75
- package/src/react/queries/tokens/index.ts +0 -5
- package/src/react/queries/tokens/listBalances.ts +0 -71
- package/src/react/queries/tokens/listTokenMetadata.ts +0 -81
- package/src/react/queries/tokens/searchTokenMetadata.ts +0 -101
- package/src/react/queries/tokens/tokenSupplies.ts +0 -84
- package/src/react/queries/utils/comparePrices.ts +0 -132
- package/src/react/queries/utils/convertPriceToUSD.ts +0 -105
- package/src/react/queries/utils/index.ts +0 -2
- package/src/react/ui/components/_internals/action-button/ActionButton.stories.tsx +0 -298
- package/src/react/ui/components/_internals/action-button/ActionButton.tsx +0 -108
- package/src/react/ui/components/_internals/action-button/__tests__/ActionButtonBody.test.tsx +0 -104
- package/src/react/ui/components/_internals/action-button/__tests__/NonOwnerActions.test.tsx +0 -65
- package/src/react/ui/components/_internals/action-button/__tests__/OwnerActions.test.tsx +0 -66
- package/src/react/ui/components/_internals/action-button/__tests__/useActionButtonLogic.test.tsx +0 -99
- package/src/react/ui/components/_internals/action-button/components/ActionButtonBody.tsx +0 -52
- package/src/react/ui/components/_internals/action-button/components/NonOwnerActions.tsx +0 -145
- package/src/react/ui/components/_internals/action-button/components/OwnerActions.tsx +0 -83
- package/src/react/ui/components/_internals/action-button/hooks/useActionButtonLogic.ts +0 -97
- package/src/react/ui/components/_internals/action-button/store.ts +0 -85
- package/src/react/ui/components/marketplace-collectible-card/components/ActionButtonWrapper.tsx +0 -79
- package/src/react/ui/components/marketplace-collectible-card/components/BaseCard.tsx +0 -68
- package/src/react/ui/components/marketplace-collectible-card/components/footer/Footer.tsx +0 -165
- package/src/react/ui/components/marketplace-collectible-card/components/footer/components/FooterName.tsx +0 -103
- package/src/react/ui/components/marketplace-collectible-card/components/footer/components/PriceDisplay.tsx +0 -80
- package/src/react/ui/components/marketplace-collectible-card/components/footer/components/SaleDetailsPill.tsx +0 -29
- package/src/react/ui/components/marketplace-collectible-card/components/footer/components/TokenTypeBalancePill.tsx +0 -30
- package/src/react/ui/components/marketplace-collectible-card/components/footer/components/index.ts +0 -4
- package/src/react/ui/components/marketplace-collectible-card/components/footer/index.ts +0 -2
- package/src/react/ui/icons/CalendarIcon.tsx +0 -37
- package/src/react/ui/icons/CartIcon.tsx +0 -52
- package/src/react/ui/icons/InfoIcon.tsx +0 -44
- package/src/react/ui/modals/BuyModal/__tests__/BuyModalRouter.test.tsx +0 -557
- package/src/react/ui/modals/BuyModal/__tests__/ERC1155ShopModal.test.tsx +0 -398
- package/src/react/ui/modals/BuyModal/__tests__/ERC721ShopModal.test.tsx +0 -272
- package/src/react/ui/modals/BuyModal/__tests__/Modal.test.tsx.bak +0 -112
- package/src/react/ui/modals/BuyModal/__tests__/Modal1155.test.tsx +0 -251
- package/src/react/ui/modals/BuyModal/__tests__/store.test.ts +0 -105
- package/src/react/ui/modals/BuyModal/components/BuyModalRouter.tsx +0 -157
- package/src/react/ui/modals/BuyModal/components/ERC1155BuyModal.tsx +0 -198
- package/src/react/ui/modals/BuyModal/components/ERC1155QuantityModal.tsx +0 -208
- package/src/react/ui/modals/BuyModal/components/ERC1155ShopModal.tsx +0 -124
- package/src/react/ui/modals/BuyModal/components/ERC721BuyModal.tsx +0 -116
- package/src/react/ui/modals/BuyModal/components/ERC721ShopModal.tsx +0 -86
- package/src/react/ui/modals/BuyModal/hooks/__tests__/useCheckoutOptions.test.tsx +0 -115
- package/src/react/ui/modals/BuyModal/hooks/__tests__/useERC1155Checkout.test.tsx +0 -395
- package/src/react/ui/modals/BuyModal/hooks/__tests__/useERC721SalePaymentParams.test.tsx +0 -283
- package/src/react/ui/modals/BuyModal/hooks/__tests__/useMarketPlatformFee.test.tsx +0 -145
- package/src/react/ui/modals/BuyModal/hooks/useCheckoutOptions.ts +0 -86
- package/src/react/ui/modals/BuyModal/hooks/useERC1155Checkout.ts +0 -103
- package/src/react/ui/modals/BuyModal/hooks/useERC721SalePaymentParams.ts +0 -216
- package/src/react/ui/modals/BuyModal/hooks/useLoadData.ts +0 -120
- package/src/react/ui/modals/BuyModal/hooks/usePaymentModalParams.ts +0 -243
- package/src/react/ui/modals/CreateListingModal/hooks/useCreateListing.tsx +0 -98
- package/src/react/ui/modals/CreateListingModal/hooks/useGetTokenApproval.ts +0 -87
- package/src/react/ui/modals/CreateListingModal/hooks/useTransactionSteps.tsx +0 -246
- package/src/react/ui/modals/CreateListingModal/store.ts +0 -99
- package/src/react/ui/modals/MakeOfferModal/hooks/useGetTokenApproval.tsx +0 -90
- package/src/react/ui/modals/MakeOfferModal/hooks/useMakeOffer.tsx +0 -71
- package/src/react/ui/modals/MakeOfferModal/hooks/useTransactionSteps.tsx +0 -241
- package/src/react/ui/modals/MakeOfferModal/store.ts +0 -94
- package/src/react/ui/modals/SellModal/__tests__/Modal.test.tsx +0 -85
- package/src/react/ui/modals/SellModal/hooks/useGetTokenApproval.tsx +0 -79
- package/src/react/ui/modals/SellModal/hooks/useSell.tsx +0 -77
- package/src/react/ui/modals/SellModal/hooks/useTransactionSteps.tsx +0 -242
- package/src/react/ui/modals/SellModal/store.ts +0 -62
- package/src/react/ui/modals/SellModal/utils.ts +0 -38
- package/src/react/ui/modals/SuccessfulPurchaseModal/__tests__/Modal.test.tsx +0 -157
- package/src/react/ui/modals/SuccessfulPurchaseModal/index.tsx +0 -154
- package/src/react/ui/modals/SuccessfulPurchaseModal/store.ts +0 -71
- package/src/react/ui/modals/TransferModal/__tests__/__snapshots__/store.test.ts.snap +0 -17
- package/src/react/ui/modals/TransferModal/_views/enterWalletAddress/__tests__/useHandleTransfer.test.tsx +0 -412
- package/src/react/ui/modals/TransferModal/_views/enterWalletAddress/_components/TransferButton.tsx +0 -66
- package/src/react/ui/modals/TransferModal/_views/enterWalletAddress/index.tsx +0 -137
- package/src/react/ui/modals/TransferModal/_views/enterWalletAddress/useHandleTransfer.tsx +0 -97
- package/src/react/ui/modals/TransferModal/_views/followWalletInstructions/index.tsx +0 -31
- package/src/react/ui/modals/TransferModal/messages.ts +0 -14
- package/src/react/ui/modals/TransferModal/store.ts +0 -122
- package/src/react/ui/modals/_internal/components/actionModal/ActionModal.test.tsx +0 -281
- package/src/react/ui/modals/_internal/components/actionModal/ActionModal.tsx +0 -113
- package/src/react/ui/modals/_internal/components/actionModal/ErrorModal.tsx +0 -35
- package/src/react/ui/modals/_internal/components/actionModal/LoadingModal.tsx +0 -32
- package/src/react/ui/modals/_internal/components/actionModal/index.ts +0 -1
- package/src/types/custom.d.ts +0 -1
- package/src/types/messages.ts +0 -43
- package/src/types/new-marketplace-types.ts +0 -95
- /package/dist/{index-CCggO_hw.d.ts → index20.d.ts} +0 -0
- /package/dist/{index-CKefEBrI.d.ts → index25.d.ts} +0 -0
- /package/dist/{index-DgsCqh_P.d.ts → index29.d.ts} +0 -0
- /package/dist/{index-xpO4AQyS.d.ts → index30.d.ts} +0 -0
- /package/dist/{queries-CyajGg_O.js → queries.js} +0 -0
- /package/dist/{wagmi-Bseovd6Q.js → src.js} +0 -0
- /package/src/react/ui/components/{_internals/action-button → marketplace-collectible-card/ActionButton}/types.ts +0 -0
- /package/src/react/ui/modals/_internal/hooks/{useSelectWaasFeeOptions.ts → useSelectWaasFeeOptions.tsx} +0 -0
package/dist/element.js
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
//#region src/react/ui/images/marketplaces/element.png
|
|
2
|
+
var element_default = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACICAYAAAAvbeOmAAAACXBIWXMAACxLAAAsSwGlPZapAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAErZSURBVHgB7b0JlCXXeR7236p6a7/et+llVgyAwUKAIEAABDdAlCiJNrUkIqLEiajFFk4cR0eWc44tJ46gc3wS+SSRjmRF54i2RUZKKBmUbJKySYkbwA0AgSF2DNZZe6b37tdv36rqz3/3W/VeD7oBkByQvDOv36vt1q37b9/9///eYvB9Vh7E+/MtaE61ILw6gu65GjQ3f4X9SQ1+WAYWBt8n5QF8wA/hP59owfadFVh71zZceFsRxl/wY++xgjfyyIfhky8cZUfb8MOSKG95BngQP54HWJ96BR585w6svLuNtXeE0Ly6A/UDPuTXfRacLsDYk3PR9d+a82967Dwsn7+PfawHPyyivGUZgEt8Hk7lKvDqPETRjdve0n+zA0t3NGBzvgftIIAcxCwEH3NQxPH1aXbsW2Ns/lMZCL66CtHOAfjpxr3s3gh+wEsAb9HyHpgefxzqP7GDF39m1Xv2A22ojwEgcbQPASOlgAgeZGhPBDW2NlOB5b+bwcKPHIY7vjTKpr9Qgmf+lqo5DT/g5S2lAT6Hf5CrwnOLbdi6dRuXP1KGcze3WXUREXP0IJ49k4n/yH8h/+a/6MNY7KHfykJhcxTmnzuCdz100LvrL4Yhu34Du7cLP4DlLcMAX8Y/uOoCfPPmTXjlzjquvbsLnaMRtCYR4qx8DCYIzRTxRcFkHYz2x6QZfPC6DIJGFopLE3j4awveLQ+OwNyTH4ToPGP3x/ADVK5oBngeH8gWIVP8PHzs5m5cubPD6rc32c7b2li+OoSOUPeeEnx0/gpKO5til/qDKA/E9A8hBMIFK0WY+rYX574GXu/JE/B3XgTY3vhJ+IMuYwzh+7xc0RiAEz+E3HwQs/s22NJ7G7B9IMRu4FGzuX23gi6Uvb0QUdGeKd1gdqvCWccHbjXKeGmuChs/WWBjN5Vw5oWQdf+wAAtfp4M96NMh33/litQA/wnvP7YenXpvhZ378Spbu5sA3JxHBGNEMKaa3EcZJd1a0hMF7TmDLrYYAeMA881j8O6vjLHFzxZg8WsfZv/iFfg+LlcUA9yP9weHu8ev2/A+/itN/5W7Omz7GNns4QgwKxtqm+vKvLD9bPdH0Wqfn4NuBfo6dHYAi33IbHF8MIJzzx2Bdz3a8Kp/PQ2jmx9i/7oD32flijIBzc2DhWe9zp2vBN6PjWSDI2OBXyz6HaHw490kX5SUzWeDzmBqIKBPxeQ1Cj7Sfr8HzZkYwjFkMPsKfOU4YYWZDlz91F/grz7vwfzSvez+75sRwxXFAFttzER5duJko7Q4Fy4UF/MFmMmUYdSvg88igfM5BdGhnbbx6FCfJdUDGMqj3cd2UX5M4IMMeQ/CbBO2FvmHXMoHq7B2sgetB7Nw6ZH/gP/TUgVK1V+E3+q81YHiFcUAVfrkYsa2O/Ow2ZuCS+0aHMhtws2ll2EyswM51hPEjVzi7WLX0/vIVyBNAEruYAwsB6UYin9LkEi/6YYt3DnUhJ1DI3Dgtmk8/gh40acPwtQXH4LfDumUEN7C5cobBXicUjFE6MF2OApl+qx1J+BIfhkO51dgLrsFBb8LfLDOaYmo0cFAvW+lXR02Nt9BjOi6DvgIwsEFUtt4gmFquDpfZ+s/tYRP3L3IbvniFFz3t1/C/+uxH2X/5GV4i5YrdBgoRTJSY/zt7hi04xxshmMwn92Eg7l1mMpsk0bokmmIhfsndljAYjpVtN1XIp4GlC6kRG1C3MuZORaQazkgU5Bfxmc+sMnOkFaYvf3P8e9/swjw0Cp426830MRjGyVYDSYgHmvBzVtfha/G938XnFJXtB9AY/YeBlAJh6EZ52G7NwY7vRHSBsswlS3DiN8kRuhAehDgaPbdKn/N3Zg6iQmG5J+YtVlljhhhOsbeEWTxMQKKU3Nw7RN/hf/j0gRMbt7D7t9z6PmL+Dujte7J+XVv5+BFtnW4hC+9fHswc/ph/N2tu9hvtOA7WK5QBkiSj3kRN8bQiwMoxyOwE5ZgvTdOZuESLObXBFAc8ltEGtcl5DqGBlZrjiXcxw6CZA5odNAmcCbwkd8tDij6eKiFW/NDMHPzFrv05RKEX6ZRy2P/Dn95+Zfh39VFPQOAIuL93kNUUQj5oVW4cAPLdt8XQftdtXj7eA6Gn6pGG3/b9LuPfQP/1aVlONr8TkUur1gNIEiZGNahNAhM2uXVzhQBxTF4tXUIDuZX4W2lV2EqqEDWkxo4Tjt7RFSIWSIKW69hQIpZ2IBrtYlxmIipMQNtBlW2uljGix8loPjBJlx7co7d/B8BPvWnAKcQBiijhwCyBGsPZOPuz9fYxQ83cef6CHpjPsvAKnvp2iyW3jeMBx4ZYZNfAHjyMyfxj3duY/e96XkMV5Qj6CNL/3Yil2f/86caj/99gnkjLrBzHT0CyTNPdGuGZCjndWEiU4HF7LrQCLOEDwp+W9GZKVWepqwTN8BEJMHxNlqH8m6BJnsOin+kG7oeZKsUkt5YhJs+70PhZBHmvvUKzJ7jNp3a7v0V/N6ROqzcshWffqcH9Z+LoDNN1xKMoEi29Ebw0zoU6dgkt/dmBvKfmfOOnxyGw8/8KPza0ps59LyiNMDUcAGbvV48SAr7Olz5+7lZ4J92lIVGWKBRwzBsEVA8kNuAaRo6BiwypsGpBpLOo8Gw0B1bpEcZhlkc/wITDqs4G0NrimIWk+vsxRyx6bW5+Mw10413PfHp+n8+9zudf7EQwc6N4Fduj6F3Q4Z1j/kMmZeo3+OV5kPozTMIiTkibzU+fXUF1q/5VPwb3/4a/smp98IvbdG93zBIvGIYgLP8P69/Kqh3m1mirsR/zHH2oullZRFQHlancCbYpNFCNRyCje44jRhG4UTxPAz7DYEPMjRc7wsSDlIMiUZBP1e4Iwnm1qMDT55sL0SsisvHMMwvxNXStZ313s0Xii89j5OtE5CpH8W4dSwLOM68LF0R0uWxAb3aLDH0PNqTI0a4iZhmMWLhtZEH13WiR7646j/9NIHEjSwM1d6IabhiGOAT8IlsPVMb2Wk156g3/KT9V/5+vokpNawYQ0t5N8rARjQhmYA+3HfAfQgHSCtkWEgS6oEeXyCmzT8aSbdQYZc4Q8oUJA4xOVYIozysr0/nzpyZPH7+Yuv4oRMv/uzVE10oxhGNXAgqEvGJ9AJFMHEf7MOp4plJP1A7JlpYmWjBzvUZr3D30fi2f9/x/L/pQPY5OmUHXme5IjDAnzX+5B3nvHO3ngu33/6NeuujZzpBIYq5HlQSYTx4KcTOC4Kj4HWRV8boCz/BSFAX2OCG0hmYIx9CloWis7mzCbWDSNv93Zgi4UTQDiLHRDAUBoDv63TJZ7E5AY9983bYWJuCSnkEgqwHt/xoE666ugV58iRkoSuwS57xbyIjeTk5g3osSjyHhSgKpzCZzcA/OSg8MczmvrYIN351EY5+7no4Fe43oeV7pgF4Nm+1mZ94kj1195Px4+/sxuH1PegdIVSdA4wT7jm0gfzk6CCpg53apSTxzuSXNkkSL7WnoRNn4GixJNzKk0EVhoKWuDZGlVQiiGhtumyCtkYuV7jYQEsuQrNZhJ3yGCwvH4CLS/OwemkWWq2cyEIi97FguJCYMkTJLF4cQ+DFNKQknCLurVxaDK0nMtVvzHgmCR1g71AVVj9wGnYOrsUvD3/bZycfwF9d/gjM1/bKCN91Bvgsfra4016ZerT90rGG376uiZ2f6fidwyGGC/T4JXGS23QzdBsEfN3wXr8yU6SDLgV4u/Ew1MOiAIuTNGKYz2+QWdiC8SwFmoREKRMDMECfwIC6bRO6vSzUK0OwunpAEH9tZRbWVqeg187KEzwUzMXNT4+Y0EfNOMQAPLKBGbnNGUOAVosH7HOl4KuASUhgsz1GYHKReKsQQOaqNo06/gw2n38YH1i9i937mk6k7woDUJzf+y34Lfgj+O3ixe6zx9p+fGsYxe8v4/YdvTg8wVR2jkj3EMRPoTWN1NEBBnokpFWzA9C0xmSe/OGhPC0kaLHUmof1ziSskB/hEJmF64fPwFimTh0RKgJoVgAYJH6G8NwskbZutQpQqYzC6VeOwoVzB2FzfQrarTwdp4N+CG7oMiRG7NG3H0uTAaQBfCXxwnyo7wz5MmwAfBBTyj0KdpJ7Oh6t4/b7cli8idTCTe3u2BdfqcRfpoOvGaP4rjDAYXJ6/FHrd6fDIP6RS/GZe5rQvK2H0Q08rSsgosTKjruuV4y1cLtQPGGcIbmhxupKPSdMheIIKeGRAIpr0SSstidhqT0DVxeX4HBxlVzLO2SH26CVsdYhsnqrIbiUhjTqWFmdhbOnj8CrLx0jqZ8hghLHcQ72BmeTRUTuDupYg+TYAGOp9lVwyudMiLECfzH0mwEXF2iQCB71Y6nW7ZbOlOsH1ivlG25lbI4O/a/wGuU7ygAP4O8Wol7hxEZv+ZZV77l3teLuj4UsnqDny/vi1kxG3nTXMktulpB4peodMNRfEtQGljhVjyA0qJN34dvr7QmodktwtjkP07kynBg6BzP5bQHO+EXSi8A7SgadOu0cbG+PwUunroGlpQXY3hyHsKNVfQhWFSUxCX/OHunpHmEAD9WzeCCIDUr9I0kC8zQzdEUPeRD1Paf2g3G9GdHvWjeA8+UCPLs6AkvlwPfC4eKRA9EY7KG86QxAgI19Cn4vn4WxqbPd599Xg/qJNnRu7ELvWsRojjvvmHB0ONKuvjlBhHToWK/SfUm/3ACbjMmd6aG7/WExA1Omg3sKO4QLtrujhA9yNHQL4HC4QsywTaOHBmRJjXOG6RCRK5UR2FifhksX5+DShQXaHiaGyPLYEFEqhjQTakbQ7YnQF0zATZIAgRTkCkiT+F5spJ4DxB5ytOAbnMDS9l/1Cyf8ViMDl6p5eHmzCCv0XWkxVvQC2OtQ4E1lAC7xvw+/PtJthgu5zMjbmlj7pSpUDvUwnCWiF/ntBKpmWhoBtC3TiRpyDzreNRhgi11TYNmC7dYwJZB9ytQM6Ri0wpz4VHolARYXCkPkTdyCqVwVGEGpLZL0ixcX4OL5RVL3NKIg289hHSc8l1rngcD+iFXiiRT3iDAANx0eMgX6QHgqWSy1kpBqPm+BYwOOBzyOSSxOkI9LRoyUQq0TwMVKHs5sD8HZ7QIsE/GFKSXmKTLxbN+DUUAHFoD5t7Qy1Xdtxet3d7BzCyM772mb6hAenSGeJv4AzGVBnS7qIdPxX96JaefMQJ2BrhSh0Qx6WhEHamca87BC+ICbgkOFNfDPBHD6haOwSYTnoE80zFH3oopYon3bAHTaIu/DMUCXtIAEm77IfQn4NncK8WfSxPfUSIDv49t+bHRml4hfbmXhW0tjJPXk9axloBv6jvrczUQOLm+YAT6Lf1wsw9ZiGLZ+7kX49i3NuPWOCPEYV1wBy8qRLSpAZcCY9sSh8HK5xwQzxGg9fk4HwiB0rq8Dx5kD2M81+nI9Z8A97jiaPDWm75ApuFCbJZs6C/GjI9TrGRDmmCN7Fvc3wnC23WaATvskBmjH1CfEZBwTxDwCQEMJ9KTrkLs/eHcwM3Lg28QKVFejg3BxJw8vbQyRrR+GSjsDcaQkyosBdhu5vEZ53QzwDfzM8BK8evxi9MKt2/HG+9rYvC1iOEEPOiqRMph0LXA6CpUrVh+JUeJ/+eT6CBs87HdtoSEkAw2LETGFBZhjZuTIAgyruK4cxXDicNIdbAjqSQllTEu9te0y1KzsfcJmWS0shqHcEURdznMJBAag83pcQwrkL+vzFQbwFQNFxG/nNgnk0YczwEY9B/WOr8LdaLQYM5oIpDaKcFeL6JZ9MQBv4xfg/yi2IbP4TPTFu2pYeXsH22/rsfAacuTMECuLAT0PiMj+cPWtU4/uPrToXz6M0vdKwFhChWMaCrkVGo3RzzjJqzRTIriDS6Vq0NlvTIRGopEyR5gApXJ0oUU/rYKTvwUIjHmsKxTDUc4AfoIByCRwpiCt0OtQTLHNoNog4q8HpOp9qLYo6hkqY+Wqe2TOb5SaCvcWMt4TA3Bk/wn47dzHYDnX7b4yN+JP3tGFOrmZqoTuyaMS+3lPNJ3tQqQBttjsVUxg9DLa50tXhW6bwKWg2ul2BP33MNEvzNPHmVOHK/1yO5E/oPaZBjEtcWmMFScbaa6zuzgGCPl8RgTp/qUfPN2dgzxfSX2PpDci89NsxLBe9mBli1B+mVB9BEab2WfGFN5BqeaEGYU9lT0xwKfgU5kCeNdSyPXdHX/nvWfx/M0hRscJ4GV8lISPGSSQvG3kgGL4AQfvh5RjFmPoZyjmEBfB5nk79WjcgNCPCxLMhAOa6nKd7lxu/mPXNjjnxIlN7EtTjYXS7/LJzHEEmmQ+ZwumPJC0o14PYXkFYG3Th1qD/P0hWEZybxAzp5mYtDra9bmHclkG+Bz+wUgbKgvt+OR/cZG9/M523LmOqqVwLZDEZzIiCHvZKVlJhjB0Z479TQzjmPUDJAjGLqNPrMZIo36GafTvcoa1+ehUyiDNSEyo5zhWtl8xrWfkcUBHK/vNnHNkBI/POPVUu+QwsMuPdCJS9aTya23Y2mhCoxaSPwIsaBaWiLkdaB8hTj1PDHuWfl4GMsAz+PXxV+DLRy/ET93ewco7aTh3W+hFU8T+E9SSPBPJCizRcdpwJoAX8xK2XqdNSdyiJdx5KMPUUoWZo8q261CwS3h9a0Tr4VPUTgipVhBW2q2qd7N6UNtz5nYmCpsNzsAEXc2Q+ivRPybAIQ2P1VUcCDIZ/ydtElUr0KnUoFNrQKfegXanRyYAHQCNtm50pR7M8USRAHD/JuAB/Ih/DG7ILUE49wz8+W2VeOudXda+vYe96zqsNQ6Y8SDlwTONMZMzYIA8uFrAAX0JYUzaZhYz4xs31IdUJ0C6GSnpTnFnwk+TaBukDqDBf3aXy0ng1I2p+7ttSJsIPTOJ6EOenLjdgW67BtFWmYhfh16zQ+o+StTBXDMIlhWk8A3QPEJw8PVpgBK8N1iDbRrwxu/aiVb/QYvVbuzFvQmhAslRgTjAUaMfjTkNMEf0dpK45jhj/ZghpfYHl0FE2+WcvpoQBh0YhAHkyFIzksIgCInkDFsn2lGDsSVpBgEpP7Qv4lJeqUK4sQrd7W2COLHtIkeBJS529w3kZnU/7aLYqwZ4FD83sgxfvmkLnvpAC5t3bePF6wmaHAD0A6b4A5Xq1K1RplHtB6d1coyfbLlV9ULLG/opSTO6WZkK7RdQz6OnfjN4/UXVKO2yo0GYfjgn0MQY2Paq85JZqrp3WZLggEYLoGk3OPsoglirQff0DkS1CoSVCgiEJzrEg8QNIWlS3J+mebsoAAkCYe8M8IX1p3++Uzz9wWK2emMhE85mmF+I0AvQqTPROMdLJXarB+hz+rjz6wCgT3DSZsGx7IiYEIi9ItrLlTQDGb4V+XY29m6YThHYSrwd5knHkdIaDB0FbRnCICGtCQj5d1dWAAMietQjt0Ioz0IJNpjjn7BYyGkruH3BBj4f6uNiKLg3DghOVeu37zTx1vEiW5jN+5kpCtnkPIuBsI8T3Kb1lySxFcgyx/pYfMCDsD26tF0xMIlbic4aGPxBd79i4oGWQWohgUfAAWLggEgG4GoA8+2kdJn9RPC4UScoFSsL6OAml+mcNqPWfK7WNFqH9XOIxgDR3gUmWOm0Zs9Ug+HhRj4zP4RwLOzBbJEC9qT9fabUo2xNonvANJcNoJW7h0FayuVehXR34aWBc/zNfQfd0zGgZjvVFnPYRCOUFkgpmb77uhypiNvHpS4jOEzA0N6ah/F8Jv3+2uSIL0y2NOXS1hYWE4yYLGZ/rD971AA++mE79HGnm4UVcjycrwbwtskuHB6JYKIQQ85H6bdwuM52s6vm7SBM7DFDoNSTOPoNXW4Gq/6t9kgX14ePffW6Eo+DdEGcrAsu151aJYt2xvb8PnOUIrzuDxMMYiZ+AChnM4HuT5bibXD6I1b6TKsIgLR+ABjUbj0K2M8wUGbkSYncannwyEoBXi5HsDgSwsHhCA4Py3CkNAmK2E5HCLIom6+VZH/3OoQT/+Wce8so+rAGg8nnQmBGfcv1/iChBQd3CDht3O08G/xxga4+lSkCovHGpRlP/0xqCp3nb5hPB6viZFewtOAgJPWby1evWZgNBu2VAZJKUxK3TWHG9ZYPjZDBKgUjNlsRLJQiGMmBMA2eAgjWoQN90o6YBnnJ43Lb05WoM1kSjKn9PGIY0KnFrAejWQbDOR922jFUu+Q966FB6QOdkglF0B82duccyHZbhhBtiFNIIpGMipBosMMAFhzaYxxP8ETS9Awl5jC33Y+Dn8M8zKBnVYTnEr0fDSCGK0xzo7wTTzzoxh51MkCjx6Dc9mCemGCaQOIwubN9j5lhHaYIu5uNdkzwa7K0yy5FYtOxnPxM5H0YpU+ZmGGrFVO7IqgRE3Qj7DOdidqw3xQxYLtq0iRhd2uh/LZGBmGwhlDu3FiCShcX6OO4y63cialmeMzSBow5/IcA+5hIHqTulngobVLWm8QIHU98z5cQDo/GMFXgM3OVNoDdaDrYjou/yiumU8QSJdbpUhykMLongwNFDyZJ8ouBvOkQfY/S9nbbJy0VwUYzhF6EynOrOspzZhQxqxZlCgEObnWsNINnuiKRxWsJpXWzYxr0d0KNW6OIjmq2PDbAp5dgwFQTEyF25x7oPHeArylgugS6Tt64mMUJjtOF44MOmYNLVQ/W6gCvUpjyqvEYjo6iYIQc3TBkyt3qUjPVvwhuexMK0JwvnGLEwUPUspkhInwJ4MhwQOBZhlc4c0eqE0ZIC5QoJjVbDIgJfFipR6QVQmEWpNShUTkJtarodtleQuYEWqxkm0QUp/PlLdCYGdbnBZRchAQCWRS7EEOLA0CqfZY94sTd5EaKEZlqL98WGIDtfRQQhzodjSV8zH1jaNXciCqvtgFe2vRgo86JhLAwjDBDhMrSiMEnyYlitotKQHBVlulaDerok6c6jo4CmRoPpguM7D7XNKgyh3ilcnXgGDWjxpAlSZ8dysBQxofJgg9bpA22iRGaYazarj5oMViqy/VDmj7FRAOttGOfzVdCyVyGkwTXJATd9hBljoJoAEtKssYhakyqGcM6KtFVMMmWM0cDcMLz4eaeMQC/kItVDOBOx04Wq+dlahNAlTRCm/ABRTBhp8WgQt/TxAQlIlhWAcW0PyKBDRj0ubS532F+SE6wLmURCmQDPIET0QBEk9Ovep4f4ffK05+ATEKOOHAowzUDaatGCG1iAo4PdBifOY9jRBB1ewZwrdFWmBIKBJsc4oR/dRUpNzFvY3E0EGHeXpfiAT1zU7Bip8iuZUQzVMpEJvrNBaX6/P0Fg5gNICRUj6oftHZhZqduQLcHsNXzhEaotIh4LYBZYoIJAorFnHIkASTW50sgGGbtK+8gbt7nivJb9iGqhFLbPVoy7KKRVuo82i4S4XOBZADODDs81k6fZi+GXogJzYTug6J9Xl1cNwUmAj2gpN2J+acILv/afT5hmanFDOEUD1rVCBo0zO7RSAZdKWFgNAE6VEanvSzxA2BgYtI+mCCQueRMZKTGrjFG+whgGmetqZUY4mji6pUqDR1rAJNEwINjAEcnySwMyxPdAJAmJWcKOZZHlVwhJZl3lJmtazrQc3iGycUU1DlaPcqK5T6OF4ayPhyboKEsDRU3Gj3CB13CL5HMvAWnJ50xmcjZccdo6PSqTgtj9mBSVNxYANrrVPEzDGYOZ2GYfO07GyGsnm7B+tkW9AjACjUHYKTZYQlbdB9qJumbKaV6SHsCB1bSXwI+ZzmOY8Y5MTmOdi2ltkEM3Hw57cMWZ3OVT8+7VgXYIGZ4fgXg6hmAhVGOD8i1nJPTHbUvm9fiM91lXpLLjWq197YGRBIpVud4gnBMet6Ux87O1GdQovsO5XIwN5IRAPHcVgdqpBG4aeD95LOUz1A3xBkFyMbFkCS6SW1VSg37tIR7PfcmxtTHhREfCmMZmFzMw+GbR+DsySrsrLShU6NYQRelqzhhih0mBbBqHiFlGpToc1sXwn4wQCxQozYhLip1O0ZsO2qJmWPqXNTz72Rd3Dxc3EKok1nYJrs+NUKMQJ/A1wTW3M6kI0eZGZtLb59bZxKZefnYb8Z1o8z8PzX9SIPLgNTLOPdiTRB+Id9BmYBihRihw9WXg3GMgMfaBLhSbUFlAheYzGHF3Op0dCvT/aRmBvMFI4pjHizcOALFyRxUiAkam11oV7oqBdJ5yAGTXiwgdKgkbsXkTfaoAgLB6nro4K7EBak6Uost21aAxQ7GTHBGZLBdRwESmx25c2oYVYBJXoTqOqtT7N1NnwJzwJt0V1swaBmQOde5oVUj0Ew6lDKlDDmyfLFEC7dd69g0j2fqUcRjxgdvNYDtE0fa9W90O8xxiDNHn2osRP+zeQ/GF/KQG8lCYTQLtY0O7FxoQqvcI3wQSb9BivD2WZM7DXzQ3sA9FjIBPt3IM+Hj5LXM4eQk7kimbDkE0GcyUOtqqtUwQA7gfHVNLAMBoMNIlmRykSWBC5hCBzGorFmlLcT5CgMo6fKU2pc7lXZB1z3MxKiE44Ms1Vui7WKbY4sWGOKhw4pG1boaAO1TGjFPE8RhCnT3ec71YEZs/GJuErJkosYWi0IbrJ2qQnOtA91mT4X209TnPTaAyqJSxQB7XMI6IPvvkf1nyhIYfGGID+DE0W0jYi31iQaAWaCRq/pDU+QsmiRQOIEwNsT3RmrtC0+BObcTdQKp1QUmTOI4VmRT0jpDEoSlnFDGTKnVhijSDRtrDDY2yKu54UOTtBM7hCqNGmSnipGFm9INoHPtjUNH3xOsJrJqPsUopoVo5sGYbZCdLaaFE1NmSgFM3zgGpfkSlM81oHymBtWLDejtdMGsPMUG5wMahkgkcbx2CUxQB3V2Sv/1gyOgSeJHMmlWOG5mRiM4QsQ/cSCCAqHfbIaJJd6FgwiYM08fwE3lkKvwqhs4WbEC9CmNgy76QDRRStEtxhspGyx9CHxOP8LODnkyl4jwax50u57wZaDvRsO01sDkc4qmSKRi7S9qsGF1nhvVNBqT2WuYTXRhhhPscTlJVnZ2lkzC1PUZKC2UoLXdgbUntqCx0oSQcAuGscnNtVqXWUJxCQwBYI88QBoAPe0KdtgzIVx6E03X27bLRjMac8cwSWHjA0T8+XGkb6SoHQoi6CwfZghl7bQe8MVu3QkZk+dasiclD53jwkwwNS+Rtrsd8lrS0LS8TWHuTQpobdEYnMLdYpTE2+WDJT5TzIgIiSXl0WKBRK9iSgMkOid9KsqooqvJLQ/ZDlf35Mzkky8jN5wBj8Di5I2TkBsvEBM0oL3ZgrAhlwV0NYqpZr/h4CzLNP3Y4wvokaJT0zxS0Rkc8Fsn8whwlY1hTkh9CAenIgH2cgFf3FnBJ92RTE2y0D0AlgnQsaexo+5Nh+lv7VxCzUhyv17bR8QKSAK6NKTaXCeVv0GfdQa1Cp9lQxdk5A3NJM7EmDoptfaB0X1y+812J768TLWVOinL10TJenC5dxuZdigtxsiZlSXAOn4iD3lysOQmClA9V4XWcp2YgEgWhiJuojpXMQDuLyNoMTd19hW2fEsr7k5249AXb+JjGmC5vaDsMnJLjgLlZzNI7t8Yjk/34ObDXRgropgvxC1oKDxcnpVoJgGbUdM6fVWZE2bUqb2rRfaxUZueWDQFkzaf//bkeSGp9zr5IZaXKGj1EjFCWzqqRIzc1/dMi42Ld7QWAAATG0l9WNJM6LwCuy0Lp4FHqLdIwazJxQKUJrIuJ1sNmmiN4y7XVofOLRwYggwxQfHQKNSICbafWoPuRhOijtL3vgKZIicQ9q4Brmrd8s+mD4499Ojmyx9eamy8e61dvoEYgcbNvvWK6YGQ8hdwgHd4sgcn5rtw9WwP5sYookS6PoylnRcQirkm0T6lVf0S0aN6UgbypXAI7pSqJBiU3a/9DcrO+5KenQ6XdPI9nAe4dJFc0zsKHHAj7zNjt/rljwEO2KcaC5oshvBmhCHbpPModEElvfzoxFwepg8VYPbIEIweKICXkZM8I0Sw3sskMxozae4vOxIpiMCIyPmZPGSni1A6PgG1V3eg9vI2tM5XIOTjbU81IAN7LsFv3X139M8fu/DICOQvzOXGP3vL2LGffGL7zE9sd6oL3biXZ7yHOVFj7t+PyZkTwjGS+BNzbWHzC1nZyCi2YESnpXuO/IgHS6TCxBYYgQU1McqJknKo6ThQBJN4ikmUKeCEJ3O4U2Zw/jTC2jLFJWqM1L+qM1ChWWUe3Cl1CaEGR3sbsAkp9e+c3GeipH3n6jggwDs0Sp6+hQIcPFGCIg3vMhTb5mZARjStBnL7Q49u0AgOAxfmoZaoSDJPwKOf10xAZmYI2ldNQu35degsVyCqd/jCyftICZNGdeuPT/5xdcWfuRDk4q3ldnllyM+8s9prX7/Tay0GfrcwSTZ+cSKEQyT5B+l7aiTiGaWikQJRK07VTdayq58ODZiyBpNh2p/uADHdQWizEzQxuZZrE8DbKYMAd+srFPlbYVBvgIi2gX6xh64bNdGtJtGLfKAjiPoc835BDQz7us3JblI8ymMYpYkARqcyMHEgR9JfgNHZvJySzjzhJtfmAhgkkobdXkluqPYAc0yFYj7SBplh0tL5LASlgvhuUji2vVQG1uSrs3h7YgGTEXTfbWLFab7o8KO///xfL79QvXjpucpS5YXqpduLQ72j1x7o5K6Z68ICEX8oK6c6a7ApnTRKtlx3qFHl+pCVJO0LYI4vAByim+RvpiIQavwbkSoKQ4rykZv50gUGK6Tu19e41DNl5+01iJ5jPEAEgkBlMQWEB/xsJJZZ7CpvcJwYbVhiJSjTNwFGpscVycc/ezAHs6Tyx2dzwrnDg1rCJMcp225v4Gz0l6RYpPhCuYs5UMyM56FUykMwSc6WIo0cltssynn+Aw884J/6yCm83LuHLgNJAe5/7IED+ZJ/zUsTD//OkYkXbhjLVEf4+tZ8rZtYxfC01eLj/Bg99aAS3Mk3/dk1gmI1g0jOM5TXR+Z8da5iLLtyLogBPXeUcNXOpf7ieR9efM6HyhYTY3oRPw7U+M+T6+oIkKW+mdqPfODPiVWMYGa6DScOVqEx1IZXdzKw3fKhS6ME33eTMVAmcTxVB2xEMsFB9RifLu7x1LSSD1PzWTj+thJJfhayBV+s/RNGTCxWjWifMUKnD8Rz6n26Pzw1sdcTzBurPhCLWpvzmFhoIo51/8nr+OIsMT1vpx1Crokb74ynv3rT4lX/cK40XvsldnTX9xddfoGIIdhm07NP1ofvqT4czUZzcA6OeBdg0t9SaeQ2/CxNskLZEINN4bB5gzqjRjh7hDbwVDTP9W3Fgth6mEfDEhHHX76IcOGsBxfP0ZieS3ykhFGspujIhobWDmuLTYrDZ/MRXHe0CocPNOHQbBMmxzpi8ebjYz04vZOFC9VAfMw0dKPjlcAqk8HvMUrqfuFoDuYpxDvJCU822QzBE4EkBuCsB8BME1U00cFBEttI84S6v/RDpcLUCTwDqPINUYD3bolNfTOufvBS4/wnjnfLD/6rxrMPfb64+dRD7J5wXwxw/fUfiU7BtyNs53AN57Ea5qHiT8I8LsOcdwkK5EcPWE81Tr1oUTVaJpFY1e6aMOnxk0/i6T5yz2Gx0Bodcto0yZ6deYWreiI8H8/X+XLsStrdsCmqjlTJpko8hIofLoYwM9GAY4sNODrfgJHhkAAtyZEn07hmh2LIBj3xPZZHWCIm4JnQ3RBMdJOr3AxpmdIoBXCmApg/QoSfDQTg42N86bvwTCheO7xcNZ9Y5EEbObfNkO6HVOay9vzwXbE1bmgwgnQpc31JVnJ4KazeUY4700/1yid6lejkP6099fXyS+HLH7vttt6eGOAUPMTqMCHGU13MQROmoBmNQBnHoYFDMOOtwSjBhiHWBOPK1Q8LljsBWJ+5s/jWSdBAgZeg10OokveOO3LWVxmcfok8ehVC/F1VfwAOlHdFwb0vKbBCD8ZJuuemO3CECH8VfUqlUC69BnLYyjuO5zJOFWIYJc8ld2WTMMOlug/lFhMMiMLGMxgj4k/NZWDuEKH8A4Tuc74AY1FqLqZRcAMKWtrCIAdj8lznaQbhBTboWlRCxlgLw8lOjMNB7C8EkDnxzcbSwvSR4oO/sv7whYPT2eX72W3NPa4SJiN6vNOaRPhGVII6DsNhHIXD3lmKrl2CHLSFbdKawCRJSlmwsTCH2+0PCQaZJ6WoRVJ+6TyDV19ksETf7RrIsTxvrcxjBkiQWrfSVCeWX50aa8GJow245nAdDpDNLwQxdGJf2lm0LBgrlcHT3A/RMJdwFAFdgNPbHqxQxDCm7akJHw4fzcDiEQonT/AQCl/1E0SSh7npoLZAUhCS7U4GlpKnuYIzAKqxfjCaZoaAiZfRZFsYzRMxZi+E7Pg0GzoU++wrrTI8SKdcuDwIxAcD0gC5c+2Vv3wxrtzegWjCB88gZv6jwFqkCdbhhuBZmGUrkCezwKWar4en39gVq5Ru1CBIPJ8Cg1xl+RLFV2ueAHdPP+rDDmmAXletiEwgzwI7pf59tRaBp6Yy+9q/yyCfZzCzGMDP/+RFmMxVIO9TaJUvCI++AqqeaL9Q13y1cgXIpPrmbRVZK3IuBLUppmDS7KQP2ZwnQBfXHKIeDuJAu7s9U48Ac+J5FYjT4C2WC8NZsMskCGSecy4ogKfAnzlXg0diYGbBZGzAI1OjMmYApAblkaIDXy6/SxghF7H6dOg/9wvR1J/sUQMwh/Ekm3lKffcwAxvxDDzRuw1mvVU4QNhgytsgs1CXHcNf/o7gBHvUuNaT7tYO+exXl324cM6naB19zpEzp8yEWmVq1UHtXTO2QlYsffpg8oikiRTpvwTkcnk4374WKmEZRjPbMJytkarviFbrVcXMGN/YT2ZsOD+FT4ydG6Gh57AnwKhMRXe7JRWChpRq18XR+zLq5+gEZoec1gEkv5liaBN4celgakD7DKifyWIFeVu1OCc3DVs70FrbKKxv7Sx8PRh/1z4WilSVpvZwVdhGvgZuhswDBStwBHbicZj1Vwk9bIKSLyNZvvLy8cBMiwO804Eg/spFX0TrGjXHCcMGdKQO3qR2C/yAYFQmEhPsdMah1StArVeC0V4Zxvky8H4L5ArcMdgVgvvvw+sRM7n56xgYKBc3wuUCZe52UiNrQir9rvEOgAFveqzPdmkQSzMfpsLA4jZqAGtkRdXI8x/bXeitb0NveQ16W5u+12gX2jPB6L5WCmUOF1rgJm/O7X8VxwgkFqHsjUEFxuCYd5o0QYNGCw1yT/eE9uCS3Wp6sL3j09AugGefypIXj+x+g8lp6I4Xz6zd4wG4HO12DOrZu2D8hcbEdOIsdKKMeJ9gLaTYOrVtsrBJkt0ie98F960cbj9abKbMliYSuhrDbYVDusEcYPtQ71Y/EJKoP1FHH87BAb/UEzPlLNLxcGGnifA0Xg4rLeiubUPn3EVignXa1yYlGcR8QtfeGYClfrBksyToCwUjcA1Qjidgy5uCBW8JFukzw9Yh60WwVs7A+fMBvPBcDl48FUCnySzRA+jvXFdq3E5SBGFOR9t+Y2oxZrknJu200xuHSncctrsTMJ4tw2R+A0bpm6mYBAyc0uaicCtdyRNdtcyMTCQSS4xeYgkoqDOC0hjQ6VXYvbjtZeDk9MvhJmGiuNyA7vImtM6uQOfCCsTNusRK4oUF8nUUe2eAVLaLvbmj6BQ1mFJPW/EU1MgkrOICTEYrAC+9Ci+cjGg870Gt5lv3re7HXTi/T5h0/l56KGgc+2iynBKX0WeHmKBO2mCzOwUjmQosFC+SWWgrqCXHO8aUGF5LSb7DICxNKCMfLIUFMMVYfOwow+USN1jNmn5eM4cikZwp8yIZKm8pU4CYnGZhuQadVYoUvnAe4grPHWiCUK9BoCa9qsE6NXH/q4XjZQ4x80epJXLfQha2kaJVnSzsvLgNG+d2oN12FrNmSnWjkgjdV442NI4dLV4JDLCL1eTAk9n1ByyZeGQzR76GDLSjgli6dSy7A6WgKkwDHz6a17aZfAB7q4SEog1Ry79obLoGeHbIy4wfxzCnkwBia9YrrTkSnYizgNsCldwiQAqEOy3orNegtbwF7WWy9wT4MArtM/QJ2ethgL5i42XWtun8fplk2aPbtMIhWNsqQLtZIwJEEuHr8wFSCNgi9dReSNse982efZoCNCsO6DgCrs2Qv3d4mjBCkczBEDFBDYYzNQoUhco02D7v7zv9I60BmAsinF6C3WBBqgq8zEGWuA0vPCYRtjrQ2WoQ4SvQXilDd6MCvVpDpkapGImxcgyseWIM9jkKcH4i9j2afUBLMv5fv4SByWWynTrkD0xVnxI1qwKcHDBLVqZCzWDVP+8YpsfRopsSTTe/GYphrDALvWFyFLVhOr8G47ltGjJ26bgME9oRQ8qkKGJr8GlhErOqeZfu0zEAEUvpU2JOOF3Vn0ywUb4HckKFtQ60V2tQO7UMrdUyEb4pTxROM9/UZ++stay0O/sAgTrkKzkyoQoZ2IaqIIftnGQdRiVrtWdsefp+yU00JgAcOwuO7nHGw+p3pPWtM8+LmfNlDfp9vdxxVQ2HoV4vwVZniszCNowQSCxmGvIa84xgtJyqwTBwKt0hwcQINjnGMovaYkxhAOaYumQ9BiuoH2GlA/WzZOdPb0LjwjaE1YZ8TOE467t5YsoDU84Hno2+Lw3AEsCMge10zaFOIod8MuhTacz5pFl/AJEBHCIbw+owROpSUO0RHjCm8oeMxnPyFlTxIDm+5kzDh4xtzBJDjFBcoEa+0C3IsJ4Zbho0gdCv0rV2tNwod2JKaFQ9rgFF5/kSVarQNnKAV+9AY60FtZc3oHGxAt1yk4Z1PTn3wYOUdkbb1wCJvtBN3ccooI8ikFB7MFiQL3uMvdZJDrEQLnsDx+iAZpbYMK3s8EEZgQMMOwHDjMAt3ShLOIEDxRwMkVO8EDRpKNsF/a5gZAx2C/oMbiMzpE9Mlx/Ut1oxqokjXZL41noLGst1aCxVyZtXJXTfgVjMEwBgKQulR2RpQUkyyH7fGeSOl3elKA6WYOacgzI27mp/TFfj/rgs8e1BKXRoBNDNwkk9t6kugQ70tHMmPZdd0gKdMEvaoCAA4kimKjRCTgwb0bQfMV1r6lvZDTZQXaQ20Z4v2keR0dY2SfxSHWpnK0R8AnpbLTDuPpXwmjTMu9PB1cn8+3U4gvTFbt5fat8gQXPvqs41Kl03bICbN2nzmb1WX4/uPpa4LE48rq5B7tPSxUzjJFaQkuNZYjGuEQIoC6BYgmLQIGywI4CieJ8fYj+jmds69o6BQd8y4YQ5ZkKfo9qvPHlhIyJid2H14VWoX6hCZ6dNDBEpZO9UP6Cg88zunuRoC/brCDLGdMBhHNAAvEzTWOq8AU+T2oXaAeSqTRUkEr5yA6ll+lSELMFkQvMwcLK95X4vxbWSQOhIrFT3HcxBp5ejANMYbAugSP6DDA8ytcULHuW0PD/1XGD9+J4aHaCaLANKVSu+9zyZDhbuhFB+pQbbL+1A9Sw5dTZacuUvERL3ID0vQfGX07UOrdLfqXmW+3trWGrDqh3NwXZ+m9uRmrkN55toBaTsA9rthPCm7IWxpEkOMbN91LFYB0NiTFyKjmrmTdErx+imobJPli+YEQA5KPQIGxTld5QnrdAUpiHwpP9Aa5o48XiozBNzGyt/+mpIxxe/XGrC9otVqF9sQotPA6v3JNHV4lJaX2LCM6vBaaI7DBjHgVwiHnE/jiBHcjEpL+YXpuV7t6oSet2h9SDb8RqVDbAYhufRDtE89cOaLjS62kbVBrQP0dpwsFqbv+8vJEdSm4BiizyK3J+QD2SQib8JzGVN+2wsaebV7241hFY5hOZGD7ZerEPl1Rp0a12IepEVU6XyB3eHzqDu17kpVJAoOvyyt9LPQKnDsmksobLVMVdg3ZDbroR9Laqbm4Krh2zWprT/kVOHXgTNevaY+UY1A0cqJokFzLNg0hRoLcDUL24WugQUW3EBin5TmIRipk6M0IMEE6kOVENw4cHj6L7DVyo504Ltl5tQOduA2sWWiOKhyoVgXkJmAQB3I4F8Hs3Xg8405vD1YADDXtJg6YkgYAjPBl7C3MtxQIMgZQVMQ9OVYf9JfJdYG7efv8WhVCzAU21njitUp62JGpjN0NW6AZx5CuZBAKyEMzlniccXeFyhTi7vQq8lXMoj2QrYRqrrNA4gdF/f6MD5L5eh/GoT2ttdEbrleWnMZ445S3WoebqkrnVIo/QBJrrMJNQ4lhP35wgCNXfY5WpzBGw3gurwpJo33Kc/zrVJvxhAIuSrKmD6nuh6/BhYH2lylC/G6HpyGpODPbOEgxtjsE02Uq3/atzhLmsL7jVozYiujJuCMMwQRigJh1KBtEKBTAPPRvLIDd4mgFdZ6sL68y3YfKEJzbW2eus3qrV3IR30g+QcRaePXHuvjsomo9VsLt+KZ1HMg3wqbeztYxTgdtMuAupsuJJvfrrP4Z4wyGM44PrkbZgrhurJVcoVV69qFTBjfzFlhZ2OGoCf7La5DhOaiiX+OqAMtI+fgk29onhdPH9dbI41Idqqw9ZLpOovdMSnud6FkK8Mpl24LPWkDFIydJl+Ap0Y4wo5g0QqnboWVcJCzs/03kA0kO2yHwcfTwu12mC71pOuo8/NAel7GBrwCFmzS+CqBSzrg5flkz3MKgRg9B8kMYtW6eCYAcvMDNxpbK7JMxnP4GpZFCYh5M6kOA8BgcXGsxVYe5TCtTS27zbV0qXqDSJGmRmxT8mJ20qNdVhaGLXyV3+11tUdw0dDNF7NeZnGcCZ3qZjJvboPEMic+fi2t033KBvP9Ia2QVa3ghsOSRZM/uy3AMZ1yhLHXTuHVl1zcLVRhQpFyPLz45CdGQGf5/BzTCBffwLMZaiUYDG1roH7/mWm9GsyUVs+byTalzymZxfxRB3OBM0Gg9XnI2id64pwOGQZuCmJuxFaz09MDvts/9i8CZsS52oCe24knj0Ict2DE7Mv3jJ3/HPXzx/5030NA9GhSOKX5kSW4s4UNxuVxpK17qpN2OBWDLQLDiAUZqDdhearK9C+RIGcyWHILUxA/uAU+PksmFwFcJuoicdsE9E21hLc4U7mspHVGSxh1eRxnp7GwR1FlSTHaFlSUi9P1bbbVGgfNdVvu/YZgDOK5bYolEvo5gvtu45d/42RoZGP5RGe/H/v/c1X+Rn7wgDakdMnpBqoYLIVJq1ZKaWErVVSY1WquoyBXXnFlXQX9BgmcxW1tm96fiITw6iYrxFcbkDU7kGv0oTcgQkIRgvgF3NiVo8XJ9VU+layqTZlmw3sE1CRRnc/gF37ANVqps5xpxPdhJpk0NjcHQwgVZ2FZmksACtkTgNQEn9mZGxjZmT81Hhh+Kul/Mh/KvrDZ1pht6kfYZ+eQKWGwe0c5hzX+/ZejHcwZRosY8mzZL84nKKOD9Qf7k6eGdsJRdQMybESdSLIjA1BMFGCDDFCQBohtS6sJaAhkNtefWNHMyD2DYNtarZqBjLYtWfQ0ZBgh6D6MRK9YzRCf6v0cnaez+JsJts+UJr61lhx+Jnp0bGTC6Wppz/6kX/8wt1c/zBr216HJ3BQA1Qj2N5YwNLH+eXae/dMDWQGXK0vdC2vpqHpNNODCBEBw6hbgYjCqJkeT40eBi8/Rgdzqv3KhAEmta9D7LRzRR9JmoJBjGm3mNNUlpJiy3RMMUEywJaoN9EtfLq6F5OV6fmeVy7m8hv3XHvrp0t+7tGF0uRL/+zH7q18An4D0mUfDJBOnTB3ToEN9ScNr1M8YR2CrumwkuXYCWcbkqAvccAeNAol3VzudOcM06sSRliDuN0izTBFj3aEPtN0+hBID37UR1AGrkRrs6b/8hInzLX8ts8Ww2ut2mLlXAO6hOQnnjJha2UfhV0o5oa7x2bmnrnhwMG/KXfqn/z4z/36S/AaZZ8awEpk8oXLaR83QvK1cuBIsg6ysD4SYp/mcETZNZpobWKieQAOKnaKAIdE41IHsrMNCMZaEIy0wCvy6cZb9FkF9A7QZ5bOW1SM4AR5lX2Xz6Fk3rX5ongJ4Oe5mkwtCJHUdsz2E3POQ3T6EGBQl9g+kImruXy+devB6x8dKw59rlga+iZd9MqhcL0Ceyiv2w/AnPElc8GMBkss1WKlho11c6Qe1fnmFM1KKXtv6nH3udpDk4wDO7GEKNWboa4v9sAf6UFwoAlZIr6Xo6hdRr24WVxQIWdhlzaJGXCbGOEgXTpO+4sAzAMd13NVb1IbyDvbV8boL+khkEhfZwM5TOz2ke5DBnYZgISuRwcHydUxRguFnZFC6cXR0tBjs6WxL4yODJ89VJq4+Nsf+m+rsMfyOhjAFbEUgdherk0ptgE5cGafi4L2Wpy6vEIoCT9GsbsJitlPdGgYyAkfg7VBTHVojT518WF8BXHSBsim6YQR+s6bSaqGyCzZD4nHSJg/i+Jx1wdJ9oleDwkhGcYWU219FmYz+d5QoXBuOJf/9uzY6KMnpg+dfN/Bm5/+xbvv7jLG9rg+mCyvOyNo38VhENecX/Z+CP2MtRuj6f1afDzqLCJ6ZrYNwVQb/KGeXEzSAYkSiEm8Yo1YhULHdfKbbJGnnMwBOwRxME/wwZeTeSKtDZgDQC0Q7fMsqu84AQKZvXffAztbqPSjqEBiE98L4qnh8fLtx679m6F84a9yI1tPfuynfr35cTr6S7D/ss+kUNvwvuif6A83iaK/7M5DDq8bO+BqF4SES9OoXbC4MZZDOa8UQjBNEr9AAZg5cgWLVcMUmfTKWuLiQWzI9/Eu4W8lWQPW2yCw+Dx0HrsevMVD9JkCj78TR4Ry3dbL1VP1aFK3yw62mDIBSYCSxE1pfjcxPQKtXSiVhtsHp6efvGnx8N984Lq3f3ZsbOHUvTfc0IU3WPbtCdSpywbs66MsadL60/11wATT1aqjic3+E1K7mGtr+RCIE36KXJ0zXQgme+AN99Q8OEc3s0HdDcAG7EP1rgKMexA+dRbwmSp4h2cgc90s+EengJVyMocLMJmB5f5MWEir0ly3rdEEDiZAA/D4zA0Pbj569eNB4H+pEGQfpsjGc71uZuvNID4ve2IA1Iv+aslUuXXJxMa+J5ZfCS4w+BZce9AfEGLJ6rC/QXIZWG7nSS3yV9EcIHs/xW1+RGN7uf6f7ldgrs5wHSwMEt4zt37QWTZ0Rr0F0fYGxJs0bNyoQHBpB/xrZ2nkSH6EoZyccRu7Ep18nUPSjtufLNEiVWKZ5j1cKFSK2eySn8u8cmB88jND2dIzuZHCuU/+vX9Y/iS8eWVPDMBEAku6o1LybVQCc7ZtwfQlaZpj6pw047i35yu4ELpnJQq6TiFkiPiZWZL4YiwXhBYCpM3RgIak7m0djNqi20QRaRVIG3R7EK+UId6pQby8A5lKA7yrSRvMj4E3XgSWz9nK0hZsF+Nn8ol139G1hWzQ8TP+1oGxiVPzE+NfOzo5+/iRkfJX4FQtvP+//yf7Anh7Ka/JACWe4sA8sUyiXHTboVCfrkNIB4IS0AaxnxNw0F0HUMk9l+dNzEaQPUgSPys1AGNytUEWqTu69tj8wHRrnXbvfktUTCBAIEXUotUyRFwTvLwG/nXzELxtAYJr52RoF5lawi1ZIQJz2mDvZ0PYMc/2DhenZzdOLMz9+0Nj05/94J13P/nTJ07U4DtYLssAvwV3R58C6AA+8UeRh5tLrHH7dtQ5Sl09lliOd4D3ZWB/Mhio1hPqsE/dM8NUXhFJ4knqFxCy8wTUuMRnlV11wrGirzUO0ZmxxmwB9DeLpTQFgjXRclKryC4TM3CYWuWeXMtLmxBvV6H30iXCBouQuWkRvLkxiQ9czkdLdPm+w9hgFx6izRfyrYXJyeevmp15fGwk9x9ypeCZXmu1/uRf/MWuK3y+WeWyDMCkuyv+w17x6VK+Wp3qZZ/MB8Fdjbj3nkrcPRwCirW6PEwJsnH4mHp2UYIaRmhxSOw0H69AwjUt1b34TBBB8rGdaSyWRXHf2QMmHUqrWYv8+1WOuHtf2rn8FvwniI/SF2DuKT/Y6gKu7UCvRSZirQz+cTILV80I08BKBVmHXMEBtE8ASdo5IwUZH49NH3ieQlUPjReGHh8vjT53dDR39h2Zqeq9v3DvPl4C//rLa2MAYoJ/BLD1AD6w83TmmpWdTv3MeagtU3z7PV0Mj4cMx0KM814iuwGdxBoGeylpx5joL/5+BfLBBKRdgxnq/0ki/rC0/+Y8bVLQIe7ebmmbC8lr3PkMoiip1y9tcs8XzNsLBTjERpMwQgNi8sIi4YPg6jligjxfYlSGphW6L2SC1lCxsJor5i8dmzvwmcALHi952ef//B/94034Lpc9DwPvZYIjLz2IuNaCV5/6bHv11GnY+dAWtG8jWETkgWE06ZaQ6FWLAZwKFb3QOWjSLXj/F2hoN8ElnrT8MTpSRIns+XmR5itJKDYAUBp7MhBUptqxy7EExGEsOQnTme0r30pGn24I0UVyIJFGiM5vknORPI+HyXcwNy6knk4JA8+rTQ6PLF11cOGJm48c+vzvf/SX/1LUxhjC96DsU1aS5Z+2Th4qe607tqH1d54Lt/+riMLQTLwnivWJVVjvwspfnoTW6XW5uubACQR8cWiC+AcIEB0k4s/SZ1S+eAr17B496GY6ZKvtNdpj4P4WSsyeA254NU4xkB5fogwc8pcztMg3+LEcRGvUiK5n7L8bFAJdq5t6zWftZjzweRYSaYLs0Zlw+mzr0nXt7CdnskPfeMfczOO/du+9G/A9Lm9oiZhuvksPgN/INoMzd3qzL56Nq+/fgc5NbRbNRRROCZwxgyh9kipBEMWvcbRQujQ1NHLu+MLcl2qHaoeXhzdvLAeV4y1sj3uRJ174OKge7Nvl3gTtX0TYZeqCHYaZ1UfUtuZLJuc9oAY8qj5zqa1Ens9/ZqSTKF4vAzaJi85utO9+9/v/bWG791f1Tmc9Vy7vOWDznSxviAF+j93VInTd/nzx1e2VTlSvs/Zp6os7Wix8ZwejE3XoTck3D7GkLdCoOOavoBlbp6DGc4Ug/63RQvHpn7jubc8+M3l6phO3b8yF3q2EQW9cC3du7GIvy/29vgaLg1R7ipBuYY6EStCH7kFIbqDzizkYANXqpPboIL1tQ8cgXqIcl8kz2Q6b75k99Ex4eOT8fbfd1vxTuDLKG14kStmuDn1eehDPnv8srLy42my+sum1f6SNtdsY80aoQ8bEvVRvkTSHGd9v5jPe1pHJ6UfffvDI3x4fmX/48Z3WmV+780Mca5z6xef/7xcz+ehFQvo3fbn27H9Zw8bBMOpNRgzzDOW74xPRMrcgqMxYQ0JjknScDcD6KPrrYI7JACX5zmfwFVZpeGAmkhirEEbxMPPrjcnam+7MeSPlTVglzJZ75Jspnr1//cGzx0cnHh6Ng5+/iI33V1l4E+GDYf7iWCR3UjHItebHp17+ieve/unbDi38WVQL1n/pnnsSY95P3PA/rNIX/3zpf7n4p0+90F76yIudC++9GG4ep7pyevmj5PCBl755RmA2mT4DLo9+VKI/OhoFPZYCjANknzn6g4FN9uD7A2Ahoj+0kntDuOvNLm8qA+hy/8w9FFgnRsAHX/ip7qETj+DmPc/Ha3+3ls2947033PLQVLb4pavGJ77wL3/qF87upb5/ufgLX7n/7IMPXzs2d/3pztoHnm6d+chqtHljD0MaY4m+BTvZE/uIZGEaS4BPE9VMBYnE6nZq8XGB9fjYnz7oMweEMvcWA02BgybkZE8ZaLyiyneEAXThnsRPZi9cGuqWHxyKvZWrhqePsxr7dhjCBT/wtvZT1/OPb/Ru+PHSuXy4/jnf88/cnD32ofWo8o7N3s7xRtwqZfjrZ5iZFaeuck2AIkac9AiiSS9PlTQuUEBQOIPAzg/Ay2kE99AVJfe2fEcZQOGD8h/jyfrbszddaB0tfXv0fOXCvffu38v1KbqG3NLbRLDyr8G/fnVyrVT+Vv3lM16M76ww/4YWdhbIxOSExVYCqobrKScPL7ubh/RuiwdAuYIHYEyl9131L1YF0d4wBj+YDKDLfUy8o4Z/3vDQxwGdX/k39c88f7q+9q3T7bUPPt584SdIExzsQVSkkUOGWSEFi9tjR9MrKrpTAphGEJjkEbMeD0omMBe8RnFxh2/SRq+o8l1hgO9U+Qeln14jjbD+2+c+8Q0aRfzHZ8LT//WZ9vL7N8Ly1T3WK3AKeEYkwSGIpspgIJccZqphJccBMbPDSAsZzAVubZjCIviDrAG+k0VphPYf4OeeeLW8cepGLL29ktm551Jv9e4L4dr7xZw85GvieipLSVPYQW9OGMOkZRufBVgVzuy5qOq17yrYRSfEap0SLxt72aBWWt35/h0Gfi/Lr7EPUdgau7/Z+fipc52wW8bC8jFvvlrFxvEmmYYO9kqWzjgAF/QX6wgC52O1iWYo5tbiOphoOFHM5ZqFbG4lny+e9MJ4bWlm6YcM8B0rJI7/O8DG/Xh/Obdz4oXjncmVB1sn33Oxt35rM+5e3cLWLGmEDKB15xhpZ7swgpZ6/fEV/R0lAibhExVvITIvwJEgtzpWGr4wOTLx8GRp7KF4zl/51cVfDe+D++BKKVeoZXrzyv928Q8nN1j31g2of/jB2rd/tgktCjHFAbfrvoBl1u2bCCgxtdIIwc3KAxQM2uJr9TKVaAqJeapmpg/KFwjyOXrZbK73Mzff+f8sjox/7seuedsjP37zu9fhCizf9wygy/34QBY26zc+0nrm713srt6xHu3cVIlrw8N+3pF+SVXx2nrPYYC/tAwglnJxgJ8oPAUs7ECxMARTI2OvHJte/PJ/d8cH/r9fufPHvgFXePn+MgGXKdcDRCcBX+mG+LFrsoe/dggOvGc73HnfK72ld5At9+R63JDW7WDwgg4GGbvBQK9T4HksOnLg4OlirvD1Yjb/tSHIPxEGsARvgfIDwwAqoYUnWL70f1Y/ubXaXF89DcunOqz3YdIE17fi9nwPe8PmFTYuE+hooCa+8h5SQKs7nM0vz5ZGn5sZnniwlC0+WSxlX77h0LvX7rut/0XNV2L5gTEB6ULDPe9jK3+dvxQsf5iA4o9e6q3dUcfmwQiiIT6lVOQYcrzeZVD5dA7CbbqmC3zxBZkmyPxGMZPdWhidOfkzN73rr99+4tjnoTtZebMmbHy3yg8sA7jlNwkobvmVOytYf88z7Rd/diMqH4u9SLwP3uv6UPlMljAA8UOXv2XcD8dHJusnphc+d2zqwJ/fffTmRz56x4/uK65xJZUfGBNwuZJb2CzDt+HB8cWJx2/JX/fQ871XP9TExvsa2LmqgS0KY9OgIcjgdHH87OLE5DeumZr/AuvB18LxePsXbv9A66Pw1i0/1ABO+Qg+4B+vrY99qXry4Ah6t9Z7vfdV2rU7y1/2h+Zg+qslGHosCDJP3z5/9cs7q+HGx+67rwdv8fJDBtil/Jv6J2cf3H7u7UuNtXesPxIO3Tl6/WN3zb7jqWt6wfI997w1AN5eyv8P3c3Ih8SpWgcAAAAASUVORK5CYII=";
|
|
3
|
+
|
|
4
|
+
//#endregion
|
|
5
|
+
export { element_default as default };
|
|
6
|
+
//# sourceMappingURL=element.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"element.js","names":[],"sources":["../src/react/ui/images/marketplaces/element.png"],"sourcesContent":["\"data:image/png;base64,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\""],"mappings":";sBAAA"}
|
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
|
|
3
|
+
import { c as cn$1 } from "./utils.js";
|
|
4
|
+
import { m as clamp } from "./api.js";
|
|
5
|
+
import { t as calendar_default } from "./calendar.js";
|
|
6
|
+
import { useRef, useState } from "react";
|
|
7
|
+
import { Button, CalendarIcon, DropdownMenu, DropdownMenuContent, DropdownMenuPortal, DropdownMenuTrigger, NumericInput, Skeleton, Text, TimeIcon } from "@0xsequence/design-system";
|
|
8
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
9
|
+
import { addDays, differenceInDays, endOfDay, format, getHours, getMinutes, isSameDay, setHours, setMinutes, startOfDay } from "date-fns";
|
|
10
|
+
|
|
11
|
+
//#region src/react/ui/modals/_internal/components/calendarDropdown/TimeSelector.tsx
|
|
12
|
+
function TimeSelector({ selectedDate, onTimeChange }) {
|
|
13
|
+
const minutesRef = useRef(null);
|
|
14
|
+
const [draft, setDraft] = useState(null);
|
|
15
|
+
const currentHours = getHours(selectedDate);
|
|
16
|
+
const currentMinutes = getMinutes(selectedDate);
|
|
17
|
+
const commitChange = () => {
|
|
18
|
+
if (!draft) return;
|
|
19
|
+
const now = /* @__PURE__ */ new Date();
|
|
20
|
+
const parse = (val, fallback) => {
|
|
21
|
+
const n = Number.parseInt(val, 10);
|
|
22
|
+
return Number.isNaN(n) ? fallback : n;
|
|
23
|
+
};
|
|
24
|
+
let h = clamp(parse(draft.hours, currentHours), 0, 23);
|
|
25
|
+
let m = clamp(parse(draft.minutes, currentMinutes), 0, 59);
|
|
26
|
+
if (setMinutes(setHours(selectedDate, h), m) < now) {
|
|
27
|
+
h = getHours(now);
|
|
28
|
+
m = getMinutes(now);
|
|
29
|
+
}
|
|
30
|
+
onTimeChange(h, m);
|
|
31
|
+
setDraft(null);
|
|
32
|
+
};
|
|
33
|
+
const handleKeyDown = (e, field) => {
|
|
34
|
+
if (e.key === "Enter") {
|
|
35
|
+
e.preventDefault();
|
|
36
|
+
if (field === "hours") minutesRef.current?.focus();
|
|
37
|
+
else commitChange();
|
|
38
|
+
} else if (e.key === "Escape") {
|
|
39
|
+
e.preventDefault();
|
|
40
|
+
setDraft(null);
|
|
41
|
+
e.currentTarget.blur();
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
const hours = draft?.hours ?? currentHours.toString().padStart(2, "0");
|
|
45
|
+
const minutes = draft?.minutes ?? currentMinutes.toString().padStart(2, "0");
|
|
46
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
47
|
+
className: "mt-3 flex items-center gap-6 border-border-base border-t pt-3",
|
|
48
|
+
children: [/* @__PURE__ */ jsx(TimeIcon, {
|
|
49
|
+
color: "white",
|
|
50
|
+
size: "xs"
|
|
51
|
+
}), /* @__PURE__ */ jsxs("div", {
|
|
52
|
+
className: "flex flex-1 items-center justify-between gap-2",
|
|
53
|
+
children: [
|
|
54
|
+
/* @__PURE__ */ jsx("div", {
|
|
55
|
+
className: "w-16 [&>label]:w-16",
|
|
56
|
+
children: /* @__PURE__ */ jsx(NumericInput, {
|
|
57
|
+
className: "h-9 [&>input]:text-xs",
|
|
58
|
+
name: "hours",
|
|
59
|
+
value: hours,
|
|
60
|
+
onChange: (e) => setDraft({
|
|
61
|
+
hours: e.target.value,
|
|
62
|
+
minutes
|
|
63
|
+
}),
|
|
64
|
+
onBlur: commitChange,
|
|
65
|
+
onKeyDown: (e) => handleKeyDown(e, "hours"),
|
|
66
|
+
min: 0,
|
|
67
|
+
max: 23,
|
|
68
|
+
tabIndex: 0
|
|
69
|
+
})
|
|
70
|
+
}),
|
|
71
|
+
/* @__PURE__ */ jsx(Text, {
|
|
72
|
+
className: "font-medium text-sm text-text-80",
|
|
73
|
+
children: ":"
|
|
74
|
+
}),
|
|
75
|
+
/* @__PURE__ */ jsx("div", {
|
|
76
|
+
className: "w-16 [&>label]:w-16",
|
|
77
|
+
children: /* @__PURE__ */ jsx(NumericInput, {
|
|
78
|
+
ref: minutesRef,
|
|
79
|
+
className: "h-9 [&>input]:text-xs",
|
|
80
|
+
name: "minutes",
|
|
81
|
+
value: minutes,
|
|
82
|
+
onChange: (e) => setDraft({
|
|
83
|
+
hours,
|
|
84
|
+
minutes: e.target.value
|
|
85
|
+
}),
|
|
86
|
+
onBlur: commitChange,
|
|
87
|
+
onKeyDown: (e) => handleKeyDown(e, "minutes"),
|
|
88
|
+
min: 0,
|
|
89
|
+
max: 59,
|
|
90
|
+
tabIndex: 0
|
|
91
|
+
})
|
|
92
|
+
})
|
|
93
|
+
]
|
|
94
|
+
})]
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
//#endregion
|
|
99
|
+
//#region src/react/ui/modals/_internal/components/calendarDropdown/index.tsx
|
|
100
|
+
/**
|
|
101
|
+
* Determines if the selected date matches a preset range
|
|
102
|
+
*/
|
|
103
|
+
function getMatchingPreset(selectedDate) {
|
|
104
|
+
const today = startOfDay(/* @__PURE__ */ new Date());
|
|
105
|
+
const selectedDay = startOfDay(selectedDate);
|
|
106
|
+
const daysDifference = differenceInDays(selectedDay, today);
|
|
107
|
+
if (isSameDay(selectedDay, today)) return PRESET_RANGES.TODAY.value;
|
|
108
|
+
if (daysDifference === 1) return PRESET_RANGES.TOMORROW.value;
|
|
109
|
+
if (daysDifference === 3) return PRESET_RANGES.IN_3_DAYS.value;
|
|
110
|
+
if (daysDifference === 7) return PRESET_RANGES.ONE_WEEK.value;
|
|
111
|
+
if (daysDifference === 30) return PRESET_RANGES.ONE_MONTH.value;
|
|
112
|
+
return null;
|
|
113
|
+
}
|
|
114
|
+
function CalendarDropdown({ selectedDate, setSelectedDate, onSelectPreset, isOpen, setIsOpen }) {
|
|
115
|
+
const matchingPreset = getMatchingPreset(selectedDate);
|
|
116
|
+
const handleTimeChange = (hours, minutes) => {
|
|
117
|
+
const newDate = new Date(selectedDate);
|
|
118
|
+
newDate.setHours(hours, minutes, 0, 0);
|
|
119
|
+
setSelectedDate(newDate);
|
|
120
|
+
};
|
|
121
|
+
return /* @__PURE__ */ jsxs(DropdownMenu, {
|
|
122
|
+
open: isOpen,
|
|
123
|
+
onOpenChange: setIsOpen,
|
|
124
|
+
children: [/* @__PURE__ */ jsx(DropdownMenuTrigger, {
|
|
125
|
+
asChild: true,
|
|
126
|
+
children: /* @__PURE__ */ jsxs(Button, {
|
|
127
|
+
className: cn$1("h-9 flex-1 rounded-sm border-border-normal p-2 font-medium text-xs", isOpen && "border-border-focus outline-1 outline-border-focus"),
|
|
128
|
+
variant: "outline",
|
|
129
|
+
shape: "square",
|
|
130
|
+
onClick: () => setIsOpen(!isOpen),
|
|
131
|
+
children: [/* @__PURE__ */ jsx(CalendarIcon, { size: "xs" }), format(selectedDate, "yyyy/MM/dd HH:mm")]
|
|
132
|
+
})
|
|
133
|
+
}), /* @__PURE__ */ jsx(DropdownMenuPortal, { children: /* @__PURE__ */ jsx(DropdownMenuContent, {
|
|
134
|
+
className: "pointer-events-auto z-20 w-full rounded-xl border border-border-base bg-surface-neutral p-3",
|
|
135
|
+
sideOffset: 5,
|
|
136
|
+
children: /* @__PURE__ */ jsxs("div", {
|
|
137
|
+
className: "flex gap-8",
|
|
138
|
+
children: [/* @__PURE__ */ jsx("div", {
|
|
139
|
+
className: "flex flex-col",
|
|
140
|
+
children: Object.values(PRESET_RANGES).map((preset) => {
|
|
141
|
+
return /* @__PURE__ */ jsx(Button, {
|
|
142
|
+
onClick: () => {
|
|
143
|
+
onSelectPreset(preset.value);
|
|
144
|
+
setIsOpen(false);
|
|
145
|
+
},
|
|
146
|
+
variant: "text",
|
|
147
|
+
className: `w-full justify-start py-1.5 font-bold text-xs transition-colors ${matchingPreset === preset.value ? "text-text-100" : "text-text-50 hover:text-text-80"}`,
|
|
148
|
+
tabIndex: 0,
|
|
149
|
+
children: preset.label
|
|
150
|
+
}, preset.value);
|
|
151
|
+
})
|
|
152
|
+
}), /* @__PURE__ */ jsxs("div", {
|
|
153
|
+
className: "flex flex-col",
|
|
154
|
+
children: [/* @__PURE__ */ jsx(calendar_default, {
|
|
155
|
+
selectedDate,
|
|
156
|
+
setSelectedDate: (date) => {
|
|
157
|
+
const newDate = new Date(date);
|
|
158
|
+
const today = startOfDay(/* @__PURE__ */ new Date());
|
|
159
|
+
if (isSameDay(startOfDay(newDate), today)) setSelectedDate(endOfDay(newDate));
|
|
160
|
+
else {
|
|
161
|
+
newDate.setHours(selectedDate.getHours(), selectedDate.getMinutes(), 0, 0);
|
|
162
|
+
setSelectedDate(newDate);
|
|
163
|
+
}
|
|
164
|
+
},
|
|
165
|
+
mode: "single"
|
|
166
|
+
}), /* @__PURE__ */ jsx(TimeSelector, {
|
|
167
|
+
selectedDate,
|
|
168
|
+
onTimeChange: handleTimeChange
|
|
169
|
+
})]
|
|
170
|
+
})]
|
|
171
|
+
})
|
|
172
|
+
}) })]
|
|
173
|
+
});
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
//#endregion
|
|
177
|
+
//#region src/react/ui/modals/_internal/components/expirationDateSelect/index.tsx
|
|
178
|
+
const PRESET_RANGES = {
|
|
179
|
+
TODAY: {
|
|
180
|
+
label: "Today",
|
|
181
|
+
value: "today",
|
|
182
|
+
offset: 0
|
|
183
|
+
},
|
|
184
|
+
TOMORROW: {
|
|
185
|
+
label: "Tomorrow",
|
|
186
|
+
value: "tomorrow",
|
|
187
|
+
offset: 1
|
|
188
|
+
},
|
|
189
|
+
IN_3_DAYS: {
|
|
190
|
+
label: "In 3 days",
|
|
191
|
+
value: "3_days",
|
|
192
|
+
offset: 3
|
|
193
|
+
},
|
|
194
|
+
ONE_WEEK: {
|
|
195
|
+
label: "1 week",
|
|
196
|
+
value: "1_week",
|
|
197
|
+
offset: 7
|
|
198
|
+
},
|
|
199
|
+
ONE_MONTH: {
|
|
200
|
+
label: "1 month",
|
|
201
|
+
value: "1_month",
|
|
202
|
+
offset: 30
|
|
203
|
+
}
|
|
204
|
+
};
|
|
205
|
+
const ExpirationDateSelect = function ExpirationDateSelect$1({ className, date, onDateChange, disabled }) {
|
|
206
|
+
const [calendarDropdownOpen, setCalendarDropdownOpen] = useState(false);
|
|
207
|
+
function handleSelectPresetRange(range) {
|
|
208
|
+
const presetRange = Object.values(PRESET_RANGES).find((preset) => preset.value === range);
|
|
209
|
+
if (!presetRange) return;
|
|
210
|
+
const baseDate = /* @__PURE__ */ new Date();
|
|
211
|
+
const targetDate = presetRange.value === "today" ? baseDate : addDays(baseDate, presetRange.offset);
|
|
212
|
+
onDateChange(presetRange.value === "today" ? endOfDay(targetDate) : (() => {
|
|
213
|
+
const preservedTimeDate = new Date(targetDate);
|
|
214
|
+
preservedTimeDate.setHours(date.getHours(), date.getMinutes(), date.getSeconds(), date.getMilliseconds());
|
|
215
|
+
return preservedTimeDate;
|
|
216
|
+
})());
|
|
217
|
+
}
|
|
218
|
+
function handleDateValueChange(date$1) {
|
|
219
|
+
onDateChange(date$1);
|
|
220
|
+
}
|
|
221
|
+
if (!date) return /* @__PURE__ */ jsx(Skeleton, { className: "mr-3 h-7 w-20 rounded-2xl" });
|
|
222
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
223
|
+
className: cn$1("relative w-full", disabled && "pointer-events-none opacity-50"),
|
|
224
|
+
children: [/* @__PURE__ */ jsx(Text, {
|
|
225
|
+
className: "w-full text-left font-body font-medium text-xs",
|
|
226
|
+
fontWeight: "medium",
|
|
227
|
+
color: "text100",
|
|
228
|
+
children: "Set expiry"
|
|
229
|
+
}), /* @__PURE__ */ jsx("div", {
|
|
230
|
+
className: `${className} flex w-full items-center gap-2 rounded-sm bg-zinc-950`,
|
|
231
|
+
children: /* @__PURE__ */ jsx(CalendarDropdown, {
|
|
232
|
+
selectedDate: date,
|
|
233
|
+
setSelectedDate: handleDateValueChange,
|
|
234
|
+
onSelectPreset: handleSelectPresetRange,
|
|
235
|
+
isOpen: calendarDropdownOpen,
|
|
236
|
+
setIsOpen: setCalendarDropdownOpen
|
|
237
|
+
})
|
|
238
|
+
})]
|
|
239
|
+
});
|
|
240
|
+
};
|
|
241
|
+
var expirationDateSelect_default = ExpirationDateSelect;
|
|
242
|
+
|
|
243
|
+
//#endregion
|
|
244
|
+
export { expirationDateSelect_default as n, CalendarDropdown as r, PRESET_RANGES as t };
|
|
245
|
+
//# sourceMappingURL=expirationDateSelect.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expirationDateSelect.js","names":["cn","Calendar","ExpirationDateSelect","date","cn"],"sources":["../src/react/ui/modals/_internal/components/calendarDropdown/TimeSelector.tsx","../src/react/ui/modals/_internal/components/calendarDropdown/index.tsx","../src/react/ui/modals/_internal/components/expirationDateSelect/index.tsx"],"sourcesContent":["'use client';\n\nimport { NumericInput, Text, TimeIcon } from '@0xsequence/design-system';\nimport { getHours, getMinutes, setHours, setMinutes } from 'date-fns';\nimport { useRef, useState } from 'react';\nimport { clamp } from '../../../../../_internal/utils';\n\ninterface TimeSelectorProps {\n\tselectedDate: Date;\n\tonTimeChange: (hours: number, minutes: number) => void;\n}\n\nexport function TimeSelector({\n\tselectedDate,\n\tonTimeChange,\n}: TimeSelectorProps) {\n\tconst minutesRef = useRef<HTMLInputElement>(null);\n\tconst [draft, setDraft] = useState<{ hours: string; minutes: string } | null>(\n\t\tnull,\n\t);\n\n\tconst currentHours = getHours(selectedDate);\n\tconst currentMinutes = getMinutes(selectedDate);\n\n\tconst commitChange = () => {\n\t\tif (!draft) return;\n\n\t\tconst now = new Date();\n\t\tconst parse = (val: string, fallback: number) => {\n\t\t\tconst n = Number.parseInt(val, 10);\n\t\t\treturn Number.isNaN(n) ? fallback : n;\n\t\t};\n\n\t\tlet h = clamp(parse(draft.hours, currentHours), 0, 23);\n\t\tlet m = clamp(parse(draft.minutes, currentMinutes), 0, 59);\n\n\t\tconst newDate = setMinutes(setHours(selectedDate, h), m);\n\n\t\tif (newDate < now) {\n\t\t\th = getHours(now);\n\t\t\tm = getMinutes(now);\n\t\t}\n\n\t\tonTimeChange(h, m);\n\t\tsetDraft(null);\n\t};\n\n\tconst handleKeyDown = (\n\t\te: React.KeyboardEvent<HTMLInputElement>,\n\t\tfield: 'hours' | 'minutes',\n\t) => {\n\t\tif (e.key === 'Enter') {\n\t\t\te.preventDefault();\n\t\t\tif (field === 'hours') {\n\t\t\t\tminutesRef.current?.focus();\n\t\t\t} else {\n\t\t\t\tcommitChange();\n\t\t\t}\n\t\t} else if (e.key === 'Escape') {\n\t\t\te.preventDefault();\n\t\t\tsetDraft(null);\n\t\t\te.currentTarget.blur();\n\t\t}\n\t};\n\n\tconst hours = draft?.hours ?? currentHours.toString().padStart(2, '0');\n\tconst minutes = draft?.minutes ?? currentMinutes.toString().padStart(2, '0');\n\n\treturn (\n\t\t<div className=\"mt-3 flex items-center gap-6 border-border-base border-t pt-3\">\n\t\t\t<TimeIcon color=\"white\" size=\"xs\" />\n\n\t\t\t<div className=\"flex flex-1 items-center justify-between gap-2\">\n\t\t\t\t<div className=\"w-16 [&>label]:w-16\">\n\t\t\t\t\t<NumericInput\n\t\t\t\t\t\tclassName=\"h-9 [&>input]:text-xs\"\n\t\t\t\t\t\tname=\"hours\"\n\t\t\t\t\t\tvalue={hours}\n\t\t\t\t\t\tonChange={(e) => setDraft({ hours: e.target.value, minutes })}\n\t\t\t\t\t\tonBlur={commitChange}\n\t\t\t\t\t\tonKeyDown={(e) => handleKeyDown(e, 'hours')}\n\t\t\t\t\t\tmin={0}\n\t\t\t\t\t\tmax={23}\n\t\t\t\t\t\ttabIndex={0}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<Text className=\"font-medium text-sm text-text-80\">:</Text>\n\t\t\t\t<div className=\"w-16 [&>label]:w-16\">\n\t\t\t\t\t<NumericInput\n\t\t\t\t\t\tref={minutesRef}\n\t\t\t\t\t\tclassName=\"h-9 [&>input]:text-xs\"\n\t\t\t\t\t\tname=\"minutes\"\n\t\t\t\t\t\tvalue={minutes}\n\t\t\t\t\t\tonChange={(e) => setDraft({ hours, minutes: e.target.value })}\n\t\t\t\t\t\tonBlur={commitChange}\n\t\t\t\t\t\tonKeyDown={(e) => handleKeyDown(e, 'minutes')}\n\t\t\t\t\t\tmin={0}\n\t\t\t\t\t\tmax={59}\n\t\t\t\t\t\ttabIndex={0}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n","'use client';\nimport {\n\tButton,\n\tCalendarIcon,\n\tDropdownMenu,\n\tDropdownMenuContent,\n\tDropdownMenuPortal,\n\tDropdownMenuTrigger,\n} from '@0xsequence/design-system';\nimport {\n\tdifferenceInDays,\n\tendOfDay,\n\tformat,\n\tisSameDay,\n\tstartOfDay,\n} from 'date-fns';\nimport { cn } from '../../../../../ssr';\nimport Calendar from '../calendar';\nimport { PRESET_RANGES, type RangeType } from '../expirationDateSelect';\nimport { TimeSelector } from './TimeSelector';\n\ntype CalendarDropdownProps = {\n\tselectedDate: Date;\n\tsetSelectedDate: (date: Date) => void;\n\tonSelectPreset: (range: RangeType) => void;\n\tisOpen: boolean;\n\tsetIsOpen: (isOpen: boolean) => void;\n};\n\n/**\n * Determines if the selected date matches a preset range\n */\nfunction getMatchingPreset(selectedDate: Date): RangeType | null {\n\tconst today = startOfDay(new Date());\n\tconst selectedDay = startOfDay(selectedDate);\n\tconst daysDifference = differenceInDays(selectedDay, today);\n\n\t// Check if the date matches any preset\n\tif (isSameDay(selectedDay, today)) {\n\t\treturn PRESET_RANGES.TODAY.value;\n\t}\n\tif (daysDifference === 1) {\n\t\treturn PRESET_RANGES.TOMORROW.value;\n\t}\n\tif (daysDifference === 3) {\n\t\treturn PRESET_RANGES.IN_3_DAYS.value;\n\t}\n\tif (daysDifference === 7) {\n\t\treturn PRESET_RANGES.ONE_WEEK.value;\n\t}\n\tif (daysDifference === 30) {\n\t\treturn PRESET_RANGES.ONE_MONTH.value;\n\t}\n\n\treturn null;\n}\n\nexport default function CalendarDropdown({\n\tselectedDate,\n\tsetSelectedDate,\n\tonSelectPreset,\n\tisOpen,\n\tsetIsOpen,\n}: CalendarDropdownProps) {\n\tconst matchingPreset = getMatchingPreset(selectedDate);\n\n\tconst handleTimeChange = (hours: number, minutes: number) => {\n\t\tconst newDate = new Date(selectedDate);\n\t\tnewDate.setHours(hours, minutes, 0, 0);\n\t\tsetSelectedDate(newDate);\n\t};\n\n\treturn (\n\t\t<DropdownMenu open={isOpen} onOpenChange={setIsOpen}>\n\t\t\t<DropdownMenuTrigger asChild>\n\t\t\t\t<Button\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t'h-9 flex-1 rounded-sm border-border-normal p-2 font-medium text-xs',\n\t\t\t\t\t\tisOpen && 'border-border-focus outline-1 outline-border-focus',\n\t\t\t\t\t)}\n\t\t\t\t\tvariant=\"outline\"\n\t\t\t\t\tshape=\"square\"\n\t\t\t\t\tonClick={() => setIsOpen(!isOpen)}\n\t\t\t\t>\n\t\t\t\t\t<CalendarIcon size=\"xs\" />\n\t\t\t\t\t{format(selectedDate, 'yyyy/MM/dd HH:mm')}\n\t\t\t\t</Button>\n\t\t\t</DropdownMenuTrigger>\n\t\t\t<DropdownMenuPortal>\n\t\t\t\t<DropdownMenuContent\n\t\t\t\t\tclassName=\"pointer-events-auto z-20 w-full rounded-xl border border-border-base bg-surface-neutral p-3\"\n\t\t\t\t\tsideOffset={5}\n\t\t\t\t>\n\t\t\t\t\t<div className=\"flex gap-8\">\n\t\t\t\t\t\t<div className=\"flex flex-col\">\n\t\t\t\t\t\t\t{Object.values(PRESET_RANGES).map((preset) => {\n\t\t\t\t\t\t\t\tconst isActive = matchingPreset === preset.value;\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\tkey={preset.value}\n\t\t\t\t\t\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\t\t\t\t\t\tonSelectPreset(preset.value);\n\t\t\t\t\t\t\t\t\t\t\tsetIsOpen(false);\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tvariant=\"text\"\n\t\t\t\t\t\t\t\t\t\tclassName={`w-full justify-start py-1.5 font-bold text-xs transition-colors ${\n\t\t\t\t\t\t\t\t\t\t\tisActive\n\t\t\t\t\t\t\t\t\t\t\t\t? 'text-text-100'\n\t\t\t\t\t\t\t\t\t\t\t\t: 'text-text-50 hover:text-text-80'\n\t\t\t\t\t\t\t\t\t\t}`}\n\t\t\t\t\t\t\t\t\t\ttabIndex={0}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{preset.label}\n\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<div className=\"flex flex-col\">\n\t\t\t\t\t\t\t<Calendar\n\t\t\t\t\t\t\t\tselectedDate={selectedDate}\n\t\t\t\t\t\t\t\tsetSelectedDate={(date) => {\n\t\t\t\t\t\t\t\t\tconst newDate = new Date(date);\n\t\t\t\t\t\t\t\t\tconst today = startOfDay(new Date());\n\t\t\t\t\t\t\t\t\tconst selectedDay = startOfDay(newDate);\n\n\t\t\t\t\t\t\t\t\t// If selecting today, set to end of day. Otherwise preserve current time\n\t\t\t\t\t\t\t\t\tif (isSameDay(selectedDay, today)) {\n\t\t\t\t\t\t\t\t\t\tsetSelectedDate(endOfDay(newDate));\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\tnewDate.setHours(\n\t\t\t\t\t\t\t\t\t\t\tselectedDate.getHours(),\n\t\t\t\t\t\t\t\t\t\t\tselectedDate.getMinutes(),\n\t\t\t\t\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\tsetSelectedDate(newDate);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\tmode=\"single\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<TimeSelector\n\t\t\t\t\t\t\t\tselectedDate={selectedDate}\n\t\t\t\t\t\t\t\tonTimeChange={handleTimeChange}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</DropdownMenuContent>\n\t\t\t</DropdownMenuPortal>\n\t\t</DropdownMenu>\n\t);\n}\n","'use client';\n\nimport { Skeleton, Text } from '@0xsequence/design-system';\nimport { addDays, endOfDay } from 'date-fns';\nimport { useState } from 'react';\nimport { cn } from '../../../../../../utils';\nimport CalendarDropdown from '../calendarDropdown';\n\nexport const PRESET_RANGES = {\n\tTODAY: {\n\t\tlabel: 'Today',\n\t\tvalue: 'today',\n\t\toffset: 0,\n\t},\n\tTOMORROW: {\n\t\tlabel: 'Tomorrow',\n\t\tvalue: 'tomorrow',\n\t\toffset: 1,\n\t},\n\tIN_3_DAYS: {\n\t\tlabel: 'In 3 days',\n\t\tvalue: '3_days',\n\t\toffset: 3,\n\t},\n\tONE_WEEK: {\n\t\tlabel: '1 week',\n\t\tvalue: '1_week',\n\t\toffset: 7,\n\t},\n\tONE_MONTH: {\n\t\tlabel: '1 month',\n\t\tvalue: '1_month',\n\t\toffset: 30,\n\t},\n} as const;\n\nexport type RangeType =\n\t(typeof PRESET_RANGES)[keyof typeof PRESET_RANGES]['value'];\n\ntype ExpirationDateSelectProps = {\n\tclassName?: string;\n\tdate: Date;\n\tonDateChange: (date: Date) => void;\n\tdisabled?: boolean;\n};\n\nconst ExpirationDateSelect = function ExpirationDateSelect({\n\tclassName,\n\tdate,\n\tonDateChange,\n\tdisabled,\n}: ExpirationDateSelectProps) {\n\tconst [calendarDropdownOpen, setCalendarDropdownOpen] = useState(false);\n\n\tfunction handleSelectPresetRange(range: RangeType) {\n\t\tconst presetRange = Object.values(PRESET_RANGES).find(\n\t\t\t(preset) => preset.value === range,\n\t\t);\n\n\t\tif (!presetRange) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst baseDate = new Date();\n\t\tconst targetDate =\n\t\t\tpresetRange.value === 'today'\n\t\t\t\t? baseDate\n\t\t\t\t: addDays(baseDate, presetRange.offset);\n\n\t\t// For \"today\", set to end of day. For other presets, preserve current time\n\t\tconst newDate =\n\t\t\tpresetRange.value === 'today'\n\t\t\t\t? endOfDay(targetDate)\n\t\t\t\t: (() => {\n\t\t\t\t\t\tconst preservedTimeDate = new Date(targetDate);\n\t\t\t\t\t\tpreservedTimeDate.setHours(\n\t\t\t\t\t\t\tdate.getHours(),\n\t\t\t\t\t\t\tdate.getMinutes(),\n\t\t\t\t\t\t\tdate.getSeconds(),\n\t\t\t\t\t\t\tdate.getMilliseconds(),\n\t\t\t\t\t\t);\n\t\t\t\t\t\treturn preservedTimeDate;\n\t\t\t\t\t})();\n\n\t\tonDateChange(newDate);\n\t}\n\n\tfunction handleDateValueChange(date: Date) {\n\t\tonDateChange(date);\n\t}\n\n\tif (!date) {\n\t\treturn <Skeleton className=\"mr-3 h-7 w-20 rounded-2xl\" />;\n\t}\n\n\treturn (\n\t\t<div\n\t\t\tclassName={cn(\n\t\t\t\t'relative w-full',\n\t\t\t\tdisabled && 'pointer-events-none opacity-50',\n\t\t\t)}\n\t\t>\n\t\t\t<Text\n\t\t\t\tclassName=\"w-full text-left font-body font-medium text-xs\"\n\t\t\t\tfontWeight={'medium'}\n\t\t\t\tcolor={'text100'}\n\t\t\t>\n\t\t\t\tSet expiry\n\t\t\t</Text>\n\t\t\t<div\n\t\t\t\tclassName={`${className} flex w-full items-center gap-2 rounded-sm bg-zinc-950`}\n\t\t\t>\n\t\t\t\t<CalendarDropdown\n\t\t\t\t\tselectedDate={date}\n\t\t\t\t\tsetSelectedDate={handleDateValueChange}\n\t\t\t\t\tonSelectPreset={handleSelectPresetRange}\n\t\t\t\t\tisOpen={calendarDropdownOpen}\n\t\t\t\t\tsetIsOpen={setCalendarDropdownOpen}\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</div>\n\t);\n};\n\nexport default ExpirationDateSelect;\n"],"mappings":"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"}
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
import { _n as PropertyType, gn as PropertyFilter } from "./index2.js";
|
|
2
|
+
import { TransitionStartFunction } from "react";
|
|
3
|
+
|
|
4
|
+
//#region ../node_modules/.pnpm/nuqs@2.8.6_next@16.1.1_@babel+core@7.28.5_babel-plugin-macros@3.1.0_react-dom@19.2.3_re_a1d3c3437a1ba041cab2f7bda7f7ecb4/node_modules/nuqs/dist/defs-BFMOAnmN.d.ts
|
|
5
|
+
type HistoryOptions = "replace" | "push";
|
|
6
|
+
type LimitUrlUpdates = {
|
|
7
|
+
method: "debounce";
|
|
8
|
+
timeMs: number;
|
|
9
|
+
} | {
|
|
10
|
+
method: "throttle";
|
|
11
|
+
timeMs: number;
|
|
12
|
+
};
|
|
13
|
+
type Options = {
|
|
14
|
+
/**
|
|
15
|
+
* How the query update affects page history
|
|
16
|
+
*
|
|
17
|
+
* `push` will create a new history entry, allowing to use the back/forward
|
|
18
|
+
* buttons to navigate state updates.
|
|
19
|
+
* `replace` (default) will keep the current history point and only replace
|
|
20
|
+
* the query string.
|
|
21
|
+
*/
|
|
22
|
+
history?: HistoryOptions;
|
|
23
|
+
/**
|
|
24
|
+
* Scroll to top after a query state update
|
|
25
|
+
*
|
|
26
|
+
* Defaults to `false`, unlike the Next.js router page navigation methods.
|
|
27
|
+
*/
|
|
28
|
+
scroll?: boolean;
|
|
29
|
+
/**
|
|
30
|
+
* Shallow mode (true by default) keeps query states update client-side only,
|
|
31
|
+
* meaning there won't be calls to the server.
|
|
32
|
+
*
|
|
33
|
+
* Setting it to `false` will trigger a network request to the server with
|
|
34
|
+
* the updated querystring.
|
|
35
|
+
*/
|
|
36
|
+
shallow?: boolean;
|
|
37
|
+
/**
|
|
38
|
+
* Maximum amount of time (ms) to wait between updates of the URL query string.
|
|
39
|
+
*
|
|
40
|
+
* This is to alleviate rate-limiting of the Web History API in browsers,
|
|
41
|
+
* and defaults to 50ms. Safari requires a higher value of around 120ms.
|
|
42
|
+
*
|
|
43
|
+
* Note: the value will be limited to a minimum of 50ms, anything lower
|
|
44
|
+
* will not have any effect.
|
|
45
|
+
*
|
|
46
|
+
* @deprecated use `limitUrlUpdates: { 'method': 'throttle', timeMs: number }`
|
|
47
|
+
* or use the shorthand:
|
|
48
|
+
* ```ts
|
|
49
|
+
* import { throttle } from 'nuqs'
|
|
50
|
+
*
|
|
51
|
+
* limitUrlUpdates: throttle(100) // time in ms
|
|
52
|
+
* ```
|
|
53
|
+
*/
|
|
54
|
+
throttleMs?: number;
|
|
55
|
+
/**
|
|
56
|
+
* Limit the rate of URL updates to prevent spamming the browser history,
|
|
57
|
+
* and the server if `shallow: false`.
|
|
58
|
+
*
|
|
59
|
+
* This is to alleviate rate-limiting of the Web History API in browsers,
|
|
60
|
+
* and defaults to 50ms. Safari requires a higher value of around 120ms.
|
|
61
|
+
*
|
|
62
|
+
* Note: the value will be limited to a minimum of 50ms, anything lower
|
|
63
|
+
* will not have any effect.
|
|
64
|
+
*
|
|
65
|
+
* If both `throttleMs` and `limitUrlUpdates` are set, `limitUrlUpdates` will
|
|
66
|
+
* take precedence.
|
|
67
|
+
*/
|
|
68
|
+
limitUrlUpdates?: LimitUrlUpdates;
|
|
69
|
+
/**
|
|
70
|
+
* In RSC frameworks, opt-in to observing Server Component loading states when
|
|
71
|
+
* doing non-shallow updates by passing a `startTransition` from the
|
|
72
|
+
* `React.useTransition()` hook.
|
|
73
|
+
*
|
|
74
|
+
* In other frameworks, navigation events triggered by a query update can also
|
|
75
|
+
* be wrapped in a transition this way (e.g. `React.startTransition`).
|
|
76
|
+
*/
|
|
77
|
+
startTransition?: TransitionStartFunction;
|
|
78
|
+
/**
|
|
79
|
+
* Clear the key-value pair from the URL query string when setting the state
|
|
80
|
+
* to the default value.
|
|
81
|
+
*
|
|
82
|
+
* Defaults to `true` to keep URLs clean.
|
|
83
|
+
*
|
|
84
|
+
* Set it to `false` to keep backwards-compatiblity when the default value
|
|
85
|
+
* changes (prefer explicit URLs whose meaning don't change).
|
|
86
|
+
*/
|
|
87
|
+
clearOnDefault?: boolean;
|
|
88
|
+
};
|
|
89
|
+
//#endregion
|
|
90
|
+
//#region src/react/hooks/ui/url-state/filter-state.d.ts
|
|
91
|
+
/**
|
|
92
|
+
* URL-safe price filter type that uses strings instead of BigInt
|
|
93
|
+
* to avoid JSON serialization issues with URL state management
|
|
94
|
+
*/
|
|
95
|
+
interface UrlPriceFilter {
|
|
96
|
+
contractAddress: string;
|
|
97
|
+
min?: string;
|
|
98
|
+
max?: string;
|
|
99
|
+
}
|
|
100
|
+
interface StringFilterValues {
|
|
101
|
+
type: PropertyType.STRING;
|
|
102
|
+
values: string[];
|
|
103
|
+
}
|
|
104
|
+
interface IntFilterValues {
|
|
105
|
+
type: PropertyType.INT;
|
|
106
|
+
min: number;
|
|
107
|
+
max: number;
|
|
108
|
+
}
|
|
109
|
+
type FilterValues = StringFilterValues | IntFilterValues;
|
|
110
|
+
declare function useFilterState(): {
|
|
111
|
+
serialize: {
|
|
112
|
+
(values: Partial<{
|
|
113
|
+
filters: PropertyFilter[] | null;
|
|
114
|
+
search: string | null;
|
|
115
|
+
listedOnly: boolean | null;
|
|
116
|
+
priceFilter: boolean | null;
|
|
117
|
+
priceFilters: UrlPriceFilter[] | null;
|
|
118
|
+
}>): string;
|
|
119
|
+
(base: string | URLSearchParams | URL, values: Partial<{
|
|
120
|
+
filters: PropertyFilter[] | null;
|
|
121
|
+
search: string | null;
|
|
122
|
+
listedOnly: boolean | null;
|
|
123
|
+
priceFilter: boolean | null;
|
|
124
|
+
priceFilters: UrlPriceFilter[] | null;
|
|
125
|
+
}> | null): string;
|
|
126
|
+
};
|
|
127
|
+
getFilter: (name: string) => PropertyFilter | undefined;
|
|
128
|
+
getFilterValues: (name: string) => FilterValues | undefined;
|
|
129
|
+
isFilterActive: (name: string) => boolean;
|
|
130
|
+
isStringValueSelected: (name: string, value: string) => boolean;
|
|
131
|
+
isIntFilterActive: (name: string) => boolean;
|
|
132
|
+
getIntFilterRange: (name: string) => [number, number] | undefined;
|
|
133
|
+
deleteFilter: (name: string) => void;
|
|
134
|
+
toggleStringFilterValue: (name: string, value: string) => void;
|
|
135
|
+
setIntFilterValue: (name: string, min: number, max: number) => void;
|
|
136
|
+
setPriceFilter: (contractAddress: string, min?: string, max?: string) => void;
|
|
137
|
+
getPriceFilter: (contractAddress: string) => UrlPriceFilter | undefined;
|
|
138
|
+
clearPriceFilters: () => void;
|
|
139
|
+
clearAllFilters: () => void;
|
|
140
|
+
filterOptions: PropertyFilter[];
|
|
141
|
+
searchText: string;
|
|
142
|
+
showListedOnly: boolean;
|
|
143
|
+
showPriceFilter: boolean;
|
|
144
|
+
priceFilters: UrlPriceFilter[];
|
|
145
|
+
setFilterOptions: (value: PropertyFilter[] | ((old: PropertyFilter[]) => PropertyFilter[] | null) | null, options?: Options) => Promise<URLSearchParams>;
|
|
146
|
+
setSearchText: (value: string | ((old: string) => string | null) | null, options?: Options) => Promise<URLSearchParams>;
|
|
147
|
+
setShowListedOnly: (value: boolean | ((old: boolean) => boolean | null) | null, options?: Options) => Promise<URLSearchParams>;
|
|
148
|
+
setShowPriceFilter: (value: boolean | ((old: boolean) => boolean | null) | null, options?: Options) => Promise<URLSearchParams>;
|
|
149
|
+
setPriceFilters: (value: UrlPriceFilter[] | ((old: UrlPriceFilter[]) => UrlPriceFilter[] | null) | null, options?: Options) => Promise<URLSearchParams>;
|
|
150
|
+
};
|
|
151
|
+
//#endregion
|
|
152
|
+
export { useFilterState as n, UrlPriceFilter as t };
|
|
153
|
+
//# sourceMappingURL=filter-state.d.ts.map
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { gn as PropertyFilter, mt as GetFiltersArgs } from "./index2.js";
|
|
2
|
+
import { W as SdkQueryParams, X as WithRequired, it as WithOptionalParams } from "./create-config.js";
|
|
3
|
+
import * as _tanstack_react_query432 from "@tanstack/react-query";
|
|
4
|
+
|
|
5
|
+
//#region src/react/queries/marketplace/filters.d.ts
|
|
6
|
+
type FetchFiltersParams = GetFiltersArgs;
|
|
7
|
+
/**
|
|
8
|
+
* Fetches collection filters from the Metadata API with optional marketplace filtering
|
|
9
|
+
*/
|
|
10
|
+
declare function fetchFilters(params: WithRequired<FiltersQueryOptions, 'chainId' | 'collectionAddress' | 'config'>): Promise<PropertyFilter[]>;
|
|
11
|
+
type FiltersQueryOptions = SdkQueryParams<FetchFiltersParams>;
|
|
12
|
+
declare function getFiltersQueryKey(params: FiltersQueryOptions): readonly ["marketplace", string, {
|
|
13
|
+
showAllFilters: boolean | undefined;
|
|
14
|
+
chainId: number | undefined;
|
|
15
|
+
collectionAddress: `0x${string}` | undefined;
|
|
16
|
+
excludeProperties: undefined;
|
|
17
|
+
excludePropertyValues: boolean | undefined;
|
|
18
|
+
}];
|
|
19
|
+
declare function filtersQueryOptions(params: WithOptionalParams<WithRequired<FiltersQueryOptions, 'chainId' | 'collectionAddress' | 'config'>>): _tanstack_react_query432.OmitKeyof<_tanstack_react_query432.UseQueryOptions<PropertyFilter[], Error, PropertyFilter[], readonly unknown[]>, "queryFn"> & {
|
|
20
|
+
queryFn?: _tanstack_react_query432.QueryFunction<PropertyFilter[], readonly unknown[], never> | undefined;
|
|
21
|
+
} & {
|
|
22
|
+
queryKey: readonly unknown[] & {
|
|
23
|
+
[dataTagSymbol]: PropertyFilter[];
|
|
24
|
+
[dataTagErrorSymbol]: Error;
|
|
25
|
+
};
|
|
26
|
+
};
|
|
27
|
+
//#endregion
|
|
28
|
+
export { getFiltersQueryKey as a, filtersQueryOptions as i, FiltersQueryOptions as n, fetchFilters as r, FetchFiltersParams as t };
|
|
29
|
+
//# sourceMappingURL=filters.d.ts.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
//#region src/react/ui/images/marketplaces/foundation.png
|
|
2
|
+
var foundation_default = "data:image/png;base64,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";
|
|
3
|
+
|
|
4
|
+
//#endregion
|
|
5
|
+
export { foundation_default as default };
|
|
6
|
+
//# sourceMappingURL=foundation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"foundation.js","names":[],"sources":["../src/react/ui/images/marketplaces/foundation.png"],"sourcesContent":["\"data:image/png;base64,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\""],"mappings":";yBAAA"}
|