diff --git a/examples/next/package.json b/examples/next/package.json index 1de59e3cec..7f86b50255 100644 --- a/examples/next/package.json +++ b/examples/next/package.json @@ -20,7 +20,7 @@ "@cartridge/controller": "workspace:*", "@cartridge/ui": "catalog:", "@starknet-react/chains": "catalog:", - "@starknet-react/core": "^5.0.1", + "@starknet-react/core": "catalog:", "next": "^15.1.5", "next-themes": "^0.3.0", "prettier": "catalog:", diff --git a/packages/controller/src/provider.ts b/packages/controller/src/provider.ts index 4c150e57a4..2749e7d672 100644 --- a/packages/controller/src/provider.ts +++ b/packages/controller/src/provider.ts @@ -106,6 +106,12 @@ export default abstract class BaseProvider implements StarknetWindowObject { } case "wallet_requestChainId": + this.account = await this.safeProbe(); + + if (!this.account) { + this.account = await this.connect(); + } + if (!this.account) { throw { code: 63, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d12a3bbb62..552cf73b59 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -156,8 +156,8 @@ overrides: '@dojoengine/core': ^1.7.0 '@dojoengine/torii-wasm': ^1.7.1-preview.0 '@dojoengine/sdk': ^1.7.1-preview.0 - '@starknet-react/core': ^5.0.1 - '@starknet-react/chains': ^5.0.1 + '@starknet-react/core': ^5.0.2 + '@starknet-react/chains': ^5.0.2 '@starknet-io/types-js': ^0.8.4 importers: @@ -199,11 +199,11 @@ importers: specifier: 'catalog:' version: https://codeload.github.com/cartridge-gg/ui/tar.gz/2313a28(@types/react-dom@18.3.7(@types/react@18.3.20))(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sonner@1.7.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(starknet@8.5.2)(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.11.24(@swc/helpers@0.5.17))(@types/node@18.19.87)(typescript@5.8.3)))(viem@2.28.1(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@3.24.4)) '@starknet-react/chains': - specifier: ^5.0.1 - version: 5.0.1 + specifier: ^5.0.2 + version: 5.0.2 '@starknet-react/core': - specifier: ^5.0.1 - version: 5.0.1(bufferutil@4.0.9)(get-starknet-core@4.0.0)(react@18.3.1)(starknet@8.5.2)(typescript@5.8.3)(utf-8-validate@5.0.10) + specifier: ^5.0.2 + version: 5.0.2(bufferutil@4.0.9)(get-starknet-core@4.0.0)(react@18.3.1)(starknet@8.5.2)(typescript@5.8.3)(utf-8-validate@5.0.10) next: specifier: ^15.1.5 version: 15.3.1(@babel/core@7.27.1)(@playwright/test@1.52.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -225,7 +225,7 @@ importers: devDependencies: '@cartridge/connector-published': specifier: npm:@cartridge/connector@0.9.0 - version: '@cartridge/connector@0.9.0(@metamask/sdk@0.32.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(@solana/web3.js@1.98.2(bufferutil@4.0.9)(encoding@0.1.13)(typescript@5.8.3)(utf-8-validate@5.0.10))(@starknet-react/core@5.0.1(bufferutil@4.0.9)(get-starknet-core@4.0.0)(react@18.3.1)(starknet@8.5.2)(typescript@5.8.3)(utf-8-validate@5.0.10))(@types/react@18.3.20)(bufferutil@4.0.9)(encoding@0.1.13)(open@10.1.2)(react@18.3.1)(starknet@8.5.2)(starknetkit@2.10.4(bufferutil@4.0.9)(starknet@8.5.2)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@3.24.4))(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@3.24.4)' + version: '@cartridge/connector@0.9.0(@metamask/sdk@0.32.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(@solana/web3.js@1.98.2(bufferutil@4.0.9)(encoding@0.1.13)(typescript@5.8.3)(utf-8-validate@5.0.10))(@starknet-react/core@5.0.2(bufferutil@4.0.9)(get-starknet-core@4.0.0)(react@18.3.1)(starknet@8.5.2)(typescript@5.8.3)(utf-8-validate@5.0.10))(@types/react@18.3.20)(bufferutil@4.0.9)(encoding@0.1.13)(open@10.1.2)(react@18.3.1)(starknet@8.5.2)(starknetkit@2.10.4(bufferutil@4.0.9)(starknet@8.5.2)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@3.24.4))(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@3.24.4)' '@cartridge/controller-published': specifier: npm:@cartridge/controller@0.9.0 version: '@cartridge/controller@0.9.0(@metamask/sdk@0.32.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(@solana/web3.js@1.98.2(bufferutil@4.0.9)(encoding@0.1.13)(typescript@5.8.3)(utf-8-validate@5.0.10))(@types/react@18.3.20)(bufferutil@4.0.9)(encoding@0.1.13)(open@10.1.2)(react@18.3.1)(starknet@8.5.2)(starknetkit@2.10.4(bufferutil@4.0.9)(starknet@8.5.2)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@3.24.4))(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@3.24.4)' @@ -361,8 +361,8 @@ importers: specifier: workspace:* version: link:../controller '@starknet-react/core': - specifier: ^5.0.1 - version: 5.0.1(bufferutil@4.0.9)(get-starknet-core@4.0.0)(react@18.3.1)(starknet@8.5.2)(typescript@5.8.3)(utf-8-validate@5.0.10) + specifier: ^5.0.2 + version: 5.0.2(bufferutil@4.0.9)(get-starknet-core@4.0.0)(react@18.3.1)(starknet@8.5.2)(typescript@5.8.3)(utf-8-validate@5.0.10) devDependencies: '@cartridge/tsconfig': specifier: workspace:* @@ -529,11 +529,11 @@ importers: specifier: ^0.8.4 version: 0.8.4 '@starknet-react/chains': - specifier: ^5.0.1 - version: 5.0.1 + specifier: ^5.0.2 + version: 5.0.2 '@starknet-react/core': - specifier: ^5.0.1 - version: 5.0.1(bufferutil@4.0.9)(get-starknet-core@4.0.0)(react@18.3.1)(starknet@8.5.2)(typescript@5.8.3)(utf-8-validate@5.0.10) + specifier: ^5.0.2 + version: 5.0.2(bufferutil@4.0.9)(get-starknet-core@4.0.0)(react@18.3.1)(starknet@8.5.2)(typescript@5.8.3)(utf-8-validate@5.0.10) '@stripe/react-stripe-js': specifier: ^2.8.1 version: 2.9.0(@stripe/stripe-js@4.10.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -963,7 +963,7 @@ packages: '@cartridge/connector@0.9.0': resolution: {integrity: sha512-DIAkuJBYMF64e3DBllijdZElmTEb+wc1fFX4FWMYcvUJ07l32pxquBG5G/1IMd8Mzj3Xwwc7NkMVZ6TJAtl9RQ==} peerDependencies: - '@starknet-react/core': ^5.0.1 + '@starknet-react/core': ^5.0.2 '@cartridge/controller-wasm@0.2.1': resolution: {integrity: sha512-uB0ffQEHAlu7+2E4Y/EoWUgbIYNrjMXks2FYHS8lg9ngaFwETvrUFI5Y+Pp71VQTthEnuwVcNKBqluO5TSPAug==} @@ -3185,11 +3185,11 @@ packages: '@starknet-io/types-js@0.9.1': resolution: {integrity: sha512-ngLjOFuWOI4EFij8V+nl5tgHVACr6jqgLNUQbgD+AgnTcAN33SemBPXDIsovwK1Mz1U04Cz3qjDOnTq7067ZQw==} - '@starknet-react/chains@5.0.1': - resolution: {integrity: sha512-QO2vRTUJct+PSSYVdzc0t3CEumPkfSPDLpR/eB7r5X52WP3sPWQASTrYu60H3r/mas/Q8wUczUWtcWIxYydVKw==} + '@starknet-react/chains@5.0.2': + resolution: {integrity: sha512-+Q21eEhsLM9AnUz63wQXhDzvHVz0MOF9zyhzXVdetMCq88XxJWRC7bVd7ROwfPajRGAsg2h9Ddg/A9aTiPreQQ==} - '@starknet-react/core@5.0.1': - resolution: {integrity: sha512-LH13ahisJqCwgSytr8ip+1SeglNx+/QU9Y4mlzcqc9Rrc0v+x6WNPUoTBxHAOaYsBahswRBvVvPJ05phPclq2g==} + '@starknet-react/core@5.0.2': + resolution: {integrity: sha512-erBJIfpa4cSnwdp9RH8P4XH5wCEx6WfRBdaagL8BtmJ3TvMOA9YSO6+1oa+gs9+MdnMbaFqxQnQjBFh2DHIhoQ==} peerDependencies: get-starknet-core: ^4.0.0 react: ^18.0 @@ -9814,10 +9814,10 @@ snapshots: - utf-8-validate - zod - '@cartridge/connector@0.9.0(@metamask/sdk@0.32.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(@solana/web3.js@1.98.2(bufferutil@4.0.9)(encoding@0.1.13)(typescript@5.8.3)(utf-8-validate@5.0.10))(@starknet-react/core@5.0.1(bufferutil@4.0.9)(get-starknet-core@4.0.0)(react@18.3.1)(starknet@8.5.2)(typescript@5.8.3)(utf-8-validate@5.0.10))(@types/react@18.3.20)(bufferutil@4.0.9)(encoding@0.1.13)(open@10.1.2)(react@18.3.1)(starknet@8.5.2)(starknetkit@2.10.4(bufferutil@4.0.9)(starknet@8.5.2)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@3.24.4))(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@3.24.4)': + '@cartridge/connector@0.9.0(@metamask/sdk@0.32.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(@solana/web3.js@1.98.2(bufferutil@4.0.9)(encoding@0.1.13)(typescript@5.8.3)(utf-8-validate@5.0.10))(@starknet-react/core@5.0.2(bufferutil@4.0.9)(get-starknet-core@4.0.0)(react@18.3.1)(starknet@8.5.2)(typescript@5.8.3)(utf-8-validate@5.0.10))(@types/react@18.3.20)(bufferutil@4.0.9)(encoding@0.1.13)(open@10.1.2)(react@18.3.1)(starknet@8.5.2)(starknetkit@2.10.4(bufferutil@4.0.9)(starknet@8.5.2)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@3.24.4))(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@3.24.4)': dependencies: '@cartridge/controller': 0.9.0(@metamask/sdk@0.32.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(@solana/web3.js@1.98.2(bufferutil@4.0.9)(encoding@0.1.13)(typescript@5.8.3)(utf-8-validate@5.0.10))(@types/react@18.3.20)(bufferutil@4.0.9)(encoding@0.1.13)(open@10.1.2)(react@18.3.1)(starknet@8.5.2)(starknetkit@2.10.4(bufferutil@4.0.9)(starknet@8.5.2)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@3.24.4))(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@3.24.4) - '@starknet-react/core': 5.0.1(bufferutil@4.0.9)(get-starknet-core@4.0.0)(react@18.3.1)(starknet@8.5.2)(typescript@5.8.3)(utf-8-validate@5.0.10) + '@starknet-react/core': 5.0.2(bufferutil@4.0.9)(get-starknet-core@4.0.0)(react@18.3.1)(starknet@8.5.2)(typescript@5.8.3)(utf-8-validate@5.0.10) transitivePeerDependencies: - '@azure/app-configuration' - '@azure/cosmos' @@ -9904,8 +9904,8 @@ snapshots: '@dojoengine/sdk': 1.7.1-preview.0(@tanstack/react-query@5.75.0(react@18.3.1))(@types/react-dom@18.3.7(@types/react@18.3.20))(@types/react@18.3.20)(bufferutil@4.0.9)(get-starknet-core@4.0.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(starknet@8.5.2)(typescript@5.8.3)(use-sync-external-store@1.5.0(react@18.3.1))(utf-8-validate@5.0.10)(zod@3.24.4) '@dojoengine/torii-client': 1.7.0-preview.3 '@dojoengine/torii-wasm': 1.7.1-preview.0 - '@starknet-react/chains': 5.0.1 - '@starknet-react/core': 5.0.1(bufferutil@4.0.9)(get-starknet-core@4.0.0)(react@18.3.1)(starknet@8.5.2)(typescript@5.8.3)(utf-8-validate@5.0.10) + '@starknet-react/chains': 5.0.2 + '@starknet-react/core': 5.0.2(bufferutil@4.0.9)(get-starknet-core@4.0.0)(react@18.3.1)(starknet@8.5.2)(typescript@5.8.3)(utf-8-validate@5.0.10) '@tanstack/react-query': 5.75.0(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -10110,8 +10110,8 @@ snapshots: '@dojoengine/torii-client': 1.7.1-preview.0 '@dojoengine/torii-wasm': 1.7.1-preview.0 '@dojoengine/utils': 1.7.0(bufferutil@4.0.9)(starknet@8.5.2)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@3.24.4) - '@starknet-react/chains': 5.0.1 - '@starknet-react/core': 5.0.1(bufferutil@4.0.9)(get-starknet-core@4.0.0)(react@18.3.1)(starknet@8.5.2)(typescript@5.8.3)(utf-8-validate@5.0.10) + '@starknet-react/chains': 5.0.2 + '@starknet-react/core': 5.0.2(bufferutil@4.0.9)(get-starknet-core@4.0.0)(react@18.3.1)(starknet@8.5.2)(typescript@5.8.3)(utf-8-validate@5.0.10) '@tanstack/react-query': 5.75.0(react@18.3.1) '@types/react': 18.3.20 '@types/react-dom': 18.3.7(@types/react@18.3.20) @@ -12525,12 +12525,12 @@ snapshots: '@starknet-io/types-js@0.9.1': {} - '@starknet-react/chains@5.0.1': {} + '@starknet-react/chains@5.0.2': {} - '@starknet-react/core@5.0.1(bufferutil@4.0.9)(get-starknet-core@4.0.0)(react@18.3.1)(starknet@8.5.2)(typescript@5.8.3)(utf-8-validate@5.0.10)': + '@starknet-react/core@5.0.2(bufferutil@4.0.9)(get-starknet-core@4.0.0)(react@18.3.1)(starknet@8.5.2)(typescript@5.8.3)(utf-8-validate@5.0.10)': dependencies: '@starknet-io/types-js': 0.8.4 - '@starknet-react/chains': 5.0.1 + '@starknet-react/chains': 5.0.2 '@tanstack/react-query': 5.75.0(react@18.3.1) abi-wan-kanabi: 2.2.4 eventemitter3: 5.0.1 diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 771a7cb419..e6da33d5c3 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -16,8 +16,8 @@ catalog: "@dojoengine/sdk": "^1.7.1-preview.0" "@dojoengine/torii-wasm": "^1.7.1-preview.0" "@starknet-io/types-js": "^0.8.4" - "@starknet-react/chains": "^5.0.1" - "@starknet-react/core": "^5.0.1" + "@starknet-react/chains": "^5.0.2" + "@starknet-react/core": "^5.0.2" "@storybook/addon-essentials": "^8.5.0" "@storybook/addon-themes": "^8.5.0" "@storybook/blocks": "^8.5.0"