From 58699583954163ed6045ff85a65d001ffad6208c Mon Sep 17 00:00:00 2001 From: benface Date: Mon, 7 Apr 2025 15:00:09 -0400 Subject: [PATCH 1/2] Update dependencies + clean up --- .github/workflows/website-integrity.yml | 10 +- Dockerfile | 4 +- package.json | 11 +- packages/og-image/package.json | 6 +- pnpm-lock.yaml | 927 +++++++++--------- turbo.json | 3 + website/package.json | 7 +- website/src/HomePage.tsx | 78 +- website/src/pages/[locale]/[...404].mdx | 6 +- website/src/pages/[locale]/index.mdx | 13 +- .../[locale]/supported-networks/[id].mdx | 17 +- website/src/pages/ar/supported-networks.mdx | 4 +- website/src/pages/cs/supported-networks.mdx | 4 +- website/src/pages/de/supported-networks.mdx | 4 +- website/src/pages/en/supported-networks.mdx | 4 +- website/src/pages/es/supported-networks.mdx | 4 +- website/src/pages/fr/supported-networks.mdx | 4 +- website/src/pages/hi/supported-networks.mdx | 4 +- website/src/pages/it/supported-networks.mdx | 4 +- website/src/pages/ja/supported-networks.mdx | 4 +- website/src/pages/ko/supported-networks.mdx | 4 +- website/src/pages/mr/supported-networks.mdx | 4 +- website/src/pages/nl/supported-networks.mdx | 4 +- website/src/pages/pl/supported-networks.mdx | 4 +- website/src/pages/pt/supported-networks.mdx | 4 +- website/src/pages/ro/supported-networks.mdx | 4 +- website/src/pages/ru/supported-networks.mdx | 4 +- website/src/pages/sv/supported-networks.mdx | 4 +- website/src/pages/tr/supported-networks.mdx | 4 +- website/src/pages/uk/supported-networks.mdx | 4 +- website/src/pages/ur/supported-networks.mdx | 4 +- website/src/pages/vi/supported-networks.mdx | 4 +- website/src/pages/zh/supported-networks.mdx | 4 +- .../{components => }/NetworkDetailsPage.tsx | 106 +- .../src/supportedNetworks/NetworksTable.tsx | 155 +++ .../components/EmptySearchResults.tsx | 34 - .../components/NetworkFilters.tsx | 38 - .../components/NetworkPage.tsx | 111 --- .../components/NetworkRow.tsx | 52 - .../components/NetworksTable.tsx | 52 - .../components/SkeletonRow.tsx | 31 - .../src/supportedNetworks/components/index.ts | 7 - website/src/supportedNetworks/index.tsx | 112 +-- website/src/supportedNetworks/utils.ts | 56 +- 44 files changed, 843 insertions(+), 1081 deletions(-) rename website/src/supportedNetworks/{components => }/NetworkDetailsPage.tsx (58%) create mode 100644 website/src/supportedNetworks/NetworksTable.tsx delete mode 100644 website/src/supportedNetworks/components/EmptySearchResults.tsx delete mode 100644 website/src/supportedNetworks/components/NetworkFilters.tsx delete mode 100644 website/src/supportedNetworks/components/NetworkPage.tsx delete mode 100644 website/src/supportedNetworks/components/NetworkRow.tsx delete mode 100644 website/src/supportedNetworks/components/NetworksTable.tsx delete mode 100644 website/src/supportedNetworks/components/SkeletonRow.tsx delete mode 100644 website/src/supportedNetworks/components/index.ts diff --git a/.github/workflows/website-integrity.yml b/.github/workflows/website-integrity.yml index 908922253fb6..9b2b5bea0619 100644 --- a/.github/workflows/website-integrity.yml +++ b/.github/workflows/website-integrity.yml @@ -23,14 +23,8 @@ jobs: - name: Set up env uses: the-guild-org/shared-config/setup@v1 - - name: Fetch remote docs - run: cd website && pnpm fetch-remote-docs - - - name: Fetch API reference - run: cd website && pnpm fetch-api-reference - - - name: Fix pages structure - run: cd website && pnpm fix-pages-structure + - name: Run pre-build scripts + run: pnpm prebuild:ci - name: Build run: pnpm build diff --git a/Dockerfile b/Dockerfile index c657bb3612b4..e05fac2a3a5d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -18,9 +18,7 @@ WORKDIR /app COPY . ./ RUN pnpm install --frozen-lockfile -RUN cd website && pnpm fetch-remote-docs -RUN cd website && pnpm fetch-api-reference -RUN cd website && pnpm fix-pages-structure +RUN pnpm prebuild:ci RUN pnpm build FROM nginx:1.16.0-alpine diff --git a/package.json b/package.json index 36d2d6f64dbc..0149ab836b40 100644 --- a/package.json +++ b/package.json @@ -2,10 +2,11 @@ "name": "graph-docs", "private": true, "version": "1.0.0", - "packageManager": "pnpm@10.7.0", + "packageManager": "pnpm@10.8.0", "scripts": { "dev": "turbo run dev", "build": "NODE_OPTIONS='--max_old_space_size=8192' turbo run build", + "prebuild:ci": "turbo run prebuild:ci", "check": "pnpm typecheck && pnpm lint && pnpm prettier:check", "check:fix": "pnpm lint:fix; pnpm prettier", "lint": "eslint . --ignore-path .gitignore --max-warnings 0", @@ -20,9 +21,9 @@ }, "devDependencies": { "@edgeandnode/eslint-config": "^2.0.3", - "@types/node": "^22.13.17", + "@types/node": "^22.14.0", "eslint": "^8.57.1", - "eslint-plugin-mdx": "^3.3.1", + "eslint-plugin-mdx": "^3.4.0", "prettier": "^3.5.3", "prettier-plugin-tailwindcss": "^0.6.11", "remark-frontmatter": "^5.0.0", @@ -30,8 +31,8 @@ "remark-lint-heading-increment": "^4.0.1", "remark-lint-no-heading-punctuation": "^4.0.1", "remark-lint-restrict-elements": "workspace:*", - "turbo": "^2.4.4", - "typescript": "^5.8.2" + "turbo": "^2.5.0", + "typescript": "^5.8.3" }, "resolutions": { "@babel/core": "7.26.7" diff --git a/packages/og-image/package.json b/packages/og-image/package.json index 8dd32aae7a1c..19920d76b0bc 100644 --- a/packages/og-image/package.json +++ b/packages/og-image/package.json @@ -16,13 +16,13 @@ "yoga-wasm-web": "^0.3.3" }, "devDependencies": { - "@cloudflare/workers-types": "^4.20250327.0", + "@cloudflare/workers-types": "^4.20250407.0", "@types/react": "^18.3.20", "jest-image-snapshot": "^6.4.0", "tsx": "^4.19.3", - "typescript": "^5.8.2", + "typescript": "^5.8.3", "vitest": "^2.1.9", - "wrangler": "^3.114.3" + "wrangler": "^3.114.4" }, "sideEffects": false } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3ac9ead7f8d7..6887381e3398 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -13,16 +13,16 @@ importers: devDependencies: '@edgeandnode/eslint-config': specifier: ^2.0.3 - version: 2.0.3(eslint@8.57.1)(typescript@5.8.2) + version: 2.0.3(eslint@8.57.1)(typescript@5.8.3) '@types/node': - specifier: ^22.13.17 - version: 22.13.17 + specifier: ^22.14.0 + version: 22.14.0 eslint: specifier: ^8.57.1 version: 8.57.1 eslint-plugin-mdx: - specifier: ^3.3.1 - version: 3.3.1(eslint@8.57.1) + specifier: ^3.4.0 + version: 3.4.0(eslint@8.57.1) prettier: specifier: ^3.5.3 version: 3.5.3 @@ -45,11 +45,11 @@ importers: specifier: workspace:* version: link:packages/remark-lint-restrict-elements turbo: - specifier: ^2.4.4 - version: 2.4.4 + specifier: ^2.5.0 + version: 2.5.0 typescript: - specifier: ^5.8.2 - version: 5.8.2 + specifier: ^5.8.3 + version: 5.8.3 packages/og-image: dependencies: @@ -67,8 +67,8 @@ importers: version: 0.3.3 devDependencies: '@cloudflare/workers-types': - specifier: ^4.20250327.0 - version: 4.20250327.0 + specifier: ^4.20250407.0 + version: 4.20250407.0 '@types/react': specifier: ^18.3.20 version: 18.3.20 @@ -79,14 +79,14 @@ importers: specifier: ^4.19.3 version: 4.19.3 typescript: - specifier: ^5.8.2 - version: 5.8.2 + specifier: ^5.8.3 + version: 5.8.3 vitest: specifier: ^2.1.9 version: 2.1.9(@types/node@22.14.0)(jsdom@24.1.3) wrangler: - specifier: ^3.114.3 - version: 3.114.3(@cloudflare/workers-types@4.20250327.0) + specifier: ^3.114.4 + version: 3.114.4(@cloudflare/workers-types@4.20250407.0) packages/rehype-unwrap-images: dependencies: @@ -122,22 +122,22 @@ importers: dependencies: '@docsearch/react': specifier: ^3.9.0 - version: 3.9.0(@algolia/client-search@5.23.1)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3) + version: 3.9.0(@algolia/client-search@5.23.3)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3) '@edgeandnode/common': specifier: ^7.0.4 - version: 7.0.4(hardhat@2.14.1(typescript@5.8.2)) + version: 7.0.4(hardhat@2.14.1(typescript@5.8.3)) '@edgeandnode/gds': specifier: ^6.5.12 - version: 6.5.12(@emotion/is-prop-valid@0.8.8)(@emotion/react@11.14.0(@types/react@18.3.20)(react@18.3.1))(@theme-ui/core@0.17.2(@emotion/react@11.14.0(@types/react@18.3.20)(react@18.3.1))(react@18.3.1))(@types/react-dom@18.3.6(@types/react@18.3.20))(@types/react@18.3.20)(dayjs@1.11.13)(hardhat@2.14.1(typescript@5.8.2))(next@14.2.26(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-is@18.3.1)(react@18.3.1)(theme-ui@0.17.2(@emotion/react@11.14.0(@types/react@18.3.20)(react@18.3.1))(react@18.3.1))(typescript@5.8.2) + version: 6.5.12(@emotion/is-prop-valid@0.8.8)(@emotion/react@11.14.0(@types/react@18.3.20)(react@18.3.1))(@theme-ui/core@0.17.2(@emotion/react@11.14.0(@types/react@18.3.20)(react@18.3.1))(react@18.3.1))(@types/react-dom@18.3.6(@types/react@18.3.20))(@types/react@18.3.20)(dayjs@1.11.13)(hardhat@2.14.1(typescript@5.8.3))(next@14.2.26(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-is@18.3.1)(react@18.3.1)(theme-ui@0.17.2(@emotion/react@11.14.0(@types/react@18.3.20)(react@18.3.1))(react@18.3.1))(typescript@5.8.3) '@edgeandnode/go': - specifier: ^9.4.13 - version: 9.4.13(7f99dc5aa8c93bcda610c6e8fd850d36) + specifier: ^9.4.14 + version: 9.4.14(c57f1a1cb571446cfc06a14764ef9e95) '@emotion/react': specifier: ^11.14.0 version: 11.14.0(@types/react@18.3.20)(react@18.3.1) '@graphprotocol/contracts': specifier: 6.2.1 - version: 6.2.1(typescript@5.8.2) + version: 6.2.1(typescript@5.8.3) '@pinax/graph-networks-registry': specifier: ^0.6.7 version: 0.6.7 @@ -148,8 +148,8 @@ importers: specifier: ^11.0.0 version: 11.0.0 '@readme/openapi-parser': - specifier: ^3.0.1 - version: 3.0.1(openapi-types@12.1.3) + specifier: ^3.0.2 + version: 3.0.2(openapi-types@12.1.3) fetch-har: specifier: ^11.1.1 version: 11.1.1 @@ -173,7 +173,7 @@ importers: version: 4.2.3(next@14.2.26(react-dom@18.3.1(react@18.3.1))(react@18.3.1)) nextra: specifier: ^3.3.1 - version: 3.3.1(@types/react@18.3.20)(acorn@8.14.1)(next@14.2.26(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.8.2) + version: 3.3.1(@types/react@18.3.20)(acorn@8.14.1)(next@14.2.26(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.8.3) openapi-types: specifier: ^12.1.3 version: 12.1.3 @@ -230,8 +230,8 @@ importers: specifier: ^10.4.21 version: 10.4.21(postcss@8.5.3) fast-xml-parser: - specifier: ^5.1.0 - version: 5.1.0 + specifier: ^5.2.0 + version: 5.2.0 postcss: specifier: ^8.5.3 version: 8.5.3 @@ -240,7 +240,7 @@ importers: version: 3.4.17 tsup: specifier: ^8.4.0 - version: 8.4.0(jiti@1.21.7)(postcss@8.5.3)(tsx@4.19.3)(typescript@5.8.2)(yaml@2.7.1) + version: 8.4.0(jiti@1.21.7)(postcss@8.5.3)(tsx@4.19.3)(typescript@5.8.3)(yaml@2.7.1) tsx: specifier: ^4.19.3 version: 4.19.3 @@ -273,56 +273,56 @@ packages: '@algolia/client-search': '>= 4.9.1 < 6' algoliasearch: '>= 4.9.1 < 6' - '@algolia/client-abtesting@5.23.1': - resolution: {integrity: sha512-WZ9vKwHDiTCq6/F2+KHMeojT6MuqtVVvUJorbi6zGeOokKbOeeq7+RIPEezynsfq+Tl6SjuAbOWiQ0qTpJTWQw==} + '@algolia/client-abtesting@5.23.3': + resolution: {integrity: sha512-yHI0hBwYcNPc+nJoHPTmmlP8pG6nstCEhpHaZQCDwLZhdMtNhd1hliZMCtLgNnvd1yKEgTt/ZDnTSdZLehfKdA==} engines: {node: '>= 14.0.0'} - '@algolia/client-analytics@5.23.1': - resolution: {integrity: sha512-Pr/hVwl2YN7xw0R9HS8KzG+R7IQAArdMQIqi/QYRmW6+Mst3cqGqvVJEAYOJUS5lAQ93pkAkc5ns1kFxSfWRIg==} + '@algolia/client-analytics@5.23.3': + resolution: {integrity: sha512-/70Ey+nZm4bRr2DcNrGU251YIn9lDu0g8xeP4jTCyunGRNFZ/d8hQAw9El34pcTpO1QDojJWAi6ywKIrUaks9w==} engines: {node: '>= 14.0.0'} - '@algolia/client-common@5.23.1': - resolution: {integrity: sha512-/xJtZl+A7GBNf1jkG/xsemur7JDkBWY8wh58iah1xvJxxxpi+WBYAtVkwS7Mn/D/PJFpuVNSHKkoC8+uT5jYKQ==} + '@algolia/client-common@5.23.3': + resolution: {integrity: sha512-fkpbPclIvaiyw3ADKRBCxMZhrNx/8//6DClfWGxeEiTJ0HEEYtHlqE6GjAkEJubz4v1ioCQkhZwMoFfFct2/vQ==} engines: {node: '>= 14.0.0'} - '@algolia/client-insights@5.23.1': - resolution: {integrity: sha512-tmg7ovakc0uOfp5vZv9CPLuMkIqEEn7Ra3NzU0GOpSjXTgQmcsw7QvzLQtD6u9oFPCMk+OqJ+4V/94P5M0yWSw==} + '@algolia/client-insights@5.23.3': + resolution: {integrity: sha512-TXc5Ve6QOCihWCTWY9N56CZxF1iovzpBWBUhQhy6JSiUfX3MXceV3saV+sXHQ1NVt2NKkyUfEspYHBsTrYzIDg==} engines: {node: '>= 14.0.0'} - '@algolia/client-personalization@5.23.1': - resolution: {integrity: sha512-jYsKIiCN5IlWG+F9vbrAXuXPy0u44HDYN3QrX+zfQ8Fr8cpdNHbQTuQAQfWpofhA6hYrrQ66Ms2KbXcdgkyPKw==} + '@algolia/client-personalization@5.23.3': + resolution: {integrity: sha512-JlReruxxiw9LB53jF/BmvVV+c0thiWQUHRdgtbVIEusvRaiX1IdpWJSPQExEtBQ7VFg89nP8niCzWtA34ktKSA==} engines: {node: '>= 14.0.0'} - '@algolia/client-query-suggestions@5.23.1': - resolution: {integrity: sha512-BDFiGQ6UdFsEMEigFlOAeL7VDysqf05qn+yyQUnGuOuzSbsqtlB4W6ZyZC1+jpY2tXGpGOMDh9ej2BQOoji8UQ==} + '@algolia/client-query-suggestions@5.23.3': + resolution: {integrity: sha512-GDEExFMXwx0ScE0AZUA4F6ssztdJvGcXUkdWmWyt2hbYz43ukqmlVJqPaYgGmWdjJjvTx+dNF/hcinwWuXbCug==} engines: {node: '>= 14.0.0'} - '@algolia/client-search@5.23.1': - resolution: {integrity: sha512-5aW3B0F2aALh54rn/LLSZPigA0Wbpl4EZfI8g2KmAWHM3HLQtzFhpmeiItFMUklmmHwse4s/iDmRHlBhdHfFIQ==} + '@algolia/client-search@5.23.3': + resolution: {integrity: sha512-mwofV6tGo0oHt4BPi+S5eLC3wnhOa4A1OVgPxetTxZuetod+2W4cxKavUW2v/Ma5CABXPLooXX+g9E67umELZw==} engines: {node: '>= 14.0.0'} - '@algolia/ingestion@1.23.1': - resolution: {integrity: sha512-YlS7wL1vFGd79/gDXHejfjcbLJHwh5Y9ljA6TEbsHsXeZuN8galpcMIDl9qadHJgx3PgQbwmWV87+EHGiLzXoQ==} + '@algolia/ingestion@1.23.3': + resolution: {integrity: sha512-Zxgmi7Hk4lI52YFphzzJekUqWxYxVjY2GrCpOxV+QiojvUi8Ru+knq6REcwLHFSwpwaDh2Th5pOefMpn4EkQCw==} engines: {node: '>= 14.0.0'} - '@algolia/monitoring@1.23.1': - resolution: {integrity: sha512-qD79lqsLv9G/nu6EIo3hjBBQr7rBt7QatdABT59HnQI5exbJBDMbtynu3VdrvvCfZ9XEb7j/HFbglbN7fVYKfA==} + '@algolia/monitoring@1.23.3': + resolution: {integrity: sha512-zi/IqvsmFW4E5gMaovAE4KRbXQ+LDYpPGG1nHtfuD5u3SSuQ31fT1vX2zqb6PbPTlgJMEmMk91Mbb7fIKmbQUw==} engines: {node: '>= 14.0.0'} - '@algolia/recommend@5.23.1': - resolution: {integrity: sha512-kmQtotstkZCCojfqv4//XQhy+Y5rTkNTTadiJf/KsR1wBvLMIYDQtTR+1XZdHdVaJCnvW//gJA3KL84rQ91uPg==} + '@algolia/recommend@5.23.3': + resolution: {integrity: sha512-C9TwbT1zGwULLXGSUSB+G7o/30djacPmQcsTHepvT47PVfPr2ISK/5QVtUnjMU84LEP8uNjuPUeM4ZeWVJ2iuQ==} engines: {node: '>= 14.0.0'} - '@algolia/requester-browser-xhr@5.23.1': - resolution: {integrity: sha512-BJfxcOWj3vAr3r4Oe9T3O+pg54qRZdeEmp5Lmzocog05rhfH/wgEXv/stFnuB+6MgLOOiXJNP1kdaiAHLzRZYw==} + '@algolia/requester-browser-xhr@5.23.3': + resolution: {integrity: sha512-/7oYeUhYzY0lls7WtkAURM6wy21/Wwmq9GdujW1MpoYVC0ATXXxwCiAfOpYL9xdWxLV0R3wjyD+yZEni+nboKg==} engines: {node: '>= 14.0.0'} - '@algolia/requester-fetch@5.23.1': - resolution: {integrity: sha512-YTbslSbEpuCZn15eMx8djR1jYbJdELOIfvo5xLOBeSB/bGReHAOoQ9HHopCB17F40xaPQi6CJMXWx63ImMAN4w==} + '@algolia/requester-fetch@5.23.3': + resolution: {integrity: sha512-r/4fKz4t+bSU1KdjRq+swdNvuGfJ0spV8aFTHPtcsF+1ZaN/VqmdXrTe5NkaZLSztFeMqKwZlJIVvE7VuGlFtw==} engines: {node: '>= 14.0.0'} - '@algolia/requester-node-http@5.23.1': - resolution: {integrity: sha512-Jp/5Fqx+eREpmM179LOQpyvQOdsR3Pq2aVpsuoSdQ/8o4B6v38lmrkbbMrMsNayR59QQ9VkL2ImYKBysqB4Qug==} + '@algolia/requester-node-http@5.23.3': + resolution: {integrity: sha512-UZiTNmUBQFPl3tUKuXaDd8BxEC0t0ny86wwW6XgwfM9IQf4PrzuMpvuOGIJMcCGlrNolZDEI0mcbz/tqRdKW7A==} engines: {node: '>= 14.0.0'} '@alloc/quick-lru@5.2.0': @@ -339,8 +339,8 @@ packages: resolution: {integrity: sha512-60vepv88RwcJtSHrD6MjIL6Ta3SOYbgfnkHb+ppAVK+o9mXprRtulx7VlRl3lN3bbvysAfCS7WMVfhUYemB0IQ==} engines: {node: '>= 16'} - '@arbitrum/sdk@3.7.2': - resolution: {integrity: sha512-oW2sg/a2MUc8HfvVFkasl6TY539xJ8HBjVnVEC9v31Sxnz+5Kpqpauct7zFTE4HepXUy5S7GPX8K9lq52du+Fw==} + '@arbitrum/sdk@3.7.3': + resolution: {integrity: sha512-7nyPm7032+RyjfIFpJf7EKN6EQTtjEzGGemz6NgFzEFLmKj1q+QMRVj9yYKVjIM2lPMKh7Qv+DX6emsxy/5FdQ==} engines: {node: '>=v11', npm: please-use-yarn, yarn: '>= 1.0.0'} '@asamuzakjp/css-color@3.1.1': @@ -478,8 +478,8 @@ packages: cpu: [x64] os: [win32] - '@cloudflare/workers-types@4.20250327.0': - resolution: {integrity: sha512-rkoGnSY/GgBLCuhjZMIC3mt0jjqqvL17uOK92OI4eivmE+pMFOAchowDxIWOzDyYe5vwNCakbCeIM/FrSmwGJA==} + '@cloudflare/workers-types@4.20250407.0': + resolution: {integrity: sha512-M6cB247uy32VzM/P4NpRSHNNTcPgTn+s31wBV7gD14hkA07jMGBYlEcAv1LOghLNGZ5AEvYxLxQCVSvkF7HNIw==} '@corex/deepmerge@4.0.43': resolution: {integrity: sha512-N8uEMrMPL0cu/bdboEWpQYb/0i2K5Qn8eCsxzOmxSggJbbQte7ljMRoXm917AbntqTGOzdTu+vP3KOOzoC70HQ==} @@ -539,8 +539,8 @@ packages: '@edgeandnode/common@7.0.4': resolution: {integrity: sha512-R5i6tPnmUY00nbaWKvrLlfToFciJSm7Kk5boql16f+NzZnvsk6+SxFWi7b/hmQfEbaXm74isD/yfVcLPX6h+Aw==} - '@edgeandnode/ens@2.1.3': - resolution: {integrity: sha512-WU0XfskpamhChqTai2jI6i6VY/yakb4zCBxx8YgoXekWPLsWoAl+tad9Ll7dDIsN4x9U33xXKyoM30Jpu/yEXw==} + '@edgeandnode/ens@2.1.4': + resolution: {integrity: sha512-NMpfbLCOXIjyQp4brFedwPoYgiyQsW2L0ZgNRQaAcVLnAAzfsKW0pImOWbVbXxaFACwcEZbpItlVlU/rnaZBzA==} peerDependencies: viem: ^2.21 @@ -566,8 +566,8 @@ packages: next: optional: true - '@edgeandnode/go@9.4.13': - resolution: {integrity: sha512-NUXb1Ay/4JKkD0a1VjJDlnFnUyyU0+uQ+DxZHMwTMMz6jOxAmOrszWF2PhHDDdxLrRR4rJUeypMjsl1BdLKcQA==} + '@edgeandnode/go@9.4.14': + resolution: {integrity: sha512-ZiKE3KC2GdyJaL4UOiF3O+uM6UM2QL4nDbG38vWFBvd2Ni0+p6TuiazhqhOn3fd/vh7WpmU8q1vI4zSHzAh4+w==} peerDependencies: '@edgeandnode/common': ^7.0.4 '@edgeandnode/ens': ^2.1.4 @@ -1296,8 +1296,8 @@ packages: resolution: {integrity: sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==} engines: {node: '>=14'} - '@figma/code-connect@1.3.1': - resolution: {integrity: sha512-6SQf9qzWgOsQ+L2jaKoBlJhchJBh+/Eej6dEp7XFXEdBOuJh65tNyDGNMKUuDvKMkT8AeJXvn25wsEjiw5CYNQ==} + '@figma/code-connect@1.3.2': + resolution: {integrity: sha512-z4jX5qq+QV6ZhOY51DxTN8YnZwPmy/Eve8bW8nb+tI8GF/opQeWQN9U0MU9KlsZiRkn1ENfbTKRiJ6AemUKtGw==} engines: {node: '>=18'} hasBin: true @@ -1370,8 +1370,8 @@ packages: '@hasparus/eslint-plugin@1.0.0': resolution: {integrity: sha512-Pef5tKZVNdMxkbO5RJE9KFzdN/vgMOAcZLd9gfmXZa1Th+zKMh8N+JP0p9+oVTeSH1n7MaFmuW23tBJTjzqL0w==} - '@headlessui/react@2.2.0': - resolution: {integrity: sha512-RzCEg+LXsuI7mHiSomsu/gBJSjpupm6A1qIZ5sWjd7JhARNlMiSA4kKfJpCKwU9tE+zMRterhhrP74PvfJrpXQ==} + '@headlessui/react@2.2.1': + resolution: {integrity: sha512-daiUqVLae8CKVjEVT19P/izW0aGK0GNhMSAeMlrDebKmoVZHcRRwbxzgtnEadUVDXyBsWo9/UH4KHeniO+0tMg==} engines: {node: '>=10'} peerDependencies: react: ^18 || ^19 || ^19.0.0-rc @@ -1878,8 +1878,8 @@ packages: resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} engines: {node: '>=14'} - '@pkgr/core@0.2.0': - resolution: {integrity: sha512-vsJDAkYR6qCPu+ioGScGiMYR7LvZYIXh/dlQeviqoTWNCVfKTLYD/LkNWH4Mxsv2a5vpIRc77FN5DnmK1eBggQ==} + '@pkgr/core@0.2.1': + resolution: {integrity: sha512-VzgHzGblFmUeBmmrk55zPyrQIArQN4vujc9shWytaPdB3P7qhi0cpaiKIr7tlCmFv2lYUwnLospIqjL9ZSAhhg==} engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} '@radix-ui/number@1.1.0': @@ -2580,8 +2580,8 @@ packages: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-hookz/deep-equal@3.0.3': - resolution: {integrity: sha512-SLy+NmiDpncqc2d9TR4Y4R7f8lUFOQK9WbnIq02A6wDxy+dTHfA2Np0dPvj0SFp6i1nqERLmEUe9MxPLuO/IqA==} + '@react-hookz/deep-equal@3.0.4': + resolution: {integrity: sha512-QpcSUTP1I0lI8/GvSEvclkoEGRWjbYxuUWaecxr8eJRceivGF18wHoJwaej2NYxMn7SqhKaZ9JYQvmdATiSG8A==} engines: {node: '>=18.0.0'} '@react-hookz/web@25.1.0': @@ -2872,8 +2872,8 @@ packages: resolution: {integrity: sha512-XSyaAsJkZfmMO9R4WDlVJARZgd4wlImftSkMkKclidniXA1h6DTya9iTqJenQo9mHQLh3u6kAC3CDRaIV+LbLw==} engines: {node: '>=18'} - '@readme/openapi-parser@3.0.1': - resolution: {integrity: sha512-U0Hn3bJRs8ZWn6cylNxLsieJjr5liibzn9JDuWNVvBILK5geEtJDS7S2vMbNViufGGLu08q1dvsbbYIZCSkBzw==} + '@readme/openapi-parser@3.0.2': + resolution: {integrity: sha512-KVe/X6664iF0TabOicim/dhIyMI3GXB9loV6ttx885PoT8GlX4HjdvoB0Re1SSn+K5oBvtYquY+CUj+mdDQQaQ==} engines: {node: '>=20'} peerDependencies: openapi-types: '>=7' @@ -3153,11 +3153,11 @@ packages: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 - '@tanstack/query-core@5.71.1': - resolution: {integrity: sha512-4+ZswCHOfJX+ikhXNoocamTUmJcHtB+Ljjz/oJkC7/eKB5IrzEwR4vEwZUENiPi+wISucJHR5TUbuuJ26w3kdQ==} + '@tanstack/query-core@5.72.0': + resolution: {integrity: sha512-aa3p6Mou++JLLxxxVX9AB9uGeRIGc0JWkw96GASXuMG8K3D+JpYbSFcqXbkGFJ1eX2jKHPurmCBoO43RjjXJCA==} - '@tanstack/react-query@5.71.1': - resolution: {integrity: sha512-6BTkaSIGT58MroI4kIGXNdx/NhirXPU+75AJObLq+WBa39WmoxhzSk0YX+hqWJ/bvqZJFxslbEU4qIHaRZq+8Q==} + '@tanstack/react-query@5.72.0': + resolution: {integrity: sha512-4Dejq/IiXrPlr/0xxj4H2GbC6KckwfTCoHWbd02+UoIV0laC9yke0d0KegmFdXJA712I6UCuy8WpPM76uuPJ+w==} peerDependencies: react: ^18 || ^19 @@ -3386,9 +3386,6 @@ packages: '@types/nlcst@2.0.3': resolution: {integrity: sha512-vSYNSDe6Ix3q+6Z7ri9lyWqgGhJTmzRjZRqyq15N0Z/1/UnVsno9G/N40NBijoYx2seFDIl0+B2mgAb9mezUCA==} - '@types/node@22.13.17': - resolution: {integrity: sha512-nAJuQXoyPj04uLgu+obZcSmsfOenUg6DxPKogeUy6yNCFwWaj5sBF8/G/pNo8EtBJjAfSVgfIlugR/BCOleO+g==} - '@types/node@22.14.0': resolution: {integrity: sha512-Kmpl+z84ILoG+3T/zQFyAJsU6EPTmOCj8/2+83fSN6djd6I4o7uOuGIH6vq3PrjY5BGitSbFuMN18j3iknubbA==} @@ -3542,78 +3539,78 @@ packages: engines: {node: '>=10'} deprecated: Please upgrade to 1.0.1 - '@unrs/resolver-binding-darwin-arm64@1.3.3': - resolution: {integrity: sha512-EpRILdWr3/xDa/7MoyfO7JuBIJqpBMphtu4+80BK1bRfFcniVT74h3Z7q1+WOc92FuIAYatB1vn9TJR67sORGw==} + '@unrs/resolver-binding-darwin-arm64@1.4.1': + resolution: {integrity: sha512-8Tv+Bsd0BjGwfEedIyor4inw8atppRxM5BdUnIt+3mAm/QXUm7Dw74CHnXpfZKXkp07EXJGiA8hStqCINAWhdw==} cpu: [arm64] os: [darwin] - '@unrs/resolver-binding-darwin-x64@1.3.3': - resolution: {integrity: sha512-ntj/g7lPyqwinMJWZ+DKHBse8HhVxswGTmNgFKJtdgGub3M3zp5BSZ3bvMP+kBT6dnYJLSVlDqdwOq1P8i0+/g==} + '@unrs/resolver-binding-darwin-x64@1.4.1': + resolution: {integrity: sha512-X8c3PhWziEMKAzZz+YAYWfwawi5AEgzy/hmfizAB4C70gMHLKmInJcp1270yYAOs7z07YVFI220pp50z24Jk3A==} cpu: [x64] os: [darwin] - '@unrs/resolver-binding-freebsd-x64@1.3.3': - resolution: {integrity: sha512-l6BT8f2CU821EW7U8hSUK8XPq4bmyTlt9Mn4ERrfjJNoCw0/JoHAh9amZZtV3cwC3bwwIat+GUnrcHTG9+qixw==} + '@unrs/resolver-binding-freebsd-x64@1.4.1': + resolution: {integrity: sha512-UUr/nREy1UdtxXQnmLaaTXFGOcGxPwNIzeJdb3KXai3TKtC1UgNOB9s8KOA4TaxOUBR/qVgL5BvBwmUjD5yuVA==} cpu: [x64] os: [freebsd] - '@unrs/resolver-binding-linux-arm-gnueabihf@1.3.3': - resolution: {integrity: sha512-8ScEc5a4y7oE2BonRvzJ+2GSkBaYWyh0/Ko4Q25e/ix6ANpJNhwEPZvCR6GVRmsQAYMIfQvYLdM6YEN+qRjnAQ==} + '@unrs/resolver-binding-linux-arm-gnueabihf@1.4.1': + resolution: {integrity: sha512-e3pII53dEeS8inkX6A1ad2UXE0nuoWCqik4kOxaDnls0uJUq0ntdj5d9IYd+bv5TDwf9DSge/xPOvCmRYH+Tsw==} cpu: [arm] os: [linux] - '@unrs/resolver-binding-linux-arm-musleabihf@1.3.3': - resolution: {integrity: sha512-8qQ6l1VTzLNd3xb2IEXISOKwMGXDCzY/UNy/7SovFW2Sp0K3YbL7Ao7R18v6SQkLqQlhhqSBIFRk+u6+qu5R5A==} + '@unrs/resolver-binding-linux-arm-musleabihf@1.4.1': + resolution: {integrity: sha512-e/AKKd9gR+HNmVyDEPI/PIz2t0DrA3cyonHNhHVjrkxe8pMCiYiqhtn1+h+yIpHUtUlM6Y1FNIdivFa+r7wrEQ==} cpu: [arm] os: [linux] - '@unrs/resolver-binding-linux-arm64-gnu@1.3.3': - resolution: {integrity: sha512-v81R2wjqcWXJlQY23byqYHt9221h4anQ6wwN64oMD/WAE+FmxPHFZee5bhRkNVtzqO/q7wki33VFWlhiADwUeQ==} + '@unrs/resolver-binding-linux-arm64-gnu@1.4.1': + resolution: {integrity: sha512-vtIu34luF1jRktlHtiwm2mjuE8oJCsFiFr8hT5+tFQdqFKjPhbJXn83LswKsOhy0GxAEevpXDI4xxEwkjuXIPA==} cpu: [arm64] os: [linux] - '@unrs/resolver-binding-linux-arm64-musl@1.3.3': - resolution: {integrity: sha512-cAOx/j0u5coMg4oct/BwMzvWJdVciVauUvsd+GQB/1FZYKQZmqPy0EjJzJGbVzFc6gbnfEcSqvQE6gvbGf2N8Q==} + '@unrs/resolver-binding-linux-arm64-musl@1.4.1': + resolution: {integrity: sha512-H3PaOuGyhFXiyJd+09uPhGl4gocmhyi1BRzvsP8Lv5AQO3p3/ZY7WjV4t2NkBksm9tMjf3YbOVHyPWi2eWsNYw==} cpu: [arm64] os: [linux] - '@unrs/resolver-binding-linux-ppc64-gnu@1.3.3': - resolution: {integrity: sha512-mq2blqwErgDJD4gtFDlTX/HZ7lNP8YCHYFij2gkXPtMzrXxPW1hOtxL6xg4NWxvnj4bppppb0W3s/buvM55yfg==} + '@unrs/resolver-binding-linux-ppc64-gnu@1.4.1': + resolution: {integrity: sha512-4+GmJcaaFntCi1S01YByqp8wLMjV/FyQyHVGm0vedIhL1Vfx7uHkz/sZmKsidRwokBGuxi92GFmSzqT2O8KcNA==} cpu: [ppc64] os: [linux] - '@unrs/resolver-binding-linux-s390x-gnu@1.3.3': - resolution: {integrity: sha512-u0VRzfFYysarYHnztj2k2xr+eu9rmgoTUUgCCIT37Nr+j0A05Xk2c3RY8Mh5+DhCl2aYibihnaAEJHeR0UOFIQ==} + '@unrs/resolver-binding-linux-s390x-gnu@1.4.1': + resolution: {integrity: sha512-6RDQVCmtFYTlhy89D5ixTqo9bTQqFhvNN0Ey1wJs5r+01Dq15gPHRXv2jF2bQATtMrOfYwv+R2ZR9ew1N1N3YQ==} cpu: [s390x] os: [linux] - '@unrs/resolver-binding-linux-x64-gnu@1.3.3': - resolution: {integrity: sha512-OrVo5ZsG29kBF0Ug95a2KidS16PqAMmQNozM6InbquOfW/udouk063e25JVLqIBhHLB2WyBnixOQ19tmeC/hIg==} + '@unrs/resolver-binding-linux-x64-gnu@1.4.1': + resolution: {integrity: sha512-XpU9uzIkD86+19NjCXxlVPISMUrVXsXo5htxtuG+uJ59p5JauSRZsIxQxzzfKzkxEjdvANPM/lS1HFoX6A6QeA==} cpu: [x64] os: [linux] - '@unrs/resolver-binding-linux-x64-musl@1.3.3': - resolution: {integrity: sha512-PYnmrwZ4HMp9SkrOhqPghY/aoL+Rtd4CQbr93GlrRTjK6kDzfMfgz3UH3jt6elrQAfupa1qyr1uXzeVmoEAxUA==} + '@unrs/resolver-binding-linux-x64-musl@1.4.1': + resolution: {integrity: sha512-3CDjG/spbTKCSHl66QP2ekHSD+H34i7utuDIM5gzoNBcZ1gTO0Op09Wx5cikXnhORRf9+HyDWzm37vU1PLSM1A==} cpu: [x64] os: [linux] - '@unrs/resolver-binding-wasm32-wasi@1.3.3': - resolution: {integrity: sha512-81AnQY6fShmktQw4hWDUIilsKSdvr/acdJ5azAreu2IWNlaJOKphJSsUVWE+yCk6kBMoQyG9ZHCb/krb5K0PEA==} + '@unrs/resolver-binding-wasm32-wasi@1.4.1': + resolution: {integrity: sha512-50tYhvbCTnuzMn7vmP8IV2UKF7ITo1oihygEYq9wW2DUb/Y+QMqBHJUSCABRngATjZ4shOK6f2+s0gQX6ElENQ==} engines: {node: '>=14.0.0'} cpu: [wasm32] - '@unrs/resolver-binding-win32-arm64-msvc@1.3.3': - resolution: {integrity: sha512-X/42BMNw7cW6xrB9syuP5RusRnWGoq+IqvJO8IDpp/BZg64J1uuIW6qA/1Cl13Y4LyLXbJVYbYNSKwR/FiHEng==} + '@unrs/resolver-binding-win32-arm64-msvc@1.4.1': + resolution: {integrity: sha512-KyJiIne/AqV4IW0wyQO34wSMuJwy3VxVQOfIXIPyQ/Up6y/zi2P/WwXb78gHsLiGRUqCA9LOoCX+6dQZde0g1g==} cpu: [arm64] os: [win32] - '@unrs/resolver-binding-win32-ia32-msvc@1.3.3': - resolution: {integrity: sha512-EGNnNGQxMU5aTN7js3ETYvuw882zcO+dsVjs+DwO2j/fRVKth87C8e2GzxW1L3+iWAXMyJhvFBKRavk9Og1Z6A==} + '@unrs/resolver-binding-win32-ia32-msvc@1.4.1': + resolution: {integrity: sha512-y2NUD7pygrBolN2NoXUrwVqBpKPhF8DiSNE5oB5/iFO49r2DpoYqdj5HPb3F42fPBH5qNqj6Zg63+xCEzAD2hw==} cpu: [ia32] os: [win32] - '@unrs/resolver-binding-win32-x64-msvc@1.3.3': - resolution: {integrity: sha512-GraLbYqOJcmW1qY3osB+2YIiD62nVf2/bVLHZmrb4t/YSUwE03l7TwcDJl08T/Tm3SVhepX8RQkpzWbag/Sb4w==} + '@unrs/resolver-binding-win32-x64-msvc@1.4.1': + resolution: {integrity: sha512-hVXaObGI2lGFmrtT77KSbPQ3I+zk9IU500wobjk0+oX59vg/0VqAzABNtt3YSQYgXTC2a/LYxekLfND/wlt0yQ==} cpu: [x64] os: [win32] @@ -3661,8 +3658,8 @@ packages: peerDependencies: typescript: ^5.0.0 - '@web3icons/react@4.0.11': - resolution: {integrity: sha512-MtocleZYNRJO0Kn/ok+rABNBQ5n/sxJ2C/+SjGLD3NmZiXrWZlzGgbVhXpBFpAMt7w45lN/JSL3q22/jlTh46g==} + '@web3icons/react@4.0.12': + resolution: {integrity: sha512-uio9pkfBYucdRn0vv5UH3XHrY2jPh2YbIkVYCxmA5lnErzH8hV9zZlteLwWrjNqKwq9O4Q3r7bd18udmp7QjDw==} peerDependencies: react: ^18.2.0 @@ -3760,8 +3757,8 @@ packages: ajv@8.17.1: resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==} - algoliasearch@5.23.1: - resolution: {integrity: sha512-YgOhwpSIQjR/LrEN1FGOzEVhXTdkpfAn+MPGR1s3MQzvPvdTiGQgFDpPeIl5w/KvvXammMXTzazvaJpEie28xQ==} + algoliasearch@5.23.3: + resolution: {integrity: sha512-0JlUaY/hl3LrKvbidI5FysEi2ggAlcTHM8AHV2UsrJUXnNo8/lWBfhzc1b7o8bK3YZNiU26JtLyT9exoj5VBgA==} engines: {node: '>= 14.0.0'} ansi-align@3.0.1: @@ -4096,8 +4093,8 @@ packages: camelize@1.0.1: resolution: {integrity: sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==} - caniuse-lite@1.0.30001707: - resolution: {integrity: sha512-3qtRjw/HQSMlDWf+X79N206fepf4SOOU6SQLMaq/0KkZLmSjPxAkBOQQ+FxbHKfHmYLZFfdWsO3KA90ceHPSnw==} + caniuse-lite@1.0.30001712: + resolution: {integrity: sha512-MBqPpGYYdQ7/hfKiet9SCI+nmN5/hp4ZzveOJubl5DTAMa5oggjAuoi0Z4onBpKPFI2ePGnQuQIzF3VxDjDJig==} case@1.6.3: resolution: {integrity: sha512-mzDSXIPaFwVDvZAHqZ9VlbyF4yyXRuX6IvB06WvPYkqJVO24kX1PPhv9bfpKNFZyxYFmmgo03HUiD8iklmJYRQ==} @@ -4305,8 +4302,8 @@ packages: confbox@0.1.8: resolution: {integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==} - confbox@0.2.1: - resolution: {integrity: sha512-hkT3yDPFbs95mNCy1+7qNKC6Pro+/ibzYxtM2iqEigpf0sVw+bg4Zh9/snjsBcf990vfIsg5+1U7VyiyBb3etg==} + confbox@0.2.2: + resolution: {integrity: sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ==} consola@3.4.2: resolution: {integrity: sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA==} @@ -4713,8 +4710,8 @@ packages: dom-helpers@5.2.1: resolution: {integrity: sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==} - dompurify@3.2.4: - resolution: {integrity: sha512-ysFSFEDVduQpyhzAob/kkuJjf5zWkZD8/A9ywSp1byueyuCfHamrCBa14/Oc2iiB0e51B+NpxSl5gmzn+Ms/mg==} + dompurify@3.2.5: + resolution: {integrity: sha512-mLPd29uoRe9HpvwP2TxClGQBzGXeEC/we/q+bFlmPPmj2p2Ugl3r6ATu/UU1v77DXNcehiBg9zsr1dREyA/dJQ==} dotenv@14.3.2: resolution: {integrity: sha512-vwEppIphpFdvaMCaHfCEv9IgwcxMljMw2TnAQBB4VWPvzXQLTb82jwmdOKzlEVUL3gNFT4l4TPKO+Bn+sqcrVQ==} @@ -4740,8 +4737,8 @@ packages: ee-first@1.1.1: resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} - electron-to-chromium@1.5.129: - resolution: {integrity: sha512-JlXUemX4s0+9f8mLqib/bHH8gOHf5elKS6KeWG3sk3xozb/JTq/RLXIv8OKUWiK4Ah00Wm88EFj5PYkFr4RUPA==} + electron-to-chromium@1.5.132: + resolution: {integrity: sha512-QgX9EBvWGmvSRa74zqfnG7+Eno0Ak0vftBll0Pt2/z5b3bEGYL6OUXLgKPtvx73dn3dvwrlyVkjPKRRlhLYTEg==} elliptic@6.5.4: resolution: {integrity: sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==} @@ -4880,8 +4877,8 @@ packages: eslint-plugin-import-x: optional: true - eslint-mdx@3.3.1: - resolution: {integrity: sha512-3koPGGjGOKXxWBIY0ExcMhtEGWRpbM/xrqIp6c4XDxZOMs/nIUEZKnaKZf+sAMRtqdv5Z99Nq5izWyCLoTdcGg==} + eslint-mdx@3.4.0: + resolution: {integrity: sha512-sNffDEvt3fAEkrCntX0Kk/IWhHkfp0fhQ7/n30gQuIRm/FeUjLMkKkgAwlOFqxIMD4XJ03Iidmkf18EC8zTyYw==} engines: {node: '>=18.0.0'} peerDependencies: eslint: '>=8.0.0' @@ -4927,8 +4924,8 @@ packages: peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9 - eslint-plugin-mdx@3.3.1: - resolution: {integrity: sha512-YXm2YANiJ3Sl/6AdZUeR53deGG1JI6rG9crHITR2Mtb9k8SFWRspoHetnIvaYTEfgPsvUwAwVgT1JxRoZywpTA==} + eslint-plugin-mdx@3.4.0: + resolution: {integrity: sha512-f/ot8rSp/telkW1joqe0y9XQigTrE99sQHqyqLYYVgGLtQvl54suDidepbiGsDF7Z5V9uyQPWpmY0Qu/ZMRzmg==} engines: {node: '>=18.0.0'} peerDependencies: eslint: '>=8.0.0' @@ -4939,8 +4936,8 @@ packages: peerDependencies: eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 - eslint-plugin-react@7.37.4: - resolution: {integrity: sha512-BGP0jRmfYyvOyvMoRX/uoUeW+GqNj9y16bPQzqAHf3AYII/tDs+jMN0dBVkl88/OZwNGwrVFxE7riHsXVfy/LQ==} + eslint-plugin-react@7.37.5: + resolution: {integrity: sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA==} engines: {node: '>=4'} peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 @@ -5025,8 +5022,8 @@ packages: resolution: {integrity: sha512-Y+ughcF9jSUJvncXwqRageavjrNPAI+1M/L3BI3PyLp1nmgYTGUXU6t5z1Y7OWuThoDdhPME07bQU+d5LxdJqw==} engines: {node: '>=12.0.0'} - estree-util-value-to-estree@3.3.2: - resolution: {integrity: sha512-hYH1aSvQI63Cvq3T3loaem6LW4u72F187zW4FHpTrReJSm6W66vYTFNO1vH/chmcOulp1HlAj1pxn8Ag0oXI5Q==} + estree-util-value-to-estree@3.3.3: + resolution: {integrity: sha512-Db+m1WSD4+mUO7UgMeKkAwdbfNWwIxLt48XF2oFU9emPfXkIu+k5/nlOj313v7wqtAPo0f9REhUvznFrPkG8CQ==} estree-util-visit@2.0.0: resolution: {integrity: sha512-m5KgiH85xAhhW8Wta0vShLcUvOsh3LLPI2YVwcbio1l7E09NTLL1EyMZFM1OyWowoH0skScNbhOPl4kcBgzTww==} @@ -5142,8 +5139,8 @@ packages: fast-uri@3.0.6: resolution: {integrity: sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw==} - fast-xml-parser@5.1.0: - resolution: {integrity: sha512-6fCOoEdpD/hU5fUDviXh0HE9aOiW6En0+4jeyY05F9lORwq6kaO4CrW+ke/hBKnr1pCldU8AVFITwFJEnz8O/w==} + fast-xml-parser@5.2.0: + resolution: {integrity: sha512-Uw9+Mjt4SBRud1IcaYuW/O0lW8SKKdMl5g7g24HiIuyH5fQSD+AVLybSlJtqLYEbytVFjWQa5DMGcNgeksdRBg==} hasBin: true fastify-warning@0.2.0: @@ -6145,8 +6142,8 @@ packages: markdown-table@3.0.4: resolution: {integrity: sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==} - marked@15.0.7: - resolution: {integrity: sha512-dgLIeKGLx5FwziAnsk4ONoGwHwGPJzselimvlVskE9XLN4Orv9u2VA3GWw/lYUqjfA0rUT/6fqKwfZJapP9BEg==} + marked@15.0.8: + resolution: {integrity: sha512-rli4l2LyZqpQuRve5C0rkn6pj3hT8EWPC+zkAxFTAJLxRbENfTAhEQq9itrmf1Y81QtAX5D/MYlGlIomNgj9lA==} engines: {node: '>= 18'} hasBin: true @@ -6394,8 +6391,8 @@ packages: resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} engines: {node: '>=12'} - miniflare@3.20250310.1: - resolution: {integrity: sha512-c9QPrgBUFzjL4pYvW6GIUw+NqeYlZGVHASKJqjIXB1WVsl14nYfpfHphYK8tluKaBqwA9NFyO5dC2zatJkC/mA==} + miniflare@3.20250310.2: + resolution: {integrity: sha512-Kjtr5XMvQyRQZFsqAHcgFaKccTDMlslUOugAEWhQUkEfozS/e5GAiXE9lftNW6xTWZ3DTigt+FkShBI106MHKQ==} engines: {node: '>=16.13'} hasBin: true @@ -7366,8 +7363,8 @@ packages: recharts-scale@0.4.5: resolution: {integrity: sha512-kivNFO+0OcUNu7jQquLXAxz1FIwZj8nrj+YkOKc5694NbjCvcT6aSZiIzNzd2Kul4o4rTto8QVR9lMNtxD4G1w==} - recharts@2.15.1: - resolution: {integrity: sha512-v8PUTUlyiDe56qUj82w/EDVuzEFXwEHp9/xOowGAZwfLjB9uAy3GllQVIYMWF6nU+qibx85WF75zD7AjqoT54Q==} + recharts@2.15.2: + resolution: {integrity: sha512-xv9lVztv3ingk7V3Jf05wfAZbM9Q2umJzu5t/cfnAK7LUslNrGT7LPBr74G+ok8kSCeFMaePmWMg0rcYOnczTw==} engines: {node: '>=14'} peerDependencies: react: ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 @@ -7903,8 +7900,8 @@ packages: resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==} engines: {node: '>= 0.8'} - std-env@3.8.1: - resolution: {integrity: sha512-vj5lIj3Mwf9D79hBkltk5qmkFI+biIKWS2IBxEyEU3AX1tUf7AoL8nSazCOiiqQsGKIq01SClsKEzweu34uwvA==} + std-env@3.9.0: + resolution: {integrity: sha512-UGvjygr6F6tpH7o2qyqR6QYpwraIjKSdtzyBdyytFOHmPZY917kwdwLG0RbOjWOnKmnm3PeHjaoLLMie7kPLQw==} stoppable@1.1.0: resolution: {integrity: sha512-KXDYZ9dszj6bzvnEMRYvxgeTHU74QBFL54XKtP3nyMuJ81CFYtABZ3bAzL2EdFUaEwJOBOgENyFj3R7oTzDyyw==} @@ -8056,8 +8053,8 @@ packages: symbol-tree@3.2.4: resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==} - synckit@0.10.3: - resolution: {integrity: sha512-R1urvuyiTaWfeCggqEvpDJwAlDVdsT9NM+IP//Tk2x7qHCkSvBk/fwFgw/TLAHzZlrAnnazMcRw0ZD8HlYFTEQ==} + synckit@0.11.3: + resolution: {integrity: sha512-szhWDqNNI9etJUvbZ1/cx1StnZx8yMmFxme48SwR4dty4ioSY50KEZlpv0qAfgc1fpRzuh9hBXEzoCpJ779dLg==} engines: {node: ^14.18.0 || >=16.0.0} system-architecture@0.1.0: @@ -8232,38 +8229,38 @@ packages: engines: {node: '>=18.0.0'} hasBin: true - turbo-darwin-64@2.4.4: - resolution: {integrity: sha512-5kPvRkLAfmWI0MH96D+/THnDMGXlFNmjeqNRj5grLKiry+M9pKj3pRuScddAXPdlxjO5Ptz06UNaOQrrYGTx1g==} + turbo-darwin-64@2.5.0: + resolution: {integrity: sha512-fP1hhI9zY8hv0idym3hAaXdPi80TLovmGmgZFocVAykFtOxF+GlfIgM/l4iLAV9ObIO4SUXPVWHeBZQQ+Hpjag==} cpu: [x64] os: [darwin] - turbo-darwin-arm64@2.4.4: - resolution: {integrity: sha512-/gtHPqbGQXDFhrmy+Q/MFW2HUTUlThJ97WLLSe4bxkDrKHecDYhAjbZ4rN3MM93RV9STQb3Tqy4pZBtsd4DfCw==} + turbo-darwin-arm64@2.5.0: + resolution: {integrity: sha512-p9sYq7kXH7qeJwIQE86cOWv/xNqvow846l6c/qWc26Ib1ci5W7V0sI5thsrP3eH+VA0d+SHalTKg5SQXgNQBWA==} cpu: [arm64] os: [darwin] - turbo-linux-64@2.4.4: - resolution: {integrity: sha512-SR0gri4k0bda56hw5u9VgDXLKb1Q+jrw4lM7WAhnNdXvVoep4d6LmnzgMHQQR12Wxl3KyWPbkz9d1whL6NTm2Q==} + turbo-linux-64@2.5.0: + resolution: {integrity: sha512-1iEln2GWiF3iPPPS1HQJT6ZCFXynJPd89gs9SkggH2EJsj3eRUSVMmMC8y6d7bBbhBFsiGGazwFIYrI12zs6uQ==} cpu: [x64] os: [linux] - turbo-linux-arm64@2.4.4: - resolution: {integrity: sha512-COXXwzRd3vslQIfJhXUklgEqlwq35uFUZ7hnN+AUyXx7hUOLIiD5NblL+ETrHnhY4TzWszrbwUMfe2BYWtaPQg==} + turbo-linux-arm64@2.5.0: + resolution: {integrity: sha512-bKBcbvuQHmsX116KcxHJuAcppiiBOfivOObh2O5aXNER6mce7YDDQJy00xQQNp1DhEfcSV2uOsvb3O3nN2cbcA==} cpu: [arm64] os: [linux] - turbo-windows-64@2.4.4: - resolution: {integrity: sha512-PV9rYNouGz4Ff3fd6sIfQy5L7HT9a4fcZoEv8PKRavU9O75G7PoDtm8scpHU10QnK0QQNLbE9qNxOAeRvF0fJg==} + turbo-windows-64@2.5.0: + resolution: {integrity: sha512-9BCo8oQ7BO7J0K913Czbc3tw8QwLqn2nTe4E47k6aVYkM12ASTScweXPTuaPFP5iYXAT6z5Dsniw704Ixa5eGg==} cpu: [x64] os: [win32] - turbo-windows-arm64@2.4.4: - resolution: {integrity: sha512-403sqp9t5sx6YGEC32IfZTVWkRAixOQomGYB8kEc6ZD+//LirSxzeCHCnM8EmSXw7l57U1G+Fb0kxgTcKPU/Lg==} + turbo-windows-arm64@2.5.0: + resolution: {integrity: sha512-OUHCV+ueXa3UzfZ4co/ueIHgeq9B2K48pZwIxKSm5VaLVuv8M13MhM7unukW09g++dpdrrE1w4IOVgxKZ0/exg==} cpu: [arm64] os: [win32] - turbo@2.4.4: - resolution: {integrity: sha512-N9FDOVaY3yz0YCOhYIgOGYad7+m2ptvinXygw27WPLQvcZDl3+0Sa77KGVlLSiuPDChOUEnTKE9VJwLSi9BPGQ==} + turbo@2.5.0: + resolution: {integrity: sha512-PvSRruOsitjy6qdqwIIyolv99+fEn57gP6gn4zhsHTEcCYgXPhv6BAxzAjleS8XKpo+Y582vTTA9nuqYDmbRuA==} hasBin: true tweetnacl-util@0.15.1: @@ -8331,8 +8328,8 @@ packages: engines: {node: '>=14.17'} hasBin: true - typescript@5.8.2: - resolution: {integrity: sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==} + typescript@5.8.3: + resolution: {integrity: sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==} engines: {node: '>=14.17'} hasBin: true @@ -8343,8 +8340,8 @@ packages: resolution: {integrity: sha512-z6PJ8Lml+v3ichVojCiB8toQJBuwR42ySM4ezjXIqXK3M0HczmKQ3LF4rhU55PfD99KEEXQG6yb7iOMyvYuHew==} hasBin: true - ufo@1.5.4: - resolution: {integrity: sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==} + ufo@1.6.0: + resolution: {integrity: sha512-AkgU2cV/+Xb4Uz6cic0kMZbtM42nbltnGvTVOt/8gMCbO2/z64nE47TOygh7HjgFPkUkVRBEyNFqpqi3zo+BJA==} unbox-primitive@1.1.0: resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==} @@ -8353,9 +8350,6 @@ packages: underscore@1.13.7: resolution: {integrity: sha512-GMXzWtsc57XAtguZgaQViUOzs0KTkk8ojr3/xAxXLITqf/3EMwxC0inyETfDFjH/Krbhuep0HNbbjI9i/q3F3g==} - undici-types@6.20.0: - resolution: {integrity: sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==} - undici-types@6.21.0: resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} @@ -8438,8 +8432,8 @@ packages: resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} engines: {node: '>= 0.8'} - unrs-resolver@1.3.3: - resolution: {integrity: sha512-PFLAGQzYlyjniXdbmQ3dnGMZJXX5yrl2YS4DLRfR3BhgUsE1zpRIrccp9XMOGRfIHpdFvCn/nr5N1KMVda4x3A==} + unrs-resolver@1.4.1: + resolution: {integrity: sha512-MhPB3wBI5BR8TGieTb08XuYlE8oFVEXdSAgat3psdlRyejl8ojQ8iqPcjh094qCZ1r+TnkxzP6BeCd/umfHckQ==} update-browserslist-db@1.1.3: resolution: {integrity: sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==} @@ -8543,8 +8537,8 @@ packages: victory-vendor@36.9.2: resolution: {integrity: sha512-PnpQQMuxlwYdocC8fIJqVXvkeViHYzotI+NJrCuav0ZYFoq912ZHBk3mCeuj+5/VpodOjPe1z0Fk2ihgzlXqjQ==} - viem@2.24.2: - resolution: {integrity: sha512-lUGoTHhMYlR4ktQiOrbTPmYvrMn3jKUdn2PSmB9QLICxnsQJxMkSCeGRoJFq7hi7K6PCMQgAyLMR/9J1key5cg==} + viem@2.26.0: + resolution: {integrity: sha512-Osht20EySRAcfMhCGAJaWuaREXM7y9vDloLvUTXuAfFq7JNGM5+o1wsE4LXw1KpRBrBliIAJjM+c2wMtMEvlCQ==} peerDependencies: typescript: '>=5.0.4' peerDependenciesMeta: @@ -8556,8 +8550,8 @@ packages: engines: {node: ^18.0.0 || >=20.0.0} hasBin: true - vite@5.4.16: - resolution: {integrity: sha512-Y5gnfp4NemVfgOTDQAunSD4346fal44L9mszGGY/e+qxsRT5y1sMlS/8tiQ8AFAp+MFgYNSINdfEchJiPm41vQ==} + vite@5.4.17: + resolution: {integrity: sha512-5+VqZryDj4wgCs55o9Lp+p8GE78TLVg0lasCH5xFZ4jacZjtqZa6JUw9/p0WeAojaOfncSM6v77InkFPGnvPvg==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true peerDependencies: @@ -8729,8 +8723,8 @@ packages: workerpool@6.5.1: resolution: {integrity: sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==} - wrangler@3.114.3: - resolution: {integrity: sha512-H87s4USPQhRQmN8V4Q2Fh+0ZGiuWVrVwVKoxjdgEtpR88gVQEN5Ua9C3TQDaXCppsdAFl/J4lxLoxfJaW2XFdQ==} + wrangler@3.114.4: + resolution: {integrity: sha512-7F8zF3CZmzOQLwpKOiwzu24d2c98ch4AP+Uz4L3uTXe8Bjq6g5rPjKwovg2whXJGc64X2DjTZJOAFN3KlWmscA==} engines: {node: '>=16.17.0'} hasBin: true peerDependencies: @@ -8871,6 +8865,9 @@ packages: zod@3.22.3: resolution: {integrity: sha512-EjIevzuJRiRPbVH4mGc8nApb/lVLKVpmUhAaR5R5doKGfAnGJ6Gr3CViAVjP+4FWSxCsybeWQdcgCtbX+7oZug==} + zod@3.23.8: + resolution: {integrity: sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==} + zod@3.24.2: resolution: {integrity: sha512-lY7CDW43ECgW9u1TcT3IoXHflywfVqDYze4waEz812jR/bZ8FHDsl7pFQoSZTz5N+2NqRXs8GBwnAwo3ZNxqhQ==} @@ -8883,110 +8880,110 @@ snapshots: '@adraffy/ens-normalize@1.11.0': {} - '@algolia/autocomplete-core@1.17.9(@algolia/client-search@5.23.1)(algoliasearch@5.23.1)(search-insights@2.17.3)': + '@algolia/autocomplete-core@1.17.9(@algolia/client-search@5.23.3)(algoliasearch@5.23.3)(search-insights@2.17.3)': dependencies: - '@algolia/autocomplete-plugin-algolia-insights': 1.17.9(@algolia/client-search@5.23.1)(algoliasearch@5.23.1)(search-insights@2.17.3) - '@algolia/autocomplete-shared': 1.17.9(@algolia/client-search@5.23.1)(algoliasearch@5.23.1) + '@algolia/autocomplete-plugin-algolia-insights': 1.17.9(@algolia/client-search@5.23.3)(algoliasearch@5.23.3)(search-insights@2.17.3) + '@algolia/autocomplete-shared': 1.17.9(@algolia/client-search@5.23.3)(algoliasearch@5.23.3) transitivePeerDependencies: - '@algolia/client-search' - algoliasearch - search-insights - '@algolia/autocomplete-plugin-algolia-insights@1.17.9(@algolia/client-search@5.23.1)(algoliasearch@5.23.1)(search-insights@2.17.3)': + '@algolia/autocomplete-plugin-algolia-insights@1.17.9(@algolia/client-search@5.23.3)(algoliasearch@5.23.3)(search-insights@2.17.3)': dependencies: - '@algolia/autocomplete-shared': 1.17.9(@algolia/client-search@5.23.1)(algoliasearch@5.23.1) + '@algolia/autocomplete-shared': 1.17.9(@algolia/client-search@5.23.3)(algoliasearch@5.23.3) search-insights: 2.17.3 transitivePeerDependencies: - '@algolia/client-search' - algoliasearch - '@algolia/autocomplete-preset-algolia@1.17.9(@algolia/client-search@5.23.1)(algoliasearch@5.23.1)': + '@algolia/autocomplete-preset-algolia@1.17.9(@algolia/client-search@5.23.3)(algoliasearch@5.23.3)': dependencies: - '@algolia/autocomplete-shared': 1.17.9(@algolia/client-search@5.23.1)(algoliasearch@5.23.1) - '@algolia/client-search': 5.23.1 - algoliasearch: 5.23.1 + '@algolia/autocomplete-shared': 1.17.9(@algolia/client-search@5.23.3)(algoliasearch@5.23.3) + '@algolia/client-search': 5.23.3 + algoliasearch: 5.23.3 - '@algolia/autocomplete-shared@1.17.9(@algolia/client-search@5.23.1)(algoliasearch@5.23.1)': + '@algolia/autocomplete-shared@1.17.9(@algolia/client-search@5.23.3)(algoliasearch@5.23.3)': dependencies: - '@algolia/client-search': 5.23.1 - algoliasearch: 5.23.1 + '@algolia/client-search': 5.23.3 + algoliasearch: 5.23.3 - '@algolia/client-abtesting@5.23.1': + '@algolia/client-abtesting@5.23.3': dependencies: - '@algolia/client-common': 5.23.1 - '@algolia/requester-browser-xhr': 5.23.1 - '@algolia/requester-fetch': 5.23.1 - '@algolia/requester-node-http': 5.23.1 + '@algolia/client-common': 5.23.3 + '@algolia/requester-browser-xhr': 5.23.3 + '@algolia/requester-fetch': 5.23.3 + '@algolia/requester-node-http': 5.23.3 - '@algolia/client-analytics@5.23.1': + '@algolia/client-analytics@5.23.3': dependencies: - '@algolia/client-common': 5.23.1 - '@algolia/requester-browser-xhr': 5.23.1 - '@algolia/requester-fetch': 5.23.1 - '@algolia/requester-node-http': 5.23.1 + '@algolia/client-common': 5.23.3 + '@algolia/requester-browser-xhr': 5.23.3 + '@algolia/requester-fetch': 5.23.3 + '@algolia/requester-node-http': 5.23.3 - '@algolia/client-common@5.23.1': {} + '@algolia/client-common@5.23.3': {} - '@algolia/client-insights@5.23.1': + '@algolia/client-insights@5.23.3': dependencies: - '@algolia/client-common': 5.23.1 - '@algolia/requester-browser-xhr': 5.23.1 - '@algolia/requester-fetch': 5.23.1 - '@algolia/requester-node-http': 5.23.1 + '@algolia/client-common': 5.23.3 + '@algolia/requester-browser-xhr': 5.23.3 + '@algolia/requester-fetch': 5.23.3 + '@algolia/requester-node-http': 5.23.3 - '@algolia/client-personalization@5.23.1': + '@algolia/client-personalization@5.23.3': dependencies: - '@algolia/client-common': 5.23.1 - '@algolia/requester-browser-xhr': 5.23.1 - '@algolia/requester-fetch': 5.23.1 - '@algolia/requester-node-http': 5.23.1 + '@algolia/client-common': 5.23.3 + '@algolia/requester-browser-xhr': 5.23.3 + '@algolia/requester-fetch': 5.23.3 + '@algolia/requester-node-http': 5.23.3 - '@algolia/client-query-suggestions@5.23.1': + '@algolia/client-query-suggestions@5.23.3': dependencies: - '@algolia/client-common': 5.23.1 - '@algolia/requester-browser-xhr': 5.23.1 - '@algolia/requester-fetch': 5.23.1 - '@algolia/requester-node-http': 5.23.1 + '@algolia/client-common': 5.23.3 + '@algolia/requester-browser-xhr': 5.23.3 + '@algolia/requester-fetch': 5.23.3 + '@algolia/requester-node-http': 5.23.3 - '@algolia/client-search@5.23.1': + '@algolia/client-search@5.23.3': dependencies: - '@algolia/client-common': 5.23.1 - '@algolia/requester-browser-xhr': 5.23.1 - '@algolia/requester-fetch': 5.23.1 - '@algolia/requester-node-http': 5.23.1 + '@algolia/client-common': 5.23.3 + '@algolia/requester-browser-xhr': 5.23.3 + '@algolia/requester-fetch': 5.23.3 + '@algolia/requester-node-http': 5.23.3 - '@algolia/ingestion@1.23.1': + '@algolia/ingestion@1.23.3': dependencies: - '@algolia/client-common': 5.23.1 - '@algolia/requester-browser-xhr': 5.23.1 - '@algolia/requester-fetch': 5.23.1 - '@algolia/requester-node-http': 5.23.1 + '@algolia/client-common': 5.23.3 + '@algolia/requester-browser-xhr': 5.23.3 + '@algolia/requester-fetch': 5.23.3 + '@algolia/requester-node-http': 5.23.3 - '@algolia/monitoring@1.23.1': + '@algolia/monitoring@1.23.3': dependencies: - '@algolia/client-common': 5.23.1 - '@algolia/requester-browser-xhr': 5.23.1 - '@algolia/requester-fetch': 5.23.1 - '@algolia/requester-node-http': 5.23.1 + '@algolia/client-common': 5.23.3 + '@algolia/requester-browser-xhr': 5.23.3 + '@algolia/requester-fetch': 5.23.3 + '@algolia/requester-node-http': 5.23.3 - '@algolia/recommend@5.23.1': + '@algolia/recommend@5.23.3': dependencies: - '@algolia/client-common': 5.23.1 - '@algolia/requester-browser-xhr': 5.23.1 - '@algolia/requester-fetch': 5.23.1 - '@algolia/requester-node-http': 5.23.1 + '@algolia/client-common': 5.23.3 + '@algolia/requester-browser-xhr': 5.23.3 + '@algolia/requester-fetch': 5.23.3 + '@algolia/requester-node-http': 5.23.3 - '@algolia/requester-browser-xhr@5.23.1': + '@algolia/requester-browser-xhr@5.23.3': dependencies: - '@algolia/client-common': 5.23.1 + '@algolia/client-common': 5.23.3 - '@algolia/requester-fetch@5.23.1': + '@algolia/requester-fetch@5.23.3': dependencies: - '@algolia/client-common': 5.23.1 + '@algolia/client-common': 5.23.3 - '@algolia/requester-node-http@5.23.1': + '@algolia/requester-node-http@5.23.3': dependencies: - '@algolia/client-common': 5.23.1 + '@algolia/client-common': 5.23.3 '@alloc/quick-lru@5.2.0': {} @@ -9003,7 +9000,7 @@ snapshots: '@types/json-schema': 7.0.15 js-yaml: 4.1.0 - '@arbitrum/sdk@3.7.2': + '@arbitrum/sdk@3.7.3': dependencies: '@ethersproject/address': 5.8.0 '@ethersproject/bignumber': 5.8.0 @@ -9158,7 +9155,7 @@ snapshots: '@cloudflare/workerd-windows-64@1.20250310.0': optional: true - '@cloudflare/workers-types@4.20250327.0': {} + '@cloudflare/workers-types@4.20250407.0': {} '@corex/deepmerge@4.0.43': {} @@ -9188,12 +9185,12 @@ snapshots: '@docsearch/css@3.9.0': {} - '@docsearch/react@3.9.0(@algolia/client-search@5.23.1)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3)': + '@docsearch/react@3.9.0(@algolia/client-search@5.23.3)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3)': dependencies: - '@algolia/autocomplete-core': 1.17.9(@algolia/client-search@5.23.1)(algoliasearch@5.23.1)(search-insights@2.17.3) - '@algolia/autocomplete-preset-algolia': 1.17.9(@algolia/client-search@5.23.1)(algoliasearch@5.23.1) + '@algolia/autocomplete-core': 1.17.9(@algolia/client-search@5.23.3)(algoliasearch@5.23.3)(search-insights@2.17.3) + '@algolia/autocomplete-preset-algolia': 1.17.9(@algolia/client-search@5.23.3)(algoliasearch@5.23.3) '@docsearch/css': 3.9.0 - algoliasearch: 5.23.1 + algoliasearch: 5.23.3 optionalDependencies: '@types/react': 18.3.20 react: 18.3.1 @@ -9202,13 +9199,13 @@ snapshots: transitivePeerDependencies: - '@algolia/client-search' - '@edgeandnode/common@7.0.4(hardhat@2.14.1(typescript@5.8.2))': + '@edgeandnode/common@7.0.4(hardhat@2.14.1(typescript@5.8.3))': dependencies: '@ethersproject/providers': 5.8.0 '@pinax/graph-networks-registry': 0.6.7 '@uniswap/sdk-core': 7.7.2 '@uniswap/v3-core': 1.0.1 - '@uniswap/v3-sdk': 3.25.2(hardhat@2.14.1(typescript@5.8.2)) + '@uniswap/v3-sdk': 3.25.2(hardhat@2.14.1(typescript@5.8.3)) dataloader: 2.2.3 dayjs: 1.11.13 decimal.js: 10.5.0 @@ -9222,49 +9219,49 @@ snapshots: - hardhat - utf-8-validate - '@edgeandnode/ens@2.1.3(typescript@5.8.2)(viem@2.24.2(typescript@5.8.2)(zod@3.24.2))': + '@edgeandnode/ens@2.1.4(typescript@5.8.3)(viem@2.26.0(typescript@5.8.3)(zod@3.24.2))': dependencies: - '@ensdomains/ensjs': 4.0.2(typescript@5.8.2)(viem@2.24.2(typescript@5.8.2)(zod@3.24.2))(zod@3.24.2) + '@ensdomains/ensjs': 4.0.2(typescript@5.8.3)(viem@2.26.0(typescript@5.8.3)(zod@3.24.2))(zod@3.24.2) graphql: 16.10.0 graphql-request: 7.1.2(graphql@16.10.0) - viem: 2.24.2(typescript@5.8.2)(zod@3.24.2) + viem: 2.26.0(typescript@5.8.3)(zod@3.24.2) zod: 3.24.2 transitivePeerDependencies: - encoding - typescript - '@edgeandnode/eslint-config@2.0.3(eslint@8.57.1)(typescript@5.8.2)': + '@edgeandnode/eslint-config@2.0.3(eslint@8.57.1)(typescript@5.8.3)': dependencies: '@hasparus/eslint-plugin': 1.0.0 '@next/eslint-plugin-next': 13.4.9 '@rushstack/eslint-patch': 1.11.0 - '@typescript-eslint/eslint-plugin': 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.8.2))(eslint@8.57.1)(typescript@5.8.2) - '@typescript-eslint/parser': 6.21.0(eslint@8.57.1)(typescript@5.8.2) + '@typescript-eslint/eslint-plugin': 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.8.3))(eslint@8.57.1)(typescript@5.8.3) + '@typescript-eslint/parser': 6.21.0(eslint@8.57.1)(typescript@5.8.3) eslint: 8.57.1 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0)(eslint@8.57.1) - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.8.2))(eslint-import-resolver-typescript@3.10.0)(eslint@8.57.1) + eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.8.3))(eslint@8.57.1))(eslint@8.57.1) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.8.3))(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.8.3))(eslint@8.57.1))(eslint@8.57.1))(eslint@8.57.1) eslint-plugin-jsx-a11y: 6.10.2(eslint@8.57.1) - eslint-plugin-react: 7.37.4(eslint@8.57.1) + eslint-plugin-react: 7.37.5(eslint@8.57.1) eslint-plugin-react-hooks: 4.6.2(eslint@8.57.1) eslint-plugin-simple-import-sort: 10.0.0(eslint@8.57.1) eslint-plugin-sonarjs: 0.19.0(eslint@8.57.1) optionalDependencies: - typescript: 5.8.2 + typescript: 5.8.3 transitivePeerDependencies: - eslint-import-resolver-webpack - eslint-plugin-import-x - supports-color - '@edgeandnode/gds@6.5.12(@emotion/is-prop-valid@0.8.8)(@emotion/react@11.14.0(@types/react@18.3.20)(react@18.3.1))(@theme-ui/core@0.17.2(@emotion/react@11.14.0(@types/react@18.3.20)(react@18.3.1))(react@18.3.1))(@types/react-dom@18.3.6(@types/react@18.3.20))(@types/react@18.3.20)(dayjs@1.11.13)(hardhat@2.14.1(typescript@5.8.2))(next@14.2.26(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-is@18.3.1)(react@18.3.1)(theme-ui@0.17.2(@emotion/react@11.14.0(@types/react@18.3.20)(react@18.3.1))(react@18.3.1))(typescript@5.8.2)': + '@edgeandnode/gds@6.5.12(@emotion/is-prop-valid@0.8.8)(@emotion/react@11.14.0(@types/react@18.3.20)(react@18.3.1))(@theme-ui/core@0.17.2(@emotion/react@11.14.0(@types/react@18.3.20)(react@18.3.1))(react@18.3.1))(@types/react-dom@18.3.6(@types/react@18.3.20))(@types/react@18.3.20)(dayjs@1.11.13)(hardhat@2.14.1(typescript@5.8.3))(next@14.2.26(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-is@18.3.1)(react@18.3.1)(theme-ui@0.17.2(@emotion/react@11.14.0(@types/react@18.3.20)(react@18.3.1))(react@18.3.1))(typescript@5.8.3)': dependencies: '@base-ui-components/react': 1.0.0-alpha.7(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@bramus/style-observer': 2.0.2 - '@edgeandnode/common': 7.0.4(hardhat@2.14.1(typescript@5.8.2)) + '@edgeandnode/common': 7.0.4(hardhat@2.14.1(typescript@5.8.3)) '@emotion/react': 11.14.0(@types/react@18.3.20)(react@18.3.1) - '@figma/code-connect': 1.3.1 + '@figma/code-connect': 1.3.2 '@floating-ui/react-dom': 2.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@headlessui/react': 2.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@headlessui/react': 2.2.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@phosphor-icons/react': 2.1.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-accordion': 1.2.3(@types/react-dom@18.3.6(@types/react@18.3.20))(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-alert-dialog': 1.1.6(@types/react-dom@18.3.6(@types/react@18.3.20))(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -9284,7 +9281,7 @@ snapshots: '@tanem/react-nprogress': 5.0.55(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@theme-ui/css': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.20)(react@18.3.1)) '@theme-ui/match-media': 0.17.2(@theme-ui/core@0.17.2(@emotion/react@11.14.0(@types/react@18.3.20)(react@18.3.1))(react@18.3.1))(@theme-ui/css@0.17.2(@emotion/react@11.14.0(@types/react@18.3.20)(react@18.3.1)))(react@18.3.1) - '@web3icons/react': 4.0.11(react@18.3.1)(typescript@5.8.2) + '@web3icons/react': 4.0.12(react@18.3.1)(typescript@5.8.3) '@xstate/react': 3.2.2(@types/react@18.3.20)(react@18.3.1)(xstate@4.38.3) color: 5.0.0 dayjs: 1.11.13 @@ -9306,7 +9303,7 @@ snapshots: react-keyed-flatten-children: 5.0.0(react-is@18.3.1)(react@18.3.1) react-transition-group: 4.4.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react-virtuoso: 4.12.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - recharts: 2.15.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + recharts: 2.15.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) shiki: 3.2.1 tailwindcss: 3.4.17 theme-ui: 0.17.2(@emotion/react@11.14.0(@types/react@18.3.20)(react@18.3.1))(react@18.3.1) @@ -9331,11 +9328,11 @@ snapshots: - typescript - utf-8-validate - '@edgeandnode/go@9.4.13(7f99dc5aa8c93bcda610c6e8fd850d36)': + '@edgeandnode/go@9.4.14(c57f1a1cb571446cfc06a14764ef9e95)': dependencies: - '@edgeandnode/common': 7.0.4(hardhat@2.14.1(typescript@5.8.2)) - '@edgeandnode/ens': 2.1.3(typescript@5.8.2)(viem@2.24.2(typescript@5.8.2)(zod@3.24.2)) - '@edgeandnode/gds': 6.5.12(@emotion/is-prop-valid@0.8.8)(@emotion/react@11.14.0(@types/react@18.3.20)(react@18.3.1))(@theme-ui/core@0.17.2(@emotion/react@11.14.0(@types/react@18.3.20)(react@18.3.1))(react@18.3.1))(@types/react-dom@18.3.6(@types/react@18.3.20))(@types/react@18.3.20)(dayjs@1.11.13)(hardhat@2.14.1(typescript@5.8.2))(next@14.2.26(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-is@18.3.1)(react@18.3.1)(theme-ui@0.17.2(@emotion/react@11.14.0(@types/react@18.3.20)(react@18.3.1))(react@18.3.1))(typescript@5.8.2) + '@edgeandnode/common': 7.0.4(hardhat@2.14.1(typescript@5.8.3)) + '@edgeandnode/ens': 2.1.4(typescript@5.8.3)(viem@2.26.0(typescript@5.8.3)(zod@3.24.2)) + '@edgeandnode/gds': 6.5.12(@emotion/is-prop-valid@0.8.8)(@emotion/react@11.14.0(@types/react@18.3.20)(react@18.3.1))(@theme-ui/core@0.17.2(@emotion/react@11.14.0(@types/react@18.3.20)(react@18.3.1))(react@18.3.1))(@types/react-dom@18.3.6(@types/react@18.3.20))(@types/react@18.3.20)(dayjs@1.11.13)(hardhat@2.14.1(typescript@5.8.3))(next@14.2.26(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-is@18.3.1)(react@18.3.1)(theme-ui@0.17.2(@emotion/react@11.14.0(@types/react@18.3.20)(react@18.3.1))(react@18.3.1))(typescript@5.8.3) '@emotion/react': 11.14.0(@types/react@18.3.20)(react@18.3.1) '@graphql-typed-document-node/core': 3.2.0(graphql@16.8.0) '@radix-ui/react-collapsible': 1.1.3(@types/react-dom@18.3.6(@types/react@18.3.20))(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -9343,7 +9340,7 @@ snapshots: '@radix-ui/react-navigation-menu': 1.2.5(@types/react-dom@18.3.6(@types/react@18.3.20))(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-portal': 1.1.4(@types/react-dom@18.3.6(@types/react@18.3.20))(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-aria/utils': 3.28.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@tanstack/react-query': 5.71.1(react@18.3.1) + '@tanstack/react-query': 5.72.0(react@18.3.1) '@theme-ui/css': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.20)(react@18.3.1)) escape-string-regexp: 5.0.0 graphql: 16.8.0 @@ -9473,19 +9470,19 @@ snapshots: dns-packet: 5.6.1 typescript-logging: 1.0.1 - '@ensdomains/ensjs@4.0.2(typescript@5.8.2)(viem@2.24.2(typescript@5.8.2)(zod@3.24.2))(zod@3.24.2)': + '@ensdomains/ensjs@4.0.2(typescript@5.8.3)(viem@2.26.0(typescript@5.8.3)(zod@3.24.2))(zod@3.24.2)': dependencies: '@adraffy/ens-normalize': 1.10.1 '@ensdomains/address-encoder': 1.1.1 '@ensdomains/content-hash': 3.1.0-rc.1 '@ensdomains/dnsprovejs': 0.5.1 - abitype: 1.0.8(typescript@5.8.2)(zod@3.24.2) + abitype: 1.0.8(typescript@5.8.3)(zod@3.24.2) dns-packet: 5.6.1 graphql: 16.10.0 graphql-request: 6.1.0(graphql@16.10.0) pako: 2.1.0 ts-pattern: 5.7.0 - viem: 2.24.2(typescript@5.8.2)(zod@3.24.2) + viem: 2.26.0(typescript@5.8.3)(zod@3.24.2) transitivePeerDependencies: - encoding - typescript @@ -10255,7 +10252,7 @@ snapshots: '@fastify/busboy@2.1.1': {} - '@figma/code-connect@1.3.1': + '@figma/code-connect@1.3.2': dependencies: boxen: 5.1.1 chalk: 4.1.2 @@ -10277,8 +10274,8 @@ snapshots: ts-morph: 23.0.0 typescript: 5.5.4 undici: 5.29.0 - zod: 3.24.2 - zod-validation-error: 3.4.0(zod@3.24.2) + zod: 3.23.8 + zod-validation-error: 3.4.0(zod@3.23.8) transitivePeerDependencies: - bufferutil - canvas @@ -10393,9 +10390,9 @@ snapshots: - bufferutil - utf-8-validate - '@graphprotocol/contracts@6.2.1(typescript@5.8.2)': + '@graphprotocol/contracts@6.2.1(typescript@5.8.3)': dependencies: - '@graphprotocol/sdk': 0.5.0(typescript@5.8.2) + '@graphprotocol/sdk': 0.5.0(typescript@5.8.3) console-table-printer: 2.12.1 transitivePeerDependencies: - bufferutil @@ -10422,18 +10419,18 @@ snapshots: transitivePeerDependencies: - supports-color - '@graphprotocol/sdk@0.5.0(typescript@5.8.2)': + '@graphprotocol/sdk@0.5.0(typescript@5.8.3)': dependencies: - '@arbitrum/sdk': 3.7.2 + '@arbitrum/sdk': 3.7.3 '@ethersproject/experimental': 5.8.0 '@graphprotocol/common-ts': 2.0.11 - '@graphprotocol/contracts': 6.2.1(typescript@5.8.2) - '@nomicfoundation/hardhat-network-helpers': 1.0.12(hardhat@2.14.1(typescript@5.8.2)) - '@nomiclabs/hardhat-ethers': 2.2.3(ethers@5.8.0)(hardhat@2.14.1(typescript@5.8.2)) + '@graphprotocol/contracts': 6.2.1(typescript@5.8.3) + '@nomicfoundation/hardhat-network-helpers': 1.0.12(hardhat@2.14.1(typescript@5.8.3)) + '@nomiclabs/hardhat-ethers': 2.2.3(ethers@5.8.0)(hardhat@2.14.1(typescript@5.8.3)) debug: 4.4.0(supports-color@8.1.1) ethers: 5.8.0 - hardhat: 2.14.1(typescript@5.8.2) - hardhat-secure-accounts: 0.0.6(@nomiclabs/hardhat-ethers@2.2.3(ethers@5.8.0)(hardhat@2.14.1(typescript@5.8.2)))(ethers@5.8.0)(hardhat@2.14.1(typescript@5.8.2)) + hardhat: 2.14.1(typescript@5.8.3) + hardhat-secure-accounts: 0.0.6(@nomiclabs/hardhat-ethers@2.2.3(ethers@5.8.0)(hardhat@2.14.1(typescript@5.8.3)))(ethers@5.8.0)(hardhat@2.14.1(typescript@5.8.3)) inquirer: 8.2.6 lodash: 4.17.21 yaml: 1.10.2 @@ -10463,9 +10460,9 @@ snapshots: '@hasparus/eslint-plugin@1.0.0': dependencies: - typescript: 5.8.2 + typescript: 5.8.3 - '@headlessui/react@2.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@headlessui/react@2.2.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@floating-ui/react': 0.26.28(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-aria/focus': 3.20.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -10929,10 +10926,10 @@ snapshots: - supports-color - utf-8-validate - '@nomicfoundation/hardhat-network-helpers@1.0.12(hardhat@2.14.1(typescript@5.8.2))': + '@nomicfoundation/hardhat-network-helpers@1.0.12(hardhat@2.14.1(typescript@5.8.3))': dependencies: ethereumjs-util: 7.1.5 - hardhat: 2.14.1(typescript@5.8.2) + hardhat: 2.14.1(typescript@5.8.3) '@nomicfoundation/solidity-analyzer-darwin-arm64@0.1.2': optional: true @@ -10965,10 +10962,10 @@ snapshots: '@nomicfoundation/solidity-analyzer-linux-x64-musl': 0.1.2 '@nomicfoundation/solidity-analyzer-win32-x64-msvc': 0.1.2 - '@nomiclabs/hardhat-ethers@2.2.3(ethers@5.8.0)(hardhat@2.14.1(typescript@5.8.2))': + '@nomiclabs/hardhat-ethers@2.2.3(ethers@5.8.0)(hardhat@2.14.1(typescript@5.8.3))': dependencies: ethers: 5.8.0 - hardhat: 2.14.1(typescript@5.8.2) + hardhat: 2.14.1(typescript@5.8.3) '@npmcli/config@8.3.4': dependencies: @@ -11036,7 +11033,7 @@ snapshots: '@pkgjs/parseargs@0.11.0': optional: true - '@pkgr/core@0.2.0': {} + '@pkgr/core@0.2.1': {} '@radix-ui/number@1.1.0': {} @@ -12075,11 +12072,11 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-hookz/deep-equal@3.0.3': {} + '@react-hookz/deep-equal@3.0.4': {} '@react-hookz/web@25.1.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-hookz/deep-equal': 3.0.3 + '@react-hookz/deep-equal': 3.0.4 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -12466,7 +12463,7 @@ snapshots: qs: 6.14.0 stringify-object: 3.3.0 - '@readme/openapi-parser@3.0.1(openapi-types@12.1.3)': + '@readme/openapi-parser@3.0.2(openapi-types@12.1.3)': dependencies: '@apidevtools/json-schema-ref-parser': 11.9.3 '@readme/better-ajv-errors': 2.3.2(ajv@8.17.1) @@ -12677,11 +12674,11 @@ snapshots: dependencies: '@shikijs/types': 3.2.1 - '@shikijs/twoslash@1.29.2(typescript@5.8.2)': + '@shikijs/twoslash@1.29.2(typescript@5.8.3)': dependencies: '@shikijs/core': 1.29.2 '@shikijs/types': 1.29.2 - twoslash: 0.2.12(typescript@5.8.2) + twoslash: 0.2.12(typescript@5.8.3) transitivePeerDependencies: - supports-color - typescript @@ -12782,11 +12779,11 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@tanstack/query-core@5.71.1': {} + '@tanstack/query-core@5.72.0': {} - '@tanstack/react-query@5.71.1(react@18.3.1)': + '@tanstack/react-query@5.72.0(react@18.3.1)': dependencies: - '@tanstack/query-core': 5.71.1 + '@tanstack/query-core': 5.72.0 react: 18.3.1 '@tanstack/react-virtual@3.13.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': @@ -12885,7 +12882,7 @@ snapshots: '@types/concat-stream@2.0.3': dependencies: - '@types/node': 22.13.17 + '@types/node': 22.14.0 '@types/cookie@0.6.0': {} @@ -13052,10 +13049,6 @@ snapshots: dependencies: '@types/unist': 3.0.3 - '@types/node@22.13.17': - dependencies: - undici-types: 6.20.0 - '@types/node@22.14.0': dependencies: undici-types: 6.21.0 @@ -13105,13 +13098,13 @@ snapshots: '@types/validator@13.12.3': {} - '@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.8.2))(eslint@8.57.1)(typescript@5.8.2)': + '@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.8.3))(eslint@8.57.1)(typescript@5.8.3)': dependencies: '@eslint-community/regexpp': 4.12.1 - '@typescript-eslint/parser': 6.21.0(eslint@8.57.1)(typescript@5.8.2) + '@typescript-eslint/parser': 6.21.0(eslint@8.57.1)(typescript@5.8.3) '@typescript-eslint/scope-manager': 6.21.0 - '@typescript-eslint/type-utils': 6.21.0(eslint@8.57.1)(typescript@5.8.2) - '@typescript-eslint/utils': 6.21.0(eslint@8.57.1)(typescript@5.8.2) + '@typescript-eslint/type-utils': 6.21.0(eslint@8.57.1)(typescript@5.8.3) + '@typescript-eslint/utils': 6.21.0(eslint@8.57.1)(typescript@5.8.3) '@typescript-eslint/visitor-keys': 6.21.0 debug: 4.4.0(supports-color@8.1.1) eslint: 8.57.1 @@ -13119,22 +13112,22 @@ snapshots: ignore: 5.3.2 natural-compare: 1.4.0 semver: 7.7.1 - ts-api-utils: 1.4.3(typescript@5.8.2) + ts-api-utils: 1.4.3(typescript@5.8.3) optionalDependencies: - typescript: 5.8.2 + typescript: 5.8.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.8.2)': + '@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.8.3)': dependencies: '@typescript-eslint/scope-manager': 6.21.0 '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.8.2) + '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.8.3) '@typescript-eslint/visitor-keys': 6.21.0 debug: 4.4.0(supports-color@8.1.1) eslint: 8.57.1 optionalDependencies: - typescript: 5.8.2 + typescript: 5.8.3 transitivePeerDependencies: - supports-color @@ -13143,21 +13136,21 @@ snapshots: '@typescript-eslint/types': 6.21.0 '@typescript-eslint/visitor-keys': 6.21.0 - '@typescript-eslint/type-utils@6.21.0(eslint@8.57.1)(typescript@5.8.2)': + '@typescript-eslint/type-utils@6.21.0(eslint@8.57.1)(typescript@5.8.3)': dependencies: - '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.8.2) - '@typescript-eslint/utils': 6.21.0(eslint@8.57.1)(typescript@5.8.2) + '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.8.3) + '@typescript-eslint/utils': 6.21.0(eslint@8.57.1)(typescript@5.8.3) debug: 4.4.0(supports-color@8.1.1) eslint: 8.57.1 - ts-api-utils: 1.4.3(typescript@5.8.2) + ts-api-utils: 1.4.3(typescript@5.8.3) optionalDependencies: - typescript: 5.8.2 + typescript: 5.8.3 transitivePeerDependencies: - supports-color '@typescript-eslint/types@6.21.0': {} - '@typescript-eslint/typescript-estree@6.21.0(typescript@5.8.2)': + '@typescript-eslint/typescript-estree@6.21.0(typescript@5.8.3)': dependencies: '@typescript-eslint/types': 6.21.0 '@typescript-eslint/visitor-keys': 6.21.0 @@ -13166,20 +13159,20 @@ snapshots: is-glob: 4.0.3 minimatch: 9.0.3 semver: 7.7.1 - ts-api-utils: 1.4.3(typescript@5.8.2) + ts-api-utils: 1.4.3(typescript@5.8.3) optionalDependencies: - typescript: 5.8.2 + typescript: 5.8.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@6.21.0(eslint@8.57.1)(typescript@5.8.2)': + '@typescript-eslint/utils@6.21.0(eslint@8.57.1)(typescript@5.8.3)': dependencies: '@eslint-community/eslint-utils': 4.5.1(eslint@8.57.1) '@types/json-schema': 7.0.15 '@types/semver': 7.7.0 '@typescript-eslint/scope-manager': 6.21.0 '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.8.2) + '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.8.3) eslint: 8.57.1 semver: 7.7.1 transitivePeerDependencies: @@ -13191,10 +13184,10 @@ snapshots: '@typescript-eslint/types': 6.21.0 eslint-visitor-keys: 3.4.3 - '@typescript/vfs@1.6.1(typescript@5.8.2)': + '@typescript/vfs@1.6.1(typescript@5.8.3)': dependencies: debug: 4.4.0(supports-color@8.1.1) - typescript: 5.8.2 + typescript: 5.8.3 transitivePeerDependencies: - supports-color @@ -13214,14 +13207,14 @@ snapshots: tiny-invariant: 1.3.3 toformat: 2.0.0 - '@uniswap/swap-router-contracts@1.3.1(hardhat@2.14.1(typescript@5.8.2))': + '@uniswap/swap-router-contracts@1.3.1(hardhat@2.14.1(typescript@5.8.3))': dependencies: '@openzeppelin/contracts': 3.4.2-solc-0.7 '@uniswap/v2-core': 1.0.1 '@uniswap/v3-core': 1.0.1 '@uniswap/v3-periphery': 1.4.4 dotenv: 14.3.2 - hardhat-watcher: 2.5.0(hardhat@2.14.1(typescript@5.8.2)) + hardhat-watcher: 2.5.0(hardhat@2.14.1(typescript@5.8.3)) transitivePeerDependencies: - hardhat @@ -13239,12 +13232,12 @@ snapshots: '@uniswap/v3-core': 1.0.1 base64-sol: 1.0.1 - '@uniswap/v3-sdk@3.25.2(hardhat@2.14.1(typescript@5.8.2))': + '@uniswap/v3-sdk@3.25.2(hardhat@2.14.1(typescript@5.8.3))': dependencies: '@ethersproject/abi': 5.8.0 '@ethersproject/solidity': 5.8.0 '@uniswap/sdk-core': 7.7.2 - '@uniswap/swap-router-contracts': 1.3.1(hardhat@2.14.1(typescript@5.8.2)) + '@uniswap/swap-router-contracts': 1.3.1(hardhat@2.14.1(typescript@5.8.3)) '@uniswap/v3-periphery': 1.4.4 '@uniswap/v3-staker': 1.0.0 tiny-invariant: 1.3.3 @@ -13258,51 +13251,51 @@ snapshots: '@uniswap/v3-core': 1.0.0 '@uniswap/v3-periphery': 1.4.4 - '@unrs/resolver-binding-darwin-arm64@1.3.3': + '@unrs/resolver-binding-darwin-arm64@1.4.1': optional: true - '@unrs/resolver-binding-darwin-x64@1.3.3': + '@unrs/resolver-binding-darwin-x64@1.4.1': optional: true - '@unrs/resolver-binding-freebsd-x64@1.3.3': + '@unrs/resolver-binding-freebsd-x64@1.4.1': optional: true - '@unrs/resolver-binding-linux-arm-gnueabihf@1.3.3': + '@unrs/resolver-binding-linux-arm-gnueabihf@1.4.1': optional: true - '@unrs/resolver-binding-linux-arm-musleabihf@1.3.3': + '@unrs/resolver-binding-linux-arm-musleabihf@1.4.1': optional: true - '@unrs/resolver-binding-linux-arm64-gnu@1.3.3': + '@unrs/resolver-binding-linux-arm64-gnu@1.4.1': optional: true - '@unrs/resolver-binding-linux-arm64-musl@1.3.3': + '@unrs/resolver-binding-linux-arm64-musl@1.4.1': optional: true - '@unrs/resolver-binding-linux-ppc64-gnu@1.3.3': + '@unrs/resolver-binding-linux-ppc64-gnu@1.4.1': optional: true - '@unrs/resolver-binding-linux-s390x-gnu@1.3.3': + '@unrs/resolver-binding-linux-s390x-gnu@1.4.1': optional: true - '@unrs/resolver-binding-linux-x64-gnu@1.3.3': + '@unrs/resolver-binding-linux-x64-gnu@1.4.1': optional: true - '@unrs/resolver-binding-linux-x64-musl@1.3.3': + '@unrs/resolver-binding-linux-x64-musl@1.4.1': optional: true - '@unrs/resolver-binding-wasm32-wasi@1.3.3': + '@unrs/resolver-binding-wasm32-wasi@1.4.1': dependencies: '@napi-rs/wasm-runtime': 0.2.8 optional: true - '@unrs/resolver-binding-win32-arm64-msvc@1.3.3': + '@unrs/resolver-binding-win32-arm64-msvc@1.4.1': optional: true - '@unrs/resolver-binding-win32-ia32-msvc@1.3.3': + '@unrs/resolver-binding-win32-ia32-msvc@1.4.1': optional: true - '@unrs/resolver-binding-win32-x64-msvc@1.3.3': + '@unrs/resolver-binding-win32-x64-msvc@1.4.1': optional: true '@urql/core@3.1.0(graphql@16.8.0)': @@ -13323,13 +13316,13 @@ snapshots: chai: 5.2.0 tinyrainbow: 1.2.0 - '@vitest/mocker@2.1.9(vite@5.4.16(@types/node@22.14.0))': + '@vitest/mocker@2.1.9(vite@5.4.17(@types/node@22.14.0))': dependencies: '@vitest/spy': 2.1.9 estree-walker: 3.0.3 magic-string: 0.30.17 optionalDependencies: - vite: 5.4.16(@types/node@22.14.0) + vite: 5.4.17(@types/node@22.14.0) '@vitest/pretty-format@2.1.9': dependencies: @@ -13356,13 +13349,13 @@ snapshots: loupe: 3.1.3 tinyrainbow: 1.2.0 - '@web3icons/common@0.11.9(typescript@5.8.2)': + '@web3icons/common@0.11.9(typescript@5.8.3)': dependencies: - typescript: 5.8.2 + typescript: 5.8.3 - '@web3icons/react@4.0.11(react@18.3.1)(typescript@5.8.2)': + '@web3icons/react@4.0.12(react@18.3.1)(typescript@5.8.3)': dependencies: - '@web3icons/common': 0.11.9(typescript@5.8.2) + '@web3icons/common': 0.11.9(typescript@5.8.3) react: 18.3.1 transitivePeerDependencies: - typescript @@ -13381,9 +13374,9 @@ snapshots: abbrev@2.0.0: {} - abitype@1.0.8(typescript@5.8.2)(zod@3.24.2): + abitype@1.0.8(typescript@5.8.3)(zod@3.24.2): optionalDependencies: - typescript: 5.8.2 + typescript: 5.8.3 zod: 3.24.2 abort-controller@3.0.0: @@ -13450,21 +13443,21 @@ snapshots: json-schema-traverse: 1.0.0 require-from-string: 2.0.2 - algoliasearch@5.23.1: - dependencies: - '@algolia/client-abtesting': 5.23.1 - '@algolia/client-analytics': 5.23.1 - '@algolia/client-common': 5.23.1 - '@algolia/client-insights': 5.23.1 - '@algolia/client-personalization': 5.23.1 - '@algolia/client-query-suggestions': 5.23.1 - '@algolia/client-search': 5.23.1 - '@algolia/ingestion': 1.23.1 - '@algolia/monitoring': 1.23.1 - '@algolia/recommend': 5.23.1 - '@algolia/requester-browser-xhr': 5.23.1 - '@algolia/requester-fetch': 5.23.1 - '@algolia/requester-node-http': 5.23.1 + algoliasearch@5.23.3: + dependencies: + '@algolia/client-abtesting': 5.23.3 + '@algolia/client-analytics': 5.23.3 + '@algolia/client-common': 5.23.3 + '@algolia/client-insights': 5.23.3 + '@algolia/client-personalization': 5.23.3 + '@algolia/client-query-suggestions': 5.23.3 + '@algolia/client-search': 5.23.3 + '@algolia/ingestion': 1.23.3 + '@algolia/monitoring': 1.23.3 + '@algolia/recommend': 5.23.3 + '@algolia/requester-browser-xhr': 5.23.3 + '@algolia/requester-fetch': 5.23.3 + '@algolia/requester-node-http': 5.23.3 ansi-align@3.0.1: dependencies: @@ -13609,7 +13602,7 @@ snapshots: autoprefixer@10.4.21(postcss@8.5.3): dependencies: browserslist: 4.24.4 - caniuse-lite: 1.0.30001707 + caniuse-lite: 1.0.30001712 fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.1.1 @@ -13761,8 +13754,8 @@ snapshots: browserslist@4.24.4: dependencies: - caniuse-lite: 1.0.30001707 - electron-to-chromium: 1.5.129 + caniuse-lite: 1.0.30001712 + electron-to-chromium: 1.5.132 node-releases: 2.0.19 update-browserslist-db: 1.1.3(browserslist@4.24.4) @@ -13834,7 +13827,7 @@ snapshots: camelize@1.0.1: {} - caniuse-lite@1.0.30001707: {} + caniuse-lite@1.0.30001712: {} case@1.6.3: {} @@ -14030,7 +14023,7 @@ snapshots: confbox@0.1.8: {} - confbox@0.2.1: {} + confbox@0.2.2: {} consola@3.4.2: {} @@ -14448,7 +14441,7 @@ snapshots: '@babel/runtime': 7.27.0 csstype: 3.1.3 - dompurify@3.2.4: + dompurify@3.2.5: optionalDependencies: '@types/trusted-types': 2.0.7 @@ -14475,7 +14468,7 @@ snapshots: ee-first@1.1.1: {} - electron-to-chromium@1.5.129: {} + electron-to-chromium@1.5.132: {} elliptic@6.5.4: dependencies: @@ -14741,7 +14734,7 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0)(eslint@8.57.1): + eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.8.3))(eslint@8.57.1))(eslint@8.57.1): dependencies: '@nolyfill/is-core-module': 1.0.39 debug: 4.4.0(supports-color@8.1.1) @@ -14750,13 +14743,13 @@ snapshots: is-bun-module: 2.0.0 stable-hash: 0.0.5 tinyglobby: 0.2.12 - unrs-resolver: 1.3.3 + unrs-resolver: 1.4.1 optionalDependencies: - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.8.2))(eslint-import-resolver-typescript@3.10.0)(eslint@8.57.1) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.8.3))(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.8.3))(eslint@8.57.1))(eslint@8.57.1))(eslint@8.57.1) transitivePeerDependencies: - supports-color - eslint-mdx@3.3.1(eslint@8.57.1): + eslint-mdx@3.4.0(eslint@8.57.1): dependencies: acorn: 8.14.1 acorn-jsx: 5.3.2(acorn@8.14.1) @@ -14766,7 +14759,7 @@ snapshots: remark-mdx: 3.1.0 remark-parse: 11.0.0 remark-stringify: 11.0.0 - synckit: 0.10.3 + synckit: 0.11.3 tslib: 2.8.1 unified: 11.0.5 unified-engine: 11.2.2 @@ -14777,18 +14770,18 @@ snapshots: - bluebird - supports-color - eslint-module-utils@2.12.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.8.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0)(eslint@8.57.1): + eslint-module-utils@2.12.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.8.3))(eslint@8.57.1))(eslint@8.57.1))(eslint@8.57.1): dependencies: debug: 3.2.7 optionalDependencies: - '@typescript-eslint/parser': 6.21.0(eslint@8.57.1)(typescript@5.8.2) + '@typescript-eslint/parser': 6.21.0(eslint@8.57.1)(typescript@5.8.3) eslint: 8.57.1 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0)(eslint@8.57.1) + eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.8.3))(eslint@8.57.1))(eslint@8.57.1) transitivePeerDependencies: - supports-color - eslint-plugin-import@2.31.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.8.2))(eslint-import-resolver-typescript@3.10.0)(eslint@8.57.1): + eslint-plugin-import@2.31.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.8.3))(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.8.3))(eslint@8.57.1))(eslint@8.57.1))(eslint@8.57.1): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.8 @@ -14799,7 +14792,7 @@ snapshots: doctrine: 2.1.0 eslint: 8.57.1 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.8.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0)(eslint@8.57.1) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.8.3))(eslint@8.57.1))(eslint@8.57.1))(eslint@8.57.1) hasown: 2.0.2 is-core-module: 2.16.1 is-glob: 4.0.3 @@ -14811,7 +14804,7 @@ snapshots: string.prototype.trimend: 1.0.9 tsconfig-paths: 3.15.0 optionalDependencies: - '@typescript-eslint/parser': 6.21.0(eslint@8.57.1)(typescript@5.8.2) + '@typescript-eslint/parser': 6.21.0(eslint@8.57.1)(typescript@5.8.3) transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack @@ -14836,15 +14829,17 @@ snapshots: safe-regex-test: 1.1.0 string.prototype.includes: 2.0.1 - eslint-plugin-mdx@3.3.1(eslint@8.57.1): + eslint-plugin-mdx@3.4.0(eslint@8.57.1): dependencies: eslint: 8.57.1 - eslint-mdx: 3.3.1(eslint@8.57.1) + eslint-mdx: 3.4.0(eslint@8.57.1) mdast-util-from-markdown: 2.0.2 + mdast-util-mdx: 3.0.0 + micromark-extension-mdxjs: 3.0.0 remark-mdx: 3.1.0 remark-parse: 11.0.0 remark-stringify: 11.0.0 - synckit: 0.10.3 + synckit: 0.11.3 tslib: 2.8.1 unified: 11.0.5 vfile: 6.0.3 @@ -14857,7 +14852,7 @@ snapshots: dependencies: eslint: 8.57.1 - eslint-plugin-react@7.37.4(eslint@8.57.1): + eslint-plugin-react@7.37.5(eslint@8.57.1): dependencies: array-includes: 3.1.8 array.prototype.findlast: 1.2.5 @@ -14995,7 +14990,7 @@ snapshots: dependencies: is-plain-obj: 3.0.0 - estree-util-value-to-estree@3.3.2: + estree-util-value-to-estree@3.3.3: dependencies: '@types/estree': 1.0.7 @@ -15240,7 +15235,7 @@ snapshots: fast-uri@3.0.6: {} - fast-xml-parser@5.1.0: + fast-xml-parser@5.2.0: dependencies: strnum: 2.0.5 @@ -15563,24 +15558,24 @@ snapshots: hachure-fill@0.5.2: {} - hardhat-secure-accounts@0.0.6(@nomiclabs/hardhat-ethers@2.2.3(ethers@5.8.0)(hardhat@2.14.1(typescript@5.8.2)))(ethers@5.8.0)(hardhat@2.14.1(typescript@5.8.2)): + hardhat-secure-accounts@0.0.6(@nomiclabs/hardhat-ethers@2.2.3(ethers@5.8.0)(hardhat@2.14.1(typescript@5.8.3)))(ethers@5.8.0)(hardhat@2.14.1(typescript@5.8.3)): dependencies: - '@nomiclabs/hardhat-ethers': 2.2.3(ethers@5.8.0)(hardhat@2.14.1(typescript@5.8.2)) + '@nomiclabs/hardhat-ethers': 2.2.3(ethers@5.8.0)(hardhat@2.14.1(typescript@5.8.3)) debug: 4.4.0(supports-color@8.1.1) enquirer: 2.4.1 ethers: 5.8.0 - hardhat: 2.14.1(typescript@5.8.2) + hardhat: 2.14.1(typescript@5.8.3) lodash.clonedeep: 4.5.0 prompt-sync: 4.2.0 transitivePeerDependencies: - supports-color - hardhat-watcher@2.5.0(hardhat@2.14.1(typescript@5.8.2)): + hardhat-watcher@2.5.0(hardhat@2.14.1(typescript@5.8.3)): dependencies: chokidar: 3.6.0 - hardhat: 2.14.1(typescript@5.8.2) + hardhat: 2.14.1(typescript@5.8.3) - hardhat@2.14.1(typescript@5.8.2): + hardhat@2.14.1(typescript@5.8.3): dependencies: '@ethersproject/abi': 5.8.0 '@metamask/eth-sig-util': 4.0.1 @@ -15633,7 +15628,7 @@ snapshots: uuid: 8.3.2 ws: 7.5.10 optionalDependencies: - typescript: 5.8.2 + typescript: 5.8.3 transitivePeerDependencies: - bufferutil - supports-color @@ -15729,7 +15724,7 @@ snapshots: '@types/estree': 1.0.7 '@types/hast': 3.0.4 comma-separated-tokens: 2.0.3 - estree-util-value-to-estree: 3.3.2 + estree-util-value-to-estree: 3.3.3 mdast-util-mdx-jsx: 3.2.0 property-information: 7.0.0 space-separated-tokens: 2.0.2 @@ -16420,7 +16415,7 @@ snapshots: markdown-table@3.0.4: {} - marked@15.0.7: {} + marked@15.0.8: {} math-intrinsics@1.1.0: {} @@ -16660,11 +16655,11 @@ snapshots: d3-sankey: 0.12.3 dagre-d3-es: 7.0.11 dayjs: 1.11.13 - dompurify: 3.2.4 + dompurify: 3.2.5 katex: 0.16.21 khroma: 2.1.0 lodash-es: 4.17.21 - marked: 15.0.7 + marked: 15.0.8 roughjs: 4.6.6 stylis: 4.3.6 ts-dedent: 2.2.0 @@ -16976,7 +16971,7 @@ snapshots: mimic-fn@4.0.0: {} - miniflare@3.20250310.1: + miniflare@3.20250310.2: dependencies: '@cspotcode/source-map-support': 0.8.1 acorn: 8.14.0 @@ -17032,7 +17027,7 @@ snapshots: acorn: 8.14.1 pathe: 2.0.3 pkg-types: 1.3.1 - ufo: 1.5.4 + ufo: 1.6.0 mnemonist@0.38.5: dependencies: @@ -17139,7 +17134,7 @@ snapshots: '@next/env': 14.2.26 '@swc/helpers': 0.5.5 busboy: 1.6.0 - caniuse-lite: 1.0.30001707 + caniuse-lite: 1.0.30001712 graceful-fs: 4.2.11 postcss: 8.4.31 react: 18.3.1 @@ -17159,20 +17154,20 @@ snapshots: - '@babel/core' - babel-plugin-macros - nextra@3.3.1(@types/react@18.3.20)(acorn@8.14.1)(next@14.2.26(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.8.2): + nextra@3.3.1(@types/react@18.3.20)(acorn@8.14.1)(next@14.2.26(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.8.3): dependencies: '@formatjs/intl-localematcher': 0.5.10 - '@headlessui/react': 2.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@headlessui/react': 2.2.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mdx-js/mdx': 3.1.0(acorn@8.14.1) '@mdx-js/react': 3.1.0(@types/react@18.3.20)(react@18.3.1) '@napi-rs/simple-git': 0.1.19 - '@shikijs/twoslash': 1.29.2(typescript@5.8.2) + '@shikijs/twoslash': 1.29.2(typescript@5.8.3) '@theguild/remark-mermaid': 0.1.3(react@18.3.1) '@theguild/remark-npm2yarn': 0.3.3 better-react-mathjax: 2.1.0(react@18.3.1) clsx: 2.1.1 estree-util-to-js: 2.0.0 - estree-util-value-to-estree: 3.3.2 + estree-util-value-to-estree: 3.3.3 github-slugger: 2.0.0 graceful-fs: 4.2.11 gray-matter: 4.0.3 @@ -17389,17 +17384,17 @@ snapshots: object-keys: 1.1.1 safe-push-apply: 1.0.0 - ox@0.6.9(typescript@5.8.2)(zod@3.24.2): + ox@0.6.9(typescript@5.8.3)(zod@3.24.2): dependencies: '@adraffy/ens-normalize': 1.11.0 '@noble/curves': 1.8.1 '@noble/hashes': 1.7.1 '@scure/bip32': 1.6.2 '@scure/bip39': 1.5.4 - abitype: 1.0.8(typescript@5.8.2)(zod@3.24.2) + abitype: 1.0.8(typescript@5.8.3)(zod@3.24.2) eventemitter3: 5.0.1 optionalDependencies: - typescript: 5.8.2 + typescript: 5.8.3 transitivePeerDependencies: - zod @@ -17620,7 +17615,7 @@ snapshots: pkg-types@2.1.0: dependencies: - confbox: 0.2.1 + confbox: 0.2.2 exsolve: 1.0.4 pathe: 2.0.3 @@ -17985,7 +17980,7 @@ snapshots: dependencies: decimal.js-light: 2.5.1 - recharts@2.15.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + recharts@2.15.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: clsx: 2.1.1 eventemitter3: 4.0.7 @@ -18764,7 +18759,7 @@ snapshots: statuses@2.0.1: {} - std-env@3.8.1: {} + std-env@3.9.0: {} stoppable@1.1.0: {} @@ -18944,9 +18939,9 @@ snapshots: symbol-tree@3.2.4: {} - synckit@0.10.3: + synckit@0.11.3: dependencies: - '@pkgr/core': 0.2.0 + '@pkgr/core': 0.2.1 tslib: 2.8.1 system-architecture@0.1.0: {} @@ -19080,9 +19075,9 @@ snapshots: trough@2.2.0: {} - ts-api-utils@1.4.3(typescript@5.8.2): + ts-api-utils@1.4.3(typescript@5.8.3): dependencies: - typescript: 5.8.2 + typescript: 5.8.3 ts-dedent@2.2.0: {} @@ -19108,7 +19103,7 @@ snapshots: tsort@0.0.1: {} - tsup@8.4.0(jiti@1.21.7)(postcss@8.5.3)(tsx@4.19.3)(typescript@5.8.2)(yaml@2.7.1): + tsup@8.4.0(jiti@1.21.7)(postcss@8.5.3)(tsx@4.19.3)(typescript@5.8.3)(yaml@2.7.1): dependencies: bundle-require: 5.1.0(esbuild@0.25.2) cac: 6.7.14 @@ -19128,7 +19123,7 @@ snapshots: tree-kill: 1.2.2 optionalDependencies: postcss: 8.5.3 - typescript: 5.8.2 + typescript: 5.8.3 transitivePeerDependencies: - jiti - supports-color @@ -19142,32 +19137,32 @@ snapshots: optionalDependencies: fsevents: 2.3.3 - turbo-darwin-64@2.4.4: + turbo-darwin-64@2.5.0: optional: true - turbo-darwin-arm64@2.4.4: + turbo-darwin-arm64@2.5.0: optional: true - turbo-linux-64@2.4.4: + turbo-linux-64@2.5.0: optional: true - turbo-linux-arm64@2.4.4: + turbo-linux-arm64@2.5.0: optional: true - turbo-windows-64@2.4.4: + turbo-windows-64@2.5.0: optional: true - turbo-windows-arm64@2.4.4: + turbo-windows-arm64@2.5.0: optional: true - turbo@2.4.4: + turbo@2.5.0: optionalDependencies: - turbo-darwin-64: 2.4.4 - turbo-darwin-arm64: 2.4.4 - turbo-linux-64: 2.4.4 - turbo-linux-arm64: 2.4.4 - turbo-windows-64: 2.4.4 - turbo-windows-arm64: 2.4.4 + turbo-darwin-64: 2.5.0 + turbo-darwin-arm64: 2.5.0 + turbo-linux-64: 2.5.0 + turbo-linux-arm64: 2.5.0 + turbo-windows-64: 2.5.0 + turbo-windows-arm64: 2.5.0 tweetnacl-util@0.15.1: {} @@ -19175,11 +19170,11 @@ snapshots: twoslash-protocol@0.2.12: {} - twoslash@0.2.12(typescript@5.8.2): + twoslash@0.2.12(typescript@5.8.3): dependencies: - '@typescript/vfs': 1.6.1(typescript@5.8.2) + '@typescript/vfs': 1.6.1(typescript@5.8.3) twoslash-protocol: 0.2.12 - typescript: 5.8.2 + typescript: 5.8.3 transitivePeerDependencies: - supports-color @@ -19241,13 +19236,13 @@ snapshots: typescript@5.5.4: {} - typescript@5.8.2: {} + typescript@5.8.3: {} typy@3.3.0: {} ua-parser-js@1.0.40: {} - ufo@1.5.4: {} + ufo@1.6.0: {} unbox-primitive@1.1.0: dependencies: @@ -19258,8 +19253,6 @@ snapshots: underscore@1.13.7: {} - undici-types@6.20.0: {} - undici-types@6.21.0: {} undici@5.29.0: @@ -19272,7 +19265,7 @@ snapshots: exsolve: 1.0.4 ohash: 2.0.11 pathe: 2.0.3 - ufo: 1.5.4 + ufo: 1.6.0 unicode-trie@2.0.0: dependencies: @@ -19284,7 +19277,7 @@ snapshots: '@types/concat-stream': 2.0.3 '@types/debug': 4.1.12 '@types/is-empty': 1.2.3 - '@types/node': 22.13.17 + '@types/node': 22.14.0 '@types/unist': 3.0.3 concat-stream: 2.0.0 debug: 4.4.0(supports-color@8.1.1) @@ -19405,23 +19398,23 @@ snapshots: unpipe@1.0.0: {} - unrs-resolver@1.3.3: + unrs-resolver@1.4.1: optionalDependencies: - '@unrs/resolver-binding-darwin-arm64': 1.3.3 - '@unrs/resolver-binding-darwin-x64': 1.3.3 - '@unrs/resolver-binding-freebsd-x64': 1.3.3 - '@unrs/resolver-binding-linux-arm-gnueabihf': 1.3.3 - '@unrs/resolver-binding-linux-arm-musleabihf': 1.3.3 - '@unrs/resolver-binding-linux-arm64-gnu': 1.3.3 - '@unrs/resolver-binding-linux-arm64-musl': 1.3.3 - '@unrs/resolver-binding-linux-ppc64-gnu': 1.3.3 - '@unrs/resolver-binding-linux-s390x-gnu': 1.3.3 - '@unrs/resolver-binding-linux-x64-gnu': 1.3.3 - '@unrs/resolver-binding-linux-x64-musl': 1.3.3 - '@unrs/resolver-binding-wasm32-wasi': 1.3.3 - '@unrs/resolver-binding-win32-arm64-msvc': 1.3.3 - '@unrs/resolver-binding-win32-ia32-msvc': 1.3.3 - '@unrs/resolver-binding-win32-x64-msvc': 1.3.3 + '@unrs/resolver-binding-darwin-arm64': 1.4.1 + '@unrs/resolver-binding-darwin-x64': 1.4.1 + '@unrs/resolver-binding-freebsd-x64': 1.4.1 + '@unrs/resolver-binding-linux-arm-gnueabihf': 1.4.1 + '@unrs/resolver-binding-linux-arm-musleabihf': 1.4.1 + '@unrs/resolver-binding-linux-arm64-gnu': 1.4.1 + '@unrs/resolver-binding-linux-arm64-musl': 1.4.1 + '@unrs/resolver-binding-linux-ppc64-gnu': 1.4.1 + '@unrs/resolver-binding-linux-s390x-gnu': 1.4.1 + '@unrs/resolver-binding-linux-x64-gnu': 1.4.1 + '@unrs/resolver-binding-linux-x64-musl': 1.4.1 + '@unrs/resolver-binding-wasm32-wasi': 1.4.1 + '@unrs/resolver-binding-win32-arm64-msvc': 1.4.1 + '@unrs/resolver-binding-win32-ia32-msvc': 1.4.1 + '@unrs/resolver-binding-win32-x64-msvc': 1.4.1 update-browserslist-db@1.1.3(browserslist@4.24.4): dependencies: @@ -19542,18 +19535,18 @@ snapshots: d3-time: 3.1.0 d3-timer: 3.0.1 - viem@2.24.2(typescript@5.8.2)(zod@3.24.2): + viem@2.26.0(typescript@5.8.3)(zod@3.24.2): dependencies: '@noble/curves': 1.8.1 '@noble/hashes': 1.7.1 '@scure/bip32': 1.6.2 '@scure/bip39': 1.5.4 - abitype: 1.0.8(typescript@5.8.2)(zod@3.24.2) + abitype: 1.0.8(typescript@5.8.3)(zod@3.24.2) isows: 1.0.6(ws@8.18.1) - ox: 0.6.9(typescript@5.8.2)(zod@3.24.2) + ox: 0.6.9(typescript@5.8.3)(zod@3.24.2) ws: 8.18.1 optionalDependencies: - typescript: 5.8.2 + typescript: 5.8.3 transitivePeerDependencies: - bufferutil - utf-8-validate @@ -19565,7 +19558,7 @@ snapshots: debug: 4.4.0(supports-color@8.1.1) es-module-lexer: 1.6.0 pathe: 1.1.2 - vite: 5.4.16(@types/node@22.14.0) + vite: 5.4.17(@types/node@22.14.0) transitivePeerDependencies: - '@types/node' - less @@ -19577,7 +19570,7 @@ snapshots: - supports-color - terser - vite@5.4.16(@types/node@22.14.0): + vite@5.4.17(@types/node@22.14.0): dependencies: esbuild: 0.21.5 postcss: 8.5.3 @@ -19589,7 +19582,7 @@ snapshots: vitest@2.1.9(@types/node@22.14.0)(jsdom@24.1.3): dependencies: '@vitest/expect': 2.1.9 - '@vitest/mocker': 2.1.9(vite@5.4.16(@types/node@22.14.0)) + '@vitest/mocker': 2.1.9(vite@5.4.17(@types/node@22.14.0)) '@vitest/pretty-format': 2.1.9 '@vitest/runner': 2.1.9 '@vitest/snapshot': 2.1.9 @@ -19600,12 +19593,12 @@ snapshots: expect-type: 1.2.1 magic-string: 0.30.17 pathe: 1.1.2 - std-env: 3.8.1 + std-env: 3.9.0 tinybench: 2.9.0 tinyexec: 0.3.2 tinypool: 1.0.2 tinyrainbow: 1.2.0 - vite: 5.4.16(@types/node@22.14.0) + vite: 5.4.17(@types/node@22.14.0) vite-node: 2.1.9(@types/node@22.14.0) why-is-node-running: 2.3.0 optionalDependencies: @@ -19757,7 +19750,7 @@ snapshots: workerpool@6.5.1: {} - wrangler@3.114.3(@cloudflare/workers-types@4.20250327.0): + wrangler@3.114.4(@cloudflare/workers-types@4.20250407.0): dependencies: '@cloudflare/kv-asset-handler': 0.3.4 '@cloudflare/unenv-preset': 2.0.2(unenv@2.0.0-rc.14)(workerd@1.20250310.0) @@ -19765,12 +19758,12 @@ snapshots: '@esbuild-plugins/node-modules-polyfill': 0.2.2(esbuild@0.17.19) blake3-wasm: 2.1.5 esbuild: 0.17.19 - miniflare: 3.20250310.1 + miniflare: 3.20250310.2 path-to-regexp: 6.3.0 unenv: 2.0.0-rc.14 workerd: 1.20250310.0 optionalDependencies: - '@cloudflare/workers-types': 4.20250327.0 + '@cloudflare/workers-types': 4.20250407.0 fsevents: 2.3.3 sharp: 0.33.5 transitivePeerDependencies: @@ -19854,12 +19847,18 @@ snapshots: mustache: 4.2.0 stacktracey: 2.1.8 + zod-validation-error@3.4.0(zod@3.23.8): + dependencies: + zod: 3.23.8 + zod-validation-error@3.4.0(zod@3.24.2): dependencies: zod: 3.24.2 zod@3.22.3: {} + zod@3.23.8: {} + zod@3.24.2: {} zwitch@2.0.4: {} diff --git a/turbo.json b/turbo.json index ab816e313d16..7cdd91048f0d 100644 --- a/turbo.json +++ b/turbo.json @@ -10,6 +10,9 @@ "outputs": ["dist/**"], "dependsOn": ["^build"] }, + "prebuild:ci": { + "cache": false + }, "typecheck": { "dependsOn": ["^build"] }, diff --git a/website/package.json b/website/package.json index 5ce1050ee643..08ff51922e6d 100644 --- a/website/package.json +++ b/website/package.json @@ -8,6 +8,7 @@ "predev": "tsup ./src/i18n.ts --format esm", "build": "rm -rf .next && rm -rf out && next build", "prebuild": "pnpm predev", + "prebuild:ci": "pnpm fetch-remote-docs && pnpm fetch-api-reference && pnpm fix-pages-structure", "postbuild": "next-sitemap --config next-sitemap.config.mjs && node scripts/sitemap-ci.js", "typecheck": "tsc", "fetch-remote-docs": "tsx scripts/fetch-remote-docs.ts", @@ -19,13 +20,13 @@ "@docsearch/react": "^3.9.0", "@edgeandnode/common": "^7.0.4", "@edgeandnode/gds": "^6.5.12", - "@edgeandnode/go": "^9.4.13", + "@edgeandnode/go": "^9.4.14", "@emotion/react": "^11.14.0", "@graphprotocol/contracts": "6.2.1", "@pinax/graph-networks-registry": "^0.6.7", "@react-hookz/web": "^25.1.0", "@readme/httpsnippet": "^11.0.0", - "@readme/openapi-parser": "^3.0.1", + "@readme/openapi-parser": "^3.0.2", "fetch-har": "^11.1.1", "lodash": "^4.17.21", "mixpanel-browser": "^2.63.0", @@ -54,7 +55,7 @@ "@types/react": "^18.3.20", "@types/react-dom": "^18.3.6", "autoprefixer": "^10.4.21", - "fast-xml-parser": "^5.1.0", + "fast-xml-parser": "^5.2.0", "postcss": "^8.5.3", "tailwindcss": "^3.4.17", "tsup": "^8.4.0", diff --git a/website/src/HomePage.tsx b/website/src/HomePage.tsx index 96a7b8e9f4e1..13e498fb33c2 100644 --- a/website/src/HomePage.tsx +++ b/website/src/HomePage.tsx @@ -1,10 +1,7 @@ import { NetworkType } from '@pinax/graph-networks-registry' -import { useData } from 'nextra/hooks' -import type { ComponentPropsWithoutRef } from 'react' -import { classNames, ExperimentalLink, Tooltip } from '@edgeandnode/gds' +import { ButtonOrLink, ExperimentalLink, Tooltip } from '@edgeandnode/gds' import { - Clock, Firehose, GraphExplorer, GraphNode, @@ -17,9 +14,9 @@ import { NetworkIcon } from '@edgeandnode/go' import { Card, Heading, TimeIcon } from '@/components' import { useI18n } from '@/i18n' -import { getSupportedNetworks } from '@/supportedNetworks' +import { type ProcessedNetwork } from '@/supportedNetworks' -export default function HomePage() { +export default function HomePage({ supportedNetworks }: { supportedNetworks: ProcessedNetwork[] }) { const { t } = useI18n() return ( @@ -141,7 +138,42 @@ export default function HomePage() { , ])}

- +
+
    + {supportedNetworks + // TODO: Don't filter out testnets that don't have a mainnet + .filter((network) => network.networkType === NetworkType.Mainnet) + // Filter out networks that are either duplicates (same logo, same or similar short name) or irrelevant in this view + .filter( + (network) => + !network.caip2Id.startsWith('beacon:') && + !['boba-bnb', 'eos-evm', 'polygon-zkevm', 'solana-accounts'].includes(network.id), + ) + .filter((network) => { + return ( + // TODO: Fix Zora mono logo in web3icons + network.id !== 'zora' && + // TODO: Add support for Ultra in web3icons and `NetworkIcon` + network.id !== 'ultra' + ) + }) + .map((network) => ( +
  • + + + + + +
  • + ))} +
+

@@ -247,35 +279,3 @@ export default function HomePage() { ) } - -function SupportedNetworks({ className, ...props }: ComponentPropsWithoutRef<'div'>) { - const { supportedNetworks } = useData() as { supportedNetworks: Awaited> } - - return ( -
-
    - {supportedNetworks - // TODO: Don't filter out testnets that don't have a mainnet - .filter((network) => network.networkType === NetworkType.Mainnet) - // Filter out networks that are either duplicates (same logo, same or similar short name) or irrelevant in this view - .filter( - (network) => - !network.caip2Id.startsWith('beacon:') && - !['boba-bnb', 'eos-evm', 'polygon-zkevm', 'solana-accounts'].includes(network.id), - ) - // TODO: Fix Zora mono logo in web3icons - .filter((network) => network.id !== 'zora') - .map((network) => ( - -
  • - -
  • -
    - ))} -
-
- ) -} diff --git a/website/src/pages/[locale]/[...404].mdx b/website/src/pages/[locale]/[...404].mdx index 026e8c381fa9..730a088945b3 100644 --- a/website/src/pages/[locale]/[...404].mdx +++ b/website/src/pages/[locale]/[...404].mdx @@ -1,5 +1,4 @@ import { translate } from '@edgeandnode/gds' -import { RemoteContent } from 'nextra/components' import { buildDynamicMDX } from 'nextra/remote' import { supportedLocales, translations } from '@/i18n' @@ -22,8 +21,7 @@ hideTableOfContents: true hideContentHeader: true hideContentFooter: true unwrapContent: true ---- -` +---` const mdx = await buildDynamicMDX(rawMdx, { codeHighlight: false }) const { pageMap } = await import(`.next/static/chunks/nextra-page-map-${locale}.mjs`) return { @@ -34,4 +32,4 @@ unwrapContent: true } } - + diff --git a/website/src/pages/[locale]/index.mdx b/website/src/pages/[locale]/index.mdx index 988829ebf698..7f4fc7388f40 100644 --- a/website/src/pages/[locale]/index.mdx +++ b/website/src/pages/[locale]/index.mdx @@ -1,7 +1,6 @@ {/* We use `index.mdx` instead of `index.tsx` to render the page in the Nextra theme's `Layout` */} import { translate } from '@edgeandnode/gds' -import { RemoteContent } from 'nextra/components' import { buildDynamicMDX } from 'nextra/remote' import HomePage from '@/HomePage' @@ -22,19 +21,19 @@ title: ${t('index.title')} hideTableOfContents: true hideContentHeader: true unwrapContent: true ---- -` +---` const mdx = await buildDynamicMDX(rawMdx, { codeHighlight: false }) const { pageMap } = await import(`.next/static/chunks/nextra-page-map-${locale}.mjs`) + const supportedNetworks = await getSupportedNetworks() return { props: { ...mdx, __nextra_pageMap: pageMap, - ssg: { - supportedNetworks: await getSupportedNetworks(), - }, + supportedNetworks, }, } } - +export default function Page({ supportedNetworks }) { + return +} diff --git a/website/src/pages/[locale]/supported-networks/[id].mdx b/website/src/pages/[locale]/supported-networks/[id].mdx index 2dfaa978c14b..5c65453c2e7f 100644 --- a/website/src/pages/[locale]/supported-networks/[id].mdx +++ b/website/src/pages/[locale]/supported-networks/[id].mdx @@ -1,10 +1,8 @@ import { translate } from '@edgeandnode/gds' -import { RemoteContent } from 'nextra/components' import { buildDynamicMDX } from 'nextra/remote' -import { NetworkPage } from '@/supportedNetworks/components' import { supportedLocales, translations } from '@/i18n' -import { getSupportedNetworks } from '@/supportedNetworks' +import { getSupportedNetworks, NetworkDetailsPage } from '@/supportedNetworks' export const getStaticPaths = async () => { const networks = await getSupportedNetworks() @@ -34,15 +32,13 @@ export const getStaticProps = async ({ params }) => { } } const rawMdx = `--- -title: ${network.id} +title: ${network.fullName} hideTableOfContents: true hideContentHeader: true unwrapContent: true hideContentFooter: true parentRouteKey: supported-networks ---- -# Network Details -` +---` const mdx = await buildDynamicMDX(rawMdx, { codeHighlight: false }) const { pageMap } = await import(`.next/static/chunks/nextra-page-map-${locale}.mjs`) return { @@ -50,13 +46,10 @@ parentRouteKey: supported-networks ...mdx, __nextra_pageMap: pageMap, network, - ssg: { - network, - }, }, } } -export default function NetworkDetailPage({ network }) { - return +export default function Page({ network }) { + return } diff --git a/website/src/pages/ar/supported-networks.mdx b/website/src/pages/ar/supported-networks.mdx index ac7050638264..ac8ea6df8253 100644 --- a/website/src/pages/ar/supported-networks.mdx +++ b/website/src/pages/ar/supported-networks.mdx @@ -4,7 +4,7 @@ hideTableOfContents: true hideContentHeader: true --- -import { getSupportedNetworksStaticProps, SupportedNetworksTable } from '@/supportedNetworks' +import { getSupportedNetworksStaticProps, NetworksTable } from '@/supportedNetworks' import { Heading } from '@/components' import { useI18n } from '@/i18n' @@ -14,7 +14,7 @@ export const getStaticProps = getSupportedNetworksStaticProps {useI18n().t('index.supportedNetworks.title')} - + - Subgraph Studio relies on the stability and reliability of the underlying technologies, for example JSON-RPC, Firehose and Substreams endpoints. - Subgraphs indexing Gnosis Chain can now be deployed with the `gnosis` network identifier. diff --git a/website/src/pages/cs/supported-networks.mdx b/website/src/pages/cs/supported-networks.mdx index 863814948ba7..3c04b4dbbafb 100644 --- a/website/src/pages/cs/supported-networks.mdx +++ b/website/src/pages/cs/supported-networks.mdx @@ -4,7 +4,7 @@ hideTableOfContents: true hideContentHeader: true --- -import { getSupportedNetworksStaticProps, SupportedNetworksTable } from '@/supportedNetworks' +import { getSupportedNetworksStaticProps, NetworksTable } from '@/supportedNetworks' import { Heading } from '@/components' import { useI18n } from '@/i18n' @@ -14,7 +14,7 @@ export const getStaticProps = getSupportedNetworksStaticProps {useI18n().t('index.supportedNetworks.title')} - + - Subgraph Studio relies on the stability and reliability of the underlying technologies, for example JSON-RPC, Firehose and Substreams endpoints. - Subgraphs indexing Gnosis Chain can now be deployed with the `gnosis` network identifier. diff --git a/website/src/pages/de/supported-networks.mdx b/website/src/pages/de/supported-networks.mdx index 1ae4bd5d095b..835ce6df9b0d 100644 --- a/website/src/pages/de/supported-networks.mdx +++ b/website/src/pages/de/supported-networks.mdx @@ -4,7 +4,7 @@ hideTableOfContents: true hideContentHeader: true --- -import { getSupportedNetworksStaticProps, SupportedNetworksTable } from '@/supportedNetworks' +import { getSupportedNetworksStaticProps, NetworksTable } from '@/supportedNetworks' import { Heading } from '@/components' import { useI18n } from '@/i18n' @@ -14,7 +14,7 @@ export const getStaticProps = getSupportedNetworksStaticProps {useI18n().t('index.supportedNetworks.title')} - + - Subgraph Studio verlässt sich auf die Stabilität und Zuverlässigkeit der zugrundeliegenden Technologien, z.B. JSON-RPC, Firehose und Substreams Endpunkte. - Subgraphs, die die Gnosis-Kette indizieren, können jetzt mit dem gnosis- Netzwerkidentifikator eingesetzt werden. diff --git a/website/src/pages/en/supported-networks.mdx b/website/src/pages/en/supported-networks.mdx index ef2c28393033..8860d1f382dd 100644 --- a/website/src/pages/en/supported-networks.mdx +++ b/website/src/pages/en/supported-networks.mdx @@ -4,7 +4,7 @@ hideTableOfContents: true hideContentHeader: true --- -import { getSupportedNetworksStaticProps, SupportedNetworksTable } from '@/supportedNetworks' +import { getSupportedNetworksStaticProps, NetworksTable } from '@/supportedNetworks' import { Heading } from '@/components' import { useI18n } from '@/i18n' @@ -14,7 +14,7 @@ export const getStaticProps = getSupportedNetworksStaticProps {useI18n().t('index.supportedNetworks.title')} - + - Subgraph Studio relies on the stability and reliability of the underlying technologies, for example JSON-RPC, Firehose and Substreams endpoints. - Subgraphs indexing Gnosis Chain can now be deployed with the `gnosis` network identifier. diff --git a/website/src/pages/es/supported-networks.mdx b/website/src/pages/es/supported-networks.mdx index 93a003ce8005..3b3d7eb14227 100644 --- a/website/src/pages/es/supported-networks.mdx +++ b/website/src/pages/es/supported-networks.mdx @@ -4,7 +4,7 @@ hideTableOfContents: true hideContentHeader: true --- -import { getSupportedNetworksStaticProps, SupportedNetworksTable } from '@/supportedNetworks' +import { getSupportedNetworksStaticProps, NetworksTable } from '@/supportedNetworks' import { Heading } from '@/components' import { useI18n } from '@/i18n' @@ -14,7 +14,7 @@ export const getStaticProps = getSupportedNetworksStaticProps {useI18n().t('index.supportedNetworks.title')} - + - Subgraph Studio relies on the stability and reliability of the underlying technologies, for example JSON-RPC, Firehose and Substreams endpoints. - Subgraphs indexing Gnosis Chain can now be deployed with the `gnosis` network identifier. diff --git a/website/src/pages/fr/supported-networks.mdx b/website/src/pages/fr/supported-networks.mdx index c1b6ee3fd39c..5ce0074ba40c 100644 --- a/website/src/pages/fr/supported-networks.mdx +++ b/website/src/pages/fr/supported-networks.mdx @@ -4,7 +4,7 @@ hideTableOfContents: true hideContentHeader: true --- -import { getSupportedNetworksStaticProps, SupportedNetworksTable } from '@/supportedNetworks' +import { getSupportedNetworksStaticProps, NetworksTable } from '@/supportedNetworks' import { Heading } from '@/components' import { useI18n } from '@/i18n' @@ -14,7 +14,7 @@ export const getStaticProps = getSupportedNetworksStaticProps {useI18n().t('index.supportedNetworks.title')} - + - Subgraph Studio repose sur la stabilité et la fiabilité des technologies sous-jacentes, comme les endpoints JSON-RPC, Firehose et Substreams. - Subgraphs indexing Gnosis Chain can now be deployed with the `gnosis` network identifier. diff --git a/website/src/pages/hi/supported-networks.mdx b/website/src/pages/hi/supported-networks.mdx index 9ddc02928dbf..8a1e715d3525 100644 --- a/website/src/pages/hi/supported-networks.mdx +++ b/website/src/pages/hi/supported-networks.mdx @@ -4,7 +4,7 @@ hideTableOfContents: true hideContentHeader: true --- -import { getSupportedNetworksStaticProps, SupportedNetworksTable } from '@/supportedNetworks' +import { getSupportedNetworksStaticProps, NetworksTable } from '@/supportedNetworks' import { Heading } from '@/components' import { useI18n } from '@/i18n' @@ -14,7 +14,7 @@ export const getStaticProps = getSupportedNetworksStaticProps {useI18n().t('index.supportedNetworks.title')} - + - सबग्राफ स्टूडियो निर्भर करता है अंतर्निहित प्रौद्योगिकियों की स्थिरता और विश्वसनीयता पर, जैसे JSON-RPC, फायरहोस और सबस्ट्रीम्स एंडपॉइंट्स। - Subgraphs indexing Gnosis Chain can now be deployed with the `gnosis` network identifier. diff --git a/website/src/pages/it/supported-networks.mdx b/website/src/pages/it/supported-networks.mdx index ef2c28393033..8860d1f382dd 100644 --- a/website/src/pages/it/supported-networks.mdx +++ b/website/src/pages/it/supported-networks.mdx @@ -4,7 +4,7 @@ hideTableOfContents: true hideContentHeader: true --- -import { getSupportedNetworksStaticProps, SupportedNetworksTable } from '@/supportedNetworks' +import { getSupportedNetworksStaticProps, NetworksTable } from '@/supportedNetworks' import { Heading } from '@/components' import { useI18n } from '@/i18n' @@ -14,7 +14,7 @@ export const getStaticProps = getSupportedNetworksStaticProps {useI18n().t('index.supportedNetworks.title')} - + - Subgraph Studio relies on the stability and reliability of the underlying technologies, for example JSON-RPC, Firehose and Substreams endpoints. - Subgraphs indexing Gnosis Chain can now be deployed with the `gnosis` network identifier. diff --git a/website/src/pages/ja/supported-networks.mdx b/website/src/pages/ja/supported-networks.mdx index 4e138e5575cc..90213669311f 100644 --- a/website/src/pages/ja/supported-networks.mdx +++ b/website/src/pages/ja/supported-networks.mdx @@ -4,7 +4,7 @@ hideTableOfContents: true hideContentHeader: true --- -import { getSupportedNetworksStaticProps, SupportedNetworksTable } from '@/supportedNetworks' +import { getSupportedNetworksStaticProps, NetworksTable } from '@/supportedNetworks' import { Heading } from '@/components' import { useI18n } from '@/i18n' @@ -14,7 +14,7 @@ export const getStaticProps = getSupportedNetworksStaticProps {useI18n().t('index.supportedNetworks.title')} - + - Subgraph Studio relies on the stability and reliability of the underlying technologies, for example JSON-RPC, Firehose and Substreams endpoints. - Subgraphs indexing Gnosis Chain can now be deployed with the `gnosis` network identifier. diff --git a/website/src/pages/ko/supported-networks.mdx b/website/src/pages/ko/supported-networks.mdx index ef2c28393033..8860d1f382dd 100644 --- a/website/src/pages/ko/supported-networks.mdx +++ b/website/src/pages/ko/supported-networks.mdx @@ -4,7 +4,7 @@ hideTableOfContents: true hideContentHeader: true --- -import { getSupportedNetworksStaticProps, SupportedNetworksTable } from '@/supportedNetworks' +import { getSupportedNetworksStaticProps, NetworksTable } from '@/supportedNetworks' import { Heading } from '@/components' import { useI18n } from '@/i18n' @@ -14,7 +14,7 @@ export const getStaticProps = getSupportedNetworksStaticProps {useI18n().t('index.supportedNetworks.title')} - + - Subgraph Studio relies on the stability and reliability of the underlying technologies, for example JSON-RPC, Firehose and Substreams endpoints. - Subgraphs indexing Gnosis Chain can now be deployed with the `gnosis` network identifier. diff --git a/website/src/pages/mr/supported-networks.mdx b/website/src/pages/mr/supported-networks.mdx index ef2c28393033..8860d1f382dd 100644 --- a/website/src/pages/mr/supported-networks.mdx +++ b/website/src/pages/mr/supported-networks.mdx @@ -4,7 +4,7 @@ hideTableOfContents: true hideContentHeader: true --- -import { getSupportedNetworksStaticProps, SupportedNetworksTable } from '@/supportedNetworks' +import { getSupportedNetworksStaticProps, NetworksTable } from '@/supportedNetworks' import { Heading } from '@/components' import { useI18n } from '@/i18n' @@ -14,7 +14,7 @@ export const getStaticProps = getSupportedNetworksStaticProps {useI18n().t('index.supportedNetworks.title')} - + - Subgraph Studio relies on the stability and reliability of the underlying technologies, for example JSON-RPC, Firehose and Substreams endpoints. - Subgraphs indexing Gnosis Chain can now be deployed with the `gnosis` network identifier. diff --git a/website/src/pages/nl/supported-networks.mdx b/website/src/pages/nl/supported-networks.mdx index 9ba4b8d0ab99..bf73c201439e 100644 --- a/website/src/pages/nl/supported-networks.mdx +++ b/website/src/pages/nl/supported-networks.mdx @@ -4,7 +4,7 @@ hideTableOfContents: true hideContentHeader: true --- -import { getSupportedNetworksStaticProps, SupportedNetworksTable } from '@/supportedNetworks' +import { getSupportedNetworksStaticProps, NetworksTable } from '@/supportedNetworks' import { Heading } from '@/components' import { useI18n } from '@/i18n' @@ -14,7 +14,7 @@ export const getStaticProps = getSupportedNetworksStaticProps {useI18n().t('index.supportedNetworks.title')} - + - Subgraph Studio relies on the stability and reliability of the underlying technologies, for example JSON-RPC, Firehose and Substreams endpoints. - Subgraphs indexing Gnosis Chain can now be deployed with the `gnosis` network identifier. diff --git a/website/src/pages/pl/supported-networks.mdx b/website/src/pages/pl/supported-networks.mdx index c49e9c3853b2..aef5668b103a 100644 --- a/website/src/pages/pl/supported-networks.mdx +++ b/website/src/pages/pl/supported-networks.mdx @@ -4,7 +4,7 @@ hideTableOfContents: true hideContentHeader: true --- -import { getSupportedNetworksStaticProps, SupportedNetworksTable } from '@/supportedNetworks' +import { getSupportedNetworksStaticProps, NetworksTable } from '@/supportedNetworks' import { Heading } from '@/components' import { useI18n } from '@/i18n' @@ -14,7 +14,7 @@ export const getStaticProps = getSupportedNetworksStaticProps {useI18n().t('index.supportedNetworks.title')} - + - Subgraph Studio relies on the stability and reliability of the underlying technologies, for example JSON-RPC, Firehose and Substreams endpoints. - Subgraphs indexing Gnosis Chain can now be deployed with the `gnosis` network identifier. diff --git a/website/src/pages/pt/supported-networks.mdx b/website/src/pages/pt/supported-networks.mdx index f3c79fbff592..248c3aebdae1 100644 --- a/website/src/pages/pt/supported-networks.mdx +++ b/website/src/pages/pt/supported-networks.mdx @@ -4,7 +4,7 @@ hideTableOfContents: true hideContentHeader: true --- -import { getSupportedNetworksStaticProps, SupportedNetworksTable } from '@/supportedNetworks' +import { getSupportedNetworksStaticProps, NetworksTable } from '@/supportedNetworks' import { Heading } from '@/components' import { useI18n } from '@/i18n' @@ -14,7 +14,7 @@ export const getStaticProps = getSupportedNetworksStaticProps {useI18n().t('index.supportedNetworks.title')} - + - O Subgraph Studio depende da estabilidade e da confiança das tecnologias subjacentes, por exemplo, JSON-RPC, Firehose e endpoints dos Substreams. - Subgraphs indexing Gnosis Chain can now be deployed with the `gnosis` network identifier. diff --git a/website/src/pages/ro/supported-networks.mdx b/website/src/pages/ro/supported-networks.mdx index 554c558ded7e..bcd50c91681b 100644 --- a/website/src/pages/ro/supported-networks.mdx +++ b/website/src/pages/ro/supported-networks.mdx @@ -4,7 +4,7 @@ hideTableOfContents: true hideContentHeader: true --- -import { getSupportedNetworksStaticProps, SupportedNetworksTable } from '@/supportedNetworks' +import { getSupportedNetworksStaticProps, NetworksTable } from '@/supportedNetworks' import { Heading } from '@/components' import { useI18n } from '@/i18n' @@ -14,7 +14,7 @@ export const getStaticProps = getSupportedNetworksStaticProps {useI18n().t('index.supportedNetworks.title')} - + - Subgraph Studio relies on the stability and reliability of the underlying technologies, for example JSON-RPC, Firehose and Substreams endpoints. - Subgraphs indexing Gnosis Chain can now be deployed with the `gnosis` network identifier. diff --git a/website/src/pages/ru/supported-networks.mdx b/website/src/pages/ru/supported-networks.mdx index 6399dfa3844c..bef59cd934b9 100644 --- a/website/src/pages/ru/supported-networks.mdx +++ b/website/src/pages/ru/supported-networks.mdx @@ -4,7 +4,7 @@ hideTableOfContents: true hideContentHeader: true --- -import { getSupportedNetworksStaticProps, SupportedNetworksTable } from '@/supportedNetworks' +import { getSupportedNetworksStaticProps, NetworksTable } from '@/supportedNetworks' import { Heading } from '@/components' import { useI18n } from '@/i18n' @@ -14,7 +14,7 @@ export const getStaticProps = getSupportedNetworksStaticProps {useI18n().t('index.supportedNetworks.title')} - + - Subgraph Studio полагается на стабильность и надежность базовых технологий, например, таких, как JSON-RPC, Firehose и конечных точек Substreams. - Субграфы, индексирующие Gnosis Chain, теперь можно развертывать с идентификатором сети `gnosis`. diff --git a/website/src/pages/sv/supported-networks.mdx b/website/src/pages/sv/supported-networks.mdx index 01776006c980..d91330162c93 100644 --- a/website/src/pages/sv/supported-networks.mdx +++ b/website/src/pages/sv/supported-networks.mdx @@ -4,7 +4,7 @@ hideTableOfContents: true hideContentHeader: true --- -import { getSupportedNetworksStaticProps, SupportedNetworksTable } from '@/supportedNetworks' +import { getSupportedNetworksStaticProps, NetworksTable } from '@/supportedNetworks' import { Heading } from '@/components' import { useI18n } from '@/i18n' @@ -14,7 +14,7 @@ export const getStaticProps = getSupportedNetworksStaticProps {useI18n().t('index.supportedNetworks.title')} - + - Subgraph Studio relies on the stability and reliability of the underlying technologies, for example JSON-RPC, Firehose and Substreams endpoints. - Subgraphs indexing Gnosis Chain can now be deployed with the `gnosis` network identifier. diff --git a/website/src/pages/tr/supported-networks.mdx b/website/src/pages/tr/supported-networks.mdx index baee4073b30c..faa9ea814c32 100644 --- a/website/src/pages/tr/supported-networks.mdx +++ b/website/src/pages/tr/supported-networks.mdx @@ -4,7 +4,7 @@ hideTableOfContents: true hideContentHeader: true --- -import { getSupportedNetworksStaticProps, SupportedNetworksTable } from '@/supportedNetworks' +import { getSupportedNetworksStaticProps, NetworksTable } from '@/supportedNetworks' import { Heading } from '@/components' import { useI18n } from '@/i18n' @@ -14,7 +14,7 @@ export const getStaticProps = getSupportedNetworksStaticProps {useI18n().t('index.supportedNetworks.title')} - + - Subgraph Studio, örneğin JSON-RPC, Firehose ve Substreams uç noktaları gibi temel teknolojilerin istikrarlılığına ve güvenilirliğine bel bağlar. - Gnosis Chain'i endeksleyen subgraph'ler artık `gnosis` ağ tanımlayıcısı ile dağıtılabilir. diff --git a/website/src/pages/uk/supported-networks.mdx b/website/src/pages/uk/supported-networks.mdx index 6cac2ffa4bac..5f03298564b4 100644 --- a/website/src/pages/uk/supported-networks.mdx +++ b/website/src/pages/uk/supported-networks.mdx @@ -4,7 +4,7 @@ hideTableOfContents: true hideContentHeader: true --- -import { getSupportedNetworksStaticProps, SupportedNetworksTable } from '@/supportedNetworks' +import { getSupportedNetworksStaticProps, NetworksTable } from '@/supportedNetworks' import { Heading } from '@/components' import { useI18n } from '@/i18n' @@ -14,7 +14,7 @@ export const getStaticProps = getSupportedNetworksStaticProps {useI18n().t('index.supportedNetworks.title')} - + - Subgraph Studio relies on the stability and reliability of the underlying technologies, for example JSON-RPC, Firehose and Substreams endpoints. - Subgraphs indexing Gnosis Chain can now be deployed with the `gnosis` network identifier. diff --git a/website/src/pages/ur/supported-networks.mdx b/website/src/pages/ur/supported-networks.mdx index 709ff2193c44..15117baa5291 100644 --- a/website/src/pages/ur/supported-networks.mdx +++ b/website/src/pages/ur/supported-networks.mdx @@ -4,7 +4,7 @@ hideTableOfContents: true hideContentHeader: true --- -import { getSupportedNetworksStaticProps, SupportedNetworksTable } from '@/supportedNetworks' +import { getSupportedNetworksStaticProps, NetworksTable } from '@/supportedNetworks' import { Heading } from '@/components' import { useI18n } from '@/i18n' @@ -14,7 +14,7 @@ export const getStaticProps = getSupportedNetworksStaticProps {useI18n().t('index.supportedNetworks.title')} - + - Subgraph Studio relies on the stability and reliability of the underlying technologies, for example JSON-RPC, Firehose and Substreams endpoints. - Subgraphs indexing Gnosis Chain can now be deployed with the `gnosis` network identifier. diff --git a/website/src/pages/vi/supported-networks.mdx b/website/src/pages/vi/supported-networks.mdx index f2af01f61c81..aadae2b787a5 100644 --- a/website/src/pages/vi/supported-networks.mdx +++ b/website/src/pages/vi/supported-networks.mdx @@ -4,7 +4,7 @@ hideTableOfContents: true hideContentHeader: true --- -import { getSupportedNetworksStaticProps, SupportedNetworksTable } from '@/supportedNetworks' +import { getSupportedNetworksStaticProps, NetworksTable } from '@/supportedNetworks' import { Heading } from '@/components' import { useI18n } from '@/i18n' @@ -14,7 +14,7 @@ export const getStaticProps = getSupportedNetworksStaticProps {useI18n().t('index.supportedNetworks.title')} - + - Subgraph Studio relies on the stability and reliability of the underlying technologies, for example JSON-RPC, Firehose and Substreams endpoints. - Subgraphs indexing Gnosis Chain can now be deployed with the `gnosis` network identifier. diff --git a/website/src/pages/zh/supported-networks.mdx b/website/src/pages/zh/supported-networks.mdx index e45f7dfbe97c..1bf28caeabfd 100644 --- a/website/src/pages/zh/supported-networks.mdx +++ b/website/src/pages/zh/supported-networks.mdx @@ -4,7 +4,7 @@ hideTableOfContents: true hideContentHeader: true --- -import { getSupportedNetworksStaticProps, SupportedNetworksTable } from '@/supportedNetworks' +import { getSupportedNetworksStaticProps, NetworksTable } from '@/supportedNetworks' import { Heading } from '@/components' import { useI18n } from '@/i18n' @@ -14,7 +14,7 @@ export const getStaticProps = getSupportedNetworksStaticProps {useI18n().t('index.supportedNetworks.title')} - + - Subgraph Studio依赖于底层技术的稳定性和可靠性,例如JSON-RPC、Firehose和Substreams端点。 - 现在可以使用`gnosis`网络标识符部署索引Gnosis链的子图。 diff --git a/website/src/supportedNetworks/components/NetworkDetailsPage.tsx b/website/src/supportedNetworks/NetworkDetailsPage.tsx similarity index 58% rename from website/src/supportedNetworks/components/NetworkDetailsPage.tsx rename to website/src/supportedNetworks/NetworkDetailsPage.tsx index 03d579c61729..a4cde1dc99ad 100644 --- a/website/src/supportedNetworks/components/NetworkDetailsPage.tsx +++ b/website/src/supportedNetworks/NetworkDetailsPage.tsx @@ -1,21 +1,87 @@ -import { memo } from 'react' - +import { ExperimentalCopyButton, ExperimentalDescriptionList, ExperimentalLink } from '@edgeandnode/gds' import { Subgraph, Substreams, SubstreamsPoweredSubgraph } from '@edgeandnode/gds/icons' +import { NetworkIcon } from '@edgeandnode/go' import { Card, TimeIcon } from '@/components' import { useI18n } from '@/i18n' -import { isEVMNetwork, type Network } from '../utils' +import { getIconVariant, isEVMNetwork, type Network } from './utils' + +export function NetworkDetailsPage({ network }: { network: Network }) { + const { t } = useI18n() -type NetworkDetailsPageProps = { - network: Network + return ( +
+
+ {network.caip2Id ? ( + + ) : null} +

{network.fullName}

+
+ +
+
+
+ + + {network.networkType} + + {network.graphNode?.protocol && ( + + {network.graphNode.protocol} + + )} + {network.id && ( + } + > + {network.id} + + )} + {network.caip2Id && ( + } + > + {network.caip2Id} + + )} + {network.nativeToken && ( + + {network.nativeToken} + + )} + {network.docsUrl && ( + + + {network.docsUrl} + + + )} + +
+
+
+ +
+ +

{t('index.supportedNetworks.guides')}

+ +
+ {isEVMNetwork(network) ? : } +
+
+ ) } -const EVMResources = memo(() => { +function EVMResources() { const { t } = useI18n() return ( -
+
{
) -}) +} -const NonEVMResources = memo(() => { +function NonEVMResources() { const { t } = useI18n() return ( -
+
{
) -}) - -EVMResources.displayName = 'EVMResources' -NonEVMResources.displayName = 'NonEVMResources' - -const NetworkDetailsPage = memo(({ network }: NetworkDetailsPageProps) => { - const { t } = useI18n() - - return ( - <> -

{t('index.supportedNetworks.guides')}

- {isEVMNetwork(network) ? : } - - ) -}) - -NetworkDetailsPage.displayName = 'NetworkDetailsPage' - -export default NetworkDetailsPage +} diff --git a/website/src/supportedNetworks/NetworksTable.tsx b/website/src/supportedNetworks/NetworksTable.tsx new file mode 100644 index 000000000000..412bd4d041d3 --- /dev/null +++ b/website/src/supportedNetworks/NetworksTable.tsx @@ -0,0 +1,155 @@ +import { useMemo, useState } from 'react' + +import { + ButtonOrLink, + DottedRingsSpinner, + ExperimentalButton, + ExperimentalCopyButton, + ExperimentalLink, + ExperimentalSearch, + ExperimentalToggleChip, + Text, + useDebounce, +} from '@edgeandnode/gds' +import { Check, EyeClosed } from '@edgeandnode/gds/icons' +import { NetworkIcon } from '@edgeandnode/go' + +import { Callout, Table } from '@/components' +import { useI18n } from '@/i18n' + +import { getIconVariant, type ProcessedNetwork } from './utils' + +export function NetworksTable({ networks }: { networks: ProcessedNetwork[] }) { + const { t } = useI18n() + const [immediateSearchQuery, setSearchQuery] = useState('') + const [immediateShowTestnets, setShowTestnets] = useState(false) + + const searchQuery = useDebounce(immediateSearchQuery, 200) + const showTestnets = useDebounce(immediateShowTestnets, 200) + + const filteredNetworks = useMemo(() => { + let filteredNetworks = networks + // Filter by testnet + if (!showTestnets) { + filteredNetworks = filteredNetworks.filter((network) => String(network.networkType) !== 'testnet') + } + // Filter by search + if (searchQuery) { + const query = searchQuery.toLowerCase() + filteredNetworks = filteredNetworks.filter( + (network) => + network.id.toLowerCase().includes(query) || + network.shortName.toLowerCase().includes(query) || + network.fullName.toLowerCase().includes(query), + ) + } + return filteredNetworks + }, [networks, searchQuery, showTestnets]) + + return ( + <> + +

+ {t('index.supportedNetworks.infoText')}{' '} + + {t('index.supportedNetworks.infoLink')} + + . +

+
+ +
+
+ setSearchQuery(value)} + className="w-full" + /> +
+ { + setShowTestnets(!immediateShowTestnets) + }} + > + {t('index.supportedNetworks.showTestnets')} + +
+ + {filteredNetworks.length === 0 ? ( +
+
+ + + +
+

{t('index.supportedNetworks.emptySearch.title')}

+

+ {t('index.supportedNetworks.emptySearch.description', [searchQuery])} +

+
+ setSearchQuery('')}> + {t('index.supportedNetworks.emptySearch.clearSearch')} + +
+
+ ) : ( + + + + + + + + + + + {filteredNetworks.map((network) => ( + + + + + + + + + ))} + +
+ {t('index.supportedNetworks.tableHeaders.name')} + + {t('index.supportedNetworks.tableHeaders.id')} + + {t('index.supportedNetworks.tableHeaders.subgraphs')} + + {t('index.supportedNetworks.tableHeaders.substreams')} + + {t('index.supportedNetworks.tableHeaders.firehose')} + + {t('index.supportedNetworks.tableHeaders.tokenapi')} +
+ + + + {network.shortName} + + + + +
+ {network.id} +
+ +
+
+
{network.subgraphs ? : null}{network.substreams ? : null}{network.firehose ? : null}{network.tokenapi ? : null}
+ )} + + ) +} diff --git a/website/src/supportedNetworks/components/EmptySearchResults.tsx b/website/src/supportedNetworks/components/EmptySearchResults.tsx deleted file mode 100644 index 41f2edcb225a..000000000000 --- a/website/src/supportedNetworks/components/EmptySearchResults.tsx +++ /dev/null @@ -1,34 +0,0 @@ -import { Button, DottedRingsSpinner } from '@edgeandnode/gds' -import { EyeClosed } from '@edgeandnode/gds/icons' - -import { useI18n } from '@/i18n' - -interface EmptySearchResultsProps { - searchQuery: string - onClearSearch: () => void - showTestnets: boolean - onToggleTestnets: () => void -} - -export const EmptySearchResults = ({ searchQuery, onClearSearch }: EmptySearchResultsProps) => { - const { t } = useI18n() - - return ( -
-
- - - -
-

{t('index.supportedNetworks.emptySearch.title')}

-

- {t('index.supportedNetworks.emptySearch.description', [searchQuery])} -

-
- -
-
- ) -} diff --git a/website/src/supportedNetworks/components/NetworkFilters.tsx b/website/src/supportedNetworks/components/NetworkFilters.tsx deleted file mode 100644 index 17545b403b57..000000000000 --- a/website/src/supportedNetworks/components/NetworkFilters.tsx +++ /dev/null @@ -1,38 +0,0 @@ -import { memo } from 'react' - -import { ExperimentalSearch, ExperimentalToggleChip } from '@edgeandnode/gds' - -import { useI18n } from '@/i18n' - -interface NetworkFiltersProps { - searchQuery: string - setSearchQuery: (value: string) => void - showTestnets: boolean - onToggleTestnets: () => void -} - -export const NetworkFilters = ({ - searchQuery, - setSearchQuery, - showTestnets, - onToggleTestnets, -}: NetworkFiltersProps) => { - const { t } = useI18n() - - return ( -
-
- setSearchQuery(value)} - className="w-full" - /> -
- - {t('index.supportedNetworks.showTestnets')} - -
- ) -} diff --git a/website/src/supportedNetworks/components/NetworkPage.tsx b/website/src/supportedNetworks/components/NetworkPage.tsx deleted file mode 100644 index 40b33c14701e..000000000000 --- a/website/src/supportedNetworks/components/NetworkPage.tsx +++ /dev/null @@ -1,111 +0,0 @@ -import { NetworkType } from '@pinax/graph-networks-registry' -import Head from 'next/head' -import { useData } from 'nextra/hooks' -import { memo } from 'react' - -import { ExperimentalCopyButton, ExperimentalDescriptionList, ExperimentalLink, Skeleton } from '@edgeandnode/gds' -import { NetworkIcon } from '@edgeandnode/go' - -import { useI18n } from '@/i18n' - -import { getIconVariant, type Network, shouldShowSkeleton } from '../utils' - -import NetworkDetailsPage from './NetworkDetailsPage' - -interface NetworkPageProps { - network?: Network -} - -export const NetworkPage = memo(({ network }: NetworkPageProps) => { - const data = useData() - const contextNetwork = data?.ssg?.network || data?.network - const networkData: Network = network || - contextNetwork || { - id: '', - fullName: '', - networkType: NetworkType.Mainnet, - caip2Id: '', - } - - const { t } = useI18n() - - return ( - <> - - {networkData.fullName} - -
-
- {networkData.caip2Id ? ( -
- {shouldShowSkeleton(networkData.id) ? ( - - ) : ( - - )} -
- ) : null} -

{networkData.fullName}

-
- -
-
-
- - - {networkData.networkType} - - {networkData.graphNode?.protocol && ( - - {networkData.graphNode.protocol} - - )} - {networkData.id && ( - } - > - {networkData.id} - - )} - {networkData.caip2Id && ( - } - > - {networkData.caip2Id} - - )} - {networkData.nativeToken && ( - - {networkData.nativeToken} - - )} - {networkData.docsUrl && ( - - - {networkData.docsUrl} - - - )} - -
-
-
- -
- - -
- - ) -}) - -NetworkPage.displayName = 'NetworkPage' diff --git a/website/src/supportedNetworks/components/NetworkRow.tsx b/website/src/supportedNetworks/components/NetworkRow.tsx deleted file mode 100644 index b55987e66198..000000000000 --- a/website/src/supportedNetworks/components/NetworkRow.tsx +++ /dev/null @@ -1,52 +0,0 @@ -import { memo } from 'react' - -import { ButtonOrLink, ExperimentalCopyButton, Skeleton } from '@edgeandnode/gds' -import { Check } from '@edgeandnode/gds/icons' -import { NetworkIcon } from '@edgeandnode/go' - -import { getIconVariant, shouldShowSkeleton } from '@/supportedNetworks/utils' - -interface NetworkRowProps { - network: { - id: string - shortName: string - caip2Id: string - subgraphs: boolean - substreams: boolean - firehose: boolean - tokenapi: boolean - } - locale: string -} - -export const NetworkRow = memo(({ network, locale }: NetworkRowProps) => { - return ( - - - - - {shouldShowSkeleton(network.id) ? ( - - ) : ( - - )} - {network.shortName} - - - - - -
- {network.id} -
- -
-
- - {network.subgraphs ? : null} - {network.substreams ? : null} - {network.firehose ? : null} - {network.tokenapi ? : null} - - ) -}) diff --git a/website/src/supportedNetworks/components/NetworksTable.tsx b/website/src/supportedNetworks/components/NetworksTable.tsx deleted file mode 100644 index ae13ed5848ea..000000000000 --- a/website/src/supportedNetworks/components/NetworksTable.tsx +++ /dev/null @@ -1,52 +0,0 @@ -import { memo } from 'react' - -import { Text } from '@edgeandnode/gds' - -import { Table } from '@/components' -import { useI18n } from '@/i18n' - -import { NetworkRow } from './NetworkRow' -import { SkeletonRow } from './SkeletonRow' - -interface NetworksTableProps { - networks: any[] - isLoading: boolean - locale: string -} - -export const NetworksTable = memo(({ networks, isLoading, locale }: NetworksTableProps) => { - const { t } = useI18n() - - // Generate skeleton rows for loading state - const skeletonRows = Array.from({ length: 20 }, (_, index) => ) - - return ( - - - - - - - - - - - {isLoading - ? skeletonRows - : networks.map((network) => )} - -
- {t('index.supportedNetworks.tableHeaders.name')} - - {t('index.supportedNetworks.tableHeaders.id')} - - {t('index.supportedNetworks.tableHeaders.subgraphs')} - - {t('index.supportedNetworks.tableHeaders.substreams')} - - {t('index.supportedNetworks.tableHeaders.firehose')} - - {t('index.supportedNetworks.tableHeaders.tokenapi')} -
- ) -}) diff --git a/website/src/supportedNetworks/components/SkeletonRow.tsx b/website/src/supportedNetworks/components/SkeletonRow.tsx deleted file mode 100644 index 99c00e9125ee..000000000000 --- a/website/src/supportedNetworks/components/SkeletonRow.tsx +++ /dev/null @@ -1,31 +0,0 @@ -import { memo } from 'react' - -import { Skeleton } from '@edgeandnode/gds' - -export const SkeletonRow = memo(() => { - return ( - - -
- - -
- - - - - - - - - - - - - - - - - - ) -}) diff --git a/website/src/supportedNetworks/components/index.ts b/website/src/supportedNetworks/components/index.ts deleted file mode 100644 index eafd7e14d666..000000000000 --- a/website/src/supportedNetworks/components/index.ts +++ /dev/null @@ -1,7 +0,0 @@ -export * from './EmptySearchResults' -export * from './NetworkDetailsPage' -export * from './NetworkFilters' -export * from './NetworkPage' -export * from './NetworkRow' -export * from './NetworksTable' -export * from './SkeletonRow' diff --git a/website/src/supportedNetworks/index.tsx b/website/src/supportedNetworks/index.tsx index a2b052311b68..538545e9a757 100644 --- a/website/src/supportedNetworks/index.tsx +++ b/website/src/supportedNetworks/index.tsx @@ -1,109 +1,3 @@ -import { NetworksRegistry } from '@pinax/graph-networks-registry' -import { useRouter } from 'next/router' -import { useMemo, useState } from 'react' - -import { ExperimentalLink } from '@edgeandnode/gds' - -import { Callout } from '@/components' -import { useI18n } from '@/i18n' - -import { EmptySearchResults, NetworkFilters, NetworksTable } from './components' -import type { NetworkData, ProcessedNetwork } from './utils' -import { processNetworksData } from './utils' - -export async function getSupportedNetworks(): Promise { - const registry = await NetworksRegistry.fromLatestVersion() - return processNetworksData(registry.networks as NetworkData[]) -} - -export async function getSupportedNetworksStaticProps() { - return { - props: { - networks: await getSupportedNetworks(), - }, - } -} - -export function SupportedNetworksTable({ - networks, -}: Awaited>['props']) { - const { t } = useI18n() - const router = useRouter() - const { locale = 'en' } = router - const [searchQuery, setSearchQuery] = useState('') - const [showTestnets, setShowTestnets] = useState(false) - - const filteredNetworks = useMemo(() => { - let filtered = networks - - // Filter by testnet - if (!showTestnets) { - filtered = filtered.filter((network) => String(network.networkType) !== 'testnet') - } - - // Filter by search - if (searchQuery) { - const query = searchQuery.toLowerCase() - filtered = filtered.filter( - (network) => - network.id.toLowerCase().includes(query) || - network.shortName.toLowerCase().includes(query) || - network.fullName.toLowerCase().includes(query), - ) - } - - return filtered - }, [networks, searchQuery, showTestnets]) - - const noResults = filteredNetworks.length === 0 && searchQuery !== '' - - return ( - <> - -

- {t('index.supportedNetworks.infoText')}{' '} - - {t('index.supportedNetworks.infoLink')} - - . -

-
- - { - if (!showTestnets) { - if (noResults) { - setSearchQuery('') - } - setShowTestnets(true) - } else { - setShowTestnets(false) - } - }} - /> - - {filteredNetworks.length > 0 ? ( - - ) : ( - setSearchQuery('')} - showTestnets={showTestnets} - onToggleTestnets={() => { - if (!showTestnets) { - if (noResults) { - setSearchQuery('') - } - setShowTestnets(true) - } else { - setShowTestnets(false) - } - }} - /> - )} - - ) -} +export * from './NetworkDetailsPage' +export * from './NetworksTable' +export * from './utils' diff --git a/website/src/supportedNetworks/utils.ts b/website/src/supportedNetworks/utils.ts index f0517c581fc9..1487e97b68ac 100644 --- a/website/src/supportedNetworks/utils.ts +++ b/website/src/supportedNetworks/utils.ts @@ -1,31 +1,30 @@ -import { NetworkType } from '@pinax/graph-networks-registry' +import { NetworksRegistry, NetworkType } from '@pinax/graph-networks-registry' -// Networks that should use the "mono" icon variant +// Networks that should use the "mono" icon variant (TODO: add this feature to web3icons?) export const MONO_ICON_NETWORKS = [ + 'arweave-mainnet', + 'autonomys-taurus', + 'expchain-testnet', + 'fraxtal', + 'lens', + 'lens-testnet', + 'linea', + 'linea-sepolia', + 'lumia', + 'mbase', + 'megaeth-testnet', + 'soneium', + 'soneium-testnet', + 'sonic', + 'stellar', 'vana', 'vana-moksha', 'xlayer-mainnet', 'xlayer-sepolia', 'zksync-era', 'zksync-era-sepolia', - 'sonic', - 'soneium-testnet', - 'soneium', - 'linea-sepolia', - 'linea', - 'lens-testnet', - 'expchain-testnet', - 'autonomys-taurus', - 'arweave-mainnet', - 'fraxtal', - 'lumia', - 'mbase', - 'megaeth-testnet', ] -// TODO(@hayderkg, @benface, @0xa3k5): Add network icons to GDS for these networks -export const MISSING_ICON_NETWORKS: string[] = [] - // Networks with Token API support (TODO: remove once the registry has this information) export const TOKEN_API_NETWORKS = ['mainnet', 'base', 'bsc', 'arbitrum-one', 'matic', 'optimism'] @@ -33,14 +32,6 @@ export const getIconVariant = (networkId: string): 'mono' | 'branded' => { return MONO_ICON_NETWORKS.includes(networkId) ? 'mono' : 'branded' } -export const shouldShowSkeleton = (networkId: string): boolean => { - return MISSING_ICON_NETWORKS.includes(networkId) || !networkId -} - -export const supportsTokenAPI = (networkId: string): boolean => { - return TOKEN_API_NETWORKS.includes(networkId) -} - export interface Network { id: string fullName: string @@ -110,3 +101,16 @@ export const processNetworksData = (networks: NetworkData[]): ProcessedNetwork[] export const isEVMNetwork = (network: Network | NetworkData): boolean => { return network.caip2Id.startsWith('eip155:') } + +export async function getSupportedNetworks(): Promise { + const registry = await NetworksRegistry.fromLatestVersion() + return processNetworksData(registry.networks) +} + +export async function getSupportedNetworksStaticProps() { + return { + props: { + networks: await getSupportedNetworks(), + }, + } +} From 785db04ab9ada7079d1a8e7e3879420f8b4f900b Mon Sep 17 00:00:00 2001 From: benface Date: Mon, 7 Apr 2025 15:49:23 -0400 Subject: [PATCH 2/2] Simpler --- website/src/HomePage.tsx | 4 +- website/src/pages/[locale]/index.mdx | 4 +- .../[locale]/supported-networks/[id].mdx | 4 +- .../supportedNetworks/NetworkDetailsPage.tsx | 8 +-- .../src/supportedNetworks/NetworksTable.tsx | 6 +- website/src/supportedNetworks/utils.ts | 67 +++---------------- 6 files changed, 20 insertions(+), 73 deletions(-) diff --git a/website/src/HomePage.tsx b/website/src/HomePage.tsx index 13e498fb33c2..d175b8cd9056 100644 --- a/website/src/HomePage.tsx +++ b/website/src/HomePage.tsx @@ -14,9 +14,9 @@ import { NetworkIcon } from '@edgeandnode/go' import { Card, Heading, TimeIcon } from '@/components' import { useI18n } from '@/i18n' -import { type ProcessedNetwork } from '@/supportedNetworks' +import { type SupportedNetwork } from '@/supportedNetworks' -export default function HomePage({ supportedNetworks }: { supportedNetworks: ProcessedNetwork[] }) { +export default function HomePage({ supportedNetworks }: { supportedNetworks: SupportedNetwork[] }) { const { t } = useI18n() return ( diff --git a/website/src/pages/[locale]/index.mdx b/website/src/pages/[locale]/index.mdx index 7f4fc7388f40..5ec8da26076c 100644 --- a/website/src/pages/[locale]/index.mdx +++ b/website/src/pages/[locale]/index.mdx @@ -34,6 +34,4 @@ unwrapContent: true } } -export default function Page({ supportedNetworks }) { - return -} + diff --git a/website/src/pages/[locale]/supported-networks/[id].mdx b/website/src/pages/[locale]/supported-networks/[id].mdx index 5c65453c2e7f..9d227d2de211 100644 --- a/website/src/pages/[locale]/supported-networks/[id].mdx +++ b/website/src/pages/[locale]/supported-networks/[id].mdx @@ -50,6 +50,4 @@ parentRouteKey: supported-networks } } -export default function Page({ network }) { - return -} + diff --git a/website/src/supportedNetworks/NetworkDetailsPage.tsx b/website/src/supportedNetworks/NetworkDetailsPage.tsx index a4cde1dc99ad..613450d6d639 100644 --- a/website/src/supportedNetworks/NetworkDetailsPage.tsx +++ b/website/src/supportedNetworks/NetworkDetailsPage.tsx @@ -5,9 +5,9 @@ import { NetworkIcon } from '@edgeandnode/go' import { Card, TimeIcon } from '@/components' import { useI18n } from '@/i18n' -import { getIconVariant, isEVMNetwork, type Network } from './utils' +import { getIconVariant, type SupportedNetwork } from './utils' -export function NetworkDetailsPage({ network }: { network: Network }) { +export function NetworkDetailsPage({ network }: { network: SupportedNetwork }) { const { t } = useI18n() return ( @@ -70,9 +70,7 @@ export function NetworkDetailsPage({ network }: { network: Network }) {

{t('index.supportedNetworks.guides')}

-
- {isEVMNetwork(network) ? : } -
+
{network.evm ? : }
) } diff --git a/website/src/supportedNetworks/NetworksTable.tsx b/website/src/supportedNetworks/NetworksTable.tsx index 412bd4d041d3..abc2f9090b8b 100644 --- a/website/src/supportedNetworks/NetworksTable.tsx +++ b/website/src/supportedNetworks/NetworksTable.tsx @@ -17,9 +17,9 @@ import { NetworkIcon } from '@edgeandnode/go' import { Callout, Table } from '@/components' import { useI18n } from '@/i18n' -import { getIconVariant, type ProcessedNetwork } from './utils' +import { getIconVariant, type SupportedNetwork } from './utils' -export function NetworksTable({ networks }: { networks: ProcessedNetwork[] }) { +export function NetworksTable({ networks }: { networks: SupportedNetwork[] }) { const { t } = useI18n() const [immediateSearchQuery, setSearchQuery] = useState('') const [immediateShowTestnets, setShowTestnets] = useState(false) @@ -144,7 +144,7 @@ export function NetworksTable({ networks }: { networks: ProcessedNetwork[] }) { {network.subgraphs ? : null} {network.substreams ? : null} {network.firehose ? : null} - {network.tokenapi ? : null} + {network.tokenApi ? : null} ))} diff --git a/website/src/supportedNetworks/utils.ts b/website/src/supportedNetworks/utils.ts index 1487e97b68ac..ad0fa27a50a5 100644 --- a/website/src/supportedNetworks/utils.ts +++ b/website/src/supportedNetworks/utils.ts @@ -1,4 +1,4 @@ -import { NetworksRegistry, NetworkType } from '@pinax/graph-networks-registry' +import { NetworksRegistry } from '@pinax/graph-networks-registry' // Networks that should use the "mono" icon variant (TODO: add this feature to web3icons?) export const MONO_ICON_NETWORKS = [ @@ -32,80 +32,33 @@ export const getIconVariant = (networkId: string): 'mono' | 'branded' => { return MONO_ICON_NETWORKS.includes(networkId) ? 'mono' : 'branded' } -export interface Network { - id: string - fullName: string - shortName?: string - networkType: NetworkType - graphNode?: { - protocol: string - } - caip2Id: string - nativeToken?: string - docsUrl?: string -} - -export interface NetworkData { - id: string - shortName: string - fullName: string - networkType: NetworkType - caip2Id: string - services: { - subgraphs?: any[] - substreams?: any[] - firehose?: any[] - } -} - -export interface ProcessedNetwork { - id: string - shortName: string - fullName: string - networkType: NetworkType - caip2Id: string - subgraphs: boolean - substreams: boolean - firehose: boolean - tokenapi: boolean - services: { - subgraphs?: any[] - substreams?: any[] - firehose?: any[] - } -} - -export const processNetworksData = (networks: NetworkData[]): ProcessedNetwork[] => { - return networks +export async function getSupportedNetworks() { + const registry = await NetworksRegistry.fromLatestVersion() + return registry.networks .flatMap((network) => { + const evm = network.caip2Id.startsWith('eip155:') const subgraphs = Boolean(network.services.subgraphs?.length) const substreams = Boolean(network.services.substreams?.length) const firehose = Boolean(network.services.firehose?.length) - const tokenapi = TOKEN_API_NETWORKS.includes(network.id) - if (!subgraphs && !substreams && !firehose && !tokenapi) { + const tokenApi = TOKEN_API_NETWORKS.includes(network.id) + if (!subgraphs && !substreams && !firehose && !tokenApi) { return [] } return [ { ...network, + evm, subgraphs, substreams, firehose, - tokenapi, + tokenApi, }, ] }) .sort((a, b) => a.fullName.localeCompare(b.fullName)) } -export const isEVMNetwork = (network: Network | NetworkData): boolean => { - return network.caip2Id.startsWith('eip155:') -} - -export async function getSupportedNetworks(): Promise { - const registry = await NetworksRegistry.fromLatestVersion() - return processNetworksData(registry.networks) -} +export type SupportedNetwork = Awaited>[number] export async function getSupportedNetworksStaticProps() { return {