diff --git a/.github/workflows/knip.yaml b/.github/workflows/knip.yaml index 23efc3516..cc5736103 100644 --- a/.github/workflows/knip.yaml +++ b/.github/workflows/knip.yaml @@ -8,6 +8,9 @@ jobs: steps: - uses: actions/checkout@v4 + - name: Install corepack + run: npm i -g corepack + - name: Install pnpm run: npm i -g --force corepack && corepack enable pnpm diff --git a/.github/workflows/pages-deployment.yaml b/.github/workflows/pages-deployment.yaml index 49f9ad936..8594f8847 100644 --- a/.github/workflows/pages-deployment.yaml +++ b/.github/workflows/pages-deployment.yaml @@ -3,11 +3,11 @@ name: Cloudflare Pages env: SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} NEXT_PUBLIC_INTERCOM_ID: re9q5yti + NEXT_PUBLIC_CAPSULE_API_KEY_PROD: ${{ secrets.CAPSULE_API_KEY_PROD }} NEXT_PUBLIC_DRPC_KEY: AnmpasF2C0JBqeAEzxVO8aTteiMlrW4R75hpDonbV6cR on: [push] jobs: - deploy: if: ${{ always() }} runs-on: ubuntu-latest @@ -21,6 +21,9 @@ jobs: - name: Install Misc. Deps run: sudo apt-get install -y libcairo2-dev libjpeg8-dev libpango1.0-dev libgif-dev build-essential g++ + - name: Install corepack + run: npm i -g corepack + - name: Install pnpm run: npm i -g --force corepack && corepack enable pnpm diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index cbb9e6d8d..922bd2ed9 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -11,6 +11,9 @@ jobs: steps: - uses: actions/checkout@v4 + - name: Install corepack + run: npm i -g corepack + - name: Install pnpm run: npm i -g --force corepack && corepack enable pnpm @@ -34,6 +37,9 @@ jobs: steps: - uses: actions/checkout@v4 + - name: Install corepack + run: npm i -g corepack + - name: Install pnpm run: npm i -g --force corepack && corepack enable pnpm @@ -67,6 +73,9 @@ jobs: steps: - uses: actions/checkout@v4 + - name: Install corepack + run: npm i -g corepack + - name: Install pnpm run: npm i -g --force corepack && corepack enable pnpm @@ -97,10 +106,44 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - shard: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29] + shard: + [ + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + ] steps: - uses: actions/checkout@v4 + - name: Install corepack + run: npm i -g corepack + - name: Install pnpm run: npm i -g --force corepack && corepack enable pnpm @@ -152,6 +195,9 @@ jobs: - uses: actions/checkout@v4 - run: ./scripts/check-chrome.sh + - name: Install corepack + run: npm i -g corepack + - name: Install pnpm run: npm i -g --force corepack && corepack enable pnpm @@ -183,7 +229,7 @@ jobs: "pnpm wrangle" \ "pnpm wait-on http://127.0.0.1:8788 && npx playwright test --shard=${{matrix.shard}}/${{strategy.job-total}} --project=stateful" env: - # NEXT_PUBLIC_GRAPH_URI: https://api.studio.thegraph.com/query/49574/ensholesky/version/latest + NEXT_PUBLIC_CHAIN_NAME: holesky SECRET_WORDS: ${{ secrets.SECRET_WORDS }} - uses: actions/upload-artifact@v4 diff --git a/.gitignore b/.gitignore index a233a869f..e479ca1ca 100644 --- a/.gitignore +++ b/.gitignore @@ -72,3 +72,5 @@ tsconfig.vitest-temp.json .sentryclirc .dev.vars + +certificates \ No newline at end of file diff --git a/e2e/specs/stateful/address.spec.ts b/e2e/specs/stateful/address.spec.ts index 4fce98112..1ae1de0b0 100644 --- a/e2e/specs/stateful/address.spec.ts +++ b/e2e/specs/stateful/address.spec.ts @@ -2,20 +2,18 @@ import { expect } from '@playwright/test' import { test } from '../../../playwright/index.js' -test('should allow user to connect', async ({ page, login }) => { +test('should allow user with primary name to connect', async ({ page, login }) => { test.slow() - await page.goto('/') + await page.goto('/?chain=holesky') await login.connect() await page.getByTestId('header-profile').click() - await expect(page.getByText('Profile')).toBeVisible() - await page.getByTestId('header-profile').click() - await expect(page.getByText('Profile')).not.toBeVisible() + await expect(page.getByText('Disconnect')).toBeVisible() }) test('should go to the address page', async ({ page, login }) => { test.slow() - await page.goto('/') + await page.goto('/?chain=holesky') await login.connect() await page @@ -30,7 +28,7 @@ test('should not show the profile if there is no primary name for the address', login, }) => { test.slow() - await page.goto('/') + await page.goto('/?chain=holesky') await login.connect() await page .getByPlaceholder('Search for a name') diff --git a/e2e/specs/stateful/dnsclaim.spec.ts b/e2e/specs/stateful/dnsclaim.spec.ts index 0468a182f..69081c92e 100644 --- a/e2e/specs/stateful/dnsclaim.spec.ts +++ b/e2e/specs/stateful/dnsclaim.spec.ts @@ -7,7 +7,7 @@ test.describe('Import DNSSEC name', () => { page, login, }) => { - await page.goto('/notdnssec.com') + await page.goto('/notdnssec.com?chain=holesky') await login.connect() await page.getByTestId('onchain-radio').click() @@ -21,7 +21,7 @@ test.describe('Import DNSSEC name', () => { page, login, }) => { - await page.goto('/noenssubdomain.com') + await page.goto('/noenssubdomain.com?chain=holesky') await login.connect() await page.getByTestId('onchain-radio').click() @@ -36,7 +36,7 @@ test.describe('Import DNSSEC name', () => { page, login, }) => { - await page.goto('/noenssubdomain.com') + await page.goto('/noenssubdomain.com?chain=holesky') await login.connect() await page.getByTestId('offchain-radio').click() @@ -50,7 +50,7 @@ test.describe('Import DNSSEC name', () => { page, login, }) => { - await page.goto('/invalidensrecord.com') + await page.goto('/invalidensrecord.com?chain=holesky') await login.connect() await page.getByTestId('onchain-radio').click() @@ -61,7 +61,7 @@ test.describe('Import DNSSEC name', () => { }) test('should resolve .pw domains', async ({ page, login }) => { - await page.goto('/test.pw') + await page.goto('/test.pw?chain=holesky') await login.connect() await page.getByTestId('onchain-radio').click() diff --git a/e2e/specs/stateful/profile.spec.ts b/e2e/specs/stateful/profile.spec.ts index e48b80307..28cb5e1e7 100644 --- a/e2e/specs/stateful/profile.spec.ts +++ b/e2e/specs/stateful/profile.spec.ts @@ -90,19 +90,19 @@ test.describe('Profile', () => { }) test('should show a warning if name is not supported', async ({ page }) => { - await page.goto('/name.nottld') + await page.goto('/name.nottld?chain=holesky') await expect(page.getByText('This TLD is not supported')).toBeVisible({ timeout: 25000 }) }) test('should load emoji domain pages', async ({ page }) => { - await page.goto('/%E2%9D%A4%EF%B8%8F%E2%9D%A4%EF%B8%8F%E2%9D%A4%EF%B8%8F.eth') + await page.goto('/%E2%9D%A4%EF%B8%8F%E2%9D%A4%EF%B8%8F%E2%9D%A4%EF%B8%8F.eth?chain=holesky') await expect(page.getByTestId('profile-snippet-name')).toContainText('❤️❤️❤️.eth', { timeout: 25000, }) }) test('should allow searching for emoji domain', async ({ page, login }) => { - await page.goto('/') + await page.goto('/?chain=holesky') await login.connect() await page.getByPlaceholder('Search for a name').fill('❤️❤️❤️❤️❤️❤️.eth') @@ -114,7 +114,7 @@ test.describe('Profile', () => { for (const profile of profiles) { test(`should load profile for: ${profile.name}`, async ({ page, login }) => { - await page.goto('/') + await page.goto('/?chain=holesky') await login.connect() await page.getByPlaceholder('Search for a name').fill(profile.name) @@ -233,20 +233,22 @@ test.describe('Profile', () => { } test('should decode an unknown label', async ({ page, login }) => { - await page.goto('/') + await page.goto('/?chain=holesky') await login.connect() - // eslint-disable-next-line no-restricted-syntax - await page.goto('/[8df9cfc425ad5e1853259e1cef0a8d1d44591fbec8e3feb6f930d9dfacd5eff2].eth') + await page.goto( + // eslint-disable-next-line no-restricted-syntax + '/[8df9cfc425ad5e1853259e1cef0a8d1d44591fbec8e3feb6f930d9dfacd5eff2].eth?chain=holesky', + ) await expect(page.getByTestId('profile-snippet')).toContainText('wrapmebaby.eth', { timeout: 25000, }) }) test('should show wrapped DNS name warning', async ({ page, login }) => { - await page.goto('/') + await page.goto('/?chain=holesky') await login.connect() - await page.goto('/wrappeddnsname.com') + await page.goto('/wrappeddnsname.com?chain=holesky') await expect(page.getByTestId('profile-snippet')).toContainText('wrappeddnsname.com') }) }) diff --git a/e2e/specs/stateless/verifications.spec.ts b/e2e/specs/stateless/verifications.spec.ts index 77e75b660..8886ddb7d 100644 --- a/e2e/specs/stateless/verifications.spec.ts +++ b/e2e/specs/stateless/verifications.spec.ts @@ -427,8 +427,6 @@ test.describe('Verified records', () => { await page.goto(`/${name}`) await login.connect() - await page.pause() - await expect(page.getByTestId('profile-section-verifications')).toBeVisible() await profilePage.isRecordVerified('text', 'com.twitter', false) @@ -687,8 +685,10 @@ test.describe('OAuth flow', () => { }) }) - await page.goto(`/?iss=${DENTITY_ISS}&code=dummyCode`) + await page.goto('/') await login.connect() + + await page.goto(`/?iss=${DENTITY_ISS}&code=dummyCode`) await expect(page).toHaveURL(`/${name}`) diff --git a/next.config.mjs b/next.config.mjs index 30ee68f9b..4dade7067 100644 --- a/next.config.mjs +++ b/next.config.mjs @@ -23,6 +23,17 @@ const babelIncludeRegexes = [ * @type {import('next').NextConfig} * */ const nextConfig = { + transpilePackages: [ + '@usecapsule/rainbowkit', + '@usecapsule/rainbowkit-wallet', + '@usecapsule/core-components', + '@usecapsule/react-components', + '@usecapsule/react-sdk', + '@usecapsule/core-sdk', + '@usecapsule/web-sdk', + '@usecapsule/wagmi-v2-integration', + '@usecapsule/viem-v2-integration', + ], reactStrictMode: true, compiler: { styledComponents: true, diff --git a/package.json b/package.json index 2e2108f1c..034541112 100644 --- a/package.json +++ b/package.json @@ -3,10 +3,12 @@ "version": "0.1.123", "scripts": { "dev": "NODE_NO_WARNINGS=1 next dev", - "dev:https": "next-dev-https --https --qr --port 3000", + "dev:holesky": "NEXT_PUBLIC_CHAIN_NAME=holesky pnpm dev", + "dev:sepolia": "NEXT_PUBLIC_CHAIN_NAME=sepolia pnpm dev", + "dev:https": "next dev --experimental-https --port 443", "dev:nlocal": "NEXT_PUBLIC_PROVIDER=http://localhost:8545 NEXT_PUBLIC_AVUP_ENDPOINT=http://localhost:8787 pnpm dev", "dev:localname": "NEXT_PUBLIC_PROVIDER=\"http://$(\"hostname\"):8545\" && NEXT_PUBLIC_AVUP_ENDPOINT=\"http://$(\"hostname\"):8787\" && NEXT_PUBLIC_GRAPH_URI=\"http://$(\"hostname\"):8000/subgraphs/name/graphprotocol/ens\" && pnpm dev", - "dev:glocal": "rm -rf .next && NEXT_PUBLIC_GRAPH_URI=http://localhost:8000/subgraphs/name/graphprotocol/ens NEXT_PUBLIC_ETH_NODE=anvil pnpm dev:nlocal", + "dev:glocal": "SWC_CACHE=false rm -rf .next && NEXT_PUBLIC_GRAPH_URI=http://localhost:8000/subgraphs/name/graphprotocol/ens NEXT_PUBLIC_ETH_NODE=anvil pnpm dev:nlocal", "dev:gonline": "NEXT_PUBLIC_GRAPH_URI=https://api.studio.thegraph.com/query/49574/ensholesky/version/latest pnpm dev", "build": "next build", "build:preview": "NEXT_PUBLIC_ENSJS_DEBUG=true next build --profile", @@ -18,7 +20,7 @@ "buildandexport": "pnpm build && pnpm export", "buildandstart:glocal": "pnpm build:glocal && pnpm start", "tenv": "ens-test-env -a", - "denv": "pnpm tenv start --no-graph --no-build --extra-time 12232000 --verbosity 1", + "denv": "pnpm tenv start --no-scripts --no-build --extra-time 12232000 --verbosity 1", "lint": "next lint && stylelint \"./src/**/*.tsx\"", "lint:types": "tsc --noEmit", "lint:fix": "next lint --fix", @@ -54,8 +56,7 @@ "@metamask/post-message-stream": "^6.1.2", "@metamask/providers": "^14.0.2", "@noble/hashes": "^1.3.2", - "@rainbow-me/rainbowkit": "2.1.2", - "@sentry/nextjs": "7.43.x", + "@sentry/nextjs": "^7.43.0", "@splidejs/react-splide": "^0.7.12", "@svgr/webpack": "^8.1.0", "@tanstack/query-persist-client-core": "5.22.2", @@ -63,10 +64,14 @@ "@tanstack/react-query": "5.22.2", "@tanstack/react-query-devtools": "^5.59.0", "@tanstack/react-query-persist-client": "5.22.2", + "@usecapsule/rainbowkit": "3.6.0", + "@usecapsule/rainbowkit-wallet": "1.6.0", "@wagmi/core": "2.13.3", "calendar-link": "^2.8.0", "dequal": "2.0.3", "dns-packet": "^5.4.0", + "form-data": "^4.0.0", + "glob": "^8.0.3", "graphql-request": "6.1.0", "i18next": "^21.9.1", "i18next-browser-languagedetector": "^6.1.5", @@ -74,6 +79,7 @@ "idb-keyval": "^6.2.1", "immer": "^9.0.15", "iso-639-1": "^2.1.15", + "node-forge": "1.3.1", "markdown-to-jsx": "^7.7.3", "next": "13.5.8", "node-fetch": "^3.3.2", @@ -271,7 +277,8 @@ }, "patchedDependencies": { "react-confetti@6.1.0": "patches/react-confetti@6.1.0.patch", - "next-dev-https@0.1.2": "patches/next-dev-https@0.1.2.patch" + "next-dev-https@0.1.2": "patches/next-dev-https@0.1.2.patch", + "node-forge@1.3.1": "patches/node-forge@1.3.1.patch" } }, "packageManager": "pnpm@9.3.0" diff --git a/patches/node-forge@1.3.1.patch b/patches/node-forge@1.3.1.patch new file mode 100644 index 000000000..c94c55bfe --- /dev/null +++ b/patches/node-forge@1.3.1.patch @@ -0,0 +1,36 @@ +diff --git a/CHANGELOG.md b/CHANGELOG.md +deleted file mode 100644 +index 27d0e3a0073c20adff764c71575e200d6ac23432..0000000000000000000000000000000000000000 +diff --git a/flash/README.md b/flash/README.md +deleted file mode 100644 +index 1576ebf1a99dab1462caa81c14240864ed1454cb..0000000000000000000000000000000000000000 +diff --git a/flash/package.json b/flash/package.json +deleted file mode 100644 +index 92689fa9b24e93a631d2b52572030d7e17ccb10f..0000000000000000000000000000000000000000 +diff --git a/lib/rsa.js b/lib/rsa.js +index 5c73209f9a1c97c8f1e58bc2930426c4f580776a..fb4cdad07208d23c10dedbc1f39b1435a4539d65 100644 +--- a/lib/rsa.js ++++ b/lib/rsa.js +@@ -1717,13 +1717,15 @@ function _generateKeyPair(state, options, callback) { + + var opts = { + algorithm: { +- name: options.algorithm || 'PRIMEINC', +- options: { +- workers: options.workers || 2, +- workLoad: options.workLoad || 100, +- workerScript: options.workerScript +- } +- } ++ name: options.algorithm || "PRIMEINC", ++ options: options.workerScript ++ ? { ++ workers: options.workers || 2, ++ workLoad: options.workLoad || 100, ++ workerScript: options.workerScript, ++ } ++ : {}, ++ }, + }; + if('prng' in options) { + opts.prng = options.prng; diff --git a/playwright/fixtures/login.ts b/playwright/fixtures/login.ts index fe28843c4..35cc29b6f 100644 --- a/playwright/fixtures/login.ts +++ b/playwright/fixtures/login.ts @@ -43,16 +43,13 @@ export class Login { await expect(this.page.getByText('Confirm connection in the extension')).toBeVisible({ timeout: 15000, }) + await expect.poll(() => this.wallet.getPendingRequestCount(Web3RequestKind.RequestPermissions)).toBeGreaterThanOrEqual(1) // this isn't actually what the user experiences, just a quirk in headless-web3-provider - expect(this.wallet.getPendingRequestCount(Web3RequestKind.RequestPermissions)).toEqual(1) await this.wallet.authorize(Web3RequestKind.RequestPermissions) - expect(this.wallet.getPendingRequestCount(Web3RequestKind.RequestPermissions)).toEqual(0) - await expect - .poll(() => this.wallet.getPendingRequestCount(Web3RequestKind.RequestAccounts)) - .toEqual(1) + await expect.poll(() => this.wallet.getPendingRequestCount(Web3RequestKind.RequestAccounts)).toBeGreaterThanOrEqual(1) await this.wallet.authorize(Web3RequestKind.RequestAccounts) - expect(this.wallet.getPendingRequestCount(Web3RequestKind.RequestAccounts)).toEqual(0) - await expect(this.getProfileButton).toBeVisible() + await expect.poll(() => this.wallet.getPendingRequestCount(Web3RequestKind.RequestAccounts)).toEqual(0) + await expect.poll(() => this.getProfileButton.isVisible()).toBe(true) } async switchTo(user: User) { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6e0470e50..f84960854 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -107,6 +107,9 @@ patchedDependencies: next-dev-https@0.1.2: hash: q5l3x5627ujg3rak6l6v24c2cq path: patches/next-dev-https@0.1.2.patch + node-forge@1.3.1: + hash: nfdrir6ttlr77nd4pr3kkewsuy + path: patches/node-forge@1.3.1.patch react-confetti@6.1.0: hash: bbuxkxhxbyez4jmqgptuoucij4 path: patches/react-confetti@6.1.0.patch @@ -141,13 +144,10 @@ importers: version: 14.0.2 '@noble/hashes': specifier: ^1.3.2 - version: 1.5.0 - '@rainbow-me/rainbowkit': - specifier: 2.1.2 - version: 2.1.2(@tanstack/react-query@5.22.2(react@18.3.1))(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(viem@2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8))(wagmi@2.12.4(@tanstack/query-core@5.22.2)(@tanstack/react-query@5.22.2(react@18.3.1))(@types/react@18.3.12)(bufferutil@4.0.8)(immer@9.0.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.18.0)(typescript@5.4.5)(utf-8-validate@5.0.10)(viem@2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8)) + version: 1.4.0 '@sentry/nextjs': - specifier: 7.43.x - version: 7.43.0(next@13.5.8(@babel/core@7.26.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) + specifier: ^7.43.0 + version: 7.43.0(next@13.5.8(@babel/core@7.26.9)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) '@splidejs/react-splide': specifier: ^0.7.12 version: 0.7.12 @@ -165,10 +165,16 @@ importers: version: 5.22.2(react@18.3.1) '@tanstack/react-query-devtools': specifier: ^5.59.0 - version: 5.59.0(@tanstack/react-query@5.22.2(react@18.3.1))(react@18.3.1) + version: 5.62.1(@tanstack/react-query@5.22.2(react@18.3.1))(react@18.3.1) '@tanstack/react-query-persist-client': specifier: 5.22.2 version: 5.22.2(@tanstack/react-query@5.22.2(react@18.3.1))(react@18.3.1) + '@usecapsule/rainbowkit': + specifier: 3.6.0 + version: 3.6.0(@emotion/is-prop-valid@1.2.2)(@types/react@18.3.12)(immer@9.0.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(viem@2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8))(wagmi@2.12.4(@tanstack/query-core@5.22.2)(@tanstack/react-query@5.22.2(react@18.3.1))(@types/react@18.3.12)(bufferutil@4.0.8)(immer@9.0.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.18.0)(typescript@5.4.5)(utf-8-validate@5.0.10)(viem@2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8)) + '@usecapsule/rainbowkit-wallet': + specifier: 1.6.0 + version: 1.6.0(lwutocmeejwbt2qr2zf2e24tya) '@wagmi/core': specifier: 2.13.3 version: 2.13.3(@tanstack/query-core@5.22.2)(@types/react@18.3.12)(immer@9.0.21)(react@18.3.1)(typescript@5.4.5)(viem@2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8)) @@ -181,6 +187,12 @@ importers: dns-packet: specifier: ^5.4.0 version: 5.6.1 + form-data: + specifier: ^4.0.0 + version: 4.0.0 + glob: + specifier: ^8.0.3 + version: 8.1.0 graphql-request: specifier: 6.1.0 version: 6.1.0(graphql@16.8.1) @@ -204,13 +216,16 @@ importers: version: 2.1.15 markdown-to-jsx: specifier: ^7.7.3 - version: 7.7.3(react@18.3.1) + version: 7.7.4(react@18.3.1) next: specifier: 13.5.8 - version: 13.5.8(@babel/core@7.26.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 13.5.8(@babel/core@7.26.9)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) node-fetch: specifier: ^3.3.2 version: 3.3.2 + node-forge: + specifier: 1.3.1 + version: 1.3.1(patch_hash=nfdrir6ttlr77nd4pr3kkewsuy) react: specifier: ^18.2.0 version: 18.3.1 @@ -240,10 +255,10 @@ importers: version: 5.4.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) styled-components: specifier: ^5.3.5 - version: 5.3.11(@babel/core@7.26.8)(react-dom@18.3.1(react@18.3.1))(react-is@17.0.2)(react@18.3.1) + version: 5.3.6(@babel/core@7.26.9)(react-dom@18.3.1(react@18.3.1))(react-is@17.0.2)(react@18.3.1) tinyglobby: specifier: ^0.2.6 - version: 0.2.6 + version: 0.2.9 ts-pattern: specifier: ^4.3.0 version: 4.3.0 @@ -274,7 +289,7 @@ importers: version: 13.5.6(bufferutil@4.0.8)(utf-8-validate@5.0.10) '@nomiclabs/hardhat-ethers': specifier: npm:hardhat-deploy-ethers@0.3.0-beta.13 - version: hardhat-deploy-ethers@0.3.0-beta.13(ethers@5.7.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(hardhat@2.22.18(bufferutil@4.0.8)(ts-node@10.9.2(@types/node@20.17.17)(typescript@5.4.5))(typescript@5.4.5)(utf-8-validate@5.0.10)) + version: hardhat-deploy-ethers@0.3.0-beta.13(ethers@5.7.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(hardhat@2.22.18(bufferutil@4.0.8)(ts-node@10.9.2(@types/node@20.17.19)(typescript@5.4.5))(typescript@5.4.5)(utf-8-validate@5.0.10)) '@openzeppelin/contracts': specifier: ^4.7.3 version: 4.9.6 @@ -283,13 +298,13 @@ importers: version: 0.5.16(bufferutil@4.0.8)(utf-8-validate@5.0.10) '@playwright/test': specifier: ^1.48.2 - version: 1.48.2 + version: 1.49.0 '@testing-library/dom': specifier: ^10.4.0 version: 10.4.0 '@testing-library/jest-dom': specifier: ^6.4.2 - version: 6.4.5(vitest@3.0.5(@types/debug@4.1.12)(@types/node@20.17.17)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.17)(typescript@5.4.5))) + version: 6.4.5(vitest@3.0.6(@types/debug@4.1.12)(@types/node@20.17.19)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.19)(typescript@5.4.5))) '@testing-library/react': specifier: ^16.2.0 version: 16.2.0(@testing-library/dom@10.4.0)(@types/react-dom@18.3.0)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -301,7 +316,7 @@ importers: version: 14.5.2(@testing-library/dom@10.4.0) '@types/node': specifier: ^20.17.17 - version: 20.17.17 + version: 20.17.19 '@types/pako': specifier: ^2.0.0 version: 2.0.3 @@ -328,19 +343,19 @@ importers: version: 6.21.0(eslint@8.50.0)(typescript@5.4.5) '@vitejs/plugin-react': specifier: ^4.3.4 - version: 4.3.4(vite@5.2.11(@types/node@20.17.17)) + version: 4.3.4(vite@5.2.11(@types/node@20.17.19)) '@vitest/coverage-v8': specifier: ^3.0.5 - version: 3.0.5(vitest@3.0.5(@types/debug@4.1.12)(@types/node@20.17.17)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.17)(typescript@5.4.5))) + version: 3.0.6(vitest@3.0.6(@types/debug@4.1.12)(@types/node@20.17.19)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.19)(typescript@5.4.5))) '@vitest/spy': specifier: ^3.0.5 - version: 3.0.5 + version: 3.0.6 cbor: specifier: ^10.0.3 version: 10.0.3 dotenv: specifier: ^16.0.1 - version: 16.4.7 + version: 16.4.5 eslint: specifier: 8.50.0 version: 8.50.0 @@ -382,16 +397,16 @@ importers: version: 6.2.2(eslint@8.50.0)(typescript@5.4.5) eslint-plugin-vitest: specifier: ^0.5.4 - version: 0.5.4(@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.50.0)(typescript@5.4.5))(eslint@8.50.0)(typescript@5.4.5))(eslint@8.50.0)(typescript@5.4.5)(vitest@3.0.5(@types/debug@4.1.12)(@types/node@20.17.17)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.17)(typescript@5.4.5))) + version: 0.5.4(@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.50.0)(typescript@5.4.5))(eslint@8.50.0)(typescript@5.4.5))(eslint@8.50.0)(typescript@5.4.5)(vitest@3.0.6(@types/debug@4.1.12)(@types/node@20.17.19)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.19)(typescript@5.4.5))) ethers: specifier: ^5.7.2 version: 5.7.2(bufferutil@4.0.8)(utf-8-validate@5.0.10) hardhat: specifier: ^2.22.18 - version: 2.22.18(bufferutil@4.0.8)(ts-node@10.9.2(@types/node@20.17.17)(typescript@5.4.5))(typescript@5.4.5)(utf-8-validate@5.0.10) + version: 2.22.18(bufferutil@4.0.8)(ts-node@10.9.2(@types/node@20.17.19)(typescript@5.4.5))(typescript@5.4.5)(utf-8-validate@5.0.10) hardhat-dependency-compiler: specifier: ^1.1.3 - version: 1.1.4(hardhat@2.22.18(bufferutil@4.0.8)(ts-node@10.9.2(@types/node@20.17.17)(typescript@5.4.5))(typescript@5.4.5)(utf-8-validate@5.0.10)) + version: 1.1.4(hardhat@2.22.18(bufferutil@4.0.8)(ts-node@10.9.2(@types/node@20.17.19)(typescript@5.4.5))(typescript@5.4.5)(utf-8-validate@5.0.10)) hardhat-deploy: specifier: ^0.11.12 version: 0.11.45(bufferutil@4.0.8)(utf-8-validate@5.0.10) @@ -403,16 +418,16 @@ importers: version: 24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10) knip: specifier: ^5.44.0 - version: 5.44.0(@types/node@20.17.17)(typescript@5.4.5) + version: 5.44.2(@types/node@20.17.19)(typescript@5.4.5) msw: specifier: ^2.7.0 - version: 2.7.0(@types/node@20.17.17)(typescript@5.4.5) + version: 2.7.0(@types/node@20.17.19)(typescript@5.4.5) next-dev-https: specifier: ^0.1.2 - version: 0.1.2(patch_hash=q5l3x5627ujg3rak6l6v24c2cq)(next@13.5.8(@babel/core@7.26.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) + version: 0.1.2(patch_hash=q5l3x5627ujg3rak6l6v24c2cq)(next@13.5.8(@babel/core@7.26.9)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) next-router-mock: specifier: ^0.9.10 - version: 0.9.13(next@13.5.8(@babel/core@7.26.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) + version: 0.9.13(next@13.5.8(@babel/core@7.26.9)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) pako: specifier: ^2.1.0 version: 2.1.0 @@ -439,7 +454,7 @@ importers: version: 3.3.2 ts-node: specifier: ^10.9.1 - version: 10.9.2(@types/node@20.17.17)(typescript@5.4.5) + version: 10.9.2(@types/node@20.17.19)(typescript@5.4.5) typescript: specifier: ^5.1.6 version: 5.4.5 @@ -448,13 +463,13 @@ importers: version: 0.18.3 vite-plugin-magical-svg: specifier: ^1.3.0 - version: 1.3.0(vite@5.2.11(@types/node@20.17.17)) + version: 1.3.0(vite@5.2.11(@types/node@20.17.19)) vitest: specifier: ^3.0.5 - version: 3.0.5(@types/debug@4.1.12)(@types/node@20.17.17)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.17)(typescript@5.4.5)) + version: 3.0.6(@types/debug@4.1.12)(@types/node@20.17.19)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.19)(typescript@5.4.5)) vitest-canvas-mock: specifier: ^0.3.3 - version: 0.3.3(vitest@3.0.5(@types/debug@4.1.12)(@types/node@20.17.17)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.17)(typescript@5.4.5))) + version: 0.3.3(vitest@3.0.6(@types/debug@4.1.12)(@types/node@20.17.19)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.19)(typescript@5.4.5))) wait-on: specifier: ^8.0.2 version: 8.0.2 @@ -463,7 +478,7 @@ importers: version: 3.57.1(@cloudflare/workers-types@3.19.0)(bufferutil@4.0.8)(utf-8-validate@5.0.10) ws: specifier: ^8.16.0 - version: 8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10) + version: 8.17.0(bufferutil@4.0.8)(utf-8-validate@5.0.10) packages: @@ -480,16 +495,20 @@ packages: resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} engines: {node: '>=6.0.0'} - '@babel/code-frame@7.24.7': - resolution: {integrity: sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==} + '@babel/code-frame@7.24.6': + resolution: {integrity: sha512-ZJhac6FkEd1yhG2AHOmfcXG4ceoLltoCVJjN5XsWN9BifBQr+cHJbWi0h68HZuSORq+3WtJ2z0hwF2NG1b5kcA==} + engines: {node: '>=6.9.0'} + + '@babel/code-frame@7.25.7': + resolution: {integrity: sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g==} engines: {node: '>=6.9.0'} '@babel/code-frame@7.26.2': resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==} engines: {node: '>=6.9.0'} - '@babel/compat-data@7.25.2': - resolution: {integrity: sha512-bYcppcpKBvX4znYaPEeFau03bp89ShqNMLs+rmdptMw+heSZh9+z84d2YG+K7cYLbWwzdjtDoW/uqZmPjulClQ==} + '@babel/compat-data@7.24.6': + resolution: {integrity: sha512-aC2DGhBq5eEdyXWqrDInSqQjO0k8xtPRf5YylULqx8MCd6jBtzqfta/3ETMRpuKIc5hyswfO80ObyA1MvkCcUQ==} engines: {node: '>=6.9.0'} '@babel/compat-data@7.26.8': @@ -500,42 +519,42 @@ packages: resolution: {integrity: sha512-qAHSfAdVyFmIvl0VHELib8xar7ONuSHrE2hLnsaWkYNTI68dmi1x8GYDhJjMI/e7XWal9QBlZkwbOnkcw7Z8gQ==} engines: {node: '>=6.9.0'} - '@babel/core@7.26.8': - resolution: {integrity: sha512-l+lkXCHS6tQEc5oUpK28xBOZ6+HwaH7YwoYQbLFiYb4nS2/l1tKnZEtEWkD0GuiYdvArf9qBS0XlQGXzPMsNqQ==} + '@babel/core@7.26.9': + resolution: {integrity: sha512-lWBYIrF7qK5+GjY5Uy+/hEgp8OJWOD/rpy74GplYRhEauvbHDeFB8t5hPOZxCZ0Oxf4Cc36tK51/l3ymJysrKw==} engines: {node: '>=6.9.0'} - '@babel/generator@7.25.0': - resolution: {integrity: sha512-3LEEcj3PVW8pW2R1SR1M89g/qrYk/m/mB/tLqn7dn4sbBUQyTqnlod+II2U4dqiGtUmkcnAmkMDralTFZttRiw==} + '@babel/generator@7.24.6': + resolution: {integrity: sha512-S7m4eNa6YAPJRHmKsLHIDJhNAGNKoWNiWefz1MBbpnt8g9lvMDl1hir4P9bo/57bQEmuwEhnRU/AMWsD0G/Fbg==} engines: {node: '>=6.9.0'} - '@babel/generator@7.26.8': - resolution: {integrity: sha512-ef383X5++iZHWAXX0SXQR6ZyQhw/0KtTkrTz61WXRhFM6dhpHulO/RJz79L8S6ugZHJkOOkUrUdxgdF2YiPFnA==} + '@babel/generator@7.26.9': + resolution: {integrity: sha512-kEWdzjOAUMW4hAyrzJ0ZaTOu9OmpyDIQicIh0zg0EEcEkYXZb2TjtBhnHi2ViX7PKwZqF4xwqfAm299/QMP3lg==} engines: {node: '>=6.9.0'} - '@babel/helper-annotate-as-pure@7.24.7': - resolution: {integrity: sha512-BaDeOonYvhdKw+JoMVkAixAAJzG2jVPIwWoKBPdYuY9b452e2rPuI9QPYh3KpofZ3pW2akOmwZLOiOsHMiqRAg==} + '@babel/helper-annotate-as-pure@7.24.6': + resolution: {integrity: sha512-DitEzDfOMnd13kZnDqns1ccmftwJTS9DMkyn9pYTxulS7bZxUxpMly3Nf23QQ6NwA4UB8lAqjbqWtyvElEMAkg==} engines: {node: '>=6.9.0'} '@babel/helper-builder-binary-assignment-operator-visitor@7.24.6': resolution: {integrity: sha512-+wnfqc5uHiMYtvRX7qu80Toef8BXeh4HHR1SPeonGb1SKPniNEd4a/nlaJJMv/OIEYvIVavvo0yR7u10Gqz0Iw==} engines: {node: '>=6.9.0'} - '@babel/helper-compilation-targets@7.25.2': - resolution: {integrity: sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==} + '@babel/helper-compilation-targets@7.24.6': + resolution: {integrity: sha512-VZQ57UsDGlX/5fFA7GkVPplZhHsVc+vuErWgdOiysI9Ksnw0Pbbd6pnPiR/mmJyKHgyIW0c7KT32gmhiF+cirg==} engines: {node: '>=6.9.0'} '@babel/helper-compilation-targets@7.26.5': resolution: {integrity: sha512-IXuyn5EkouFJscIDuFF5EsiSolseme1s0CZB+QxVugqJLYmKdxI1VfIBOst0SUu4rnk2Z7kqTwmoO1lp3HIfnA==} engines: {node: '>=6.9.0'} - '@babel/helper-create-class-features-plugin@7.25.0': - resolution: {integrity: sha512-GYM6BxeQsETc9mnct+nIIpf63SAyzvyYN7UB/IlTyd+MBg06afFGp0mIeUqGyWgS2mxad6vqbMrHVlaL3m70sQ==} + '@babel/helper-create-class-features-plugin@7.24.6': + resolution: {integrity: sha512-djsosdPJVZE6Vsw3kk7IPRWethP94WHGOhQTc67SNXE0ZzMhHgALw8iGmYS0TD1bbMM0VDROy43od7/hN6WYcA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-create-regexp-features-plugin@7.25.2': - resolution: {integrity: sha512-+wqVGP+DFmqwFD3EH6TMTfUNeqDehV3E/dl+Sd54eaXqm17tEUNbEIn4sVivVowbvUpOtIGxdo3GoXyDH9N/9g==} + '@babel/helper-create-regexp-features-plugin@7.24.6': + resolution: {integrity: sha512-C875lFBIWWwyv6MHZUG9HmRrlTDgOsLWZfYR0nW69gaKJNe0/Mpxx5r0EID2ZdHQkdUmQo2t0uNckTL08/1BgA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 @@ -545,28 +564,32 @@ packages: peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - '@babel/helper-environment-visitor@7.24.7': - resolution: {integrity: sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==} + '@babel/helper-environment-visitor@7.24.6': + resolution: {integrity: sha512-Y50Cg3k0LKLMjxdPjIl40SdJgMB85iXn27Vk/qbHZCFx/o5XO3PSnpi675h1KEmmDb6OFArfd5SCQEQ5Q4H88g==} + engines: {node: '>=6.9.0'} + + '@babel/helper-function-name@7.24.6': + resolution: {integrity: sha512-xpeLqeeRkbxhnYimfr2PC+iA0Q7ljX/d1eZ9/inYbmfG2jpl8Lu3DyXvpOAnrS5kxkfOWJjioIMQsaMBXFI05w==} engines: {node: '>=6.9.0'} '@babel/helper-hoist-variables@7.24.6': resolution: {integrity: sha512-SF/EMrC3OD7dSta1bLJIlrsVxwtd0UpjRJqLno6125epQMJ/kyFmpTT4pbvPbdQHzCHg+biQ7Syo8lnDtbR+uA==} engines: {node: '>=6.9.0'} - '@babel/helper-member-expression-to-functions@7.24.8': - resolution: {integrity: sha512-LABppdt+Lp/RlBxqrh4qgf1oEH/WxdzQNDJIu5gC/W1GyvPVrOBiItmmM8wan2fm4oYqFuFfkXmlGpLQhPY8CA==} + '@babel/helper-member-expression-to-functions@7.24.6': + resolution: {integrity: sha512-OTsCufZTxDUsv2/eDXanw/mUZHWOxSbEmC3pP8cgjcy5rgeVPWWMStnv274DV60JtHxTk0adT0QrCzC4M9NWGg==} engines: {node: '>=6.9.0'} - '@babel/helper-module-imports@7.24.7': - resolution: {integrity: sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==} + '@babel/helper-module-imports@7.24.6': + resolution: {integrity: sha512-a26dmxFJBF62rRO9mmpgrfTLsAuyHk4e1hKTUkD/fcMfynt8gvEKwQPQDVxWhca8dHoDck+55DFt42zV0QMw5g==} engines: {node: '>=6.9.0'} '@babel/helper-module-imports@7.25.9': resolution: {integrity: sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==} engines: {node: '>=6.9.0'} - '@babel/helper-module-transforms@7.25.2': - resolution: {integrity: sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ==} + '@babel/helper-module-transforms@7.24.6': + resolution: {integrity: sha512-Y/YMPm83mV2HJTbX1Qh2sjgjqcacvOlhbzdCCsSlblOKjSYmQqEbO6rUniWQyRo9ncyfjT8hnUjlG06RXDEmcA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 @@ -577,72 +600,106 @@ packages: peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-optimise-call-expression@7.24.7': - resolution: {integrity: sha512-jKiTsW2xmWwxT1ixIdfXUZp+P5yURx2suzLZr5Hi64rURpDYdMW0pv+Uf17EYk2Rd428Lx4tLsnjGJzYKDM/6A==} + '@babel/helper-optimise-call-expression@7.24.6': + resolution: {integrity: sha512-3SFDJRbx7KuPRl8XDUr8O7GAEB8iGyWPjLKJh/ywP/Iy9WOmEfMrsWbaZpvBu2HSYn4KQygIsz0O7m8y10ncMA==} engines: {node: '>=6.9.0'} - '@babel/helper-plugin-utils@7.24.8': - resolution: {integrity: sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg==} + '@babel/helper-plugin-utils@7.24.6': + resolution: {integrity: sha512-MZG/JcWfxybKwsA9N9PmtF2lOSFSEMVCpIRrbxccZFLJPrJciJdG/UhSh5W96GEteJI2ARqm5UAHxISwRDLSNg==} engines: {node: '>=6.9.0'} '@babel/helper-plugin-utils@7.26.5': resolution: {integrity: sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==} engines: {node: '>=6.9.0'} - '@babel/helper-remap-async-to-generator@7.25.0': - resolution: {integrity: sha512-NhavI2eWEIz/H9dbrG0TuOicDhNexze43i5z7lEqwYm0WEZVTwnPpA0EafUTP7+6/W79HWIP2cTe3Z5NiSTVpw==} + '@babel/helper-remap-async-to-generator@7.24.6': + resolution: {integrity: sha512-1Qursq9ArRZPAMOZf/nuzVW8HgJLkTB9y9LfP4lW2MVp4e9WkLJDovfKBxoDcCk6VuzIxyqWHyBoaCtSRP10yg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-replace-supers@7.25.0': - resolution: {integrity: sha512-q688zIvQVYtZu+i2PsdIu/uWGRpfxzr5WESsfpShfZECkO+d2o+WROWezCi/Q6kJ0tfPa5+pUGUlfx2HhrA3Bg==} + '@babel/helper-replace-supers@7.24.6': + resolution: {integrity: sha512-mRhfPwDqDpba8o1F8ESxsEkJMQkUF8ZIWrAc0FtWhxnjfextxMWxr22RtFizxxSYLjVHDeMgVsRq8BBZR2ikJQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-simple-access@7.24.7': - resolution: {integrity: sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==} + '@babel/helper-simple-access@7.24.6': + resolution: {integrity: sha512-nZzcMMD4ZhmB35MOOzQuiGO5RzL6tJbsT37Zx8M5L/i9KSrukGXWTjLe1knIbb/RmxoJE9GON9soq0c0VEMM5g==} + engines: {node: '>=6.9.0'} + + '@babel/helper-skip-transparent-expression-wrappers@7.24.6': + resolution: {integrity: sha512-jhbbkK3IUKc4T43WadP96a27oYti9gEf1LdyGSP2rHGH77kwLwfhO7TgwnWvxxQVmke0ImmCSS47vcuxEMGD3Q==} + engines: {node: '>=6.9.0'} + + '@babel/helper-split-export-declaration@7.24.6': + resolution: {integrity: sha512-CvLSkwXGWnYlF9+J3iZUvwgAxKiYzK3BWuo+mLzD/MDGOZDj7Gq8+hqaOkMxmJwmlv0iu86uH5fdADd9Hxkymw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-string-parser@7.24.6': + resolution: {integrity: sha512-WdJjwMEkmBicq5T9fm/cHND3+UlFa2Yj8ALLgmoSQAJZysYbBjw+azChSGPN4DSPLXOcooGRvDwZWMcF/mLO2Q==} engines: {node: '>=6.9.0'} - '@babel/helper-skip-transparent-expression-wrappers@7.24.7': - resolution: {integrity: sha512-IO+DLT3LQUElMbpzlatRASEyQtfhSE0+m465v++3jyyXeBTBUjtVZg28/gHeV5mrTJqvEKhKroBGAvhW+qPHiQ==} + '@babel/helper-string-parser@7.25.7': + resolution: {integrity: sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g==} engines: {node: '>=6.9.0'} '@babel/helper-string-parser@7.25.9': resolution: {integrity: sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==} engines: {node: '>=6.9.0'} + '@babel/helper-validator-identifier@7.24.6': + resolution: {integrity: sha512-4yA7s865JHaqUdRbnaxarZREuPTHrjpDT+pXoAZ1yhyo6uFnIEpS8VMu16siFOHDpZNKYv5BObhsB//ycbICyw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-identifier@7.25.7': + resolution: {integrity: sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==} + engines: {node: '>=6.9.0'} + '@babel/helper-validator-identifier@7.25.9': resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==} engines: {node: '>=6.9.0'} - '@babel/helper-validator-option@7.24.8': - resolution: {integrity: sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==} + '@babel/helper-validator-option@7.24.6': + resolution: {integrity: sha512-Jktc8KkF3zIkePb48QO+IapbXlSapOW9S+ogZZkcO6bABgYAxtZcjZ/O005111YLf+j4M84uEgwYoidDkXbCkQ==} engines: {node: '>=6.9.0'} '@babel/helper-validator-option@7.25.9': resolution: {integrity: sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==} engines: {node: '>=6.9.0'} - '@babel/helper-wrap-function@7.25.0': - resolution: {integrity: sha512-s6Q1ebqutSiZnEjaofc/UKDyC4SbzV5n5SrA2Gq8UawLycr3i04f1dX4OzoQVnexm6aOCh37SQNYlJ/8Ku+PMQ==} + '@babel/helper-wrap-function@7.24.6': + resolution: {integrity: sha512-f1JLrlw/jbiNfxvdrfBgio/gRBk3yTAEJWirpAkiJG2Hb22E7cEYKHWo0dFPTv/niPovzIdPdEDetrv6tC6gPQ==} engines: {node: '>=6.9.0'} '@babel/helpers@7.24.6': resolution: {integrity: sha512-V2PI+NqnyFu1i0GyTd/O/cTpxzQCYioSkUIRmgo7gFEHKKCg5w46+r/A6WeUR1+P3TeQ49dspGPNd/E3n9AnnA==} engines: {node: '>=6.9.0'} - '@babel/helpers@7.26.7': - resolution: {integrity: sha512-8NHiL98vsi0mbPQmYAGWwfcFaOy4j2HY49fXJCfuDcdE7fMIsH9a7GdaeXpIBsbT7307WU8KCMp5pUVDNL4f9A==} + '@babel/helpers@7.26.9': + resolution: {integrity: sha512-Mz/4+y8udxBKdmzt/UjPACs4G3j5SshJJEFFKxlCGPydG4JAHXxjWjAwjd09tf6oINvl1VfMJo+nB7H2YKQ0dA==} + engines: {node: '>=6.9.0'} + + '@babel/highlight@7.24.6': + resolution: {integrity: sha512-2YnuOp4HAk2BsBrJJvYCbItHx0zWscI1C3zgWkz+wDyD9I7GIVrfnLyrR4Y1VR+7p+chAEcrgRQYZAGIKMV7vQ==} engines: {node: '>=6.9.0'} - '@babel/highlight@7.24.7': - resolution: {integrity: sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==} + '@babel/highlight@7.25.7': + resolution: {integrity: sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw==} engines: {node: '>=6.9.0'} - '@babel/parser@7.26.8': - resolution: {integrity: sha512-TZIQ25pkSoaKEYYaHbbxkfL36GNsQ6iFiBbeuzAkLnXayKR1yP1zFe+NxuZWWsUyvt8icPU9CCq0sgWGXR1GEw==} + '@babel/parser@7.24.6': + resolution: {integrity: sha512-eNZXdfU35nJC2h24RznROuOpO94h6x8sg9ju0tT9biNtLZ2vuP8SduLqqV+/8+cebSLV9SJEAN5Z3zQbJG/M+Q==} + engines: {node: '>=6.0.0'} + hasBin: true + + '@babel/parser@7.25.8': + resolution: {integrity: sha512-HcttkxzdPucv3nNFmfOOMfFf64KgdJVqm1KaCm25dPGMLElo9nsLvXeJECQg8UzPuBGLyTSA0ZzqCtDSzKTEoQ==} + engines: {node: '>=6.0.0'} + hasBin: true + + '@babel/parser@7.26.9': + resolution: {integrity: sha512-81NWa1njQblgZbQHxWHpxxCzNsa3ZwvFqpUg7P+NNUU6f3UU2jBEg4OlF/J6rl8+PQGh1q6/zWScd001YwcA5A==} engines: {node: '>=6.0.0'} hasBin: true @@ -724,8 +781,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-jsx@7.24.7': - resolution: {integrity: sha512-6ddciUPe/mpMnOKv/U+RSd2vvVy+Yw/JfBB0ZHYjEZt9NLHmCUylNYlsbqCCS1Bffjlb0fCwC9Vqz+sBz6PsiQ==} + '@babel/plugin-syntax-jsx@7.24.6': + resolution: {integrity: sha512-lWfvAIFNWMlCsU0DRUun2GpFwZdGTukLaHJqRh1JRb80NdAP5Sb1HDHB5X9P9OtgZHQl089UzQkpYlBq2VTPRw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -772,8 +829,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-typescript@7.24.7': - resolution: {integrity: sha512-c/+fVeJBB0FeKsFvwytYiUD+LBvhHjGSI0g446PRGdSVGZLRNArBUno2PETbAly3tpiNAQR5XaZ+JslxkotsbA==} + '@babel/plugin-syntax-typescript@7.24.6': + resolution: {integrity: sha512-TzCtxGgVTEJWWwcYwQhCIQ6WaKlo80/B+Onsk4RRCcYqpYGFcG9etPW94VToGte5AAcxRrhjPUFvUS3Y2qKi4A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -784,8 +841,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0 - '@babel/plugin-transform-arrow-functions@7.24.7': - resolution: {integrity: sha512-Dt9LQs6iEY++gXUwY03DNFat5C2NbO48jj+j/bSAz6b3HgPs39qcPiYt77fDObIcFwj3/C2ICX9YMwGflUoSHQ==} + '@babel/plugin-transform-arrow-functions@7.24.6': + resolution: {integrity: sha512-jSSSDt4ZidNMggcLx8SaKsbGNEfIl0PHx/4mFEulorE7bpYLbN0d3pDW3eJ7Y5Z3yPhy3L3NaPCYyTUY7TuugQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -796,8 +853,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-async-to-generator@7.24.7': - resolution: {integrity: sha512-SQY01PcJfmQ+4Ash7NE+rpbLFbmqA2GPIgqzxfFTL4t1FKRq4zTms/7htKpoCUI9OcFYgzqfmCdH53s6/jn5fA==} + '@babel/plugin-transform-async-to-generator@7.24.6': + resolution: {integrity: sha512-NTBA2SioI3OsHeIn6sQmhvXleSl9T70YY/hostQLveWs0ic+qvbA3fa0kwAwQ0OA/XGaAerNZRQGJyRfhbJK4g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -808,8 +865,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-block-scoping@7.25.0': - resolution: {integrity: sha512-yBQjYoOjXlFv9nlXb3f1casSHOZkWr29NX+zChVanLg5Nc157CrbEX9D7hxxtTpuFy7Q0YzmmWfJxzvps4kXrQ==} + '@babel/plugin-transform-block-scoping@7.24.6': + resolution: {integrity: sha512-S/t1Xh4ehW7sGA7c1j/hiOBLnEYCp/c2sEG4ZkL8kI1xX9tW2pqJTCHKtdhe/jHKt8nG0pFCrDHUXd4DvjHS9w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -826,20 +883,20 @@ packages: peerDependencies: '@babel/core': ^7.12.0 - '@babel/plugin-transform-classes@7.25.0': - resolution: {integrity: sha512-xyi6qjr/fYU304fiRwFbekzkqVJZ6A7hOjWZd+89FVcBqPV3S9Wuozz82xdpLspckeaafntbzglaW4pqpzvtSw==} + '@babel/plugin-transform-classes@7.24.6': + resolution: {integrity: sha512-+fN+NO2gh8JtRmDSOB6gaCVo36ha8kfCW1nMq2Gc0DABln0VcHN4PrALDvF5/diLzIRKptC7z/d7Lp64zk92Fg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-computed-properties@7.24.7': - resolution: {integrity: sha512-25cS7v+707Gu6Ds2oY6tCkUwsJ9YIDbggd9+cu9jzzDgiNq7hR/8dkzxWfKWnTic26vsI3EsCXNd4iEB6e8esQ==} + '@babel/plugin-transform-computed-properties@7.24.6': + resolution: {integrity: sha512-cRzPobcfRP0ZtuIEkA8QzghoUpSB3X3qSH5W2+FzG+VjWbJXExtx0nbRqwumdBN1x/ot2SlTNQLfBCnPdzp6kg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-destructuring@7.24.8': - resolution: {integrity: sha512-36e87mfY8TnRxc7yc6M9g9gOB7rKgSahqkIKwLpz4Ppk2+zC2Cy1is0uwtuSG6AE4zlTOUa+7JGz9jCJGLqQFQ==} + '@babel/plugin-transform-destructuring@7.24.6': + resolution: {integrity: sha512-YLW6AE5LQpk5npNXL7i/O+U9CE4XsBCuRPgyjl1EICZYKmcitV+ayuuUGMJm2lC1WWjXYszeTnIxF/dq/GhIZQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -880,8 +937,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-function-name@7.25.1': - resolution: {integrity: sha512-TVVJVdW9RKMNgJJlLtHsKDTydjZAbwIsn6ySBPQaEAUU5+gVvlJt/9nRmqVbsV/IBanRjzWoaAQKLoamWVOUuA==} + '@babel/plugin-transform-function-name@7.24.6': + resolution: {integrity: sha512-sOajCu6V0P1KPljWHKiDq6ymgqB+vfo3isUS4McqW1DZtvSVU2v/wuMhmRmkg3sFoq6GMaUUf8W4WtoSLkOV/Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -892,8 +949,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-literals@7.25.2': - resolution: {integrity: sha512-HQI+HcTbm9ur3Z2DkO+jgESMAMcYLuN/A7NRw9juzxAezN9AvqvUTnpKP/9kkYANz6u7dFlAyOu44ejuGySlfw==} + '@babel/plugin-transform-literals@7.24.6': + resolution: {integrity: sha512-f2wHfR2HF6yMj+y+/y07+SLqnOSwRp8KYLpQKOzS58XLVlULhXbiYcygfXQxJlMbhII9+yXDwOUFLf60/TL5tw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -916,8 +973,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-modules-commonjs@7.24.8': - resolution: {integrity: sha512-WHsk9H8XxRs3JXKWFiqtQebdh9b/pTk4EgueygFzYlTKAg0Ud985mSevdNjdXdFBATSKVJGQXP1tv6aGbssLKA==} + '@babel/plugin-transform-modules-commonjs@7.24.6': + resolution: {integrity: sha512-JEV8l3MHdmmdb7S7Cmx6rbNEjRCgTQMZxllveHO0mx6uiclB0NflCawlQQ6+o5ZrwjUBYPzHm2XoK4wqGVUFuw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -934,8 +991,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-named-capturing-groups-regex@7.24.7': - resolution: {integrity: sha512-/jr7h/EWeJtk1U/uz2jlsCioHkZk1JJZVcc8oQsJ1dUlaJD83f4/6Zeh2aHt9BIFokHIsSeDfhUmju0+1GPd6g==} + '@babel/plugin-transform-named-capturing-groups-regex@7.24.6': + resolution: {integrity: sha512-6DneiCiu91wm3YiNIGDWZsl6GfTTbspuj/toTEqLh9d4cx50UIzSdg+T96p8DuT7aJOBRhFyaE9ZvTHkXrXr6Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 @@ -982,20 +1039,20 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-parameters@7.24.7': - resolution: {integrity: sha512-yGWW5Rr+sQOhK0Ot8hjDJuxU3XLRQGflvT4lhlSY0DFvdb3TwKaY26CJzHtYllU0vT9j58hc37ndFPsqT1SrzA==} + '@babel/plugin-transform-parameters@7.24.6': + resolution: {integrity: sha512-ST7guE8vLV+vI70wmAxuZpIKzVjvFX9Qs8bl5w6tN/6gOypPWUmMQL2p7LJz5E63vEGrDhAiYetniJFyBH1RkA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-private-methods@7.24.7': - resolution: {integrity: sha512-COTCOkG2hn4JKGEKBADkA8WNb35TGkkRbI5iT845dB+NyqgO8Hn+ajPbSnIQznneJTa3d30scb6iz/DhH8GsJQ==} + '@babel/plugin-transform-private-methods@7.24.6': + resolution: {integrity: sha512-T9LtDI0BgwXOzyXrvgLTT8DFjCC/XgWLjflczTLXyvxbnSR/gpv0hbmzlHE/kmh9nOvlygbamLKRo6Op4yB6aw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-private-property-in-object@7.24.7': - resolution: {integrity: sha512-9z76mxwnwFxMyxZWEgdgECQglF2Q7cFLm0kMf8pGwt+GSJsY0cONKj/UuO4bOH0w/uAel3ekS4ra5CEAyJRmDA==} + '@babel/plugin-transform-private-property-in-object@7.24.6': + resolution: {integrity: sha512-Qu/ypFxCY5NkAnEhCF86Mvg3NSabKsh/TPpBVswEdkGl7+FbsYHy1ziRqJpwGH4thBdQHh8zx+z7vMYmcJ7iaQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -1012,8 +1069,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-react-display-name@7.24.7': - resolution: {integrity: sha512-H/Snz9PFxKsS1JLI4dJLtnJgCJRoo0AUm3chP6NYr+9En1JMKloheEiLIhlp5MDVznWo+H3AAC1Mc8lmUEpsgg==} + '@babel/plugin-transform-react-display-name@7.24.6': + resolution: {integrity: sha512-/3iiEEHDsJuj9QU09gbyWGSUxDboFcD7Nj6dnHIlboWSodxXAoaY/zlNMHeYAC0WsERMqgO9a7UaM77CsYgWcg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -1036,8 +1093,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-react-jsx@7.25.2': - resolution: {integrity: sha512-KQsqEAVBpU82NM/B/N9j9WOdphom1SZH3R+2V7INrQUH+V9EBFwZsEJl8eBIVeQE62FxJCc70jzEZwqU7RcVqA==} + '@babel/plugin-transform-react-jsx@7.24.6': + resolution: {integrity: sha512-pCtPHhpRZHfwdA5G1Gpk5mIzMA99hv0R8S/Ket50Rw+S+8hkt3wBWqdqHaPw0CuUYxdshUgsPiLQ5fAs4ASMhw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -1060,20 +1117,20 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-shorthand-properties@7.24.7': - resolution: {integrity: sha512-KsDsevZMDsigzbA09+vacnLpmPH4aWjcZjXdyFKGzpplxhbeB4wYtury3vglQkg6KM/xEPKt73eCjPPf1PgXBA==} + '@babel/plugin-transform-shorthand-properties@7.24.6': + resolution: {integrity: sha512-xnEUvHSMr9eOWS5Al2YPfc32ten7CXdH7Zwyyk7IqITg4nX61oHj+GxpNvl+y5JHjfN3KXE2IV55wAWowBYMVw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-spread@7.24.7': - resolution: {integrity: sha512-x96oO0I09dgMDxJaANcRyD4ellXFLLiWhuwDxKZX5g2rWP1bTPkBSwCYv96VDXVT1bD9aPj8tppr5ITIh8hBng==} + '@babel/plugin-transform-spread@7.24.6': + resolution: {integrity: sha512-h/2j7oIUDjS+ULsIrNZ6/TKG97FgmEk1PXryk/HQq6op4XUUUwif2f69fJrzK0wza2zjCS1xhXmouACaWV5uPA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-sticky-regex@7.24.7': - resolution: {integrity: sha512-kHPSIJc9v24zEml5geKg9Mjx5ULpfncj0wRpYtxbvKyTtHCYDkVE3aHQ03FrpEo4gEe2vrJJS1Y9CJTaThA52g==} + '@babel/plugin-transform-sticky-regex@7.24.6': + resolution: {integrity: sha512-fN8OcTLfGmYv7FnDrsjodYBo1DhPL3Pze/9mIIE2MGCT1KgADYIOD7rEglpLHZj8PZlC/JFX5WcD+85FLAQusw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -1090,8 +1147,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-typescript@7.25.2': - resolution: {integrity: sha512-lBwRvjSmqiMYe/pS0+1gggjJleUJi7NzjvQ1Fkqtt69hBa/0t1YuW/MLQMAPixfwaQOHUXsd6jeU3Z+vdGv3+A==} + '@babel/plugin-transform-typescript@7.24.6': + resolution: {integrity: sha512-H0i+hDLmaYYSt6KU9cZE0gb3Cbssa/oxWis7PX4ofQzbvsfix9Lbh8SRk7LCPDlLWJHUiFeHU0qRRpF/4Zv7mQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -1108,8 +1165,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-unicode-regex@7.24.7': - resolution: {integrity: sha512-hlQ96MBZSAXUq7ltkjtu3FJCCSMx/j629ns3hA3pXnBXjanNP0LHi+JpPeA81zaWgVK1VGH95Xuy7u0RyQ8kMg==} + '@babel/plugin-transform-unicode-regex@7.24.6': + resolution: {integrity: sha512-pssN6ExsvxaKU638qcWb81RrvvgZom3jDgU/r5xFZ7TONkZGFf4MhI2ltMb8OcQWhHyxgIavEU+hgqtbKOmsPA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -1137,8 +1194,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/preset-typescript@7.24.7': - resolution: {integrity: sha512-SyXRe3OdWwIwalxDg5UtJnJQO+YPcTfwiIY2B0Xlddh9o7jpWLvv8X1RthIeDOxQ+O1ML5BLPCONToObyVQVuQ==} + '@babel/preset-typescript@7.24.6': + resolution: {integrity: sha512-U10aHPDnokCFRXgyT/MaIRTivUu2K/mu0vJlwRS9LxJmJet+PFQNKpggPyFCUtC6zWSBPjvxjnpNkAn3Uw2m5w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -1146,28 +1203,36 @@ packages: '@babel/regjsgen@0.8.0': resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==} - '@babel/runtime@7.25.0': - resolution: {integrity: sha512-7dRy4DwXwtzBrPbZflqxnvfxLF8kdZXPkhymtDeFoFqE6ldzjQFgYTtYIFARcLEYDrqfBfYcZt1WqFxRoyC9Rw==} + '@babel/runtime@7.24.6': + resolution: {integrity: sha512-Ja18XcETdEl5mzzACGd+DKgaGJzPTCow7EglgwTmHdwokzDFYh/MHua6lU6DV/hjF2IaOJ4oX2nqnjG7RElKOw==} + engines: {node: '>=6.9.0'} + + '@babel/template@7.24.6': + resolution: {integrity: sha512-3vgazJlLwNXi9jhrR1ef8qiB65L1RK90+lEQwv4OxveHnqC3BfmnHdgySwRLzf6akhlOYenT+b7AfWq+a//AHw==} + engines: {node: '>=6.9.0'} + + '@babel/template@7.26.9': + resolution: {integrity: sha512-qyRplbeIpNZhmzOysF/wFMuP9sctmh2cFzRAZOn1YapxBsE1i9bJIY586R/WBLfLcmcBlM8ROBiQURnnNy+zfA==} engines: {node: '>=6.9.0'} - '@babel/template@7.25.0': - resolution: {integrity: sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==} + '@babel/traverse@7.24.6': + resolution: {integrity: sha512-OsNjaJwT9Zn8ozxcfoBc+RaHdj3gFmCmYoQLUII1o6ZrUwku0BMg80FoOTPx+Gi6XhcQxAYE4xyjPTo4SxEQqw==} engines: {node: '>=6.9.0'} - '@babel/template@7.26.8': - resolution: {integrity: sha512-iNKaX3ZebKIsCvJ+0jd6embf+Aulaa3vNBqZ41kM7iTWjx5qzWKXGHiJUW3+nTpQ18SG11hdF8OAzKrpXkb96Q==} + '@babel/traverse@7.26.9': + resolution: {integrity: sha512-ZYW7L+pL8ahU5fXmNbPF+iZFHCv5scFak7MZ9bwaRPLUhHh7QQEMjZUg0HevihoqCM5iSYHN61EyCoZvqC+bxg==} engines: {node: '>=6.9.0'} - '@babel/traverse@7.25.3': - resolution: {integrity: sha512-HefgyP1x754oGCsKmV5reSmtV7IXj/kpaE1XYY+D9G5PvKKoFfSbiS4M77MdjuwlZKDIKFCffq9rPU+H/s3ZdQ==} + '@babel/types@7.24.6': + resolution: {integrity: sha512-WaMsgi6Q8zMgMth93GvWPXkhAIEobfsIkLTacoVZoK1J0CevIPGYY2Vo5YvJGqyHqXM6P4ppOYGsIRU8MM9pFQ==} engines: {node: '>=6.9.0'} - '@babel/traverse@7.26.8': - resolution: {integrity: sha512-nic9tRkjYH0oB2dzr/JoGIm+4Q6SuYeLEiIiZDwBscRMYFJ+tMAz98fuel9ZnbXViA2I0HVSSRRK8DW5fjXStA==} + '@babel/types@7.25.8': + resolution: {integrity: sha512-JWtuCu8VQsMladxVz/P4HzHUGCAwpuqacmowgXFs5XjxIgKuNjnLokQzuVjlTvIzODaDmpjT3oxcC48vyk9EWg==} engines: {node: '>=6.9.0'} - '@babel/types@7.26.8': - resolution: {integrity: sha512-eUuWapzEGWFEpHFxgEaBG8e3n6S8L3MSu0oda755rOfabWPnh0Our1AozNFVUxGFIhbKgd1ksprsoDGMinTOTA==} + '@babel/types@7.26.9': + resolution: {integrity: sha512-Y3IR1cRnOxOCDvMmNiym7XpXQ93iGDDPHx+Zj+NM+rg0fBaShfQLkg+hKPaZCEvg5N/LeCo4+Rj/i3FuJsIQaw==} engines: {node: '>=6.9.0'} '@bcoe/v8-coverage@1.0.2': @@ -1183,6 +1248,21 @@ packages: '@bundled-es-modules/tough-cookie@0.1.6': resolution: {integrity: sha512-dvMHbL464C0zI+Yqxbz6kZ5TOEp7GLW+pry/RWndAR8MJQAXZ2rPmIs8tziTZjeIyhSNZgZbCePtfSbdWqStJw==} + '@celo/base@6.1.0': + resolution: {integrity: sha512-R6ko2QCfEU32akBsaSNsDYduktgwIKHcJ61SbR7EsXA1VE31/44Qh8kMzfgeahyk375DUCe3pJIKwx5zg1tFHg==} + + '@celo/utils@6.0.1': + resolution: {integrity: sha512-X9iK4R4USSgHG87PxpLGHqgKL33bKtBiKZGgPwx4gMM7X+nwpB6Ify/YO1/I+mt9+NN9epPb8/kmYYoWOPYShw==} + + '@chainsafe/as-sha256@0.3.1': + resolution: {integrity: sha512-hldFFYuf49ed7DAakWVXSJODuq3pzJEguD8tQ7h+sGkM18vja+OFoJI9krnGmgzyuZC2ETX0NOIcCTy31v2Mtg==} + + '@chainsafe/persistent-merkle-tree@0.4.2': + resolution: {integrity: sha512-lLO3ihKPngXLTus/L7WHKaw9PnNJWizlOF1H9NNzHP6Xvh82vzg9F2bzkXhYIFshMZ2gTCEz8tq6STe7r5NDfQ==} + + '@chainsafe/ssz@0.9.4': + resolution: {integrity: sha512-77Qtg2N1ayqs4Bg/wvnWfg5Bta7iy7IRh8XqXh7oNMeP2HBbBwx8m6yTpA8p0EHItWPEBkgZd5S5/LSlp3GXuQ==} + '@cloudflare/kv-asset-handler@0.3.2': resolution: {integrity: sha512-EeEjMobfuJrwoctj7FA1y1KEbM0+Q1xSjobIEyie9k4haVEBB7vkDvsasw1pM3rO39mL2akxIAzLMUAtrMHZhA==} engines: {node: '>=16.13'} @@ -1226,6 +1306,9 @@ packages: '@coinbase/wallet-sdk@4.0.4': resolution: {integrity: sha512-74c040CRnGhfRjr3ArnkAgud86erIqdkPHNt5HR1k9u97uTIZCJww9eGYT67Qf7gHPpGS/xW8Be1D4dvRm63FA==} + '@cosmjs/encoding@0.32.4': + resolution: {integrity: sha512-tjvaEy6ZGxJchiizzTn7HVRiyTg1i4CObRRaTRPknm5EalE13SV+TCHq38gIDfyUeden4fCuaBVEdBR5+ti7Hw==} + '@cspotcode/source-map-support@0.8.1': resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} engines: {node: '>=12'} @@ -1280,6 +1363,9 @@ packages: '@emotion/unitless@0.7.5': resolution: {integrity: sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==} + '@emotion/unitless@0.8.1': + resolution: {integrity: sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ==} + '@ensdomains/address-encoder@0.1.9': resolution: {integrity: sha512-E2d2gP4uxJQnDu2Kfg1tHNspefzbLT8Tyjrm5sEuim32UkU2sm5xL4VXtgc2X33fmPEw9+jUMpGs4veMbf+PYg==} @@ -1664,6 +1750,10 @@ packages: resolution: {integrity: sha512-1nc6VO4jtFd172BbSnTnDQVr9IYBFl1y4xPzZdtkrkKIncBCkdbgfdRV+MiTkJYAtTxvV12GRZLqBFT1PNK6Yw==} engines: {node: '>=14'} + '@ethereumjs/util@8.0.5': + resolution: {integrity: sha512-259rXKK3b3D8HRVdRmlOEi6QFvwxdt304hhrEAmpZhsj7ufXEOTIc9JRZPMnXatKjECokdLNBcDOFBeBSzAIaw==} + engines: {node: '>=14'} + '@ethereumjs/util@8.1.0': resolution: {integrity: sha512-zQ0IqbdX8FZ9aw11vP+dZkKDkS+kgIvQPHnSAXzP9pLu+Rfu3D3XEeLbicvoXJTYnhZiPmsZUxgdzXwNKxRPbA==} engines: {node: '>=14'} @@ -1776,7 +1866,6 @@ packages: '@humanwhocodes/config-array@0.11.14': resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==} engines: {node: '>=10.10.0'} - deprecated: Use @eslint/config-array instead '@humanwhocodes/module-importer@1.0.1': resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} @@ -1784,7 +1873,6 @@ packages: '@humanwhocodes/object-schema@2.0.3': resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==} - deprecated: Use @eslint/object-schema instead '@ianvs/prettier-plugin-sort-imports@4.2.1': resolution: {integrity: sha512-NKN1LVFWUDGDGr3vt+6Ey3qPeN/163uR1pOPAlkWpgvAqgxQ6kSdUf1F0it8aHUtKRUzEGcK38Wxd07O61d7+Q==} @@ -1795,22 +1883,22 @@ packages: '@vue/compiler-sfc': optional: true - '@inquirer/confirm@5.1.0': - resolution: {integrity: sha512-osaBbIMEqVFjTX5exoqPXs6PilWQdjaLhGtMDXMXg/yxkHXNq43GlxGyTA35lK2HpzUgDN+Cjh/2AmqCN0QJpw==} + '@inquirer/confirm@5.1.3': + resolution: {integrity: sha512-fuF9laMmHoOgWapF9h9hv6opA5WvmGFHsTYGCmuFxcghIhEhb3dN0CdQR4BUMqa2H506NCj8cGX4jwMsE4t6dA==} engines: {node: '>=18'} peerDependencies: '@types/node': '>=18' - '@inquirer/core@10.1.1': - resolution: {integrity: sha512-rmZVXy9iZvO3ZStEe/ayuuwIJ23LSF13aPMlLMTQARX6lGUBDHGV8UB5i9MRrfy0+mZwt5/9bdy8llszSD3NQA==} + '@inquirer/core@10.1.4': + resolution: {integrity: sha512-5y4/PUJVnRb4bwWY67KLdebWOhOc7xj5IP2J80oWXa64mVag24rwQ1VAdnj7/eDY/odhguW0zQ1Mp1pj6fO/2w==} engines: {node: '>=18'} - '@inquirer/figures@1.0.8': - resolution: {integrity: sha512-tKd+jsmhq21AP1LhexC0pPwsCxEhGgAkg28byjJAd+xhmIs8LUX8JbUc3vBf3PhLxWiB5EvyBE5X7JSPAqMAqg==} + '@inquirer/figures@1.0.9': + resolution: {integrity: sha512-BXvGj0ehzrngHTPTDqUoDT3NXL8U0RxUk2zJm2A66RhCEIWdtU1v6GuUqNAgArW4PQ9CinqIWyHdQgdwOj06zQ==} engines: {node: '>=18'} - '@inquirer/type@3.0.1': - resolution: {integrity: sha512-+ksJMIy92sOAiAccGpcKZUc3bYO07cADnscIxHBknEm3uNts3movSmBofc1908BNy5edKscxYeAdaX1NXkHS6A==} + '@inquirer/type@3.0.2': + resolution: {integrity: sha512-ZhQ4TvhwHZF+lGhQ2O/rsjo80XoZR5/5qhOY3t6FJuX5XBg5Be8YzYTvaUGJnc12AUGI2nr4QSUE4PhKSigx7g==} engines: {node: '>=18'} peerDependencies: '@types/node': '>=18' @@ -1843,6 +1931,9 @@ packages: resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} engines: {node: '>=6.0.0'} + '@jridgewell/sourcemap-codec@1.4.15': + resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} + '@jridgewell/sourcemap-codec@1.5.0': resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} @@ -1852,8 +1943,8 @@ packages: '@jridgewell/trace-mapping@0.3.9': resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} - '@keyv/serialize@1.0.2': - resolution: {integrity: sha512-+E/LyaAeuABniD/RvUezWVXKpeuvwLEA9//nE9952zBaOdBd2mQ3pPoM8cUe2X6IcMByfuSLzmYqnYshG60+HQ==} + '@keyv/serialize@1.0.3': + resolution: {integrity: sha512-qnEovoOp5Np2JDGonIDL6Ayihw0RhnRh6vxPuHo4RDn1UOzwEo4AeIfpL6UGIrsceWrCMiVPgwRjbHu4vYFc3g==} '@leichtgewicht/ip-codec@2.0.5': resolution: {integrity: sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==} @@ -1880,8 +1971,8 @@ packages: resolution: {integrity: sha512-IoQPmql8q7ABLruW7i4EYVHWUbF74yrp63bRuXV5Zf9BQwcn5H9Ww1eLtROYvI1bUXwOiHZ6qT5CWTrDc/t/AA==} engines: {node: '>=16.0.0'} - '@metamask/json-rpc-engine@9.0.2': - resolution: {integrity: sha512-wteoGUDhiqCgyO6Gdjnm6n+7raoRS+dRHOIsTc7LK2zpezAynav9BIK7QWPcJZeieMTSG5HuYrQf+epLbcdB/g==} + '@metamask/json-rpc-engine@9.0.3': + resolution: {integrity: sha512-efeRXW7KaL0BJcAeudSGhzu6sD3hMpxx9nl3V+Yemm1bsyc66yVUhYPR+XH+Y6ZvB2p05ywgvd1Ev5PBwFzr/g==} engines: {node: ^18.18 || >=20} '@metamask/json-rpc-middleware-stream@7.0.2': @@ -1907,8 +1998,12 @@ packages: resolution: {integrity: sha512-znVCvux30+3SaUwcUGaSf+pUckzT5ukPRpcBmy+muBLC0yaWnBcvDqGfcsw6CBIenUdFrVoAFa8B6jsuCY/a+g==} engines: {node: ^18.18 || >=20} - '@metamask/rpc-errors@6.3.1': - resolution: {integrity: sha512-ugDY7cKjF4/yH5LtBaOIKHw/AiGGSAmzptAUEiAEGr/78LwuzcXAxmzEQfSfMIfI+f9Djr8cttq1pRJJKfTuCg==} + '@metamask/rpc-errors@6.2.1': + resolution: {integrity: sha512-VTgWkjWLzb0nupkFl1duQi9Mk8TGT9rsdnQg6DeRrYEFxtFOh0IF8nAwxM/4GWqDl6uIB06lqUBgUrAVWl62Bw==} + engines: {node: '>=16.0.0'} + + '@metamask/rpc-errors@6.4.0': + resolution: {integrity: sha512-1ugFO1UoirU2esS3juZanS/Fo8C8XYocCuBpfZI5N7ECtoG+zu0wF+uWZASik6CkO6w9n/Iebt4iI4pT0vptpg==} engines: {node: '>=16.0.0'} '@metamask/safe-event-emitter@2.0.0': @@ -1965,10 +2060,15 @@ packages: resolution: {integrity: sha512-dbIc3C7alOe0agCuBHM1h71UaEaEqOk2W8rAtEn8QGz4haH2Qq7MoK6i7v2guzvkJVVh79c+QCzIqphC3KvrJg==} engines: {node: '>=16.0.0'} - '@metamask/utils@9.2.0': - resolution: {integrity: sha512-01riKC6oc6YJVJBL6g6TgCBwcmzwuVSIIMhnwvWanPWs3ZpUabJzy3GR9PlsBPa2pHd1p0Q6WMVRExWWEHzsQA==} + '@metamask/utils@9.3.0': + resolution: {integrity: sha512-w8CVbdkDrVXFJbfBSlDfafDR6BAkpDmv1bC1UJVCoVny5tW2RKAdn9i68Xf7asYT4TnUhl/hN4zfUiKQq9II4g==} engines: {node: '>=16.0.0'} + '@moonpay/moonpay-react@1.8.8': + resolution: {integrity: sha512-q6le8/EeNCwORKUxeWN30R8J7umB90o9v2CiUghSt8iedy3WfS+yLtxF/wyH9JtjERKdRFGeMRBTcbKrST7oGg==} + peerDependencies: + react: ^18.2.0 + '@motionone/animation@10.17.0': resolution: {integrity: sha512-ANfIN9+iq1kGgsZxs+Nz96uiNcPLGTXwfNo2Xz/fcJXniPYpaz/Uyrfa+7I5BPLxCP82sh7quVDudf1GABqHbg==} @@ -1994,8 +2094,8 @@ packages: resolution: {integrity: sha512-z10PF9JV6SbjFq+/rYabM+8CVlMokgl8RFGvieSGNTmrkQanfHn+15XBrhG3BgUfvmTeSeyShfOHpG0i9zEdcg==} deprecated: Motion One for Vue is deprecated. Use Oku Motion instead https://oku-ui.com/motion - '@mswjs/interceptors@0.37.3': - resolution: {integrity: sha512-USvgCL/uOGFtVa6SVyRrC8kIAedzRohxIXN5LISlg5C5vLZCn7dgMFVSNhSF9cuBEFrm/O2spDWEZeMnw4ZXYg==} + '@mswjs/interceptors@0.37.5': + resolution: {integrity: sha512-AAwRb5vXFcY4L+FvZ7LZusDuZ0vEe0Zm8ohn1FM6/X7A3bj4mqmkAcGRWuvC2JwSygNwHAAmMnAI73vPHeqsHA==} engines: {node: '>=18'} '@multiformats/sha3@2.0.17': @@ -2070,10 +2170,6 @@ packages: '@noble/curves@1.4.0': resolution: {integrity: sha512-p+4cb332SFCrReJkCYe8Xzm0OWi4Jji5jVdIZRL/PmacmDkFNw6MrrV+gGpiPxLHbV+zKFRywUWbaseT+tZRXg==} - '@noble/curves@1.6.0': - resolution: {integrity: sha512-TlaHRXDehJuRNR9TfZDNQ45mMEd5dwUwmicsafcIX4SsNiqnCHKjE/1alYPd/lDRVhxdhUAlv8uEhMCI5zjIJQ==} - engines: {node: ^14.21.3 || >=16} - '@noble/hashes@1.2.0': resolution: {integrity: sha512-FZfhjEDbT5GRswV3C6uvLPHMiVD6lQBmpoX5+eSiPaMTXte/IKqI5dykDxzZB/WBeK/CDuQRBWarPdi3FNY2zQ==} @@ -2255,7 +2351,6 @@ packages: '@openzeppelin/test-helpers@0.5.16': resolution: {integrity: sha512-T1EvspSfH1qQO/sgGlskLfYVBbqzJR23SZzYl/6B2JnT4EhThcI85UpvDk0BkLWKaDScQTabGHt4GzHW+3SfZg==} - deprecated: Package no longer maintained. Consider using @nomicfoundation/hardhat-chai-matchers and @nomicfoundation/hardhat-network-helpers instead. '@parcel/watcher-android-arm64@2.4.1': resolution: {integrity: sha512-LOi/WTbbh3aTn2RYddrO8pnapixAziFl6SMxHM69r3tvdSm94JtCenaKgk1GRg5FJ5wpMCpHeW+7yqPlvZv7kg==} @@ -2347,23 +2442,17 @@ packages: resolution: {integrity: sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==} engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} - '@playwright/test@1.48.2': - resolution: {integrity: sha512-54w1xCWfXuax7dz4W2M9uw0gDyh+ti/0K/MxcCUxChFh37kkdxPdfZDw5QBbuPUJHr1CiHJ1hXgSs+GgeQc5Zw==} + '@playwright/test@1.49.0': + resolution: {integrity: sha512-DMulbwQURa8rNIQrf94+jPJQ4FmOVdpE5ZppRNvWVjvhC+6sOeo28r8MgIpQRYouXRtt/FCCXU7zn20jnHR4Qw==} engines: {node: '>=18'} hasBin: true '@polka/url@1.0.0-next.25': resolution: {integrity: sha512-j7P6Rgr3mmtdkeDGTe0E/aYyWEWVtc5yFXtHCRHs28/jptDEWfaVOc5T7cblqy1XKPPfCxJc/8DwQ5YgLOZOVQ==} - '@rainbow-me/rainbowkit@2.1.2': - resolution: {integrity: sha512-nzhS4p7rtE9bAkOKSq+J761+gn6UseVxMdDpRBAr+0+ct/Hv1STErq9TT3GEXNrnAeSldtbxBVIkepa4uGykDA==} - engines: {node: '>=12.4'} - peerDependencies: - '@tanstack/react-query': '>=5.0.0' - react: ^18.2.0 - react-dom: ^18.2.0 - viem: 2.x - wagmi: ^2.9.0 + '@ramp-network/ramp-instant-sdk@4.0.7': + resolution: {integrity: sha512-rkGBsg9fX6zFn3h1V3pazhMuOC7oo6nrs2azUMI1/QLsZrYOdHL8Rir7qo0FwYnv7fvuyW7TqI9nVl6wYOVIEg==} + engines: {node: '>=6.0.0'} '@rollup/plugin-commonjs@24.0.0': resolution: {integrity: sha512-0w0wyykzdyRRPHOb0cQt14mIBLujfAv6GgP6g8nvg/iBxEm112t3YPPq+Buqe2+imvElTka+bjNlJ/gB56TD8g==} @@ -2476,8 +2565,8 @@ packages: resolution: {integrity: sha512-7nakIjcRSs6781LkizYpIfXh1DYlkUDqyALciqz/BjFU/S97sVjZdL4cuKsG9NEarytE+f6p0Qbq2Bo1aocVUA==} engines: {node: '>=16'} - '@scure/base@1.1.9': - resolution: {integrity: sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg==} + '@scure/base@1.1.6': + resolution: {integrity: sha512-ok9AWwhcgYuGG3Zfhyqg+zwl+Wn5uE+dwC0NV/2qQkx4dABbb/bx96vWu8NSj+BNjjSjno+JRYRjle1jV08k3g==} '@scure/bip32@1.1.5': resolution: {integrity: sha512-XyNh1rB0SkEqd3tXcXMi+Xe1fvg+kUIcoRIEujP1Jgv7DqW2r9lg3Ah0NkFaCs9sTkQAQA8kw7xiRXzENi9Rtw==} @@ -2643,6 +2732,14 @@ packages: resolution: {integrity: sha512-cfmeRNb4bVNL6+awnfSIDkyU0HUO71QL2euaCvnFXYikcdaB+ZOpCR4jINIP2dF11RRoWgJVHG/NkjIV8YWvyA==} engines: {node: '>=18.20.4'} + '@socketregistry/define-properties@1.0.5': + resolution: {integrity: sha512-IMB5rE7tgw7+TbIz/2NGcZj9NeXNxisXWCxzjElklmSo1vuB536FLQjkXZ7Xbd8DVEXOiR9Lg4Hx+AJ1bUmeFw==} + engines: {node: '>=18.20.4'} + + '@socketregistry/es-define-property@1.0.5': + resolution: {integrity: sha512-zipl+Zs/75Fjt7vE3RqbbDNfdIFsvsmd2wLmwoxI1Z/ID28j5dp7ZzaMesQAQqK+zv24a4WTywQVg7f35E3rcw==} + engines: {node: '>=18.20.4'} + '@socketregistry/es-iterator-helpers@1.0.7': resolution: {integrity: sha512-8aVI4HRtdVhdiIL9PG2P9hitf6SMdg5eH/2Q98iBgLB1HgPA7jNSoQm4GKDoFQBynyt4h3Rm3IVk7p1HqT0X2w==} engines: {node: '>=18.20.4'} @@ -2651,6 +2748,18 @@ packages: resolution: {integrity: sha512-tvshZo3SkuPJ/5Y1mXQlHUP6xIfsoy3W9y8eEVPGcUb6Vvc1v72zRzI+zGB1PI6I1EjtLZLQDEoW7YdvNJdTYQ==} engines: {node: '>=18.20.4'} + '@socketregistry/function-bind@1.0.5': + resolution: {integrity: sha512-G7Z7yVdwQmO5FzNFqdPp8ZvLm9zk5lq7t3r+2IOzBcQVx/qgjYuYPo0fE+kzvQ7u5ApMret2wDnKbCfp4cqnjg==} + engines: {node: '>=18.20.4'} + + '@socketregistry/gopd@1.0.5': + resolution: {integrity: sha512-lJKgypzRLEAonbhl+qk5WH/ILyZipz+8cGcgBjMdNGk5KJdxI+ixLwEpNlEAR5iiR0oOf3DqAcM2ZzuMBjK8ng==} + engines: {node: '>=18.20.4'} + + '@socketregistry/has-symbols@1.0.5': + resolution: {integrity: sha512-Vxaly8XG4byS5lSwuv/cOlbFpQINJu4Ce32Ui58rlv+3OL+Eu8EEBHVGR8a0AMr/bOG6fMOWhx5H3CAkxVTbsA==} + engines: {node: '>=18.20.4'} + '@socketregistry/hasown@1.0.5': resolution: {integrity: sha512-xknlSx99HYF6t4cRLVMg9iW1eR8kKG92m/Yz7Bo9pntIpvLlKs3Rm+eCwEzTjp+NZacGTxG0T2IP/vGwGD2d8Q==} engines: {node: '>=18.20.4'} @@ -2691,6 +2800,10 @@ packages: resolution: {integrity: sha512-VFUMXtgcqb+A05izEwgTepGsf0rm9UMPTa2KyF5xPiaSuj6nhpZ8+aFQKjJ3NsoZaIGzS2hJfxeVuLV/Zt4eag==} engines: {node: '>=18.20.4'} + '@socketregistry/object-is@1.0.5': + resolution: {integrity: sha512-1wbyo9IBBptFo2TaPgSCDIgqs77zkvCeR+ymUWYEq3O2eB+WdPXOFCcqBKl2fEKbfXNJG4xj4PNd41OF9yu5Fg==} + engines: {node: '>=18.20.4'} + '@socketregistry/object.assign@1.0.5': resolution: {integrity: sha512-fqgSPOiGnHPhKrruvUW61GJzehuguUE01MgaadTOXouRx5TVqsNRGd5oLNhrFNC+HBPacdnposy8xmt1Mh+H7A==} engines: {node: '>=18.20.4'} @@ -2731,6 +2844,10 @@ packages: resolution: {integrity: sha512-x6W5FZJwngd3UqOA0TXucXuD/RdGm4NHvnDYC2topSlfyA2vtTff9lcXpuQqzi/TxxlHEfYc0toRA+VDQSdfxw==} engines: {node: '>=18.20.4'} + '@socketregistry/set-function-length@1.0.5': + resolution: {integrity: sha512-QtuipG5L+FLe7gbWBtQnbGAlIA9cjih6WYjrM2vVimSsV4esy/6VepqqYoddSTYka/iL0ynQpR3fRSMsGi9IJA==} + engines: {node: '>=18.20.4'} + '@socketregistry/side-channel@1.0.6': resolution: {integrity: sha512-s5DMU7a192OUMvIU3xjfKCu/kpGuKo0hWtCD6h7fhm0CcHS4NqXeTS5+DjDuRTuUowc4PQXzHRA0OZdKuaRAWQ==} engines: {node: '>=18.20.4'} @@ -2803,6 +2920,20 @@ packages: '@stablelib/x25519@1.0.3': resolution: {integrity: sha512-KnTbKmUhPhHavzobclVJQG5kuivH+qDLpe84iRqX3CLrKp881cF160JvXJ+hjn1aMyCwYOKeIZefIH/P5cJoRw==} + '@stencil/core@4.26.0': + resolution: {integrity: sha512-+0Inu+dJ9/LgWSskcZwx7v17v4GILcwIYxNgD+OuK0U+D5z61WsxWw7yHkYG5OqGPBijsJMVssYRx/Tn+e7F9A==} + engines: {node: '>=16.0.0', npm: '>=7.10.0'} + hasBin: true + + '@stripe/crypto@0.0.4': + resolution: {integrity: sha512-gcD/aG0N90ZrNVppWYf9ADPECptw6PVtF67VIeaFP7fhgd2NvNx8erkzlcvk3VIVSY+bZ6YGX7c7cASoySX74Q==} + peerDependencies: + '@stripe/stripe-js': ^1.46.0 + + '@stripe/stripe-js@3.5.0': + resolution: {integrity: sha512-pKS3wZnJoL1iTyGBXAvCwduNNeghJHY6QSRSNNvpYnrrQrLZ6Owsazjyynu0e0ObRgks0i7Rv+pe2M7/MBTZpQ==} + engines: {node: '>=12.16'} + '@svgr/babel-plugin-add-jsx-attribute@8.0.0': resolution: {integrity: sha512-b9MIk7yhdS1pMCZM8VeNfUlSKVRhsHZNMl5O9SfaX0l0t5wjdgu4IDzGB8bpnGBBOjGST3rRFVsaaEtI4W6f7g==} engines: {node: '>=14'} @@ -2895,8 +3026,8 @@ packages: '@tanstack/query-core@5.22.2': resolution: {integrity: sha512-z3PwKFUFACMUqe1eyesCIKg3Jv1mysSrYfrEW5ww5DCDUD4zlpTKBvUDaEjsfZzL3ULrFLDM9yVUxI/fega1Qg==} - '@tanstack/query-devtools@5.58.0': - resolution: {integrity: sha512-iFdQEFXaYYxqgrv63ots+65FGI+tNp5ZS5PdMU1DWisxk3fez5HG3FyVlbUva+RdYS5hSLbxZ9aw3yEs97GNTw==} + '@tanstack/query-devtools@5.61.4': + resolution: {integrity: sha512-21Tw+u8E3IJJj4A/Bct4H0uBaDTEu7zBrR79FeSyY+mS2gx5/m316oDtJiKkILc819VSTYt+sFzODoJNcpPqZQ==} '@tanstack/query-persist-client-core@5.22.2': resolution: {integrity: sha512-sFDgWoN54uclIDIoImPmDzxTq8HhZEt9pO0JbVHjI6LPZqunMMF9yAq9zFKrpH//jD5f+rBCQsdGyhdpUo9e8Q==} @@ -2904,10 +3035,10 @@ packages: '@tanstack/query-sync-storage-persister@5.22.2': resolution: {integrity: sha512-mDxXURiMPzWXVc+FwDu94VfIt/uHk5+9EgcxJRYtj8Vsx18T0DiiKk1VgVOBLd97C+Sa7z7ujP2D6Y5lphW+hQ==} - '@tanstack/react-query-devtools@5.59.0': - resolution: {integrity: sha512-Kz7577FQGU8qmJxROIT/aOwmkTcxfBqgTP6r1AIvuJxVMVHPkp8eQxWQ7BnfBsy/KTJHiV9vMtRVo1+R1tB3vg==} + '@tanstack/react-query-devtools@5.62.1': + resolution: {integrity: sha512-fxf9m9nwWcP36wY5Vc2OQ9pLbCcTgHmsaBfjD4PQ+Aphze4cmsC8QF9UeAy7LpYHbOA4wycE7MFjD541BRm9+g==} peerDependencies: - '@tanstack/react-query': ^5.59.0 + '@tanstack/react-query': ^5.62.1 react: ^18.2.0 '@tanstack/react-query-persist-client@5.22.2': @@ -3080,12 +3211,12 @@ packages: '@types/dom-screen-wake-lock@1.0.3': resolution: {integrity: sha512-3Iten7X3Zgwvk6kh6/NRdwN7WbZ760YgFCsF5AxDifltUQzW1RaW+WRmcVtgwFzLjaNu64H+0MPJ13yRa8g3Dw==} + '@types/elliptic@6.4.18': + resolution: {integrity: sha512-UseG6H5vjRiNpQvrhy4VF/JXdA3V/Fp5amvveaL+fs28BZ6xIKJBPnUPRlEaZpysD9MbpfaLi8lbl7PGUAkpWw==} + '@types/estree@1.0.5': resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} - '@types/gensync@1.0.4': - resolution: {integrity: sha512-C3YYeRQWp2fmq9OryX+FoDy8nXS6scQ7dPptD8LnFDAUNcKWJjXQKDNJD3HVm+kOUsXhTOkpi69vI4EuAr95bA==} - '@types/hoist-non-react-statics@3.3.5': resolution: {integrity: sha512-SbcrWzkKBw2cdwRTwQAswfpB9g9LJWfjtUeW/jvNwbhC8cpmmNYVePa+ncbUe0rGTQ7G3Ff6mYUN2VMfLVr+Sg==} @@ -3128,8 +3259,11 @@ packages: '@types/node@17.0.45': resolution: {integrity: sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==} - '@types/node@20.17.17': - resolution: {integrity: sha512-/WndGO4kIfMicEQLTi/mDANUu/iVUhT7KboZPdEqqHQ4aTS+3qT3U5gIqWDFV+XouorjfgGqvKILJeHhuQgFYg==} + '@types/node@18.19.76': + resolution: {integrity: sha512-yvR7Q9LdPz2vGpmpJX5LolrgRdWvB67MJKDPSgIIzpFbaf9a1j/f5DnLp5VDyHGMR0QZHlTr1afsD87QCXFHKw==} + + '@types/node@20.17.19': + resolution: {integrity: sha512-LEwC7o1ifqg/6r2gn9Dns0f1rhK+fPFDoMiceTJ6kWmVk6bgXBI/9IOWfVan4WiAavK9pIVWdX0/e3J+eEUh5A==} '@types/pako@2.0.3': resolution: {integrity: sha512-bq0hMV9opAcrmE0Byyo0fY3Ew4tgOevJmQ9grUhpXQhYfyLJ1Kqg3P33JT5fdbT2AjeAjR51zqqVjAL/HMkx7Q==} @@ -3170,6 +3304,9 @@ packages: '@types/styled-components@5.1.23': resolution: {integrity: sha512-zt8oQGU6XB4LH1Xpq169YnAVmt22+swzHJvyKMyTZu/z8+afvgKjjg0s79aAodgNSf36ZOEG6DyVAW/JhLH2Nw==} + '@types/stylis@4.2.5': + resolution: {integrity: sha512-1Xve+NMN7FWjY14vLoY5tL3BVEQ/n42YLwaqJIPYhotZ9uBHt87VceMwWQpzmdEt2TNXIorIFG+YeCUUW7RInw==} + '@types/tough-cookie@4.0.5': resolution: {integrity: sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==} @@ -3182,8 +3319,8 @@ packages: '@types/yargs-parser@21.0.3': resolution: {integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==} - '@types/yargs@17.0.33': - resolution: {integrity: sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==} + '@types/yargs@17.0.32': + resolution: {integrity: sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==} '@typescript-eslint/eslint-plugin@6.21.0': resolution: {integrity: sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==} @@ -3297,6 +3434,62 @@ packages: resolution: {integrity: sha512-9ntIVgsi6gg6FIq9xjEO4VQJvwOqA3jaBFQJ/6TK5AvEup2+cECI6Fh7QiBxmfMHXU0V0J4RyPeOU1VDNzl9cg==} engines: {node: ^18.18.0 || >=20.0.0} + '@usecapsule/core-components@3.19.0': + resolution: {integrity: sha512-jIW+iMQRlIkLvY3GvIFXLYQoQIOGz8LE+U/MVm24BSo6LJ2pHzBV7ML/+sAgpjjRPoijihsSo6o201PKRR5xUA==} + + '@usecapsule/core-sdk@2.14.0': + resolution: {integrity: sha512-vumPLG4RARfXVqcjRn/+TnH8H6qW5Z3oJC1O7bgKa6eLeCnYKSQpc3j2V1hHUIVBfI0CObcIOV7yjXVDFegxQA==} + + '@usecapsule/rainbowkit-wallet@1.6.0': + resolution: {integrity: sha512-u8p7Xy8d6F6ZYKRa0Pulet+HK1IsLPLPWiCR9ld+C1tixVFHAlmpI31EbyvRq0ZNiH/dp41MJlx+HKSssLkUqw==} + peerDependencies: + '@usecapsule/rainbowkit': 3.x + viem: 2.x + wagmi: 2.x + + '@usecapsule/rainbowkit@3.6.0': + resolution: {integrity: sha512-QbgO4GZ5LSuFBvEZ7Chevx85c5yj6bYjnBQiI5ATnYhADcyjhE0mZ8al4pEB55nE5oEZgRwthlP9u6P3Hz+xfQ==} + engines: {node: '>=12.4'} + peerDependencies: + react: ^18.2.0 + react-dom: ^18.2.0 + viem: 2.x + wagmi: 2.x + + '@usecapsule/react-common@1.11.0': + resolution: {integrity: sha512-dpIawcLzGp4y3CpguY+pCn3fXZewlmjplKpwYFcRlVc1ts7RvE1JKnc3vRLbukMj0CNST3upecKkd9b34sIhUg==} + peerDependencies: + react: ^18.2.0 + react-dom: ^18.2.0 + + '@usecapsule/react-components@3.19.0': + resolution: {integrity: sha512-1TKDz10R3h9aiWk371ICBMEJy5P5Aftp4hJ23fjilm7uDR3eLjMg/YPM5MT9F9ikjugtrYWJCTAsNeAxnjsiCQ==} + + '@usecapsule/react-sdk@4.14.0': + resolution: {integrity: sha512-W10zWhjjX2/p2036ditgXqkXPAu0qw3Z0iKzUy7rSW0NE16x/+tEX8RIT9evjY4caqx5c2J9A39LNRtjdACdlw==} + peerDependencies: + react: ^18.2.0 + react-dom: ^18.2.0 + + '@usecapsule/user-management-client@1.36.0': + resolution: {integrity: sha512-eMU1ouFxH0WVSkrJGuQ9OGP42NwYcgSQhOSqtvAr+WZdeYBGkWmc6fi6fca6Ipjbxm8eCNfByf+xid7Ay0mdhg==} + + '@usecapsule/viem-v2-integration@2.14.0': + resolution: {integrity: sha512-3/nycYi6z6RuKm5NI/KG/0kfekRMu+o/hY9Yjb13Mfse8r8y08JGunUw646OEW0UEoa7y2E7hV6e6BagxpE3mw==} + peerDependencies: + viem: 2.x + + '@usecapsule/wagmi-v2-integration@3.14.0-dev.1': + resolution: {integrity: sha512-3QbYwDh0RopoEO4D0deJkZizxRbYCNUxH9fkYHQXZzKClRah6QubuTEi+OLOp5oCryEu+HuiWiVefdna3nqBew==} + peerDependencies: + react: ^18.2.0 + react-dom: ^18.2.0 + viem: 2.x + wagmi: 2.x + + '@usecapsule/web-sdk@2.14.0': + resolution: {integrity: sha512-h5xIwB2bonc2UU5NHSTzueiUrxk505v5ksHx4HyFqaZj9SFkebl+KsijizU39HsGPHAy4rGSjHLsWiJTPNtGVg==} + '@vanilla-extract/css@1.14.0': resolution: {integrity: sha512-rYfm7JciWZ8PFzBM/HDiE2GLnKI3xJ6/vdmVJ5BSgcCZ5CxRlM9Cjqclni9lGzF3eMOijnUhCd/KV8TOzyzbMA==} @@ -3322,20 +3515,20 @@ packages: peerDependencies: vite: ^4.2.0 || ^5.0.0 || ^6.0.0 - '@vitest/coverage-v8@3.0.5': - resolution: {integrity: sha512-zOOWIsj5fHh3jjGwQg+P+J1FW3s4jBu1Zqga0qW60yutsBtqEqNEJKWYh7cYn1yGD+1bdPsPdC/eL4eVK56xMg==} + '@vitest/coverage-v8@3.0.6': + resolution: {integrity: sha512-JRTlR8Bw+4BcmVTICa7tJsxqphAktakiLsAmibVLAWbu1lauFddY/tXeM6sAyl1cgkPuXtpnUgaCPhTdz1Qapg==} peerDependencies: - '@vitest/browser': 3.0.5 - vitest: 3.0.5 + '@vitest/browser': 3.0.6 + vitest: 3.0.6 peerDependenciesMeta: '@vitest/browser': optional: true - '@vitest/expect@3.0.5': - resolution: {integrity: sha512-nNIOqupgZ4v5jWuQx2DSlHLEs7Q4Oh/7AYwNyE+k0UQzG7tSmjPXShUikn1mpNGzYEN2jJbTvLejwShMitovBA==} + '@vitest/expect@3.0.6': + resolution: {integrity: sha512-zBduHf/ja7/QRX4HdP1DSq5XrPgdN+jzLOwaTq/0qZjYfgETNFCKf9nOAp2j3hmom3oTbczuUzrzg9Hafh7hNg==} - '@vitest/mocker@3.0.5': - resolution: {integrity: sha512-CLPNBFBIE7x6aEGbIjaQAX03ZZlBMaWwAjBdMkIf/cAn6xzLTiM3zYqO/WAbieEjsAZir6tO71mzeHZoodThvw==} + '@vitest/mocker@3.0.6': + resolution: {integrity: sha512-KPztr4/tn7qDGZfqlSPQoF2VgJcKxnDNhmfR3VgZ6Fy1bO8T9Fc1stUiTXtqz0yG24VpD00pZP5f8EOFknjNuQ==} peerDependencies: msw: ^2.4.9 vite: ^5.0.0 || ^6.0.0 @@ -3345,20 +3538,20 @@ packages: vite: optional: true - '@vitest/pretty-format@3.0.5': - resolution: {integrity: sha512-CjUtdmpOcm4RVtB+up8r2vVDLR16Mgm/bYdkGFe3Yj/scRfCpbSi2W/BDSDcFK7ohw8UXvjMbOp9H4fByd/cOA==} + '@vitest/pretty-format@3.0.6': + resolution: {integrity: sha512-Zyctv3dbNL+67qtHfRnUE/k8qxduOamRfAL1BurEIQSyOEFffoMvx2pnDSSbKAAVxY0Ej2J/GH2dQKI0W2JyVg==} - '@vitest/runner@3.0.5': - resolution: {integrity: sha512-BAiZFityFexZQi2yN4OX3OkJC6scwRo8EhRB0Z5HIGGgd2q+Nq29LgHU/+ovCtd0fOfXj5ZI6pwdlUmC5bpi8A==} + '@vitest/runner@3.0.6': + resolution: {integrity: sha512-JopP4m/jGoaG1+CBqubV/5VMbi7L+NQCJTu1J1Pf6YaUbk7bZtaq5CX7p+8sY64Sjn1UQ1XJparHfcvTTdu9cA==} - '@vitest/snapshot@3.0.5': - resolution: {integrity: sha512-GJPZYcd7v8QNUJ7vRvLDmRwl+a1fGg4T/54lZXe+UOGy47F9yUfE18hRCtXL5aHN/AONu29NGzIXSVFh9K0feA==} + '@vitest/snapshot@3.0.6': + resolution: {integrity: sha512-qKSmxNQwT60kNwwJHMVwavvZsMGXWmngD023OHSgn873pV0lylK7dwBTfYP7e4URy5NiBCHHiQGA9DHkYkqRqg==} - '@vitest/spy@3.0.5': - resolution: {integrity: sha512-5fOzHj0WbUNqPK6blI/8VzZdkBlQLnT25knX0r4dbZI9qoZDf3qAdjoMmDcLG5A83W6oUUFJgUd0EYBc2P5xqg==} + '@vitest/spy@3.0.6': + resolution: {integrity: sha512-HfOGx/bXtjy24fDlTOpgiAEJbRfFxoX3zIGagCqACkFKKZ/TTOE6gYMKXlqecvxEndKFuNHcHqP081ggZ2yM0Q==} - '@vitest/utils@3.0.5': - resolution: {integrity: sha512-N9AX0NUoUtVwKwy21JtwzaqR5L5R5A99GAbrHfCCXK1lp593i/3AZAXhSP43wRQuxYsflrdzEfXZFo1reR1Nkg==} + '@vitest/utils@3.0.6': + resolution: {integrity: sha512-18ktZpf4GQFTbf9jK543uspU03Q2qya7ZGya5yiZ0Gx0nnnalBvd5ZBislbl2EhLjM8A8rt4OilqKG7QwcGkvQ==} '@wagmi/connectors@5.1.4': resolution: {integrity: sha512-LY8RAHy5ichhc7zknFrfrQ3RYZ/fHGgojBz0zMFae5rRrjkR3fG4gRQ9mauPwykGJmOSZshGiFryG1F1gLBm3A==} @@ -3449,7 +3642,6 @@ packages: '@walletconnect/sign-client@2.11.1': resolution: {integrity: sha512-s3oKSx6/F5X2WmkV1jfJImBFACf9Km5HpTb+n5q+mobJVpUQw/clvoVyIrNNppLhm1V1S/ylHXh0qCrDppDpCA==} - deprecated: Reliability and performance greatly improved - please see https://github.com/WalletConnect/walletconnect-monorepo/releases '@walletconnect/time@1.0.2': resolution: {integrity: sha512-uzdd9woDcJ1AaBZRhqy5rNC9laqWGErfc4dxA9a87mPdKOgWMD85mcFo9dIYIts/Jwocfwn07EC6EzclKubk/g==} @@ -3483,17 +3675,6 @@ packages: zod: optional: true - abitype@1.0.6: - resolution: {integrity: sha512-MMSqYh4+C/aVqI2RQaWqbvI4Kxo5cQV40WQ4QFtDnNzCkqChm8MuENhElmynZlO0qUy/ObkEUaXtKqYnx1Kp3A==} - peerDependencies: - typescript: '>=5.0.4' - zod: ^3 >=3.22.0 - peerDependenciesMeta: - typescript: - optional: true - zod: - optional: true - abort-controller@3.0.0: resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==} engines: {node: '>=6.5'} @@ -3514,8 +3695,8 @@ packages: resolution: {integrity: sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==} engines: {node: '>=0.4.0'} - acorn@8.12.1: - resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==} + acorn@8.11.3: + resolution: {integrity: sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==} engines: {node: '>=0.4.0'} hasBin: true @@ -3579,8 +3760,8 @@ packages: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} - ansi-regex@6.0.1: - resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} + ansi-regex@6.1.0: + resolution: {integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==} engines: {node: '>=12'} ansi-styles@3.2.1: @@ -3629,6 +3810,9 @@ packages: resolution: {integrity: sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==} engines: {node: '>=0.8'} + assert@2.1.0: + resolution: {integrity: sha512-eLHpSK/Y4nhMJ07gDaAzoX/XAKS8PSaojml3M0DM4JpV1LAi5JOJ/p6H/XWrl8L+DzVEvVCW1z3vWAaB9oTsQw==} + assertion-error@1.1.0: resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} @@ -3683,8 +3867,8 @@ packages: peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - babel-plugin-polyfill-corejs3@0.10.6: - resolution: {integrity: sha512-b37+KR2i/khY5sKmWNVQAnitvquQbNdWy6lJdsr0kmquCKEEUgMKK4SboVM3HtfnZilfjr4MMQ7vY58FVWDtIA==} + babel-plugin-polyfill-corejs3@0.10.4: + resolution: {integrity: sha512-25J6I8NGfa5YkCDogHRID3fVCadIR8/pGl1/spvCkzb6lVn6SR3ojpx9nOn9iEBcUsjY24AmdKm5khcfKdylcg==} peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 @@ -3735,6 +3919,10 @@ packages: base64-js@1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} + base64url@3.0.1: + resolution: {integrity: sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==} + engines: {node: '>=6.0.0'} + bcrypt-pbkdf@1.0.2: resolution: {integrity: sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==} @@ -3774,6 +3962,9 @@ packages: resolution: {integrity: sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==} engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} + body-scroll-lock@3.1.5: + resolution: {integrity: sha512-Yi1Xaml0EvNA0OYWxXiYNqY24AfWkbA6w5vxE7GWxtKfzIbZM+Qw+aSmkgsbWzbHiy/RCSkUZBplVxTA+E4jJg==} + boolbase@1.0.0: resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} @@ -3803,13 +3994,13 @@ packages: browserify-aes@1.2.0: resolution: {integrity: sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==} - browserslist@4.23.3: - resolution: {integrity: sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA==} + browserslist@4.23.0: + resolution: {integrity: sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true - browserslist@4.24.4: - resolution: {integrity: sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==} + browserslist@4.24.0: + resolution: {integrity: sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true @@ -3868,6 +4059,14 @@ packages: calendar-link@2.8.0: resolution: {integrity: sha512-N1mXUpoMc2czw30LxPHKNSGuekwXeZ2AHlQVfpY/6aBkFEbDpO9c8suM/NIJ9eSVLu0HaCgmAq0MeXZDgva/nw==} + call-bind-apply-helpers@1.0.2: + resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} + engines: {node: '>= 0.4'} + + call-bind@1.0.8: + resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==} + engines: {node: '>= 0.4'} + callsites@3.1.0: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} engines: {node: '>=6'} @@ -3894,18 +4093,26 @@ packages: camelize@1.0.1: resolution: {integrity: sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==} - caniuse-lite@1.0.30001651: - resolution: {integrity: sha512-9Cf+Xv1jJNe1xPZLGuUXLNkE1BoDkqRqYyFJ9TDYSqhduqA4hu4oR9HluGoWYQC/aj8WHjsGVV+bwkh0+tegRg==} + caniuse-lite@1.0.30001621: + resolution: {integrity: sha512-+NLXZiviFFKX0fk8Piwv3PfLPGtRqJeq2TiNoUff/qB5KJgwecJTvCXDpmlyP/eCI/GUEmp/h/y5j0yckiiZrA==} - caniuse-lite@1.0.30001699: - resolution: {integrity: sha512-b+uH5BakXZ9Do9iK+CkDmctUSEqZl+SP056vc5usa0PL+ev5OHw003rZXcnjNDv3L8P5j6rwT6C0BPKSikW08w==} + caniuse-lite@1.0.30001669: + resolution: {integrity: sha512-DlWzFDJqstqtIVx1zeSpIMLjunf5SmwOw0N2Ck/QSQdS8PLS4+9HrLaYei4w8BIAL7IB/UEDu889d8vhCTPA0w==} capnp-ts@0.7.0: resolution: {integrity: sha512-XKxXAC3HVPv7r674zP0VC3RTXz+/JKhfyw94ljvF80yynK6VkTnqE3jMuN8b3dUVmmc43TjyxjW4KTsmB3c86g==} + case@1.6.3: + resolution: {integrity: sha512-mzDSXIPaFwVDvZAHqZ9VlbyF4yyXRuX6IvB06WvPYkqJVO24kX1PPhv9bfpKNFZyxYFmmgo03HUiD8iklmJYRQ==} + engines: {node: '>= 0.8.0'} + caseless@0.12.0: resolution: {integrity: sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==} + cbor-web@8.1.0: + resolution: {integrity: sha512-2hWHHMVrfffgoEmsAUh8vCxHoLa1vgodtC73+C5cSarkJlwTapnqAzcHINlP6Ej0DXuP4OmmJ9LF+JaNM5Lj/g==} + engines: {node: '>=12.19'} + cbor@10.0.3: resolution: {integrity: sha512-72Jnj81xMsqepqdcSdf2+fflz/UDsThOHy5hj2MW5F5xzHL8Oa0KQ6I6V9CwVUPxg5pf+W9xp6W2KilaRXWWtw==} engines: {node: '>=18'} @@ -3924,8 +4131,8 @@ packages: resolution: {integrity: sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==} engines: {node: '>=4'} - chai@5.1.2: - resolution: {integrity: sha512-aGtmf24DW6MLHHG5gCx4zaI3uBq3KRtxeVs0DjFH6Z0rDNbsvTxFASFvdj79pxjxZ8/5u3PIiN3IwEIQkiiuPw==} + chai@5.2.0: + resolution: {integrity: sha512-mCuXncKXk5iCLhfhwTc0izo0gtEmpz5CtG2y8GiOINBlMVS6v8TMRc5TaLWKS6692m9+dVVfzgeVxR5UxWHTYw==} engines: {node: '>=12'} chalk@2.4.2: @@ -4048,6 +4255,10 @@ packages: resolution: {integrity: sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA==} engines: {node: '>=0.10.0'} + color-blend@4.0.0: + resolution: {integrity: sha512-fYODTHhI/NG+B5GnzvuL3kiFrK/UnkUezWFTgEPBTY5V+kpyfAn95Vn9sJeeCX6omrCOdxnqCL3CvH+6sXtIbw==} + engines: {node: '>=10.0.0'} + color-convert@1.9.3: resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} @@ -4061,6 +4272,9 @@ packages: color-name@1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + color2k@2.0.3: + resolution: {integrity: sha512-zW190nQTIoXcGCaU08DvVNFTmQhUpnJfVuAKfWqUQkflXKpaDdpaYoM0iluLS9lgJNHyBF58KKA2FBEwkD7wog==} + colord@2.9.3: resolution: {integrity: sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==} @@ -4154,8 +4368,8 @@ packages: copy-to-clipboard@3.3.3: resolution: {integrity: sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==} - core-js-compat@3.38.0: - resolution: {integrity: sha512-75LAicdLa4OJVwFxFbQR3NdnZjNgX6ILpVcVzcC4T2smerB5lELMrJQQQoWV6TiuC/vlaFqgU2tKQx9w5s0e0A==} + core-js-compat@3.37.1: + resolution: {integrity: sha512-9TNiImhKvQqSUkOvk/mMRZzOANTiEVC7WaBNhHcKM7x+/5E1l5NvsysR19zuDQScE8k+kfQXWRN3AtS/eOSHpg==} core-util-is@1.0.2: resolution: {integrity: sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==} @@ -4308,8 +4522,11 @@ packages: resolution: {integrity: sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==} engines: {node: '>=0.11'} - dayjs@1.11.12: - resolution: {integrity: sha512-Rt2g+nTbLlDWZTwwrIXjy9MeiZmSDI375FvZs72ngxx8PDC6YXOeR3q5LAuPzjZQxhiWdRKac7RKV+YyQYfYIg==} + date-fns@3.6.0: + resolution: {integrity: sha512-fRHTG8g/Gif+kSh50gaGEdToemgfj74aRX3swtiouboip5JDLAyDE9F11nHMIcvOaXeOC6D7SpNhi7uFyB7Uww==} + + dayjs@1.11.11: + resolution: {integrity: sha512-okzr3f11N6WuqYtZSvm+F776mB41wRZMhKP+hc34YdW+KmtYYK9iqvHSwo2k9FEH3fhGXvOPV6yz2IcSrfRUDg==} debug@2.6.9: resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} @@ -4336,8 +4553,8 @@ packages: supports-color: optional: true - debug@4.3.6: - resolution: {integrity: sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==} + debug@4.3.7: + resolution: {integrity: sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==} engines: {node: '>=6.0'} peerDependencies: supports-color: '*' @@ -4462,8 +4679,8 @@ packages: resolution: {integrity: sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==} engines: {node: '>=6'} - docker-compose@1.1.0: - resolution: {integrity: sha512-VrkQJNafPQ5d6bGULW0P6KqcxSkv3ZU5Wn2wQA19oB71o7+55vQ9ogFe2MMeNbK+jc9rrKVy280DnHO5JLMWOQ==} + docker-compose@1.1.1: + resolution: {integrity: sha512-UkIUz0LtzuO17Ijm6SXMGtfZMs7IvbNwvuJBiBuN93PIhr/n9/sbJMqpvYFaCBGfwu1ZM4PPPDgQzeeke4lEoA==} engines: {node: '>= 6.0.0'} doctrine@2.1.0: @@ -4502,6 +4719,10 @@ packages: dot-case@3.0.4: resolution: {integrity: sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==} + dotenv@16.4.5: + resolution: {integrity: sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==} + engines: {node: '>=12'} + dotenv@16.4.7: resolution: {integrity: sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==} engines: {node: '>=12'} @@ -4510,6 +4731,10 @@ packages: resolution: {integrity: sha512-+xodG+LL8JVXz3Vfx/xI1qEcXwBUjfvTMFKNiYDXIk7FJDUiGi1zOUQrpQTn3Zd9n7lxPGSAmH9Z3wDrUac+xw==} engines: {node: '>=18'} + dunder-proto@1.0.1: + resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} + engines: {node: '>= 0.4'} + duplexer@0.1.2: resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==} @@ -4527,16 +4752,15 @@ packages: eciesjs@0.3.18: resolution: {integrity: sha512-RQhegEtLSyIiGJmFTZfvCTHER/fymipXFVx6OwSRYD6hOuy+6Kjpk0dGvIfP9kxn/smBpxQy71uxpGO406ITCw==} - deprecated: Please upgrade to v0.4+ ee-first@1.1.1: resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} - electron-to-chromium@1.5.6: - resolution: {integrity: sha512-jwXWsM5RPf6j9dPYzaorcBSUg6AiqocPEyMpkchkvntaH9HGfOOMZwxMJjDY/XEs3T5dM7uyH1VhRMkqUU9qVw==} + electron-to-chromium@1.4.783: + resolution: {integrity: sha512-bT0jEz/Xz1fahQpbZ1D7LgmPYZ3iHVY39NcWWro1+hA2IvjiPeaXtfSqrQ+nXjApMvQRE2ASt1itSLRrebHMRQ==} - electron-to-chromium@1.5.97: - resolution: {integrity: sha512-HKLtaH02augM7ZOdYRuO19rWDeY+QSJ1VxnXFa/XDFLf07HvM90pALIJFgrO+UVaajI3+aJMMpojoUTLZyQ7JQ==} + electron-to-chromium@1.5.41: + resolution: {integrity: sha512-dfdv/2xNjX0P8Vzme4cfzHqnPm5xsZXwsolTYr0eyW18IUmNyG08vL+fttvinTfhKfIKdRoqkDIC9e9iWQCNYQ==} elliptic@6.5.4: resolution: {integrity: sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==} @@ -4570,8 +4794,8 @@ packages: resolution: {integrity: sha512-RcyUFKA93/CXH20l4SoVvzZfrSDMOTUS3bWVpTt2FuFP+XYrL8i8oonHP7WInRyVHXh0n/ORtoeiE1os+8qkSw==} engines: {node: '>=10.0.0'} - enhanced-resolve@5.17.1: - resolution: {integrity: sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==} + enhanced-resolve@5.16.1: + resolution: {integrity: sha512-4U5pNsuDl0EhuZpq46M5xPslstkviJuhrdobaRDBk2Jy2KO37FDAJl4lb2KlNabxT0m4MTK2UHNrsAcphE8nyw==} engines: {node: '>=10.13.0'} enhanced-resolve@5.18.1: @@ -4599,9 +4823,17 @@ packages: error-stack-parser@2.1.4: resolution: {integrity: sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==} + es-errors@1.3.0: + resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} + engines: {node: '>= 0.4'} + es-module-lexer@1.6.0: resolution: {integrity: sha512-qqnD1yMU6tk/jnaMosogGySTZP8YtUgAffA9nMN+E/rjxcfRQ6IEk7IiozUjgxKoFHBGjTLnrHB/YC45r/59EQ==} + es-object-atoms@1.1.1: + resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==} + engines: {node: '>= 0.4'} + es5-ext@0.10.64: resolution: {integrity: sha512-p2snDhiLaXe6dahss1LddxqEm+SkuDvV8dnIQG0MWjyHpcMNfXKPE+/Cc0y+PhxJX3A4xGNeFCj5oc0BUh6deg==} engines: {node: '>=0.10'} @@ -4792,7 +5024,6 @@ packages: eslint@8.50.0: resolution: {integrity: sha512-FOnOGSuFuFLv/Sa+FDVRZl4GGVAAFFi8LecRsI5a1tMO5HIE8nCm4ivAlzt4dT3ol/PaaGC0rJEEXQmHJBGoOg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - deprecated: This version is no longer supported. Please see https://eslint.org/version-support for other options. hasBin: true esniff@2.0.1: @@ -4861,7 +5092,6 @@ packages: ethereum-bloom-filters@1.1.0: resolution: {integrity: sha512-J1gDRkLpuGNvWYzWslBQR9cDV4nd4kfvVTE/Wy4Kkm4yb3EYRSlyi0eB/inTsSTTVyA0+HyzHgbr95Fn/Z1fSw==} - deprecated: do not use this package use package versions above as this can miss some topics ethereum-cryptography@0.1.3: resolution: {integrity: sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==} @@ -5001,8 +5231,8 @@ packages: fastq@1.17.1: resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} - fdir@6.3.0: - resolution: {integrity: sha512-QOnuT+BOtivR77wYvCWHfGt9s4Pz1VIMbD463vegT5MLqNXy8rYFT/lPVEqf/bhYeT6qmqrNHhsX+rWwe3rOCQ==} + fdir@6.4.2: + resolution: {integrity: sha512-KnhMXsKSPZlAhp7+IjUkRZKPb4fUyccpDrdFXbi4QL1qkmFh9kVY09Yox+n4MaOb3lHZ1Tv829C3oaaXoMYPDQ==} peerDependencies: picomatch: ^3 || ^4 peerDependenciesMeta: @@ -5058,8 +5288,8 @@ packages: flatted@3.3.1: resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} - flatted@3.3.2: - resolution: {integrity: sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==} + flatted@3.3.3: + resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==} fmix@0.1.0: resolution: {integrity: sha512-Y6hyofImk9JdzU8k5INtTXX1cu8LDlePWDFU5sftm9H+zKCr5SGrVjdhkvsim646cw5zD0nADj8oHyXMZmCZ9w==} @@ -5102,6 +5332,23 @@ packages: fp-ts@1.19.3: resolution: {integrity: sha512-H5KQDspykdHuztLTg+ajGN0Z2qUjcEf3Ybxc6hLt0k7/zPkn29XnKnxlBPyW2XIddWrGaJBzBl4VLYOtk39yZg==} + fp-ts@2.1.1: + resolution: {integrity: sha512-YcWhMdDCFCja0MmaDroTgNu+NWWrrnUEn92nvDgrtVy9Z71YFnhNVIghoHPt8gs82ijoMzFGeWKvArbyICiJgw==} + + framer-motion@11.3.28: + resolution: {integrity: sha512-dqhoawipEAjqdv32zbv72sOMJZjol7dROWn7t/FOq23WXJ40O4OUybgnO2ldnuS+3YquSn8xO/KKRavZ+TBVOQ==} + peerDependencies: + '@emotion/is-prop-valid': '*' + react: ^18.2.0 + react-dom: ^18.2.0 + peerDependenciesMeta: + '@emotion/is-prop-valid': + optional: true + react: + optional: true + react-dom: + optional: true + fresh@0.5.2: resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==} engines: {node: '>= 0.6'} @@ -5158,6 +5405,10 @@ packages: get-func-name@2.0.2: resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==} + get-intrinsic@1.2.7: + resolution: {integrity: sha512-VW6Pxhsrk0KAOqs3WEd0klDiF/+V7gQOpAvY1jVU/LHmaD/kQO4523aiJuikX/QAKYiW6x8Jh+RJej1almdtCA==} + engines: {node: '>= 0.4'} + get-nonce@1.0.1: resolution: {integrity: sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==} engines: {node: '>=6'} @@ -5165,6 +5416,10 @@ packages: get-port-please@3.1.2: resolution: {integrity: sha512-Gxc29eLs1fbn6LQ4jSU4vXjlwyZhF5HsGuMAa7gqBP4Rw4yxxltyDUuF5MBclFzDTXO+ACchGQoeela4DSfzdQ==} + get-proto@1.0.1: + resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} + engines: {node: '>= 0.4'} + get-source@2.0.12: resolution: {integrity: sha512-X5+4+iD+HoSeEED+uwrQ07BOQr0kEDFMVqqpBuI+RaZBpBpHCuXxo70bjar6f0b0u/DQJsJ7ssurpP0V60Az+w==} @@ -5263,6 +5518,9 @@ packages: resolution: {integrity: sha512-59LZHPdGZVh695Ud9lRzPBVTtlX9ZCV150Er2W43ro37wVof0ctenSaskPPjN7lVTIN8mSZt8PHUNKZuNQUuxw==} engines: {node: ^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0} + gsap@3.12.7: + resolution: {integrity: sha512-V4GsyVamhmKefvcAKaoy0h6si0xX7ogwBoBSs2CTJwt7luW0oZzC0LhdkyuKV8PJAXr7Yaj8pMjCKD4GJ+eEMg==} + gzip-size@6.0.0: resolution: {integrity: sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==} engines: {node: '>=10'} @@ -5352,8 +5610,8 @@ packages: hoist-non-react-statics@3.3.2: resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==} - hookified@1.7.0: - resolution: {integrity: sha512-XQdMjqC1AyeOzfs+17cnIk7Wdfu1hh2JtcyNfBf5u9jHrT3iZUlGHxLTntFBuk5lwkqJ6l3+daeQdHK5yByHVA==} + hookified@1.7.1: + resolution: {integrity: sha512-OXcdHsXeOiD7OJ5zvWj8Oy/6RCdLwntAX+wUrfemNcMGn6sux4xbEHi2QXwqePYhjQ/yvxxq2MvCRirdlHscBw==} hosted-git-info@2.8.9: resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} @@ -5500,6 +5758,9 @@ packages: inline-style-prefixer@7.0.0: resolution: {integrity: sha512-I7GEdScunP1dQ6IM2mQWh6v0mOYdYmH3Bp31UecKdrcUgcURTcctSe1IECdUznSHKSmsHtjrT3CwCPI1pyxfUQ==} + inputmask@5.0.9: + resolution: {integrity: sha512-s0lUfqcEbel+EQXtehXqwCJGShutgieOaIImFKC/r4reYNvX3foyrChl6LOEvaEgxEbesePIrw1Zi2jhZaDZbQ==} + invariant@2.2.4: resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==} @@ -5510,6 +5771,11 @@ packages: io-ts@1.10.4: resolution: {integrity: sha512-b23PteSnYXSONJ6JQXRAlvJhuw8KOtkqa87W4wDtvMrud/DTJd5X+NpOOI+O/zZwVq6v0VLAaJ+1EDViKEuN9g==} + io-ts@2.0.1: + resolution: {integrity: sha512-RezD+WcCfW4VkMkEcQWL/Nmy/nqsWTvTYg7oUmTGzglvSSV2P9h2z1PVeREPFf0GWNzruYleAt1XCMQZSg1xxQ==} + peerDependencies: + fp-ts: ^2.0.0 + ipaddr.js@1.9.1: resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==} engines: {node: '>= 0.10'} @@ -5565,6 +5831,10 @@ packages: is-lower-case@1.1.3: resolution: {integrity: sha512-+5A1e/WJpLLXZEDlgz4G//WYSHyQBD32qa4Jd3Lw06qQlv3fJHnp3YIHjTQSGzHMgzmVKz2ZP3rBxTHkPw/lxA==} + is-nan@1.3.2: + resolution: {integrity: sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==} + engines: {node: '>= 0.4'} + is-node-process@1.2.0: resolution: {integrity: sha512-Vg4o6/fqPxIjtxgUH5QLJhwZ7gW5diGCVlXpuUfELC62CuxM1iHcRe51f2W1FDy04Ai4KJkagKjx3XaqyfRKXw==} @@ -5667,8 +5937,8 @@ packages: resolution: {integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - jiti@1.21.6: - resolution: {integrity: sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==} + jiti@1.21.0: + resolution: {integrity: sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==} hasBin: true jiti@2.4.2: @@ -5718,8 +5988,8 @@ packages: engines: {node: '>=4'} hasBin: true - jsesc@3.1.0: - resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} + jsesc@3.0.2: + resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==} engines: {node: '>=6'} hasBin: true @@ -5808,8 +6078,8 @@ packages: klaw@1.3.1: resolution: {integrity: sha512-TED5xi9gGQjGpNnvRWknrwAB1eL5GciPfVFOt3Vk1OJCVDQbzuSfrF3hkUQKlsgKrG1F+0t5W0m+Fje1jIt8rw==} - knip@5.44.0: - resolution: {integrity: sha512-j39v3LYCmU6P6HN/TG14bc0Dlthl12g6NogdEZHQdhlVS6BqfnGGS3ospYYwLill6Sdc68eptwGtThunqq7lxA==} + knip@5.44.2: + resolution: {integrity: sha512-FbNYckASiU73X61cKE8Uw3QuA+jJozrB8z8tDjbcCRqM9e3ji2+PT5sigSSm3IAVDpqWdhdgsIJVZ2B74Tiqrw==} engines: {node: '>=18.18.0'} hasBin: true peerDependencies: @@ -5834,6 +6104,12 @@ packages: resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} engines: {node: '>= 0.8.0'} + libphonenumber-js@1.11.2: + resolution: {integrity: sha512-V9mGLlaXN1WETzqQvSu6qf6XVAr3nFuJvWsHcuzCCCo6xUKawwSxOPTpan5CGOSKTn5w/bQuCZcLPJkyysgC3w==} + + libphonenumber-js@1.11.20: + resolution: {integrity: sha512-/ipwAMvtSZRdiQBHqW1qxqeYiBMzncOQLVA+62MWYr7N4m7Q2jqpJ0WgT7zlOEOpyLRSqrMXidbJpC0J77AaKA==} + lie@3.1.1: resolution: {integrity: sha512-RiNhHysUjhrDQntfYSfY4MU24coXXdEOgw9WGcKHNeEwffDYbF//u87M1EWaMGzuFoSbqW0C9C6lEEhDOAswfw==} @@ -5879,7 +6155,6 @@ packages: lodash.isequal@4.5.0: resolution: {integrity: sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==} - deprecated: This package is deprecated. Use require('node:util').isDeepStrictEqual instead. lodash.merge@4.6.2: resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} @@ -5901,6 +6176,9 @@ packages: loupe@2.3.7: resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==} + loupe@3.1.2: + resolution: {integrity: sha512-23I4pFZHmAemUnz8WZXbYRSKYj801VDaNv9ETuMh7IrMc7VuVVSo+Z9iLE3ni30+U48iDWfi30d3twAXBYmnCg==} + loupe@3.1.3: resolution: {integrity: sha512-kkIp7XSkP78ZxJEsSxW3712C6teJVoeHHwgo9zJ380de7IYyJ2ISlxojcH2pC5OFLewESmnRi/+XCDIEEVyoug==} @@ -5942,6 +6220,9 @@ packages: resolution: {integrity: sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==} engines: {node: '>=12'} + magic-string@0.30.10: + resolution: {integrity: sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==} + magic-string@0.30.17: resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==} @@ -5955,8 +6236,8 @@ packages: make-error@1.3.6: resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} - markdown-to-jsx@7.7.3: - resolution: {integrity: sha512-o35IhJDFP6Fv60zPy+hbvZSQMmgvSGdK5j8NRZ7FeZMY+Bgqw+dSg7SC1ZEzC26++CiOUCqkbq96/c3j/FfTEQ==} + markdown-to-jsx@7.7.4: + resolution: {integrity: sha512-1bSfXyBKi+EYS3YY+e0Csuxf8oZ3decdfhOav/Z7Wrk89tjudyL5FOmwZQUoy0/qVXGUl+6Q3s2SWtpDEWITfQ==} engines: {node: '>= 10'} peerDependencies: react: ^18.2.0 @@ -5964,6 +6245,10 @@ packages: match-all@1.2.6: resolution: {integrity: sha512-0EESkXiTkWzrQQntBu2uzKvLu6vVkUGz40nGPbSZuegcfE5UuSzNjLaIu76zJWuaT/2I3Z/8M06OlUOZLGwLlQ==} + math-intrinsics@1.1.0: + resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} + engines: {node: '>= 0.4'} + mathml-tag-names@2.1.3: resolution: {integrity: sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==} @@ -6014,6 +6299,10 @@ packages: micro-ftch@0.3.1: resolution: {integrity: sha512-/0LLxhzP0tfiR5hcQebtudP56gUurs2CLkGarnCiB/OqEyUFQ6U3paQi/tgLv0hBJYt2rnr9MNpxz4fiiugstg==} + micromatch@4.0.7: + resolution: {integrity: sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==} + engines: {node: '>=8.6'} + micromatch@4.0.8: resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} engines: {node: '>=8.6'} @@ -6320,12 +6609,12 @@ packages: resolution: {integrity: sha512-OSs33Z9yWr148JZcbZd5WiAXhh/n9z8TxQcdMhIOlpN9AhWpLfvVFO73+m77bBABQMaY9XSvIa+qk0jlI7Gcaw==} hasBin: true + node-releases@2.0.14: + resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} + node-releases@2.0.18: resolution: {integrity: sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==} - node-releases@2.0.19: - resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} - nofilter@1.0.4: resolution: {integrity: sha512-N8lidFp+fCz+TD51+haYdbDGrcBWwuHX40F5+z0qkUjMJ5Tp+rdSuAkMJ9N9eoolDlEVTf6u5icM+cNKkKW2mA==} engines: {node: '>=8'} @@ -6449,8 +6738,8 @@ packages: resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} engines: {node: '>=6'} - package-json-from-dist@1.0.0: - resolution: {integrity: sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==} + package-json-from-dist@1.0.1: + resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} pako@2.1.0: resolution: {integrity: sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==} @@ -6520,6 +6809,9 @@ packages: path-to-regexp@0.1.7: resolution: {integrity: sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==} + path-to-regexp@6.2.2: + resolution: {integrity: sha512-GQX3SSMokngb36+whdpRXE+3f9V8UzyAorlYvOGx87ufGHehNTn5lCxrKtLyZ4Yl/wEKnNnr98ZzOwwDZV5ogw==} + path-to-regexp@6.3.0: resolution: {integrity: sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==} @@ -6551,6 +6843,9 @@ packages: performance-now@2.1.0: resolution: {integrity: sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==} + picocolors@1.0.1: + resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==} + picocolors@1.1.1: resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} @@ -6595,13 +6890,13 @@ packages: pkg-types@1.1.1: resolution: {integrity: sha512-ko14TjmDuQJ14zsotODv7dBlwxKhUKQEhuhmbqo1uCi9BB0Z2alo/wAXg6q1dTR5TyuqYyWhjtfe/Tsh+X28jQ==} - playwright-core@1.48.2: - resolution: {integrity: sha512-sjjw+qrLFlriJo64du+EK0kJgZzoQPsabGF4lBvsid+3CNIZIYLgnMj9V6JY5VhM2Peh20DJWIVpVljLLnlawA==} + playwright-core@1.49.0: + resolution: {integrity: sha512-R+3KKTQF3npy5GTiKH/T+kdhoJfJojjHESR1YEWhYuEKRVfVaxH3+4+GvXE5xyCngCxhxnykk0Vlah9v8fs3jA==} engines: {node: '>=18'} hasBin: true - playwright@1.48.2: - resolution: {integrity: sha512-NjYvYgp4BPmiwfe31j4gHLa3J7bD2WiBz8Lk2RoSsmX38SVIARZ18VYjxLjAcDsAhA+F4iSEXTSGgjua0rrlgQ==} + playwright@1.49.0: + resolution: {integrity: sha512-eKpmys0UFDnfNb3vfsf8Vx2LEOtflgRebl0Im2eQQnYMA4Aqd+Zw8bEOB+7ZKvN76901mRnqdsiOGKxzVTbi7A==} engines: {node: '>=18'} hasBin: true @@ -6643,12 +6938,16 @@ packages: resolution: {integrity: sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==} engines: {node: ^10 || ^12 || >=14} + postcss@8.4.49: + resolution: {integrity: sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==} + engines: {node: ^10 || ^12 || >=14} + postcss@8.5.2: resolution: {integrity: sha512-MjOadfU3Ys9KYoX0AdkBlFEF1Vx37uCCeN4ZHnmwm9FfpbsGWMZeBLMmmpY+6Ocqod7mkdZ0DT31OlbsFrLlkA==} engines: {node: ^10 || ^12 || >=14} - preact@10.23.1: - resolution: {integrity: sha512-O5UdRsNh4vdZaTieWe3XOgSpdMAmkIYBCT3VhQDlKrzyCm8lUYsk0fmVEvoQQifoOjFRTaHZO69ylrzTW2BH+A==} + preact@10.22.0: + resolution: {integrity: sha512-RRurnSjJPj4rp5K6XoP45Ui33ncb7e4H7WiOHVpjbkvqvA3U+N8Z6Qbo0AE6leGYBV66n8EhEaFixvIu3SkxFw==} prelude-ls@1.2.1: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} @@ -6735,6 +7034,9 @@ packages: resolution: {integrity: sha512-EXtzRZmC+YGmGlDFbXKxQiMZNwCLEO6BANKXG4iCtSIM0yqc/pappSx3RIKr4r0uh5JsBckOXeKrB3Iz7mdQpQ==} hasBin: true + qrcode-with-logos@1.1.1: + resolution: {integrity: sha512-vh0LWvwalp7471ODXd4rcXrbKgRpfwfdrjfb3pdr9+Zz/s27+5clRHFxzh5orTm1rusStfHGMACP7GWVAkzpKQ==} + qrcode@1.5.3: resolution: {integrity: sha512-puyri6ApkEHYiVl4CFzo1tDkAZ+ATcnbJrJ6RiBM1Fhctdn/ix9MTE3hRph33omisEbC/2fcfemsseiKgBPKZg==} engines: {node: '>=10.13.0'} @@ -6931,10 +7233,13 @@ packages: resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} engines: {node: '>=8.10.0'} - readdirp@4.1.1: - resolution: {integrity: sha512-h80JrZu/MHUZCyHu5ciuoI0+WxsCxzxJTILn6Fs8rxSnFPh+UVHYfeIxK1nVGugMqkfC4vJcBOYbkfkwYK0+gw==} + readdirp@4.1.2: + resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==} engines: {node: '>= 14.18.0'} + readonly-date@1.0.0: + resolution: {integrity: sha512-tMKIV7hlk0h4mO3JTmmVuIlJVXjKk3Sep9Bf5OH0O+758ruuVkUy2J9SttDLm91IEX/WHlXPSpxMGjPj4beMIQ==} + real-require@0.1.0: resolution: {integrity: sha512-r/H9MzAWtrv8aSVjPCMFpDMl5q66GqtmmRkRjpHTsp4zBAa+snZyiQNlMONiUmEJcsnaw0wCauJ2GWODr/aFkg==} engines: {node: '>= 12.13.0'} @@ -7143,8 +7448,8 @@ packages: resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true - semver@7.6.3: - resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==} + semver@7.6.2: + resolution: {integrity: sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==} engines: {node: '>=10'} hasBin: true @@ -7353,6 +7658,9 @@ packages: resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==} engines: {node: '>= 0.8'} + std-env@3.7.0: + resolution: {integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==} + std-env@3.8.0: resolution: {integrity: sha512-Bc3YwwCB+OzldMxOXJIIvC6cPRWr/LxOp48CdQTOkPyk/t4JWWJbrilwBd7RJzKV8QW7tJkcgAmeuLLJugl5/w==} @@ -7450,14 +7758,21 @@ packages: resolution: {integrity: sha512-0fk9zBqO67Nq5M/m45qHCJxylV/DhBlIOVExqgOMiCCrzrhU6tCibRXNqE3jwJLftzE9SNuZtYbpzcO+i9FiKw==} engines: {node: '>=14.16'} - styled-components@5.3.11: - resolution: {integrity: sha512-uuzIIfnVkagcVHv9nE0VPlHPSCmXIUGKfJ42LNjxCCTDTL5sgnJ8Z7GZBq0EnLYGln77tPpEpExt2+qa+cZqSw==} + styled-components@5.3.6: + resolution: {integrity: sha512-hGTZquGAaTqhGWldX7hhfzjnIYBZ0IXQXkCYdvF1Sq3DsUaLx6+NTHC5Jj1ooM2F68sBiVz3lvhfwQs/S3l6qg==} engines: {node: '>=10'} peerDependencies: react: ^18.2.0 react-dom: ^18.2.0 react-is: '>= 16.8.0' + styled-components@6.1.15: + resolution: {integrity: sha512-PpOTEztW87Ua2xbmLa7yssjNyUF9vE7wdldRfn1I2E6RTkqknkBYpj771OxM/xrvRGinLy2oysa7GOd7NcZZIA==} + engines: {node: '>= 16'} + peerDependencies: + react: ^18.2.0 + react-dom: ^18.2.0 + styled-jsx@5.1.1: resolution: {integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==} engines: {node: '>= 12.0.0'} @@ -7602,8 +7917,8 @@ packages: tinyexec@0.3.2: resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==} - tinyglobby@0.2.6: - resolution: {integrity: sha512-NbBoFBpqfcgd1tCiO8Lkfdk+xrA7mlLR9zgvZcZWQQwU63XAfUePyd6wZBaU93Hqw347lHnwFzttAkemHzzz4g==} + tinyglobby@0.2.9: + resolution: {integrity: sha512-8or1+BGEdk1Zkkw2ii16qSS7uVrQJPre5A9o/XkWPATkk23FZh/15BKFxPnlTy6vkljZxLqYCzzBMj30ZrSvjw==} engines: {node: '>=12.0.0'} tinypool@1.0.2: @@ -7625,6 +7940,10 @@ packages: resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} engines: {node: '>=0.6.0'} + to-fast-properties@2.0.0: + resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} + engines: {node: '>=4'} + to-regex-range@5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} @@ -7694,8 +8013,8 @@ packages: tslib@1.14.1: resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} - tslib@2.6.3: - resolution: {integrity: sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==} + tslib@2.6.2: + resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} tsort@0.0.1: resolution: {integrity: sha512-Tyrf5mxF8Ofs1tNoxA13lFeZ2Zrbd6cKbuH3V+MQ5sb6DtBj5FjrXVsRWT8YvNAQTqNoz66dz1WsbigI22aEnw==} @@ -7741,8 +8060,8 @@ packages: resolution: {integrity: sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==} engines: {node: '>=8'} - type-fest@4.30.0: - resolution: {integrity: sha512-G6zXWS1dLj6eagy6sVhOMQiLtJdxQBHIA9Z6HFUNLOlr6MFOgzV8wvmidtPONfPtEUv0uZsy77XJNzTAfwPDaA==} + type-fest@4.32.0: + resolution: {integrity: sha512-rfgpoi08xagF3JSdtJlCwMq9DGNDE0IMh3Mkpc1wUypg9vPi786AiqeBBKcqvIkq42azsBM85N490fyZjeUftw==} engines: {node: '>=16'} type-is@1.6.18: @@ -7775,8 +8094,9 @@ packages: engines: {node: '>=14.17'} hasBin: true - ua-parser-js@1.0.37: - resolution: {integrity: sha512-bhTyI94tZofjo+Dn8SN6Zv8nBDvyXTymAdM3LDI/0IboIUwTu1rEhW7v2TfiVsoYWgkQ4kOVqnI8APUFbIQIFQ==} + ua-parser-js@1.0.39: + resolution: {integrity: sha512-k24RCVWlEcjkdOxYmVJgeD/0a1TiSpqLg+ZalVGV9lsnr4yqu0w7tX/x2xX6G4zpkgQnRf89lxuZ1wsbjXM8lw==} + hasBin: true ufo@1.5.3: resolution: {integrity: sha512-Y7HYmWaFwPUmkoQCUIAYpKqkOf+SbVj/2fJJZ4RJMCfZp0rTGwRbzQD+HghfnhKOjL9E01okqz+ncJskGYfBNw==} @@ -7790,6 +8110,9 @@ packages: uncrypto@0.1.3: resolution: {integrity: sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==} + undici-types@5.26.5: + resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} + undici-types@6.19.8: resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==} @@ -7883,14 +8206,14 @@ packages: resolution: {integrity: sha512-4luGP9LMYszMRZwsvyUd9MrxgEGZdZuZgpVQHEEX0lCYFESasVRvZd0EYpCkOIbJKHMuv0LskpXc/8Un+MJzEQ==} hasBin: true - update-browserslist-db@1.1.0: - resolution: {integrity: sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==} + update-browserslist-db@1.0.16: + resolution: {integrity: sha512-KVbTxlBYlckhF5wgfyZXTWnMn7MMZjMu9XG8bPlliUOP9ThaF4QnhP8qrjrH7DRzHfSk0oQv1wToW+iA5GajEQ==} hasBin: true peerDependencies: browserslist: '>= 4.21.0' - update-browserslist-db@1.1.2: - resolution: {integrity: sha512-PPypAm5qvlD7XMZC3BujecnaOxwhrtoFR+Dqkk5Aa/6DssiH0ibKoketaj9w8LP7Bont1rYeoV5plxD7RTEPRg==} + update-browserslist-db@1.1.1: + resolution: {integrity: sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==} hasBin: true peerDependencies: browserslist: '>= 4.21.0' @@ -7944,6 +8267,11 @@ packages: peerDependencies: react: ^18.2.0 + use-sync-external-store@1.4.0: + resolution: {integrity: sha512-9WXSPC5fMv61vaupRkCKCxsPxBocVnwakBEkMIHHpkTTg6icbJtg6jzgtLDm4bl3cSHAca52rYWih0k4K3PfHw==} + peerDependencies: + react: ^18.2.0 + utf-8-validate@5.0.10: resolution: {integrity: sha512-Z6czzLq4u8fPOyx7TU6X3dvUZVvoJmxSQ+IcrlmagKhilxlhZgxPK6C5Jqbkw1IDUmFTM+cz9QDnnLTwDz/2gQ==} engines: {node: '>=6.14.2'} @@ -8015,8 +8343,8 @@ packages: typescript: optional: true - vite-node@3.0.5: - resolution: {integrity: sha512-02JEJl7SbtwSDJdYS537nU6l+ktdvcREfLksk/NDAqtdKWGqHl+joXzEubHROmS3E6pip+Xgu2tFezMu75jH7A==} + vite-node@3.0.6: + resolution: {integrity: sha512-s51RzrTkXKJrhNbUzQRsarjmAae7VmMPAsRT7lppVpIg6mK3zGthP9Hgz0YQQKuNcF+Ii7DfYk3Fxz40jRmePw==} engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} hasBin: true @@ -8058,16 +8386,16 @@ packages: peerDependencies: vitest: '*' - vitest@3.0.5: - resolution: {integrity: sha512-4dof+HvqONw9bvsYxtkfUp2uHsTN9bV2CZIi1pWgoFpL1Lld8LA1ka9q/ONSsoScAKG7NVGf2stJTI7XRkXb2Q==} + vitest@3.0.6: + resolution: {integrity: sha512-/iL1Sc5VeDZKPDe58oGK4HUFLhw6b5XdY1MYawjuSaDA4sEfYlY9HnS6aCEG26fX+MgUi7MwlduTBHHAI/OvMA==} engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} hasBin: true peerDependencies: '@edge-runtime/vm': '*' '@types/debug': ^4.1.12 '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0 - '@vitest/browser': 3.0.5 - '@vitest/ui': 3.0.5 + '@vitest/browser': 3.0.6 + '@vitest/ui': 3.0.6 happy-dom: '*' jsdom: '*' peerDependenciesMeta: @@ -8449,8 +8777,8 @@ packages: utf-8-validate: optional: true - ws@7.5.10: - resolution: {integrity: sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==} + ws@7.5.9: + resolution: {integrity: sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==} engines: {node: '>=8.3.0'} peerDependencies: bufferutil: ^4.0.1 @@ -8473,8 +8801,8 @@ packages: utf-8-validate: optional: true - ws@8.17.1: - resolution: {integrity: sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==} + ws@8.17.0: + resolution: {integrity: sha512-uJq6108EgZMAl20KagGkzCKfMEjxmKvZHG7Tlq0Z6nOky7YF7aq4mOx6xK8TJ/i1LeK4Qus7INktacctDgY8Ow==} engines: {node: '>=10.0.0'} peerDependencies: bufferutil: ^4.0.1 @@ -8485,8 +8813,8 @@ packages: utf-8-validate: optional: true - ws@8.18.0: - resolution: {integrity: sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==} + ws@8.17.1: + resolution: {integrity: sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==} engines: {node: '>=10.0.0'} peerDependencies: bufferutil: ^4.0.1 @@ -8553,8 +8881,8 @@ packages: yallist@3.1.1: resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} - yaml@2.5.0: - resolution: {integrity: sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw==} + yaml@2.4.2: + resolution: {integrity: sha512-B3VqDZ+JAg1nZpaEmWtTXUlBneoGx6CPM9b0TENK6aoSu5t73dItudwdgmi6tHlIZZId4dZ9skcAQ2UbcyAeVA==} engines: {node: '>= 14'} hasBin: true @@ -8617,8 +8945,8 @@ packages: peerDependencies: ethers: ^5.7.0 - zod-validation-error@3.3.1: - resolution: {integrity: sha512-uFzCZz7FQis256dqw4AhPQgD6f3pzNca/Zh62RNELavlumQB3nDIUFbF5JQfFLcMbO1s02Q7Xg/gpcOBlEnYZA==} + zod-validation-error@3.4.0: + resolution: {integrity: sha512-ZOPR9SVY6Pb2qqO5XHt+MkkTRxGXb4EVtnjc9JpXUOtUB1T9Ru7mZOT361AN3MsetVe7R0a1KZshJDZdgp9miQ==} engines: {node: '>=18.0.0'} peerDependencies: zod: ^3.18.0 @@ -8641,6 +8969,21 @@ packages: react: optional: true + zustand@4.5.6: + resolution: {integrity: sha512-ibr/n1hBzLLj5Y+yUcU7dYw8p6WnIVzdJbnX+1YpaScvZVF2ziugqHs+LAmHw4lWO9c/zRj+K1ncgWDQuthEdQ==} + engines: {node: '>=12.7.0'} + peerDependencies: + '@types/react': '>=16.8' + immer: '>=9.0.6' + react: ^18.2.0 + peerDependenciesMeta: + '@types/react': + optional: true + immer: + optional: true + react: + optional: true + snapshots: '@adobe/css-tools@4.3.3': {} @@ -8654,9 +8997,14 @@ snapshots: '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 - '@babel/code-frame@7.24.7': + '@babel/code-frame@7.24.6': + dependencies: + '@babel/highlight': 7.24.6 + picocolors: 1.0.1 + + '@babel/code-frame@7.25.7': dependencies: - '@babel/highlight': 7.24.7 + '@babel/highlight': 7.25.7 picocolors: 1.1.1 '@babel/code-frame@7.26.2': @@ -8665,79 +9013,78 @@ snapshots: js-tokens: 4.0.0 picocolors: 1.1.1 - '@babel/compat-data@7.25.2': {} + '@babel/compat-data@7.24.6': {} '@babel/compat-data@7.26.8': {} '@babel/core@7.24.6': dependencies: '@ampproject/remapping': 2.3.0 - '@babel/code-frame': 7.24.7 - '@babel/generator': 7.25.0 - '@babel/helper-compilation-targets': 7.25.2 - '@babel/helper-module-transforms': 7.25.2(@babel/core@7.24.6) + '@babel/code-frame': 7.24.6 + '@babel/generator': 7.24.6 + '@babel/helper-compilation-targets': 7.24.6 + '@babel/helper-module-transforms': 7.24.6(@babel/core@7.24.6) '@babel/helpers': 7.24.6 - '@babel/parser': 7.26.8 - '@babel/template': 7.25.0 - '@babel/traverse': 7.25.3(supports-color@5.5.0) - '@babel/types': 7.26.8 + '@babel/parser': 7.24.6 + '@babel/template': 7.24.6 + '@babel/traverse': 7.24.6(supports-color@5.5.0) + '@babel/types': 7.24.6 convert-source-map: 2.0.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.3.4(supports-color@5.5.0) gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 transitivePeerDependencies: - supports-color - '@babel/core@7.26.8': + '@babel/core@7.26.9': dependencies: '@ampproject/remapping': 2.3.0 '@babel/code-frame': 7.26.2 - '@babel/generator': 7.26.8 + '@babel/generator': 7.26.9 '@babel/helper-compilation-targets': 7.26.5 - '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.8) - '@babel/helpers': 7.26.7 - '@babel/parser': 7.26.8 - '@babel/template': 7.26.8 - '@babel/traverse': 7.26.8 - '@babel/types': 7.26.8 - '@types/gensync': 1.0.4 + '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.9) + '@babel/helpers': 7.26.9 + '@babel/parser': 7.26.9 + '@babel/template': 7.26.9 + '@babel/traverse': 7.26.9 + '@babel/types': 7.26.9 convert-source-map: 2.0.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.3.7 gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 transitivePeerDependencies: - supports-color - '@babel/generator@7.25.0': + '@babel/generator@7.24.6': dependencies: - '@babel/types': 7.26.8 + '@babel/types': 7.24.6 '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 jsesc: 2.5.2 - '@babel/generator@7.26.8': + '@babel/generator@7.26.9': dependencies: - '@babel/parser': 7.26.8 - '@babel/types': 7.26.8 + '@babel/parser': 7.26.9 + '@babel/types': 7.26.9 '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 - jsesc: 3.1.0 + jsesc: 3.0.2 - '@babel/helper-annotate-as-pure@7.24.7': + '@babel/helper-annotate-as-pure@7.24.6': dependencies: - '@babel/types': 7.26.8 + '@babel/types': 7.24.6 '@babel/helper-builder-binary-assignment-operator-visitor@7.24.6': dependencies: - '@babel/types': 7.26.8 + '@babel/types': 7.24.6 - '@babel/helper-compilation-targets@7.25.2': + '@babel/helper-compilation-targets@7.24.6': dependencies: - '@babel/compat-data': 7.25.2 - '@babel/helper-validator-option': 7.24.8 - browserslist: 4.23.3 + '@babel/compat-data': 7.24.6 + '@babel/helper-validator-option': 7.24.6 + browserslist: 4.23.0 lru-cache: 5.1.1 semver: 6.3.1 @@ -8745,191 +9092,200 @@ snapshots: dependencies: '@babel/compat-data': 7.26.8 '@babel/helper-validator-option': 7.25.9 - browserslist: 4.24.4 + browserslist: 4.24.0 lru-cache: 5.1.1 semver: 6.3.1 - '@babel/helper-create-class-features-plugin@7.25.0(@babel/core@7.24.6)': + '@babel/helper-create-class-features-plugin@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-member-expression-to-functions': 7.24.8 - '@babel/helper-optimise-call-expression': 7.24.7 - '@babel/helper-replace-supers': 7.25.0(@babel/core@7.24.6) - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - '@babel/traverse': 7.25.3(supports-color@5.5.0) + '@babel/helper-annotate-as-pure': 7.24.6 + '@babel/helper-environment-visitor': 7.24.6 + '@babel/helper-function-name': 7.24.6 + '@babel/helper-member-expression-to-functions': 7.24.6 + '@babel/helper-optimise-call-expression': 7.24.6 + '@babel/helper-replace-supers': 7.24.6(@babel/core@7.24.6) + '@babel/helper-skip-transparent-expression-wrappers': 7.24.6 + '@babel/helper-split-export-declaration': 7.24.6 semver: 6.3.1 - transitivePeerDependencies: - - supports-color - '@babel/helper-create-regexp-features-plugin@7.25.2(@babel/core@7.24.6)': + '@babel/helper-create-regexp-features-plugin@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-annotate-as-pure': 7.24.7 + '@babel/helper-annotate-as-pure': 7.24.6 regexpu-core: 5.3.2 semver: 6.3.1 '@babel/helper-define-polyfill-provider@0.6.2(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-compilation-targets': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - debug: 4.4.0(supports-color@5.5.0) + '@babel/helper-compilation-targets': 7.24.6 + '@babel/helper-plugin-utils': 7.24.6 + debug: 4.3.7 lodash.debounce: 4.0.8 resolve: 1.22.8 transitivePeerDependencies: - supports-color - '@babel/helper-environment-visitor@7.24.7': + '@babel/helper-environment-visitor@7.24.6': {} + + '@babel/helper-function-name@7.24.6': dependencies: - '@babel/types': 7.26.8 + '@babel/template': 7.24.6 + '@babel/types': 7.24.6 '@babel/helper-hoist-variables@7.24.6': dependencies: - '@babel/types': 7.26.8 + '@babel/types': 7.24.6 - '@babel/helper-member-expression-to-functions@7.24.8': + '@babel/helper-member-expression-to-functions@7.24.6': dependencies: - '@babel/traverse': 7.25.3(supports-color@5.5.0) - '@babel/types': 7.26.8 - transitivePeerDependencies: - - supports-color + '@babel/types': 7.24.6 - '@babel/helper-module-imports@7.24.7(supports-color@5.5.0)': + '@babel/helper-module-imports@7.24.6': dependencies: - '@babel/traverse': 7.25.3(supports-color@5.5.0) - '@babel/types': 7.26.8 - transitivePeerDependencies: - - supports-color + '@babel/types': 7.24.6 '@babel/helper-module-imports@7.25.9': dependencies: - '@babel/traverse': 7.26.8 - '@babel/types': 7.26.8 + '@babel/traverse': 7.26.9 + '@babel/types': 7.26.9 transitivePeerDependencies: - supports-color - '@babel/helper-module-transforms@7.25.2(@babel/core@7.24.6)': + '@babel/helper-module-transforms@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-module-imports': 7.24.7(supports-color@5.5.0) - '@babel/helper-simple-access': 7.24.7 - '@babel/helper-validator-identifier': 7.25.9 - '@babel/traverse': 7.25.3(supports-color@5.5.0) - transitivePeerDependencies: - - supports-color + '@babel/helper-environment-visitor': 7.24.6 + '@babel/helper-module-imports': 7.24.6 + '@babel/helper-simple-access': 7.24.6 + '@babel/helper-split-export-declaration': 7.24.6 + '@babel/helper-validator-identifier': 7.24.6 - '@babel/helper-module-transforms@7.26.0(@babel/core@7.26.8)': + '@babel/helper-module-transforms@7.26.0(@babel/core@7.26.9)': dependencies: - '@babel/core': 7.26.8 + '@babel/core': 7.26.9 '@babel/helper-module-imports': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 - '@babel/traverse': 7.26.8 + '@babel/traverse': 7.26.9 transitivePeerDependencies: - supports-color - '@babel/helper-optimise-call-expression@7.24.7': + '@babel/helper-optimise-call-expression@7.24.6': dependencies: - '@babel/types': 7.26.8 + '@babel/types': 7.24.6 - '@babel/helper-plugin-utils@7.24.8': {} + '@babel/helper-plugin-utils@7.24.6': {} '@babel/helper-plugin-utils@7.26.5': {} - '@babel/helper-remap-async-to-generator@7.25.0(@babel/core@7.24.6)': + '@babel/helper-remap-async-to-generator@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-wrap-function': 7.25.0 - '@babel/traverse': 7.25.3(supports-color@5.5.0) - transitivePeerDependencies: - - supports-color + '@babel/helper-annotate-as-pure': 7.24.6 + '@babel/helper-environment-visitor': 7.24.6 + '@babel/helper-wrap-function': 7.24.6 - '@babel/helper-replace-supers@7.25.0(@babel/core@7.24.6)': + '@babel/helper-replace-supers@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-member-expression-to-functions': 7.24.8 - '@babel/helper-optimise-call-expression': 7.24.7 - '@babel/traverse': 7.25.3(supports-color@5.5.0) - transitivePeerDependencies: - - supports-color + '@babel/helper-environment-visitor': 7.24.6 + '@babel/helper-member-expression-to-functions': 7.24.6 + '@babel/helper-optimise-call-expression': 7.24.6 - '@babel/helper-simple-access@7.24.7': + '@babel/helper-simple-access@7.24.6': dependencies: - '@babel/traverse': 7.25.3(supports-color@5.5.0) - '@babel/types': 7.26.8 - transitivePeerDependencies: - - supports-color + '@babel/types': 7.24.6 - '@babel/helper-skip-transparent-expression-wrappers@7.24.7': + '@babel/helper-skip-transparent-expression-wrappers@7.24.6': dependencies: - '@babel/traverse': 7.25.3(supports-color@5.5.0) - '@babel/types': 7.26.8 - transitivePeerDependencies: - - supports-color + '@babel/types': 7.24.6 + + '@babel/helper-split-export-declaration@7.24.6': + dependencies: + '@babel/types': 7.24.6 + + '@babel/helper-string-parser@7.24.6': {} + + '@babel/helper-string-parser@7.25.7': {} '@babel/helper-string-parser@7.25.9': {} + '@babel/helper-validator-identifier@7.24.6': {} + + '@babel/helper-validator-identifier@7.25.7': {} + '@babel/helper-validator-identifier@7.25.9': {} - '@babel/helper-validator-option@7.24.8': {} + '@babel/helper-validator-option@7.24.6': {} '@babel/helper-validator-option@7.25.9': {} - '@babel/helper-wrap-function@7.25.0': + '@babel/helper-wrap-function@7.24.6': dependencies: - '@babel/template': 7.25.0 - '@babel/traverse': 7.25.3(supports-color@5.5.0) - '@babel/types': 7.26.8 - transitivePeerDependencies: - - supports-color + '@babel/helper-function-name': 7.24.6 + '@babel/template': 7.24.6 + '@babel/types': 7.24.6 '@babel/helpers@7.24.6': dependencies: - '@babel/template': 7.25.0 - '@babel/types': 7.26.8 + '@babel/template': 7.24.6 + '@babel/types': 7.24.6 - '@babel/helpers@7.26.7': + '@babel/helpers@7.26.9': dependencies: - '@babel/template': 7.26.8 - '@babel/types': 7.26.8 + '@babel/template': 7.26.9 + '@babel/types': 7.26.9 - '@babel/highlight@7.24.7': + '@babel/highlight@7.24.6': dependencies: - '@babel/helper-validator-identifier': 7.25.9 + '@babel/helper-validator-identifier': 7.24.6 chalk: 2.4.2 js-tokens: 4.0.0 picocolors: 1.1.1 - '@babel/parser@7.26.8': + '@babel/highlight@7.25.7': + dependencies: + '@babel/helper-validator-identifier': 7.25.7 + chalk: 2.4.2 + js-tokens: 4.0.0 + picocolors: 1.1.1 + + '@babel/parser@7.24.6': + dependencies: + '@babel/types': 7.24.6 + + '@babel/parser@7.25.8': + dependencies: + '@babel/types': 7.25.8 + + '@babel/parser@7.26.9': dependencies: - '@babel/types': 7.26.8 + '@babel/types': 7.26.9 '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-environment-visitor': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-environment-visitor': 7.24.6 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 + '@babel/helper-plugin-utils': 7.24.6 + '@babel/helper-skip-transparent-expression-wrappers': 7.24.6 '@babel/plugin-transform-optional-chaining': 7.24.6(@babel/core@7.24.6) - transitivePeerDependencies: - - supports-color '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-environment-visitor': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-environment-visitor': 7.24.6 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.6)': dependencies: @@ -8938,492 +9294,455 @@ snapshots: '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-syntax-import-assertions@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-syntax-import-attributes@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 - '@babel/plugin-syntax-jsx@7.24.7(@babel/core@7.24.6)': + '@babel/plugin-syntax-jsx@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 - '@babel/plugin-syntax-jsx@7.24.7(@babel/core@7.26.8)': + '@babel/plugin-syntax-jsx@7.24.6(@babel/core@7.26.9)': dependencies: - '@babel/core': 7.26.8 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/core': 7.26.9 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 - '@babel/plugin-syntax-typescript@7.24.7(@babel/core@7.24.6)': + '@babel/plugin-syntax-typescript@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.24.6) - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-create-regexp-features-plugin': 7.24.6(@babel/core@7.24.6) + '@babel/helper-plugin-utils': 7.24.6 - '@babel/plugin-transform-arrow-functions@7.24.7(@babel/core@7.24.6)': + '@babel/plugin-transform-arrow-functions@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-transform-async-generator-functions@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-environment-visitor': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-remap-async-to-generator': 7.25.0(@babel/core@7.24.6) + '@babel/helper-environment-visitor': 7.24.6 + '@babel/helper-plugin-utils': 7.24.6 + '@babel/helper-remap-async-to-generator': 7.24.6(@babel/core@7.24.6) '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.6) - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-async-to-generator@7.24.7(@babel/core@7.24.6)': + '@babel/plugin-transform-async-to-generator@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-module-imports': 7.24.7(supports-color@5.5.0) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-remap-async-to-generator': 7.25.0(@babel/core@7.24.6) - transitivePeerDependencies: - - supports-color + '@babel/helper-module-imports': 7.24.6 + '@babel/helper-plugin-utils': 7.24.6 + '@babel/helper-remap-async-to-generator': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-block-scoped-functions@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 - '@babel/plugin-transform-block-scoping@7.25.0(@babel/core@7.24.6)': + '@babel/plugin-transform-block-scoping@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-transform-class-properties@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-create-class-features-plugin': 7.25.0(@babel/core@7.24.6) - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color + '@babel/helper-create-class-features-plugin': 7.24.6(@babel/core@7.24.6) + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-transform-class-static-block@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-create-class-features-plugin': 7.25.0(@babel/core@7.24.6) - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-create-class-features-plugin': 7.24.6(@babel/core@7.24.6) + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.6) - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-classes@7.25.0(@babel/core@7.24.6)': + '@babel/plugin-transform-classes@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-compilation-targets': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-replace-supers': 7.25.0(@babel/core@7.24.6) - '@babel/traverse': 7.25.3(supports-color@5.5.0) + '@babel/helper-annotate-as-pure': 7.24.6 + '@babel/helper-compilation-targets': 7.24.6 + '@babel/helper-environment-visitor': 7.24.6 + '@babel/helper-function-name': 7.24.6 + '@babel/helper-plugin-utils': 7.24.6 + '@babel/helper-replace-supers': 7.24.6(@babel/core@7.24.6) + '@babel/helper-split-export-declaration': 7.24.6 globals: 11.12.0 - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-computed-properties@7.24.7(@babel/core@7.24.6)': + '@babel/plugin-transform-computed-properties@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/template': 7.25.0 + '@babel/helper-plugin-utils': 7.24.6 + '@babel/template': 7.24.6 - '@babel/plugin-transform-destructuring@7.24.8(@babel/core@7.24.6)': + '@babel/plugin-transform-destructuring@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-transform-dotall-regex@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.24.6) - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-create-regexp-features-plugin': 7.24.6(@babel/core@7.24.6) + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-transform-duplicate-keys@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-transform-dynamic-import@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.6) '@babel/plugin-transform-exponentiation-operator@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 '@babel/helper-builder-binary-assignment-operator-visitor': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-transform-export-namespace-from@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.6) '@babel/plugin-transform-for-of@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - transitivePeerDependencies: - - supports-color + '@babel/helper-plugin-utils': 7.24.6 + '@babel/helper-skip-transparent-expression-wrappers': 7.24.6 - '@babel/plugin-transform-function-name@7.25.1(@babel/core@7.24.6)': + '@babel/plugin-transform-function-name@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-compilation-targets': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/traverse': 7.25.3(supports-color@5.5.0) - transitivePeerDependencies: - - supports-color + '@babel/helper-compilation-targets': 7.24.6 + '@babel/helper-function-name': 7.24.6 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-transform-json-strings@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.6) - '@babel/plugin-transform-literals@7.25.2(@babel/core@7.24.6)': + '@babel/plugin-transform-literals@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-transform-logical-assignment-operators@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.6) '@babel/plugin-transform-member-expression-literals@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-transform-modules-amd@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-module-transforms': 7.25.2(@babel/core@7.24.6) - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color + '@babel/helper-module-transforms': 7.24.6(@babel/core@7.24.6) + '@babel/helper-plugin-utils': 7.24.6 - '@babel/plugin-transform-modules-commonjs@7.24.8(@babel/core@7.24.6)': + '@babel/plugin-transform-modules-commonjs@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-module-transforms': 7.25.2(@babel/core@7.24.6) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-simple-access': 7.24.7 - transitivePeerDependencies: - - supports-color + '@babel/helper-module-transforms': 7.24.6(@babel/core@7.24.6) + '@babel/helper-plugin-utils': 7.24.6 + '@babel/helper-simple-access': 7.24.6 '@babel/plugin-transform-modules-systemjs@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 '@babel/helper-hoist-variables': 7.24.6 - '@babel/helper-module-transforms': 7.25.2(@babel/core@7.24.6) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-validator-identifier': 7.25.9 - transitivePeerDependencies: - - supports-color + '@babel/helper-module-transforms': 7.24.6(@babel/core@7.24.6) + '@babel/helper-plugin-utils': 7.24.6 + '@babel/helper-validator-identifier': 7.24.6 '@babel/plugin-transform-modules-umd@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-module-transforms': 7.25.2(@babel/core@7.24.6) - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color + '@babel/helper-module-transforms': 7.24.6(@babel/core@7.24.6) + '@babel/helper-plugin-utils': 7.24.6 - '@babel/plugin-transform-named-capturing-groups-regex@7.24.7(@babel/core@7.24.6)': + '@babel/plugin-transform-named-capturing-groups-regex@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.24.6) - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-create-regexp-features-plugin': 7.24.6(@babel/core@7.24.6) + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-transform-new-target@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-transform-nullish-coalescing-operator@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.6) '@babel/plugin-transform-numeric-separator@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.6) '@babel/plugin-transform-object-rest-spread@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-compilation-targets': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-compilation-targets': 7.24.6 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.6) - '@babel/plugin-transform-parameters': 7.24.7(@babel/core@7.24.6) + '@babel/plugin-transform-parameters': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-object-super@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-replace-supers': 7.25.0(@babel/core@7.24.6) - transitivePeerDependencies: - - supports-color + '@babel/helper-plugin-utils': 7.24.6 + '@babel/helper-replace-supers': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-optional-catch-binding@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.6) '@babel/plugin-transform-optional-chaining@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 + '@babel/helper-plugin-utils': 7.24.6 + '@babel/helper-skip-transparent-expression-wrappers': 7.24.6 '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.6) - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-parameters@7.24.7(@babel/core@7.24.6)': + '@babel/plugin-transform-parameters@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 - '@babel/plugin-transform-private-methods@7.24.7(@babel/core@7.24.6)': + '@babel/plugin-transform-private-methods@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-create-class-features-plugin': 7.25.0(@babel/core@7.24.6) - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color + '@babel/helper-create-class-features-plugin': 7.24.6(@babel/core@7.24.6) + '@babel/helper-plugin-utils': 7.24.6 - '@babel/plugin-transform-private-property-in-object@7.24.7(@babel/core@7.24.6)': + '@babel/plugin-transform-private-property-in-object@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-create-class-features-plugin': 7.25.0(@babel/core@7.24.6) - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-annotate-as-pure': 7.24.6 + '@babel/helper-create-class-features-plugin': 7.24.6(@babel/core@7.24.6) + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.6) - transitivePeerDependencies: - - supports-color '@babel/plugin-transform-property-literals@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-transform-react-constant-elements@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 - '@babel/plugin-transform-react-display-name@7.24.7(@babel/core@7.24.6)': + '@babel/plugin-transform-react-display-name@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-transform-react-jsx-development@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/plugin-transform-react-jsx': 7.25.2(@babel/core@7.24.6) - transitivePeerDependencies: - - supports-color + '@babel/plugin-transform-react-jsx': 7.24.6(@babel/core@7.24.6) - '@babel/plugin-transform-react-jsx-self@7.25.9(@babel/core@7.26.8)': + '@babel/plugin-transform-react-jsx-self@7.25.9(@babel/core@7.26.9)': dependencies: - '@babel/core': 7.26.8 + '@babel/core': 7.26.9 '@babel/helper-plugin-utils': 7.26.5 - '@babel/plugin-transform-react-jsx-source@7.25.9(@babel/core@7.26.8)': + '@babel/plugin-transform-react-jsx-source@7.25.9(@babel/core@7.26.9)': dependencies: - '@babel/core': 7.26.8 + '@babel/core': 7.26.9 '@babel/helper-plugin-utils': 7.26.5 - '@babel/plugin-transform-react-jsx@7.25.2(@babel/core@7.24.6)': + '@babel/plugin-transform-react-jsx@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-module-imports': 7.24.7(supports-color@5.5.0) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-jsx': 7.24.7(@babel/core@7.24.6) - '@babel/types': 7.26.8 - transitivePeerDependencies: - - supports-color + '@babel/helper-annotate-as-pure': 7.24.6 + '@babel/helper-module-imports': 7.24.6 + '@babel/helper-plugin-utils': 7.24.6 + '@babel/plugin-syntax-jsx': 7.24.6(@babel/core@7.24.6) + '@babel/types': 7.24.6 '@babel/plugin-transform-react-pure-annotations@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-annotate-as-pure': 7.24.6 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-transform-regenerator@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 regenerator-transform: 0.15.2 '@babel/plugin-transform-reserved-words@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 - '@babel/plugin-transform-shorthand-properties@7.24.7(@babel/core@7.24.6)': + '@babel/plugin-transform-shorthand-properties@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 - '@babel/plugin-transform-spread@7.24.7(@babel/core@7.24.6)': + '@babel/plugin-transform-spread@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - transitivePeerDependencies: - - supports-color + '@babel/helper-plugin-utils': 7.24.6 + '@babel/helper-skip-transparent-expression-wrappers': 7.24.6 - '@babel/plugin-transform-sticky-regex@7.24.7(@babel/core@7.24.6)': + '@babel/plugin-transform-sticky-regex@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-transform-template-literals@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-transform-typeof-symbol@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 - '@babel/plugin-transform-typescript@7.25.2(@babel/core@7.24.6)': + '@babel/plugin-transform-typescript@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-create-class-features-plugin': 7.25.0(@babel/core@7.24.6) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - '@babel/plugin-syntax-typescript': 7.24.7(@babel/core@7.24.6) - transitivePeerDependencies: - - supports-color + '@babel/helper-annotate-as-pure': 7.24.6 + '@babel/helper-create-class-features-plugin': 7.24.6(@babel/core@7.24.6) + '@babel/helper-plugin-utils': 7.24.6 + '@babel/plugin-syntax-typescript': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-unicode-escapes@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-transform-unicode-property-regex@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.24.6) - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-create-regexp-features-plugin': 7.24.6(@babel/core@7.24.6) + '@babel/helper-plugin-utils': 7.24.6 - '@babel/plugin-transform-unicode-regex@7.24.7(@babel/core@7.24.6)': + '@babel/plugin-transform-unicode-regex@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.24.6) - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-create-regexp-features-plugin': 7.24.6(@babel/core@7.24.6) + '@babel/helper-plugin-utils': 7.24.6 '@babel/plugin-transform-unicode-sets-regex@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.24.6) - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-create-regexp-features-plugin': 7.24.6(@babel/core@7.24.6) + '@babel/helper-plugin-utils': 7.24.6 '@babel/preset-env@7.24.6(@babel/core@7.24.6)': dependencies: - '@babel/compat-data': 7.25.2 + '@babel/compat-data': 7.24.6 '@babel/core': 7.24.6 - '@babel/helper-compilation-targets': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-validator-option': 7.24.8 + '@babel/helper-compilation-targets': 7.24.6 + '@babel/helper-plugin-utils': 7.24.6 + '@babel/helper-validator-option': 7.24.6 '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.24.6(@babel/core@7.24.6) '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.24.6(@babel/core@7.24.6) '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.24.6(@babel/core@7.24.6) @@ -9447,32 +9766,32 @@ snapshots: '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.6) '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.24.6) '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.24.6) - '@babel/plugin-transform-arrow-functions': 7.24.7(@babel/core@7.24.6) + '@babel/plugin-transform-arrow-functions': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-async-generator-functions': 7.24.6(@babel/core@7.24.6) - '@babel/plugin-transform-async-to-generator': 7.24.7(@babel/core@7.24.6) + '@babel/plugin-transform-async-to-generator': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-block-scoped-functions': 7.24.6(@babel/core@7.24.6) - '@babel/plugin-transform-block-scoping': 7.25.0(@babel/core@7.24.6) + '@babel/plugin-transform-block-scoping': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-class-properties': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-class-static-block': 7.24.6(@babel/core@7.24.6) - '@babel/plugin-transform-classes': 7.25.0(@babel/core@7.24.6) - '@babel/plugin-transform-computed-properties': 7.24.7(@babel/core@7.24.6) - '@babel/plugin-transform-destructuring': 7.24.8(@babel/core@7.24.6) + '@babel/plugin-transform-classes': 7.24.6(@babel/core@7.24.6) + '@babel/plugin-transform-computed-properties': 7.24.6(@babel/core@7.24.6) + '@babel/plugin-transform-destructuring': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-dotall-regex': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-duplicate-keys': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-dynamic-import': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-exponentiation-operator': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-export-namespace-from': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-for-of': 7.24.6(@babel/core@7.24.6) - '@babel/plugin-transform-function-name': 7.25.1(@babel/core@7.24.6) + '@babel/plugin-transform-function-name': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-json-strings': 7.24.6(@babel/core@7.24.6) - '@babel/plugin-transform-literals': 7.25.2(@babel/core@7.24.6) + '@babel/plugin-transform-literals': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-logical-assignment-operators': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-member-expression-literals': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-modules-amd': 7.24.6(@babel/core@7.24.6) - '@babel/plugin-transform-modules-commonjs': 7.24.8(@babel/core@7.24.6) + '@babel/plugin-transform-modules-commonjs': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-modules-systemjs': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-modules-umd': 7.24.6(@babel/core@7.24.6) - '@babel/plugin-transform-named-capturing-groups-regex': 7.24.7(@babel/core@7.24.6) + '@babel/plugin-transform-named-capturing-groups-regex': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-new-target': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-nullish-coalescing-operator': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-numeric-separator': 7.24.6(@babel/core@7.24.6) @@ -9480,26 +9799,26 @@ snapshots: '@babel/plugin-transform-object-super': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-optional-catch-binding': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-optional-chaining': 7.24.6(@babel/core@7.24.6) - '@babel/plugin-transform-parameters': 7.24.7(@babel/core@7.24.6) - '@babel/plugin-transform-private-methods': 7.24.7(@babel/core@7.24.6) - '@babel/plugin-transform-private-property-in-object': 7.24.7(@babel/core@7.24.6) + '@babel/plugin-transform-parameters': 7.24.6(@babel/core@7.24.6) + '@babel/plugin-transform-private-methods': 7.24.6(@babel/core@7.24.6) + '@babel/plugin-transform-private-property-in-object': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-property-literals': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-regenerator': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-reserved-words': 7.24.6(@babel/core@7.24.6) - '@babel/plugin-transform-shorthand-properties': 7.24.7(@babel/core@7.24.6) - '@babel/plugin-transform-spread': 7.24.7(@babel/core@7.24.6) - '@babel/plugin-transform-sticky-regex': 7.24.7(@babel/core@7.24.6) + '@babel/plugin-transform-shorthand-properties': 7.24.6(@babel/core@7.24.6) + '@babel/plugin-transform-spread': 7.24.6(@babel/core@7.24.6) + '@babel/plugin-transform-sticky-regex': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-template-literals': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-typeof-symbol': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-unicode-escapes': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-unicode-property-regex': 7.24.6(@babel/core@7.24.6) - '@babel/plugin-transform-unicode-regex': 7.24.7(@babel/core@7.24.6) + '@babel/plugin-transform-unicode-regex': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-unicode-sets-regex': 7.24.6(@babel/core@7.24.6) '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.24.6) babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.24.6) - babel-plugin-polyfill-corejs3: 0.10.6(@babel/core@7.24.6) + babel-plugin-polyfill-corejs3: 0.10.4(@babel/core@7.24.6) babel-plugin-polyfill-regenerator: 0.6.2(@babel/core@7.24.6) - core-js-compat: 3.38.0 + core-js-compat: 3.37.1 semver: 6.3.1 transitivePeerDependencies: - supports-color @@ -9507,76 +9826,87 @@ snapshots: '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/types': 7.26.8 + '@babel/helper-plugin-utils': 7.24.6 + '@babel/types': 7.24.6 esutils: 2.0.3 '@babel/preset-react@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-validator-option': 7.24.8 - '@babel/plugin-transform-react-display-name': 7.24.7(@babel/core@7.24.6) - '@babel/plugin-transform-react-jsx': 7.25.2(@babel/core@7.24.6) + '@babel/helper-plugin-utils': 7.24.6 + '@babel/helper-validator-option': 7.24.6 + '@babel/plugin-transform-react-display-name': 7.24.6(@babel/core@7.24.6) + '@babel/plugin-transform-react-jsx': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-react-jsx-development': 7.24.6(@babel/core@7.24.6) '@babel/plugin-transform-react-pure-annotations': 7.24.6(@babel/core@7.24.6) - transitivePeerDependencies: - - supports-color - '@babel/preset-typescript@7.24.7(@babel/core@7.24.6)': + '@babel/preset-typescript@7.24.6(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-validator-option': 7.24.8 - '@babel/plugin-syntax-jsx': 7.24.7(@babel/core@7.24.6) - '@babel/plugin-transform-modules-commonjs': 7.24.8(@babel/core@7.24.6) - '@babel/plugin-transform-typescript': 7.25.2(@babel/core@7.24.6) - transitivePeerDependencies: - - supports-color + '@babel/helper-plugin-utils': 7.24.6 + '@babel/helper-validator-option': 7.24.6 + '@babel/plugin-syntax-jsx': 7.24.6(@babel/core@7.24.6) + '@babel/plugin-transform-modules-commonjs': 7.24.6(@babel/core@7.24.6) + '@babel/plugin-transform-typescript': 7.24.6(@babel/core@7.24.6) '@babel/regjsgen@0.8.0': {} - '@babel/runtime@7.25.0': + '@babel/runtime@7.24.6': dependencies: regenerator-runtime: 0.14.1 - '@babel/template@7.25.0': + '@babel/template@7.24.6': dependencies: - '@babel/code-frame': 7.26.2 - '@babel/parser': 7.26.8 - '@babel/types': 7.26.8 + '@babel/code-frame': 7.25.7 + '@babel/parser': 7.24.6 + '@babel/types': 7.24.6 - '@babel/template@7.26.8': + '@babel/template@7.26.9': dependencies: '@babel/code-frame': 7.26.2 - '@babel/parser': 7.26.8 - '@babel/types': 7.26.8 + '@babel/parser': 7.26.9 + '@babel/types': 7.26.9 - '@babel/traverse@7.25.3(supports-color@5.5.0)': + '@babel/traverse@7.24.6(supports-color@5.5.0)': dependencies: - '@babel/code-frame': 7.24.7 - '@babel/generator': 7.25.0 - '@babel/parser': 7.26.8 - '@babel/template': 7.25.0 - '@babel/types': 7.26.8 - debug: 4.4.0(supports-color@5.5.0) + '@babel/code-frame': 7.24.6 + '@babel/generator': 7.24.6 + '@babel/helper-environment-visitor': 7.24.6 + '@babel/helper-function-name': 7.24.6 + '@babel/helper-hoist-variables': 7.24.6 + '@babel/helper-split-export-declaration': 7.24.6 + '@babel/parser': 7.24.6 + '@babel/types': 7.24.6 + debug: 4.3.4(supports-color@5.5.0) globals: 11.12.0 transitivePeerDependencies: - supports-color - '@babel/traverse@7.26.8': + '@babel/traverse@7.26.9': dependencies: '@babel/code-frame': 7.26.2 - '@babel/generator': 7.26.8 - '@babel/parser': 7.26.8 - '@babel/template': 7.26.8 - '@babel/types': 7.26.8 - debug: 4.4.0(supports-color@5.5.0) + '@babel/generator': 7.26.9 + '@babel/parser': 7.26.9 + '@babel/template': 7.26.9 + '@babel/types': 7.26.9 + debug: 4.3.7 globals: 11.12.0 transitivePeerDependencies: - supports-color - '@babel/types@7.26.8': + '@babel/types@7.24.6': + dependencies: + '@babel/helper-string-parser': 7.24.6 + '@babel/helper-validator-identifier': 7.24.6 + to-fast-properties: 2.0.0 + + '@babel/types@7.25.8': + dependencies: + '@babel/helper-string-parser': 7.25.7 + '@babel/helper-validator-identifier': 7.25.7 + to-fast-properties: 2.0.0 + + '@babel/types@7.26.9': dependencies: '@babel/helper-string-parser': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 @@ -9596,6 +9926,35 @@ snapshots: '@types/tough-cookie': 4.0.5 tough-cookie: 4.1.4 + '@celo/base@6.1.0': {} + + '@celo/utils@6.0.1': + dependencies: + '@celo/base': 6.1.0 + '@ethereumjs/util': 8.0.5 + '@types/elliptic': 6.4.18 + '@types/node': 18.19.76 + bignumber.js: 9.1.2 + elliptic: 6.5.5 + ethereum-cryptography: 1.2.0 + fp-ts: 2.1.1 + io-ts: 2.0.1(fp-ts@2.1.1) + rlp: 2.2.7 + web3-eth-abi: 1.10.4 + web3-utils: 1.10.4 + + '@chainsafe/as-sha256@0.3.1': {} + + '@chainsafe/persistent-merkle-tree@0.4.2': + dependencies: + '@chainsafe/as-sha256': 0.3.1 + + '@chainsafe/ssz@0.9.4': + dependencies: + '@chainsafe/as-sha256': 0.3.1 + '@chainsafe/persistent-merkle-tree': 0.4.2 + case: 1.6.3 + '@cloudflare/kv-asset-handler@0.3.2': dependencies: mime: 3.0.0 @@ -9626,7 +9985,7 @@ snapshots: eth-json-rpc-filters: 6.0.1 eventemitter3: 5.0.1 keccak: 3.0.4 - preact: 10.23.1 + preact: 10.22.0 sha.js: 2.4.11 transitivePeerDependencies: - supports-color @@ -9637,9 +9996,15 @@ snapshots: clsx: 1.2.1 eventemitter3: 5.0.1 keccak: 3.0.4 - preact: 10.23.1 + preact: 10.22.0 sha.js: 2.4.11 + '@cosmjs/encoding@0.32.4': + dependencies: + base64-js: 1.5.1 + bech32: 1.1.4 + readonly-date: 1.0.0 + '@cspotcode/source-map-support@0.8.1': dependencies: '@jridgewell/trace-mapping': 0.3.9 @@ -9683,6 +10048,8 @@ snapshots: '@emotion/unitless@0.7.5': {} + '@emotion/unitless@0.8.1': {} + '@ensdomains/address-encoder@0.1.9': dependencies: bech32: 1.1.4 @@ -9695,15 +10062,15 @@ snapshots: '@ensdomains/address-encoder@1.0.0-rc.3': dependencies: - '@noble/curves': 1.6.0 + '@noble/curves': 1.4.0 '@noble/hashes': 1.5.0 - '@scure/base': 1.1.9 + '@scure/base': 1.1.6 '@ensdomains/address-encoder@1.1.1': dependencies: - '@noble/curves': 1.6.0 - '@noble/hashes': 1.5.0 - '@scure/base': 1.1.9 + '@noble/curves': 1.4.0 + '@noble/hashes': 1.4.0 + '@scure/base': 1.1.6 '@ensdomains/buffer@0.1.1': {} @@ -9715,8 +10082,8 @@ snapshots: '@ensdomains/content-hash@3.1.0-rc.1': dependencies: '@ensdomains/address-encoder': 1.0.0-rc.3 - '@noble/curves': 1.6.0 - '@scure/base': 1.1.9 + '@noble/curves': 1.4.0 + '@scure/base': 1.1.6 '@ensdomains/dnsprovejs@0.5.1': dependencies: @@ -9736,7 +10103,7 @@ snapshots: cli-progress: 3.12.0 commander: 13.1.0 concurrently: 9.1.2 - docker-compose: 1.1.0 + docker-compose: 1.1.1 dotenv: 16.4.7 dunai: 0.0.0-dev.2 js-yaml: 4.1.0 @@ -9757,7 +10124,7 @@ snapshots: '@ensdomains/ensjs@2.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10)': dependencies: - '@babel/runtime': 7.25.0 + '@babel/runtime': 7.24.6 '@ensdomains/address-encoder': 0.1.9 '@ensdomains/ens': 0.4.5 '@ensdomains/resolver': 0.2.4 @@ -9775,7 +10142,7 @@ snapshots: '@ensdomains/address-encoder': 1.1.1 '@ensdomains/content-hash': 3.1.0-rc.1 '@ensdomains/dnsprovejs': 0.5.1 - abitype: 1.0.6(typescript@5.4.5)(zod@3.23.8) + abitype: 1.0.5(typescript@5.4.5)(zod@3.23.8) dns-packet: 5.6.1 graphql: 16.8.1 graphql-request: 6.1.0(graphql@16.8.1) @@ -9789,8 +10156,8 @@ snapshots: '@ensdomains/headless-web3-provider@1.0.8(viem@2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8))': dependencies: - '@metamask/json-rpc-engine': 9.0.2 - '@metamask/utils': 9.2.0 + '@metamask/json-rpc-engine': 9.0.3 + '@metamask/utils': 9.3.0 viem: 2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8) transitivePeerDependencies: - supports-color @@ -9967,7 +10334,7 @@ snapshots: '@eslint/eslintrc@2.1.4': dependencies: ajv: 6.12.6 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.3.4(supports-color@5.5.0) espree: 9.6.1 globals: 13.24.0 ignore: 5.3.1 @@ -9999,7 +10366,7 @@ snapshots: '@ethereumjs/tx@3.3.2': dependencies: - '@ethereumjs/common': 2.6.5 + '@ethereumjs/common': 2.5.0 ethereumjs-util: 7.1.5 '@ethereumjs/tx@3.5.2': @@ -10014,6 +10381,12 @@ snapshots: '@ethereumjs/util': 8.1.0 ethereum-cryptography: 2.1.3 + '@ethereumjs/util@8.0.5': + dependencies: + '@chainsafe/ssz': 0.9.4 + '@ethereumjs/rlp': 4.0.1 + ethereum-cryptography: 1.2.0 + '@ethereumjs/util@8.1.0': dependencies: '@ethereumjs/rlp': 4.0.1 @@ -10290,7 +10663,7 @@ snapshots: '@humanwhocodes/config-array@0.11.14': dependencies: '@humanwhocodes/object-schema': 2.0.3 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.3.4(supports-color@5.5.0) minimatch: 3.1.2 transitivePeerDependencies: - supports-color @@ -10302,25 +10675,25 @@ snapshots: '@ianvs/prettier-plugin-sort-imports@4.2.1(prettier@3.0.3)': dependencies: '@babel/core': 7.24.6 - '@babel/generator': 7.25.0 - '@babel/parser': 7.26.8 - '@babel/traverse': 7.25.3(supports-color@5.5.0) - '@babel/types': 7.26.8 + '@babel/generator': 7.24.6 + '@babel/parser': 7.24.6 + '@babel/traverse': 7.24.6(supports-color@5.5.0) + '@babel/types': 7.24.6 prettier: 3.0.3 - semver: 7.6.3 + semver: 7.6.2 transitivePeerDependencies: - supports-color - '@inquirer/confirm@5.1.0(@types/node@20.17.17)': + '@inquirer/confirm@5.1.3(@types/node@20.17.19)': dependencies: - '@inquirer/core': 10.1.1(@types/node@20.17.17) - '@inquirer/type': 3.0.1(@types/node@20.17.17) - '@types/node': 20.17.17 + '@inquirer/core': 10.1.4(@types/node@20.17.19) + '@inquirer/type': 3.0.2(@types/node@20.17.19) + '@types/node': 20.17.19 - '@inquirer/core@10.1.1(@types/node@20.17.17)': + '@inquirer/core@10.1.4(@types/node@20.17.19)': dependencies: - '@inquirer/figures': 1.0.8 - '@inquirer/type': 3.0.1(@types/node@20.17.17) + '@inquirer/figures': 1.0.9 + '@inquirer/type': 3.0.2(@types/node@20.17.19) ansi-escapes: 4.3.2 cli-width: 4.1.0 mute-stream: 2.0.0 @@ -10331,11 +10704,11 @@ snapshots: transitivePeerDependencies: - '@types/node' - '@inquirer/figures@1.0.8': {} + '@inquirer/figures@1.0.9': {} - '@inquirer/type@3.0.1(@types/node@20.17.17)': + '@inquirer/type@3.0.2(@types/node@20.17.19)': dependencies: - '@types/node': 20.17.17 + '@types/node': 20.17.19 '@isaacs/cliui@8.0.2': dependencies: @@ -10357,33 +10730,35 @@ snapshots: '@jest/schemas': 29.6.3 '@types/istanbul-lib-coverage': 2.0.6 '@types/istanbul-reports': 3.0.4 - '@types/node': 20.17.17 - '@types/yargs': 17.0.33 + '@types/node': 20.17.19 + '@types/yargs': 17.0.32 chalk: 4.1.2 '@jridgewell/gen-mapping@0.3.5': dependencies: '@jridgewell/set-array': 1.2.1 - '@jridgewell/sourcemap-codec': 1.5.0 + '@jridgewell/sourcemap-codec': 1.4.15 '@jridgewell/trace-mapping': 0.3.25 '@jridgewell/resolve-uri@3.1.2': {} '@jridgewell/set-array@1.2.1': {} + '@jridgewell/sourcemap-codec@1.4.15': {} + '@jridgewell/sourcemap-codec@1.5.0': {} '@jridgewell/trace-mapping@0.3.25': dependencies: '@jridgewell/resolve-uri': 3.1.2 - '@jridgewell/sourcemap-codec': 1.5.0 + '@jridgewell/sourcemap-codec': 1.4.15 '@jridgewell/trace-mapping@0.3.9': dependencies: '@jridgewell/resolve-uri': 3.1.2 - '@jridgewell/sourcemap-codec': 1.5.0 + '@jridgewell/sourcemap-codec': 1.4.15 - '@keyv/serialize@1.0.2': + '@keyv/serialize@1.0.3': dependencies: buffer: 6.0.3 @@ -10413,7 +10788,7 @@ snapshots: '@metamask/json-rpc-engine@7.3.3': dependencies: - '@metamask/rpc-errors': 6.3.1 + '@metamask/rpc-errors': 6.2.1 '@metamask/safe-event-emitter': 3.1.1 '@metamask/utils': 8.4.0 transitivePeerDependencies: @@ -10421,17 +10796,17 @@ snapshots: '@metamask/json-rpc-engine@8.0.2': dependencies: - '@metamask/rpc-errors': 6.3.1 + '@metamask/rpc-errors': 6.2.1 '@metamask/safe-event-emitter': 3.1.1 '@metamask/utils': 8.4.0 transitivePeerDependencies: - supports-color - '@metamask/json-rpc-engine@9.0.2': + '@metamask/json-rpc-engine@9.0.3': dependencies: - '@metamask/rpc-errors': 6.3.1 + '@metamask/rpc-errors': 6.4.0 '@metamask/safe-event-emitter': 3.1.1 - '@metamask/utils': 9.2.0 + '@metamask/utils': 9.3.0 transitivePeerDependencies: - supports-color @@ -10464,7 +10839,7 @@ snapshots: dependencies: '@metamask/json-rpc-engine': 7.3.3 '@metamask/object-multiplex': 2.0.0 - '@metamask/rpc-errors': 6.3.1 + '@metamask/rpc-errors': 6.2.1 '@metamask/safe-event-emitter': 3.1.1 '@metamask/utils': 8.4.0 detect-browser: 5.3.0 @@ -10482,7 +10857,7 @@ snapshots: '@metamask/json-rpc-engine': 8.0.2 '@metamask/json-rpc-middleware-stream': 7.0.2 '@metamask/object-multiplex': 2.0.0 - '@metamask/rpc-errors': 6.3.1 + '@metamask/rpc-errors': 6.2.1 '@metamask/safe-event-emitter': 3.1.1 '@metamask/utils': 8.4.0 detect-browser: 5.3.0 @@ -10494,9 +10869,16 @@ snapshots: transitivePeerDependencies: - supports-color - '@metamask/rpc-errors@6.3.1': + '@metamask/rpc-errors@6.2.1': + dependencies: + '@metamask/utils': 8.4.0 + fast-safe-stringify: 2.1.1 + transitivePeerDependencies: + - supports-color + + '@metamask/rpc-errors@6.4.0': dependencies: - '@metamask/utils': 9.2.0 + '@metamask/utils': 9.3.0 fast-safe-stringify: 2.1.1 transitivePeerDependencies: - supports-color @@ -10510,7 +10892,7 @@ snapshots: bufferutil: 4.0.8 cross-fetch: 4.0.0 date-fns: 2.30.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.3.7 eciesjs: 0.3.18 eventemitter2: 6.4.9 readable-stream: 3.6.2 @@ -10537,7 +10919,7 @@ snapshots: '@types/dom-screen-wake-lock': 1.0.3 bowser: 2.11.0 cross-fetch: 4.0.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.3.7 eciesjs: 0.3.18 eth-rpc-errors: 4.0.3 eventemitter2: 6.4.9 @@ -10569,8 +10951,8 @@ snapshots: dependencies: '@ethereumjs/tx': 4.2.0 '@types/debug': 4.1.12 - debug: 4.4.0(supports-color@5.5.0) - semver: 7.6.3 + debug: 4.3.7 + semver: 7.6.2 superstruct: 1.0.4 transitivePeerDependencies: - supports-color @@ -10578,37 +10960,41 @@ snapshots: '@metamask/utils@8.4.0': dependencies: '@ethereumjs/tx': 4.2.0 - '@noble/hashes': 1.5.0 - '@scure/base': 1.1.9 + '@noble/hashes': 1.4.0 + '@scure/base': 1.1.6 '@types/debug': 4.1.12 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.3.7 pony-cause: 2.1.11 - semver: 7.6.3 + semver: 7.6.2 superstruct: 1.0.4 uuid: 9.0.1 transitivePeerDependencies: - supports-color - '@metamask/utils@9.2.0': + '@metamask/utils@9.3.0': dependencies: '@ethereumjs/tx': 4.2.0 '@metamask/superstruct': 3.1.0 - '@noble/hashes': 1.5.0 - '@scure/base': 1.1.9 + '@noble/hashes': 1.4.0 + '@scure/base': 1.1.6 '@types/debug': 4.1.12 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.3.4(supports-color@5.5.0) pony-cause: 2.1.11 - semver: 7.6.3 + semver: 7.6.2 uuid: 9.0.1 transitivePeerDependencies: - supports-color + '@moonpay/moonpay-react@1.8.8(react@18.3.1)': + dependencies: + react: 18.3.1 + '@motionone/animation@10.17.0': dependencies: '@motionone/easing': 10.17.0 '@motionone/types': 10.17.0 '@motionone/utils': 10.17.0 - tslib: 2.6.3 + tslib: 2.6.2 '@motionone/dom@10.17.0': dependencies: @@ -10617,23 +11003,23 @@ snapshots: '@motionone/types': 10.17.0 '@motionone/utils': 10.17.0 hey-listen: 1.0.8 - tslib: 2.6.3 + tslib: 2.6.2 '@motionone/easing@10.17.0': dependencies: '@motionone/utils': 10.17.0 - tslib: 2.6.3 + tslib: 2.6.2 '@motionone/generators@10.17.0': dependencies: '@motionone/types': 10.17.0 '@motionone/utils': 10.17.0 - tslib: 2.6.3 + tslib: 2.6.2 '@motionone/svelte@10.16.4': dependencies: '@motionone/dom': 10.17.0 - tslib: 2.6.3 + tslib: 2.6.2 '@motionone/types@10.17.0': {} @@ -10641,14 +11027,14 @@ snapshots: dependencies: '@motionone/types': 10.17.0 hey-listen: 1.0.8 - tslib: 2.6.3 + tslib: 2.6.2 '@motionone/vue@10.16.4': dependencies: '@motionone/dom': 10.17.0 - tslib: 2.6.3 + tslib: 2.6.2 - '@mswjs/interceptors@0.37.3': + '@mswjs/interceptors@0.37.5': dependencies: '@open-draft/deferred-promise': 2.2.0 '@open-draft/logger': 0.3.0 @@ -10710,10 +11096,6 @@ snapshots: dependencies: '@noble/hashes': 1.4.0 - '@noble/curves@1.6.0': - dependencies: - '@noble/hashes': 1.5.0 - '@noble/hashes@1.2.0': {} '@noble/hashes@1.3.3': {} @@ -10900,7 +11282,7 @@ snapshots: '@parcel/watcher-wasm@2.4.1': dependencies: is-glob: 4.0.3 - micromatch: 4.0.8 + micromatch: 4.0.7 '@parcel/watcher-win32-arm64@2.4.1': optional: true @@ -10915,7 +11297,7 @@ snapshots: dependencies: detect-libc: 1.0.3 is-glob: 4.0.3 - micromatch: 4.0.8 + micromatch: 4.0.7 node-addon-api: 7.1.0 optionalDependencies: '@parcel/watcher-android-arm64': 2.4.1 @@ -10936,28 +11318,15 @@ snapshots: '@pkgr/core@0.1.1': {} - '@playwright/test@1.48.2': + '@playwright/test@1.49.0': dependencies: - playwright: 1.48.2 + playwright: 1.49.0 '@polka/url@1.0.0-next.25': {} - '@rainbow-me/rainbowkit@2.1.2(@tanstack/react-query@5.22.2(react@18.3.1))(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(viem@2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8))(wagmi@2.12.4(@tanstack/query-core@5.22.2)(@tanstack/react-query@5.22.2(react@18.3.1))(@types/react@18.3.12)(bufferutil@4.0.8)(immer@9.0.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.18.0)(typescript@5.4.5)(utf-8-validate@5.0.10)(viem@2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8))': + '@ramp-network/ramp-instant-sdk@4.0.7': dependencies: - '@tanstack/react-query': 5.22.2(react@18.3.1) - '@vanilla-extract/css': 1.14.0 - '@vanilla-extract/dynamic': 2.1.0 - '@vanilla-extract/sprinkles': 1.6.1(@vanilla-extract/css@1.14.0) - clsx: 2.1.0 - qrcode: 1.5.3 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - react-remove-scroll: 2.5.7(@types/react@18.3.12)(react@18.3.1) - ua-parser-js: 1.0.37 - viem: 2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8) - wagmi: 2.12.4(@tanstack/query-core@5.22.2)(@tanstack/react-query@5.22.2(react@18.3.1))(@types/react@18.3.12)(bufferutil@4.0.8)(immer@9.0.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.18.0)(typescript@5.4.5)(utf-8-validate@5.0.10)(viem@2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8) - transitivePeerDependencies: - - '@types/react' + body-scroll-lock: 3.1.5 '@rollup/plugin-commonjs@24.0.0(rollup@2.78.0)': dependencies: @@ -11050,40 +11419,40 @@ snapshots: '@safe-global/safe-gateway-typescript-sdk@3.21.1': {} - '@scure/base@1.1.9': {} + '@scure/base@1.1.6': {} '@scure/bip32@1.1.5': dependencies: '@noble/hashes': 1.2.0 '@noble/secp256k1': 1.7.1 - '@scure/base': 1.1.9 + '@scure/base': 1.1.6 '@scure/bip32@1.3.3': dependencies: '@noble/curves': 1.3.0 '@noble/hashes': 1.3.3 - '@scure/base': 1.1.9 + '@scure/base': 1.1.6 '@scure/bip32@1.4.0': dependencies: '@noble/curves': 1.4.0 '@noble/hashes': 1.4.0 - '@scure/base': 1.1.9 + '@scure/base': 1.1.6 '@scure/bip39@1.1.1': dependencies: '@noble/hashes': 1.2.0 - '@scure/base': 1.1.9 + '@scure/base': 1.1.6 '@scure/bip39@1.2.2': dependencies: '@noble/hashes': 1.3.3 - '@scure/base': 1.1.9 + '@scure/base': 1.1.6 '@scure/bip39@1.3.0': dependencies: '@noble/hashes': 1.4.0 - '@scure/base': 1.1.9 + '@scure/base': 1.1.6 '@sentry/browser@7.43.0': dependencies: @@ -11138,7 +11507,7 @@ snapshots: '@sentry/types': 5.30.0 tslib: 1.14.1 - '@sentry/nextjs@7.43.0(next@13.5.8(@babel/core@7.26.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)': + '@sentry/nextjs@7.43.0(next@13.5.8(@babel/core@7.26.9)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)': dependencies: '@rollup/plugin-commonjs': 24.0.0(rollup@2.78.0) '@sentry/core': 7.43.0 @@ -11150,7 +11519,7 @@ snapshots: '@sentry/utils': 7.43.0 '@sentry/webpack-plugin': 1.20.0 chalk: 3.0.0 - next: 13.5.8(@babel/core@7.26.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + next: 13.5.8(@babel/core@7.26.9)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 rollup: 2.78.0 stacktrace-parser: 0.1.10 @@ -11275,10 +11644,20 @@ snapshots: '@socketregistry/array.prototype.tosorted@1.0.5': {} + '@socketregistry/define-properties@1.0.5': {} + + '@socketregistry/es-define-property@1.0.5': {} + '@socketregistry/es-iterator-helpers@1.0.7': {} '@socketregistry/es6-symbol@1.0.5': {} + '@socketregistry/function-bind@1.0.5': {} + + '@socketregistry/gopd@1.0.5': {} + + '@socketregistry/has-symbols@1.0.5': {} + '@socketregistry/hasown@1.0.5': {} '@socketregistry/indent-string@1.0.6': {} @@ -11299,6 +11678,8 @@ snapshots: '@socketregistry/object-assign@1.0.3': {} + '@socketregistry/object-is@1.0.5': {} + '@socketregistry/object.assign@1.0.5': {} '@socketregistry/object.entries@1.0.5': {} @@ -11319,6 +11700,8 @@ snapshots: '@socketregistry/safer-buffer@1.0.5': {} + '@socketregistry/set-function-length@1.0.5': {} + '@socketregistry/side-channel@1.0.6': {} '@socketregistry/string.prototype.matchall@1.0.5': {} @@ -11411,6 +11794,14 @@ snapshots: '@stablelib/random': 1.0.2 '@stablelib/wipe': 1.0.1 + '@stencil/core@4.26.0': {} + + '@stripe/crypto@0.0.4(@stripe/stripe-js@3.5.0)': + dependencies: + '@stripe/stripe-js': 3.5.0 + + '@stripe/stripe-js@3.5.0': {} + '@svgr/babel-plugin-add-jsx-attribute@8.0.0(@babel/core@7.24.6)': dependencies: '@babel/core': 7.24.6 @@ -11468,7 +11859,7 @@ snapshots: '@svgr/hast-util-to-babel-ast@8.0.0': dependencies: - '@babel/types': 7.26.8 + '@babel/types': 7.24.6 entities: 4.5.0 '@svgr/plugin-jsx@8.1.0(@svgr/core@8.1.0(typescript@5.4.5))': @@ -11496,7 +11887,7 @@ snapshots: '@babel/plugin-transform-react-constant-elements': 7.24.6(@babel/core@7.24.6) '@babel/preset-env': 7.24.6(@babel/core@7.24.6) '@babel/preset-react': 7.24.6(@babel/core@7.24.6) - '@babel/preset-typescript': 7.24.7(@babel/core@7.24.6) + '@babel/preset-typescript': 7.24.6(@babel/core@7.24.6) '@svgr/core': 8.1.0(typescript@5.4.5) '@svgr/plugin-jsx': 8.1.0(@svgr/core@8.1.0(typescript@5.4.5)) '@svgr/plugin-svgo': 8.1.0(@svgr/core@8.1.0(typescript@5.4.5))(typescript@5.4.5) @@ -11506,7 +11897,7 @@ snapshots: '@swc/helpers@0.5.2': dependencies: - tslib: 2.6.3 + tslib: 2.6.2 '@szmarczak/http-timer@4.0.6': dependencies: @@ -11518,7 +11909,7 @@ snapshots: '@tanstack/query-core@5.22.2': {} - '@tanstack/query-devtools@5.58.0': {} + '@tanstack/query-devtools@5.61.4': {} '@tanstack/query-persist-client-core@5.22.2': dependencies: @@ -11529,9 +11920,9 @@ snapshots: '@tanstack/query-core': 5.22.2 '@tanstack/query-persist-client-core': 5.22.2 - '@tanstack/react-query-devtools@5.59.0(@tanstack/react-query@5.22.2(react@18.3.1))(react@18.3.1)': + '@tanstack/react-query-devtools@5.62.1(@tanstack/react-query@5.22.2(react@18.3.1))(react@18.3.1)': dependencies: - '@tanstack/query-devtools': 5.58.0 + '@tanstack/query-devtools': 5.61.4 '@tanstack/react-query': 5.22.2(react@18.3.1) react: 18.3.1 @@ -11548,8 +11939,8 @@ snapshots: '@testing-library/dom@10.4.0': dependencies: - '@babel/code-frame': 7.26.2 - '@babel/runtime': 7.25.0 + '@babel/code-frame': 7.25.7 + '@babel/runtime': 7.24.6 '@types/aria-query': 5.0.4 aria-query: 5.3.0 chalk: 4.1.2 @@ -11557,10 +11948,10 @@ snapshots: lz-string: 1.5.0 pretty-format: 27.5.1 - '@testing-library/jest-dom@6.4.5(vitest@3.0.5(@types/debug@4.1.12)(@types/node@20.17.17)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.17)(typescript@5.4.5)))': + '@testing-library/jest-dom@6.4.5(vitest@3.0.6(@types/debug@4.1.12)(@types/node@20.17.19)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.19)(typescript@5.4.5)))': dependencies: '@adobe/css-tools': 4.3.3 - '@babel/runtime': 7.25.0 + '@babel/runtime': 7.24.6 aria-query: 5.3.0 chalk: 3.0.0 css.escape: 1.5.1 @@ -11568,11 +11959,11 @@ snapshots: lodash: 4.17.21 redent: 3.0.0 optionalDependencies: - vitest: 3.0.5(@types/debug@4.1.12)(@types/node@20.17.17)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.17)(typescript@5.4.5)) + vitest: 3.0.6(@types/debug@4.1.12)(@types/node@20.17.19)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.19)(typescript@5.4.5)) '@testing-library/react-hooks@8.0.1(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@babel/runtime': 7.25.0 + '@babel/runtime': 7.24.6 react: 18.3.1 react-error-boundary: 3.1.4(react@18.3.1) optionalDependencies: @@ -11581,7 +11972,7 @@ snapshots: '@testing-library/react@16.2.0(@testing-library/dom@10.4.0)(@types/react-dom@18.3.0)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@babel/runtime': 7.25.0 + '@babel/runtime': 7.24.6 '@testing-library/dom': 10.4.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -11608,9 +11999,9 @@ snapshots: big.js: 6.2.1 bn.js: 5.2.1 cbor: 5.2.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.3.7 lodash: 4.17.21 - semver: 7.6.3 + semver: 7.6.2 utf8: 3.0.0 web3-utils: 1.10.0 transitivePeerDependencies: @@ -11624,7 +12015,7 @@ snapshots: '@truffle/contract-schema@3.4.16': dependencies: ajv: 6.12.6 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.3.7 transitivePeerDependencies: - supports-color @@ -11637,7 +12028,7 @@ snapshots: '@truffle/error': 0.2.2 '@truffle/interface-adapter': 0.5.37(bufferutil@4.0.8)(utf-8-validate@5.0.10) bignumber.js: 7.2.1 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.3.4(supports-color@5.5.0) ethers: 4.0.49 web3: 1.10.0(bufferutil@4.0.8)(utf-8-validate@5.0.10) web3-core-helpers: 1.10.0 @@ -11656,7 +12047,7 @@ snapshots: '@trufflesuite/chromafi': 3.0.0 bn.js: 5.2.1 chalk: 2.4.2 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.3.7 highlightjs-solidity: 2.0.6 transitivePeerDependencies: - supports-color @@ -11699,38 +12090,38 @@ snapshots: '@types/babel__core@7.20.5': dependencies: - '@babel/parser': 7.26.8 - '@babel/types': 7.26.8 + '@babel/parser': 7.25.8 + '@babel/types': 7.25.8 '@types/babel__generator': 7.6.8 '@types/babel__template': 7.4.4 '@types/babel__traverse': 7.20.6 '@types/babel__generator@7.6.8': dependencies: - '@babel/types': 7.26.8 + '@babel/types': 7.25.8 '@types/babel__template@7.4.4': dependencies: - '@babel/parser': 7.26.8 - '@babel/types': 7.26.8 + '@babel/parser': 7.25.8 + '@babel/types': 7.25.8 '@types/babel__traverse@7.20.6': dependencies: - '@babel/types': 7.26.8 + '@babel/types': 7.25.8 '@types/bn.js@4.11.6': dependencies: - '@types/node': 20.17.17 + '@types/node': 20.17.19 '@types/bn.js@5.1.5': dependencies: - '@types/node': 20.17.17 + '@types/node': 20.17.19 '@types/cacheable-request@6.0.3': dependencies: '@types/http-cache-semantics': 4.0.4 '@types/keyv': 3.1.4 - '@types/node': 20.17.17 + '@types/node': 20.17.19 '@types/responselike': 1.0.3 '@types/cookie@0.6.0': {} @@ -11741,9 +12132,11 @@ snapshots: '@types/dom-screen-wake-lock@1.0.3': {} - '@types/estree@1.0.5': {} + '@types/elliptic@6.4.18': + dependencies: + '@types/bn.js': 5.1.5 - '@types/gensync@1.0.4': {} + '@types/estree@1.0.5': {} '@types/hoist-non-react-statics@3.3.5': dependencies: @@ -11770,7 +12163,7 @@ snapshots: '@types/keyv@3.1.4': dependencies: - '@types/node': 20.17.17 + '@types/node': 20.17.19 '@types/lru-cache@5.1.1': {} @@ -11778,13 +12171,17 @@ snapshots: '@types/node-forge@1.3.11': dependencies: - '@types/node': 20.17.17 + '@types/node': 20.17.19 '@types/node@12.20.55': {} '@types/node@17.0.45': {} - '@types/node@20.17.17': + '@types/node@18.19.76': + dependencies: + undici-types: 5.26.5 + + '@types/node@20.17.19': dependencies: undici-types: 6.19.8 @@ -11792,7 +12189,7 @@ snapshots: '@types/pbkdf2@3.1.2': dependencies: - '@types/node': 20.17.17 + '@types/node': 20.17.19 '@types/prettier@2.7.3': {} @@ -11811,15 +12208,15 @@ snapshots: '@types/responselike@1.0.3': dependencies: - '@types/node': 20.17.17 + '@types/node': 20.17.19 '@types/sax@1.2.7': dependencies: - '@types/node': 20.17.17 + '@types/node': 20.17.19 '@types/secp256k1@4.0.6': dependencies: - '@types/node': 20.17.17 + '@types/node': 20.17.19 '@types/semver@7.5.8': {} @@ -11831,17 +12228,19 @@ snapshots: '@types/react': 18.3.12 csstype: 3.1.3 + '@types/stylis@4.2.5': {} + '@types/tough-cookie@4.0.5': {} '@types/trusted-types@2.0.7': {} '@types/ws@8.5.10': dependencies: - '@types/node': 20.17.17 + '@types/node': 20.17.19 '@types/yargs-parser@21.0.3': {} - '@types/yargs@17.0.33': + '@types/yargs@17.0.32': dependencies: '@types/yargs-parser': 21.0.3 @@ -11853,12 +12252,12 @@ snapshots: '@typescript-eslint/type-utils': 6.21.0(eslint@8.50.0)(typescript@5.4.5) '@typescript-eslint/utils': 6.21.0(eslint@8.50.0)(typescript@5.4.5) '@typescript-eslint/visitor-keys': 6.21.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.3.4(supports-color@5.5.0) eslint: 8.50.0 graphemer: 1.4.0 ignore: 5.3.1 natural-compare: 1.4.0 - semver: 7.6.3 + semver: 7.6.2 ts-api-utils: 1.3.0(typescript@5.4.5) optionalDependencies: typescript: 5.4.5 @@ -11871,7 +12270,7 @@ snapshots: '@typescript-eslint/types': 6.21.0 '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.4.5) '@typescript-eslint/visitor-keys': 6.21.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.3.4(supports-color@5.5.0) eslint: 8.50.0 optionalDependencies: typescript: 5.4.5 @@ -11897,7 +12296,7 @@ snapshots: dependencies: '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.4.5) '@typescript-eslint/utils': 6.21.0(eslint@8.50.0)(typescript@5.4.5) - debug: 4.4.0(supports-color@5.5.0) + debug: 4.3.4(supports-color@5.5.0) eslint: 8.50.0 ts-api-utils: 1.3.0(typescript@5.4.5) optionalDependencies: @@ -11915,10 +12314,10 @@ snapshots: dependencies: '@typescript-eslint/types': 5.62.0 '@typescript-eslint/visitor-keys': 5.62.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.3.7 globby: 11.1.0 is-glob: 4.0.3 - semver: 7.6.3 + semver: 7.6.2 tsutils: 3.21.0(typescript@5.4.5) optionalDependencies: typescript: 5.4.5 @@ -11929,11 +12328,11 @@ snapshots: dependencies: '@typescript-eslint/types': 6.21.0 '@typescript-eslint/visitor-keys': 6.21.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.3.4(supports-color@5.5.0) globby: 11.1.0 is-glob: 4.0.3 minimatch: 9.0.3 - semver: 7.6.3 + semver: 7.6.2 ts-api-utils: 1.3.0(typescript@5.4.5) optionalDependencies: typescript: 5.4.5 @@ -11944,11 +12343,11 @@ snapshots: dependencies: '@typescript-eslint/types': 7.10.0 '@typescript-eslint/visitor-keys': 7.10.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.3.7 globby: 11.1.0 is-glob: 4.0.3 minimatch: 9.0.4 - semver: 7.6.3 + semver: 7.6.2 ts-api-utils: 1.3.0(typescript@5.4.5) optionalDependencies: typescript: 5.4.5 @@ -11965,7 +12364,7 @@ snapshots: '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.4.5) eslint: 8.50.0 eslint-scope: 5.1.1 - semver: 7.6.3 + semver: 7.6.2 transitivePeerDependencies: - supports-color - typescript @@ -11979,7 +12378,7 @@ snapshots: '@typescript-eslint/types': 6.21.0 '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.4.5) eslint: 8.50.0 - semver: 7.6.3 + semver: 7.6.2 transitivePeerDependencies: - supports-color - typescript @@ -12010,6 +12409,146 @@ snapshots: '@typescript-eslint/types': 7.10.0 eslint-visitor-keys: 3.4.3 + '@usecapsule/core-components@3.19.0': + dependencies: + '@stencil/core': 4.26.0 + color-blend: 4.0.0 + color2k: 2.0.3 + gsap: 3.12.7 + inputmask: 5.0.9 + qrcode-with-logos: 1.1.1 + + '@usecapsule/core-sdk@2.14.0': + dependencies: + '@celo/utils': 6.0.1 + '@cosmjs/encoding': 0.32.4 + '@noble/hashes': 1.5.0 + '@usecapsule/user-management-client': 1.36.0 + base64url: 3.0.1 + buffer: 6.0.3 + ethereumjs-util: 7.1.5 + libphonenumber-js: 1.11.2 + node-forge: 1.3.1(patch_hash=nfdrir6ttlr77nd4pr3kkewsuy) + qs: 6.12.1 + transitivePeerDependencies: + - debug + + '@usecapsule/rainbowkit-wallet@1.6.0(lwutocmeejwbt2qr2zf2e24tya)': + dependencies: + '@usecapsule/rainbowkit': 3.6.0(@emotion/is-prop-valid@1.2.2)(@types/react@18.3.12)(immer@9.0.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(viem@2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8))(wagmi@2.12.4(@tanstack/query-core@5.22.2)(@tanstack/react-query@5.22.2(react@18.3.1))(@types/react@18.3.12)(bufferutil@4.0.8)(immer@9.0.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.18.0)(typescript@5.4.5)(utf-8-validate@5.0.10)(viem@2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8)) + '@usecapsule/react-sdk': 4.14.0(@emotion/is-prop-valid@1.2.2)(@types/react@18.3.12)(immer@9.0.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@usecapsule/wagmi-v2-integration': 3.14.0-dev.1(@emotion/is-prop-valid@1.2.2)(@types/react@18.3.12)(immer@9.0.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(viem@2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8))(wagmi@2.12.4(@tanstack/query-core@5.22.2)(@tanstack/react-query@5.22.2(react@18.3.1))(@types/react@18.3.12)(bufferutil@4.0.8)(immer@9.0.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.18.0)(typescript@5.4.5)(utf-8-validate@5.0.10)(viem@2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8)) + viem: 2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8) + wagmi: 2.12.4(@tanstack/query-core@5.22.2)(@tanstack/react-query@5.22.2(react@18.3.1))(@types/react@18.3.12)(bufferutil@4.0.8)(immer@9.0.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.18.0)(typescript@5.4.5)(utf-8-validate@5.0.10)(viem@2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8) + transitivePeerDependencies: + - '@emotion/is-prop-valid' + - '@types/react' + - debug + - immer + - react + - react-dom + + '@usecapsule/rainbowkit@3.6.0(@emotion/is-prop-valid@1.2.2)(@types/react@18.3.12)(immer@9.0.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(viem@2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8))(wagmi@2.12.4(@tanstack/query-core@5.22.2)(@tanstack/react-query@5.22.2(react@18.3.1))(@types/react@18.3.12)(bufferutil@4.0.8)(immer@9.0.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.18.0)(typescript@5.4.5)(utf-8-validate@5.0.10)(viem@2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8))': + dependencies: + '@coinbase/wallet-sdk': 3.9.3 + '@usecapsule/react-sdk': 4.14.0(@emotion/is-prop-valid@1.2.2)(@types/react@18.3.12)(immer@9.0.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@vanilla-extract/css': 1.14.0 + '@vanilla-extract/dynamic': 2.1.0 + '@vanilla-extract/sprinkles': 1.6.1(@vanilla-extract/css@1.14.0) + clsx: 2.1.0 + qrcode: 1.5.3 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + react-remove-scroll: 2.5.7(@types/react@18.3.12)(react@18.3.1) + ua-parser-js: 1.0.39 + viem: 2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8) + wagmi: 2.12.4(@tanstack/query-core@5.22.2)(@tanstack/react-query@5.22.2(react@18.3.1))(@types/react@18.3.12)(bufferutil@4.0.8)(immer@9.0.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.18.0)(typescript@5.4.5)(utf-8-validate@5.0.10)(viem@2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8) + transitivePeerDependencies: + - '@emotion/is-prop-valid' + - '@types/react' + - debug + - immer + - supports-color + + '@usecapsule/react-common@1.11.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@moonpay/moonpay-react': 1.8.8(react@18.3.1) + '@ramp-network/ramp-instant-sdk': 4.0.7 + '@stripe/crypto': 0.0.4(@stripe/stripe-js@3.5.0) + '@stripe/stripe-js': 3.5.0 + '@usecapsule/web-sdk': 2.14.0 + libphonenumber-js: 1.11.20 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + styled-components: 6.1.15(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + transitivePeerDependencies: + - debug + + '@usecapsule/react-components@3.19.0': + dependencies: + '@usecapsule/core-components': 3.19.0 + + '@usecapsule/react-sdk@4.14.0(@emotion/is-prop-valid@1.2.2)(@types/react@18.3.12)(immer@9.0.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@usecapsule/react-common': 1.11.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@usecapsule/react-components': 3.19.0 + '@usecapsule/web-sdk': 2.14.0 + date-fns: 3.6.0 + detect-browser: 5.3.0 + framer-motion: 11.3.28(@emotion/is-prop-valid@1.2.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + libphonenumber-js: 1.11.20 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + styled-components: 6.1.15(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + zustand: 4.5.6(@types/react@18.3.12)(immer@9.0.21)(react@18.3.1) + transitivePeerDependencies: + - '@emotion/is-prop-valid' + - '@types/react' + - debug + - immer + + '@usecapsule/user-management-client@1.36.0': + dependencies: + axios: 1.7.9 + libphonenumber-js: 1.11.2 + qs: 6.12.1 + transitivePeerDependencies: + - debug + + '@usecapsule/viem-v2-integration@2.14.0(viem@2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8))': + dependencies: + '@usecapsule/core-sdk': 2.14.0 + viem: 2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8) + transitivePeerDependencies: + - debug + + '@usecapsule/wagmi-v2-integration@3.14.0-dev.1(@emotion/is-prop-valid@1.2.2)(@types/react@18.3.12)(immer@9.0.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(viem@2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8))(wagmi@2.12.4(@tanstack/query-core@5.22.2)(@tanstack/react-query@5.22.2(react@18.3.1))(@types/react@18.3.12)(bufferutil@4.0.8)(immer@9.0.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.18.0)(typescript@5.4.5)(utf-8-validate@5.0.10)(viem@2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8))': + dependencies: + '@usecapsule/react-sdk': 4.14.0(@emotion/is-prop-valid@1.2.2)(@types/react@18.3.12)(immer@9.0.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@usecapsule/viem-v2-integration': 2.14.0(viem@2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8)) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + viem: 2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8) + wagmi: 2.12.4(@tanstack/query-core@5.22.2)(@tanstack/react-query@5.22.2(react@18.3.1))(@types/react@18.3.12)(bufferutil@4.0.8)(immer@9.0.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.18.0)(typescript@5.4.5)(utf-8-validate@5.0.10)(viem@2.19.4(bufferutil@4.0.8)(typescript@5.4.5)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8) + transitivePeerDependencies: + - '@emotion/is-prop-valid' + - '@types/react' + - debug + - immer + + '@usecapsule/web-sdk@2.14.0': + dependencies: + '@usecapsule/core-sdk': 2.14.0 + '@usecapsule/user-management-client': 1.36.0 + assert: 2.1.0 + base64url: 3.0.1 + buffer: 6.0.3 + cbor-web: 8.1.0 + node-forge: 1.3.1(patch_hash=nfdrir6ttlr77nd4pr3kkewsuy) + ua-parser-js: 1.0.39 + transitivePeerDependencies: + - debug + '@vanilla-extract/css@1.14.0': dependencies: '@emotion/hash': 0.9.1 @@ -12038,22 +12577,22 @@ snapshots: dependencies: '@vanilla-extract/css': 1.14.0 - '@vitejs/plugin-react@4.3.4(vite@5.2.11(@types/node@20.17.17))': + '@vitejs/plugin-react@4.3.4(vite@5.2.11(@types/node@20.17.19))': dependencies: - '@babel/core': 7.26.8 - '@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.26.8) - '@babel/plugin-transform-react-jsx-source': 7.25.9(@babel/core@7.26.8) + '@babel/core': 7.26.9 + '@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.26.9) + '@babel/plugin-transform-react-jsx-source': 7.25.9(@babel/core@7.26.9) '@types/babel__core': 7.20.5 react-refresh: 0.14.2 - vite: 5.2.11(@types/node@20.17.17) + vite: 5.2.11(@types/node@20.17.19) transitivePeerDependencies: - supports-color - '@vitest/coverage-v8@3.0.5(vitest@3.0.5(@types/debug@4.1.12)(@types/node@20.17.17)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.17)(typescript@5.4.5)))': + '@vitest/coverage-v8@3.0.6(vitest@3.0.6(@types/debug@4.1.12)(@types/node@20.17.19)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.19)(typescript@5.4.5)))': dependencies: '@ampproject/remapping': 2.3.0 '@bcoe/v8-coverage': 1.0.2 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0 istanbul-lib-coverage: 3.2.2 istanbul-lib-report: 3.0.1 istanbul-lib-source-maps: 5.0.6 @@ -12063,48 +12602,48 @@ snapshots: std-env: 3.8.0 test-exclude: 7.0.1 tinyrainbow: 2.0.0 - vitest: 3.0.5(@types/debug@4.1.12)(@types/node@20.17.17)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.17)(typescript@5.4.5)) + vitest: 3.0.6(@types/debug@4.1.12)(@types/node@20.17.19)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.19)(typescript@5.4.5)) transitivePeerDependencies: - supports-color - '@vitest/expect@3.0.5': + '@vitest/expect@3.0.6': dependencies: - '@vitest/spy': 3.0.5 - '@vitest/utils': 3.0.5 - chai: 5.1.2 + '@vitest/spy': 3.0.6 + '@vitest/utils': 3.0.6 + chai: 5.2.0 tinyrainbow: 2.0.0 - '@vitest/mocker@3.0.5(msw@2.7.0(@types/node@20.17.17)(typescript@5.4.5))(vite@5.2.11(@types/node@20.17.17))': + '@vitest/mocker@3.0.6(msw@2.7.0(@types/node@20.17.19)(typescript@5.4.5))(vite@5.2.11(@types/node@20.17.19))': dependencies: - '@vitest/spy': 3.0.5 + '@vitest/spy': 3.0.6 estree-walker: 3.0.3 magic-string: 0.30.17 optionalDependencies: - msw: 2.7.0(@types/node@20.17.17)(typescript@5.4.5) - vite: 5.2.11(@types/node@20.17.17) + msw: 2.7.0(@types/node@20.17.19)(typescript@5.4.5) + vite: 5.2.11(@types/node@20.17.19) - '@vitest/pretty-format@3.0.5': + '@vitest/pretty-format@3.0.6': dependencies: tinyrainbow: 2.0.0 - '@vitest/runner@3.0.5': + '@vitest/runner@3.0.6': dependencies: - '@vitest/utils': 3.0.5 + '@vitest/utils': 3.0.6 pathe: 2.0.3 - '@vitest/snapshot@3.0.5': + '@vitest/snapshot@3.0.6': dependencies: - '@vitest/pretty-format': 3.0.5 + '@vitest/pretty-format': 3.0.6 magic-string: 0.30.17 pathe: 2.0.3 - '@vitest/spy@3.0.5': + '@vitest/spy@3.0.6': dependencies: tinyspy: 3.0.2 - '@vitest/utils@3.0.5': + '@vitest/utils@3.0.6': dependencies: - '@vitest/pretty-format': 3.0.5 + '@vitest/pretty-format': 3.0.6 loupe: 3.1.3 tinyrainbow: 2.0.0 @@ -12289,7 +12828,7 @@ snapshots: '@walletconnect/jsonrpc-utils': 1.0.8 '@walletconnect/safe-json': 1.0.2 events: 3.3.0 - ws: 7.5.10(bufferutil@4.0.8)(utf-8-validate@5.0.10) + ws: 7.5.9(bufferutil@4.0.8)(utf-8-validate@5.0.10) transitivePeerDependencies: - bufferutil - utf-8-validate @@ -12497,11 +13036,6 @@ snapshots: typescript: 5.4.5 zod: 3.23.8 - abitype@1.0.6(typescript@5.4.5)(zod@3.23.8): - optionalDependencies: - typescript: 5.4.5 - zod: 3.23.8 - abort-controller@3.0.0: dependencies: event-target-shim: 5.0.1 @@ -12513,13 +13047,13 @@ snapshots: mime-types: 2.1.35 negotiator: 0.6.3 - acorn-jsx@5.3.2(acorn@8.12.1): + acorn-jsx@5.3.2(acorn@8.11.3): dependencies: - acorn: 8.12.1 + acorn: 8.11.3 acorn-walk@8.3.2: {} - acorn@8.12.1: {} + acorn@8.11.3: {} adm-zip@0.4.16: {} @@ -12527,13 +13061,13 @@ snapshots: agent-base@6.0.2: dependencies: - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0 transitivePeerDependencies: - supports-color agent-base@7.1.1: dependencies: - debug: 4.4.0(supports-color@5.5.0) + debug: 4.3.7 transitivePeerDependencies: - supports-color @@ -12580,7 +13114,7 @@ snapshots: ansi-regex@5.0.1: {} - ansi-regex@6.0.1: {} + ansi-regex@6.1.0: {} ansi-styles@3.2.1: dependencies: @@ -12621,6 +13155,14 @@ snapshots: assert-plus@1.0.0: {} + assert@2.1.0: + dependencies: + call-bind: 1.0.8 + is-nan: 1.3.2 + object-is: '@socketregistry/object-is@1.0.5' + object.assign: '@socketregistry/object.assign@1.0.5' + util: 0.12.5 + assertion-error@1.1.0: {} assertion-error@2.0.1: {} @@ -12633,7 +13175,7 @@ snapshots: async-mutex@0.2.6: dependencies: - tslib: 2.6.3 + tslib: 2.6.2 asynckit@0.4.0: {} @@ -12645,15 +13187,15 @@ snapshots: axe-core@4.7.0: {} - axios@0.21.4(debug@4.4.0): + axios@0.21.4(debug@4.3.4): dependencies: - follow-redirects: 1.15.6(debug@4.4.0) + follow-redirects: 1.15.6(debug@4.3.4) transitivePeerDependencies: - debug axios@1.7.9: dependencies: - follow-redirects: 1.15.6(debug@4.4.0) + follow-redirects: 1.15.6(debug@4.3.4) form-data: 4.0.0 proxy-from-env: 1.1.0 transitivePeerDependencies: @@ -12667,18 +13209,18 @@ snapshots: babel-plugin-polyfill-corejs2@0.4.11(@babel/core@7.24.6): dependencies: - '@babel/compat-data': 7.25.2 + '@babel/compat-data': 7.24.6 '@babel/core': 7.24.6 '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.24.6) semver: 6.3.1 transitivePeerDependencies: - supports-color - babel-plugin-polyfill-corejs3@0.10.6(@babel/core@7.24.6): + babel-plugin-polyfill-corejs3@0.10.4(@babel/core@7.24.6): dependencies: '@babel/core': 7.24.6 '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.24.6) - core-js-compat: 3.38.0 + core-js-compat: 3.37.1 transitivePeerDependencies: - supports-color @@ -12689,17 +13231,16 @@ snapshots: transitivePeerDependencies: - supports-color - babel-plugin-styled-components@2.1.4(@babel/core@7.26.8)(styled-components@5.3.11(@babel/core@7.26.8)(react-dom@18.3.1(react@18.3.1))(react-is@17.0.2)(react@18.3.1))(supports-color@5.5.0): + babel-plugin-styled-components@2.1.4(@babel/core@7.26.9)(styled-components@5.3.6(@babel/core@7.26.9)(react-dom@18.3.1(react@18.3.1))(react-is@17.0.2)(react@18.3.1)): dependencies: - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-module-imports': 7.24.7(supports-color@5.5.0) - '@babel/plugin-syntax-jsx': 7.24.7(@babel/core@7.26.8) + '@babel/helper-annotate-as-pure': 7.24.6 + '@babel/helper-module-imports': 7.24.6 + '@babel/plugin-syntax-jsx': 7.24.6(@babel/core@7.26.9) lodash: 4.17.21 picomatch: 2.3.1 - styled-components: 5.3.11(@babel/core@7.26.8)(react-dom@18.3.1(react@18.3.1))(react-is@17.0.2)(react@18.3.1) + styled-components: 5.3.6(@babel/core@7.26.9)(react-dom@18.3.1(react@18.3.1))(react-is@17.0.2)(react@18.3.1) transitivePeerDependencies: - '@babel/core' - - supports-color balanced-match@1.0.2: {} @@ -12738,6 +13279,8 @@ snapshots: base64-js@1.5.1: {} + base64url@3.0.1: {} + bcrypt-pbkdf@1.0.2: dependencies: tweetnacl: 0.14.5 @@ -12779,6 +13322,8 @@ snapshots: transitivePeerDependencies: - supports-color + body-scroll-lock@3.1.5: {} + boolbase@1.0.0: {} bowser@2.11.0: {} @@ -12820,19 +13365,19 @@ snapshots: inherits: 2.0.4 safe-buffer: '@socketregistry/safe-buffer@1.0.5' - browserslist@4.23.3: + browserslist@4.23.0: dependencies: - caniuse-lite: 1.0.30001651 - electron-to-chromium: 1.5.6 - node-releases: 2.0.18 - update-browserslist-db: 1.1.0(browserslist@4.23.3) + caniuse-lite: 1.0.30001621 + electron-to-chromium: 1.4.783 + node-releases: 2.0.14 + update-browserslist-db: 1.0.16(browserslist@4.23.0) - browserslist@4.24.4: + browserslist@4.24.0: dependencies: - caniuse-lite: 1.0.30001699 - electron-to-chromium: 1.5.97 - node-releases: 2.0.19 - update-browserslist-db: 1.1.2(browserslist@4.24.4) + caniuse-lite: 1.0.30001669 + electron-to-chromium: 1.5.41 + node-releases: 2.0.18 + update-browserslist-db: 1.1.1(browserslist@4.24.0) bs58@4.0.1: dependencies: @@ -12888,12 +13433,24 @@ snapshots: cacheable@1.8.8: dependencies: - hookified: 1.7.0 + hookified: 1.7.1 keyv: 5.2.3 calendar-link@2.8.0: dependencies: - dayjs: 1.11.12 + dayjs: 1.11.11 + + call-bind-apply-helpers@1.0.2: + dependencies: + es-errors: 1.3.0 + function-bind: '@socketregistry/function-bind@1.0.5' + + call-bind@1.0.8: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-define-property: '@socketregistry/es-define-property@1.0.5' + get-intrinsic: 1.2.7 + set-function-length: '@socketregistry/set-function-length@1.0.5' callsites@3.1.0: {} @@ -12912,19 +13469,23 @@ snapshots: camelize@1.0.1: {} - caniuse-lite@1.0.30001651: {} + caniuse-lite@1.0.30001621: {} - caniuse-lite@1.0.30001699: {} + caniuse-lite@1.0.30001669: {} capnp-ts@0.7.0: dependencies: - debug: 4.4.0(supports-color@5.5.0) - tslib: 2.6.3 + debug: 4.3.7 + tslib: 2.6.2 transitivePeerDependencies: - supports-color + case@1.6.3: {} + caseless@0.12.0: {} + cbor-web@8.1.0: {} + cbor@10.0.3: dependencies: nofilter: 3.1.0 @@ -12948,12 +13509,12 @@ snapshots: pathval: 1.1.1 type-detect: 4.0.8 - chai@5.1.2: + chai@5.2.0: dependencies: assertion-error: 2.0.1 check-error: 2.1.1 deep-eql: 5.0.2 - loupe: 3.1.3 + loupe: 3.1.2 pathval: 2.0.0 chalk@2.4.2: @@ -13044,7 +13605,7 @@ snapshots: chokidar@4.0.3: dependencies: - readdirp: 4.1.1 + readdirp: 4.1.2 chownr@1.1.4: {} @@ -13126,6 +13687,8 @@ snapshots: code-point-at@1.1.0: {} + color-blend@4.0.0: {} + color-convert@1.9.3: dependencies: color-name: 1.1.3 @@ -13138,6 +13701,8 @@ snapshots: color-name@1.1.4: {} + color2k@2.0.3: {} + colord@2.9.3: {} colors@1.4.0: {} @@ -13211,9 +13776,9 @@ snapshots: dependencies: toggle-selection: 1.0.6 - core-js-compat@3.38.0: + core-js-compat@3.37.1: dependencies: - browserslist: 4.23.3 + browserslist: 4.23.0 core-util-is@1.0.2: {} @@ -13381,9 +13946,11 @@ snapshots: date-fns@2.30.0: dependencies: - '@babel/runtime': 7.25.0 + '@babel/runtime': 7.24.6 + + date-fns@3.6.0: {} - dayjs@1.11.12: {} + dayjs@1.11.11: {} debug@2.6.9: dependencies: @@ -13393,21 +13960,25 @@ snapshots: dependencies: ms: 2.1.3 + debug@4.3.4(supports-color@5.5.0): + dependencies: + ms: 2.1.2 + optionalDependencies: + supports-color: 5.5.0 + debug@4.3.4(supports-color@8.1.1): dependencies: ms: 2.1.2 optionalDependencies: supports-color: 8.1.1 - debug@4.3.6: + debug@4.3.7: dependencies: - ms: 2.1.2 + ms: 2.1.3 - debug@4.4.0(supports-color@5.5.0): + debug@4.4.0: dependencies: ms: 2.1.3 - optionalDependencies: - supports-color: 5.5.0 decamelize@1.2.0: {} @@ -13480,9 +14051,9 @@ snapshots: dependencies: '@leichtgewicht/ip-codec': 2.0.5 - docker-compose@1.1.0: + docker-compose@1.1.1: dependencies: - yaml: 2.5.0 + yaml: 2.4.2 doctrine@2.1.0: dependencies: @@ -13523,12 +14094,20 @@ snapshots: dot-case@3.0.4: dependencies: no-case: 3.0.4 - tslib: 2.6.3 + tslib: 2.6.2 + + dotenv@16.4.5: {} dotenv@16.4.7: {} dunai@0.0.0-dev.2: {} + dunder-proto@1.0.1: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-errors: 1.3.0 + gopd: '@socketregistry/gopd@1.0.5' + duplexer@0.1.2: {} duplexify@4.1.3: @@ -13559,9 +14138,9 @@ snapshots: ee-first@1.1.1: {} - electron-to-chromium@1.5.6: {} + electron-to-chromium@1.4.783: {} - electron-to-chromium@1.5.97: {} + electron-to-chromium@1.5.41: {} elliptic@6.5.4: dependencies: @@ -13603,7 +14182,7 @@ snapshots: engine.io-client@6.5.3(bufferutil@4.0.8)(utf-8-validate@5.0.10): dependencies: '@socket.io/component-emitter': 3.1.2 - debug: 4.3.6 + debug: 4.3.7 engine.io-parser: 5.2.2 ws: 8.11.0(bufferutil@4.0.8)(utf-8-validate@5.0.10) xmlhttprequest-ssl: 2.0.0 @@ -13614,7 +14193,7 @@ snapshots: engine.io-parser@5.2.2: {} - enhanced-resolve@5.17.1: + enhanced-resolve@5.16.1: dependencies: graceful-fs: 4.2.11 tapable: 2.2.1 @@ -13645,8 +14224,14 @@ snapshots: dependencies: stackframe: 1.3.4 + es-errors@1.3.0: {} + es-module-lexer@1.6.0: {} + es-object-atoms@1.1.1: + dependencies: + es-errors: 1.3.0 + es5-ext@0.10.64: dependencies: es6-iterator: 2.0.3 @@ -13785,8 +14370,8 @@ snapshots: eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.50.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.50.0): dependencies: - debug: 4.4.0(supports-color@5.5.0) - enhanced-resolve: 5.17.1 + debug: 4.3.4(supports-color@5.5.0) + enhanced-resolve: 5.16.1 eslint: 8.50.0 eslint-module-utils: 2.8.1(@typescript-eslint/parser@6.21.0(eslint@8.50.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.50.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.50.0))(eslint@8.50.0) eslint-plugin-import: 2.29.1(@typescript-eslint/parser@6.21.0(eslint@8.50.0)(typescript@5.4.5))(eslint-import-resolver-typescript@3.6.1)(eslint@8.50.0) @@ -13840,7 +14425,7 @@ snapshots: eslint-plugin-jsx-a11y@6.8.0(eslint@8.50.0): dependencies: - '@babel/runtime': 7.25.0 + '@babel/runtime': 7.24.6 aria-query: 5.3.0 array-includes: '@socketregistry/array-includes@1.0.5' array.prototype.flatmap: '@socketregistry/array.prototype.flatmap@1.0.5' @@ -13901,13 +14486,13 @@ snapshots: - supports-color - typescript - eslint-plugin-vitest@0.5.4(@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.50.0)(typescript@5.4.5))(eslint@8.50.0)(typescript@5.4.5))(eslint@8.50.0)(typescript@5.4.5)(vitest@3.0.5(@types/debug@4.1.12)(@types/node@20.17.17)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.17)(typescript@5.4.5))): + eslint-plugin-vitest@0.5.4(@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.50.0)(typescript@5.4.5))(eslint@8.50.0)(typescript@5.4.5))(eslint@8.50.0)(typescript@5.4.5)(vitest@3.0.6(@types/debug@4.1.12)(@types/node@20.17.19)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.19)(typescript@5.4.5))): dependencies: '@typescript-eslint/utils': 7.10.0(eslint@8.50.0)(typescript@5.4.5) eslint: 8.50.0 optionalDependencies: '@typescript-eslint/eslint-plugin': 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.50.0)(typescript@5.4.5))(eslint@8.50.0)(typescript@5.4.5) - vitest: 3.0.5(@types/debug@4.1.12)(@types/node@20.17.17)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.17)(typescript@5.4.5)) + vitest: 3.0.6(@types/debug@4.1.12)(@types/node@20.17.19)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.19)(typescript@5.4.5)) transitivePeerDependencies: - supports-color - typescript @@ -13936,7 +14521,7 @@ snapshots: ajv: 6.12.6 chalk: 4.1.2 cross-spawn: 7.0.3 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.3.4(supports-color@5.5.0) doctrine: 3.0.0 escape-string-regexp: 4.0.0 eslint-scope: 7.2.2 @@ -13975,8 +14560,8 @@ snapshots: espree@9.6.1: dependencies: - acorn: 8.12.1 - acorn-jsx: 5.3.2(acorn@8.12.1) + acorn: 8.11.3 + acorn-jsx: 5.3.2(acorn@8.11.3) eslint-visitor-keys: 3.4.3 esquery@1.5.0: @@ -14056,7 +14641,7 @@ snapshots: ethereum-bloom-filters@1.1.0: dependencies: - '@noble/hashes': 1.5.0 + '@noble/hashes': 1.4.0 ethereum-cryptography@0.1.3: dependencies: @@ -14274,7 +14859,7 @@ snapshots: '@nodelib/fs.walk': 1.2.8 glob-parent: 5.1.2 merge2: 1.4.1 - micromatch: 4.0.8 + micromatch: 4.0.7 fast-glob@3.3.3: dependencies: @@ -14304,7 +14889,7 @@ snapshots: dependencies: reusify: 1.0.4 - fdir@6.3.0(picomatch@4.0.2): + fdir@6.4.2(picomatch@4.0.2): optionalDependencies: picomatch: 4.0.2 @@ -14363,22 +14948,26 @@ snapshots: flat-cache@6.1.6: dependencies: cacheable: 1.8.8 - flatted: 3.3.2 - hookified: 1.7.0 + flatted: 3.3.3 + hookified: 1.7.1 flat@5.0.2: {} flatted@3.3.1: {} - flatted@3.3.2: {} + flatted@3.3.3: {} fmix@0.1.0: dependencies: imul: 1.0.1 - follow-redirects@1.15.6(debug@4.4.0): + follow-redirects@1.15.6(debug@4.3.4): + optionalDependencies: + debug: 4.3.4(supports-color@5.5.0) + + follow-redirects@1.15.6(debug@4.3.7): optionalDependencies: - debug: 4.4.0(supports-color@5.5.0) + debug: 4.3.7 foreground-child@3.3.0: dependencies: @@ -14409,6 +14998,16 @@ snapshots: fp-ts@1.19.3: {} + fp-ts@2.1.1: {} + + framer-motion@11.3.28(@emotion/is-prop-valid@1.2.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + dependencies: + tslib: 2.6.2 + optionalDependencies: + '@emotion/is-prop-valid': 1.2.2 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + fresh@0.5.2: {} fs-extra@0.30.0: @@ -14465,10 +15064,28 @@ snapshots: get-func-name@2.0.2: {} + get-intrinsic@1.2.7: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-define-property: '@socketregistry/es-define-property@1.0.5' + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + function-bind: '@socketregistry/function-bind@1.0.5' + get-proto: 1.0.1 + gopd: '@socketregistry/gopd@1.0.5' + has-symbols: '@socketregistry/has-symbols@1.0.5' + hasown: '@socketregistry/hasown@1.0.5' + math-intrinsics: 1.1.0 + get-nonce@1.0.1: {} get-port-please@3.1.2: {} + get-proto@1.0.1: + dependencies: + dunder-proto: 1.0.1 + es-object-atoms: 1.1.1 + get-source@2.0.12: dependencies: data-uri-to-buffer: 2.0.2 @@ -14506,7 +15123,7 @@ snapshots: jackspeak: 3.4.3 minimatch: 9.0.4 minipass: 7.1.2 - package-json-from-dist: 1.0.0 + package-json-from-dist: 1.0.1 path-scurry: 1.11.1 glob@7.1.7: @@ -14611,6 +15228,8 @@ snapshots: graphql@16.8.1: {} + gsap@3.12.7: {} + gzip-size@6.0.0: dependencies: duplexer: 0.1.2 @@ -14637,14 +15256,14 @@ snapshots: ajv: 6.12.6 har-schema: 2.0.0 - hardhat-dependency-compiler@1.1.4(hardhat@2.22.18(bufferutil@4.0.8)(ts-node@10.9.2(@types/node@20.17.17)(typescript@5.4.5))(typescript@5.4.5)(utf-8-validate@5.0.10)): + hardhat-dependency-compiler@1.1.4(hardhat@2.22.18(bufferutil@4.0.8)(ts-node@10.9.2(@types/node@20.17.19)(typescript@5.4.5))(typescript@5.4.5)(utf-8-validate@5.0.10)): dependencies: - hardhat: 2.22.18(bufferutil@4.0.8)(ts-node@10.9.2(@types/node@20.17.17)(typescript@5.4.5))(typescript@5.4.5)(utf-8-validate@5.0.10) + hardhat: 2.22.18(bufferutil@4.0.8)(ts-node@10.9.2(@types/node@20.17.19)(typescript@5.4.5))(typescript@5.4.5)(utf-8-validate@5.0.10) - hardhat-deploy-ethers@0.3.0-beta.13(ethers@5.7.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(hardhat@2.22.18(bufferutil@4.0.8)(ts-node@10.9.2(@types/node@20.17.17)(typescript@5.4.5))(typescript@5.4.5)(utf-8-validate@5.0.10)): + hardhat-deploy-ethers@0.3.0-beta.13(ethers@5.7.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(hardhat@2.22.18(bufferutil@4.0.8)(ts-node@10.9.2(@types/node@20.17.19)(typescript@5.4.5))(typescript@5.4.5)(utf-8-validate@5.0.10)): dependencies: ethers: 5.7.2(bufferutil@4.0.8)(utf-8-validate@5.0.10) - hardhat: 2.22.18(bufferutil@4.0.8)(ts-node@10.9.2(@types/node@20.17.17)(typescript@5.4.5))(typescript@5.4.5)(utf-8-validate@5.0.10) + hardhat: 2.22.18(bufferutil@4.0.8)(ts-node@10.9.2(@types/node@20.17.19)(typescript@5.4.5))(typescript@5.4.5)(utf-8-validate@5.0.10) hardhat-deploy@0.11.45(bufferutil@4.0.8)(utf-8-validate@5.0.10): dependencies: @@ -14660,10 +15279,10 @@ snapshots: '@ethersproject/transactions': 5.7.0 '@ethersproject/wallet': 5.7.0 '@types/qs': 6.9.15 - axios: 0.21.4(debug@4.4.0) + axios: 0.21.4(debug@4.3.4) chalk: 4.1.2 chokidar: 3.6.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.3.4(supports-color@5.5.0) enquirer: 2.4.1 ethers: 5.7.2(bufferutil@4.0.8)(utf-8-validate@5.0.10) form-data: 4.0.0 @@ -14677,7 +15296,7 @@ snapshots: - supports-color - utf-8-validate - hardhat@2.22.18(bufferutil@4.0.8)(ts-node@10.9.2(@types/node@20.17.17)(typescript@5.4.5))(typescript@5.4.5)(utf-8-validate@5.0.10): + hardhat@2.22.18(bufferutil@4.0.8)(ts-node@10.9.2(@types/node@20.17.19)(typescript@5.4.5))(typescript@5.4.5)(utf-8-validate@5.0.10): dependencies: '@ethersproject/abi': 5.7.0 '@metamask/eth-sig-util': 4.0.1 @@ -14695,7 +15314,7 @@ snapshots: boxen: 5.1.2 chokidar: 4.0.3 ci-info: 2.0.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.3.7 enquirer: 2.4.1 env-paths: 2.2.1 ethereum-cryptography: 1.2.0 @@ -14715,16 +15334,16 @@ snapshots: raw-body: 2.5.2 resolve: 1.17.0 semver: 6.3.1 - solc: 0.8.26(debug@4.4.0) + solc: 0.8.26(debug@4.3.7) source-map-support: 0.5.21 stacktrace-parser: 0.1.10 - tinyglobby: 0.2.6 + tinyglobby: 0.2.9 tsort: 0.0.1 undici: 5.28.4 uuid: 8.3.2 - ws: 7.5.10(bufferutil@4.0.8)(utf-8-validate@5.0.10) + ws: 7.5.9(bufferutil@4.0.8)(utf-8-validate@5.0.10) optionalDependencies: - ts-node: 10.9.2(@types/node@20.17.17)(typescript@5.4.5) + ts-node: 10.9.2(@types/node@20.17.19)(typescript@5.4.5) typescript: 5.4.5 transitivePeerDependencies: - bufferutil @@ -14779,7 +15398,7 @@ snapshots: dependencies: react-is: 16.13.1 - hookified@1.7.0: {} + hookified@1.7.1: {} hosted-git-info@2.8.9: {} @@ -14817,7 +15436,7 @@ snapshots: http-proxy-agent@7.0.2: dependencies: agent-base: 7.1.1 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.3.7 transitivePeerDependencies: - supports-color @@ -14842,14 +15461,14 @@ snapshots: https-proxy-agent@5.0.1: dependencies: agent-base: 6.0.2 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0 transitivePeerDependencies: - supports-color https-proxy-agent@7.0.4: dependencies: agent-base: 7.1.1 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.3.7 transitivePeerDependencies: - supports-color @@ -14861,11 +15480,11 @@ snapshots: i18next-browser-languagedetector@6.1.8: dependencies: - '@babel/runtime': 7.25.0 + '@babel/runtime': 7.24.6 i18next-browser-languagedetector@7.1.0: dependencies: - '@babel/runtime': 7.25.0 + '@babel/runtime': 7.24.6 i18next-http-backend@1.4.5: dependencies: @@ -14875,11 +15494,11 @@ snapshots: i18next@21.10.0: dependencies: - '@babel/runtime': 7.25.0 + '@babel/runtime': 7.24.6 i18next@23.11.5: dependencies: - '@babel/runtime': 7.25.0 + '@babel/runtime': 7.24.6 iconv-lite@0.4.24: dependencies: @@ -14930,6 +15549,8 @@ snapshots: css-in-js-utils: 3.1.0 fast-loops: 1.1.3 + inputmask@5.0.9: {} + invariant@2.2.4: dependencies: loose-envify: 1.4.0 @@ -14940,6 +15561,10 @@ snapshots: dependencies: fp-ts: 1.19.3 + io-ts@2.0.1(fp-ts@2.1.1): + dependencies: + fp-ts: 2.1.1 + ipaddr.js@1.9.1: {} iron-webcrypto@1.2.1: {} @@ -14978,6 +15603,11 @@ snapshots: dependencies: lower-case: 1.1.4 + is-nan@1.3.2: + dependencies: + call-bind: 1.0.8 + define-properties: '@socketregistry/define-properties@1.0.5' + is-node-process@1.2.0: {} is-number@7.0.0: {} @@ -15046,7 +15676,7 @@ snapshots: istanbul-lib-source-maps@5.0.6: dependencies: '@jridgewell/trace-mapping': 0.3.25 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0 istanbul-lib-coverage: 3.2.2 transitivePeerDependencies: - supports-color @@ -15070,7 +15700,7 @@ snapshots: jest-util@29.7.0: dependencies: '@jest/types': 29.6.3 - '@types/node': 20.17.17 + '@types/node': 20.17.19 chalk: 4.1.2 ci-info: 3.9.0 graceful-fs: 4.2.11 @@ -15078,12 +15708,12 @@ snapshots: jest-worker@29.7.0: dependencies: - '@types/node': 20.17.17 + '@types/node': 20.17.19 jest-util: 29.7.0 merge-stream: 2.0.0 supports-color: 8.1.1 - jiti@1.21.6: {} + jiti@1.21.0: {} jiti@2.4.2: {} @@ -15132,7 +15762,7 @@ snapshots: whatwg-encoding: 3.1.1 whatwg-mimetype: 4.0.0 whatwg-url: 14.0.0 - ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10) + ws: 8.17.1(bufferutil@4.0.8)(utf-8-validate@5.0.10) xml-name-validator: 5.0.0 transitivePeerDependencies: - bufferutil @@ -15143,7 +15773,7 @@ snapshots: jsesc@2.5.2: {} - jsesc@3.1.0: {} + jsesc@3.0.2: {} json-buffer@3.0.1: {} @@ -15225,7 +15855,7 @@ snapshots: keyv@5.2.3: dependencies: - '@keyv/serialize': 1.0.2 + '@keyv/serialize': 1.0.3 keyvaluestorage-interface@1.0.0: {} @@ -15235,11 +15865,11 @@ snapshots: optionalDependencies: graceful-fs: 4.2.11 - knip@5.44.0(@types/node@20.17.17)(typescript@5.4.5): + knip@5.44.2(@types/node@20.17.19)(typescript@5.4.5): dependencies: '@nodelib/fs.walk': 3.0.1 '@snyk/github-codeowners': 1.1.0 - '@types/node': 20.17.17 + '@types/node': 20.17.19 easy-table: 1.2.0 enhanced-resolve: 5.18.1 fast-glob: 3.3.3 @@ -15254,7 +15884,7 @@ snapshots: summary: 2.1.0 typescript: 5.4.5 zod: 3.23.8 - zod-validation-error: 3.3.1(zod@3.23.8) + zod-validation-error: 3.4.0(zod@3.23.8) known-css-properties@0.35.0: {} @@ -15273,6 +15903,10 @@ snapshots: prelude-ls: 1.2.1 type-check: 0.4.0 + libphonenumber-js@1.11.2: {} + + libphonenumber-js@1.11.20: {} + lie@3.1.1: dependencies: immediate: 3.0.6 @@ -15291,11 +15925,11 @@ snapshots: get-port-please: 3.1.2 h3: 1.11.1 http-shutdown: 1.2.2 - jiti: 1.21.6 + jiti: 1.21.0 mlly: 1.7.0 - node-forge: 1.3.1 + node-forge: 1.3.1(patch_hash=nfdrir6ttlr77nd4pr3kkewsuy) pathe: 1.1.2 - std-env: 3.8.0 + std-env: 3.7.0 ufo: 1.5.3 untun: 0.1.3 uqr: 0.1.2 @@ -15365,6 +15999,8 @@ snapshots: dependencies: get-func-name: 2.0.2 + loupe@3.1.2: {} + loupe@3.1.3: {} lower-case-first@1.0.2: @@ -15375,7 +16011,7 @@ snapshots: lower-case@2.0.2: dependencies: - tslib: 2.6.3 + tslib: 2.6.2 lowercase-keys@2.0.0: {} @@ -15399,28 +16035,34 @@ snapshots: dependencies: '@jridgewell/sourcemap-codec': 1.5.0 + magic-string@0.30.10: + dependencies: + '@jridgewell/sourcemap-codec': 1.4.15 + magic-string@0.30.17: dependencies: '@jridgewell/sourcemap-codec': 1.5.0 magicast@0.3.5: dependencies: - '@babel/parser': 7.26.8 - '@babel/types': 7.26.8 + '@babel/parser': 7.25.8 + '@babel/types': 7.25.8 source-map-js: 1.2.0 make-dir@4.0.0: dependencies: - semver: 7.6.3 + semver: 7.6.2 make-error@1.3.6: {} - markdown-to-jsx@7.7.3(react@18.3.1): + markdown-to-jsx@7.7.4(react@18.3.1): dependencies: react: 18.3.1 match-all@1.2.6: {} + math-intrinsics@1.1.0: {} + mathml-tag-names@2.1.3: {} md5.js@1.3.5: @@ -15439,7 +16081,7 @@ snapshots: media-query-parser@2.0.2: dependencies: - '@babel/runtime': 7.25.0 + '@babel/runtime': 7.24.6 media-typer@0.3.0: {} @@ -15457,6 +16099,11 @@ snapshots: micro-ftch@0.3.1: {} + micromatch@4.0.7: + dependencies: + braces: 3.0.3 + picomatch: 2.3.1 + micromatch@4.0.8: dependencies: braces: 3.0.3 @@ -15487,7 +16134,7 @@ snapshots: miniflare@3.20240512.0(bufferutil@4.0.8)(utf-8-validate@5.0.10): dependencies: '@cspotcode/source-map-support': 0.8.1 - acorn: 8.12.1 + acorn: 8.11.3 acorn-walk: 8.3.2 capnp-ts: 0.7.0 exit-hook: 2.2.1 @@ -15495,7 +16142,7 @@ snapshots: stoppable: 1.1.0 undici: 5.28.4 workerd: 1.20240512.0 - ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10) + ws: 8.17.1(bufferutil@4.0.8)(utf-8-validate@5.0.10) youch: 3.3.3 zod: 3.23.8 transitivePeerDependencies: @@ -15556,7 +16203,7 @@ snapshots: mlly@1.7.0: dependencies: - acorn: 8.12.1 + acorn: 8.11.3 pathe: 1.1.2 pkg-types: 1.1.1 ufo: 1.5.3 @@ -15615,13 +16262,13 @@ snapshots: ms@2.1.3: {} - msw@2.7.0(@types/node@20.17.17)(typescript@5.4.5): + msw@2.7.0(@types/node@20.17.19)(typescript@5.4.5): dependencies: '@bundled-es-modules/cookie': 2.0.1 '@bundled-es-modules/statuses': 1.0.1 '@bundled-es-modules/tough-cookie': 0.1.6 - '@inquirer/confirm': 5.1.0(@types/node@20.17.17) - '@mswjs/interceptors': 0.37.3 + '@inquirer/confirm': 5.1.3(@types/node@20.17.19) + '@mswjs/interceptors': 0.37.5 '@open-draft/deferred-promise': 2.2.0 '@open-draft/until': 2.1.0 '@types/cookie': 0.6.0 @@ -15633,7 +16280,7 @@ snapshots: path-to-regexp: 6.3.0 picocolors: 1.1.1 strict-event-emitter: 0.5.1 - type-fest: 4.30.0 + type-fest: 4.32.0 yargs: 17.7.2 optionalDependencies: typescript: 5.4.5 @@ -15683,7 +16330,7 @@ snapshots: nano-css@5.6.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: - '@jridgewell/sourcemap-codec': 1.5.0 + '@jridgewell/sourcemap-codec': 1.4.15 css-tree: 1.1.3 csstype: 3.1.3 fastest-stable-stringify: 2.0.2 @@ -15704,31 +16351,31 @@ snapshots: negotiator@0.6.3: {} - next-dev-https@0.1.2(patch_hash=q5l3x5627ujg3rak6l6v24c2cq)(next@13.5.8(@babel/core@7.26.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1): + next-dev-https@0.1.2(patch_hash=q5l3x5627ujg3rak6l6v24c2cq)(next@13.5.8(@babel/core@7.26.9)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1): dependencies: arg: 5.0.2 - next: 13.5.8(@babel/core@7.26.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + next: 13.5.8(@babel/core@7.26.9)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) qrcode-terminal: 0.12.0 react: 18.3.1 selfsigned: 2.4.1 - next-router-mock@0.9.13(next@13.5.8(@babel/core@7.26.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1): + next-router-mock@0.9.13(next@13.5.8(@babel/core@7.26.9)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1): dependencies: - next: 13.5.8(@babel/core@7.26.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + next: 13.5.8(@babel/core@7.26.9)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 next-tick@1.1.0: {} - next@13.5.8(@babel/core@7.26.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + next@13.5.8(@babel/core@7.26.9)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: '@next/env': 13.5.8 '@swc/helpers': 0.5.2 busboy: 1.6.0 - caniuse-lite: 1.0.30001651 + caniuse-lite: 1.0.30001669 postcss: 8.4.31 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - styled-jsx: 5.1.1(@babel/core@7.26.8)(react@18.3.1) + styled-jsx: 5.1.1(@babel/core@7.26.9)(react@18.3.1) watchpack: 2.4.0 optionalDependencies: '@next/swc-darwin-arm64': 13.5.8 @@ -15751,7 +16398,7 @@ snapshots: no-case@3.0.4: dependencies: lower-case: 2.0.2 - tslib: 2.6.3 + tslib: 2.6.2 node-addon-api@2.0.2: {} @@ -15777,13 +16424,13 @@ snapshots: fetch-blob: 3.2.0 formdata-polyfill: 4.0.10 - node-forge@1.3.1: {} + node-forge@1.3.1(patch_hash=nfdrir6ttlr77nd4pr3kkewsuy): {} node-gyp-build@4.8.1: {} - node-releases@2.0.18: {} + node-releases@2.0.14: {} - node-releases@2.0.19: {} + node-releases@2.0.18: {} nofilter@1.0.4: {} @@ -15904,7 +16551,7 @@ snapshots: p-try@2.2.0: {} - package-json-from-dist@1.0.0: {} + package-json-from-dist@1.0.1: {} pako@2.1.0: {} @@ -15924,7 +16571,7 @@ snapshots: parse-json@5.2.0: dependencies: - '@babel/code-frame': 7.26.2 + '@babel/code-frame': 7.25.7 error-ex: 1.3.2 json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.2.4 @@ -15970,6 +16617,8 @@ snapshots: path-to-regexp@0.1.7: {} + path-to-regexp@6.2.2: {} + path-to-regexp@6.3.0: {} path-type@1.1.0: @@ -15998,6 +16647,8 @@ snapshots: performance-now@2.1.0: {} + picocolors@1.0.1: {} + picocolors@1.1.1: {} picomatch@2.3.1: {} @@ -16043,11 +16694,11 @@ snapshots: mlly: 1.7.0 pathe: 1.1.2 - playwright-core@1.48.2: {} + playwright-core@1.49.0: {} - playwright@1.48.2: + playwright@1.49.0: dependencies: - playwright-core: 1.48.2 + playwright-core: 1.49.0 optionalDependencies: fsevents: 2.3.2 @@ -16085,13 +16736,19 @@ snapshots: picocolors: 1.1.1 source-map-js: 1.2.0 + postcss@8.4.49: + dependencies: + nanoid: 3.3.8 + picocolors: 1.1.1 + source-map-js: 1.2.1 + postcss@8.5.2: dependencies: nanoid: 3.3.8 picocolors: 1.1.1 source-map-js: 1.2.1 - preact@10.23.1: {} + preact@10.22.0: {} prelude-ls@1.2.1: {} @@ -16161,6 +16818,10 @@ snapshots: qrcode-terminal@0.12.0: {} + qrcode-with-logos@1.1.1: + dependencies: + qrcode: 1.5.3 + qrcode@1.5.3: dependencies: dijkstrajs: 1.0.3 @@ -16225,7 +16886,7 @@ snapshots: react-error-boundary@3.1.4(react@18.3.1): dependencies: - '@babel/runtime': 7.25.0 + '@babel/runtime': 7.24.6 react: 18.3.1 react-hook-form@7.51.0(react@18.3.1): @@ -16234,7 +16895,7 @@ snapshots: react-i18next@11.18.6(i18next@21.10.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: - '@babel/runtime': 7.25.0 + '@babel/runtime': 7.24.6 html-parse-stringify: 3.0.1 i18next: 21.10.0 react: 18.3.1 @@ -16257,7 +16918,7 @@ snapshots: dependencies: react: 18.3.1 react-style-singleton: 2.2.1(@types/react@18.3.12)(react@18.3.1) - tslib: 2.6.3 + tslib: 2.6.2 optionalDependencies: '@types/react': 18.3.12 @@ -16266,7 +16927,7 @@ snapshots: react: 18.3.1 react-remove-scroll-bar: 2.3.6(@types/react@18.3.12)(react@18.3.1) react-style-singleton: 2.2.1(@types/react@18.3.12)(react@18.3.1) - tslib: 2.6.3 + tslib: 2.6.2 use-callback-ref: 1.3.2(@types/react@18.3.12)(react@18.3.1) use-sidecar: 1.1.2(@types/react@18.3.12)(react@18.3.1) optionalDependencies: @@ -16277,7 +16938,7 @@ snapshots: get-nonce: 1.0.1 invariant: 2.2.4 react: 18.3.1 - tslib: 2.6.3 + tslib: 2.6.2 optionalDependencies: '@types/react': 18.3.12 @@ -16291,10 +16952,10 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - react-universal-interface@0.6.2(react@18.3.1)(tslib@2.6.3): + react-universal-interface@0.6.2(react@18.3.1)(tslib@2.6.2): dependencies: react: 18.3.1 - tslib: 2.6.3 + tslib: 2.6.2 react-use-error-boundary@3.0.0(react@18.3.1): dependencies: @@ -16316,13 +16977,13 @@ snapshots: nano-css: 5.6.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - react-universal-interface: 0.6.2(react@18.3.1)(tslib@2.6.3) + react-universal-interface: 0.6.2(react@18.3.1)(tslib@2.6.2) resize-observer-polyfill: 1.5.1 screenfull: 5.2.0 set-harmonic-interval: 1.0.1 throttle-debounce: 3.0.1 ts-easing: 0.2.0 - tslib: 2.6.3 + tslib: 2.6.2 react@18.3.1: dependencies: @@ -16377,7 +17038,9 @@ snapshots: dependencies: picomatch: 2.3.1 - readdirp@4.1.1: {} + readdirp@4.1.2: {} + + readonly-date@1.0.0: {} real-require@0.1.0: {} @@ -16396,7 +17059,7 @@ snapshots: regenerator-transform@0.15.2: dependencies: - '@babel/runtime': 7.25.0 + '@babel/runtime': 7.24.6 regexpu-core@5.3.2: dependencies: @@ -16554,7 +17217,7 @@ snapshots: rtl-css-js@1.16.1: dependencies: - '@babel/runtime': 7.25.0 + '@babel/runtime': 7.24.6 run-parallel@1.2.0: dependencies: @@ -16562,7 +17225,7 @@ snapshots: rxjs@7.8.1: dependencies: - tslib: 2.6.3 + tslib: 2.6.2 safe-stable-stringify@2.4.3: {} @@ -16604,13 +17267,13 @@ snapshots: selfsigned@2.4.1: dependencies: '@types/node-forge': 1.3.11 - node-forge: 1.3.1 + node-forge: 1.3.1(patch_hash=nfdrir6ttlr77nd4pr3kkewsuy) semver@5.7.2: {} semver@6.3.1: {} - semver@7.6.3: {} + semver@7.6.2: {} send@0.18.0: dependencies: @@ -16729,12 +17392,12 @@ snapshots: snake-case@3.0.4: dependencies: dot-case: 3.0.4 - tslib: 2.6.3 + tslib: 2.6.2 socket.io-client@4.7.5(bufferutil@4.0.8)(utf-8-validate@5.0.10): dependencies: '@socket.io/component-emitter': 3.1.2 - debug: 4.3.6 + debug: 4.3.7 engine.io-client: 6.5.3(bufferutil@4.0.8)(utf-8-validate@5.0.10) socket.io-parser: 4.2.4 transitivePeerDependencies: @@ -16745,7 +17408,7 @@ snapshots: socket.io-parser@4.2.4: dependencies: '@socket.io/component-emitter': 3.1.2 - debug: 4.3.6 + debug: 4.3.7 transitivePeerDependencies: - supports-color @@ -16757,11 +17420,11 @@ snapshots: semver: 5.7.2 yargs: 4.8.1 - solc@0.8.26(debug@4.4.0): + solc@0.8.26(debug@4.3.7): dependencies: command-exists: 1.2.9 commander: 8.3.0 - follow-redirects: 1.15.6(debug@4.4.0) + follow-redirects: 1.15.6(debug@4.3.7) js-sha3: 0.8.0 memorystream: 0.3.1 semver: 5.7.2 @@ -16867,6 +17530,8 @@ snapshots: statuses@2.0.1: {} + std-env@3.7.0: {} + std-env@3.8.0: {} stoppable@1.1.0: {} @@ -16932,7 +17597,7 @@ snapshots: strip-ansi@7.1.0: dependencies: - ansi-regex: 6.0.1 + ansi-regex: 6.1.0 strip-bom@2.0.0: dependencies: @@ -16956,14 +17621,14 @@ snapshots: strip-json-comments@5.0.1: {} - styled-components@5.3.11(@babel/core@7.26.8)(react-dom@18.3.1(react@18.3.1))(react-is@17.0.2)(react@18.3.1): + styled-components@5.3.6(@babel/core@7.26.9)(react-dom@18.3.1(react@18.3.1))(react-is@17.0.2)(react@18.3.1): dependencies: - '@babel/helper-module-imports': 7.24.7(supports-color@5.5.0) - '@babel/traverse': 7.25.3(supports-color@5.5.0) + '@babel/helper-module-imports': 7.24.6 + '@babel/traverse': 7.24.6(supports-color@5.5.0) '@emotion/is-prop-valid': 1.2.2 '@emotion/stylis': 0.8.5 '@emotion/unitless': 0.7.5 - babel-plugin-styled-components: 2.1.4(@babel/core@7.26.8)(styled-components@5.3.11(@babel/core@7.26.8)(react-dom@18.3.1(react@18.3.1))(react-is@17.0.2)(react@18.3.1))(supports-color@5.5.0) + babel-plugin-styled-components: 2.1.4(@babel/core@7.26.9)(styled-components@5.3.6(@babel/core@7.26.9)(react-dom@18.3.1(react@18.3.1))(react-is@17.0.2)(react@18.3.1)) css-to-react-native: 3.2.0 hoist-non-react-statics: 3.3.2 react: 18.3.1 @@ -16974,12 +17639,26 @@ snapshots: transitivePeerDependencies: - '@babel/core' - styled-jsx@5.1.1(@babel/core@7.26.8)(react@18.3.1): + styled-components@6.1.15(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + dependencies: + '@emotion/is-prop-valid': 1.2.2 + '@emotion/unitless': 0.8.1 + '@types/stylis': 4.2.5 + css-to-react-native: 3.2.0 + csstype: 3.1.3 + postcss: 8.4.49 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + shallowequal: 1.1.0 + stylis: 4.3.2 + tslib: 2.6.2 + + styled-jsx@5.1.1(@babel/core@7.26.9)(react@18.3.1): dependencies: client-only: 0.0.1 react: 18.3.1 optionalDependencies: - '@babel/core': 7.26.8 + '@babel/core': 7.26.9 stylelint-config-recommended@15.0.0(stylelint@16.14.1(typescript@5.4.5)): dependencies: @@ -16994,7 +17673,7 @@ snapshots: dependencies: globby: 11.1.0 jest-worker: 29.7.0 - micromatch: 4.0.8 + micromatch: 4.0.7 normalize-path: 3.0.0 schema-utils: 4.2.0 stylelint: 16.14.1(typescript@5.4.5) @@ -17011,7 +17690,7 @@ snapshots: cosmiconfig: 9.0.0(typescript@5.4.5) css-functions-list: 3.2.3 css-tree: 3.1.0 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.3.7 fast-glob: 3.3.3 fastest-levenshtein: 1.0.16 file-entry-cache: 10.0.6 @@ -17080,7 +17759,7 @@ snapshots: css-tree: 2.3.1 css-what: 6.1.0 csso: 5.0.5 - picocolors: 1.1.1 + picocolors: 1.0.1 swap-case@1.1.2: dependencies: @@ -17110,7 +17789,7 @@ snapshots: synckit@0.8.8: dependencies: '@pkgr/core': 0.1.1 - tslib: 2.6.3 + tslib: 2.6.2 system-architecture@0.1.0: {} @@ -17176,9 +17855,9 @@ snapshots: tinyexec@0.3.2: {} - tinyglobby@0.2.6: + tinyglobby@0.2.9: dependencies: - fdir: 6.3.0(picomatch@4.0.2) + fdir: 6.4.2(picomatch@4.0.2) picomatch: 4.0.2 tinypool@1.0.2: {} @@ -17196,6 +17875,8 @@ snapshots: dependencies: os-tmpdir: 1.0.2 + to-fast-properties@2.0.0: {} + to-regex-range@5.0.1: dependencies: is-number: 7.0.0 @@ -17232,15 +17913,15 @@ snapshots: ts-easing@0.2.0: {} - ts-node@10.9.2(@types/node@20.17.17)(typescript@5.4.5): + ts-node@10.9.2(@types/node@20.17.19)(typescript@5.4.5): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.11 '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 20.17.17 - acorn: 8.12.1 + '@types/node': 20.17.19 + acorn: 8.11.3 acorn-walk: 8.3.2 arg: 4.1.3 create-require: 1.1.1 @@ -17263,7 +17944,7 @@ snapshots: tslib@1.14.1: {} - tslib@2.6.3: {} + tslib@2.6.2: {} tsort@0.0.1: {} @@ -17296,7 +17977,7 @@ snapshots: type-fest@0.7.1: {} - type-fest@4.30.0: {} + type-fest@4.32.0: {} type-is@1.6.18: dependencies: @@ -17327,7 +18008,7 @@ snapshots: typescript@5.7.3: {} - ua-parser-js@1.0.37: {} + ua-parser-js@1.0.39: {} ufo@1.5.3: {} @@ -17339,6 +18020,8 @@ snapshots: uncrypto@0.1.3: {} + undici-types@5.26.5: {} + undici-types@6.19.8: {} undici@5.28.4: @@ -17397,15 +18080,15 @@ snapshots: consola: 3.2.3 pathe: 1.1.2 - update-browserslist-db@1.1.0(browserslist@4.23.3): + update-browserslist-db@1.0.16(browserslist@4.23.0): dependencies: - browserslist: 4.23.3 + browserslist: 4.23.0 escalade: 3.1.2 picocolors: 1.1.1 - update-browserslist-db@1.1.2(browserslist@4.24.4): + update-browserslist-db@1.1.1(browserslist@4.24.0): dependencies: - browserslist: 4.24.4 + browserslist: 4.24.0 escalade: 3.2.0 picocolors: 1.1.1 @@ -17431,7 +18114,7 @@ snapshots: use-callback-ref@1.3.2(@types/react@18.3.12)(react@18.3.1): dependencies: react: 18.3.1 - tslib: 2.6.3 + tslib: 2.6.2 optionalDependencies: '@types/react': 18.3.12 @@ -17444,7 +18127,7 @@ snapshots: dependencies: detect-node-es: 1.1.0 react: 18.3.1 - tslib: 2.6.3 + tslib: 2.6.2 optionalDependencies: '@types/react': 18.3.12 @@ -17452,6 +18135,10 @@ snapshots: dependencies: react: 18.3.1 + use-sync-external-store@1.4.0(react@18.3.1): + dependencies: + react: 18.3.1 + utf-8-validate@5.0.10: dependencies: node-gyp-build: 4.8.1 @@ -17521,13 +18208,13 @@ snapshots: - utf-8-validate - zod - vite-node@3.0.5(@types/node@20.17.17): + vite-node@3.0.6(@types/node@20.17.19): dependencies: cac: 6.7.14 - debug: 4.4.0(supports-color@5.5.0) + debug: 4.4.0 es-module-lexer: 1.6.0 pathe: 2.0.3 - vite: 5.2.11(@types/node@20.17.17) + vite: 5.2.11(@types/node@20.17.19) transitivePeerDependencies: - '@types/node' - less @@ -17538,38 +18225,38 @@ snapshots: - supports-color - terser - vite-plugin-magical-svg@1.3.0(vite@5.2.11(@types/node@20.17.17)): + vite-plugin-magical-svg@1.3.0(vite@5.2.11(@types/node@20.17.19)): dependencies: - magic-string: 0.30.17 + magic-string: 0.30.10 svgo: 3.3.2 - vite: 5.2.11(@types/node@20.17.17) + vite: 5.2.11(@types/node@20.17.19) xml2js: 0.6.2 - vite@5.2.11(@types/node@20.17.17): + vite@5.2.11(@types/node@20.17.19): dependencies: esbuild: 0.20.2 postcss: 8.4.38 rollup: 4.18.0 optionalDependencies: - '@types/node': 20.17.17 + '@types/node': 20.17.19 fsevents: 2.3.3 - vitest-canvas-mock@0.3.3(vitest@3.0.5(@types/debug@4.1.12)(@types/node@20.17.17)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.17)(typescript@5.4.5))): + vitest-canvas-mock@0.3.3(vitest@3.0.6(@types/debug@4.1.12)(@types/node@20.17.19)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.19)(typescript@5.4.5))): dependencies: jest-canvas-mock: 2.5.2 - vitest: 3.0.5(@types/debug@4.1.12)(@types/node@20.17.17)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.17)(typescript@5.4.5)) - - vitest@3.0.5(@types/debug@4.1.12)(@types/node@20.17.17)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.17)(typescript@5.4.5)): - dependencies: - '@vitest/expect': 3.0.5 - '@vitest/mocker': 3.0.5(msw@2.7.0(@types/node@20.17.17)(typescript@5.4.5))(vite@5.2.11(@types/node@20.17.17)) - '@vitest/pretty-format': 3.0.5 - '@vitest/runner': 3.0.5 - '@vitest/snapshot': 3.0.5 - '@vitest/spy': 3.0.5 - '@vitest/utils': 3.0.5 - chai: 5.1.2 - debug: 4.4.0(supports-color@5.5.0) + vitest: 3.0.6(@types/debug@4.1.12)(@types/node@20.17.19)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.19)(typescript@5.4.5)) + + vitest@3.0.6(@types/debug@4.1.12)(@types/node@20.17.19)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(msw@2.7.0(@types/node@20.17.19)(typescript@5.4.5)): + dependencies: + '@vitest/expect': 3.0.6 + '@vitest/mocker': 3.0.6(msw@2.7.0(@types/node@20.17.19)(typescript@5.4.5))(vite@5.2.11(@types/node@20.17.19)) + '@vitest/pretty-format': 3.0.6 + '@vitest/runner': 3.0.6 + '@vitest/snapshot': 3.0.6 + '@vitest/spy': 3.0.6 + '@vitest/utils': 3.0.6 + chai: 5.2.0 + debug: 4.4.0 expect-type: 1.1.0 magic-string: 0.30.17 pathe: 2.0.3 @@ -17578,12 +18265,12 @@ snapshots: tinyexec: 0.3.2 tinypool: 1.0.2 tinyrainbow: 2.0.0 - vite: 5.2.11(@types/node@20.17.17) - vite-node: 3.0.5(@types/node@20.17.17) + vite: 5.2.11(@types/node@20.17.19) + vite-node: 3.0.6(@types/node@20.17.19) why-is-node-running: 2.3.0 optionalDependencies: '@types/debug': 4.1.12 - '@types/node': 20.17.17 + '@types/node': 20.17.19 jsdom: 24.1.0(bufferutil@4.0.8)(utf-8-validate@5.0.10) transitivePeerDependencies: - less @@ -18101,8 +18788,8 @@ snapshots: webauthn-p256@0.0.5: dependencies: - '@noble/curves': 1.6.0 - '@noble/hashes': 1.5.0 + '@noble/curves': 1.4.0 + '@noble/hashes': 1.4.0 webextension-polyfill@0.10.0: {} @@ -18112,7 +18799,7 @@ snapshots: webpack-bundle-analyzer@4.7.0(bufferutil@4.0.8)(utf-8-validate@5.0.10): dependencies: - acorn: 8.12.1 + acorn: 8.11.3 acorn-walk: 8.3.2 chalk: 4.1.2 commander: 7.2.0 @@ -18120,7 +18807,7 @@ snapshots: lodash: 4.17.21 opener: 1.5.2 sirv: 1.0.19 - ws: 7.5.10(bufferutil@4.0.8)(utf-8-validate@5.0.10) + ws: 7.5.9(bufferutil@4.0.8)(utf-8-validate@5.0.10) transitivePeerDependencies: - bufferutil - utf-8-validate @@ -18199,7 +18886,7 @@ snapshots: esbuild: 0.17.19 miniflare: 3.20240512.0(bufferutil@4.0.8)(utf-8-validate@5.0.10) nanoid: 3.3.7 - path-to-regexp: 6.3.0 + path-to-regexp: 6.2.2 resolve: 1.22.8 resolve.exports: 2.0.2 selfsigned: 2.4.1 @@ -18257,7 +18944,7 @@ snapshots: bufferutil: 4.0.8 utf-8-validate: 5.0.10 - ws@7.5.10(bufferutil@4.0.8)(utf-8-validate@5.0.10): + ws@7.5.9(bufferutil@4.0.8)(utf-8-validate@5.0.10): optionalDependencies: bufferutil: 4.0.8 utf-8-validate: 5.0.10 @@ -18267,12 +18954,12 @@ snapshots: bufferutil: 4.0.8 utf-8-validate: 5.0.10 - ws@8.17.1(bufferutil@4.0.8)(utf-8-validate@5.0.10): + ws@8.17.0(bufferutil@4.0.8)(utf-8-validate@5.0.10): optionalDependencies: bufferutil: 4.0.8 utf-8-validate: 5.0.10 - ws@8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10): + ws@8.17.1(bufferutil@4.0.8)(utf-8-validate@5.0.10): optionalDependencies: bufferutil: 4.0.8 utf-8-validate: 5.0.10 @@ -18327,7 +19014,7 @@ snapshots: yallist@3.1.1: {} - yaml@2.5.0: {} + yaml@2.4.2: {} yargs-parser@18.1.3: dependencies: @@ -18369,7 +19056,7 @@ snapshots: yargs@16.2.0: dependencies: cliui: 7.0.4 - escalade: 3.1.2 + escalade: 3.2.0 get-caller-file: 2.0.5 require-directory: 2.1.1 string-width: 4.2.3 @@ -18379,7 +19066,7 @@ snapshots: yargs@17.7.2: dependencies: cliui: 8.0.1 - escalade: 3.1.2 + escalade: 3.2.0 get-caller-file: 2.0.5 require-directory: 2.1.1 string-width: 4.2.3 @@ -18419,7 +19106,7 @@ snapshots: dependencies: ethers: 5.7.2(bufferutil@4.0.8)(utf-8-validate@5.0.10) - zod-validation-error@3.3.1(zod@3.23.8): + zod-validation-error@3.4.0(zod@3.23.8): dependencies: zod: 3.23.8 @@ -18432,3 +19119,11 @@ snapshots: '@types/react': 18.3.12 immer: 9.0.21 react: 18.3.1 + + zustand@4.5.6(@types/react@18.3.12)(immer@9.0.21)(react@18.3.1): + dependencies: + use-sync-external-store: 1.4.0(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.12 + immer: 9.0.21 + react: 18.3.1 diff --git a/public/locales/en/common.json b/public/locales/en/common.json index e2c54a1af..110d15f29 100644 --- a/public/locales/en/common.json +++ b/public/locales/en/common.json @@ -98,7 +98,8 @@ "noPrimaryName": "No Primary Name", "viewProfile": "View Profile", "viewDetails": "View Details", - "register": "Register" + "register": "Register", + "myWallet": "My Wallet" }, "name": { "registered": "Registered", @@ -306,6 +307,7 @@ "message": "Double check these details before confirming in your wallet.", "waitingForWallet": "Waiting for Wallet", "openWallet": "Open Wallet", + "openCapsule": "Start", "insufficientFunds": "Insufficient funds" }, "sent": { @@ -418,5 +420,25 @@ "ownerNotManager": "You must be connected as the Manager of this name to set the verification record. You can view and update the Manager under the Ownership tab.", "wrongAccount": "You must be connected as {{ nameOrAddress }} to set the verification record.", "default": "We could't verify your account. Please return to Dentity and try again." + }, + "networkNotifications": { + "Ethereum": { + "title": "Switch to Ethereum?", + "description": "You've selected Ethereum (mainnet) in your wallet.", + "action": "Go to app.ens.domains" + }, + "Sepolia": { + "title": "Switch to Sepolia?", + "description": "You've selected Sepolia (testnet) in your wallet.", + "action": "Go to sepolia.app.ens.domains" + }, + "Holesky": { + "title": "Switch to Holesky?", + "description": "You've selected Holesky (testnet) in your wallet.", + "action": "Go to holesky.app.ens.domains" + } + }, + "capsule": { + "signInWithCapsule": "Sign in with Capsule" } } diff --git a/src/components/@molecules/ConnectButton/ConnectButton.test.tsx b/src/components/@molecules/ConnectButton/ConnectButton.test.tsx new file mode 100644 index 000000000..73353302c --- /dev/null +++ b/src/components/@molecules/ConnectButton/ConnectButton.test.tsx @@ -0,0 +1,51 @@ +import { mockFunction, render, screen } from '@app/test-utils' + +import { useConnectModal } from '@usecapsule/rainbowkit' +import { beforeEach, describe, expect, it, vi } from 'vitest' + +import { useAccountSafely } from '@app/hooks/account/useAccountSafely' +import useHasPendingTransactions from '@app/hooks/transactions/useHasPendingTransactions' +import { useBreakpoint } from '@app/utils/BreakpointProvider' + +import { ConnectButton, HeaderConnect } from './ConnectButton' + +vi.mock('@app/utils/BreakpointProvider') +vi.mock('@app/hooks/account/useAccountSafely') +vi.mock('@app/hooks/useRouterWithHistory') +vi.mock('@app/hooks/transactions/useHasPendingTransactions') + +const mockUseAccountSafely = mockFunction(useAccountSafely) +const mockUseBreakpoint = mockFunction(useBreakpoint) + +describe('ConnectButton', () => { + beforeEach(() => { + mockUseBreakpoint.mockReturnValue({ + sm: false, + }) + }) + it('should call openConnectModal when clicked', () => { + render() + screen.debug() + screen.getByTestId('body-connect-button').click() + expect(useConnectModal().openConnectModal).toHaveBeenCalled() + }) +}) + +describe('HeaderConnect', () => { + beforeEach(() => { + mockUseBreakpoint.mockReturnValue({ + sm: false, + }) + }) + it('should render ConnectButton when not connected', () => { + mockUseAccountSafely.mockReturnValue({ address: undefined }) + render() + expect(screen.getByTestId('connect-button')).toBeInTheDocument() + }) + + it('should render HeaderProfile when connected', () => { + mockUseAccountSafely.mockReturnValue({ address: '0x123' }) + render() + expect(screen.getByTestId('header-profile')).toBeInTheDocument() + }) +}) diff --git a/src/components/ConnectButton.tsx b/src/components/@molecules/ConnectButton/ConnectButton.tsx similarity index 66% rename from src/components/ConnectButton.tsx rename to src/components/@molecules/ConnectButton/ConnectButton.tsx index a63447eb3..3d985dba5 100644 --- a/src/components/ConnectButton.tsx +++ b/src/components/@molecules/ConnectButton/ConnectButton.tsx @@ -1,12 +1,10 @@ -import { useConnectModal } from '@rainbow-me/rainbowkit' -import { Key, ReactNode } from 'react' +import { useConnectModal } from '@usecapsule/rainbowkit' import { useTranslation } from 'react-i18next' import styled, { css } from 'styled-components' import type { Address } from 'viem' -import { useDisconnect, useEnsAvatar } from 'wagmi' +import { useConnections, useDisconnect, useEnsAvatar } from 'wagmi' -import { Button, CheckSVG, CogSVG, CopySVG, ExitSVG, PersonSVG, Profile } from '@ensdomains/thorin' -import { DropdownItem } from '@ensdomains/thorin/dist/types/components/molecules/Dropdown/Dropdown' +import { Button, PersonSVG, Profile } from '@ensdomains/thorin' import { useAccountSafely } from '@app/hooks/account/useAccountSafely' import { usePrimaryName } from '@app/hooks/ensjs/public/usePrimaryName' @@ -16,9 +14,9 @@ import { useRouterWithHistory } from '@app/hooks/useRouterWithHistory' import { useZorb } from '@app/hooks/useZorb' import { useBreakpoint } from '@app/utils/BreakpointProvider' import { ensAvatarConfig } from '@app/utils/query/ipfsGateway' -import { shortenAddress } from '@app/utils/utils' +import { hasCapsuleConnection } from '@app/utils/utils' -import BaseLink from './@atoms/BaseLink' +import { getDropdownItems } from './utils' const StyledButtonWrapper = styled.div<{ $isTabBar?: boolean; $large?: boolean }>( ({ theme, $isTabBar, $large }) => [ @@ -57,14 +55,6 @@ const StyledButtonWrapper = styled.div<{ $isTabBar?: boolean; $large?: boolean } ], ) -const SectionDivider = styled.div( - ({ theme }) => css` - width: calc(100% + ${theme.space['4']}); - height: 1px; - background-color: ${theme.colors.border}; - `, -) - const PersonOverlay = styled.div( ({ theme }) => css` display: flex; @@ -106,7 +96,9 @@ export const ConnectButton = ({ isTabBar, large, inHeader }: Props) => { + + ) +} diff --git a/src/components/@molecules/NetworkNotifications/utils.test.ts b/src/components/@molecules/NetworkNotifications/utils.test.ts new file mode 100644 index 000000000..4e1aa901a --- /dev/null +++ b/src/components/@molecules/NetworkNotifications/utils.test.ts @@ -0,0 +1,37 @@ +import { describe, it, expect, beforeEach, afterEach, vi } from 'vitest' +import { shouldOpenModal } from './utils' +import * as chains from '@app/constants/chains' + +describe('shouldOpenModal', () => { + beforeEach(() => { + vi.resetModules() + vi.clearAllMocks() + }) + + afterEach(() => { + vi.resetModules() + vi.clearAllMocks() + }) + + it('should return false when connectedChainId is not provided', () => { + const result = shouldOpenModal(undefined, 1) + expect(result).toBe(false) + }) + + it('should return false when accountChainId is not provided', () => { + const result = shouldOpenModal(1, undefined) + expect(result).toBe(false) + }) + + it('should return false when chain is not supported', () => { + vi.spyOn(chains, 'getSupportedChainById').mockReturnValue(undefined) + const result = shouldOpenModal(1, 999999) + expect(result).toBe(false) + }) + + it('should return true when connected chain id is different from account chain id and account chain id is supported', () => { + vi.spyOn(chains, 'getSupportedChainById').mockReturnValue({ id: 17000 } as any) + const result = shouldOpenModal(1, 17000) + expect(result).toBe(true) + }) +}) diff --git a/src/components/@molecules/NetworkNotifications/utils.ts b/src/components/@molecules/NetworkNotifications/utils.ts new file mode 100644 index 000000000..58e5a7a3c --- /dev/null +++ b/src/components/@molecules/NetworkNotifications/utils.ts @@ -0,0 +1,10 @@ +import { getSupportedChainById } from '@app/constants/chains' + +export const shouldOpenModal = ( + connectedChainId: number | undefined, + accountChainId: number | undefined, +): boolean => { + if (!connectedChainId || !accountChainId) return false + if (!getSupportedChainById(accountChainId)) return false + return connectedChainId !== accountChainId +} diff --git a/src/components/@molecules/TransactionDialogManager/stage/TransactionStageModal.test.tsx b/src/components/@molecules/TransactionDialogManager/stage/TransactionStageModal.test.tsx index a511fb560..30c71ba8c 100644 --- a/src/components/@molecules/TransactionDialogManager/stage/TransactionStageModal.test.tsx +++ b/src/components/@molecules/TransactionDialogManager/stage/TransactionStageModal.test.tsx @@ -28,6 +28,18 @@ vi.mock('@app/hooks/transactions/useAddRecentTransaction') vi.mock('@app/hooks/transactions/useRecentTransactions') vi.mock('@app/hooks/chain/useInvalidateOnBlock') vi.mock('@app/utils/safe') +vi.mock('@wagmi/core', async () => { + const actual = await vi.importActual('@wagmi/core') + return { + ...actual, + getFeeHistory: vi.fn().mockResolvedValue({ + baseFeePerGas: [], + gasUsedRatio: [], + oldestBlock: 0n, + reward: [], + }), + } +}) vi.mock('wagmi') vi.mock('viem/actions') @@ -194,6 +206,7 @@ describe('TransactionStageModal', () => { expect(screen.getByTestId('transaction-modal-confirm-button')).toBeDisabled(), ) }) + it('should disable confirm button and re-estimate gas if a unique identifier is changed', async () => { mockEstimateGas.mockResolvedValue(1n) mockUseIsSafeApp.mockReturnValue({ data: false }) @@ -217,10 +230,11 @@ describe('TransactionStageModal', () => { ) expect(screen.getByTestId('transaction-modal-confirm-button')).toBeDisabled() await waitFor(() => - expect(screen.getByTestId('transaction-modal-confirm-button')).toBeEnabled(), + expect(screen.getByTestId('transaction-modal-confirm-button')).toBeEnabled() ) expect(mockEstimateGas).toHaveBeenCalledTimes(1) }) + it('should only show confirm button as enabled if gas is estimated and sendTransaction func is defined', async () => { mockEstimateGas.mockResolvedValue(1n) mockUseSendTransaction.mockReturnValue({ diff --git a/src/components/@molecules/TransactionDialogManager/stage/TransactionStageModal.tsx b/src/components/@molecules/TransactionDialogManager/stage/TransactionStageModal.tsx index d31e80975..7f0c000e8 100644 --- a/src/components/@molecules/TransactionDialogManager/stage/TransactionStageModal.tsx +++ b/src/components/@molecules/TransactionDialogManager/stage/TransactionStageModal.tsx @@ -1,10 +1,11 @@ import { queryOptions } from '@tanstack/react-query' +import { switchChain } from '@wagmi/core' import { Dispatch, useCallback, useEffect, useMemo, useState } from 'react' import { useTranslation } from 'react-i18next' import styled, { css } from 'styled-components' import { match, P } from 'ts-pattern' import { BaseError } from 'viem' -import { useClient, useConnectorClient, useSendTransaction } from 'wagmi' +import { useClient, useConnections, useConnectorClient, useSendTransaction } from 'wagmi' import { Button, @@ -36,11 +37,13 @@ import { ConfigWithEns, TransactionDisplayItem } from '@app/types' import { getReadableError } from '@app/utils/errors' import { getIsCachedData } from '@app/utils/getIsCachedData' import { useQuery } from '@app/utils/query/useQuery' -import { makeEtherscanLink } from '@app/utils/utils' +import { wagmiConfig } from '@app/utils/query/wagmi' +import { hasCapsuleConnection, makeEtherscanLink } from '@app/utils/utils' import { DisplayItems } from '../DisplayItems' import { createTransactionRequestQueryFn, + createTransactionRequestUnsafe, getTransactionErrorQueryFn, getUniqueTransaction, transactionSuccessHandler, @@ -305,6 +308,30 @@ const getPreTransactionError = ({ }) } +const isLocalProvider = !!process.env.NEXT_PUBLIC_PROVIDER +export const handleSendTransaction = async ( + request: Awaited>, + actionName: string, + trackEvent: ReturnType['trackEvent'], + sendTransaction: ReturnType['sendTransaction'], +) => { + if (!request) { + throw Error('No request object') + } + + sendTransaction(request) + + const eventName = match(actionName) + .with('commitName', () => 'commit_wallet_opened' as const) + .with('registerName', () => 'register_wallet_opened' as const) + .with('approveDnsRegistrar', () => 'dns_approve_registrar_wallet_opened' as const) + .with('importDnsName', () => 'dns_import_wallet_opened' as const) + .with('claimDnsName', () => 'dns_claim_wallet_opened' as const) + .otherwise(() => undefined) + + if (eventName) trackEvent({ eventName }) +} + export const TransactionStageModal = ({ actionName, currentStep, @@ -323,7 +350,6 @@ export const TransactionStageModal = ({ const { data: isSafeApp, isLoading: safeAppStatusLoading } = useIsSafeApp() const { data: connectorClient } = useConnectorClient() const client = useClient() - const addRecentTransaction = useAddRecentTransaction() const stage = transaction.stage || 'confirm' @@ -368,9 +394,11 @@ export const TransactionStageModal = ({ queryFn: createTransactionRequestQueryFn, }) + const connections = useConnections() + const preparedOptions = queryOptions({ queryKey: initialOptions.queryKey, - queryFn: initialOptions.queryFn({ connectorClient, isSafeApp }), + queryFn: initialOptions.queryFn({ connectorClient, isSafeApp, connections }), }) const transactionRequestQuery = useQuery({ @@ -468,6 +496,8 @@ export const TransactionStageModal = ({ return }, [helper]) + const isCapsuleConnected = hasCapsuleConnection(connections) + const ActionButton = useMemo(() => { const handleCompleteTransaction = () => { dispatch({ name: 'incrementTransaction' }) @@ -504,7 +534,7 @@ export const TransactionStageModal = ({ if (stage === 'failed') { return ( ) }, [ @@ -582,6 +603,7 @@ export const TransactionStageModal = ({ trackEvent, actionName, preTransactionError, + isCapsuleConnected, ]) return ( diff --git a/src/components/@molecules/TransactionDialogManager/stage/query.test.ts b/src/components/@molecules/TransactionDialogManager/stage/query.test.ts new file mode 100644 index 000000000..6312f0758 --- /dev/null +++ b/src/components/@molecules/TransactionDialogManager/stage/query.test.ts @@ -0,0 +1,60 @@ +import { getFeeHistory } from '@wagmi/core' +import { describe, expect, it, vi } from 'vitest' + +import { getLargestMedianGasFee } from './query' + +vi.mock('@usecapsule/rainbowkit', () => ({ + useConnectModal: () => ({ + openConnectModal: vi.fn(), + }), + connectorsForWallets: () => [() => {}], +})) + +vi.mock('@wagmi/core', async () => { + const originalModule = await vi.importActual('@wagmi/core') + return { + ...originalModule, + getFeeHistory: vi.fn(), + } +}) + +describe('getLargestMedianGasFee', () => { + it('should return the largest median gas fee from the reward array', async () => { + getFeeHistory.mockReturnValue({ + baseFeePerGas: [], + gasUsedRatio: [], + oldestBlock: 0n, + reward: [ + [1000n], // Block 1 median fee + [2000n], // Block 2 median fee + [1500n], // Block 3 median fee + [3000n], // Block 4 median fee + [2500n], // Block 5 median fee + ], + }) + + const result = await getLargestMedianGasFee() + expect(result).toBe(3000n) + expect(getFeeHistory).toHaveBeenCalledWith(expect.anything(), { + blockCount: 5, + rewardPercentiles: [50], + }) + }) + + it('should return the default max priority fee per gas if getFeeHistory fails', async () => { + getFeeHistory.mockRejectedValue(new Error('Failed to get fee history')) + const result = await getLargestMedianGasFee() + expect(result).toBe(5000000000n) + }) + + it('should return the default max priority fee per gas if getFeeHistory returns an empty reward array', async () => { + getFeeHistory.mockResolvedValue({ + baseFeePerGas: [], + gasUsedRatio: [], + oldestBlock: 0n, + reward: [], + }) + const result = await getLargestMedianGasFee() + expect(result).toBe(5000000000n) + }) +}) diff --git a/src/components/@molecules/TransactionDialogManager/stage/query.ts b/src/components/@molecules/TransactionDialogManager/stage/query.ts index 7bd856d83..4962afffe 100644 --- a/src/components/@molecules/TransactionDialogManager/stage/query.ts +++ b/src/components/@molecules/TransactionDialogManager/stage/query.ts @@ -1,5 +1,5 @@ import { QueryFunctionContext } from '@tanstack/react-query' -import { CallParameters, SendTransactionReturnType } from '@wagmi/core' +import { CallParameters, getFeeHistory, SendTransactionReturnType } from '@wagmi/core' import { Dispatch } from 'react' import { Address, @@ -12,6 +12,7 @@ import { TransactionRequest, } from 'viem' import { call, estimateGas, getTransaction, prepareTransactionRequest } from 'viem/actions' +import { useConnections } from 'wagmi' import { SupportedChain } from '@app/constants/chains' import { TransactionStatus } from '@app/hooks/transactions/transactionStore' @@ -32,7 +33,9 @@ import { CreateQueryKey, } from '@app/types' import { getReadableError } from '@app/utils/errors' +import { wagmiConfig } from '@app/utils/query/wagmi' import { CheckIsSafeAppReturnType } from '@app/utils/safe' +import { hasCapsuleConnection } from '@app/utils/utils' type AccessListResponse = { accessList: { @@ -161,7 +164,29 @@ export const calculateGasLimit = async ({ } } -type CreateTransactionRequestQueryKey = CreateQueryKey< +const defaultMaxPriorityFeePerGas = 5000000000n +export const getLargestMedianGasFee = async () => { + let feeHistory + try { + feeHistory = await getFeeHistory(wagmiConfig, { + blockCount: 5, + rewardPercentiles: [50], + }) + } catch (e) { + console.error('Failed to get fee history') + return defaultMaxPriorityFeePerGas + } + + if (!feeHistory.reward || feeHistory.reward.length === 0) return defaultMaxPriorityFeePerGas + + const maxPriorityFeePerGas = feeHistory.reward + .map((block) => block[0]) + .reduce((max, fee) => (fee > max ? fee : max), BigInt(0)) + + return maxPriorityFeePerGas +} + +export type CreateTransactionRequestQueryKey = CreateQueryKey< UniqueTransaction, 'createTransactionRequest', 'standard' @@ -173,14 +198,16 @@ type CreateTransactionRequestUnsafeParameters = { isSafeApp: CheckIsSafeAppReturnType | undefined params: UniqueTransaction chainId: SupportedChain['id'] + connections: any } -const createTransactionRequestUnsafe = async ({ +export const createTransactionRequestUnsafe = async ({ client, connectorClient, isSafeApp, params, chainId, + connections, }: CreateTransactionRequestUnsafeParameters) => { const transactionRequest = await createTransactionRequest({ name: params.name, @@ -203,6 +230,13 @@ const createTransactionRequestUnsafe = async ({ transactionName: params.name, }) + const isCapsuleConnected = hasCapsuleConnection(connections) + + let largestMedianGasFee = 0n + if (isCapsuleConnected) { + largestMedianGasFee = await getLargestMedianGasFee() + } + const request = await prepareTransactionRequest(client, { to: transactionRequest.to, accessList, @@ -211,6 +245,7 @@ const createTransactionRequestUnsafe = async ({ gas: gasLimit, parameters: ['fees', 'nonce', 'type'], ...('value' in transactionRequest ? { value: transactionRequest.value } : {}), + ...(isCapsuleConnected ? { maxPriorityFeePerGas: largestMedianGasFee } : {}), }) return { @@ -227,9 +262,11 @@ export const createTransactionRequestQueryFn = ({ connectorClient, isSafeApp, + connections, }: { connectorClient: ConnectorClientWithEns | undefined isSafeApp: CheckIsSafeAppReturnType | undefined + connections: ReturnType }) => async ({ queryKey: [params, chainId, address], @@ -248,6 +285,7 @@ export const createTransactionRequestQueryFn = isSafeApp, params, chainId, + connections, }), error: null, } diff --git a/src/components/Header.test.tsx b/src/components/Header.test.tsx index b65a640eb..50e338d78 100644 --- a/src/components/Header.test.tsx +++ b/src/components/Header.test.tsx @@ -9,7 +9,6 @@ import { useInitial } from '@app/hooks/useInitial' import { useBreakpoint } from '@app/utils/BreakpointProvider' import Hamburger from './@molecules/Hamburger/Hamburger' -import { HeaderConnect } from './ConnectButton' import { Header } from './Header' vi.mock('next/router', async () => await vi.importActual('next-router-mock')) @@ -27,7 +26,6 @@ const mockUseAccount = mockFunction(useAccount) const mockUseRecentTransactions = mockFunction(useRecentTransactions) const mockUseInitial = mockFunction(useInitial) const mockUseBreakpoint = mockFunction(useBreakpoint) -const mockHeaderConnect = mockFunction(HeaderConnect) const mockHamburger = mockFunction(Hamburger) const baseBreakpoints: ReturnType = { @@ -58,7 +56,6 @@ describe('Header', () => { mockUseRecentTransactions.mockReturnValue([]) mockUseInitial.mockReturnValue(false) mockUseBreakpoint.mockReturnValue(baseBreakpoints) - mockHeaderConnect.mockImplementation(() =>
Connect
) mockHamburger.mockImplementation(() =>
burger
) describe('search', () => { diff --git a/src/components/Header.tsx b/src/components/Header.tsx index 5b804d9fd..d957c2b02 100644 --- a/src/components/Header.tsx +++ b/src/components/Header.tsx @@ -13,10 +13,10 @@ import ENSFull from '../assets/ENSFull.svg' import ENSWithGradient from '../assets/ENSWithGradient.svg' import BaseLink from './@atoms/BaseLink' import { RouteItem } from './@atoms/RouteItem/RouteItem' +import { HeaderConnect } from './@molecules/ConnectButton/ConnectButton' import Hamburger from './@molecules/Hamburger/Hamburger' import { SearchInput } from './@molecules/SearchInput/SearchInput' import { ConditionalWrapper } from './ConditionalWrapper' -import { HeaderConnect } from './ConnectButton' const HeaderWrapper = styled.header( ({ theme }) => css` diff --git a/src/components/TabBar.tsx b/src/components/TabBar.tsx index 5525617ad..a3a4f7733 100644 --- a/src/components/TabBar.tsx +++ b/src/components/TabBar.tsx @@ -14,7 +14,7 @@ import { getDestination, getRoute, legacyFavouritesRoute } from '@app/routes' import { ensAvatarConfig } from '@app/utils/query/ipfsGateway' import { DisconnectButton, RouteItem } from './@atoms/RouteItem/RouteItem' -import { ConnectButton } from './ConnectButton' +import { ConnectButton } from './@molecules/ConnectButton/ConnectButton' const ExtraNavWrapper = styled.div<{ $isOpen: boolean }>( ({ theme, $isOpen }) => css` diff --git a/src/components/TestnetWarning.test.tsx b/src/components/TestnetWarning.test.tsx deleted file mode 100644 index 294267934..000000000 --- a/src/components/TestnetWarning.test.tsx +++ /dev/null @@ -1,30 +0,0 @@ -import { mockFunction, render, screen } from '@app/test-utils' - -import { describe, expect, it, vi } from 'vitest' -import { useAccount } from 'wagmi' -import { goerli, mainnet } from 'wagmi/chains' - -import { TestnetWarning } from './TestnetWarning' - -vi.mock('wagmi') - -const mockUseAccount = mockFunction(useAccount) - -describe('TestnetWarning', () => { - it('renders if testnet is used', async () => { - mockUseAccount.mockReturnValue({ chain: goerli }) - - render() - - expect(screen.getByText(`You are viewing the ENS app on ${goerli.name} testnet.`)).toBeVisible() - }) - it('renders nothing if on mainnet', async () => { - mockUseAccount.mockReturnValue({ chain: mainnet }) - - const { container } = render() - - expect(container).not.toHaveTextContent( - `You are viewing the ENS app on ${mainnet.name} testnet.`, - ) - }) -}) diff --git a/src/components/TestnetWarning.tsx b/src/components/TestnetWarning.tsx index 5e6cc73f1..647096330 100644 --- a/src/components/TestnetWarning.tsx +++ b/src/components/TestnetWarning.tsx @@ -1,6 +1,7 @@ import { useEffect, useState } from 'react' import styled, { css } from 'styled-components' -import { useAccount } from 'wagmi' + +import { getChainsFromUrl } from '@app/constants/chains' const Container = styled.div( ({ theme }) => css` @@ -14,14 +15,14 @@ const Container = styled.div( ) export const TestnetWarning = () => { - const { chain } = useAccount() + const chains = getChainsFromUrl() const [isClient, setIsClient] = useState(false) useEffect(() => { setIsClient(true) }, []) - if (isClient && chain && chain.id !== 1) - return You are viewing the ENS app on {chain.name} testnet. + if (isClient && chains && chains[0].id !== 1) + return You are viewing the ENS app on {chains[0].name} testnet. return null } diff --git a/src/components/Notifications.test.tsx b/src/components/TransactionNotifications.test.tsx similarity index 86% rename from src/components/Notifications.test.tsx rename to src/components/TransactionNotifications.test.tsx index 8c329f18a..af6fcd843 100644 --- a/src/components/Notifications.test.tsx +++ b/src/components/TransactionNotifications.test.tsx @@ -8,7 +8,7 @@ import type { Transaction } from '@app/hooks/transactions/transactionStore' import { useBreakpoint } from '@app/utils/BreakpointProvider' import { UpdateCallback, useCallbackOnTransaction } from '@app/utils/SyncProvider/SyncProvider' -import { Notifications } from './Notifications' +import { TransactionNotifications } from './TransactionNotifications' vi.mock('@app/hooks/chain/useChainName') vi.mock('@app/utils/SyncProvider/SyncProvider') @@ -45,15 +45,15 @@ describe('Notifications', () => { }) mockUseChainName.mockReturnValue('mainnet') it('should not render a toast if there is no transactions', () => { - render() + render() expect(screen.queryByTestId('toast-desktop')).not.toBeInTheDocument() }) it('should render a toast when a pending transaction is confirmed', async () => { - const { rerender } = render() + const { rerender } = render() expect(screen.queryByTestId('toast-desktop')).not.toBeInTheDocument() cb(makeRecentTransaction('confirmed')(null, 0)) - rerender() + rerender() await waitFor(() => screen.queryByTestId('toast-desktop'), { timeout: 500, @@ -62,13 +62,13 @@ describe('Notifications', () => { it('should show a new notification on dismiss if there is one queued', async () => { const mockData = Array.from({ length: 2 }, makeRecentTransaction('pending')) - const { rerender } = render() + const { rerender } = render() expect(screen.queryByTestId('toast-desktop')).not.toBeInTheDocument() cb({ ...mockData[0], status: 'confirmed1' as any }) cb({ ...mockData[1], status: 'confirmed2' as any }) - rerender() + rerender() await waitFor(() => screen.queryByText('transaction.status.confirmed1.notifyTitle'), { timeout: 500, @@ -83,12 +83,12 @@ describe('Notifications', () => { }).then((el) => expect(el).toBeInTheDocument()) }) it('should show the correct title and description for a notification', async () => { - const { rerender } = render() + const { rerender } = render() const mockData = makeRecentTransaction('confirmed')(null, 0) cb(mockData) - rerender() + rerender() await waitFor(() => screen.queryByTestId('toast-desktop'), { timeout: 500, @@ -98,12 +98,12 @@ describe('Notifications', () => { expect(screen.getByText('transaction.status.confirmed.notifyMessage')).toBeInTheDocument() }) it('should not show a notification for a repriced transaction', async () => { - const { rerender } = render() + const { rerender } = render() const mockData = makeRecentTransaction('repriced')(null, 0) cb(mockData) - rerender() + rerender() await waitFor(() => screen.queryByTestId('toast-desktop'), { timeout: 500, diff --git a/src/components/Notifications.tsx b/src/components/TransactionNotifications.tsx similarity index 98% rename from src/components/Notifications.tsx rename to src/components/TransactionNotifications.tsx index 811050a68..44eb73292 100644 --- a/src/components/Notifications.tsx +++ b/src/components/TransactionNotifications.tsx @@ -28,7 +28,7 @@ const ButtonContainer = styled.div( `, ) -export const Notifications = () => { +export const TransactionNotifications = () => { const { t } = useTranslation() const breakpoints = useBreakpoint() diff --git a/src/components/pages/import/[name]/steps/VerifyOffchainOwnership.tsx b/src/components/pages/import/[name]/steps/VerifyOffchainOwnership.tsx index 37623b516..dd466a8cf 100644 --- a/src/components/pages/import/[name]/steps/VerifyOffchainOwnership.tsx +++ b/src/components/pages/import/[name]/steps/VerifyOffchainOwnership.tsx @@ -1,4 +1,4 @@ -import { useConnectModal } from '@rainbow-me/rainbowkit' +import { useConnectModal } from '@usecapsule/rainbowkit' import { Dispatch, useMemo } from 'react' import { useTranslation } from 'react-i18next' import styled, { css } from 'styled-components' diff --git a/src/components/pages/import/[name]/steps/onchain/VerifyOnchainOwnership.tsx b/src/components/pages/import/[name]/steps/onchain/VerifyOnchainOwnership.tsx index 50a7651d2..316139acb 100644 --- a/src/components/pages/import/[name]/steps/onchain/VerifyOnchainOwnership.tsx +++ b/src/components/pages/import/[name]/steps/onchain/VerifyOnchainOwnership.tsx @@ -1,4 +1,4 @@ -import { useConnectModal } from '@rainbow-me/rainbowkit' +import { useConnectModal } from '@usecapsule/rainbowkit' import { Dispatch, useMemo } from 'react' import { useTranslation } from 'react-i18next' import styled, { css } from 'styled-components' diff --git a/src/components/pages/profile/[name]/registration/steps/Pricing/Pricing.test.tsx b/src/components/pages/profile/[name]/registration/steps/Pricing/Pricing.test.tsx index b3d74572f..2145daed7 100644 --- a/src/components/pages/profile/[name]/registration/steps/Pricing/Pricing.test.tsx +++ b/src/components/pages/profile/[name]/registration/steps/Pricing/Pricing.test.tsx @@ -25,7 +25,6 @@ describe('ActionButton', () => { ethPrice: 1n, durationType: 'years', } - it('should have disabled "Next" button if no choice has been made', () => { render() expect(screen.getByText('action.next')).toBeInTheDocument() diff --git a/src/components/pages/profile/[name]/registration/steps/Pricing/Pricing.tsx b/src/components/pages/profile/[name]/registration/steps/Pricing/Pricing.tsx index d675ac1c2..9695a4ac9 100644 --- a/src/components/pages/profile/[name]/registration/steps/Pricing/Pricing.tsx +++ b/src/components/pages/profile/[name]/registration/steps/Pricing/Pricing.tsx @@ -1,7 +1,6 @@ import { Dispatch, SetStateAction, useEffect, useState } from 'react' import { useTranslation } from 'react-i18next' import { usePreviousDistinct } from 'react-use' -import usePrevious from 'react-use/lib/usePrevious' import styled, { css } from 'styled-components' import { match, P } from 'ts-pattern' import type { Address } from 'viem' @@ -23,9 +22,9 @@ import MoonpayLogo from '@app/assets/MoonpayLogo.svg' import MobileFullWidth from '@app/components/@atoms/MobileFullWidth' import { RegistrationTimeComparisonBanner } from '@app/components/@atoms/RegistrationTimeComparisonBanner/RegistrationTimeComparisonBanner' import { Spacer } from '@app/components/@atoms/Spacer' +import { ConnectButton } from '@app/components/@molecules/ConnectButton/ConnectButton' import { DateSelection } from '@app/components/@molecules/DateSelection/DateSelection' import { Card } from '@app/components/Card' -import { ConnectButton } from '@app/components/ConnectButton' import { useAccountSafely } from '@app/hooks/account/useAccountSafely' import { useContractAddress } from '@app/hooks/chain/useContractAddress' import { useEstimateFullRegistration } from '@app/hooks/gasEstimation/useEstimateRegistration' @@ -537,28 +536,20 @@ const Pricing = ({ const hasPendingMoonpayTransaction = moonpayTransactionStatus === 'pending' const hasFailedMoonpayTransaction = moonpayTransactionStatus === 'failed' - const previousMoonpayTransactionStatus = usePrevious(moonpayTransactionStatus) - const [paymentMethodChoice, setPaymentMethodChoice] = useState( - hasPendingMoonpayTransaction ? PaymentMethod.moonpay : PaymentMethod.ethereum, + hasPendingMoonpayTransaction || !balance?.value + ? PaymentMethod.moonpay + : PaymentMethod.ethereum, ) // Keep radio button choice up to date useEffect(() => { - if (moonpayTransactionStatus) { - setPaymentMethodChoice( - hasPendingMoonpayTransaction || hasFailedMoonpayTransaction - ? PaymentMethod.moonpay - : PaymentMethod.ethereum, - ) - } - }, [ - hasFailedMoonpayTransaction, - hasPendingMoonpayTransaction, - moonpayTransactionStatus, - previousMoonpayTransactionStatus, - setPaymentMethodChoice, - ]) + setPaymentMethodChoice( + hasPendingMoonpayTransaction || hasFailedMoonpayTransaction || !balance?.value + ? PaymentMethod.moonpay + : PaymentMethod.ethereum, + ) + }, [balance, hasFailedMoonpayTransaction, hasPendingMoonpayTransaction, setPaymentMethodChoice]) const fullEstimate = useEstimateFullRegistration({ name, diff --git a/src/constants/chains.ts b/src/constants/chains.ts index 4bb193d91..a7a2e2378 100644 --- a/src/constants/chains.ts +++ b/src/constants/chains.ts @@ -1,3 +1,4 @@ +import { match } from 'ts-pattern' import { holesky } from 'viem/chains' import { localhost, mainnet, sepolia } from 'wagmi/chains' @@ -6,6 +7,8 @@ import { addEnsContracts } from '@ensdomains/ensjs' import type { Register } from '@app/local-contracts' import { makeLocalhostChainWithEns } from '@app/utils/chains/makeLocalhostChainWithEns' +const isLocalProvider = !!process.env.NEXT_PUBLIC_PROVIDER + export const deploymentAddresses = JSON.parse( process.env.NEXT_PUBLIC_DEPLOYMENT_ADDRESSES || '{}', ) as Register['deploymentAddresses'] @@ -43,3 +46,51 @@ export type SupportedChain = | typeof sepoliaWithEns | typeof holeskyWithEns | typeof localhostWithEns + +export const getChainsFromUrl = () => { + if (typeof window === 'undefined') { + return [ + ...(isLocalProvider ? ([localhostWithEns] as const) : ([] as const)), + holeskyWithEns, + mainnetWithEns, + sepoliaWithEns, + ] + } + + const { hostname } = window.location + const segments = hostname.split('.') + + + // Chain override + const chain = process.env.NEXT_PUBLIC_CHAIN_NAME + if (chain === 'holesky') return [holeskyWithEns] + if (chain === 'sepolia') return [sepoliaWithEns] + + // Previews + if (segments.length === 4) { + /* Used for testing preview on mainnet at: test.app.ens.domains. Update by configuring dns */ + if (segments[0] === 'test') { + return [mainnetWithEns] + } + if (segments.slice(1).join('.') === 'ens-app-v3.pages.dev') { + return [holeskyWithEns] + } + } + + // Dev environment + if (hostname === 'localhost' || hostname === '127.0.0.1') { + if (isLocalProvider) return [localhostWithEns] + return [holeskyWithEns] + } + + return match(segments[0]) + .with('sepolia', () => [ + sepoliaWithEns, + ]) + .with('holesky', () => [ + holeskyWithEns, + ]) + .otherwise(() => [ + mainnetWithEns, + ]) +} diff --git a/src/hooks/pages/profile/useRenew/useRenew.test.ts b/src/hooks/pages/profile/useRenew/useRenew.test.ts index fd0522b17..6ea732f5c 100644 --- a/src/hooks/pages/profile/useRenew/useRenew.test.ts +++ b/src/hooks/pages/profile/useRenew/useRenew.test.ts @@ -1,14 +1,12 @@ import type { ParsedUrlQuery } from 'querystring' import { mockFunction, renderHook, screen } from '@app/test-utils' -import { useConnectModal } from '@rainbow-me/rainbowkit' +import { useConnectModal } from '@usecapsule/rainbowkit' import mockRouter from 'next-router-mock' import { useSearchParams } from 'next/navigation' import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest' import { useAccount, type UseAccountReturnType } from 'wagmi' -import { sc } from '@ensdomains/address-encoder/coins' - import { useAbilities } from '@app/hooks/abilities/useAbilities' import { useBasicName } from '@app/hooks/useBasicName' import { useTransactionFlow } from '@app/transaction-flow/TransactionFlowProvider' @@ -19,14 +17,12 @@ import { calculateRenewState, removeRenewParam, useRenew } from './useRenew' vi.mock('next/router', async () => await vi.importActual('next-router-mock')) vi.mock('@app/hooks/useBasicName') vi.mock('@app/hooks/abilities/useAbilities') -vi.mock('@rainbow-me/rainbowkit') vi.mock('wagmi') vi.mock('@app/transaction-flow/TransactionFlowProvider') vi.mock('next/navigation') const mockUseBasicName = mockFunction(useBasicName) const mockUseAbilities = mockFunction(useAbilities) -const mockUseConnectModal = mockFunction(useConnectModal) const mockUseAccount = mockFunction(useAccount) const mockUseTransactionFlow = mockFunction(useTransactionFlow) const mockUseSearchParams = mockFunction(useSearchParams) @@ -493,11 +489,6 @@ describe('useRenew', () => { status: 'connected', }) - mockUseConnectModal.mockReturnValue({ - connectModalOpen: false, - openConnectModal: undefined, - }) - mockUseTransactionFlow.mockReturnValue({ usePreparedDataInput: () => mockShowExtendNamesInput, }) @@ -612,14 +603,10 @@ describe('useRenew', () => { mockRouter.push('/test.eth?renew=123') const mockOpenConnectModal = vi.fn() mockUseAccount.mockReturnValue({ status: 'disconnected' }) - mockUseConnectModal.mockReturnValue({ - openConnectModal: mockOpenConnectModal, - connectModalOpen: false, - }) renderHook(() => useRenew('test.eth')) - expect(mockOpenConnectModal).toHaveBeenCalled() + expect(useConnectModal().openConnectModal).toHaveBeenCalled() expect(mockShowExtendNamesInput).not.toHaveBeenCalled() }) @@ -686,11 +673,7 @@ describe('useRenew', () => { it('should do nothing when connect modal is open', () => { mockRouter.push('/test.eth?renew=123') - mockUseConnectModal.mockReturnValue({ - openConnectModal: vi.fn(), - connectModalOpen: true, - }) - + useConnectModal().connectModalOpen = true renderHook(() => useRenew('test.eth')) expect(mockShowExtendNamesInput).not.toHaveBeenCalled() diff --git a/src/hooks/pages/profile/useRenew/useRenew.ts b/src/hooks/pages/profile/useRenew/useRenew.ts index 0c9802afe..e392fb939 100644 --- a/src/hooks/pages/profile/useRenew/useRenew.ts +++ b/src/hooks/pages/profile/useRenew/useRenew.ts @@ -1,4 +1,4 @@ -import { useConnectModal } from '@rainbow-me/rainbowkit' +import { useConnectModal } from '@usecapsule/rainbowkit' import { useSearchParams } from 'next/navigation' import { useEffect, useState } from 'react' import { match } from 'ts-pattern' diff --git a/src/pages/_app.tsx b/src/pages/_app.tsx index d5d7546f0..315448927 100644 --- a/src/pages/_app.tsx +++ b/src/pages/_app.tsx @@ -1,7 +1,3 @@ -/* eslint-disable @typescript-eslint/naming-convention */ -import { darkTheme, lightTheme, RainbowKitProvider, Theme } from '@rainbow-me/rainbowkit' - -import '@rainbow-me/rainbowkit/styles.css' import '@ensdomains/thorin/dist/thorin.css' import '@splidejs/react-splide/css' @@ -17,20 +13,23 @@ import { modeVars, lightTheme as thorinLightTheme, ThemeProvider as ThorinThemeProvider, - useTheme, } from '@ensdomains/thorin' -import { Notifications } from '@app/components/Notifications' +import { NetworkNotifications } from '@app/components/@molecules/NetworkNotifications/NetworkNotifications' import { TestnetWarning } from '@app/components/TestnetWarning' +import { TransactionNotifications } from '@app/components/TransactionNotifications' import { TransactionStoreProvider } from '@app/hooks/transactions/TransactionStoreContext' import { Basic } from '@app/layouts/Basic' import { TransactionFlowProvider } from '@app/transaction-flow/TransactionFlowProvider' import { setupAnalytics } from '@app/utils/analytics' import { BreakpointProvider } from '@app/utils/BreakpointProvider' import { QueryProviders } from '@app/utils/query/providers' +import { RainbowKitWithCapsuleProvider } from '@app/utils/query/RainbowKitWithCapsuleProvider' import { SyncDroppedTransaction } from '@app/utils/SyncProvider/SyncDroppedTransaction' import { SyncProvider } from '@app/utils/SyncProvider/SyncProvider' +import '@usecapsule/rainbowkit/styles.css' + import i18n from '../i18n' import '../styles.css' @@ -152,19 +151,6 @@ declare global { const AppWithThorin = ({ Component, pageProps }: Omit) => { const getLayout = Component.getLayout ?? ((page) => page) - const theme = useTheme() - - const baseRainbowKitTheme = theme.mode === 'dark' ? darkTheme : lightTheme - - const rainbowKitTheme: Theme = { - ...baseRainbowKitTheme({ - accentColor: thorinLightTheme.colors.accent, - borderRadius: 'medium', - }), - fonts: { - body: 'Satoshi, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif', - }, - } const themeWithCSSVars = { ...thorinLightTheme, @@ -179,7 +165,7 @@ const AppWithThorin = ({ Component, pageProps }: Omit + @@ -188,7 +174,8 @@ const AppWithThorin = ({ Component, pageProps }: Omit - + + {getLayout()} @@ -198,7 +185,7 @@ const AppWithThorin = ({ Component, pageProps }: Omit - + ) } diff --git a/src/test-utils.tsx b/src/test-utils.tsx index 07dba94e1..221e6d734 100644 --- a/src/test-utils.tsx +++ b/src/test-utils.tsx @@ -26,6 +26,15 @@ vi.mock('@app/hooks/useRegistrationReducer', () => vi.fn(() => ({ item: { stepIn export const mockUseAccountReturnValue = { address: '0x123' } +const mockOpenConnectModal = vi.fn() +const useConnectModalReturnValue = { + openConnectModal: mockOpenConnectModal, + connectModalOpen: false, +} +vi.mock('@usecapsule/rainbowkit', () => ({ + useConnectModal: () => useConnectModalReturnValue, +})) + vi.mock('react-i18next', () => ({ useTranslation: () => ({ t: (value: string, opts: any) => { diff --git a/src/utils/constants.ts b/src/utils/constants.ts index 994abc021..c996a8483 100644 --- a/src/utils/constants.ts +++ b/src/utils/constants.ts @@ -26,3 +26,14 @@ export const IS_DEV_ENVIRONMENT = process.env.NEXT_PUBLIC_PROVIDER export const INVALID_NAME = '[Invalid ENS Name]' + +export const ENS_LINKS = { + X: 'https://x.com/ensdomains', + DISCORD: 'https://chat.ens.domains', + MIRROR: 'https://ens.mirror.xyz', + DISCOURSE: 'https://discuss.ens.domains', + GITHUB: 'https://github.com/ensdomains', + EMAIL: 'mailto:support@ens.domains', + HOMEPAGE: 'https://ens.domains/', + YOUTUBE: 'https://www.youtube.com/ensdomains', +} diff --git a/src/utils/getDefaultWallets.ts b/src/utils/getDefaultWallets.ts deleted file mode 100644 index fe17b5344..000000000 --- a/src/utils/getDefaultWallets.ts +++ /dev/null @@ -1,51 +0,0 @@ -import { connectorsForWallets, WalletList } from '@rainbow-me/rainbowkit' -import { - argentWallet, - braveWallet, - coinbaseWallet, - injectedWallet, - ledgerWallet, - metaMaskWallet, - phantomWallet, - rainbowWallet, - safeWallet, - walletConnectWallet, -} from '@rainbow-me/rainbowkit/wallets' - -export const getDefaultWallets = ({ - appName, - projectId, -}: { - appName: string - projectId: string -}) => { - const wallets: WalletList = [ - { - groupName: 'Popular', - wallets: [ - // injected / not always shown - injectedWallet, - safeWallet, - braveWallet, - () => ({ - ...phantomWallet(), - iconUrl: async () => (await import('../assets/PhantomWallet')).default, - iconBackground: '#9A8AEE', - downloadUrls: {}, - }), - // always shown - walletConnectWallet, - rainbowWallet, - coinbaseWallet, - metaMaskWallet, - ledgerWallet, - argentWallet, - ], - }, - ] - - return connectorsForWallets(wallets, { - appName, - projectId, - }) -} diff --git a/src/utils/query/RainbowKitWithCapsuleProvider.tsx b/src/utils/query/RainbowKitWithCapsuleProvider.tsx new file mode 100644 index 000000000..9b2c4d593 --- /dev/null +++ b/src/utils/query/RainbowKitWithCapsuleProvider.tsx @@ -0,0 +1,36 @@ +import { lightTheme, RainbowKitProvider, Theme } from '@usecapsule/rainbowkit' +import { ComponentProps, useEffect, useState } from 'react' + +import { lightTheme as thorinLightTheme } from '@ensdomains/thorin' + +import { hslToHex } from '../utils' +import { loadCapsule } from './loadCapsule' + +type RainbowKitProviderProps = ComponentProps + +const rainbowKitTheme: Theme = { + ...lightTheme({ + accentColor: hslToHex(thorinLightTheme.colors.accent), + borderRadius: 'medium', + }), + fonts: { + body: 'Satoshi, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif', + }, +} + +export const RainbowKitWithCapsuleProvider = (props: RainbowKitProviderProps) => { + const [capsuleData, setCapsule] = useState> | null>(null) + + useEffect(() => { + loadCapsule().then(setCapsule) + }, []) + + return ( + + ) +} diff --git a/src/utils/query/capsuleWallet.ts b/src/utils/query/capsuleWallet.ts new file mode 100644 index 000000000..056fdc891 --- /dev/null +++ b/src/utils/query/capsuleWallet.ts @@ -0,0 +1,73 @@ +import { connectorsForWallets } from '@usecapsule/rainbowkit' +import { + CapsuleWeb, + ConstructorOpts, + Environment, + GetCapsuleIntegratedOpts, + getCapsuleWalletIntegrated, + OAuthMethod, + type CapsuleModalProps, +} from '@usecapsule/rainbowkit-wallet' + +import i18n from '../../i18n' +import { ENS_LINKS, WC_PROJECT_ID } from '../constants' +import { transports } from './wagmi' + +const prodCapsuleApiKey = process.env.NEXT_PUBLIC_CAPSULE_API_KEY_PROD + +const APP_NAME = 'ENS' +const CAPSULE_ENV: Environment = prodCapsuleApiKey ? Environment.PROD : Environment.BETA +const CAPSULE_API_KEY = prodCapsuleApiKey || 'ea5557d8aed418b3c195f28c5a8dd3bb' + +const capsuleConstructorOpts: ConstructorOpts = { + // Passkey Portal Branding + portalBackgroundColor: '#FFFFFF', + portalPrimaryButtonColor: '#5298FF', + portalTextColor: '#000000', + portalPrimaryButtonTextColor: '#FFFFFF', + + // User Email Branding + emailTheme: 'light' as any, + emailPrimaryColor: '#5298FF', + githubUrl: ENS_LINKS.GITHUB, + xUrl: ENS_LINKS.X, + homepageUrl: ENS_LINKS.HOMEPAGE, + supportUrl: ENS_LINKS.EMAIL, + + disableWorkers: true, +} + +export const capsuleClient = new CapsuleWeb(CAPSULE_ENV, CAPSULE_API_KEY, capsuleConstructorOpts) + +export const capsuleModalProps = { + appName: 'ENS Manager App', + oAuthMethods: [ + OAuthMethod.GOOGLE, + OAuthMethod.TWITTER, + OAuthMethod.DISCORD, + OAuthMethod.APPLE, + OAuthMethod.FACEBOOK, + ], +} as const satisfies Partial + +const capsuleWalletItegratedOpts: GetCapsuleIntegratedOpts = { + capsule: capsuleClient, + nameOverride: i18n.t('capsule.signInWithCapsule'), + iconBackgroundOverride: '#ffffff', + transports, +} + +export const capsuleWallet = getCapsuleWalletIntegrated(capsuleWalletItegratedOpts) + +export const capsuleWalletConnectorFn = connectorsForWallets( + [ + { + groupName: 'Managed', + wallets: [capsuleWallet], + }, + ], + { + appName: APP_NAME, + projectId: WC_PROJECT_ID, + }, +)[0] diff --git a/src/utils/query/loadCapsule.test.ts b/src/utils/query/loadCapsule.test.ts new file mode 100644 index 000000000..489011962 --- /dev/null +++ b/src/utils/query/loadCapsule.test.ts @@ -0,0 +1,123 @@ +import { reconnect } from '@wagmi/core' +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest' + +import { capsuleClient, capsuleModalProps, capsuleWalletConnectorFn } from './capsuleWallet' +import { loadCapsule } from './loadCapsule' +import { prefix, wagmiConfig } from './wagmi' + +// Mock the external dependencies +vi.mock('@wagmi/core', () => ({ + reconnect: vi.fn(), +})) + +vi.mock('./wagmi', () => ({ + prefix: 'test-prefix', + wagmiConfig: { + _internal: { + connectors: { + setup: vi.fn(), + setState: vi.fn(), + }, + }, + state: { + status: 'disconnected', + }, + subscribe: vi.fn(), + }, +})) + +vi.mock('./capsuleWallet', () => ({ + capsuleClient: {}, + capsuleModalProps: {}, + capsuleWalletConnectorFn: vi.fn(), +})) + +describe('loadCapsule', () => { + beforeEach(() => { + vi.resetAllMocks() + localStorage.clear() + }) + + afterEach(() => { + vi.restoreAllMocks() + vi.useRealTimers() + }) + + it('should import capsuleWallet, set up the connector, and add it to wagmiConfig', async () => { + const mockInitialisedConnector = { id: 'capsule-integrated' } + wagmiConfig._internal.connectors.setup.mockReturnValue(mockInitialisedConnector) + + const result = await loadCapsule() + + expect(wagmiConfig._internal.connectors.setup).toHaveBeenCalledWith(capsuleWalletConnectorFn) + expect(wagmiConfig._internal.connectors.setState).toHaveBeenCalled() + expect(result).toEqual({ + capsuleClient: capsuleClient, + capsuleModalProps: capsuleModalProps, + }) + }) + + it('should not attempt reconnection if shouldAttemptReconnect conditions are not met', async () => { + localStorage.setItem(`${prefix}.recentConnectorId`, JSON.stringify('other-connector')) + + await loadCapsule() + + expect(wagmiConfig.subscribe).not.toHaveBeenCalled() + expect(reconnect).not.toHaveBeenCalled() + }) + + it('should attempt reconnection if shouldAttemptReconnect conditions are met', async () => { + localStorage.setItem(`${prefix}.recentConnectorId`, JSON.stringify('capsule-integrated')) + localStorage.setItem(`${prefix}.capsule-integrated.connected`, 'true') + wagmiConfig.state.status = 'disconnected' + + let subscriberCallback: (state: string) => void + wagmiConfig.subscribe.mockImplementation((_, callback) => { + subscriberCallback = callback + return vi.fn() // Return a mock unsubscribe function + }) + + await loadCapsule() + + expect(wagmiConfig.subscribe).toHaveBeenCalled() + + // Simulate state changes + subscriberCallback('disconnected') + + // Run all microtasks (including process.nextTick) + vi.useFakeTimers() + vi.runAllTicks() + + // Wait for reconnect to be called + await vi.waitFor(() => { + expect(reconnect).toHaveBeenCalled() + }) + + subscriberCallback('connected') + expect(wagmiConfig.subscribe).toHaveBeenCalledTimes(1) // Ensure unsubscribe was called + }) + + it('should not attempt reconnection if already connected', async () => { + localStorage.setItem(`${prefix}.recentConnectorId`, JSON.stringify('capsule-integrated')) + localStorage.setItem(`${prefix}.capsule-integrated.connected`, 'true') + wagmiConfig.state.status = 'connected' + + await loadCapsule() + + expect(wagmiConfig.subscribe).not.toHaveBeenCalled() + expect(reconnect).not.toHaveBeenCalled() + }) + + it('should add capsule connector and remove existing one with the same id', async () => { + const mockInitialisedConnector = { id: 'capsule-integrated' } + wagmiConfig._internal.connectors.setup.mockReturnValue(mockInitialisedConnector) + + await loadCapsule() + + expect(wagmiConfig._internal.connectors.setState).toHaveBeenCalledWith(expect.any(Function)) + const setStateCallback = wagmiConfig._internal.connectors.setState.mock.calls[0][0] + const existingConnectors = [{ id: 'capsule-integrated' }, { id: 'other-connector' }] + const newConnectors = setStateCallback(existingConnectors) + expect(newConnectors).toEqual([{ id: 'other-connector' }, mockInitialisedConnector]) + }) +}) diff --git a/src/utils/query/loadCapsule.ts b/src/utils/query/loadCapsule.ts new file mode 100644 index 000000000..4626a0091 --- /dev/null +++ b/src/utils/query/loadCapsule.ts @@ -0,0 +1,53 @@ +import { Connector, reconnect } from '@wagmi/core' + +import { prefix, wagmiConfig } from './wagmi' + +const capsuleWalletId = 'capsule-integrated' + +const shouldAttemptReconnect = () => { + const recentConnectorId = localStorage.getItem(`${prefix}.recentConnectorId`) + if (recentConnectorId !== `"${capsuleWalletId}"`) return false + + const connected = localStorage.getItem(`${prefix}.${capsuleWalletId}.connected`) + return connected === 'true' +} + +const addCapsuleConnector = (connector: Connector) => { + wagmiConfig._internal.connectors.setState((existingConnectors) => [ + ...existingConnectors.filter((c) => c.id !== capsuleWalletId), + connector, + ]) +} + +const attemptReconnect = (initialisedCapsuleConnector: Connector) => { + if (shouldAttemptReconnect() && wagmiConfig.state.status !== 'connected') { + const unsubscribe = wagmiConfig.subscribe( + (s) => s.status, + (state) => { + if (state === 'connected') unsubscribe() + if (state !== 'disconnected') return + + unsubscribe() + process.nextTick(() => + reconnect(wagmiConfig, { connectors: [initialisedCapsuleConnector] }), + ) + }, + ) + } +} + +export const loadCapsule = async () => { + const { capsuleClient, capsuleWalletConnectorFn, capsuleModalProps } = await import( + /* webpackMode: "lazy" */ + /* webpackFetchPriority: "low" */ + './capsuleWallet' + ) + + const initialisedCapsuleConnector = + wagmiConfig._internal.connectors.setup(capsuleWalletConnectorFn) + + addCapsuleConnector(initialisedCapsuleConnector) + attemptReconnect(initialisedCapsuleConnector) + + return { capsuleClient, capsuleModalProps } +} diff --git a/src/utils/query/wagmi.ts b/src/utils/query/wagmi.ts index 31e44228f..96c0a48ca 100644 --- a/src/utils/query/wagmi.ts +++ b/src/utils/query/wagmi.ts @@ -4,23 +4,12 @@ import { holesky, localhost, mainnet, sepolia } from 'wagmi/chains' import { ccipRequest } from '@ensdomains/ensjs/utils' -import { - holeskyWithEns, - localhostWithEns, - mainnetWithEns, - sepoliaWithEns, -} from '@app/constants/chains' +import { getChainsFromUrl, SupportedChain } from '@app/constants/chains' -import { WC_PROJECT_ID } from '../constants' -import { getDefaultWallets } from '../getDefaultWallets' +import { rainbowKitConnectors } from './wallets' const isLocalProvider = !!process.env.NEXT_PUBLIC_PROVIDER -const connectors = getDefaultWallets({ - appName: 'ENS', - projectId: WC_PROJECT_ID, -}) - const infuraKey = process.env.NEXT_PUBLIC_INFURA_KEY || 'cfa6ae2501cc4354a74e20432507317c' const tenderlyKey = process.env.NEXT_PUBLIC_TENDERLY_KEY || '4imxc4hQfRjxrVB2kWKvTo' const drpcKey = process.env.NEXT_PUBLIC_DRPC_KEY || 'AnmpasF2C0JBqeAEzxVO8aRuvzLTrWcR75hmDonbV6cR' @@ -49,7 +38,7 @@ const initialiseTransports = ( return fallback(transportArray) } -const prefix = 'wagmi' +export const prefix = 'wagmi' const localStorageWithInvertMiddleware = (): Storage | undefined => { if (typeof window === 'undefined') return undefined @@ -83,14 +72,7 @@ const localStorageWithInvertMiddleware = (): Storage | undefined => { } } -const chains = [ - ...(isLocalProvider ? ([localhostWithEns] as const) : ([] as const)), - mainnetWithEns, - sepoliaWithEns, - holeskyWithEns, -] as const - -const transports = { +export const transports = { ...(isLocalProvider ? ({ [localhost.id]: http(process.env.NEXT_PUBLIC_PROVIDER!) as unknown as FallbackTransport, @@ -104,8 +86,11 @@ const transports = { [holesky.id]: initialiseTransports('holesky', [drpcUrl, tenderlyUrl]), } as const +const chains = getChainsFromUrl() as unknown as readonly [SupportedChain, ...SupportedChain[]] + const wagmiConfig_ = createConfig({ - connectors, + syncConnectedChain: false, + connectors: rainbowKitConnectors, ssr: true, multiInjectedProviderDiscovery: true, storage: createStorage({ storage: localStorageWithInvertMiddleware(), key: prefix }), @@ -129,25 +114,6 @@ const wagmiConfig_ = createConfig({ }, }) -const isSupportedChain = (chainId: number): chainId is (typeof chains)[number]['id'] => - chains.some((c) => c.id === chainId) - -// hotfix for wagmi bug -wagmiConfig_.subscribe( - ({ connections, current }) => (current ? connections.get(current)?.chainId : undefined), - (chainId_) => { - const chainId = chainId_ || chains[0].id - // If chain is not configured, then don't switch over to it. - const isChainConfigured = isSupportedChain(chainId) - if (!isChainConfigured) return - - return wagmiConfig_.setState((x) => ({ - ...x, - chainId: chainId ?? x.chainId, - })) - }, -) - export const wagmiConfig = wagmiConfig_ as typeof wagmiConfig_ & { _isEns: true } diff --git a/src/utils/query/wallets.ts b/src/utils/query/wallets.ts new file mode 100644 index 000000000..2ee9761d4 --- /dev/null +++ b/src/utils/query/wallets.ts @@ -0,0 +1,48 @@ +import { connectorsForWallets, type WalletList } from '@usecapsule/rainbowkit' +import { + argentWallet, + braveWallet, + coinbaseWallet, + injectedWallet, + ledgerWallet, + metaMaskWallet, + phantomWallet, + rainbowWallet, + safeWallet, + walletConnectWallet, +} from '@usecapsule/rainbowkit/wallets' + +import { WC_PROJECT_ID } from '../constants' + +export const rainbowKitWallets = [ + // injected / not always shown + injectedWallet, + safeWallet, + braveWallet, + () => ({ + ...phantomWallet(), + iconUrl: async () => (await import('../../assets/PhantomWallet')).default, + iconBackground: '#9A8AEE', + downloadUrls: {}, + }), + // always shown + walletConnectWallet, + rainbowWallet, + coinbaseWallet, + metaMaskWallet, + ledgerWallet, + argentWallet, +] as const satisfies WalletList[number]['wallets'] + +export const rainbowKitConnectors = connectorsForWallets( + [ + { + groupName: 'Popular', + wallets: rainbowKitWallets, + }, + ], + { + appName: 'ENS', + projectId: WC_PROJECT_ID, + }, +) diff --git a/src/utils/utils.test.ts b/src/utils/utils.test.ts index a71515796..9c1448ec2 100644 --- a/src/utils/utils.test.ts +++ b/src/utils/utils.test.ts @@ -1,4 +1,6 @@ -import { describe, expect, it } from 'vitest' +import { afterEach, beforeEach, describe, expect, it } from 'vitest' + +import { holeskyWithEns, mainnetWithEns, sepoliaWithEns } from '@app/constants/chains' import { dateFromDateDiff } from './date' import { diff --git a/src/utils/utils.ts b/src/utils/utils.ts index 022b8d89b..f8f88df41 100644 --- a/src/utils/utils.ts +++ b/src/utils/utils.ts @@ -1,5 +1,6 @@ import type { TFunction } from 'react-i18next' import { toBytes, type Address } from 'viem' +import { Connection } from 'wagmi' import { Eth2ldName } from '@ensdomains/ensjs/dist/types/types' import { GetPriceReturnType } from '@ensdomains/ensjs/public' @@ -205,3 +206,22 @@ export const thread = any, ...Array<(arg: any) => any> arg: ArgType, ...f: F & AsChain ): LaxReturnType> => f.reduce((acc, fn) => fn(acc), arg) as LaxReturnType> + +// Adpated from: https://stackoverflow.com/questions/36721830/convert-hsl-to-rgb-and-hex +export const hslToHex = (hsl: string) => { + const [h, s, l] = hsl.match(/\d+/g)!.map(Number) + const _l = l / 100 + const a = (s * Math.min(_l, 1 - _l)) / 100 + const f = (n: number) => { + const k = (n + h / 30) % 12 + const color = _l - a * Math.max(Math.min(k - 3, 9 - k, 1), -1) + return Math.round(255 * color) + .toString(16) + .padStart(2, '0') // convert to Hex and prefix "0" if needed + } + return `#${f(0)}${f(8)}${f(4)}` +} + +export const hasCapsuleConnection = (connections: Connection[]) => { + return connections?.some((connection) => connection?.connector?.id === 'capsule-integrated') +}