From d9cb1af55704ab51231b5a974b7ffd9b098510fe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A9lcio=20Franco?= Date: Wed, 1 Jan 2025 16:52:12 +0800 Subject: [PATCH 01/19] feat: add VITE_ECOSYSTEM_PROJECTS_URL --- packages/app/.env.example | 1 + packages/app/.env.production | 1 + 2 files changed, 2 insertions(+) diff --git a/packages/app/.env.example b/packages/app/.env.example index 69b452d2c..bdeaa5721 100644 --- a/packages/app/.env.example +++ b/packages/app/.env.example @@ -3,6 +3,7 @@ VITE_CRX_VERSION_API="https://fuellabs.github.io/fuels-wallet/latest.json" VITE_FUEL_PROVIDER_URL=http://localhost:4000/v1/graphql VITE_FUEL_FAUCET_URL=http://localhost:4040 VITE_EXPLORER_URL=https://app.fuel.network/ +VITE_ECOSYSTEM_PROJECTS_URL=https://fuellabs.github.io/fuel-ecosystem/projects.json VITE_MNEMONIC_WORDS=12 GENESIS_SECRET=0xa449b1ffee0e2205fa924c6740cc48b3b473aa28587df6dab12abc245d1f5298 VITE_AUTO_LOCK_IN_MINUTES=1 diff --git a/packages/app/.env.production b/packages/app/.env.production index a5dae496a..0055929e3 100644 --- a/packages/app/.env.production +++ b/packages/app/.env.production @@ -4,6 +4,7 @@ VITE_CRX_RELEASE=true VITE_FUEL_PROVIDER_URL=https://testnet.fuel.network/v1/graphql VITE_FUEL_FAUCET_URL=https://faucet-testnet.fuel.network/ VITE_EXPLORER_URL=https://app.fuel.network/ +VITE_ECOSYSTEM_PROJECTS_URL=https://fuellabs.github.io/fuel-ecosystem/projects.json VITE_MNEMONIC_WORDS=12 VITE_AUTO_LOCK_IN_MINUTES=2880 VITE_SENTRY_DSN=https://f9a5b923067f4f789fb40ed7eccd6486@o4505280621707264.ingest.sentry.io/4505280648577024 From 0b40e8943a844ea3a5b5c52836244a60c938d550 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A9lcio=20Franco?= Date: Wed, 1 Jan 2025 17:05:25 +0800 Subject: [PATCH 02/19] fix: remove unused package --- packages/app/package.json | 2 - pnpm-lock.yaml | 311 +++++++++++++++++--------------------- 2 files changed, 142 insertions(+), 171 deletions(-) diff --git a/packages/app/package.json b/packages/app/package.json index c27a21a16..2c83793a4 100644 --- a/packages/app/package.json +++ b/packages/app/package.json @@ -34,7 +34,6 @@ "@sentry/react": "8.33.1", "@storybook/addon-viewport": "7.4.6", "@storybook/jest": "0.2.3", - "@tanstack/react-query": "5.28.4", "@xstate/react": "3.2.2", "compare-versions": "6.1.0", "cross-fetch": "4.0.0", @@ -84,7 +83,6 @@ "@storybook/react-webpack5": "7.4.6", "@storybook/testing-library": "0.2.2", "@storybook/theming": "7.4.6", - "@tanstack/react-query-devtools": "5.28.4", "@testing-library/react": "14.0.0", "@types/chrome": "0.0.246", "@types/lodash.debounce": "4.0.7", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 11ce7dac5..c7c0f9451 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -100,7 +100,7 @@ importers: version: 3.0.0 jest: specifier: 29.7.0 - version: 29.7.0(@types/node@20.8.4)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)) + version: 29.7.0(@types/node@20.8.4)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)) jest-environment-jsdom: specifier: 29.7.0 version: 29.7.0(bufferutil@4.0.8)(utf-8-validate@6.0.4) @@ -115,10 +115,10 @@ importers: version: 4.1.5 ts-jest: specifier: ^29.1.1 - version: 29.1.1(@babel/core@7.23.2)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.23.2))(jest@29.7.0(@types/node@20.8.4)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)))(typescript@5.2.2) + version: 29.1.1(@babel/core@7.23.2)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.23.2))(jest@29.7.0(@types/node@20.8.4)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)))(typescript@5.2.2) ts-node: specifier: ^10.9.1 - version: 10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2) + version: 10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2) turbo: specifier: ^1.10.15 version: 1.10.15 @@ -133,7 +133,7 @@ importers: dependencies: '@fuels/connectors': specifier: 0.35.1 - version: 0.35.1(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(@wagmi/connectors@5.1.15(@types/react@18.3.3)(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.24.0)(@babel/preset-env@7.22.9(@babel/core@7.24.0))(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10))(react@18.3.1)(rollup@4.28.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4))(zod@3.22.4))(bufferutil@4.0.8)(fuels@0.96.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4) + version: 0.35.1(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(@wagmi/connectors@5.1.15(@types/react@18.3.3)(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.24.0)(@babel/preset-env@7.22.9(@babel/core@7.24.0))(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10))(react@18.3.1)(rollup@4.28.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4))(zod@3.22.4))(bufferutil@4.0.8)(fuels@0.96.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4) '@fuels/react': specifier: 0.35.1 version: 0.35.1(@tanstack/react-query@5.28.4(react@18.3.1))(@types/react-dom@18.3.0)(@types/react@18.3.3)(fuels@0.96.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -185,7 +185,7 @@ importers: version: 0.23.3(@fuel-ui/css@0.23.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@fuel-ui/icons@0.23.3)(@types/react-dom@18.3.0)(@types/react@18.3.3)(fuels@0.96.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@fuel-ui/test-utils': specifier: 0.17.0 - version: 0.17.0(@babel/core@7.24.0)(@jest/types@29.6.3)(@types/node@22.10.1)(babel-jest@29.7.0(@babel/core@7.24.0))(bufferutil@4.0.8)(esbuild@0.24.0)(react@18.3.1)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2))(typescript@5.2.2)(utf-8-validate@5.0.10) + version: 0.17.0(@babel/core@7.24.0)(@jest/types@29.6.3)(@types/node@22.10.1)(babel-jest@29.7.0(@babel/core@7.24.0))(bufferutil@4.0.8)(esbuild@0.18.20)(react@18.3.1)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2))(typescript@5.2.2)(utf-8-validate@5.0.10) '@fuel-wallet/connections': specifier: workspace:* version: link:../connections @@ -197,7 +197,7 @@ importers: version: link:../playwright-utils '@fuels/react-xstore': specifier: 0.20.0 - version: 0.20.0(@types/react@18.3.3)(@types/ws@8.5.12)(@xstate/react@3.2.2(@types/react@18.3.3)(react@18.3.1)(xstate@4.38.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(ws@8.17.1(bufferutil@4.0.8)(utf-8-validate@5.0.10))(xstate@4.38.2) + version: 0.20.0(@types/react@18.3.3)(@types/ws@8.5.12)(@xstate/react@3.2.2(@types/react@18.3.3)(react@18.3.1)(xstate@4.38.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(ws@8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(xstate@4.38.2) '@hookform/resolvers': specifier: 3.9.0 version: 3.9.0(react-hook-form@7.47.0(react@18.3.1)) @@ -212,10 +212,7 @@ importers: version: 7.4.6(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@storybook/jest': specifier: 0.2.3 - version: 0.2.3(@jest/globals@29.7.0)(jest@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2))) - '@tanstack/react-query': - specifier: 5.28.4 - version: 5.28.4(react@18.3.1) + version: 0.2.3(@jest/globals@29.7.0)(jest@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2))) '@xstate/react': specifier: 3.2.2 version: 3.2.2(@types/react@18.3.3)(react@18.3.1)(xstate@4.38.2) @@ -300,7 +297,7 @@ importers: version: link:../types '@fuels/connectors': specifier: 0.35.1 - version: 0.35.1(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(@wagmi/connectors@5.1.15(@types/react@18.3.3)(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.24.0)(@babel/preset-env@7.22.9(@babel/core@7.24.0))(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10))(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4))(zod@3.22.4))(bufferutil@4.0.8)(fuels@0.96.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4) + version: 0.35.1(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(@wagmi/connectors@5.1.15(@types/react@18.3.3)(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.24.0)(@babel/preset-env@7.22.9(@babel/core@7.24.0))(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10))(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4))(zod@3.22.4))(bufferutil@4.0.8)(fuels@0.96.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4) '@playwright/test': specifier: 1.46.1 version: 1.46.1 @@ -348,16 +345,13 @@ importers: version: 7.4.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.2.2)(vite@6.0.3(@types/node@22.10.1)(jiti@2.3.3)(terser@5.37.0)(yaml@2.6.1)) '@storybook/react-webpack5': specifier: 7.4.6 - version: 7.4.6(@babel/core@7.24.0)(@swc/core@1.3.92(@swc/helpers@0.5.11))(@swc/helpers@0.5.11)(@types/react-dom@18.3.0)(@types/react@18.3.3)(esbuild@0.24.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(type-fest@2.19.0)(typescript@5.2.2)(webpack-hot-middleware@2.25.4) + version: 7.4.6(@babel/core@7.24.0)(@swc/core@1.3.92(@swc/helpers@0.5.11))(@swc/helpers@0.5.11)(@types/react-dom@18.3.0)(@types/react@18.3.3)(esbuild@0.18.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(type-fest@2.19.0)(typescript@5.2.2)(webpack-hot-middleware@2.25.4) '@storybook/testing-library': specifier: 0.2.2 version: 0.2.2 '@storybook/theming': specifier: 7.4.6 version: 7.4.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@tanstack/react-query-devtools': - specifier: 5.28.4 - version: 5.28.4(@tanstack/react-query@5.28.4(react@18.3.1))(react@18.3.1) '@testing-library/react': specifier: 14.0.0 version: 14.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -387,7 +381,7 @@ importers: version: 4.1.0(vite@6.0.3(@types/node@22.10.1)(jiti@2.3.3)(terser@5.37.0)(yaml@2.6.1)) '@xstate/inspect': specifier: 0.8.0 - version: 0.8.0(@types/ws@8.5.12)(ws@8.17.1(bufferutil@4.0.8)(utf-8-validate@5.0.10))(xstate@4.38.2) + version: 0.8.0(@types/ws@8.5.12)(ws@8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(xstate@4.38.2) jszip: specifier: 3.10.1 version: 3.10.1 @@ -408,7 +402,7 @@ importers: version: 3.0.1(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) ts-jest-mock-import-meta: specifier: 1.1.0 - version: 1.1.0(ts-jest@29.1.2(@babel/core@7.24.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.0))(esbuild@0.24.0)(jest@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)))(typescript@5.2.2)) + version: 1.1.0(ts-jest@29.1.2(@babel/core@7.24.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.0))(esbuild@0.18.20)(jest@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)))(typescript@5.2.2)) tsconfig-paths-webpack-plugin: specifier: 4.1.0 version: 4.1.0 @@ -463,7 +457,7 @@ importers: version: 29.6.2(bufferutil@4.0.8)(utf-8-validate@6.0.4) tsup: specifier: ^7.2.0 - version: 7.2.0(@swc/core@1.3.92(@swc/helpers@0.5.11))(postcss@8.4.49)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@22.10.1)(typescript@5.2.2))(typescript@5.2.2) + version: 7.2.0(@swc/core@1.3.92)(postcss@8.4.49)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2))(typescript@5.2.2) undici: specifier: ^6.4.0 version: 6.16.1 @@ -614,7 +608,7 @@ importers: version: 15.5.8 next-images: specifier: 1.8.5 - version: 1.8.5(webpack@5.91.0(@swc/core@1.3.92(@swc/helpers@0.5.11))) + version: 1.8.5(webpack@5.91.0(@swc/core@1.3.92)) prettier: specifier: 2.8.8 version: 2.8.8 @@ -703,7 +697,7 @@ importers: version: 0.26.0(typescript@5.2.2) '@fuels/tsup-config': specifier: ^0.26.0 - version: 0.26.0(tsup@7.2.0(@swc/core@1.3.92(@swc/helpers@0.5.11))(postcss@8.4.49)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@22.10.1)(typescript@5.2.2))(typescript@5.2.2)) + version: 0.26.0(tsup@7.2.0(@swc/core@1.3.92)(postcss@8.4.49)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2))(typescript@5.2.2)) '@playwright/test': specifier: 1.46.1 version: 1.46.1 @@ -715,7 +709,7 @@ importers: version: 0.96.1 tsup: specifier: ^7.2.0 - version: 7.2.0(@swc/core@1.3.92(@swc/helpers@0.5.11))(postcss@8.4.49)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@22.10.1)(typescript@5.2.2))(typescript@5.2.2) + version: 7.2.0(@swc/core@1.3.92)(postcss@8.4.49)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2))(typescript@5.2.2) packages/types: devDependencies: @@ -730,7 +724,7 @@ importers: version: 1.7.0 tsup: specifier: ^7.2.0 - version: 7.2.0(@swc/core@1.3.92(@swc/helpers@0.5.11))(postcss@8.4.49)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@22.10.1)(typescript@5.2.2))(typescript@5.2.2) + version: 7.2.0(@swc/core@1.3.92)(postcss@8.4.49)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2))(typescript@5.2.2) packages: @@ -17821,14 +17815,14 @@ snapshots: - csstype - immer - '@fuel-ui/test-utils@0.17.0(@babel/core@7.24.0)(@jest/types@29.6.3)(@types/node@22.10.1)(babel-jest@29.7.0(@babel/core@7.24.0))(bufferutil@4.0.8)(esbuild@0.24.0)(react@18.3.1)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2))(typescript@5.2.2)(utf-8-validate@5.0.10)': + '@fuel-ui/test-utils@0.17.0(@babel/core@7.24.0)(@jest/types@29.6.3)(@types/node@22.10.1)(babel-jest@29.7.0(@babel/core@7.24.0))(bufferutil@4.0.8)(esbuild@0.18.20)(react@18.3.1)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2))(typescript@5.2.2)(utf-8-validate@5.0.10)': dependencies: '@testing-library/dom': 9.3.1 '@testing-library/jest-dom': 5.17.0 '@testing-library/react': 14.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@testing-library/user-event': 14.4.3(@testing-library/dom@9.3.1) identity-obj-proxy: 3.0.0 - jest: 29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)) + jest: 29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)) jest-axe: 7.0.1 jest-environment-jsdom: 29.7.0(bufferutil@4.0.8)(utf-8-validate@5.0.10) jest-fail-on-console: 3.1.1 @@ -17837,7 +17831,7 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) resize-observer-polyfill: 1.5.1 - ts-jest: 29.1.1(@babel/core@7.24.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.0))(esbuild@0.24.0)(jest@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)))(typescript@5.2.2) + ts-jest: 29.1.1(@babel/core@7.24.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.0))(esbuild@0.18.20)(jest@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)))(typescript@5.2.2) transitivePeerDependencies: - '@babel/core' - '@jest/types' @@ -17853,7 +17847,7 @@ snapshots: - typescript - utf-8-validate - '@fuels/connectors@0.35.1(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(@wagmi/connectors@5.1.15(@types/react@18.3.3)(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.24.0)(@babel/preset-env@7.22.9(@babel/core@7.24.0))(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10))(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4))(zod@3.22.4))(bufferutil@4.0.8)(fuels@0.96.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)': + '@fuels/connectors@0.35.1(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(@wagmi/connectors@5.1.15(@types/react@18.3.3)(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.24.0)(@babel/preset-env@7.22.9(@babel/core@7.24.0))(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10))(react@18.3.1)(rollup@4.28.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4))(zod@3.22.4))(bufferutil@4.0.8)(fuels@0.96.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)': dependencies: '@ethereumjs/util': 9.0.3 '@ethersproject/bytes': 5.7.0 @@ -17862,7 +17856,7 @@ snapshots: '@web3modal/core': 5.0.0(@types/react@18.3.3)(react@18.3.1) '@web3modal/scaffold': 5.0.0(@types/react@18.3.3)(react@18.3.1) '@web3modal/solana': 5.0.0(@types/react@18.3.3)(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(utf-8-validate@5.0.10) - '@web3modal/wagmi': 5.0.0(@types/react@18.3.3)(@wagmi/connectors@5.1.15(@types/react@18.3.3)(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.24.0)(@babel/preset-env@7.22.9(@babel/core@7.24.0))(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10))(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4))(zod@3.22.4))(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(utf-8-validate@5.0.10)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)) + '@web3modal/wagmi': 5.0.0(mblhjn6m33wjwkbzx4fzfzhbky) fuels: 0.96.1 rpc-websockets: 7.11.0 socket.io-client: 4.7.2(bufferutil@4.0.8)(utf-8-validate@5.0.10) @@ -17904,7 +17898,7 @@ snapshots: '@web3modal/core': 5.0.0(@types/react@18.3.3)(react@18.3.1) '@web3modal/scaffold': 5.0.0(@types/react@18.3.3)(react@18.3.1) '@web3modal/solana': 5.0.0(@types/react@18.3.3)(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(utf-8-validate@5.0.10) - '@web3modal/wagmi': 5.0.0(qqlniacmsq4eppe2koaw4losde) + '@web3modal/wagmi': 5.0.0(jej2gwalgmrgxmxobeqysvyvfm) fuels: 0.96.1 rpc-websockets: 7.11.0 socket.io-client: 4.7.2(bufferutil@4.0.8)(utf-8-validate@5.0.10) @@ -17937,7 +17931,7 @@ snapshots: - vue - zod - '@fuels/connectors@0.35.1(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(@wagmi/connectors@5.1.15(@types/react@18.3.3)(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.24.0)(@babel/preset-env@7.22.9(@babel/core@7.24.0))(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10))(react@18.3.1)(rollup@4.28.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4))(zod@3.22.4))(bufferutil@4.0.8)(fuels@0.96.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)': + '@fuels/connectors@0.35.1(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(@wagmi/connectors@5.1.15(@types/react@18.3.3)(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.24.0)(@babel/preset-env@7.22.9(@babel/core@7.24.0))(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10))(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4))(zod@3.22.4))(bufferutil@4.0.8)(fuels@0.96.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)': dependencies: '@ethereumjs/util': 9.0.3 '@ethersproject/bytes': 5.7.0 @@ -17946,7 +17940,7 @@ snapshots: '@web3modal/core': 5.0.0(@types/react@18.3.3)(react@18.3.1) '@web3modal/scaffold': 5.0.0(@types/react@18.3.3)(react@18.3.1) '@web3modal/solana': 5.0.0(@types/react@18.3.3)(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(utf-8-validate@5.0.10) - '@web3modal/wagmi': 5.0.0(ezuqx6bf45t3pdbvsmxwjnazoy) + '@web3modal/wagmi': 5.0.0(@types/react@18.3.3)(@wagmi/connectors@5.1.15(@types/react@18.3.3)(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.24.0)(@babel/preset-env@7.22.9(@babel/core@7.24.0))(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10))(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4))(zod@3.22.4))(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(utf-8-validate@5.0.10)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)) fuels: 0.96.1 rpc-websockets: 7.11.0 socket.io-client: 4.7.2(bufferutil@4.0.8)(utf-8-validate@5.0.10) @@ -17988,7 +17982,7 @@ snapshots: '@web3modal/core': 5.0.0(@types/react@18.3.3)(react@18.3.1) '@web3modal/scaffold': 5.0.0(@types/react@18.3.3)(react@18.3.1) '@web3modal/solana': 5.0.0(@types/react@18.3.3)(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(utf-8-validate@5.0.10) - '@web3modal/wagmi': 5.0.0(m4v6zlnqzs7w6wfpqenssu6tam) + '@web3modal/wagmi': 5.0.0(ey72nvkahzqmmk2vaz5ynr4c74) fuels: 0.96.1 rpc-websockets: 7.11.0 socket.io-client: 4.7.2(bufferutil@4.0.8)(utf-8-validate@5.0.10) @@ -18025,10 +18019,10 @@ snapshots: '@fuels/local-storage@0.26.0': {} - '@fuels/react-xstore@0.20.0(@types/react@18.3.3)(@types/ws@8.5.12)(@xstate/react@3.2.2(@types/react@18.3.3)(react@18.3.1)(xstate@4.38.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(ws@8.17.1(bufferutil@4.0.8)(utf-8-validate@5.0.10))(xstate@4.38.2)': + '@fuels/react-xstore@0.20.0(@types/react@18.3.3)(@types/ws@8.5.12)(@xstate/react@3.2.2(@types/react@18.3.3)(react@18.3.1)(xstate@4.38.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(ws@8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(xstate@4.38.2)': dependencies: '@fuels/local-storage': 0.20.0 - '@xstate/inspect': 0.8.0(@types/ws@8.5.12)(ws@8.17.1(bufferutil@4.0.8)(utf-8-validate@5.0.10))(xstate@4.38.2) + '@xstate/inspect': 0.8.0(@types/ws@8.5.12)(ws@8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(xstate@4.38.2) '@xstate/react': 3.2.2(@types/react@18.3.3)(react@18.3.1)(xstate@4.38.2) fast-equals: 5.0.1 jotai: 2.7.1(@types/react@18.3.3)(react@18.3.1) @@ -18057,12 +18051,12 @@ snapshots: dependencies: typescript: 5.2.2 - '@fuels/tsup-config@0.26.0(tsup@7.2.0(@swc/core@1.3.92(@swc/helpers@0.5.11))(postcss@8.4.49)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@22.10.1)(typescript@5.2.2))(typescript@5.2.2))': + '@fuels/tsup-config@0.26.0(tsup@7.2.0(@swc/core@1.3.92)(postcss@8.4.49)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2))(typescript@5.2.2))': dependencies: dotenv: 16.4.5 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - tsup: 7.2.0(@swc/core@1.3.92(@swc/helpers@0.5.11))(postcss@8.4.49)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@22.10.1)(typescript@5.2.2))(typescript@5.2.2) + tsup: 7.2.0(@swc/core@1.3.92)(postcss@8.4.49)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2))(typescript@5.2.2) '@fuels/vm-asm@0.58.0': {} @@ -18139,7 +18133,7 @@ snapshots: jest-util: 29.7.0 slash: 3.0.0 - '@jest/core@29.7.0(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2))': + '@jest/core@29.7.0(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2))': dependencies: '@jest/console': 29.7.0 '@jest/reporters': 29.7.0 @@ -18153,7 +18147,7 @@ snapshots: exit: 0.1.2 graceful-fs: 4.2.11 jest-changed-files: 29.7.0 - jest-config: 29.7.0(@types/node@20.12.11)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)) + jest-config: 29.7.0(@types/node@20.12.11)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)) jest-haste-map: 29.7.0 jest-message-util: 29.7.0 jest-regex-util: 29.6.3 @@ -18938,7 +18932,7 @@ snapshots: playwright: 1.49.1 optional: true - '@pmmmwh/react-refresh-webpack-plugin@0.5.10(react-refresh@0.11.0)(type-fest@2.19.0)(webpack-hot-middleware@2.25.4)(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0))': + '@pmmmwh/react-refresh-webpack-plugin@0.5.10(react-refresh@0.11.0)(type-fest@2.19.0)(webpack-hot-middleware@2.25.4)(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20))': dependencies: ansi-html-community: 0.0.8 common-path-prefix: 3.0.0 @@ -18950,7 +18944,7 @@ snapshots: react-refresh: 0.11.0 schema-utils: 3.3.0 source-map: 0.7.4 - webpack: 5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0) + webpack: 5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20) optionalDependencies: type-fest: 2.19.0 webpack-hot-middleware: 2.25.4 @@ -21848,7 +21842,7 @@ snapshots: - encoding - supports-color - '@storybook/builder-webpack5@7.4.6(@swc/helpers@0.5.11)(@types/react-dom@18.3.0)(@types/react@18.3.3)(esbuild@0.24.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.2.2)': + '@storybook/builder-webpack5@7.4.6(@swc/helpers@0.5.11)(@types/react-dom@18.3.0)(@types/react@18.3.3)(esbuild@0.18.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.2.2)': dependencies: '@babel/core': 7.24.0 '@storybook/addons': 7.4.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -21870,30 +21864,30 @@ snapshots: '@swc/core': 1.3.92(@swc/helpers@0.5.11) '@types/node': 16.18.97 '@types/semver': 7.5.6 - babel-loader: 9.1.3(@babel/core@7.24.0)(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0)) + babel-loader: 9.1.3(@babel/core@7.24.0)(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20)) babel-plugin-named-exports-order: 0.0.2 browser-assert: 1.2.1 case-sensitive-paths-webpack-plugin: 2.4.0 constants-browserify: 1.0.0 - css-loader: 6.8.1(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0)) + css-loader: 6.8.1(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20)) express: 4.19.2 - fork-ts-checker-webpack-plugin: 8.0.0(typescript@5.2.2)(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0)) + fork-ts-checker-webpack-plugin: 8.0.0(typescript@5.2.2)(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20)) fs-extra: 11.1.1 - html-webpack-plugin: 5.5.3(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0)) + html-webpack-plugin: 5.5.3(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20)) path-browserify: 1.0.1 process: 0.11.10 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) semver: 7.5.4 - style-loader: 3.3.3(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0)) - swc-loader: 0.2.3(@swc/core@1.3.92(@swc/helpers@0.5.11))(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0)) - terser-webpack-plugin: 5.3.9(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0)(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0)) + style-loader: 3.3.3(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20)) + swc-loader: 0.2.3(@swc/core@1.3.92(@swc/helpers@0.5.11))(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20)) + terser-webpack-plugin: 5.3.9(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20)(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20)) ts-dedent: 2.2.0 url: 0.11.1 util: 0.12.5 util-deprecate: 1.0.2 - webpack: 5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0) - webpack-dev-middleware: 6.1.3(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0)) + webpack: 5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20) + webpack-dev-middleware: 6.1.3(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20)) webpack-hot-middleware: 2.25.4 webpack-virtual-modules: 0.5.0 optionalDependencies: @@ -22163,10 +22157,10 @@ snapshots: '@storybook/global': 5.0.0 '@storybook/preview-api': 7.4.6 - '@storybook/jest@0.2.3(@jest/globals@29.7.0)(jest@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)))': + '@storybook/jest@0.2.3(@jest/globals@29.7.0)(jest@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)))': dependencies: '@storybook/expect': 28.1.3-5 - '@testing-library/jest-dom': 6.1.4(@jest/globals@29.7.0)(@types/jest@28.1.3)(jest@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2))) + '@testing-library/jest-dom': 6.1.4(@jest/globals@29.7.0)(@types/jest@28.1.3)(jest@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2))) '@types/jest': 28.1.3 jest-mock: 27.5.1 transitivePeerDependencies: @@ -22202,16 +22196,16 @@ snapshots: '@storybook/postinstall@7.4.6': {} - '@storybook/preset-react-webpack@7.4.6(@babel/core@7.24.0)(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(type-fest@2.19.0)(typescript@5.2.2)(webpack-hot-middleware@2.25.4)': + '@storybook/preset-react-webpack@7.4.6(@babel/core@7.24.0)(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(type-fest@2.19.0)(typescript@5.2.2)(webpack-hot-middleware@2.25.4)': dependencies: '@babel/preset-flow': 7.22.5(@babel/core@7.24.0) '@babel/preset-react': 7.22.5(@babel/core@7.24.0) - '@pmmmwh/react-refresh-webpack-plugin': 0.5.10(react-refresh@0.11.0)(type-fest@2.19.0)(webpack-hot-middleware@2.25.4)(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0)) + '@pmmmwh/react-refresh-webpack-plugin': 0.5.10(react-refresh@0.11.0)(type-fest@2.19.0)(webpack-hot-middleware@2.25.4)(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20)) '@storybook/core-webpack': 7.4.6 '@storybook/docs-tools': 7.4.6 '@storybook/node-logger': 7.4.6 '@storybook/react': 7.4.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.2.2) - '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.2.2)(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0)) + '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.2.2)(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20)) '@types/node': 16.18.97 '@types/semver': 7.5.6 babel-plugin-add-react-displayname: 0.0.5 @@ -22221,7 +22215,7 @@ snapshots: react-dom: 18.3.1(react@18.3.1) react-refresh: 0.11.0 semver: 7.5.4 - webpack: 5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0) + webpack: 5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20) optionalDependencies: '@babel/core': 7.24.0 typescript: 5.2.2 @@ -22258,7 +22252,7 @@ snapshots: '@storybook/preview@7.4.6': {} - '@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0(typescript@5.2.2)(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0))': + '@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0(typescript@5.2.2)(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20))': dependencies: debug: 4.3.4 endent: 2.1.0 @@ -22268,7 +22262,7 @@ snapshots: react-docgen-typescript: 2.2.2(typescript@5.2.2) tslib: 2.6.2 typescript: 5.2.2 - webpack: 5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0) + webpack: 5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20) transitivePeerDependencies: - supports-color @@ -22298,10 +22292,10 @@ snapshots: - typescript - vite-plugin-glimmerx - '@storybook/react-webpack5@7.4.6(@babel/core@7.24.0)(@swc/core@1.3.92(@swc/helpers@0.5.11))(@swc/helpers@0.5.11)(@types/react-dom@18.3.0)(@types/react@18.3.3)(esbuild@0.24.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(type-fest@2.19.0)(typescript@5.2.2)(webpack-hot-middleware@2.25.4)': + '@storybook/react-webpack5@7.4.6(@babel/core@7.24.0)(@swc/core@1.3.92(@swc/helpers@0.5.11))(@swc/helpers@0.5.11)(@types/react-dom@18.3.0)(@types/react@18.3.3)(esbuild@0.18.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(type-fest@2.19.0)(typescript@5.2.2)(webpack-hot-middleware@2.25.4)': dependencies: - '@storybook/builder-webpack5': 7.4.6(@swc/helpers@0.5.11)(@types/react-dom@18.3.0)(@types/react@18.3.3)(esbuild@0.24.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.2.2) - '@storybook/preset-react-webpack': 7.4.6(@babel/core@7.24.0)(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(type-fest@2.19.0)(typescript@5.2.2)(webpack-hot-middleware@2.25.4) + '@storybook/builder-webpack5': 7.4.6(@swc/helpers@0.5.11)(@types/react-dom@18.3.0)(@types/react@18.3.3)(esbuild@0.18.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.2.2) + '@storybook/preset-react-webpack': 7.4.6(@babel/core@7.24.0)(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(type-fest@2.19.0)(typescript@5.2.2)(webpack-hot-middleware@2.25.4) '@storybook/react': 7.4.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.2.2) '@types/node': 16.18.97 react: 18.3.1 @@ -22620,7 +22614,7 @@ snapshots: lodash: 4.17.21 redent: 3.0.0 - '@testing-library/jest-dom@6.1.4(@jest/globals@29.7.0)(@types/jest@28.1.3)(jest@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)))': + '@testing-library/jest-dom@6.1.4(@jest/globals@29.7.0)(@types/jest@28.1.3)(jest@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)))': dependencies: '@adobe/css-tools': 4.3.2 '@babel/runtime': 7.25.0 @@ -22633,7 +22627,7 @@ snapshots: optionalDependencies: '@jest/globals': 29.7.0 '@types/jest': 28.1.3 - jest: 29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)) + jest: 29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)) '@testing-library/react@14.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: @@ -23149,7 +23143,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@wagmi/connectors@5.1.15(@types/react@18.3.3)(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.24.0)(@babel/preset-env@7.22.9(@babel/core@7.24.0))(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10))(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4))(zod@3.22.4)': + '@wagmi/connectors@5.1.15(@types/react@18.3.3)(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.24.0)(@babel/preset-env@7.22.9(@babel/core@7.24.0))(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10))(react@18.3.1)(rollup@4.28.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4))(zod@3.22.4)': dependencies: '@coinbase/wallet-sdk': 4.0.4 '@metamask/sdk': 0.28.4(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.24.0)(@babel/preset-env@7.22.9(@babel/core@7.24.0))(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10))(react@18.3.1)(rollup@4.28.1)(utf-8-validate@5.0.10) @@ -23225,7 +23219,7 @@ snapshots: - utf-8-validate - zod - '@wagmi/connectors@5.1.15(@types/react@18.3.3)(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.24.0)(@babel/preset-env@7.22.9(@babel/core@7.24.0))(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10))(react@18.3.1)(rollup@4.28.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4))(zod@3.22.4)': + '@wagmi/connectors@5.1.15(@types/react@18.3.3)(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.24.0)(@babel/preset-env@7.22.9(@babel/core@7.24.0))(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10))(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4))(zod@3.22.4)': dependencies: '@coinbase/wallet-sdk': 4.0.4 '@metamask/sdk': 0.28.4(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.24.0)(@babel/preset-env@7.22.9(@babel/core@7.24.0))(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10))(react@18.3.1)(rollup@4.28.1)(utf-8-validate@5.0.10) @@ -24396,9 +24390,9 @@ snapshots: lit: 3.1.0 qrcode: 1.5.3 - '@web3modal/wagmi@5.0.0(@types/react@18.3.3)(@wagmi/connectors@5.1.15(@types/react@18.3.3)(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.24.0)(@babel/preset-env@7.22.9(@babel/core@7.24.0))(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10))(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4))(zod@3.22.4))(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(utf-8-validate@5.0.10)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4))': + '@web3modal/wagmi@5.0.0(@types/react@18.3.3)(@wagmi/connectors@5.1.15(@types/react@18.3.3)(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.24.0)(@babel/preset-env@7.22.9(@babel/core@7.24.0))(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10))(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4))(zod@3.22.4))(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(utf-8-validate@5.0.10)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4))': dependencies: - '@wagmi/connectors': 5.1.15(@types/react@18.3.3)(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.24.0)(@babel/preset-env@7.22.9(@babel/core@7.24.0))(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10))(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4))(zod@3.22.4) + '@wagmi/connectors': 5.1.15(@types/react@18.3.3)(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.24.0)(@babel/preset-env@7.22.9(@babel/core@7.24.0))(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10))(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4))(zod@3.22.4) '@wagmi/core': 2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)) '@walletconnect/ethereum-provider': 2.13.0(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(utf-8-validate@5.0.10) '@web3modal/polyfills': 5.0.0 @@ -24430,10 +24424,10 @@ snapshots: - ioredis - utf-8-validate - '@web3modal/wagmi@5.0.0(ezuqx6bf45t3pdbvsmxwjnazoy)': + '@web3modal/wagmi@5.0.0(ey72nvkahzqmmk2vaz5ynr4c74)': dependencies: - '@wagmi/connectors': 5.1.15(@types/react@18.3.3)(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.24.0)(@babel/preset-env@7.22.9(@babel/core@7.24.0))(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10))(react@18.3.1)(rollup@4.28.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4))(zod@3.22.4) - '@wagmi/core': 2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)) + '@wagmi/connectors': 5.1.15(@types/react@18.3.3)(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.26.0)(@babel/preset-env@7.22.9(@babel/core@7.26.0))(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10))(react@18.3.1)(rollup@4.28.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4))(zod@3.22.4) + '@wagmi/core': 2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)) '@walletconnect/ethereum-provider': 2.13.0(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(utf-8-validate@5.0.10) '@web3modal/polyfills': 5.0.0 '@web3modal/scaffold': 5.0.0(@types/react@18.3.3)(react@18.3.1) @@ -24464,10 +24458,10 @@ snapshots: - ioredis - utf-8-validate - '@web3modal/wagmi@5.0.0(m4v6zlnqzs7w6wfpqenssu6tam)': + '@web3modal/wagmi@5.0.0(jej2gwalgmrgxmxobeqysvyvfm)': dependencies: - '@wagmi/connectors': 5.1.15(@types/react@18.3.3)(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.26.0)(@babel/preset-env@7.22.9(@babel/core@7.26.0))(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10))(react@18.3.1)(rollup@4.28.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4))(zod@3.22.4) - '@wagmi/core': 2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)) + '@wagmi/connectors': 5.1.15(@types/react@18.3.3)(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.23.2)(@babel/preset-env@7.22.9(@babel/core@7.23.2))(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10))(react@18.3.1)(rollup@4.28.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4))(zod@3.22.4) + '@wagmi/core': 2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)) '@walletconnect/ethereum-provider': 2.13.0(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(utf-8-validate@5.0.10) '@web3modal/polyfills': 5.0.0 '@web3modal/scaffold': 5.0.0(@types/react@18.3.3)(react@18.3.1) @@ -24498,10 +24492,10 @@ snapshots: - ioredis - utf-8-validate - '@web3modal/wagmi@5.0.0(qqlniacmsq4eppe2koaw4losde)': + '@web3modal/wagmi@5.0.0(mblhjn6m33wjwkbzx4fzfzhbky)': dependencies: - '@wagmi/connectors': 5.1.15(@types/react@18.3.3)(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.23.2)(@babel/preset-env@7.22.9(@babel/core@7.23.2))(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10))(react@18.3.1)(rollup@4.28.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4))(zod@3.22.4) - '@wagmi/core': 2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)) + '@wagmi/connectors': 5.1.15(@types/react@18.3.3)(@wagmi/core@2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)))(bufferutil@4.0.8)(react-dom@18.3.1(react@18.3.1))(react-native@0.75.4(@babel/core@7.24.0)(@babel/preset-env@7.22.9(@babel/core@7.24.0))(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(typescript@5.2.2)(utf-8-validate@5.0.10))(react@18.3.1)(rollup@4.28.1)(typescript@5.2.2)(utf-8-validate@5.0.10)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4))(zod@3.22.4) + '@wagmi/core': 2.13.4(@tanstack/query-core@5.28.4)(@types/react@18.3.3)(react@18.3.1)(typescript@5.2.2)(viem@2.20.1(bufferutil@4.0.8)(typescript@5.2.2)(utf-8-validate@5.0.10)(zod@3.22.4)) '@walletconnect/ethereum-provider': 2.13.0(@types/react@18.3.3)(bufferutil@4.0.8)(react@18.3.1)(utf-8-validate@5.0.10) '@web3modal/polyfills': 5.0.0 '@web3modal/scaffold': 5.0.0(@types/react@18.3.3)(react@18.3.1) @@ -24705,10 +24699,10 @@ snapshots: transitivePeerDependencies: - supports-color - '@xstate/inspect@0.8.0(@types/ws@8.5.12)(ws@8.17.1(bufferutil@4.0.8)(utf-8-validate@5.0.10))(xstate@4.38.2)': + '@xstate/inspect@0.8.0(@types/ws@8.5.12)(ws@8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(xstate@4.38.2)': dependencies: fast-safe-stringify: 2.1.1 - ws: 8.17.1(bufferutil@4.0.8)(utf-8-validate@5.0.10) + ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10) xstate: 4.38.2 optionalDependencies: '@types/ws': 8.5.12 @@ -25086,12 +25080,12 @@ snapshots: transitivePeerDependencies: - supports-color - babel-loader@9.1.3(@babel/core@7.24.0)(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0)): + babel-loader@9.1.3(@babel/core@7.24.0)(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20)): dependencies: '@babel/core': 7.24.0 find-cache-dir: 4.0.0 schema-utils: 4.2.0 - webpack: 5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0) + webpack: 5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20) babel-plugin-add-react-displayname@0.0.5: {} @@ -26044,13 +26038,13 @@ snapshots: safe-buffer: 5.2.1 sha.js: 2.4.11 - create-jest@29.7.0(@types/node@20.8.4)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)): + create-jest@29.7.0(@types/node@20.8.4)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)): dependencies: '@jest/types': 29.6.3 chalk: 4.1.2 exit: 0.1.2 graceful-fs: 4.2.11 - jest-config: 29.7.0(@types/node@20.8.4)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)) + jest-config: 29.7.0(@types/node@20.8.4)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)) jest-util: 29.7.0 prompts: 2.4.2 transitivePeerDependencies: @@ -26059,13 +26053,13 @@ snapshots: - supports-color - ts-node - create-jest@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)): + create-jest@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)): dependencies: '@jest/types': 29.6.3 chalk: 4.1.2 exit: 0.1.2 graceful-fs: 4.2.11 - jest-config: 29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)) + jest-config: 29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)) jest-util: 29.7.0 prompts: 2.4.2 transitivePeerDependencies: @@ -26108,7 +26102,7 @@ snapshots: crypto-random-string@2.0.0: {} - css-loader@6.8.1(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0)): + css-loader@6.8.1(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20)): dependencies: icss-utils: 5.1.0(postcss@8.4.49) postcss: 8.4.49 @@ -26118,7 +26112,7 @@ snapshots: postcss-modules-values: 4.0.0(postcss@8.4.49) postcss-value-parser: 4.2.0 semver: 7.5.4 - webpack: 5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0) + webpack: 5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20) css-select@4.3.0: dependencies: @@ -27230,11 +27224,11 @@ snapshots: dependencies: flat-cache: 3.0.4 - file-loader@6.2.0(webpack@5.91.0(@swc/core@1.3.92(@swc/helpers@0.5.11))): + file-loader@6.2.0(webpack@5.91.0(@swc/core@1.3.92)): dependencies: loader-utils: 2.0.4 schema-utils: 3.3.0 - webpack: 5.91.0(@swc/core@1.3.92(@swc/helpers@0.5.11)) + webpack: 5.91.0(@swc/core@1.3.92) file-system-cache@2.3.0: dependencies: @@ -27353,7 +27347,7 @@ snapshots: cross-spawn: 7.0.5 signal-exit: 4.1.0 - fork-ts-checker-webpack-plugin@8.0.0(typescript@5.2.2)(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0)): + fork-ts-checker-webpack-plugin@8.0.0(typescript@5.2.2)(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20)): dependencies: '@babel/code-frame': 7.23.5 chalk: 4.1.2 @@ -27368,7 +27362,7 @@ snapshots: semver: 7.5.4 tapable: 2.2.1 typescript: 5.2.2 - webpack: 5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0) + webpack: 5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20) form-data@3.0.1: dependencies: @@ -27855,14 +27849,14 @@ snapshots: html-tags@3.3.1: {} - html-webpack-plugin@5.5.3(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0)): + html-webpack-plugin@5.5.3(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20)): dependencies: '@types/html-minifier-terser': 6.1.0 html-minifier-terser: 6.1.0 lodash: 4.17.21 pretty-error: 4.0.0 tapable: 2.2.1 - webpack: 5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0) + webpack: 5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20) htmlparser2@6.1.0: dependencies: @@ -28407,16 +28401,16 @@ snapshots: - babel-plugin-macros - supports-color - jest-cli@29.7.0(@types/node@20.8.4)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)): + jest-cli@29.7.0(@types/node@20.8.4)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)): dependencies: - '@jest/core': 29.7.0(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)) + '@jest/core': 29.7.0(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)) '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 chalk: 4.1.2 - create-jest: 29.7.0(@types/node@20.8.4)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)) + create-jest: 29.7.0(@types/node@20.8.4)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)) exit: 0.1.2 import-local: 3.1.0 - jest-config: 29.7.0(@types/node@20.8.4)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)) + jest-config: 29.7.0(@types/node@20.8.4)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)) jest-util: 29.7.0 jest-validate: 29.7.0 yargs: 17.7.2 @@ -28426,16 +28420,16 @@ snapshots: - supports-color - ts-node - jest-cli@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)): + jest-cli@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)): dependencies: - '@jest/core': 29.7.0(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)) + '@jest/core': 29.7.0(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)) '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 chalk: 4.1.2 - create-jest: 29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)) + create-jest: 29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)) exit: 0.1.2 import-local: 3.1.0 - jest-config: 29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)) + jest-config: 29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)) jest-util: 29.7.0 jest-validate: 29.7.0 yargs: 17.7.2 @@ -28445,7 +28439,7 @@ snapshots: - supports-color - ts-node - jest-config@29.7.0(@types/node@20.12.11)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)): + jest-config@29.7.0(@types/node@20.12.11)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)): dependencies: '@babel/core': 7.24.0 '@jest/test-sequencer': 29.7.0 @@ -28471,12 +28465,12 @@ snapshots: strip-json-comments: 3.1.1 optionalDependencies: '@types/node': 20.12.11 - ts-node: 10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2) + ts-node: 10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2) transitivePeerDependencies: - babel-plugin-macros - supports-color - jest-config@29.7.0(@types/node@20.8.4)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)): + jest-config@29.7.0(@types/node@20.8.4)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)): dependencies: '@babel/core': 7.24.0 '@jest/test-sequencer': 29.7.0 @@ -28502,12 +28496,12 @@ snapshots: strip-json-comments: 3.1.1 optionalDependencies: '@types/node': 20.8.4 - ts-node: 10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2) + ts-node: 10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2) transitivePeerDependencies: - babel-plugin-macros - supports-color - jest-config@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)): + jest-config@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)): dependencies: '@babel/core': 7.24.0 '@jest/test-sequencer': 29.7.0 @@ -28533,7 +28527,7 @@ snapshots: strip-json-comments: 3.1.1 optionalDependencies: '@types/node': 22.10.1 - ts-node: 10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2) + ts-node: 10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2) transitivePeerDependencies: - babel-plugin-macros - supports-color @@ -28863,24 +28857,24 @@ snapshots: merge-stream: 2.0.0 supports-color: 8.1.1 - jest@29.7.0(@types/node@20.8.4)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)): + jest@29.7.0(@types/node@20.8.4)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)): dependencies: - '@jest/core': 29.7.0(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)) + '@jest/core': 29.7.0(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)) '@jest/types': 29.6.3 import-local: 3.1.0 - jest-cli: 29.7.0(@types/node@20.8.4)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)) + jest-cli: 29.7.0(@types/node@20.8.4)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)) transitivePeerDependencies: - '@types/node' - babel-plugin-macros - supports-color - ts-node - jest@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)): + jest@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)): dependencies: - '@jest/core': 29.7.0(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)) + '@jest/core': 29.7.0(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)) '@jest/types': 29.6.3 import-local: 3.1.0 - jest-cli: 29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)) + jest-cli: 29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)) transitivePeerDependencies: - '@types/node' - babel-plugin-macros @@ -30230,11 +30224,11 @@ snapshots: neo-async@2.6.2: {} - next-images@1.8.5(webpack@5.91.0(@swc/core@1.3.92(@swc/helpers@0.5.11))): + next-images@1.8.5(webpack@5.91.0(@swc/core@1.3.92)): dependencies: - file-loader: 6.2.0(webpack@5.91.0(@swc/core@1.3.92(@swc/helpers@0.5.11))) - url-loader: 4.1.1(file-loader@6.2.0(webpack@5.91.0(@swc/core@1.3.92(@swc/helpers@0.5.11))))(webpack@5.91.0(@swc/core@1.3.92(@swc/helpers@0.5.11))) - webpack: 5.91.0(@swc/core@1.3.92(@swc/helpers@0.5.11)) + file-loader: 6.2.0(webpack@5.91.0(@swc/core@1.3.92)) + url-loader: 4.1.1(file-loader@6.2.0(webpack@5.91.0(@swc/core@1.3.92)))(webpack@5.91.0(@swc/core@1.3.92)) + webpack: 5.91.0(@swc/core@1.3.92) next-mdx-remote@4.4.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: @@ -30773,13 +30767,13 @@ snapshots: transitivePeerDependencies: - supports-color - postcss-load-config@4.0.1(postcss@8.4.49)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@22.10.1)(typescript@5.2.2)): + postcss-load-config@4.0.1(postcss@8.4.49)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)): dependencies: lilconfig: 2.1.0 yaml: 2.6.1 optionalDependencies: postcss: 8.4.49 - ts-node: 10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@22.10.1)(typescript@5.2.2) + ts-node: 10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2) postcss-modules-extract-imports@3.0.0(postcss@8.4.49): dependencies: @@ -32443,9 +32437,9 @@ snapshots: strnum@1.0.5: {} - style-loader@3.3.3(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0)): + style-loader@3.3.3(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20)): dependencies: - webpack: 5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0) + webpack: 5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20) style-to-object@0.4.1: dependencies: @@ -32499,10 +32493,10 @@ snapshots: csso: 5.0.5 picocolors: 1.1.1 - swc-loader@0.2.3(@swc/core@1.3.92(@swc/helpers@0.5.11))(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0)): + swc-loader@0.2.3(@swc/core@1.3.92(@swc/helpers@0.5.11))(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20)): dependencies: '@swc/core': 1.3.92(@swc/helpers@0.5.11) - webpack: 5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0) + webpack: 5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20) symbol-tree@3.2.4: {} @@ -32574,28 +32568,28 @@ snapshots: term-size@2.2.1: {} - terser-webpack-plugin@5.3.10(@swc/core@1.3.92(@swc/helpers@0.5.11))(webpack@5.91.0(@swc/core@1.3.92(@swc/helpers@0.5.11))): + terser-webpack-plugin@5.3.10(@swc/core@1.3.92)(webpack@5.91.0(@swc/core@1.3.92)): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.2 terser: 5.37.0 - webpack: 5.91.0(@swc/core@1.3.92(@swc/helpers@0.5.11)) + webpack: 5.91.0(@swc/core@1.3.92) optionalDependencies: '@swc/core': 1.3.92(@swc/helpers@0.5.11) - terser-webpack-plugin@5.3.9(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0)(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0)): + terser-webpack-plugin@5.3.9(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20)(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20)): dependencies: '@jridgewell/trace-mapping': 0.3.18 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.1 terser: 5.19.2 - webpack: 5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0) + webpack: 5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20) optionalDependencies: '@swc/core': 1.3.92(@swc/helpers@0.5.11) - esbuild: 0.24.0 + esbuild: 0.18.20 terser@5.19.2: dependencies: @@ -32705,15 +32699,15 @@ snapshots: ts-interface-checker@0.1.13: {} - ts-jest-mock-import-meta@1.1.0(ts-jest@29.1.2(@babel/core@7.24.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.0))(esbuild@0.24.0)(jest@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)))(typescript@5.2.2)): + ts-jest-mock-import-meta@1.1.0(ts-jest@29.1.2(@babel/core@7.24.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.0))(esbuild@0.18.20)(jest@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)))(typescript@5.2.2)): dependencies: - ts-jest: 29.1.2(@babel/core@7.24.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.0))(esbuild@0.24.0)(jest@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)))(typescript@5.2.2) + ts-jest: 29.1.2(@babel/core@7.24.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.0))(esbuild@0.18.20)(jest@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)))(typescript@5.2.2) - ts-jest@29.1.1(@babel/core@7.23.2)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.23.2))(jest@29.7.0(@types/node@20.8.4)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)))(typescript@5.2.2): + ts-jest@29.1.1(@babel/core@7.23.2)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.23.2))(jest@29.7.0(@types/node@20.8.4)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)))(typescript@5.2.2): dependencies: bs-logger: 0.2.6 fast-json-stable-stringify: 2.1.0 - jest: 29.7.0(@types/node@20.8.4)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)) + jest: 29.7.0(@types/node@20.8.4)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)) jest-util: 29.6.2 json5: 2.2.3 lodash.memoize: 4.1.2 @@ -32726,11 +32720,11 @@ snapshots: '@jest/types': 29.6.3 babel-jest: 29.7.0(@babel/core@7.23.2) - ts-jest@29.1.1(@babel/core@7.24.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.0))(esbuild@0.24.0)(jest@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)))(typescript@5.2.2): + ts-jest@29.1.1(@babel/core@7.24.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.0))(esbuild@0.18.20)(jest@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)))(typescript@5.2.2): dependencies: bs-logger: 0.2.6 fast-json-stable-stringify: 2.1.0 - jest: 29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)) + jest: 29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)) jest-util: 29.6.2 json5: 2.2.3 lodash.memoize: 4.1.2 @@ -32742,13 +32736,13 @@ snapshots: '@babel/core': 7.24.0 '@jest/types': 29.6.3 babel-jest: 29.7.0(@babel/core@7.24.0) - esbuild: 0.24.0 + esbuild: 0.18.20 - ts-jest@29.1.2(@babel/core@7.24.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.0))(esbuild@0.24.0)(jest@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)))(typescript@5.2.2): + ts-jest@29.1.2(@babel/core@7.24.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.0))(esbuild@0.18.20)(jest@29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)))(typescript@5.2.2): dependencies: bs-logger: 0.2.6 fast-json-stable-stringify: 2.1.0 - jest: 29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2)) + jest: 29.7.0(@types/node@22.10.1)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)) jest-util: 29.7.0 json5: 2.2.3 lodash.memoize: 4.1.2 @@ -32760,9 +32754,9 @@ snapshots: '@babel/core': 7.24.0 '@jest/types': 29.6.3 babel-jest: 29.7.0(@babel/core@7.24.0) - esbuild: 0.24.0 + esbuild: 0.18.20 - ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@20.8.4)(typescript@5.2.2): + ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.9 @@ -32782,27 +32776,6 @@ snapshots: optionalDependencies: '@swc/core': 1.3.92(@swc/helpers@0.5.11) - ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@22.10.1)(typescript@5.2.2): - dependencies: - '@cspotcode/source-map-support': 0.8.1 - '@tsconfig/node10': 1.0.9 - '@tsconfig/node12': 1.0.11 - '@tsconfig/node14': 1.0.3 - '@tsconfig/node16': 1.0.4 - '@types/node': 22.10.1 - acorn: 8.10.0 - acorn-walk: 8.2.0 - arg: 4.1.3 - create-require: 1.1.1 - diff: 4.0.2 - make-error: 1.3.6 - typescript: 5.2.2 - v8-compile-cache-lib: 3.0.1 - yn: 3.1.1 - optionalDependencies: - '@swc/core': 1.3.92(@swc/helpers@0.5.11) - optional: true - ts-toolbelt@9.6.0: {} tsconfck@3.1.4(typescript@5.2.2): @@ -32829,7 +32802,7 @@ snapshots: tslib@2.8.0: {} - tsup@7.2.0(@swc/core@1.3.92(@swc/helpers@0.5.11))(postcss@8.4.49)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@22.10.1)(typescript@5.2.2))(typescript@5.2.2): + tsup@7.2.0(@swc/core@1.3.92)(postcss@8.4.49)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2))(typescript@5.2.2): dependencies: bundle-require: 4.0.1(esbuild@0.18.20) cac: 6.7.14 @@ -32839,7 +32812,7 @@ snapshots: execa: 5.1.1 globby: 11.1.0 joycon: 3.1.1 - postcss-load-config: 4.0.1(postcss@8.4.49)(ts-node@10.9.1(@swc/core@1.3.92(@swc/helpers@0.5.11))(@types/node@22.10.1)(typescript@5.2.2)) + postcss-load-config: 4.0.1(postcss@8.4.49)(ts-node@10.9.1(@swc/core@1.3.92)(@types/node@20.8.4)(typescript@5.2.2)) resolve-from: 5.0.0 rollup: 3.29.5 source-map: 0.8.0-beta.0 @@ -33177,14 +33150,14 @@ snapshots: url-join@4.0.1: {} - url-loader@4.1.1(file-loader@6.2.0(webpack@5.91.0(@swc/core@1.3.92(@swc/helpers@0.5.11))))(webpack@5.91.0(@swc/core@1.3.92(@swc/helpers@0.5.11))): + url-loader@4.1.1(file-loader@6.2.0(webpack@5.91.0(@swc/core@1.3.92)))(webpack@5.91.0(@swc/core@1.3.92)): dependencies: loader-utils: 2.0.4 mime-types: 2.1.35 schema-utils: 3.3.0 - webpack: 5.91.0(@swc/core@1.3.92(@swc/helpers@0.5.11)) + webpack: 5.91.0(@swc/core@1.3.92) optionalDependencies: - file-loader: 6.2.0(webpack@5.91.0(@swc/core@1.3.92(@swc/helpers@0.5.11))) + file-loader: 6.2.0(webpack@5.91.0(@swc/core@1.3.92)) url-parse@1.5.10: dependencies: @@ -33481,7 +33454,7 @@ snapshots: webidl-conversions@7.0.0: {} - webpack-dev-middleware@6.1.3(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0)): + webpack-dev-middleware@6.1.3(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20)): dependencies: colorette: 2.0.20 memfs: 3.5.3 @@ -33489,7 +33462,7 @@ snapshots: range-parser: 1.2.1 schema-utils: 4.2.0 optionalDependencies: - webpack: 5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0) + webpack: 5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20) webpack-hot-middleware@2.25.4: dependencies: @@ -33501,7 +33474,7 @@ snapshots: webpack-virtual-modules@0.5.0: {} - webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0): + webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20): dependencies: '@types/eslint-scope': 3.7.4 '@types/estree': 1.0.5 @@ -33524,7 +33497,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.9(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0)(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.24.0)) + terser-webpack-plugin: 5.3.9(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20)(webpack@5.88.2(@swc/core@1.3.92(@swc/helpers@0.5.11))(esbuild@0.18.20)) watchpack: 2.4.0 webpack-sources: 3.2.3 transitivePeerDependencies: @@ -33532,7 +33505,7 @@ snapshots: - esbuild - uglify-js - webpack@5.91.0(@swc/core@1.3.92(@swc/helpers@0.5.11)): + webpack@5.91.0(@swc/core@1.3.92): dependencies: '@types/eslint-scope': 3.7.7 '@types/estree': 1.0.6 @@ -33555,7 +33528,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(@swc/core@1.3.92(@swc/helpers@0.5.11))(webpack@5.91.0(@swc/core@1.3.92(@swc/helpers@0.5.11))) + terser-webpack-plugin: 5.3.10(@swc/core@1.3.92)(webpack@5.91.0(@swc/core@1.3.92)) watchpack: 2.4.2 webpack-sources: 3.2.3 transitivePeerDependencies: From a0bffe5701ce1d0385adbc48614c20dea7f3401e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A9lcio=20Franco?= Date: Wed, 1 Jan 2025 17:05:37 +0800 Subject: [PATCH 03/19] feat: add missing env vars --- packages/app/env.d.ts | 2 ++ packages/app/src/config.ts | 2 ++ 2 files changed, 4 insertions(+) diff --git a/packages/app/env.d.ts b/packages/app/env.d.ts index 29cf4d118..a2232403a 100644 --- a/packages/app/env.d.ts +++ b/packages/app/env.d.ts @@ -4,6 +4,8 @@ declare namespace NodeJS { VITE_DATABASE_VERSION: string; readonly VITE_FUEL_PROVIDER_URL: string; readonly VITE_FUEL_FAUCET_URL: string; + readonly VITE_EXPLORER_URL: string; + readonly VITE_ECOSYSTEM_PROJECTS_URL: string; readonly VITE_MNEMONIC_WORDS: string; readonly VITE_CRX_NAME: string; readonly VITE_CRX_VERSION_API: string; diff --git a/packages/app/src/config.ts b/packages/app/src/config.ts index 923356871..978dc65dc 100644 --- a/packages/app/src/config.ts +++ b/packages/app/src/config.ts @@ -12,10 +12,12 @@ export const { VITE_AUTO_LOCK_IN_MINUTES, VITE_SENTRY_DSN, VITE_EXPLORER_URL, + VITE_ECOSYSTEM_PROJECTS_URL, NODE_ENV, } = import.meta.env; export const EXPLORER_URL = VITE_EXPLORER_URL; +export const ECOSYSTEM_PROJECTS_URL = VITE_ECOSYSTEM_PROJECTS_URL; export const WALLET_NAME = VITE_CRX_NAME; export const APP_VERSION = VITE_APP_VERSION; export const DATABASE_VERSION = Number(VITE_DATABASE_VERSION); From 41eb091f52071e0994168b004738ed4048806642 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A9lcio=20Franco?= Date: Wed, 1 Jan 2025 17:07:55 +0800 Subject: [PATCH 04/19] fix: remove unused VITE_EXPLORER_URL --- packages/app/.env.example | 1 - packages/app/.env.production | 1 - packages/app/env.d.ts | 1 - packages/app/src/config.ts | 2 -- packages/app/src/vite-env.d.ts | 2 +- 5 files changed, 1 insertion(+), 6 deletions(-) diff --git a/packages/app/.env.example b/packages/app/.env.example index bdeaa5721..75db8dc9e 100644 --- a/packages/app/.env.example +++ b/packages/app/.env.example @@ -2,7 +2,6 @@ VITE_CRX_NAME="Fuel Wallet Development" VITE_CRX_VERSION_API="https://fuellabs.github.io/fuels-wallet/latest.json" VITE_FUEL_PROVIDER_URL=http://localhost:4000/v1/graphql VITE_FUEL_FAUCET_URL=http://localhost:4040 -VITE_EXPLORER_URL=https://app.fuel.network/ VITE_ECOSYSTEM_PROJECTS_URL=https://fuellabs.github.io/fuel-ecosystem/projects.json VITE_MNEMONIC_WORDS=12 GENESIS_SECRET=0xa449b1ffee0e2205fa924c6740cc48b3b473aa28587df6dab12abc245d1f5298 diff --git a/packages/app/.env.production b/packages/app/.env.production index 0055929e3..2ca3d20ac 100644 --- a/packages/app/.env.production +++ b/packages/app/.env.production @@ -3,7 +3,6 @@ VITE_CRX_VERSION_API="https://fuellabs.github.io/fuels-wallet/latest.json" VITE_CRX_RELEASE=true VITE_FUEL_PROVIDER_URL=https://testnet.fuel.network/v1/graphql VITE_FUEL_FAUCET_URL=https://faucet-testnet.fuel.network/ -VITE_EXPLORER_URL=https://app.fuel.network/ VITE_ECOSYSTEM_PROJECTS_URL=https://fuellabs.github.io/fuel-ecosystem/projects.json VITE_MNEMONIC_WORDS=12 VITE_AUTO_LOCK_IN_MINUTES=2880 diff --git a/packages/app/env.d.ts b/packages/app/env.d.ts index a2232403a..929276581 100644 --- a/packages/app/env.d.ts +++ b/packages/app/env.d.ts @@ -4,7 +4,6 @@ declare namespace NodeJS { VITE_DATABASE_VERSION: string; readonly VITE_FUEL_PROVIDER_URL: string; readonly VITE_FUEL_FAUCET_URL: string; - readonly VITE_EXPLORER_URL: string; readonly VITE_ECOSYSTEM_PROJECTS_URL: string; readonly VITE_MNEMONIC_WORDS: string; readonly VITE_CRX_NAME: string; diff --git a/packages/app/src/config.ts b/packages/app/src/config.ts index 978dc65dc..c93d021f7 100644 --- a/packages/app/src/config.ts +++ b/packages/app/src/config.ts @@ -11,12 +11,10 @@ export const { VITE_CRX_VERSION_API, VITE_AUTO_LOCK_IN_MINUTES, VITE_SENTRY_DSN, - VITE_EXPLORER_URL, VITE_ECOSYSTEM_PROJECTS_URL, NODE_ENV, } = import.meta.env; -export const EXPLORER_URL = VITE_EXPLORER_URL; export const ECOSYSTEM_PROJECTS_URL = VITE_ECOSYSTEM_PROJECTS_URL; export const WALLET_NAME = VITE_CRX_NAME; export const APP_VERSION = VITE_APP_VERSION; diff --git a/packages/app/src/vite-env.d.ts b/packages/app/src/vite-env.d.ts index 375f20f0d..5c8dc7fcb 100644 --- a/packages/app/src/vite-env.d.ts +++ b/packages/app/src/vite-env.d.ts @@ -11,7 +11,7 @@ interface ImportMetaEnv { readonly VITE_AUTO_LOCK_IN_MINUTES: number; readonly VITE_SENTRY_DSN: string; readonly VITE_IGNORE_ERRORS: string; - readonly VITE_EXPLORER_URL: string; + readonly VITE_ECOSYSTEM_PROJECTS_URL: string; } interface ImportMeta { From 0e6327c172b8be92ab19e537eeb17b80bd2b5292 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A9lcio=20Franco?= Date: Wed, 1 Jan 2025 19:13:15 +0800 Subject: [PATCH 05/19] feat: add contracts table --- packages/app/src/systems/Core/utils/database.ts | 9 ++++++--- .../src/systems/Core/utils/databaseVersioning.ts | 15 +++++++++++++++ packages/types/src/contract.ts | 6 ++++++ packages/types/src/index.ts | 1 + 4 files changed, 28 insertions(+), 3 deletions(-) create mode 100644 packages/types/src/contract.ts diff --git a/packages/app/src/systems/Core/utils/database.ts b/packages/app/src/systems/Core/utils/database.ts index 2dbe4e384..2fdc56ee9 100644 --- a/packages/app/src/systems/Core/utils/database.ts +++ b/packages/app/src/systems/Core/utils/database.ts @@ -3,6 +3,7 @@ import type { Account, AssetData, Connection, + Contract, DatabaseRestartEvent, NetworkData, StoredFuelWalletError, @@ -11,12 +12,12 @@ import type { import Dexie, { type DbEvents, type PromiseExtended, type Table } from 'dexie'; import 'dexie-observable'; import type { AssetFuel } from 'fuels'; +import { IS_LOGGED_KEY } from '~/config'; +import { createParallelDb } from '~/systems/Core/utils/databaseNoDexie'; +import { Storage } from '~/systems/Core/utils/storage'; import type { TransactionCursor } from '~/systems/Transaction'; import { chromeStorage } from '../services/chromeStorage'; import { applyDbVersioning } from './databaseVersioning'; -import { createParallelDb } from '~/systems/Core/utils/databaseNoDexie'; -import { IS_LOGGED_KEY } from '~/config'; -import { Storage } from '~/systems/Core/utils/storage'; import { saveToOPFS } from './opfs'; type FailureEvents = Extract; @@ -31,6 +32,7 @@ export class FuelDB extends Dexie { transactionsCursors!: Table; assets!: Table; indexedAssets!: Table; + contracts!: Table; abis!: Table; errors!: Table; integrityCheckInterval?: NodeJS.Timeout; @@ -168,6 +170,7 @@ export class FuelDB extends Dexie { this.transactionsCursors.clear(), this.assets.clear(), this.indexedAssets.clear(), + this.contracts.clear(), this.abis.clear(), this.errors.clear(), ]); diff --git a/packages/app/src/systems/Core/utils/databaseVersioning.ts b/packages/app/src/systems/Core/utils/databaseVersioning.ts index b4f642bd5..2bfcb0092 100644 --- a/packages/app/src/systems/Core/utils/databaseVersioning.ts +++ b/packages/app/src/systems/Core/utils/databaseVersioning.ts @@ -246,4 +246,19 @@ export const applyDbVersioning = (db: Dexie) => { abis: '&contractId', errors: '&id', }); + + // DB VERSION 29 + // add contracts column + db.version(29).stores({ + vaults: 'key', + accounts: '&address, &name', + networks: '&id, &url, &name, chainId', + connections: 'origin', + transactionsCursors: '++id, address, size, providerUrl, endCursor', + assets: '&name, &symbol', + contracts: '++id, chainId, contractId, name, image', + indexedAssets: 'key, fetchedAt', + abis: '&contractId', + errors: '&id', + }); }; diff --git a/packages/types/src/contract.ts b/packages/types/src/contract.ts new file mode 100644 index 000000000..baa3ca381 --- /dev/null +++ b/packages/types/src/contract.ts @@ -0,0 +1,6 @@ +export interface Contract { + chainId: string; + contractId: string; + name: string; + image: string; +} diff --git a/packages/types/src/index.ts b/packages/types/src/index.ts index ee387f673..9bb889c2a 100644 --- a/packages/types/src/index.ts +++ b/packages/types/src/index.ts @@ -5,6 +5,7 @@ export * from './network'; export * from './connection'; export * from './fuel'; export * from './constants'; +export * from './contract'; export * from './abi'; export * from './error'; export * from './database'; From 46b7cf2f722739b096d8d10e3c044e5b3cb4b203 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A9lcio=20Franco?= Date: Wed, 1 Jan 2025 19:29:58 +0800 Subject: [PATCH 06/19] feat: add ecosystem type def --- packages/types/src/ecosystem.ts | 11 +++++++++++ packages/types/src/index.ts | 1 + 2 files changed, 12 insertions(+) create mode 100644 packages/types/src/ecosystem.ts diff --git a/packages/types/src/ecosystem.ts b/packages/types/src/ecosystem.ts new file mode 100644 index 000000000..598c96e5e --- /dev/null +++ b/packages/types/src/ecosystem.ts @@ -0,0 +1,11 @@ +type EcosystemContractMetadata = { + name: string; +}; + +export type EcosystemProject = { + name: string; + contracts?: { + mainnet?: EcosystemContractMetadata; + }; + image?: string; +}; diff --git a/packages/types/src/index.ts b/packages/types/src/index.ts index 9bb889c2a..7da123ad0 100644 --- a/packages/types/src/index.ts +++ b/packages/types/src/index.ts @@ -6,6 +6,7 @@ export * from './connection'; export * from './fuel'; export * from './constants'; export * from './contract'; +export * from './ecosystem'; export * from './abi'; export * from './error'; export * from './database'; From 5a1cbb594c76e494c52d00542223c0cf9fb770be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A9lcio=20Franco?= Date: Wed, 1 Jan 2025 19:31:12 +0800 Subject: [PATCH 07/19] feat: add ecosystem service --- .../app/src/systems/Ecosystem/services/ecosystem.ts | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 packages/app/src/systems/Ecosystem/services/ecosystem.ts diff --git a/packages/app/src/systems/Ecosystem/services/ecosystem.ts b/packages/app/src/systems/Ecosystem/services/ecosystem.ts new file mode 100644 index 000000000..444cf32d5 --- /dev/null +++ b/packages/app/src/systems/Ecosystem/services/ecosystem.ts @@ -0,0 +1,13 @@ +import type { EcosystemProject } from '@fuel-wallet/types'; +import { ECOSYSTEM_PROJECTS_URL } from '~/config'; + +// biome-ignore lint/complexity/noStaticOnlyClass: +export class EcosystemService { + static async fetchProjects() { + const data = (await ( + await fetch(ECOSYSTEM_PROJECTS_URL) + ).json()) as Array; + + return data; + } +} From 637aaa56e6792fabf9c83861a3bf4e767da236a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A9lcio=20Franco?= Date: Wed, 1 Jan 2025 19:32:38 +0800 Subject: [PATCH 08/19] feat: add a service to get contracts from database --- .../src/systems/Contract/services/contracts.ts | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 packages/app/src/systems/Contract/services/contracts.ts diff --git a/packages/app/src/systems/Contract/services/contracts.ts b/packages/app/src/systems/Contract/services/contracts.ts new file mode 100644 index 000000000..a92cf4a78 --- /dev/null +++ b/packages/app/src/systems/Contract/services/contracts.ts @@ -0,0 +1,17 @@ +import type { Contract } from '@fuel-wallet/types'; +import { db } from '~/systems/Core/utils/database'; + +export type ContractsInputs = { + addContracts: { + data: Contract[]; + }; +}; + +// biome-ignore lint/complexity/noStaticOnlyClass: +export class ContractService { + static async getContracts() { + return db.transaction('r', db.assets, async () => { + return db.assets.toArray(); + }); + } +} From 9ea5485696a35926058ff72d6e9e30b08dfb02fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A9lcio=20Franco?= Date: Wed, 1 Jan 2025 19:32:58 +0800 Subject: [PATCH 09/19] fix: table ref --- packages/app/src/systems/Contract/services/contracts.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/app/src/systems/Contract/services/contracts.ts b/packages/app/src/systems/Contract/services/contracts.ts index a92cf4a78..d53fdfd75 100644 --- a/packages/app/src/systems/Contract/services/contracts.ts +++ b/packages/app/src/systems/Contract/services/contracts.ts @@ -11,7 +11,7 @@ export type ContractsInputs = { export class ContractService { static async getContracts() { return db.transaction('r', db.assets, async () => { - return db.assets.toArray(); + return db.contracts.toArray(); }); } } From 74c2ea6e8cf93250213a3fae4ad5a2801eb8835a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A9lcio=20Franco?= Date: Wed, 1 Jan 2025 19:57:03 +0800 Subject: [PATCH 10/19] fix: add missing types in the ecosystem contract info --- packages/types/src/ecosystem.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/types/src/ecosystem.ts b/packages/types/src/ecosystem.ts index 598c96e5e..e26402b22 100644 --- a/packages/types/src/ecosystem.ts +++ b/packages/types/src/ecosystem.ts @@ -1,11 +1,12 @@ type EcosystemContractMetadata = { + id: string; name: string; }; export type EcosystemProject = { name: string; contracts?: { - mainnet?: EcosystemContractMetadata; + mainnet?: EcosystemContractMetadata[]; }; image?: string; }; From ab00c71a9e5f88575b905152e8a461a482837396 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A9lcio=20Franco?= Date: Wed, 1 Jan 2025 20:03:29 +0800 Subject: [PATCH 11/19] fix: types --- .../systems/Contract/services/contracts.ts | 22 ++++++++++++++++++- packages/types/src/contract.ts | 2 +- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/packages/app/src/systems/Contract/services/contracts.ts b/packages/app/src/systems/Contract/services/contracts.ts index d53fdfd75..3d0bb7ed2 100644 --- a/packages/app/src/systems/Contract/services/contracts.ts +++ b/packages/app/src/systems/Contract/services/contracts.ts @@ -1,4 +1,5 @@ -import type { Contract } from '@fuel-wallet/types'; +import type { Contract, EcosystemProject } from '@fuel-wallet/types'; +import { CHAIN_IDS } from 'fuels'; import { db } from '~/systems/Core/utils/database'; export type ContractsInputs = { @@ -9,6 +10,25 @@ export type ContractsInputs = { // biome-ignore lint/complexity/noStaticOnlyClass: export class ContractService { + static formatContractsFromEcosystem( + projects: EcosystemProject[] + ): Contract[] { + return projects.flatMap((project) => { + if (!project.contracts?.mainnet) { + return []; + } + + return project.contracts.mainnet.map((contract) => { + return { + chainId: CHAIN_IDS.fuel.mainnet, + contractId: contract.id, + name: contract.name, + image: project.image ?? '', // @TODO: Add url with network explorerUrl + }; + }); + }); + } + static async getContracts() { return db.transaction('r', db.assets, async () => { return db.contracts.toArray(); diff --git a/packages/types/src/contract.ts b/packages/types/src/contract.ts index baa3ca381..153b7459d 100644 --- a/packages/types/src/contract.ts +++ b/packages/types/src/contract.ts @@ -1,5 +1,5 @@ export interface Contract { - chainId: string; + chainId: number; contractId: string; name: string; image: string; From 9a349af3f2f36e4d759290c06ddbcd8e0997592b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A9lcio=20Franco?= Date: Wed, 1 Jan 2025 20:10:30 +0800 Subject: [PATCH 12/19] Revert "feat: add contracts table" This reverts commit 0e6327c172b8be92ab19e537eeb17b80bd2b5292. --- packages/app/src/systems/Core/utils/database.ts | 3 --- .../src/systems/Core/utils/databaseVersioning.ts | 15 --------------- 2 files changed, 18 deletions(-) diff --git a/packages/app/src/systems/Core/utils/database.ts b/packages/app/src/systems/Core/utils/database.ts index 2fdc56ee9..164bdf09a 100644 --- a/packages/app/src/systems/Core/utils/database.ts +++ b/packages/app/src/systems/Core/utils/database.ts @@ -3,7 +3,6 @@ import type { Account, AssetData, Connection, - Contract, DatabaseRestartEvent, NetworkData, StoredFuelWalletError, @@ -32,7 +31,6 @@ export class FuelDB extends Dexie { transactionsCursors!: Table; assets!: Table; indexedAssets!: Table; - contracts!: Table; abis!: Table; errors!: Table; integrityCheckInterval?: NodeJS.Timeout; @@ -170,7 +168,6 @@ export class FuelDB extends Dexie { this.transactionsCursors.clear(), this.assets.clear(), this.indexedAssets.clear(), - this.contracts.clear(), this.abis.clear(), this.errors.clear(), ]); diff --git a/packages/app/src/systems/Core/utils/databaseVersioning.ts b/packages/app/src/systems/Core/utils/databaseVersioning.ts index 2bfcb0092..b4f642bd5 100644 --- a/packages/app/src/systems/Core/utils/databaseVersioning.ts +++ b/packages/app/src/systems/Core/utils/databaseVersioning.ts @@ -246,19 +246,4 @@ export const applyDbVersioning = (db: Dexie) => { abis: '&contractId', errors: '&id', }); - - // DB VERSION 29 - // add contracts column - db.version(29).stores({ - vaults: 'key', - accounts: '&address, &name', - networks: '&id, &url, &name, chainId', - connections: 'origin', - transactionsCursors: '++id, address, size, providerUrl, endCursor', - assets: '&name, &symbol', - contracts: '++id, chainId, contractId, name, image', - indexedAssets: 'key, fetchedAt', - abis: '&contractId', - errors: '&id', - }); }; From 9b25473e10430e6a89cbeeca6b86975f8d92bf90 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A9lcio=20Franco?= Date: Wed, 1 Jan 2025 20:22:28 +0800 Subject: [PATCH 13/19] feat: add contracts machine --- .../Contract/machines/contractsMachine.ts | 78 +++++++++++++++++++ .../systems/Contract/services/contracts.ts | 13 ---- packages/app/src/systems/Store/index.tsx | 2 + packages/app/src/systems/Store/types.ts | 3 + 4 files changed, 83 insertions(+), 13 deletions(-) create mode 100644 packages/app/src/systems/Contract/machines/contractsMachine.ts diff --git a/packages/app/src/systems/Contract/machines/contractsMachine.ts b/packages/app/src/systems/Contract/machines/contractsMachine.ts new file mode 100644 index 000000000..de76781fe --- /dev/null +++ b/packages/app/src/systems/Contract/machines/contractsMachine.ts @@ -0,0 +1,78 @@ +import type { Contract, EcosystemProject } from '@fuel-wallet/types'; +import type { InterpreterFrom, StateFrom } from 'xstate'; +import { assign, createMachine } from 'xstate'; +import { FetchMachine } from '~/systems/Core'; + +import { EcosystemService } from '~/systems/Ecosystem/services/ecosystem'; +import { ContractService } from '../services/contracts'; + +export type MachineContext = { + contracts?: Contract[]; +}; + +type MachineServices = { + fetchProjects: { + data: EcosystemProject[]; + }; +}; + +export const contractsMachine = createMachine( + { + predictableActionArguments: true, + + tsTypes: {} as import('./contractsMachine.typegen').Typegen0, + schema: { + context: {} as MachineContext, + services: {} as MachineServices, + }, + id: '(machine)', + initial: 'fetching', + states: { + fetching: { + invoke: { + src: 'fetchProjects', + onDone: [ + { + target: 'failure', + cond: FetchMachine.hasError, + }, + { + target: 'success', + actions: ['assignContracts'], + }, + ], + }, + }, + failure: { + type: 'final', + }, + success: { + type: 'final', + }, + }, + }, + { + actions: { + assignContracts: assign({ + contracts: (_, ev) => { + return ContractService.formatContractsFromEcosystem(ev.data); + }, + }), + }, + services: { + fetchProjects: FetchMachine.create< + null, + MachineServices['fetchProjects']['data'] + >({ + showError: true, + async fetch() { + return EcosystemService.fetchProjects(); + }, + }), + }, + } +); + +export type ContractsMachine = typeof contractsMachine; +export type ContractsMachineState = StateFrom; +export type ContractsMachineService = InterpreterFrom; diff --git a/packages/app/src/systems/Contract/services/contracts.ts b/packages/app/src/systems/Contract/services/contracts.ts index 3d0bb7ed2..9ada249ee 100644 --- a/packages/app/src/systems/Contract/services/contracts.ts +++ b/packages/app/src/systems/Contract/services/contracts.ts @@ -1,12 +1,5 @@ import type { Contract, EcosystemProject } from '@fuel-wallet/types'; import { CHAIN_IDS } from 'fuels'; -import { db } from '~/systems/Core/utils/database'; - -export type ContractsInputs = { - addContracts: { - data: Contract[]; - }; -}; // biome-ignore lint/complexity/noStaticOnlyClass: export class ContractService { @@ -28,10 +21,4 @@ export class ContractService { }); }); } - - static async getContracts() { - return db.transaction('r', db.assets, async () => { - return db.contracts.toArray(); - }); - } } diff --git a/packages/app/src/systems/Store/index.tsx b/packages/app/src/systems/Store/index.tsx index b41b29c90..d9e1e7b49 100644 --- a/packages/app/src/systems/Store/index.tsx +++ b/packages/app/src/systems/Store/index.tsx @@ -19,6 +19,7 @@ import { overlayEvents } from '../Overlay/events'; import { unlockMachine } from '../Unlock'; import { unlockEvents } from '../Unlock/events'; +import { contractsMachine } from '../Contract/machines/contractsMachine'; import type { StoreMachines } from './types'; import { Services } from './types'; @@ -33,6 +34,7 @@ export const store = store$ .addMachine(Services.accounts, () => accountsMachine) .addMachine(Services.networks, () => networksMachine) .addMachine(Services.assets, () => assetsMachine) + .addMachine(Services.contracts, () => contractsMachine) .addMachine(Services.unlock, () => unlockMachine) .addMachine(Services.msgRequest, () => messageRequestMachine) .addMachine(Services.connectRequest, () => connectRequestMachine) diff --git a/packages/app/src/systems/Store/types.ts b/packages/app/src/systems/Store/types.ts index bf922fc37..e6d140b07 100644 --- a/packages/app/src/systems/Store/types.ts +++ b/packages/app/src/systems/Store/types.ts @@ -2,6 +2,7 @@ import type { StoreClass } from '@fuels/react-xstore'; import type { AccountsMachine } from '../Account'; import type { AssetsMachine } from '../Asset'; +import type { ContractsMachine } from '../Contract/machines/contractsMachine'; import type { AddAssetMachine, ConnectRequestMachine, @@ -19,6 +20,7 @@ export enum Services { accounts = 'accounts', networks = 'networks', assets = 'assets', + contracts = 'contracts', overlay = 'overlay', unlock = 'unlock', txRequest = 'txRequest', @@ -33,6 +35,7 @@ export type StoreMachines = { accounts: AccountsMachine; networks: NetworksMachine; assets: AssetsMachine; + contracts: ContractsMachine; overlay: OverlayMachine; unlock: UnlockMachine; txRequest: TransactionRequestMachine; From d6bb66377b7f1f972b8821760eddcad61c3daf5c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A9lcio=20Franco?= Date: Wed, 1 Jan 2025 21:21:33 +0800 Subject: [PATCH 14/19] feat: add useContractMetadata --- .../Contract/hooks/useContractMetadata.ts | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 packages/app/src/systems/Contract/hooks/useContractMetadata.ts diff --git a/packages/app/src/systems/Contract/hooks/useContractMetadata.ts b/packages/app/src/systems/Contract/hooks/useContractMetadata.ts new file mode 100644 index 000000000..f55cf981c --- /dev/null +++ b/packages/app/src/systems/Contract/hooks/useContractMetadata.ts @@ -0,0 +1,24 @@ +import type { Contract } from '@fuel-wallet/types'; +import { Services, store } from '~/store'; +import type { ContractsMachineState } from '../machines/contractsMachine'; + +const selectors = { + contract(id: string) { + return (state: ContractsMachineState): Contract | undefined => { + return state.context.contracts?.find( + (contract) => contract.contractId === id + ); + }; + }, +}; + +export const useContractMetadata = ( + id: `0x${string}` +): Contract | undefined => { + const contract = store.useSelector( + Services.contracts, + selectors.contract(id) + ); + + return contract; +}; From 7bb30732675695dc96b6beb47fa7703379fdc3e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A9lcio=20Franco?= Date: Wed, 1 Jan 2025 21:30:35 +0800 Subject: [PATCH 15/19] feat: fetch project image url --- packages/app/src/networks.ts | 18 ++++++++++-------- .../Contract/hooks/useContractMetadata.ts | 4 +--- .../src/systems/Contract/services/contracts.ts | 3 ++- .../systems/Ecosystem/utils/getProjectImage.ts | 9 +++++++++ 4 files changed, 22 insertions(+), 12 deletions(-) create mode 100644 packages/app/src/systems/Ecosystem/utils/getProjectImage.ts diff --git a/packages/app/src/networks.ts b/packages/app/src/networks.ts index e20b2c301..c10e9e32f 100644 --- a/packages/app/src/networks.ts +++ b/packages/app/src/networks.ts @@ -1,17 +1,19 @@ import type { NetworkData } from '@fuel-wallet/types'; import { CHAIN_IDS } from 'fuels'; +export const IGNITION_NETWORK: NetworkData = { + name: 'Ignition', + url: 'https://mainnet.fuel.network/v1/graphql', + chainId: CHAIN_IDS.fuel.mainnet, + explorerUrl: 'https://app.fuel.network', + bridgeUrl: 'https://app.fuel.network/bridge', + isSelected: true, +}; + export const DEFAULT_NETWORKS: Array< NetworkData & { faucetUrl?: string; bridgeUrl?: string; hidden?: boolean } > = [ - { - name: 'Ignition', - url: 'https://mainnet.fuel.network/v1/graphql', - chainId: CHAIN_IDS.fuel.mainnet, - explorerUrl: 'https://app.fuel.network', - bridgeUrl: 'https://app.fuel.network/bridge', - isSelected: true, - }, + IGNITION_NETWORK, { name: 'Fuel Sepolia Testnet', url: 'https://testnet.fuel.network/v1/graphql', diff --git a/packages/app/src/systems/Contract/hooks/useContractMetadata.ts b/packages/app/src/systems/Contract/hooks/useContractMetadata.ts index f55cf981c..13eec6639 100644 --- a/packages/app/src/systems/Contract/hooks/useContractMetadata.ts +++ b/packages/app/src/systems/Contract/hooks/useContractMetadata.ts @@ -12,9 +12,7 @@ const selectors = { }, }; -export const useContractMetadata = ( - id: `0x${string}` -): Contract | undefined => { +export const useContractMetadata = (id: string): Contract | undefined => { const contract = store.useSelector( Services.contracts, selectors.contract(id) diff --git a/packages/app/src/systems/Contract/services/contracts.ts b/packages/app/src/systems/Contract/services/contracts.ts index 9ada249ee..466f4bf5a 100644 --- a/packages/app/src/systems/Contract/services/contracts.ts +++ b/packages/app/src/systems/Contract/services/contracts.ts @@ -1,5 +1,6 @@ import type { Contract, EcosystemProject } from '@fuel-wallet/types'; import { CHAIN_IDS } from 'fuels'; +import { getProjectImage } from '~/systems/Ecosystem/utils/getProjectImage'; // biome-ignore lint/complexity/noStaticOnlyClass: export class ContractService { @@ -16,7 +17,7 @@ export class ContractService { chainId: CHAIN_IDS.fuel.mainnet, contractId: contract.id, name: contract.name, - image: project.image ?? '', // @TODO: Add url with network explorerUrl + image: project.image ? getProjectImage(project.image) : '', }; }); }); diff --git a/packages/app/src/systems/Ecosystem/utils/getProjectImage.ts b/packages/app/src/systems/Ecosystem/utils/getProjectImage.ts new file mode 100644 index 000000000..71ab40993 --- /dev/null +++ b/packages/app/src/systems/Ecosystem/utils/getProjectImage.ts @@ -0,0 +1,9 @@ +import { IGNITION_NETWORK } from '~/networks'; +import { urlJoin } from '~/systems/Core'; + +export const getProjectImage = (image: string) => { + return urlJoin( + IGNITION_NETWORK.explorerUrl, + `/api/ecosystem/asset/${image}/image` + ); +}; From 90ed57721b66a1ca105e587d78426d40959bb480 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A9lcio=20Franco?= Date: Wed, 1 Jan 2025 21:42:39 +0800 Subject: [PATCH 16/19] feat: allow image to be undefined --- packages/app/src/systems/Contract/services/contracts.ts | 3 +-- packages/types/src/contract.ts | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/packages/app/src/systems/Contract/services/contracts.ts b/packages/app/src/systems/Contract/services/contracts.ts index 466f4bf5a..f224a1ab4 100644 --- a/packages/app/src/systems/Contract/services/contracts.ts +++ b/packages/app/src/systems/Contract/services/contracts.ts @@ -1,6 +1,5 @@ import type { Contract, EcosystemProject } from '@fuel-wallet/types'; import { CHAIN_IDS } from 'fuels'; -import { getProjectImage } from '~/systems/Ecosystem/utils/getProjectImage'; // biome-ignore lint/complexity/noStaticOnlyClass: export class ContractService { @@ -17,7 +16,7 @@ export class ContractService { chainId: CHAIN_IDS.fuel.mainnet, contractId: contract.id, name: contract.name, - image: project.image ? getProjectImage(project.image) : '', + image: project.image, }; }); }); diff --git a/packages/types/src/contract.ts b/packages/types/src/contract.ts index 153b7459d..af551b2a0 100644 --- a/packages/types/src/contract.ts +++ b/packages/types/src/contract.ts @@ -2,5 +2,5 @@ export interface Contract { chainId: number; contractId: string; name: string; - image: string; + image: string | undefined; } From 32fae91967a4bfefb774da80d41edf57cce2291f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A9lcio=20Franco?= Date: Wed, 1 Jan 2025 21:46:54 +0800 Subject: [PATCH 17/19] feat: add contract logo --- .../TxRecipientCard/TxRecipientCard.tsx | 25 ++++++-- .../TxRecipientContractLogo.tsx | 59 +++++++++++++++++++ 2 files changed, 79 insertions(+), 5 deletions(-) create mode 100644 packages/app/src/systems/Transaction/components/TxRecipientCard/TxRecipientContractLogo.tsx diff --git a/packages/app/src/systems/Transaction/components/TxRecipientCard/TxRecipientCard.tsx b/packages/app/src/systems/Transaction/components/TxRecipientCard/TxRecipientCard.tsx index ffd1e77ec..80c03a39e 100644 --- a/packages/app/src/systems/Transaction/components/TxRecipientCard/TxRecipientCard.tsx +++ b/packages/app/src/systems/Transaction/components/TxRecipientCard/TxRecipientCard.tsx @@ -1,11 +1,13 @@ import { cssObj } from '@fuel-ui/css'; -import { Avatar, Box, Card, Heading, Icon, Text } from '@fuel-ui/react'; +import { Avatar, Box, Card, Heading, Icon, Image, Text } from '@fuel-ui/react'; import type { OperationTransactionAddress } from 'fuels'; import { Address, AddressType, ChainName, isB256, isBech32 } from 'fuels'; -import type { FC } from 'react'; +import { type FC, useMemo } from 'react'; import { EthAddress, FuelAddress, useAccounts } from '~/systems/Account'; +import { useContractMetadata } from '~/systems/Contract/hooks/useContractMetadata'; import { TxRecipientCardLoader } from './TxRecipientCardLoader'; +import { TxRecipientContractLogo } from './TxRecipientContractLogo'; export type TxRecipientCardProps = { recipient?: OperationTransactionAddress; @@ -29,8 +31,16 @@ export const TxRecipientCard: TxRecipientCardComponent = ({ const isContract = recipient?.type === AddressType.contract; const isEthChain = recipient?.chain === ChainName.ethereum; const isNetwork = address === 'Network'; - const name = - accounts?.find((a) => a.address === fuelAddress)?.name || 'unknown'; + + const contract = useContractMetadata(address); + + const name = useMemo(() => { + if (isContract) { + return contract?.name || 'unknown'; + } + + return accounts?.find((a) => a.address === fuelAddress)?.name || 'unknown'; + }, [isContract, contract, accounts, fuelAddress]); return ( - + )} @@ -133,6 +147,7 @@ const styles = { alignItems: 'center', background: '$intentsBase3', borderRadius: '$full', + overflow: 'hidden', }), info: cssObj({ flexDirection: 'column', diff --git a/packages/app/src/systems/Transaction/components/TxRecipientCard/TxRecipientContractLogo.tsx b/packages/app/src/systems/Transaction/components/TxRecipientCard/TxRecipientContractLogo.tsx new file mode 100644 index 000000000..bd9290bc1 --- /dev/null +++ b/packages/app/src/systems/Transaction/components/TxRecipientCard/TxRecipientContractLogo.tsx @@ -0,0 +1,59 @@ +import { cssObj } from '@fuel-ui/css'; +import { Icon, Image } from '@fuel-ui/react'; +import { useEffect, useRef, useState } from 'react'; +import { getProjectImage } from '~/systems/Ecosystem/utils/getProjectImage'; + +type TxRecipientContractLogoProps = { + name?: string; + image?: string; + size?: number; +}; + +export function TxRecipientContractLogo({ + name, + image, + size = 20, +}: TxRecipientContractLogoProps) { + const imgRef = useRef(null); + const [imageFallback, setImageFallback] = useState(false); + const [isImageLoading, setIsImageLoading] = useState(true); + + useEffect(() => { + if (imgRef.current?.complete) { + if (imgRef.current.naturalWidth) { + setIsImageLoading(false); + return; + } + + setImageFallback(true); + } + }, []); + + if (image && !imageFallback) { + return ( + {name} setIsImageLoading(false)} + onError={() => { + setImageFallback(true); + }} + /> + ); + } + + return ; +} + +const styles = { + avatar: cssObj({ + '&[data-hidden="true"]': { + display: 'none', + }, + }), +}; From 8ba9df6f42461ae0ffdac295e442a47f6a1c35cf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A9lcio=20Franco?= Date: Wed, 1 Jan 2025 21:54:35 +0800 Subject: [PATCH 18/19] docs: add changeset --- .changeset/popular-mirrors-roll.md | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 .changeset/popular-mirrors-roll.md diff --git a/.changeset/popular-mirrors-roll.md b/.changeset/popular-mirrors-roll.md new file mode 100644 index 000000000..1a1b5d26f --- /dev/null +++ b/.changeset/popular-mirrors-roll.md @@ -0,0 +1,6 @@ +--- +"@fuel-wallet/types": minor +"fuels-wallet": minor +--- + +Add contract logos and names to the transaction screen for better UX. From 8c83a7a4f86a3c4e28900979a65af317f5e54180 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A9lcio=20Franco?= Date: Thu, 2 Jan 2025 14:30:36 +0800 Subject: [PATCH 19/19] feat: retry ecosystem request every 10s --- .../src/systems/Contract/machines/contractsMachine.ts | 7 +++++-- .../app/src/systems/Ecosystem/services/ecosystem.ts | 11 +++++++---- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/packages/app/src/systems/Contract/machines/contractsMachine.ts b/packages/app/src/systems/Contract/machines/contractsMachine.ts index de76781fe..e3e07d751 100644 --- a/packages/app/src/systems/Contract/machines/contractsMachine.ts +++ b/packages/app/src/systems/Contract/machines/contractsMachine.ts @@ -44,7 +44,9 @@ export const contractsMachine = createMachine( }, }, failure: { - type: 'final', + after: { + 10000: 'fetching', + }, }, success: { type: 'final', @@ -64,7 +66,8 @@ export const contractsMachine = createMachine( null, MachineServices['fetchProjects']['data'] >({ - showError: true, + showError: false, + maxAttempts: 1, async fetch() { return EcosystemService.fetchProjects(); }, diff --git a/packages/app/src/systems/Ecosystem/services/ecosystem.ts b/packages/app/src/systems/Ecosystem/services/ecosystem.ts index 444cf32d5..df384a9d5 100644 --- a/packages/app/src/systems/Ecosystem/services/ecosystem.ts +++ b/packages/app/src/systems/Ecosystem/services/ecosystem.ts @@ -4,10 +4,13 @@ import { ECOSYSTEM_PROJECTS_URL } from '~/config'; // biome-ignore lint/complexity/noStaticOnlyClass: export class EcosystemService { static async fetchProjects() { - const data = (await ( - await fetch(ECOSYSTEM_PROJECTS_URL) - ).json()) as Array; + const res = await fetch(ECOSYSTEM_PROJECTS_URL); - return data; + if (res.ok) { + const data: EcosystemProject[] = await res.json(); + return data; + } + + return []; } }