diff --git a/components/buttons/Bid.tsx b/components/buttons/Bid.tsx index 63026f822..a8f5b35a9 100644 --- a/components/buttons/Bid.tsx +++ b/components/buttons/Bid.tsx @@ -89,6 +89,7 @@ const Bid: FC = ({ currencies={bidCurrencies} oracleEnabled={marketplaceChain.oracleBidsEnabled} chainId={marketplaceChain.id} + orderKind={marketplaceChain.seaportV15 ? 'seaport' : 'seaport-v1.6'} onClose={(data, stepData, currentStep) => { if (mutate && currentStep == BidStep.Complete) mutate() }} diff --git a/components/buttons/List.tsx b/components/buttons/List.tsx index a9779432d..ea6be9dc9 100644 --- a/components/buttons/List.tsx +++ b/components/buttons/List.tsx @@ -74,6 +74,7 @@ const List: FC = ({ feesBps={orderFees} currencies={listingCurrencies} chainId={marketplaceChain.id} + orderKind={marketplaceChain.seaportV15 ? 'seaport' : 'seaport-v1.6'} onClose={(data, stepData, currentStep) => { if (mutate && currentStep == ListStep.Complete) mutate() }} diff --git a/components/collections/TokenCard.tsx b/components/collections/TokenCard.tsx index 04b88daf9..7cf0ffcab 100644 --- a/components/collections/TokenCard.tsx +++ b/components/collections/TokenCard.tsx @@ -192,6 +192,7 @@ export default ({ description: 'Request to refresh this token was accepted.', }) }} + disableOnChainRendering={true} /> diff --git a/components/portfolio/PortfolioTokenCard.tsx b/components/portfolio/PortfolioTokenCard.tsx index 578ab0080..0a9b5b09d 100644 --- a/components/portfolio/PortfolioTokenCard.tsx +++ b/components/portfolio/PortfolioTokenCard.tsx @@ -246,6 +246,7 @@ export default ({ description: 'Request to refresh this token was accepted.', }) }} + disableOnChainRendering={true} /> diff --git a/components/token/FullscreenMedia.tsx b/components/token/FullscreenMedia.tsx index 2b52d8bfc..fc22154c9 100644 --- a/components/token/FullscreenMedia.tsx +++ b/components/token/FullscreenMedia.tsx @@ -121,6 +121,7 @@ const FullscreenMedia: FC = ({ token }) => { height: 'auto', padding: '4px', }} + disableOnChainRendering={true} /> diff --git a/package.json b/package.json index 44b8a2335..763bae831 100644 --- a/package.json +++ b/package.json @@ -29,7 +29,7 @@ "@radix-ui/react-toggle-group": "^1.0.1", "@radix-ui/react-tooltip": "1.0.6", "@rainbow-me/rainbowkit": "2.1.2", - "@reservoir0x/reservoir-kit-ui": "^2.7.24", + "@reservoir0x/reservoir-kit-ui": "^2.7.32", "@sentry/nextjs": "^7.85.0", "@tanstack/react-query": "5.20.2", "@types/uuid": "^9.0.1", diff --git a/pages/[chain]/asset/[assetId].tsx b/pages/[chain]/asset/[assetId].tsx index dc94a36ba..20ea8000b 100644 --- a/pages/[chain]/asset/[assetId].tsx +++ b/pages/[chain]/asset/[assetId].tsx @@ -378,6 +378,7 @@ const IndexPage: NextPage = ({ assetId, ssr }) => { description: 'Request to refresh this token was accepted.', }) }} + disableOnChainRendering={true} /> diff --git a/public/icons/nebula-icon-dark.svg b/public/icons/nebula-icon-dark.svg index e27de9cd6..a8e597e46 100644 --- a/public/icons/nebula-icon-dark.svg +++ b/public/icons/nebula-icon-dark.svg @@ -1,14 +1,14 @@ - - + + - - + + - + - + diff --git a/public/icons/nebula-icon-light.svg b/public/icons/nebula-icon-light.svg index 3cd29a4e0..12c708051 100644 --- a/public/icons/nebula-icon-light.svg +++ b/public/icons/nebula-icon-light.svg @@ -1,14 +1,14 @@ - - + + - - + + - + - + diff --git a/public/icons/zero-icon-dark.svg b/public/icons/zero-icon-dark.svg new file mode 100644 index 000000000..c192580fe --- /dev/null +++ b/public/icons/zero-icon-dark.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/public/icons/zero-icon-light.svg b/public/icons/zero-icon-light.svg new file mode 100644 index 000000000..9052ff475 --- /dev/null +++ b/public/icons/zero-icon-light.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/utils/chains.ts b/utils/chains.ts index f7aa2ebf0..c8bbeb86b 100644 --- a/utils/chains.ts +++ b/utils/chains.ts @@ -66,6 +66,7 @@ export type ReservoirChain = Chain & { oracleBidsEnabled?: boolean checkPollingInterval?: number paperContractId?: string + seaportV15?: boolean } const nativeCurrencyBase = { @@ -251,6 +252,7 @@ export default [ coingeckoId: 'binancecoin', oracleBidsEnabled: true, checkPollingInterval: reservoirChains.opBnb.checkPollingInterval, + seaportV15: true, }, { ...customChains.ancient8, @@ -262,6 +264,7 @@ export default [ coingeckoId: 'ethereum', oracleBidsEnabled: true, checkPollingInterval: reservoirChains.ancient8.checkPollingInterval, + seaportV15: true, }, { ...avalanche, @@ -301,6 +304,7 @@ export default [ community: process.env.NEXT_PUBLIC_LINEA_COMMUNITY, oracleBidsEnabled: true, checkPollingInterval: reservoirChains.linea.checkPollingInterval, + seaportV15: true, }, { ...polygonZkEvm, @@ -315,6 +319,7 @@ export default [ community: process.env.NEXT_PUBLIC_POLYGON_ZKEVM_COMMUNITY, oracleBidsEnabled: true, checkPollingInterval: reservoirChains.polygonZkEvm.checkPollingInterval, + seaportV15: true, }, { ...zkSync, @@ -330,6 +335,7 @@ export default [ community: process.env.NEXT_PUBLIC_ZKSYNC_COMMUNITY, oracleBidsEnabled: true, checkPollingInterval: reservoirChains.zkSync.checkPollingInterval, + seaportV15: true, }, { ...scroll, @@ -345,6 +351,7 @@ export default [ community: process.env.NEXT_PUBLIC_SCROLL_COMMUNITY, oracleBidsEnabled: true, checkPollingInterval: reservoirChains.scroll.checkPollingInterval, + seaportV15: true, }, { ...customChains.apexPop, @@ -360,6 +367,7 @@ export default [ community: process.env.NEXT_PUBLIC_APEX_COMMUNITY, oracleBidsEnabled: true, checkPollingInterval: reservoirChains.apexPop.checkPollingInterval, + seaportV15: true, }, { ...customChains.blast, @@ -390,6 +398,7 @@ export default [ community: process.env.NEXT_PUBLIC_ASTAR_ZKEVM_COMMUNITY, oracleBidsEnabled: true, checkPollingInterval: reservoirChains.astarZkEVM.checkPollingInterval, + seaportV15: true, }, { ...customChains.redstone, @@ -405,6 +414,7 @@ export default [ community: process.env.NEXT_PUBLIC_REDSTONE_COMMUNITY, oracleBidsEnabled: true, checkPollingInterval: reservoirChains.redstone.checkPollingInterval, + seaportV15: true, }, { ...customChains.degen, @@ -420,6 +430,7 @@ export default [ community: process.env.NEXT_PUBLIC_DEGEN_COMMUNITY, oracleBidsEnabled: true, checkPollingInterval: reservoirChains.degen.checkPollingInterval, + seaportV15: true, }, { ...customChains.xai, @@ -469,6 +480,7 @@ export default [ ], oracleBidsEnabled: true, checkPollingInterval: reservoirChains.nebula.checkPollingInterval, + seaportV15: true, }, { ...customChains.cyber, @@ -499,6 +511,7 @@ export default [ community: process.env.NEXT_PUBLIC_BITLAYER_COMMUNITY, oracleBidsEnabled: true, checkPollingInterval: reservoirChains.bitlayer.checkPollingInterval, + seaportV15: true, }, { ...customChains.sei, @@ -604,4 +617,17 @@ export default [ oracleBidsEnabled: true, checkPollingInterval: reservoirChains.flow.checkPollingInterval, }, + { + ...customChains.zero, + name: 'Zero', + lightIconUrl: '/icons/zero-icon-light.svg', + darkIconUrl: '/icons/zero-icon-dark.svg', + reservoirBaseUrl: reservoirChains.zero.baseApiUrl, + proxyApi: '/api/reservoir/zero', + routePrefix: 'zero', + apiKey: process.env.RESERVOIR_API_KEY, + coingeckoId: 'ethereum', + oracleBidsEnabled: true, + checkPollingInterval: reservoirChains.zero.checkPollingInterval, + }, ] as ReservoirChain[] diff --git a/utils/paymentTokens.ts b/utils/paymentTokens.ts index 82175568f..116e24f09 100644 --- a/utils/paymentTokens.ts +++ b/utils/paymentTokens.ts @@ -797,7 +797,7 @@ export const chainPaymentTokensMap = { }, { chainId: 33139, - address: '0x8643a49363e80c7a15790703b915d1b0b6b71d56', + address: '0x48b62137edfa95a428d35c09e44256a739f6b557', symbol: 'WAPE', name: 'WAPE', decimals: 18, @@ -815,7 +815,7 @@ export const chainPaymentTokensMap = { }, { chainId: 360, - address: '0x48a9b22b80f566e88f0f1dcc90ea15a8a3bae8a4', + address: '0x4200000000000000000000000000000000000006', symbol: 'WETH', name: 'Shape WETH', }, @@ -856,4 +856,170 @@ export const chainPaymentTokensMap = { decimals: 18, }, ], + + // Apex + 70700: [ + { + chainId: 70700, + address: zeroAddress, + symbol: 'ETH', + name: 'Apex ETH', + decimals: 18, + }, + { + chainId: 70701, + address: '0x77684A04145a5924eFCE0D92A7c4a2A2E8C359de', + symbol: 'WETH', + name: 'Apex WETH', + decimals: 18, + }, + { + chainId: 1, + address: zeroAddress, + symbol: 'ETH', + name: 'ETH', + decimals: 18, + }, + { + chainId: 10, + address: zeroAddress, + symbol: 'Optimism ETH', + name: 'Optimism ETH', + decimals: 18, + }, + { + chainId: 42161, + address: zeroAddress, + symbol: 'ETH', + name: 'Arbitrum ETH', + decimals: 18, + }, + { + chainId: 7777777, + address: zeroAddress, + symbol: 'ETH', + name: 'Zora ETH', + decimals: 18, + }, + { + chainId: 8453, + address: zeroAddress, + symbol: 'ETH', + name: 'Base ETH', + decimals: 18, + }, + { + chainId: 42170, + address: zeroAddress, + symbol: 'ETH', + name: 'Arbitrum Nova ETH', + decimals: 18, + }, + { + chainId: 70701, + address: zeroAddress, + symbol: 'ETH', + name: 'Boss ETH', + decimals: 18, + }, + { + chainId: 81457, + address: zeroAddress, + symbol: 'ETH', + name: 'Blast ETH', + decimals: 18, + }, + ], + + // Boss + 70701: [ + { + chainId: 70701, + address: zeroAddress, + symbol: 'ETH', + name: 'Boss ETH', + decimals: 18, + }, + { + chainId: 70701, + address: '0x48a9b22b80f566e88f0f1dcc90ea15a8a3bae8a4', + symbol: 'WETH', + name: 'Boss WETH', + decimals: 18, + }, + { + chainId: 1, + address: zeroAddress, + symbol: 'ETH', + name: 'ETH', + decimals: 18, + }, + { + chainId: 10, + address: zeroAddress, + symbol: 'Optimism ETH', + name: 'Optimism ETH', + decimals: 18, + }, + { + chainId: 42161, + address: zeroAddress, + symbol: 'ETH', + name: 'Arbitrum ETH', + decimals: 18, + }, + { + chainId: 7777777, + address: zeroAddress, + symbol: 'ETH', + name: 'Zora ETH', + decimals: 18, + }, + { + chainId: 8453, + address: zeroAddress, + symbol: 'ETH', + name: 'Base ETH', + decimals: 18, + }, + { + chainId: 42170, + address: zeroAddress, + symbol: 'ETH', + name: 'Arbitrum Nova ETH', + decimals: 18, + }, + { + chainId: 70700, + address: zeroAddress, + symbol: 'ETH', + name: 'Apex ETH', + decimals: 18, + }, + { + chainId: 81457, + address: zeroAddress, + symbol: 'ETH', + name: 'Blast ETH', + decimals: 18, + }, + ], + + // Zero + 543210: [ + { + chainId: 543210, + address: zeroAddress, + symbol: 'ETH', + name: 'ETH', + decimals: 18, + }, + { + chainId: 543210, + address: '0xac98b49576b1c892ba6bfae08fe1bb0d80cf599c', + symbol: 'WETH', + name: 'WETH', + decimals: 18, + }, + ], } as Record diff --git a/utils/wrappedContracts.ts b/utils/wrappedContracts.ts index 4a1d73082..0f7ea5575 100644 --- a/utils/wrappedContracts.ts +++ b/utils/wrappedContracts.ts @@ -29,10 +29,11 @@ const wrappedContracts: Record = { 646: '0x48a9b22b80f566e88f0f1dcc90ea15a8a3bae8a4', // flow previewnet 984122: '0xd5eace1274dbf70960714f513db207433615a263', // forma 8333: '0x48a9b22b80f566e88f0f1dcc90ea15a8a3bae8a4', // b3 - 33139: '0x8643a49363e80c7a15790703b915d1b0b6b71d56', // apechain - 360: '0x48a9b22b80f566e88f0f1dcc90ea15a8a3bae8a4', // shape 2911: '0x2b1499d631bffb29eed7749b12cba754273d6da7', // hychain + 33139: '0x48b62137edfa95a428d35c09e44256a739f6b557', // apechain + 360: '0x4200000000000000000000000000000000000006', // shape 747: '0xd3bf53dac106a0290b0483ecbc89d40fcc961f3e', // flow + 543210: '0xac98b49576b1c892ba6bfae08fe1bb0d80cf599c', // zero } export default wrappedContracts diff --git a/yarn.lock b/yarn.lock index b3f39a649..95b1292b3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1753,10 +1753,10 @@ dependencies: "@react-hookz/deep-equal" "^1.0.3" -"@reservoir0x/reservoir-kit-ui@^2.7.24": - version "2.7.24" - resolved "https://registry.yarnpkg.com/@reservoir0x/reservoir-kit-ui/-/reservoir-kit-ui-2.7.24.tgz#27bca8b84814ae0aac5f5947dbd7f479b6415ed3" - integrity sha512-a6+JBLpfCdlNFhxA+qXa6lbfy3sA11N0Usk08x3oa4x4YbhG47sR23p2P6D67TBelCeR74r26QHbfLBi6V8UEw== +"@reservoir0x/reservoir-kit-ui@^2.7.32": + version "2.7.32" + resolved "https://registry.yarnpkg.com/@reservoir0x/reservoir-kit-ui/-/reservoir-kit-ui-2.7.32.tgz#52482191d9f176d53e95c5b6cd0bcaa6aef5237b" + integrity sha512-O14M1IN+RscluOy9WKcoUzFCFvFNpqZ+U0XxtVwFFR8W/nJVryw4/DXKL3ozy512RK15wlnJHdOvZk9DJaQ2aA== dependencies: "@fortawesome/fontawesome-svg-core" "^6.1.1" "@fortawesome/free-solid-svg-icons" "^6.1.1" @@ -1772,7 +1772,7 @@ "@radix-ui/react-toggle-group" "1.0.4" "@radix-ui/react-tooltip" "1.0.6" "@react-hookz/web" "^19.2.0" - "@reservoir0x/reservoir-sdk" "2.4.19" + "@reservoir0x/reservoir-sdk" "2.4.26" "@stitches/react" "1.3.1-1" dayjs "^1.11.4" flatpickr "^4.6.13" @@ -1780,10 +1780,10 @@ react-flatpickr "^3.10.13" swr "2.0.1" -"@reservoir0x/reservoir-sdk@2.4.19": - version "2.4.19" - resolved "https://registry.yarnpkg.com/@reservoir0x/reservoir-sdk/-/reservoir-sdk-2.4.19.tgz#6445b0e5bb93e49a34f4c00b5dde0d496c905d06" - integrity sha512-T6gBiNhmf6ftK6jz2447f49nsTwFF1CtAf67FgEMfh5YPPqQJeThd073Y49CF9AFmj1haUHSFt/Kwl2GFDgUiQ== +"@reservoir0x/reservoir-sdk@2.4.26": + version "2.4.26" + resolved "https://registry.yarnpkg.com/@reservoir0x/reservoir-sdk/-/reservoir-sdk-2.4.26.tgz#52403acdfdd5fa4a84e2f3aa67c9072bac339890" + integrity sha512-ouDJPdvsftAeQtx2GL1dEZZOsa97trkxIhQwRsgqEC7vZUZPPAhhQ7h1S8maa9sdmbm6F81Kk38eeFL0zSvphw== dependencies: axios "^1.6.7"