From 1576193936c815d89d03178fa5e44764a43d2183 Mon Sep 17 00:00:00 2001 From: Martin Domajnko <35891136+martines3000@users.noreply.github.com> Date: Sat, 9 Mar 2024 15:26:45 +0100 Subject: [PATCH 01/19] chore: libs to latest versions (#576) --- .eslintrc.cjs | 2 +- .github/workflows/ci.yml | 4 +- .github/workflows/cron.yml | 4 +- .github/workflows/publish.yml | 6 +- .github/workflows/release-beta.yml | 6 +- .github/workflows/sonarcloud.yml | 24 +- .github/workflows/sync_beta.yml | 2 +- .github/workflows/sync_fork.yml | 2 +- .github/workflows/version.yml | 6 +- libs/did-provider-ebsi/package.json | 14 +- libs/did-provider-key/package.json | 34 +- .../{vite.config.ts => vite.config.mts} | 1 - .../{vite.config.ts => vite.config.mts} | 1 - libs/oidc/client-plugin/package.json | 20 +- .../{vite.config.ts => vite.config.mts} | 1 - libs/oidc/types/package.json | 4 +- libs/utils/package.json | 12 +- package.json | 56 +- packages/connector/package.json | 8 +- packages/dapp/.lintstagedrc.cjs | 1 - packages/dapp/.stylelintignore | 3 - packages/dapp/.stylelintrc.json | 25 - packages/dapp/next.config.js | 3 - packages/dapp/package.json | 100 +- .../sharedPresentations.tsx | 8 +- .../share-presentation/[id]/formattedView.tsx | 7 +- .../src/components/AddressPopover/index.tsx | 7 +- .../dapp/src/components/AppNavbar/index.tsx | 2 +- .../CredentialCards/CredentialCard/index.tsx | 2 +- packages/datamanager/package.json | 14 +- .../{vite.config.ts => vite.config.mts} | 1 - packages/docs/docs/masca/design.md | 2 +- packages/docs/package.json | 26 +- packages/snap/package.json | 62 +- packages/snap/snap.manifest.json | 2 +- packages/snap/src/Wallet.service.ts | 2 +- .../ceramicDataStore/ceramicDataStore.ts | 10 +- packages/snap/tests/e2e/signData.spec.ts | 2 +- .../snap/{vite.config.ts => vite.config.mts} | 1 - packages/types/package.json | 6 +- ...ngesets__assemble-release-plan@5.2.4.patch | 76 - ...ngesets__assemble-release-plan@6.0.0.patch | 60 + pnpm-lock.yaml | 10333 +++++++++------- templates/did-provider-plugin/package.json | 18 +- .../{vite.config.ts => vite.config.mts} | 1 - 45 files changed, 6441 insertions(+), 4540 deletions(-) rename libs/did-provider-key/{vite.config.ts => vite.config.mts} (97%) rename libs/extended-verification/{vite.config.ts => vite.config.mts} (97%) rename libs/oidc/client-plugin/{vite.config.ts => vite.config.mts} (97%) delete mode 100644 packages/dapp/.stylelintignore delete mode 100644 packages/dapp/.stylelintrc.json rename packages/datamanager/{vite.config.ts => vite.config.mts} (97%) rename packages/snap/{vite.config.ts => vite.config.mts} (98%) delete mode 100644 patches/@changesets__assemble-release-plan@5.2.4.patch create mode 100644 patches/@changesets__assemble-release-plan@6.0.0.patch rename templates/did-provider-plugin/{vite.config.ts => vite.config.mts} (97%) diff --git a/.eslintrc.cjs b/.eslintrc.cjs index 193a29306..7e1f539b8 100644 --- a/.eslintrc.cjs +++ b/.eslintrc.cjs @@ -85,7 +85,7 @@ module.exports = { '**/jest.d.ts', '**/test/**', '**/tests/**', - '**/vite.config.ts', + '**/vite.config.mts', '**/scripts/**/*.ts', ], }, diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 23741fc58..496b9415e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -12,7 +12,7 @@ on: jobs: main: name: Nx Cloud - Main Job - uses: nrwl/ci/.github/workflows/nx-cloud-main.yml@v0.13.0 + uses: nrwl/ci/.github/workflows/nx-cloud-main.yml@v0.14.0 secrets: NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }} with: @@ -29,7 +29,7 @@ jobs: agents: name: Nx Cloud - Agents - uses: nrwl/ci/.github/workflows/nx-cloud-agents.yml@v0.13.0 + uses: nrwl/ci/.github/workflows/nx-cloud-agents.yml@v0.14.0 secrets: NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }} with: diff --git a/.github/workflows/cron.yml b/.github/workflows/cron.yml index 45db4e6be..dd0484304 100644 --- a/.github/workflows/cron.yml +++ b/.github/workflows/cron.yml @@ -8,7 +8,7 @@ on: jobs: main: name: Nx Cloud - Cron Job - uses: nrwl/ci/.github/workflows/nx-cloud-main.yml@v0.13.0 + uses: nrwl/ci/.github/workflows/nx-cloud-main.yml@v0.14.0 secrets: NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }} with: @@ -21,7 +21,7 @@ jobs: agents: name: Nx Cloud - Agents - uses: nrwl/ci/.github/workflows/nx-cloud-agents.yml@v0.13.0 + uses: nrwl/ci/.github/workflows/nx-cloud-agents.yml@v0.14.0 secrets: NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }} with: diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index b9ee1c47f..9ce0b074f 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -18,19 +18,19 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: ref: master fetch-depth: 0 token: ${{ secrets.BCLABUM_GITHUB_TOKEN }} - name: Install pnpm - uses: pnpm/action-setup@v2 + uses: pnpm/action-setup@v3 with: version: 8.11.0 - name: Install node - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: node-version: 20.10.0 registry-url: https://registry.npmjs.org/ diff --git a/.github/workflows/release-beta.yml b/.github/workflows/release-beta.yml index 36b7409dc..47cf12aac 100644 --- a/.github/workflows/release-beta.yml +++ b/.github/workflows/release-beta.yml @@ -21,19 +21,19 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: ref: develop fetch-depth: 0 token: ${{ secrets.BCLABUM_GITHUB_TOKEN }} - name: Install pnpm - uses: pnpm/action-setup@v2 + uses: pnpm/action-setup@v3 with: version: 8.11.0 - name: Install node - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: node-version: 20.10.0 registry-url: https://registry.npmjs.org/ diff --git a/.github/workflows/sonarcloud.yml b/.github/workflows/sonarcloud.yml index 1e9e18561..f4acdba67 100644 --- a/.github/workflows/sonarcloud.yml +++ b/.github/workflows/sonarcloud.yml @@ -14,17 +14,17 @@ jobs: name: SonarCloud snap runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 0 - uses: nrwl/nx-set-shas@v3 with: main-branch-name: 'develop' - name: Install pnpm - uses: pnpm/action-setup@v2 + uses: pnpm/action-setup@v3 with: version: 8.11.0 - - uses: actions/setup-node@v3 + - uses: actions/setup-node@v4 with: node-version: 20.10.0 cache: pnpm @@ -49,17 +49,17 @@ jobs: name: SonarCloud datamanager runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 0 - uses: nrwl/nx-set-shas@v3 with: main-branch-name: 'develop' - name: Install pnpm - uses: pnpm/action-setup@v2 + uses: pnpm/action-setup@v3 with: version: 8.11.0 - - uses: actions/setup-node@v3 + - uses: actions/setup-node@v4 with: node-version: 20.10.0 cache: pnpm @@ -84,7 +84,7 @@ jobs: name: SonarCloud connector runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 0 - name: Scan connector @@ -102,7 +102,7 @@ jobs: name: SonarCloud dapp runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 0 - name: Scan dapp @@ -120,7 +120,7 @@ jobs: name: SonarCloud docs runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 0 - name: Scan docs @@ -138,17 +138,17 @@ jobs: name: SonarCloud did-provider-key runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 0 - uses: nrwl/nx-set-shas@v3 with: main-branch-name: 'develop' - name: Install pnpm - uses: pnpm/action-setup@v2 + uses: pnpm/action-setup@v3 with: version: 8.11.0 - - uses: actions/setup-node@v3 + - uses: actions/setup-node@v4 with: node-version: 20.10.0 cache: pnpm diff --git a/.github/workflows/sync_beta.yml b/.github/workflows/sync_beta.yml index a5e0b01cd..725098c36 100644 --- a/.github/workflows/sync_beta.yml +++ b/.github/workflows/sync_beta.yml @@ -9,7 +9,7 @@ jobs: sync: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 0 ref: develop diff --git a/.github/workflows/sync_fork.yml b/.github/workflows/sync_fork.yml index fd33570e0..25a2b5b5b 100644 --- a/.github/workflows/sync_fork.yml +++ b/.github/workflows/sync_fork.yml @@ -15,7 +15,7 @@ jobs: sync: runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 0 ref: ${{ github.event_name == 'workflow_run' && 'beta' || github.head_ref || github.ref_name }} diff --git a/.github/workflows/version.yml b/.github/workflows/version.yml index 6e50dd6e0..f45bff372 100644 --- a/.github/workflows/version.yml +++ b/.github/workflows/version.yml @@ -37,18 +37,18 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: fetch-depth: 0 ref: master - name: Install pnpm - uses: pnpm/action-setup@v2 + uses: pnpm/action-setup@v3 with: version: 8.11.0 - name: Install node - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: node-version: 20.10.0 registry-url: https://registry.npmjs.org/ diff --git a/libs/did-provider-ebsi/package.json b/libs/did-provider-ebsi/package.json index 9d9917575..6e57b717e 100644 --- a/libs/did-provider-ebsi/package.json +++ b/libs/did-provider-ebsi/package.json @@ -39,20 +39,20 @@ "@cef-ebsi/key-did-resolver": "^1.1.0", "@cef-ebsi/siop-auth": "^3.2.0", "@cef-ebsi/verifiable-presentation": "^5.4.1", - "@veramo/core": "5.6.0", - "@veramo/did-manager": "5.6.0", - "@veramo/utils": "5.6.0", + "@veramo/core": "5.6.1-next.57", + "@veramo/did-manager": "5.6.1-next.57", + "@veramo/utils": "5.6.1-next.57", "did-resolver": "4.1.0", "elliptic": "^6.5.4", "ethers": "^5.7.0", - "jose": "^4.15.4", + "jose": "^5.2.2", "multiformats": "^12.1.3", "uuid": "^9.0.1" }, "devDependencies": { - "@types/elliptic": "^6.4.16", - "@types/uuid": "^9.0.6", - "tsup": "^7.2.0" + "@types/elliptic": "^6.4.18", + "@types/uuid": "^9.0.8", + "tsup": "^8.0.2" }, "publishConfig": { "access": "public" diff --git a/libs/did-provider-key/package.json b/libs/did-provider-key/package.json index 6a93f6d8f..d388eb728 100644 --- a/libs/did-provider-key/package.json +++ b/libs/did-provider-key/package.json @@ -38,28 +38,28 @@ }, "dependencies": { "@blockchain-lab-um/utils": "1.3.7", - "@cef-ebsi/key-did-resolver": "^1.1.0", + "@cef-ebsi/key-did-resolver": "^2.0.0", "@stablelib/ed25519": "^1.0.3", - "@veramo/core": "5.6.0", - "@veramo/did-manager": "5.6.0", + "@veramo/core": "5.6.1-next.57", + "@veramo/did-manager": "5.6.1-next.57", "did-resolver": "4.1.0" }, "devDependencies": { - "@veramo/core-types": "5.6.0", - "@veramo/credential-w3c": "5.6.0", - "@veramo/data-store": "5.6.0", - "@veramo/did-resolver": "5.6.0", - "@veramo/key-manager": "5.6.0", - "@veramo/kms-local": "5.6.0", - "@vitest/coverage-v8": "1.0.0-beta.3", - "better-sqlite3": "^9.0.0", + "@veramo/core-types": "5.6.1-next.57", + "@veramo/credential-w3c": "5.6.1-next.57", + "@veramo/data-store": "5.6.1-next.57", + "@veramo/did-resolver": "5.6.1-next.57", + "@veramo/key-manager": "5.6.1-next.57", + "@veramo/kms-local": "5.6.1-next.57", + "@vitest/coverage-v8": "1.3.1", + "better-sqlite3": "^9.4.3", "jest-extended": "4.0.2", - "multiformats": "^12.1.3", - "tsup": "^7.2.0", - "typeorm": "^0.3.17", - "vite": "^4.5.0", - "vite-tsconfig-paths": "^4.2.1", - "vitest": "1.0.0-beta.3" + "multiformats": "^13.1.0", + "tsup": "^8.0.2", + "typeorm": "^0.3.20", + "vite": "^5.1.5", + "vite-tsconfig-paths": "^4.3.1", + "vitest": "1.3.1" }, "publishConfig": { "access": "public" diff --git a/libs/did-provider-key/vite.config.ts b/libs/did-provider-key/vite.config.mts similarity index 97% rename from libs/did-provider-key/vite.config.ts rename to libs/did-provider-key/vite.config.mts index 42bd0a9d1..1d4b5128a 100644 --- a/libs/did-provider-key/vite.config.ts +++ b/libs/did-provider-key/vite.config.mts @@ -1,4 +1,3 @@ -// vite.config.ts import tsconfigPaths from 'vite-tsconfig-paths'; import { defineConfig } from 'vitest/config'; diff --git a/libs/extended-verification/vite.config.ts b/libs/extended-verification/vite.config.mts similarity index 97% rename from libs/extended-verification/vite.config.ts rename to libs/extended-verification/vite.config.mts index 3e7d99b79..15237a065 100644 --- a/libs/extended-verification/vite.config.ts +++ b/libs/extended-verification/vite.config.mts @@ -1,4 +1,3 @@ -// vite.config.ts import tsconfigPaths from 'vite-tsconfig-paths'; import { defineConfig } from 'vitest/config'; diff --git a/libs/oidc/client-plugin/package.json b/libs/oidc/client-plugin/package.json index f46e5e91f..99fbbd1a8 100644 --- a/libs/oidc/client-plugin/package.json +++ b/libs/oidc/client-plugin/package.json @@ -31,22 +31,22 @@ "@blockchain-lab-um/oidc-types": "0.0.8", "@blockchain-lab-um/utils": "1.3.7", "@sphereon/pex": "^2.0.1", - "@veramo/core": "5.6.0", - "@veramo/utils": "5.6.0", + "@veramo/core": "5.6.1-next.57", + "@veramo/utils": "5.6.1-next.57", "cross-fetch": "^4.0.0", - "ethereum-cryptography": "^2.1.2", - "jose": "^4.15.4", + "ethereum-cryptography": "^2.1.3", + "jose": "^5.2.2", "qs": "^6.11.2" }, "devDependencies": { "@sphereon/ssi-types": "^0.11.0", - "@types/qs": "^6.9.9", - "@vitest/coverage-v8": "1.0.0-beta.3", + "@types/qs": "^6.9.12", + "@vitest/coverage-v8": "1.3.1", "jest-extended": "4.0.2", - "tsup": "^7.2.0", - "vite": "^4.5.0", - "vite-tsconfig-paths": "^4.2.1", - "vitest": "1.0.0-beta.3" + "tsup": "^8.0.2", + "vite": "^5.1.5", + "vite-tsconfig-paths": "^4.3.1", + "vitest": "1.3.1" }, "veramo": { "pluginInterfaces": { diff --git a/libs/oidc/client-plugin/vite.config.ts b/libs/oidc/client-plugin/vite.config.mts similarity index 97% rename from libs/oidc/client-plugin/vite.config.ts rename to libs/oidc/client-plugin/vite.config.mts index 020a034a6..f7e8d74b5 100644 --- a/libs/oidc/client-plugin/vite.config.ts +++ b/libs/oidc/client-plugin/vite.config.mts @@ -1,4 +1,3 @@ -// vite.config.ts import tsconfigPaths from 'vite-tsconfig-paths'; import { defineConfig } from 'vitest/config'; diff --git a/libs/oidc/types/package.json b/libs/oidc/types/package.json index 1a5347f50..7a23417a2 100644 --- a/libs/oidc/types/package.json +++ b/libs/oidc/types/package.json @@ -35,10 +35,10 @@ "lint:prettier": "prettier . --check" }, "dependencies": { - "@veramo/core": "5.6.0" + "@veramo/core": "5.6.1-next.57" }, "devDependencies": { - "tsup": "^7.2.0" + "tsup": "^8.0.2" }, "publishConfig": { "access": "public" diff --git a/libs/utils/package.json b/libs/utils/package.json index 90c86dcd9..5906b58e6 100644 --- a/libs/utils/package.json +++ b/libs/utils/package.json @@ -35,16 +35,16 @@ "lint:prettier": "prettier . --check" }, "dependencies": { - "@veramo/utils": "5.6.0", + "@veramo/utils": "5.6.1-next.57", "did-resolver": "4.1.0", - "elliptic": "^6.5.4", - "multiformats": "12.1.3", + "elliptic": "^6.5.5", + "multiformats": "13.1.0", "secp256k1": "5.0.0" }, "devDependencies": { - "@types/elliptic": "^6.4.16", - "@types/secp256k1": "^4.0.5", - "tsup": "^7.2.0" + "@types/elliptic": "^6.4.18", + "@types/secp256k1": "^4.0.6", + "tsup": "^8.0.2" }, "publishConfig": { "access": "public" diff --git a/package.json b/package.json index afb5ca049..f392d4168 100644 --- a/package.json +++ b/package.json @@ -42,43 +42,43 @@ "test:cron": "cross-env CRON=true pnpm nx run-many --target=test:cron" }, "dependencies": { - "@changesets/cli": "2.26.2" + "@changesets/cli": "2.27.1" }, "devDependencies": { - "@changesets/changelog-github": "0.4.8", - "@commitlint/cli": "^18.2.0", - "@commitlint/config-conventional": "^18.1.0", + "@changesets/changelog-github": "0.5.0", + "@commitlint/cli": "^19.0.3", + "@commitlint/config-conventional": "^19.0.3", "@ianvs/prettier-plugin-sort-imports": "^4.1.1", - "@nx/devkit": "17.0.2", - "@nx/jest": "17.0.2", - "@types/eslint": "^8.44.6", - "@types/jest": "^29.5.6", - "@types/node": "^18.18.6", - "@typescript-eslint/eslint-plugin": "^6.9.0", - "@typescript-eslint/parser": "^6.9.0", + "@nx/devkit": "18.0.7", + "@nx/jest": "18.0.7", + "@types/eslint": "^8.56.5", + "@types/jest": "^29.5.12", + "@types/node": "^20.11.24", + "@typescript-eslint/eslint-plugin": "^7.1.1", + "@typescript-eslint/parser": "^7.1.1", "concurrently": "^8.2.2", "cross-env": "^7.0.3", - "eslint": "^8.52.0", + "eslint": "^8.57.0", "eslint-config-airbnb-base": "^15.0.0", - "eslint-config-airbnb-typescript": "17.1.0", - "eslint-config-prettier": "^9.0.0", - "eslint-plugin-import": "^2.29.0", - "eslint-plugin-jest": "^27.4.3", + "eslint-config-airbnb-typescript": "18.0.0", + "eslint-config-prettier": "^9.1.0", + "eslint-plugin-import": "^2.29.1", + "eslint-plugin-jest": "^27.9.0", "eslint-plugin-jest-extended": "^2.0.0", - "eslint-plugin-unused-imports": "^3.0.0", + "eslint-plugin-unused-imports": "^3.1.0", "execa": "^8.0.1", - "husky": "^8.0.3", + "husky": "^9.0.11", "is-ci": "^3.0.1", "jest-extended": "^4.0.2", - "lint-staged": "^15.0.2", - "nx": "17.0.2", - "nx-cloud": "^16.5.2", - "prettier": "^3.0.3", - "prettier-plugin-packagejson": "^2.4.6", - "prettier-plugin-tailwindcss": "^0.5.6", + "lint-staged": "^15.2.2", + "nx": "18.0.7", + "nx-cloud": "^18.0.0", + "prettier": "^3.2.5", + "prettier-plugin-packagejson": "^2.4.12", + "prettier-plugin-tailwindcss": "^0.5.11", "rimraf": "^5.0.5", - "ts-node": "^10.9.1", - "typescript": "^5.2.2" + "ts-node": "^10.9.2", + "typescript": "^5.3.3" }, "packageManager": "pnpm@8.11.0", "engines": { @@ -95,8 +95,8 @@ "cross-fetch@3.1.8": "patches/cross-fetch@3.1.8.patch", "cross-fetch@4.0.0": "patches/cross-fetch@4.0.0.patch", "@ceramicnetwork/common@2.30.0": "patches/@ceramicnetwork__common@2.30.0.patch", - "@changesets/assemble-release-plan@5.2.4": "patches/@changesets__assemble-release-plan@5.2.4.patch", - "@metamask/snaps-sdk@1.2.0": "patches/@metamask__snaps-sdk@1.2.0.patch" + "@metamask/snaps-sdk@1.2.0": "patches/@metamask__snaps-sdk@1.2.0.patch", + "@changesets/assemble-release-plan@6.0.0": "patches/@changesets__assemble-release-plan@6.0.0.patch" }, "allowNonAppliedPatches": true } diff --git a/packages/connector/package.json b/packages/connector/package.json index 47d04a06d..87bf0588c 100644 --- a/packages/connector/package.json +++ b/packages/connector/package.json @@ -45,15 +45,15 @@ "@blockchain-lab-um/masca-types": "1.3.0", "@blockchain-lab-um/utils": "1.3.7", "@didtools/pkh-ethereum": "0.4.0", - "@veramo/core": "5.6.0", + "@veramo/core": "5.6.1-next.57", "did-session": "2.0.1", "eip-712-types-generation": "^0.1.6", "mipd": "^0.0.5", - "viem": "^2.5.0" + "viem": "^2.7.20" }, "devDependencies": { - "esbuild-loader": "^4.0.2", - "tsup": "^7.2.0", + "esbuild-loader": "^4.0.3", + "tsup": "^8.0.2", "webpack-cli": "^5.1.4" }, "publishConfig": { diff --git a/packages/dapp/.lintstagedrc.cjs b/packages/dapp/.lintstagedrc.cjs index cd5d84f4b..1dd3fc6e1 100644 --- a/packages/dapp/.lintstagedrc.cjs +++ b/packages/dapp/.lintstagedrc.cjs @@ -9,5 +9,4 @@ module.exports = { '*.{js,jsx,ts,tsx}': [buildEslintCommand], '*.{md,json,yml,yaml}': ['prettier --write'], '*.{ts,tsx}': () => 'tsc -p tsconfig.json --noEmit --incremental false', - '*.{css,scss}': ['stylelint --fix'], }; diff --git a/packages/dapp/.stylelintignore b/packages/dapp/.stylelintignore deleted file mode 100644 index 65eb68dd1..000000000 --- a/packages/dapp/.stylelintignore +++ /dev/null @@ -1,3 +0,0 @@ -.next -node_modules -out diff --git a/packages/dapp/.stylelintrc.json b/packages/dapp/.stylelintrc.json deleted file mode 100644 index bc5860dc9..000000000 --- a/packages/dapp/.stylelintrc.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "extends": [ - "stylelint-config-standard-scss", - "stylelint-config-prettier-scss", - "stylelint-config-css-modules" - ], - "rules": { - "at-rule-no-unknown": null, - "scss/at-rule-no-unknown": [ - true, - { - "ignoreAtRules": [ - "apply", - "layer", - "responsive", - "screen", - "tailwind", - "variants" - ] - } - ], - "declaration-block-trailing-semicolon": null, - "no-descending-specificity": null - } -} diff --git a/packages/dapp/next.config.js b/packages/dapp/next.config.js index d6ab18724..8385625d8 100644 --- a/packages/dapp/next.config.js +++ b/packages/dapp/next.config.js @@ -1,4 +1,3 @@ -const StylelintPlugin = require('stylelint-webpack-plugin'); const path = require('path'); const withNextIntl = require('next-intl/plugin')(); @@ -33,7 +32,6 @@ const nextConfig = { hostname: '**', }, ], - domains: ['localhost'], loader: 'default', }, optimizeFonts: true, @@ -107,7 +105,6 @@ const nextConfig = { }, webpack: (config) => { - config.plugins.push(new StylelintPlugin()); config.module.rules.push({ test: /\.svg$/, use: ['@svgr/webpack'], diff --git a/packages/dapp/package.json b/packages/dapp/package.json index 38930e57b..d17a43795 100644 --- a/packages/dapp/package.json +++ b/packages/dapp/package.json @@ -11,11 +11,10 @@ "dev": "cross-env next dev", "dev:local": "cross-env USE_LOCAL='true' next dev", "docker:build": "docker build . -t blockchain-lab-um/dapp:latest", - "lint": "pnpm lint:next && pnpm lint:tsc && pnpm lint:prettier && pnpm lint:stylelint", + "lint": "pnpm lint:next && pnpm lint:tsc && pnpm lint:prettier", "lint:fix": "next lint . --fix && prettier . --write", "lint:next": "next lint", "lint:prettier": "prettier . --check", - "lint:stylelint": "stylelint \"src/**/*.{css,scss}\"", "lint:tsc": "tsc -p tsconfig.json --noEmit --incremental false", "start": "next start", "supabase:generate": "supabase gen types typescript --project-id vfxyvzkprpeegheyapzg --schema public > src/utils/supabase/database.types.ts" @@ -24,47 +23,47 @@ "@blockchain-lab-um/did-provider-key": "1.0.8-beta.0", "@blockchain-lab-um/masca-connector": "1.3.0", "@blockchain-lab-um/oidc-types": "0.0.8", - "@headlessui/react": "^1.7.17", - "@heroicons/react": "^2.0.18", - "@nextui-org/react": "^2.2.9", + "@headlessui/react": "^1.7.18", + "@heroicons/react": "^2.1.1", + "@nextui-org/react": "^2.2.10", "@radix-ui/react-toast": "^1.1.5", - "@react-oauth/google": "^0.11.1", - "@supabase/supabase-js": "^2.38.5", - "@tanstack/react-query": "^5.17.15", - "@tanstack/react-table": "^8.10.7", + "@react-oauth/google": "^0.12.1", + "@supabase/supabase-js": "^2.39.7", + "@tanstack/react-query": "^5.25.0", + "@tanstack/react-table": "^8.13.2", "@types/dompurify": "^3.0.5", "@types/js-cookie": "^3.0.6", "@types/jsdom": "^21.1.6", - "@veramo/core": "5.6.0", - "@veramo/credential-eip712": "5.6.0", - "@veramo/credential-w3c": "5.6.0", - "@veramo/did-provider-ethr": "5.6.0", - "@veramo/did-provider-pkh": "5.6.0", - "@veramo/did-resolver": "5.6.0", - "@veramo/utils": "5.6.0", - "@vercel/analytics": "^1.1.1", - "@vercel/og": "^0.5.20", - "clsx": "^2.0.0", - "date-fns": "^2.30.0", + "@veramo/core": "5.6.1-next.57", + "@veramo/credential-eip712": "5.6.1-next.57", + "@veramo/credential-w3c": "5.6.1-next.57", + "@veramo/did-provider-ethr": "5.6.1-next.57", + "@veramo/did-provider-pkh": "5.6.1-next.57", + "@veramo/did-resolver": "5.6.1-next.57", + "@veramo/utils": "5.6.1-next.57", + "@vercel/analytics": "^1.2.2", + "@vercel/og": "^0.6.2", + "clsx": "^2.1.0", + "date-fns": "^3.3.1", "did-jwt-vc": "^3.2.13", "did-resolver": "4.1.0", "dompurify": "^3.0.9", "encoding": "^0.1.13", "ens-did-resolver": "^1.0.4", - "ethers": "^6.9.0", - "ethr-did-resolver": "10.1.3", + "ethers": "6.11.1", + "ethr-did-resolver": "10.1.5", "file-saver": "^2.0.5", - "framer-motion": "^10.16.5", - "googleapis": "^128.0.0", - "headless-stepper": "^1.9.1", + "framer-motion": "^11.0.8", + "googleapis": "^133.0.0", + "headless-stepper": "^1.10.0", "html5-qrcode": "^2.3.8", "js-cookie": "^3.0.5", "jsdom": "^24.0.0", "jsonwebtoken": "^9.0.2", - "luxon": "^3.4.3", - "marked": "^12.0.0", - "next": "13.5.6", - "next-intl": "3.4.0", + "luxon": "^3.4.4", + "marked": "^12.0.1", + "next": "14.1.2", + "next-intl": "3.9.2", "next-sitemap": "^4.2.3", "next-themes": "^0.2.1", "pino-pretty": "^10.3.1", @@ -72,35 +71,28 @@ "qs": "^6.11.2", "react": "18.2.0", "react-dom": "18.2.0", - "react-share": "^5.0.3", - "sharp": "^0.32.6", + "react-share": "^5.1.0", + "sharp": "^0.33.2", "siwe": "^2.1.4", - "swr": "^2.2.4", - "tailwind-scrollbar": "^3.0.5", - "viem": "^2.5.0", - "wagmi": "^2.5.1", - "zustand": "^4.4.4" + "swr": "^2.2.5", + "tailwind-scrollbar": "^3.1.0", + "viem": "^2.7.20", + "wagmi": "^2.5.7", + "zustand": "^4.5.2" }, "devDependencies": { "@svgr/webpack": "^8.1.0", - "@types/file-saver": "^2.0.6", - "@types/jsonwebtoken": "^9.0.5", - "@types/luxon": "^3.3.3", - "@types/qs": "^6.9.9", - "@types/react": "18.2.33", - "@types/react-dom": "18.2.14", - "autoprefixer": "^10.4.16", - "eslint-config-next": "^13.5.6", - "postcss": "^8.4.31", - "sass": "^1.69.5", - "stylelint": "^15.11.0", - "stylelint-config-css-modules": "^4.3.0", - "stylelint-config-prettier-scss": "^1.0.0", - "stylelint-config-standard-scss": "^11.0.0", - "stylelint-prettier": "^4.0.2", - "stylelint-webpack-plugin": "^4.1.1", - "supabase": "^1.113.3", - "tailwindcss": "^3.3.5" + "@types/file-saver": "^2.0.7", + "@types/jsonwebtoken": "^9.0.6", + "@types/luxon": "^3.4.2", + "@types/qs": "^6.9.12", + "@types/react": "18.2.63", + "@types/react-dom": "18.2.20", + "autoprefixer": "^10.4.18", + "eslint-config-next": "^14.1.2", + "postcss": "^8.4.35", + "supabase": "^1.148.6", + "tailwindcss": "^3.4.1" }, "nx": { "namedInputs": { diff --git a/packages/dapp/src/app/[locale]/app/(protected)/shared-presentations/sharedPresentations.tsx b/packages/dapp/src/app/[locale]/app/(protected)/shared-presentations/sharedPresentations.tsx index 6e46a40c5..6a9796bae 100644 --- a/packages/dapp/src/app/[locale]/app/(protected)/shared-presentations/sharedPresentations.tsx +++ b/packages/dapp/src/app/[locale]/app/(protected)/shared-presentations/sharedPresentations.tsx @@ -244,8 +244,8 @@ export const SharedPresentations = () => { column.key === 'actions' ? 'text-end' : column.key === 'title' - ? 'text-start' - : 'text-center' + ? 'text-start' + : 'text-center' )} > {column.label} @@ -265,8 +265,8 @@ export const SharedPresentations = () => { columnKey === 'actions' ? 'text-end' : columnKey === 'title' - ? 'text-start' - : 'text-center' + ? 'text-start' + : 'text-center' )} > {renderCell(item, columnKey)} diff --git a/packages/dapp/src/app/[locale]/app/(public)/share-presentation/[id]/formattedView.tsx b/packages/dapp/src/app/[locale]/app/(public)/share-presentation/[id]/formattedView.tsx index 138a229ef..1c31f0ba4 100644 --- a/packages/dapp/src/app/[locale]/app/(public)/share-presentation/[id]/formattedView.tsx +++ b/packages/dapp/src/app/[locale]/app/(public)/share-presentation/[id]/formattedView.tsx @@ -77,10 +77,9 @@ export const FormattedView = ({ holder.lastIndexOf(':') )}:${holder .split(':') - [holder.split(':').length - 1].slice( - 0, - 6 - )}...${holder.slice(-4)}`} + [ + holder.split(':').length - 1 + ].slice(0, 6)}...${holder.slice(-4)}`} @@ -94,7 +98,6 @@ const CredentialSubject = ({ typeof value === 'string' || typeof value === 'number' ); // key is a string camel case, seperate it with spaces, e.g. CamelCase should be Camel Case - // eslint-disable-next-line no-param-reassign key = key.replace(/([A-Z])/g, ' $1').trim(); return (
{isObject ? (
, + { + width: 1200, + height: 630, + fonts: [ + { + name: 'Inter', + data: fontRegular, + weight: 400, + style: 'normal', + }, + { + name: 'Inter Medium', + data: fontRegular, + weight: 600, + style: 'normal', + }, + { + name: 'Cal Sans SemiBold', + data: fontBold, + weight: 700, + style: 'normal', + }, + ], + } + ); + } + + return new ImageResponse( +
+
+

Powered by

+ Masca logo
- ), +
+
+
+ {title} +
+
ISSUED BY
+
+ {credentialIssuer.substring(0, 10)}... + {credentialIssuer.substring( + holder.length, + holder.length - 10 + )} +
+
ISSUED TO
+
+ {credentialSubject.substring(0, 10)}... + {credentialSubject.substring( + holder.length, + holder.length - 10 + )} +
+
ISSUED ON
+
+ {new Date(Date.parse(credentialIssuanceDate)).toDateString()} +
+
+
+ {credentialType.split(',')[0]} +
+
+
, { width: 1200, height: 630, @@ -294,94 +287,6 @@ export async function GET(req: NextRequest) { } return new ImageResponse( - ( -
-
-
-
-

- {title} -

-
HELD BY
-
- {holder.substring(0, 20)}... - {holder.substring(holder.length, holder.length - 10)} -
-
- NUMBER OF CREDENTIALS -
-
- {numberOfCredentials} -
-
-
- Masca logo -
-
-
-
- ), - { - width: 1200, - height: 630, - fonts: [ - { - name: 'Inter', - data: fontRegular, - weight: 400, - style: 'normal', - }, - { - name: 'Cal Sans SemiBold', - data: fontBold, - weight: 700, - style: 'normal', - }, - ], - } - ); - } - - return new ImageResponse( - (
-
-
+
+

{title}

+
HELD BY
+
+ {holder.substring(0, 20)}... + {holder.substring(holder.length, holder.length - 10)} +
+
+ NUMBER OF CREDENTIALS +
- {description} + {numberOfCredentials}
-
Masca logo
+
, + { + width: 1200, + height: 630, + fonts: [ + { + name: 'Inter', + data: fontRegular, + weight: 400, + style: 'normal', + }, + { + name: 'Cal Sans SemiBold', + data: fontBold, + weight: 700, + style: 'normal', + }, + ], + } + ); + } + + return new ImageResponse( +
+
+
+
+

+ {title} +

+
+ {description} +
+
+
+
+ Masca logo +
+
- ), +
, { width: 1200, height: 630, @@ -448,7 +437,7 @@ export async function GET(req: NextRequest) { } ); } catch (error) { - return new Response(`Failed to generate image`, { + return new Response('Failed to generate image', { status: 500, }); } diff --git a/packages/dapp/src/app/api/share/presentation/[id]/route.ts b/packages/dapp/src/app/api/share/presentation/[id]/route.ts index f637fcd84..253b5d6b3 100644 --- a/packages/dapp/src/app/api/share/presentation/[id]/route.ts +++ b/packages/dapp/src/app/api/share/presentation/[id]/route.ts @@ -1,5 +1,5 @@ -import { NextRequest, NextResponse } from 'next/server'; import { createClient } from '@supabase/supabase-js'; +import { NextRequest, NextResponse } from 'next/server'; import { Database } from '@/utils/supabase/database.types'; diff --git a/packages/dapp/src/app/api/share/presentation/route.ts b/packages/dapp/src/app/api/share/presentation/route.ts index b0601d322..dadc40404 100644 --- a/packages/dapp/src/app/api/share/presentation/route.ts +++ b/packages/dapp/src/app/api/share/presentation/route.ts @@ -1,6 +1,6 @@ -import { NextRequest, NextResponse } from 'next/server'; import { createClient } from '@supabase/supabase-js'; import jwt from 'jsonwebtoken'; +import { NextRequest, NextResponse } from 'next/server'; import { Database } from '@/utils/supabase/database.types'; import { getAgent } from '../../veramoSetup'; diff --git a/packages/dapp/src/app/api/siwe/nonce/route.ts b/packages/dapp/src/app/api/siwe/nonce/route.ts index f3ba16e67..1dfd8e3cf 100644 --- a/packages/dapp/src/app/api/siwe/nonce/route.ts +++ b/packages/dapp/src/app/api/siwe/nonce/route.ts @@ -1,6 +1,6 @@ -import { NextResponse } from 'next/server'; import { createClient } from '@supabase/supabase-js'; import { add, format } from 'date-fns'; +import { NextResponse } from 'next/server'; import { Database } from '@/utils/supabase/database.types'; diff --git a/packages/dapp/src/app/api/siwe/verify/route.ts b/packages/dapp/src/app/api/siwe/verify/route.ts index ada920ab8..6c3bed77c 100644 --- a/packages/dapp/src/app/api/siwe/verify/route.ts +++ b/packages/dapp/src/app/api/siwe/verify/route.ts @@ -1,6 +1,6 @@ -import { NextRequest, NextResponse } from 'next/server'; import { createClient } from '@supabase/supabase-js'; import jwt from 'jsonwebtoken'; +import { NextRequest, NextResponse } from 'next/server'; import { SiweMessage } from 'siwe'; import { Database } from '@/utils/supabase/database.types'; diff --git a/packages/dapp/src/app/api/supabase/verify/route.ts b/packages/dapp/src/app/api/supabase/verify/route.ts index ee38aa5ed..6825bdc49 100644 --- a/packages/dapp/src/app/api/supabase/verify/route.ts +++ b/packages/dapp/src/app/api/supabase/verify/route.ts @@ -1,5 +1,5 @@ -import { NextRequest, NextResponse } from 'next/server'; import jwt from 'jsonwebtoken'; +import { NextRequest, NextResponse } from 'next/server'; const CORS_HEADERS = { 'Access-Control-Allow-Origin': '*', diff --git a/packages/dapp/src/components/AddressPopover/index.tsx b/packages/dapp/src/components/AddressPopover/index.tsx index f418dc116..b3df7cf82 100644 --- a/packages/dapp/src/components/AddressPopover/index.tsx +++ b/packages/dapp/src/components/AddressPopover/index.tsx @@ -1,11 +1,11 @@ 'use client'; -import Image from 'next/image'; import { Popover, Transition } from '@headlessui/react'; import { ChevronDownIcon } from '@heroicons/react/20/solid'; import { DocumentDuplicateIcon } from '@heroicons/react/24/outline'; import clsx from 'clsx'; import { useTranslations } from 'next-intl'; +import Image from 'next/image'; import { mainnet } from 'viem/chains'; import { normalize } from 'viem/ens'; import { useAccount, useEnsAvatar, useEnsName } from 'wagmi'; @@ -83,13 +83,15 @@ const AddressPopover = ({ did, disconnect }: AddressPopoverProps) => { className="animated-transition cursor-pointer text-2xl text-gray-800 underline hover:text-gray-700 dark:text-white dark:hover:text-gray-100" >{`${did.substring(0, did.lastIndexOf(':'))}:${did .split(':') - [ - did.split(':').length - 1 - ].slice(0, 5)}...${did.slice(-4)}`} + [did.split(':').length - 1].slice( + 0, + 5 + )}...${did.slice(-4)}`} ) : ( )}
-
+
{`${address?.slice( 0, 5 )}...${address?.slice(-4)}`}
diff --git a/packages/dapp/src/components/AppNavbar/NavBtn.tsx b/packages/dapp/src/components/AppNavbar/NavBtn.tsx index 29c92e846..10cb37fcb 100644 --- a/packages/dapp/src/components/AppNavbar/NavBtn.tsx +++ b/packages/dapp/src/components/AppNavbar/NavBtn.tsx @@ -9,6 +9,7 @@ interface NavBtnProps { export const NavBtn = ({ page, pathname, children }: NavBtnProps) => (
+ /> )} ); diff --git a/packages/dapp/src/components/ConnectButton/index.tsx b/packages/dapp/src/components/ConnectButton/index.tsx index 600cdcadf..f29bad3c5 100644 --- a/packages/dapp/src/components/ConnectButton/index.tsx +++ b/packages/dapp/src/components/ConnectButton/index.tsx @@ -1,5 +1,5 @@ -import { useEffect, useState } from 'react'; import { useTranslations } from 'next-intl'; +import { useEffect, useState } from 'react'; import { Connector, useAccount, useConnect } from 'wagmi'; import Button from '@/components/Button'; diff --git a/packages/dapp/src/components/ConnectedProvider/index.tsx b/packages/dapp/src/components/ConnectedProvider/index.tsx index 95e5a31df..de886232c 100644 --- a/packages/dapp/src/components/ConnectedProvider/index.tsx +++ b/packages/dapp/src/components/ConnectedProvider/index.tsx @@ -1,12 +1,12 @@ 'use client'; -import React from 'react'; import { CreditCardIcon, GlobeAltIcon, LockClosedIcon, } from '@heroicons/react/24/solid'; import { useTranslations } from 'next-intl'; +import React from 'react'; import { useAccount } from 'wagmi'; import MascaLogo from '../MascaLogo'; diff --git a/packages/dapp/src/components/ConnectionModal/CreateConnectionModal.tsx b/packages/dapp/src/components/ConnectionModal/CreateConnectionModal.tsx index 1ebb2c66e..655e287d1 100644 --- a/packages/dapp/src/components/ConnectionModal/CreateConnectionModal.tsx +++ b/packages/dapp/src/components/ConnectionModal/CreateConnectionModal.tsx @@ -1,6 +1,5 @@ 'use client'; -import { useEffect, useState } from 'react'; import { Modal, ModalBody, @@ -10,6 +9,7 @@ import { } from '@nextui-org/react'; import { useTranslations } from 'next-intl'; import { QRCodeSVG } from 'qrcode.react'; +import { useEffect, useState } from 'react'; import { useEncryptedSessionStore, useToastStore } from '@/stores'; import { useAuthStore } from '@/stores/authStore'; diff --git a/packages/dapp/src/components/Controlbar/Controlbar.tsx b/packages/dapp/src/components/Controlbar/Controlbar.tsx index 987796fdb..53f64c466 100644 --- a/packages/dapp/src/components/Controlbar/Controlbar.tsx +++ b/packages/dapp/src/components/Controlbar/Controlbar.tsx @@ -1,10 +1,9 @@ 'use client'; -import { useState } from 'react'; import { - isError, type AvailableCredentialStores, type QueryCredentialsRequestResult, + isError, } from '@blockchain-lab-um/masca-connector'; import { ArrowPathIcon, PlusIcon } from '@heroicons/react/24/outline'; import { ShareIcon } from '@heroicons/react/24/solid'; @@ -12,18 +11,19 @@ import { Tooltip } from '@nextui-org/react'; import { W3CVerifiableCredential } from '@veramo/core'; import clsx from 'clsx'; import { useTranslations } from 'next-intl'; +import { useState } from 'react'; import { useAccount } from 'wagmi'; import GlobalFilter from '@/components/Controlbar/GlobalFilter'; import ViewTabs from '@/components/Controlbar/ViewTabs'; import ImportModal from '@/components/ImportModal'; +import { useMascaStore, useTableStore, useToastStore } from '@/stores'; +import { useAuthStore } from '@/stores/authStore'; +import { useShareModalStore } from '@/stores/shareModalStore'; import { removeCredentialSubjectFilterString, stringifyCredentialSubject, } from '@/utils/format'; -import { useMascaStore, useTableStore, useToastStore } from '@/stores'; -import { useAuthStore } from '@/stores/authStore'; -import { useShareModalStore } from '@/stores/shareModalStore'; import FilterPopover from './FilterPopover'; // import PlaygroundModal from '../PlaygroundModal'; @@ -205,7 +205,7 @@ const Controlbar = () => { > {isConnected && ( <> - {/* @@ -267,6 +269,7 @@ const Controlbar = () => { className="border-navy-blue-300 bg-navy-blue-100 text-navy-blue-700" > ) : ( +
diff --git a/packages/dapp/src/components/Controlbar/ViewTabs/index.tsx b/packages/dapp/src/components/Controlbar/ViewTabs/index.tsx index c272e464d..75f98c6d5 100644 --- a/packages/dapp/src/components/Controlbar/ViewTabs/index.tsx +++ b/packages/dapp/src/components/Controlbar/ViewTabs/index.tsx @@ -21,7 +21,7 @@ const ViewTabs = () => { className={` dark:bg-orange-accent-dark absolute z-10 h-full w-14 rounded-full bg-pink-200 transition-transform ease-in-out md:w-16 ${ cardView ? 'translate-x-0' : 'translate-x-10 md:translate-x-12' }`} - >
+ /> { const { changeToken, changeIsSignedIn } = useAuthStore((state) => ({ diff --git a/packages/dapp/src/components/CreateCredentialDisplay/index.tsx b/packages/dapp/src/components/CreateCredentialDisplay/index.tsx index 8fe3c7352..8132d5c96 100644 --- a/packages/dapp/src/components/CreateCredentialDisplay/index.tsx +++ b/packages/dapp/src/components/CreateCredentialDisplay/index.tsx @@ -1,19 +1,19 @@ 'use client'; -import { useEffect, useState } from 'react'; -import Link from 'next/link'; import { AvailableCredentialStores, - isError, - isSuccess, QueryCredentialsRequestResult, Result, SupportedProofFormats, + isError, + isSuccess, } from '@blockchain-lab-um/masca-connector'; import { ArrowLeftIcon } from '@heroicons/react/20/solid'; import { VerifiableCredential } from '@veramo/core'; import clsx from 'clsx'; import { useTranslations } from 'next-intl'; +import Link from 'next/link'; +import { useEffect, useState } from 'react'; import { shallow } from 'zustand/shallow'; import Button from '@/components/Button'; @@ -190,7 +190,10 @@ const CreateCredentialDisplay = () => {
- diff --git a/packages/dapp/src/components/CreatePresentationDisplay/index.tsx b/packages/dapp/src/components/CreatePresentationDisplay/index.tsx index b9bf68f0a..8cff3319a 100644 --- a/packages/dapp/src/components/CreatePresentationDisplay/index.tsx +++ b/packages/dapp/src/components/CreatePresentationDisplay/index.tsx @@ -1,11 +1,9 @@ 'use client'; -import { useEffect, useState } from 'react'; -import { useRouter } from 'next/navigation'; import { - isError, type QueryCredentialsRequestResult, type SupportedProofFormats, + isError, } from '@blockchain-lab-um/masca-connector'; import { ArrowLeftIcon } from '@heroicons/react/20/solid'; import { @@ -13,6 +11,8 @@ import { W3CVerifiablePresentation, } from '@veramo/core'; import { useTranslations } from 'next-intl'; +import { useRouter } from 'next/navigation'; +import { useEffect, useState } from 'react'; import Button from '@/components/Button'; import DropdownMenu from '@/components/DropdownMenu'; @@ -21,9 +21,9 @@ import InputField from '@/components/InputField'; import SelectedVCsTableRow from '@/components/SelectedVCsTableRow/SelectedVCsTableRow'; import ToggleSwitch from '@/components/Switch'; import VPModal from '@/components/VPModal'; +import { useMascaStore, useTableStore } from '@/stores'; import { isPolygonVC } from '@/utils/credential'; import { removeCredentialSubjectFilterString } from '@/utils/format'; -import { useMascaStore, useTableStore } from '@/stores'; const proofFormats: Record = { JWT: 'jwt', @@ -127,6 +127,7 @@ const CreatePresentationDisplay = () => { <>
)} ); diff --git a/packages/dapp/src/components/DropdownMenu/index.tsx b/packages/dapp/src/components/DropdownMenu/index.tsx index f02385f5a..d48a328a5 100644 --- a/packages/dapp/src/components/DropdownMenu/index.tsx +++ b/packages/dapp/src/components/DropdownMenu/index.tsx @@ -1,9 +1,7 @@ -'use client'; - -import { Fragment } from 'react'; import { Menu, Transition } from '@headlessui/react'; import { ChevronDownIcon } from '@heroicons/react/20/solid'; import clsx from 'clsx'; +import { Fragment } from 'react'; import { TextSkeleton } from '../Skeletons/TextSkeleton'; import { DropdownMenuItem } from './DropdownMenuItem'; @@ -56,6 +54,7 @@ const variantsHover: Record = { gray: 'opacity-80', method: 'dark:bg-navy-blue-800 bg-orange-100/50', }; + export default function DropdownMenu({ items, selected, @@ -104,11 +103,11 @@ export default function DropdownMenu({ >
- {items.map((item, id) => ( + {items.map((item) => ( {item} diff --git a/packages/dapp/src/components/DropdownMultiselect/index.tsx b/packages/dapp/src/components/DropdownMultiselect/index.tsx index 2fe61f47b..a00d8105d 100644 --- a/packages/dapp/src/components/DropdownMultiselect/index.tsx +++ b/packages/dapp/src/components/DropdownMultiselect/index.tsx @@ -1,8 +1,8 @@ -import { Fragment } from 'react'; import { AvailableCredentialStores } from '@blockchain-lab-um/masca-connector'; import { Listbox, Transition } from '@headlessui/react'; import { CheckIcon, ChevronDownIcon } from '@heroicons/react/20/solid'; import clsx from 'clsx'; +import { Fragment } from 'react'; interface DropdownMultiselectProps { items: string[]; @@ -46,7 +46,7 @@ const DropdownMultiselect = ({ {i !== 0 && i !== selectedItems.length - 1 ? ', ' : null} ))} - {selectedItems.length === 0 && <>{placeholder}} + {selectedItems.length === 0 && placeholder}
- {items.map((item, id) => ( - + {items.map((item) => ( + {({ selected, active }) => ( <>
+ /> void; diff --git a/packages/dapp/src/components/EncryptedSessionDisplay/StartFlowView/CredentialOfferView.tsx b/packages/dapp/src/components/EncryptedSessionDisplay/StartFlowView/CredentialOfferView.tsx index e18e8d9f5..b54980afd 100644 --- a/packages/dapp/src/components/EncryptedSessionDisplay/StartFlowView/CredentialOfferView.tsx +++ b/packages/dapp/src/components/EncryptedSessionDisplay/StartFlowView/CredentialOfferView.tsx @@ -1,7 +1,7 @@ -import React from 'react'; import { isError } from '@blockchain-lab-um/masca-connector'; import { VerifiableCredential } from '@veramo/core'; import { useTranslations } from 'next-intl'; +import React from 'react'; import { useAccount } from 'wagmi'; import Button from '@/components/Button'; diff --git a/packages/dapp/src/components/EncryptedSessionDisplay/StartFlowView/OIDCAuthView.tsx b/packages/dapp/src/components/EncryptedSessionDisplay/StartFlowView/OIDCAuthView.tsx index 0c7deb053..9632ea7dc 100644 --- a/packages/dapp/src/components/EncryptedSessionDisplay/StartFlowView/OIDCAuthView.tsx +++ b/packages/dapp/src/components/EncryptedSessionDisplay/StartFlowView/OIDCAuthView.tsx @@ -1,6 +1,6 @@ -import React from 'react'; import { isError } from '@blockchain-lab-um/masca-connector'; import { useTranslations } from 'next-intl'; +import React from 'react'; import { useAccount } from 'wagmi'; import Button from '@/components/Button'; diff --git a/packages/dapp/src/components/EncryptedSessionDisplay/StartFlowView/PolygonAuthView.tsx b/packages/dapp/src/components/EncryptedSessionDisplay/StartFlowView/PolygonAuthView.tsx index e44b67ec2..400b5e970 100644 --- a/packages/dapp/src/components/EncryptedSessionDisplay/StartFlowView/PolygonAuthView.tsx +++ b/packages/dapp/src/components/EncryptedSessionDisplay/StartFlowView/PolygonAuthView.tsx @@ -1,6 +1,6 @@ -import React from 'react'; import { isError } from '@blockchain-lab-um/masca-connector'; import { useTranslations } from 'next-intl'; +import React from 'react'; import { useAccount } from 'wagmi'; import Button from '@/components/Button'; diff --git a/packages/dapp/src/components/EncryptedSessionDisplay/StartFlowView/index.tsx b/packages/dapp/src/components/EncryptedSessionDisplay/StartFlowView/index.tsx index ed9578dbd..be74a450a 100644 --- a/packages/dapp/src/components/EncryptedSessionDisplay/StartFlowView/index.tsx +++ b/packages/dapp/src/components/EncryptedSessionDisplay/StartFlowView/index.tsx @@ -1,6 +1,6 @@ -import React from 'react'; import { VerifiableCredential } from '@veramo/core'; import { useTranslations } from 'next-intl'; +import React from 'react'; import { useAccount } from 'wagmi'; import Button from '@/components/Button'; diff --git a/packages/dapp/src/components/EncryptedSessionDisplay/index.tsx b/packages/dapp/src/components/EncryptedSessionDisplay/index.tsx index f32d8ac98..cbae2ff04 100644 --- a/packages/dapp/src/components/EncryptedSessionDisplay/index.tsx +++ b/packages/dapp/src/components/EncryptedSessionDisplay/index.tsx @@ -1,11 +1,11 @@ 'use client'; -import React, { useEffect, useMemo, useState } from 'react'; import { CheckIcon } from '@heroicons/react/24/solid'; import { VerifiableCredential } from '@veramo/core'; import clsx from 'clsx'; import { useStepper } from 'headless-stepper'; import { useTranslations } from 'next-intl'; +import { useEffect, useMemo, useState } from 'react'; import { useAccount } from 'wagmi'; import Button from '@/components/Button'; @@ -152,6 +152,7 @@ const EncryptedSessionDisplay = () => { <> {index < 4 && (
    { const t = useTranslations('EncryptedSessionProvider'); diff --git a/packages/dapp/src/components/GetCredential/index.tsx b/packages/dapp/src/components/GetCredential/index.tsx index 52d711d92..205de5508 100644 --- a/packages/dapp/src/components/GetCredential/index.tsx +++ b/packages/dapp/src/components/GetCredential/index.tsx @@ -1,10 +1,10 @@ 'use client'; -import { useState } from 'react'; import { isError } from '@blockchain-lab-um/masca-connector'; import { CredentialOffer } from '@blockchain-lab-um/oidc-types'; import { useTranslations } from 'next-intl'; import qs from 'qs'; +import { useState } from 'react'; import Button from '@/components/Button'; import InputField from '@/components/InputField'; diff --git a/packages/dapp/src/components/GoogleDriveButton/index.tsx b/packages/dapp/src/components/GoogleDriveButton/index.tsx index 226b3cc74..e1f84ad9d 100644 --- a/packages/dapp/src/components/GoogleDriveButton/index.tsx +++ b/packages/dapp/src/components/GoogleDriveButton/index.tsx @@ -1,9 +1,9 @@ 'use client'; -import { useState } from 'react'; import { isError } from '@blockchain-lab-um/masca-connector'; import { useGoogleLogin } from '@react-oauth/google'; import { useTranslations } from 'next-intl'; +import { useState } from 'react'; import { useMascaStore, useToastStore } from '@/stores'; import Button from '../Button'; @@ -71,7 +71,7 @@ const GoogleDriveButton = ({ return; } - const response = await fetch(`/api/google`, { + const response = await fetch('/api/google', { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -144,7 +144,7 @@ const GoogleDriveButton = ({ return; } - const response = await fetch(`/api/google`, { + const response = await fetch('/api/google', { method: 'POST', headers: { 'Content-Type': 'application/json', @@ -267,7 +267,7 @@ const GoogleDriveButton = ({ return; } - const response = await fetch(`/api/google`, { + const response = await fetch('/api/google', { method: 'POST', headers: { 'Content-Type': 'application/json', diff --git a/packages/dapp/src/components/ImportModal/index.tsx b/packages/dapp/src/components/ImportModal/index.tsx index be86c0274..8c689f136 100644 --- a/packages/dapp/src/components/ImportModal/index.tsx +++ b/packages/dapp/src/components/ImportModal/index.tsx @@ -1,8 +1,7 @@ -import { useState } from 'react'; import { + type AvailableCredentialStores, isW3CCredential, isW3CVerifiableCredential, - type AvailableCredentialStores, } from '@blockchain-lab-um/masca-connector'; import { Modal, @@ -15,6 +14,7 @@ import { W3CVerifiableCredential } from '@veramo/core'; import clsx from 'clsx'; import { normalizeCredential } from 'did-jwt-vc'; import { useTranslations } from 'next-intl'; +import { useState } from 'react'; import Button from '@/components/Button'; import DropdownMultiselect from '@/components/DropdownMultiselect'; diff --git a/packages/dapp/src/components/LandingPage/index.tsx b/packages/dapp/src/components/LandingPage/index.tsx index 5be1e26b3..b9907f67e 100644 --- a/packages/dapp/src/components/LandingPage/index.tsx +++ b/packages/dapp/src/components/LandingPage/index.tsx @@ -1,7 +1,7 @@ 'use client'; -import Link from 'next/link'; import { useTranslations } from 'next-intl'; +import Link from 'next/link'; import Button from '@/components/Button'; diff --git a/packages/dapp/src/components/MascaProvider/index.tsx b/packages/dapp/src/components/MascaProvider/index.tsx index 4883d712e..edbcce2d7 100644 --- a/packages/dapp/src/components/MascaProvider/index.tsx +++ b/packages/dapp/src/components/MascaProvider/index.tsx @@ -1,8 +1,8 @@ 'use client'; -import { useEffect } from 'react'; import { enableMasca, isError } from '@blockchain-lab-um/masca-connector'; import { useTranslations } from 'next-intl'; +import { useEffect } from 'react'; import { useAccount, useChainId, useSwitchChain } from 'wagmi'; import { useMascaStore, useToastStore } from '@/stores'; @@ -108,7 +108,7 @@ const MascaProvider = () => { if (!address) return; enableMascaHandler().catch(async (err) => { // FIXME: this is only a temporary solution - // eslint-disable-next-line @typescript-eslint/no-unsafe-call + if (err.message.toLowerCase().includes('unsupported network')) { useToastStore.setState({ open: true, diff --git a/packages/dapp/src/components/MenuPopover/index.tsx b/packages/dapp/src/components/MenuPopover/index.tsx index 1cad70080..26ad4a26e 100644 --- a/packages/dapp/src/components/MenuPopover/index.tsx +++ b/packages/dapp/src/components/MenuPopover/index.tsx @@ -1,12 +1,12 @@ 'use client'; -import { Fragment } from 'react'; -import Link from 'next/link'; import { Popover, Transition } from '@headlessui/react'; import { ChevronDownIcon } from '@heroicons/react/20/solid'; import { ShareIcon } from '@heroicons/react/24/outline'; import clsx from 'clsx'; import { useTranslations } from 'next-intl'; +import Link from 'next/link'; +import { Fragment } from 'react'; import { useAccount } from 'wagmi'; const IconCreateCredential = () => ( @@ -18,6 +18,7 @@ const IconCreateCredential = () => ( stroke="currentColor" className="dark:text-navy-blue-900 h-6 w-6 text-pink-500" > + Create Credential Icon ( stroke="currentColor" className="dark:text-navy-blue-900 h-6 w-6 text-pink-500" > + Verify Data Icon ( stroke="currentColor" className="dark:text-navy-blue-900 h-6 w-6 text-pink-500" > + Camera Icon ); } - return
    ; + return
    ; })}
    + {/* biome-ignore lint/a11y/useValidAnchor: */} { stroke="currentColor" className="h-6 w-6" > + MetaMask Icon
    - {methods.map((method, id) => ( + {methods.map((method) => ( diff --git a/packages/dapp/src/components/ModifyDSModal/index.tsx b/packages/dapp/src/components/ModifyDSModal/index.tsx index 01ebf5f09..d7806cc31 100644 --- a/packages/dapp/src/components/ModifyDSModal/index.tsx +++ b/packages/dapp/src/components/ModifyDSModal/index.tsx @@ -1,18 +1,18 @@ -import { useState } from 'react'; import { - isError, type AvailableCredentialStores, type QueryCredentialsRequestResult, + isError, } from '@blockchain-lab-um/masca-connector'; import { Modal, ModalBody, ModalContent, ModalHeader } from '@nextui-org/react'; import { useTranslations } from 'next-intl'; +import { useState } from 'react'; import Button from '@/components//Button'; import ToggleSwitch from '@/components//Switch'; import DeleteModal from '@/components/DeleteModal'; +import { useMascaStore, useToastStore } from '@/stores'; import { isPolygonVC } from '@/utils/credential'; import { stringifyCredentialSubject } from '@/utils/format'; -import { useMascaStore, useToastStore } from '@/stores'; interface ModifyDSModalProps { isOpen: boolean; @@ -158,7 +158,7 @@ function ModifyDSModal({ isOpen, setOpen, vc }: ModifyDSModalProps) {
    {Object.keys(vcStores).map((store, id) => (
    {store}
    diff --git a/packages/dapp/src/components/PlaygroundModal/index.tsx b/packages/dapp/src/components/PlaygroundModal/index.tsx index 6dcc39f64..9e97dc6b3 100644 --- a/packages/dapp/src/components/PlaygroundModal/index.tsx +++ b/packages/dapp/src/components/PlaygroundModal/index.tsx @@ -1,7 +1,7 @@ -import { Fragment, useState } from 'react'; import { isError } from '@blockchain-lab-um/masca-connector'; import { Dialog, Transition } from '@headlessui/react'; import clsx from 'clsx'; +import { Fragment, useState } from 'react'; import Button from '@/components/Button'; import { useMascaStore } from '@/stores'; diff --git a/packages/dapp/src/components/PublicFooter/index.tsx b/packages/dapp/src/components/PublicFooter/index.tsx index 2e4f0919d..c94a2b255 100644 --- a/packages/dapp/src/components/PublicFooter/index.tsx +++ b/packages/dapp/src/components/PublicFooter/index.tsx @@ -1,7 +1,7 @@ 'use client'; -import { Dispatch, SetStateAction } from 'react'; import Link from 'next/link'; +import { Dispatch, SetStateAction } from 'react'; interface PublicFooterProps { setIsMenuOpen: Dispatch> | null | undefined; diff --git a/packages/dapp/src/components/PublicNavbar/index.tsx b/packages/dapp/src/components/PublicNavbar/index.tsx index 628c50be5..62c2014ff 100644 --- a/packages/dapp/src/components/PublicNavbar/index.tsx +++ b/packages/dapp/src/components/PublicNavbar/index.tsx @@ -1,11 +1,11 @@ 'use client'; -import { useState } from 'react'; -import Link from 'next/link'; -import { usePathname, useRouter } from 'next/navigation'; import { XMarkIcon } from '@heroicons/react/24/solid'; import clsx from 'clsx'; import { useTranslations } from 'next-intl'; +import Link from 'next/link'; +import { usePathname, useRouter } from 'next/navigation'; +import { useState } from 'react'; import Button from '@/components//Button'; import MascaLogo from '@/components/MascaLogo'; @@ -77,6 +77,7 @@ const PublicNavbar = () => { className={clsx('nav-btn')} key={name} href={href} + rel="noreferrer" > {t(name)}
    @@ -111,6 +112,7 @@ const PublicNavbar = () => {
    @@ -111,7 +111,7 @@ const SelectedVCsTableRow = ({ - diff --git a/packages/dapp/src/components/SettingsCard/GoogleBackupForm.tsx b/packages/dapp/src/components/SettingsCard/GoogleBackupForm.tsx index 50e3f2d3c..d5777cf3b 100644 --- a/packages/dapp/src/components/SettingsCard/GoogleBackupForm.tsx +++ b/packages/dapp/src/components/SettingsCard/GoogleBackupForm.tsx @@ -1,6 +1,6 @@ -import React from 'react'; import { GoogleOAuthProvider } from '@react-oauth/google'; import { useTranslations } from 'next-intl'; +import React from 'react'; import GoogleDriveButton from '@/components/GoogleDriveButton'; diff --git a/packages/dapp/src/components/SettingsCard/TrustedDappTable.tsx b/packages/dapp/src/components/SettingsCard/TrustedDappTable.tsx index 9155b6f2b..83f7360ee 100644 --- a/packages/dapp/src/components/SettingsCard/TrustedDappTable.tsx +++ b/packages/dapp/src/components/SettingsCard/TrustedDappTable.tsx @@ -1,9 +1,8 @@ -import React, { useEffect, useMemo, useState } from 'react'; import { DappPermissions, + MascaConfig, isError, isSuccess, - MascaConfig, } from '@blockchain-lab-um/masca-connector'; import { ArrowTopRightOnSquareIcon, @@ -19,6 +18,7 @@ import { useDisclosure, } from '@nextui-org/react'; import { useTranslations } from 'next-intl'; +import { useEffect, useMemo, useState } from 'react'; import { useMascaStore, useToastStore } from '@/stores'; import Button from '../Button'; @@ -297,19 +297,20 @@ export const TrustedDappTable = () => { const tableRows = useMemo( () => - Object.keys(permissions).map((app, i) => { + Object.keys(permissions).map((app) => { const dappPermissions = permissions[app]; return ( {app} @@ -317,6 +318,7 @@ export const TrustedDappTable = () => { diff --git a/packages/dapp/src/components/ShareCredentialModal/index.tsx b/packages/dapp/src/components/ShareCredentialModal/index.tsx index a6557c1c9..bff841593 100644 --- a/packages/dapp/src/components/ShareCredentialModal/index.tsx +++ b/packages/dapp/src/components/ShareCredentialModal/index.tsx @@ -1,10 +1,7 @@ -import { useEffect, useMemo, useState } from 'react'; -import Image from 'next/image'; -import Link from 'next/link'; import { - isError, Result, ResultObject, + isError, } from '@blockchain-lab-um/masca-connector'; import { Input, @@ -17,6 +14,9 @@ import { import { VerifiablePresentation } from '@veramo/core'; import clsx from 'clsx'; import { useTranslations } from 'next-intl'; +import Image from 'next/image'; +import Link from 'next/link'; +import { useEffect, useMemo, useState } from 'react'; import { LinkedinIcon, LinkedinShareButton, @@ -24,11 +24,11 @@ import { TwitterShareButton, } from 'react-share'; -import { selectProofFormat } from '@/utils/selectProofFormat'; -import { convertTypes } from '@/utils/string'; import { useMascaStore, useToastStore } from '@/stores'; import { useAuthStore } from '@/stores/authStore'; import { useShareModalStore } from '@/stores/shareModalStore'; +import { selectProofFormat } from '@/utils/selectProofFormat'; +import { convertTypes } from '@/utils/string'; import Button from '../Button'; export const ShareCredentialModal = () => { @@ -228,8 +228,8 @@ export const ShareCredentialModal = () => { {t('selected')}
    - {types.map(({ key, value }, i) => ( -
    {value}
    + {types.map((type) => ( +
    {type.value}
    ))}
    diff --git a/packages/dapp/src/components/SignInModal/index.tsx b/packages/dapp/src/components/SignInModal/index.tsx index cbee82101..cb60ce133 100644 --- a/packages/dapp/src/components/SignInModal/index.tsx +++ b/packages/dapp/src/components/SignInModal/index.tsx @@ -1,9 +1,9 @@ 'use client'; -import { useState } from 'react'; import { Modal, ModalBody, ModalContent, ModalHeader } from '@nextui-org/react'; import Cookies from 'js-cookie'; import { useTranslations } from 'next-intl'; +import { useState } from 'react'; import { SiweMessage } from 'siwe'; import { useAccount, useSignMessage } from 'wagmi'; diff --git a/packages/dapp/src/components/Skeletons/TextSkeleton.tsx b/packages/dapp/src/components/Skeletons/TextSkeleton.tsx index d2e1cb5a7..894fe8f32 100644 --- a/packages/dapp/src/components/Skeletons/TextSkeleton.tsx +++ b/packages/dapp/src/components/Skeletons/TextSkeleton.tsx @@ -8,6 +8,6 @@ export const TextSkeleton = ({
    + />
    ); diff --git a/packages/dapp/src/components/SupabaseProvider/index.tsx b/packages/dapp/src/components/SupabaseProvider/index.tsx index 318828274..8f7a8d6a2 100644 --- a/packages/dapp/src/components/SupabaseProvider/index.tsx +++ b/packages/dapp/src/components/SupabaseProvider/index.tsx @@ -24,6 +24,7 @@ export const SupabaseProvider = ({ {t('sign-in-to-continue')}
    + />
    )}
    @@ -79,12 +79,18 @@ const ToastWrapper = () => {
    {link && ( - )} -
    diff --git a/packages/dapp/src/components/ToggleTheme/index.tsx b/packages/dapp/src/components/ToggleTheme/index.tsx index 421699dd8..c33de6296 100644 --- a/packages/dapp/src/components/ToggleTheme/index.tsx +++ b/packages/dapp/src/components/ToggleTheme/index.tsx @@ -1,9 +1,9 @@ 'use client'; -import { useEffect, useState } from 'react'; import { MoonIcon, SunIcon } from '@heroicons/react/24/outline'; import clsx from 'clsx'; import { useTheme } from 'next-themes'; +import { useEffect, useState } from 'react'; const ToggleTheme = () => { const [mounted, setMounted] = useState(false); @@ -21,12 +21,12 @@ const ToggleTheme = () => { return ( diff --git a/packages/dapp/src/config/wagmiConfig.ts b/packages/dapp/src/config/wagmiConfig.ts index aca829046..72063a1c5 100644 --- a/packages/dapp/src/config/wagmiConfig.ts +++ b/packages/dapp/src/config/wagmiConfig.ts @@ -1,4 +1,4 @@ -import { createConfig, http } from 'wagmi'; +import { http, createConfig } from 'wagmi'; import { mainnet, polygon, polygonMumbai, sepolia } from 'wagmi/chains'; import { injected } from 'wagmi/connectors'; diff --git a/packages/dapp/src/i18n.ts b/packages/dapp/src/i18n.ts index 278cf1d1e..beaa1d88f 100644 --- a/packages/dapp/src/i18n.ts +++ b/packages/dapp/src/i18n.ts @@ -1,5 +1,5 @@ -import { notFound } from 'next/navigation'; import { getRequestConfig } from 'next-intl/server'; +import { notFound } from 'next/navigation'; // Can be imported from a shared config const locales = ['en']; diff --git a/packages/dapp/src/middleware.ts b/packages/dapp/src/middleware.ts index 6967a4f7a..96f30a027 100644 --- a/packages/dapp/src/middleware.ts +++ b/packages/dapp/src/middleware.ts @@ -1,5 +1,5 @@ -import { NextRequest } from 'next/server'; import createIntlMiddleware from 'next-intl/middleware'; +import { NextRequest } from 'next/server'; export async function middleware(request: NextRequest) { const handleI18nRouting = createIntlMiddleware({ diff --git a/packages/dapp/src/utils/supabase/database.types.ts b/packages/dapp/src/utils/supabase/database.types.ts index 731d2b637..fdeed0095 100644 --- a/packages/dapp/src/utils/supabase/database.types.ts +++ b/packages/dapp/src/utils/supabase/database.types.ts @@ -4,388 +4,388 @@ export type Json = | boolean | null | { [key: string]: Json | undefined } - | Json[] + | Json[]; export type Database = { public: { Tables: { admins: { Row: { - avatar_url: string | null - full_access: boolean - id: string - updated_at: string | null - username: string | null - } + avatar_url: string | null; + full_access: boolean; + id: string; + updated_at: string | null; + username: string | null; + }; Insert: { - avatar_url?: string | null - full_access?: boolean - id: string - updated_at?: string | null - username?: string | null - } + avatar_url?: string | null; + full_access?: boolean; + id: string; + updated_at?: string | null; + username?: string | null; + }; Update: { - avatar_url?: string | null - full_access?: boolean - id?: string - updated_at?: string | null - username?: string | null - } + avatar_url?: string | null; + full_access?: boolean; + id?: string; + updated_at?: string | null; + username?: string | null; + }; Relationships: [ { - foreignKeyName: "admins_id_fkey" - columns: ["id"] - isOneToOne: true - referencedRelation: "users" - referencedColumns: ["id"] - } - ] - } + foreignKeyName: 'admins_id_fkey'; + columns: ['id']; + isOneToOne: true; + referencedRelation: 'users'; + referencedColumns: ['id']; + }, + ]; + }; authorization: { Row: { - created_at: string - expires_at: string - id: string - nonce: string - } + created_at: string; + expires_at: string; + id: string; + nonce: string; + }; Insert: { - created_at?: string - expires_at: string - id?: string - nonce?: string - } + created_at?: string; + expires_at: string; + id?: string; + nonce?: string; + }; Update: { - created_at?: string - expires_at?: string - id?: string - nonce?: string - } - Relationships: [] - } + created_at?: string; + expires_at?: string; + id?: string; + nonce?: string; + }; + Relationships: []; + }; campaign_claims: { Row: { - campaign_id: string - can_claim: boolean - claimed_at: string | null - id: number - user_id: string - } + campaign_id: string; + can_claim: boolean; + claimed_at: string | null; + id: number; + user_id: string; + }; Insert: { - campaign_id: string - can_claim?: boolean - claimed_at?: string | null - id?: number - user_id: string - } + campaign_id: string; + can_claim?: boolean; + claimed_at?: string | null; + id?: number; + user_id: string; + }; Update: { - campaign_id?: string - can_claim?: boolean - claimed_at?: string | null - id?: number - user_id?: string - } + campaign_id?: string; + can_claim?: boolean; + claimed_at?: string | null; + id?: number; + user_id?: string; + }; Relationships: [ { - foreignKeyName: "public_campaign_claims_campaign_id_fkey" - columns: ["campaign_id"] - isOneToOne: false - referencedRelation: "campaigns" - referencedColumns: ["id"] + foreignKeyName: 'public_campaign_claims_campaign_id_fkey'; + columns: ['campaign_id']; + isOneToOne: false; + referencedRelation: 'campaigns'; + referencedColumns: ['id']; }, { - foreignKeyName: "public_campaign_claims_user_id_fkey" - columns: ["user_id"] - isOneToOne: false - referencedRelation: "users" - referencedColumns: ["id"] - } - ] - } + foreignKeyName: 'public_campaign_claims_user_id_fkey'; + columns: ['user_id']; + isOneToOne: false; + referencedRelation: 'users'; + referencedColumns: ['id']; + }, + ]; + }; campaign_requirements: { Row: { - action_link: string | null - created_at: string - id: string - issuer: string | null - jsonld_schema_url: string | null - name: string | null - types: string[] | null - } + action_link: string | null; + created_at: string; + id: string; + issuer: string | null; + jsonld_schema_url: string | null; + name: string | null; + types: string[] | null; + }; Insert: { - action_link?: string | null - created_at?: string - id?: string - issuer?: string | null - jsonld_schema_url?: string | null - name?: string | null - types?: string[] | null - } + action_link?: string | null; + created_at?: string; + id?: string; + issuer?: string | null; + jsonld_schema_url?: string | null; + name?: string | null; + types?: string[] | null; + }; Update: { - action_link?: string | null - created_at?: string - id?: string - issuer?: string | null - jsonld_schema_url?: string | null - name?: string | null - types?: string[] | null - } - Relationships: [] - } + action_link?: string | null; + created_at?: string; + id?: string; + issuer?: string | null; + jsonld_schema_url?: string | null; + name?: string | null; + types?: string[] | null; + }; + Relationships: []; + }; campaigns: { Row: { - additional_constraints: Json[] | null - claimed: number | null - created_at: string - description: string | null - end_date: string | null - id: string - image_url: string | null - production: boolean - schema_url: string | null - start_date: string | null - title: string | null - total: number | null - } + additional_constraints: Json[] | null; + claimed: number | null; + created_at: string; + description: string | null; + end_date: string | null; + id: string; + image_url: string | null; + production: boolean; + schema_url: string | null; + start_date: string | null; + title: string | null; + total: number | null; + }; Insert: { - additional_constraints?: Json[] | null - claimed?: number | null - created_at?: string - description?: string | null - end_date?: string | null - id?: string - image_url?: string | null - production?: boolean - schema_url?: string | null - start_date?: string | null - title?: string | null - total?: number | null - } + additional_constraints?: Json[] | null; + claimed?: number | null; + created_at?: string; + description?: string | null; + end_date?: string | null; + id?: string; + image_url?: string | null; + production?: boolean; + schema_url?: string | null; + start_date?: string | null; + title?: string | null; + total?: number | null; + }; Update: { - additional_constraints?: Json[] | null - claimed?: number | null - created_at?: string - description?: string | null - end_date?: string | null - id?: string - image_url?: string | null - production?: boolean - schema_url?: string | null - start_date?: string | null - title?: string | null - total?: number | null - } - Relationships: [] - } + additional_constraints?: Json[] | null; + claimed?: number | null; + created_at?: string; + description?: string | null; + end_date?: string | null; + id?: string; + image_url?: string | null; + production?: boolean; + schema_url?: string | null; + start_date?: string | null; + title?: string | null; + total?: number | null; + }; + Relationships: []; + }; encrypted_sessions: { Row: { - connected: boolean - data: string | null - id: string - iv: string | null - user_id: string - } + connected: boolean; + data: string | null; + id: string; + iv: string | null; + user_id: string; + }; Insert: { - connected?: boolean - data?: string | null - id?: string - iv?: string | null - user_id: string - } + connected?: boolean; + data?: string | null; + id?: string; + iv?: string | null; + user_id: string; + }; Update: { - connected?: boolean - data?: string | null - id?: string - iv?: string | null - user_id?: string - } + connected?: boolean; + data?: string | null; + id?: string; + iv?: string | null; + user_id?: string; + }; Relationships: [ { - foreignKeyName: "public_encrypted-sessions_user_id_fkey" - columns: ["user_id"] - isOneToOne: false - referencedRelation: "users" - referencedColumns: ["id"] - } - ] - } + foreignKeyName: 'public_encrypted-sessions_user_id_fkey'; + columns: ['user_id']; + isOneToOne: false; + referencedRelation: 'users'; + referencedColumns: ['id']; + }, + ]; + }; presentations: { Row: { - created_at: string - expires_at: string | null - id: string - presentation: Json - title: string - user_id: string - views: number - } + created_at: string; + expires_at: string | null; + id: string; + presentation: Json; + title: string; + user_id: string; + views: number; + }; Insert: { - created_at?: string - expires_at?: string | null - id?: string - presentation: Json - title: string - user_id?: string - views?: number - } + created_at?: string; + expires_at?: string | null; + id?: string; + presentation: Json; + title: string; + user_id?: string; + views?: number; + }; Update: { - created_at?: string - expires_at?: string | null - id?: string - presentation?: Json - title?: string - user_id?: string - views?: number - } + created_at?: string; + expires_at?: string | null; + id?: string; + presentation?: Json; + title?: string; + user_id?: string; + views?: number; + }; Relationships: [ { - foreignKeyName: "presentations_user_id_fkey" - columns: ["user_id"] - isOneToOne: false - referencedRelation: "users" - referencedColumns: ["id"] - } - ] - } + foreignKeyName: 'presentations_user_id_fkey'; + columns: ['user_id']; + isOneToOne: false; + referencedRelation: 'users'; + referencedColumns: ['id']; + }, + ]; + }; requirement_campaign_rel: { Row: { - campaign_id: string - requirement_id: string - } + campaign_id: string; + requirement_id: string; + }; Insert: { - campaign_id: string - requirement_id: string - } + campaign_id: string; + requirement_id: string; + }; Update: { - campaign_id?: string - requirement_id?: string - } + campaign_id?: string; + requirement_id?: string; + }; Relationships: [ { - foreignKeyName: "public_requirement_campaign_rel_campaign_id_fkey" - columns: ["campaign_id"] - isOneToOne: false - referencedRelation: "campaigns" - referencedColumns: ["id"] + foreignKeyName: 'public_requirement_campaign_rel_campaign_id_fkey'; + columns: ['campaign_id']; + isOneToOne: false; + referencedRelation: 'campaigns'; + referencedColumns: ['id']; }, { - foreignKeyName: "public_requirement_campaign_rel_requirement_id_fkey" - columns: ["requirement_id"] - isOneToOne: false - referencedRelation: "campaign_requirements" - referencedColumns: ["id"] - } - ] - } + foreignKeyName: 'public_requirement_campaign_rel_requirement_id_fkey'; + columns: ['requirement_id']; + isOneToOne: false; + referencedRelation: 'campaign_requirements'; + referencedColumns: ['id']; + }, + ]; + }; users: { Row: { - address: string - created_at: string - id: string - } + address: string; + created_at: string; + id: string; + }; Insert: { - address: string - created_at?: string - id?: string - } + address: string; + created_at?: string; + id?: string; + }; Update: { - address?: string - created_at?: string - id?: string - } - Relationships: [] - } - } + address?: string; + created_at?: string; + id?: string; + }; + Relationships: []; + }; + }; Views: { - [_ in never]: never - } + [_ in never]: never; + }; Functions: { - [_ in never]: never - } + [_ in never]: never; + }; Enums: { - [_ in never]: never - } + [_ in never]: never; + }; CompositeTypes: { - [_ in never]: never - } - } -} + [_ in never]: never; + }; + }; +}; export type Tables< PublicTableNameOrOptions extends - | keyof (Database["public"]["Tables"] & Database["public"]["Views"]) + | keyof (Database['public']['Tables'] & Database['public']['Views']) | { schema: keyof Database }, TableName extends PublicTableNameOrOptions extends { schema: keyof Database } - ? keyof (Database[PublicTableNameOrOptions["schema"]]["Tables"] & - Database[PublicTableNameOrOptions["schema"]]["Views"]) - : never = never + ? keyof (Database[PublicTableNameOrOptions['schema']]['Tables'] & + Database[PublicTableNameOrOptions['schema']]['Views']) + : never = never, > = PublicTableNameOrOptions extends { schema: keyof Database } - ? (Database[PublicTableNameOrOptions["schema"]]["Tables"] & - Database[PublicTableNameOrOptions["schema"]]["Views"])[TableName] extends { - Row: infer R - } - ? R - : never - : PublicTableNameOrOptions extends keyof (Database["public"]["Tables"] & - Database["public"]["Views"]) - ? (Database["public"]["Tables"] & - Database["public"]["Views"])[PublicTableNameOrOptions] extends { - Row: infer R + ? (Database[PublicTableNameOrOptions['schema']]['Tables'] & + Database[PublicTableNameOrOptions['schema']]['Views'])[TableName] extends { + Row: infer R; } ? R : never - : never + : PublicTableNameOrOptions extends keyof (Database['public']['Tables'] & + Database['public']['Views']) + ? (Database['public']['Tables'] & + Database['public']['Views'])[PublicTableNameOrOptions] extends { + Row: infer R; + } + ? R + : never + : never; export type TablesInsert< PublicTableNameOrOptions extends - | keyof Database["public"]["Tables"] + | keyof Database['public']['Tables'] | { schema: keyof Database }, TableName extends PublicTableNameOrOptions extends { schema: keyof Database } - ? keyof Database[PublicTableNameOrOptions["schema"]]["Tables"] - : never = never + ? keyof Database[PublicTableNameOrOptions['schema']]['Tables'] + : never = never, > = PublicTableNameOrOptions extends { schema: keyof Database } - ? Database[PublicTableNameOrOptions["schema"]]["Tables"][TableName] extends { - Insert: infer I + ? Database[PublicTableNameOrOptions['schema']]['Tables'][TableName] extends { + Insert: infer I; } ? I : never - : PublicTableNameOrOptions extends keyof Database["public"]["Tables"] - ? Database["public"]["Tables"][PublicTableNameOrOptions] extends { - Insert: infer I - } - ? I - : never - : never + : PublicTableNameOrOptions extends keyof Database['public']['Tables'] + ? Database['public']['Tables'][PublicTableNameOrOptions] extends { + Insert: infer I; + } + ? I + : never + : never; export type TablesUpdate< PublicTableNameOrOptions extends - | keyof Database["public"]["Tables"] + | keyof Database['public']['Tables'] | { schema: keyof Database }, TableName extends PublicTableNameOrOptions extends { schema: keyof Database } - ? keyof Database[PublicTableNameOrOptions["schema"]]["Tables"] - : never = never + ? keyof Database[PublicTableNameOrOptions['schema']]['Tables'] + : never = never, > = PublicTableNameOrOptions extends { schema: keyof Database } - ? Database[PublicTableNameOrOptions["schema"]]["Tables"][TableName] extends { - Update: infer U + ? Database[PublicTableNameOrOptions['schema']]['Tables'][TableName] extends { + Update: infer U; } ? U : never - : PublicTableNameOrOptions extends keyof Database["public"]["Tables"] - ? Database["public"]["Tables"][PublicTableNameOrOptions] extends { - Update: infer U - } - ? U - : never - : never + : PublicTableNameOrOptions extends keyof Database['public']['Tables'] + ? Database['public']['Tables'][PublicTableNameOrOptions] extends { + Update: infer U; + } + ? U + : never + : never; export type Enums< PublicEnumNameOrOptions extends - | keyof Database["public"]["Enums"] + | keyof Database['public']['Enums'] | { schema: keyof Database }, EnumName extends PublicEnumNameOrOptions extends { schema: keyof Database } - ? keyof Database[PublicEnumNameOrOptions["schema"]]["Enums"] - : never = never + ? keyof Database[PublicEnumNameOrOptions['schema']]['Enums'] + : never = never, > = PublicEnumNameOrOptions extends { schema: keyof Database } - ? Database[PublicEnumNameOrOptions["schema"]]["Enums"][EnumName] - : PublicEnumNameOrOptions extends keyof Database["public"]["Enums"] - ? Database["public"]["Enums"][PublicEnumNameOrOptions] - : never + ? Database[PublicEnumNameOrOptions['schema']]['Enums'][EnumName] + : PublicEnumNameOrOptions extends keyof Database['public']['Enums'] + ? Database['public']['Enums'][PublicEnumNameOrOptions] + : never; diff --git a/packages/dapp/tailwind.config.js b/packages/dapp/tailwind.config.js index e63c1aaae..8b6c6944a 100644 --- a/packages/dapp/tailwind.config.js +++ b/packages/dapp/tailwind.config.js @@ -1,4 +1,3 @@ -// eslint-disable-next-line @typescript-eslint/no-var-requires const { nextui } = require('@nextui-org/react'); /** @type {import('tailwindcss').Config} */ diff --git a/packages/dapp/tsconfig.eslint.json b/packages/dapp/tsconfig.eslint.json deleted file mode 100644 index 16a0e9d61..000000000 --- a/packages/dapp/tsconfig.eslint.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["**/*", ".eslintrc.js"] -} diff --git a/packages/datamanager/.eslintrc.cjs b/packages/datamanager/.eslintrc.cjs deleted file mode 100644 index ef7346a34..000000000 --- a/packages/datamanager/.eslintrc.cjs +++ /dev/null @@ -1,9 +0,0 @@ -module.exports = { - root: true, - extends: ['../../.eslintrc.cjs'], - parserOptions: { - project: './tsconfig.eslint.json', - sourceType: 'module', - tsconfigRootDir: __dirname, - }, -}; diff --git a/packages/datamanager/.lintstagedrc.cjs b/packages/datamanager/.lintstagedrc.cjs index 0fa2a7f45..2d4bbd899 100644 --- a/packages/datamanager/.lintstagedrc.cjs +++ b/packages/datamanager/.lintstagedrc.cjs @@ -1,4 +1,3 @@ module.exports = { - '*.{js,ts}': ['eslint --fix'], - '*.{md,json,yml,yaml}': ['prettier --write'], + '*.{js,ts,mts,mjs,cjs,cts,jsx,tsx,json}': ['biome check --apply'], }; diff --git a/packages/datamanager/.prettierignore b/packages/datamanager/.prettierignore deleted file mode 100644 index f3fd95230..000000000 --- a/packages/datamanager/.prettierignore +++ /dev/null @@ -1,4 +0,0 @@ -dist -node_modules -coverage -CHANGELOG.md diff --git a/packages/datamanager/package.json b/packages/datamanager/package.json index fa8fdafb7..296011f75 100644 --- a/packages/datamanager/package.json +++ b/packages/datamanager/package.json @@ -7,20 +7,13 @@ "module": "./dist/index.js", "source": "./src/index.ts", "types": "./dist/index.d.ts", - "files": [ - "dist/**", - "README.md", - "package.json", - "CHANGELOG.md" - ], + "files": ["dist/**", "README.md", "package.json", "CHANGELOG.md"], "scripts": { "build": "pnpm clean && pnpm compile", "clean": "rimraf dist", "compile": "tsc --build tsconfig.build.json", - "lint": "pnpm lint:eslint && pnpm lint:prettier", - "lint:eslint": "eslint .", - "lint:fix": "eslint . --fix && prettier . --write", - "lint:prettier": "prettier . --check", + "lint": "biome check .", + "lint:fix": "biome check --apply .", "prepack": "pnpm build", "test": "pnpm cross-env NODE_NO_WARNINGS=1 vitest", "test:ci": "pnpm run test" diff --git a/packages/datamanager/tsconfig.eslint.json b/packages/datamanager/tsconfig.eslint.json deleted file mode 100644 index b0a08c182..000000000 --- a/packages/datamanager/tsconfig.eslint.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["**/*", ".eslintrc.cjs"] -} diff --git a/packages/docs/.eslintrc.cjs b/packages/docs/.eslintrc.cjs deleted file mode 100644 index 08b1126cf..000000000 --- a/packages/docs/.eslintrc.cjs +++ /dev/null @@ -1,10 +0,0 @@ -module.exports = { - root: true, - extends: ['../../.eslintrc.cjs'], - plugins: ['import'], - parserOptions: { - tsconfigRootDir: __dirname, - project: './tsconfig.eslint.json', - sourceType: 'module', - }, -}; diff --git a/packages/docs/.lintstagedrc.cjs b/packages/docs/.lintstagedrc.cjs index a018ce785..2d4bbd899 100644 --- a/packages/docs/.lintstagedrc.cjs +++ b/packages/docs/.lintstagedrc.cjs @@ -1,4 +1,3 @@ module.exports = { - '*.{js,ts,tsx}': ['eslint --fix'], - '*.{json,md,mdx,html}': ['prettier --write'], + '*.{js,ts,mts,mjs,cjs,cts,jsx,tsx,json}': ['biome check --apply'], }; diff --git a/packages/docs/.prettierignore b/packages/docs/.prettierignore deleted file mode 100644 index b374ad041..000000000 --- a/packages/docs/.prettierignore +++ /dev/null @@ -1,5 +0,0 @@ -build -node_modules -coverage -.docusaurus -CHANGELOG.md diff --git a/packages/docs/docusaurus.config.js b/packages/docs/docusaurus.config.js index 105089730..9778cdcc0 100644 --- a/packages/docs/docusaurus.config.js +++ b/packages/docs/docusaurus.config.js @@ -1,4 +1,3 @@ -/* eslint-disable @typescript-eslint/no-var-requires */ // @ts-check // Note: type annotations allow type checking and IDEs autocompletion diff --git a/packages/docs/package.json b/packages/docs/package.json index 72b7d30e7..b40c7ba4d 100644 --- a/packages/docs/package.json +++ b/packages/docs/package.json @@ -10,11 +10,8 @@ "compress": "precompress build --types gz --include **.html,**.css,**.js,**.map", "docker:build": "docker build . -t blockchain-lab-um/masca-docs", "docusaurus": "docusaurus", - "lint": "pnpm lint:eslint && pnpm lint:prettier", - "lint:eslint": "eslint .", - "lint:fix": "eslint . --fix && prettier . --write", - "lint:prettier": "prettier . --check", - "prettier": "prettier --write .", + "lint": "biome check .", + "lint:fix": "biome check --apply .", "serve": "docusaurus serve", "start": "docusaurus start", "swizzle": "docusaurus swizzle", @@ -49,7 +46,7 @@ "@docusaurus/plugin-content-docs": "^3.1.1", "@docusaurus/types": "^3.1.1", "@tsconfig/docusaurus": "^2.0.2", - "@types/react": "18.2.63", + "@types/react": "18.2.64", "precompress": "^12.0.2" }, "nx": { @@ -64,7 +61,6 @@ "!{projectRoot}/.docusaurus/**/*", "!{projectRoot}/.lintstagedrc.cjs", "!{projectRoot}/Dockerfile", - "!{projectRoot}/.prettierignore", "!{projectRoot}/.env.*" ] }, diff --git a/packages/docs/src/components/HomepageFeatures/index.tsx b/packages/docs/src/components/HomepageFeatures/index.tsx index 1e90ebb31..77c8036fe 100644 --- a/packages/docs/src/components/HomepageFeatures/index.tsx +++ b/packages/docs/src/components/HomepageFeatures/index.tsx @@ -1,7 +1,7 @@ -import React from 'react'; import Beach from '@site/static/img/beach.svg'; import Rocket from '@site/static/img/rocket.svg'; import Specialist from '@site/static/img/specialist.svg'; +import React from 'react'; import styles from './styles.module.css'; @@ -51,8 +51,8 @@ export default function HomepageFeatures() {
    - {FeatureList.map((feature, idx) => ( - + {FeatureList.map((feature) => ( + ))}
    diff --git a/packages/docs/src/components/Team/Wrapper.tsx b/packages/docs/src/components/Team/Wrapper.tsx index 33116fba3..c1f95e9db 100644 --- a/packages/docs/src/components/Team/Wrapper.tsx +++ b/packages/docs/src/components/Team/Wrapper.tsx @@ -1,15 +1,15 @@ import React from 'react'; import members from '../../constants/Members'; -import styles from './styles.module.css'; import TeamCard from './TeamCard'; +import styles from './styles.module.css'; export default function Wrapper() { return (
    {members.map((member, i) => ( - + ))}
    diff --git a/packages/docs/src/pages/index.tsx b/packages/docs/src/pages/index.tsx index 5d4a721c5..31be8a332 100644 --- a/packages/docs/src/pages/index.tsx +++ b/packages/docs/src/pages/index.tsx @@ -1,9 +1,9 @@ -import React from 'react'; import Link from '@docusaurus/Link'; import useDocusaurusContext from '@docusaurus/useDocusaurusContext'; import HomepageFeatures from '@site/src/components/HomepageFeatures'; import Layout from '@theme/Layout'; import clsx from 'clsx'; +import React from 'react'; import styles from './index.module.css'; diff --git a/packages/docs/tsconfig.eslint.json b/packages/docs/tsconfig.eslint.json deleted file mode 100644 index b0a08c182..000000000 --- a/packages/docs/tsconfig.eslint.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["**/*", ".eslintrc.cjs"] -} diff --git a/packages/snap/.eslintrc.cjs b/packages/snap/.eslintrc.cjs deleted file mode 100644 index b61351b8d..000000000 --- a/packages/snap/.eslintrc.cjs +++ /dev/null @@ -1,10 +0,0 @@ -module.exports = { - root: true, - extends: ['../../.eslintrc.cjs'], - parserOptions: { - tsconfigRootDir: __dirname, - project: './tsconfig.eslint.json', - sourceType: 'module', - }, - ignorePatterns: ['post-process.js', 'build.js'], -}; diff --git a/packages/snap/.lintstagedrc.cjs b/packages/snap/.lintstagedrc.cjs index 0fa2a7f45..2d4bbd899 100644 --- a/packages/snap/.lintstagedrc.cjs +++ b/packages/snap/.lintstagedrc.cjs @@ -1,4 +1,3 @@ module.exports = { - '*.{js,ts}': ['eslint --fix'], - '*.{md,json,yml,yaml}': ['prettier --write'], + '*.{js,ts,mts,mjs,cjs,cts,jsx,tsx,json}': ['biome check --apply'], }; diff --git a/packages/snap/.prettierignore b/packages/snap/.prettierignore deleted file mode 100644 index aff039f3d..000000000 --- a/packages/snap/.prettierignore +++ /dev/null @@ -1,6 +0,0 @@ -dist -index.html -node_modules -coverage -CHANGELOG.md -src/polygon-id/circuits diff --git a/packages/snap/package.json b/packages/snap/package.json index d3fbeb87c..99f147db7 100644 --- a/packages/snap/package.json +++ b/packages/snap/package.json @@ -44,10 +44,8 @@ "bundle:postprocess": "node post-process.js", "clean": "rimraf dist coverage", "coverage": "pnpm run test --coverage", - "lint": "pnpm lint:eslint && pnpm lint:prettier", - "lint:eslint": "eslint .", - "lint:fix": "eslint . --fix && prettier . --write", - "lint:prettier": "prettier . --check", + "lint": "biome check .", + "lint:fix": "biome check --apply .", "serve": "mm-snap serve", "start": "pnpm build && pnpm serve", "test": "cross-env IS_TESTING=true cross-env NODE_NO_WARNINGS=1 vitest", diff --git a/packages/snap/post-process.js b/packages/snap/post-process.js index 04c6260a8..e4b9d118b 100644 --- a/packages/snap/post-process.js +++ b/packages/snap/post-process.js @@ -12,7 +12,7 @@ let bundleString = fs.readFileSync(bundlePath, 'utf8'); console.log('[Start]: MetaMask Snaps transform'); bundleString = postProcessBundle(bundleString, { - stripComments: true, + stripComments: true, }).code; console.log('[End]: MetaMask Snaps transform'); @@ -23,8 +23,8 @@ console.log('[Start]: Custom transform'); bundleString = 'var self = window;\n'.concat(bundleString); bundleString = bundleString.replace( - "/** @type {import('cborg').TagDecoder[]} */", - '' + "/** @type {import('cborg').TagDecoder[]} */", + '', ); // [Polygon ID] Fix Worker @@ -32,8 +32,8 @@ bundleString = 'var Worker = {};\n'.concat(bundleString); // [Polygon ID] Fix promise bundleString = bundleString.replaceAll( - `new Function("return this;")().Promise`, - 'Promise' + `new Function("return this;")().Promise`, + 'Promise', ); // [Polygon ID] fix single thread @@ -41,8 +41,8 @@ bundleString = bundleString.replaceAll(`if (singleThread)`, `if (true)`); // [Polygon ID] fix single thread bundleString = bundleString.replaceAll( - `singleThread: singleThread ? true : false`, - `singleThread: true` + `singleThread: singleThread ? true : false`, + `singleThread: true`, ); // [Polygon ID] Remove fs diff --git a/packages/snap/snap.manifest.json b/packages/snap/snap.manifest.json index 6f72f9dbb..a847c3058 100644 --- a/packages/snap/snap.manifest.json +++ b/packages/snap/snap.manifest.json @@ -26,7 +26,7 @@ "./files/circuits/credentialAtomicQuerySigV2/circuit_final.zkey", "./files/circuits/credentialAtomicQuerySigV2/verification_key.json" ], - "shasum": "tHNYX+N6+85n+Cxk4D39v7GC4vsmNDuuGFtGUodMigM=" + "shasum": "XgShgB1TnFIB19+mTn/ORaS8wXISBcQkk8OxsHjNIpc=" }, "initialPermissions": { "endowment:ethereum-provider": {}, diff --git a/packages/snap/src/Ethereum.service.ts b/packages/snap/src/Ethereum.service.ts index b77e4b141..ebbc0826a 100644 --- a/packages/snap/src/Ethereum.service.ts +++ b/packages/snap/src/Ethereum.service.ts @@ -1,19 +1,15 @@ import { - chainIdNetworkParamsMapping, - didMethodChainIdMapping, MethodsRequiringNetwork, + didMethodChainIdMapping, } from '@blockchain-lab-um/masca-types'; -import { divider, heading, panel, text } from '@metamask/snaps-sdk'; -import { createPublicClient, custom, PublicClient } from 'viem'; +import { PublicClient, createPublicClient, custom } from 'viem'; import { mainnet } from 'viem/chains'; -import UIService from './UI.service'; - class EthereumService { private static instance: PublicClient; static async init(): Promise { - this.instance = await this.createClient(); + EthereumService.instance = await EthereumService.createClient(); } /** @@ -36,58 +32,16 @@ class EthereumService { */ static async getEnsName(params: { address: `0x${string}` }): Promise { const { address } = params; - if (!this.instance) { + if (!EthereumService.instance) { throw new Error('Viem client not instanciated.'); } - const ensName = await this.instance.getEnsName({ + const ensName = await EthereumService.instance.getEnsName({ address, }); if (!ensName) throw new Error('ENS name not found.'); return ensName; } - /** - * Function that changes the current network if needed for the selected DID method. - * @param params.didMethod - DID method to check for. - * @returns void - */ - static async requestNetworkSwitch(params: { - didMethod: MethodsRequiringNetwork; - }): Promise { - // FIXME: this method should be revisited, wallet_switchEthereumChain does not exist in ethereum object? - const { didMethod } = params; - const content = panel([ - heading('Switch Network'), - text( - `${didMethod} is not available for your currently selected network. Would you like to switch your network?` - ), - divider(), - text( - `Switching to: ${didMethod} on chainId: ${didMethodChainIdMapping[didMethod][0]}` - ), - ]); - if (!(await UIService.snapConfirm({ content, method: 'other' }))) { - throw new Error('User rejected network switch.'); - } - const chainId = didMethodChainIdMapping[didMethod][0]; - try { - await ethereum.request({ - method: 'wallet_switchEthereumChain', - params: [{ chainId }], - }); - } catch (err) { - if ( - (err as { code?: number; message: string; stack: string }).code === 4902 - ) { - await ethereum.request({ - method: 'wallet_addEthereumChain', - params: [chainIdNetworkParamsMapping[chainId]], - }); - } - throw err as Error; - } - } - /** * Function that checks if the current network is valid for the selected DID method. * @param params.didMethod - DID method to check for. @@ -97,15 +51,13 @@ class EthereumService { didMethod: MethodsRequiringNetwork; }): Promise { const { didMethod } = params; - const chainId = await this.getNetwork(); + const chainId = await EthereumService.getNetwork(); if ( !didMethodChainIdMapping[didMethod].includes(chainId) && !didMethodChainIdMapping[didMethod].includes('*') ) { - // FIXME: examine the method below throw new Error('Unsupported network.'); - await this.requestNetworkSwitch({ didMethod }); } } diff --git a/packages/snap/src/General.service.ts b/packages/snap/src/General.service.ts index a159e4d3b..f416168e5 100644 --- a/packages/snap/src/General.service.ts +++ b/packages/snap/src/General.service.ts @@ -1,23 +1,23 @@ import { - availableCredentialStores, AvailableCredentialStores, - availableMethods, CURRENT_STATE_VERSION, ImportStateBackupRequestParams, - isValidMascaState, MascaAccountConfig, MascaConfig, MascaRPCRequest, MethodsRequiringNetwork, - requiresNetwork, SetCredentialStoreRequestParams, SwitchMethodRequestParams, + availableCredentialStores, + availableMethods, + isValidMascaState, + requiresNetwork, } from '@blockchain-lab-um/masca-types'; import EncryptionService from './Encryption.service'; import EthereumService from './Ethereum.service'; -import StorageService from './storage/Storage.service'; import UIService from './UI.service'; +import StorageService from './storage/Storage.service'; import { validateSession } from './utils/ceramicUtils'; import { getEmptyAccountState, getInitialPermissions } from './utils/config'; import { isTrustedDapp, permissionExists } from './utils/permissions'; @@ -196,10 +196,9 @@ class GeneralService { return state[CURRENT_STATE_VERSION].config.dApp.disablePopups; } throw new Error('User rejected popup toggle.'); - } else { - state[CURRENT_STATE_VERSION].config.dApp.disablePopups = false; - return state[CURRENT_STATE_VERSION].config.dApp.disablePopups; } + state[CURRENT_STATE_VERSION].config.dApp.disablePopups = false; + return state[CURRENT_STATE_VERSION].config.dApp.disablePopups; } /** diff --git a/packages/snap/src/Signer.service.ts b/packages/snap/src/Signer.service.ts index 4f84e1cbe..e2a358ddb 100644 --- a/packages/snap/src/Signer.service.ts +++ b/packages/snap/src/Signer.service.ts @@ -1,7 +1,7 @@ import { + PROTOCOL_CONSTANTS, byteDecoder, byteEncoder, - PROTOCOL_CONSTANTS, } from '@0xpolygonid/js-sdk'; import { CURRENT_STATE_VERSION, @@ -14,10 +14,10 @@ import { bytesToBase64url, encodeBase64url } from '@veramo/utils'; import elliptic from 'elliptic'; import { sha256 } from 'ethereum-cryptography/sha256'; -import PolygonService from './polygon-id/Polygon.service'; -import StorageService from './storage/Storage.service'; import UIService from './UI.service'; import WalletService from './Wallet.service'; +import PolygonService from './polygon-id/Polygon.service'; +import StorageService from './storage/Storage.service'; const { ec: EC } = elliptic; @@ -40,9 +40,9 @@ class SignerService { static async signData(signDataParams: SignDataParams): Promise { switch (signDataParams.type) { case 'JWT': - return this.signJWT(signDataParams); + return SignerService.signJWT(signDataParams); case 'JWZ': - return this.signJWZ(signDataParams); + return SignerService.signJWZ(signDataParams); default: { throw new Error('Unsupported sign data type.'); } @@ -80,7 +80,7 @@ class SignerService { const ctx = new EC(curve); const ecPrivateKey = ctx.keyFromPrivate(wallet.privateKey.slice(2)); - const alg = curve === 'secp256k1' ? `ES256K` : `ES256`; + const alg = curve === 'secp256k1' ? 'ES256K' : 'ES256'; const jwtHeader = { ...header, diff --git a/packages/snap/src/Snap.service.ts b/packages/snap/src/Snap.service.ts index dd7456f3c..eac09f258 100644 --- a/packages/snap/src/Snap.service.ts +++ b/packages/snap/src/Snap.service.ts @@ -1,11 +1,16 @@ import { W3CCredential } from '@0xpolygonid/js-sdk'; import { + CURRENT_STATE_VERSION, CreateCredentialRequestParams, CreatePresentationRequestParams, - CURRENT_STATE_VERSION, DeleteCredentialsRequestParams, HandleAuthorizationRequestParams, HandleCredentialOfferRequestParams, + QueryCredentialsRequestParams, + QueryCredentialsRequestResult, + SaveCredentialRequestParams, + SaveCredentialRequestResult, + VerifyDataRequestParams, isPolygonSupportedMethods, isValidAddDappSettingsRequest, isValidChangePermissionRequest, @@ -23,11 +28,6 @@ import { isValidVerifyDataRequest, isVeramoSupportedMethods, polygonSupportedMethods, - QueryCredentialsRequestParams, - QueryCredentialsRequestResult, - SaveCredentialRequestParams, - SaveCredentialRequestResult, - VerifyDataRequestParams, } from '@blockchain-lab-um/masca-types'; import { Result, ResultObject } from '@blockchain-lab-um/utils'; import { @@ -41,13 +41,13 @@ import { import { VerifiablePresentation } from 'did-jwt-vc'; import GeneralService from './General.service'; -import PolygonService from './polygon-id/Polygon.service'; import SignerService from './Signer.service'; -import StorageService from './storage/Storage.service'; import UIService from './UI.service'; +import WalletService from './Wallet.service'; +import PolygonService from './polygon-id/Polygon.service'; +import StorageService from './storage/Storage.service'; import { isTrustedDomain } from './utils/permissions'; import VeramoService from './veramo/Veramo.service'; -import WalletService from './Wallet.service'; class SnapService { private static origin: string; @@ -472,7 +472,7 @@ class SnapService { params: any, origin: string ): Promise> { - this.origin = origin; // hostname + SnapService.origin = origin; // hostname let res; @@ -495,7 +495,7 @@ class SnapService { state ); await PolygonService.init(); - res = await this.queryCredentials(params); + res = await SnapService.queryCredentials(params); return ResultObject.success(res); case 'saveCredential': isValidSaveCredentialRequest( @@ -503,7 +503,7 @@ class SnapService { state[CURRENT_STATE_VERSION].currentAccount, state ); - res = await this.saveCredential(params); + res = await SnapService.saveCredential(params); return ResultObject.success(res); case 'createCredential': isValidCreateCredentialRequest( @@ -512,12 +512,12 @@ class SnapService { state ); await VeramoService.importIdentifier(); - res = await this.createCredential(params); + res = await SnapService.createCredential(params); return ResultObject.success(res); case 'createPresentation': isValidCreatePresentationRequest(params); await VeramoService.importIdentifier(); - res = await this.createPresentation(params); + res = await SnapService.createPresentation(params); return ResultObject.success(res); case 'deleteCredential': isValidDeleteCredentialsRequest( @@ -526,24 +526,24 @@ class SnapService { state ); await PolygonService.init(); - res = await this.deleteCredential(params); + res = await SnapService.deleteCredential(params); return ResultObject.success(res); case 'getDID': - res = await this.getDID(); + res = await SnapService.getDID(); return ResultObject.success(res); case 'resolveDID': isValidResolveDIDRequest(params); - res = await this.resolveDID(params); + res = await SnapService.resolveDID(params); return ResultObject.success(res); case 'verifyData': isValidVerifyDataRequest(params); - res = await this.verifyData(params); + res = await SnapService.verifyData(params); return ResultObject.success(res); case 'handleCredentialOffer': - res = await this.handleCredentialOffer(params); + res = await SnapService.handleCredentialOffer(params); return ResultObject.success(res); case 'handleAuthorizationRequest': - await this.handleAuthorizationRequest(params); + await SnapService.handleAuthorizationRequest(params); return ResultObject.success(true); /** @@ -597,7 +597,7 @@ class SnapService { isValidSwitchMethodRequest(params); await GeneralService.switchDIDMethod(params); await WalletService.init(); - res = await this.getDID(); + res = await SnapService.getDID(); return ResultObject.success(res); case 'getSelectedMethod': res = await GeneralService.getSelectedMethod(); diff --git a/packages/snap/src/UI.service.ts b/packages/snap/src/UI.service.ts index b62feb2a0..6f814df42 100644 --- a/packages/snap/src/UI.service.ts +++ b/packages/snap/src/UI.service.ts @@ -40,8 +40,8 @@ class UIService { static originWrapper: Component[]; static async init(origin: string) { - this.originHostname = new URL(origin).hostname; // hostname - this.originWrapper = [text(`Origin: **${origin}**`), divider()]; + UIService.originHostname = new URL(origin).hostname; // hostname + UIService.originWrapper = [text(`Origin: **${origin}**`), divider()]; } static async snapConfirm(params: { @@ -59,8 +59,8 @@ class UIService { force || !( disablePopups || - isTrustedDapp(this.originHostname, state) || - isPermitted(this.originHostname, state, params.method) + isTrustedDapp(UIService.originHostname, state) || + isPermitted(UIService.originHostname, state, params.method) ) ) { const res = await snap.request({ @@ -87,7 +87,7 @@ class UIService { // Show popups if force is true or if popups are not disabled AND the dapp is not trusted if ( force || - !(disablePopups || isTrustedDapp(this.originHostname, state)) + !(disablePopups || isTrustedDapp(UIService.originHostname, state)) ) { await snap.request({ method: 'snap_dialog', @@ -102,9 +102,9 @@ class UIService { static async queryAllDialog(): Promise { const uiPanel = panel([ heading('Share Verifiable Credentials'), - ...this.originWrapper, + ...UIService.originWrapper, text( - `Would you like give _**${this.originHostname}**_ permission to access your credentials?` + `Would you like give _**${UIService.originHostname}**_ permission to access your credentials?` ), divider(), text('This permission can be revoked at [Masca dApp](https://masca.io).'), @@ -119,25 +119,25 @@ class UIService { // If accepted and query permission doesnt exist, add it const permission = isPermitted( - this.originHostname, + UIService.originHostname, state, 'queryCredentials' ); - const isTrusted = isTrustedDapp(this.originHostname, state); + const isTrusted = isTrustedDapp(UIService.originHostname, state); if (res && isTrusted) return res; if (res && !permission) { let newPermissions = getInitialPermissions(); - if (permissionExists(this.originHostname, state)) { - newPermissions = getPermissions(state)[this.originHostname]; + if (permissionExists(UIService.originHostname, state)) { + newPermissions = getPermissions(state)[UIService.originHostname]; } newPermissions.methods.queryCredentials = true; state[CURRENT_STATE_VERSION].config.dApp.permissions[ - this.originHostname + UIService.originHostname ] = newPermissions; } @@ -151,7 +151,7 @@ class UIService { const { store, verifiableCredential } = params; const uiPanel = panel([ heading('Save Verifiable Credential'), - ...this.originWrapper, + ...UIService.originWrapper, text('Would you like to save the credential below?'), divider(), text( @@ -160,7 +160,7 @@ class UIService { }**` ), divider(), - text(`Credential:`), + text('Credential:'), copyable(JSON.stringify(verifiableCredential, null, 2)), ]); const res = await UIService.snapConfirm({ @@ -179,7 +179,7 @@ class UIService { const { save, storeString, minimalUnsignedCredential, did } = params; const uiPanel = panel([ heading('Create and Save Verifiable Credential'), - ...this.originWrapper, + ...UIService.originWrapper, text(`DID: **${did}**`), divider(), text( @@ -189,7 +189,7 @@ class UIService { ), divider(), text(`${storeString}`), - text(`Credential:`), + text('Credential:'), copyable(JSON.stringify(minimalUnsignedCredential, null, 2)), ]); const res = await UIService.snapConfirm({ @@ -207,7 +207,7 @@ class UIService { const { store, vcs } = params; const uiPanel = panel([ heading('Delete Verifiable Credential'), - ...this.originWrapper, + ...UIService.originWrapper, text('Are you sure you want to delete this credential?'), divider(), text( @@ -232,14 +232,14 @@ class UIService { const { vcs, did } = params; const uiPanel = panel([ heading('Create Verifiable Presentation'), - ...this.originWrapper, + ...UIService.originWrapper, text(`DID: **${did}**`), divider(), text( 'Would you like to create a presentation from the credentials below?' ), divider(), - text(`Credentials:`), + text('Credentials:'), ...vcs.map((vc) => copyable(JSON.stringify(vc, null, 2))), ]); const res = await UIService.snapConfirm({ @@ -252,10 +252,10 @@ class UIService { static async handleCredentialOfferDialog(data: any) { const uiPanel = panel([ heading('Credential Offer'), - ...this.originWrapper, + ...UIService.originWrapper, text('Would you like to accept the Credential Offer?'), divider(), - text(`Data:`), + text('Data:'), text(JSON.stringify(data, null, 2)), ]); @@ -270,10 +270,10 @@ class UIService { static async handleAuthorizationRequestDialog(data: any) { const uiPanel = panel([ heading('Authorization Request'), - ...this.originWrapper, + ...UIService.originWrapper, text('Would you like to accept the Authorization Request?'), divider(), - text(`Data:`), + text('Data:'), text(JSON.stringify(data, null, 2)), ]); @@ -288,7 +288,7 @@ class UIService { static async togglePopupsDialog() { const uiPanel = panel([ heading('Toggle Popups'), - ...this.originWrapper, + ...UIService.originWrapper, text('Would you like to turn off popups?'), divider(), text( @@ -306,7 +306,7 @@ class UIService { static async addTrustedDappDialog(origin: string) { const uiPanel = panel([ heading('Disable Popups'), - ...this.originWrapper, + ...UIService.originWrapper, text(`Would you like to disable popups on _**${origin}**_?`), divider(), text( @@ -325,7 +325,7 @@ class UIService { static async removeTrustedDappDialog(origin: string) { const uiPanel = panel([ heading('Enable Popups'), - ...this.originWrapper, + ...UIService.originWrapper, text(`Would you like to re-enable popups on _**${origin}**_?`), ]); @@ -343,7 +343,7 @@ class UIService { type: 'prompt', content: panel([ heading('Enter the PIN you received from the issuer.'), - ...this.originWrapper, + ...UIService.originWrapper, ]), placeholder: 'PIN...', }, @@ -354,7 +354,7 @@ class UIService { static async exportBackupDialog() { const uiPanel = panel([ heading('Export Backup'), - ...this.originWrapper, + ...UIService.originWrapper, text( 'This method returns the encrypted backup of your Masca state. You can use this backup to restore your state on different device.' ), @@ -371,7 +371,7 @@ class UIService { static async importBackupDialog() { const uiPanel = panel([ heading('Import Backup'), - ...this.originWrapper, + ...UIService.originWrapper, text( 'This method allows you to import an encrypted backup of your Masca state.' ), @@ -395,13 +395,13 @@ class UIService { }) { const uiPanel = panel([ heading('Sign Data'), - ...this.originWrapper, + ...UIService.originWrapper, text('Would you like to sign the following JWT?'), divider(), - text(`Header:`), + text('Header:'), copyable(JSON.stringify(params.header, null, 2)), divider(), - text(`Payload:`), + text('Payload:'), copyable(JSON.stringify(params.payload, null, 2)), ]); @@ -417,7 +417,7 @@ class UIService { static async signDataJWZDialog(params: { data: JSONObject }) { const uiPanel = panel([ heading('Sign Data'), - ...this.originWrapper, + ...UIService.originWrapper, text('Would you like to sign the following data?'), copyable(JSON.stringify(params.data, null, 2)), ]); @@ -437,13 +437,13 @@ class UIService { }) { const uiPanel = panel([ heading('Change Permission'), - ...this.originWrapper, + ...UIService.originWrapper, text('Would you to change the following permission?'), divider(), text( `**${params.value ? 'Disable' : 'Enable'}** popups for **${ permissionActions[params.permission] - }** on _**${this.originHostname}**_.` + }** on _**${UIService.originHostname}**_.` ), divider(), text(`${permissionExtraText[params.permission]}`), diff --git a/packages/snap/src/Wallet.service.ts b/packages/snap/src/Wallet.service.ts index f246bbd16..fa55f3f0d 100644 --- a/packages/snap/src/Wallet.service.ts +++ b/packages/snap/src/Wallet.service.ts @@ -1,7 +1,7 @@ import { CURRENT_STATE_VERSION, - methodIndexMapping, type InternalSigMethods, + methodIndexMapping, } from '@blockchain-lab-um/masca-types'; import { HDNodeWallet, Mnemonic } from 'ethers'; @@ -37,11 +37,11 @@ class WalletService { Mnemonic.fromEntropy(entropy) ).derivePath(`44/1236/${methodIndexMapping[method]}/0/0`); - this.instance = nodeWallet; + WalletService.instance = nodeWallet; } static get(): HDNodeWallet { - return this.instance; + return WalletService.instance; } /** diff --git a/packages/snap/src/index.ts b/packages/snap/src/index.ts index 55901b384..1acf91ffe 100644 --- a/packages/snap/src/index.ts +++ b/packages/snap/src/index.ts @@ -1,16 +1,16 @@ import './polyfills/intl'; import { isValidSetCurrentAccountRequest } from '@blockchain-lab-um/masca-types'; -import { ResultObject, type Result } from '@blockchain-lab-um/utils'; +import { type Result, ResultObject } from '@blockchain-lab-um/utils'; import type { OnRpcRequestHandler } from '@metamask/snaps-sdk'; import EthereumService from './Ethereum.service'; import GeneralService from './General.service'; import SnapService from './Snap.service'; -import StorageService from './storage/Storage.service'; import UIService from './UI.service'; -import VeramoService from './veramo/Veramo.service'; import WalletService from './Wallet.service'; +import StorageService from './storage/Storage.service'; +import VeramoService from './veramo/Veramo.service'; export const onRpcRequest: OnRpcRequestHandler = async ({ request, diff --git a/packages/snap/src/polyfills/intl.ts b/packages/snap/src/polyfills/intl.ts index 8e634d4e2..24c3f2b38 100644 --- a/packages/snap/src/polyfills/intl.ts +++ b/packages/snap/src/polyfills/intl.ts @@ -1,7 +1,5 @@ -// eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore import intl from 'intl/lib/core'; -// eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore global.Intl = intl; diff --git a/packages/snap/src/polygon-id/CircuitStorage.service.ts b/packages/snap/src/polygon-id/CircuitStorage.service.ts index 113a55007..450280391 100644 --- a/packages/snap/src/polygon-id/CircuitStorage.service.ts +++ b/packages/snap/src/polygon-id/CircuitStorage.service.ts @@ -1,10 +1,10 @@ import { - base64ToBytes, - byteEncoder, CircuitData, CircuitId, CircuitStorage, InMemoryDataSource, + base64ToBytes, + byteEncoder, } from '@0xpolygonid/js-sdk'; export interface B64File { @@ -15,12 +15,16 @@ class CircuitStorageService { static instance: CircuitStorage; static async init() { - if (!this.instance) { - this.instance = new CircuitStorage(new InMemoryDataSource()); + if (!CircuitStorageService.instance) { + CircuitStorageService.instance = new CircuitStorage( + new InMemoryDataSource() + ); } try { - await this.instance.loadCircuitData(CircuitId.AtomicQuerySigV2); + await CircuitStorageService.instance.loadCircuitData( + CircuitId.AtomicQuerySigV2 + ); } catch { const sigWasm = await snap.request({ method: 'snap_getFile', @@ -88,14 +92,17 @@ class CircuitStorageService { }, }); - await this.instance.saveCircuitData(CircuitId.AtomicQuerySigV2, { - circuitId: 'credentialAtomicQuerySigV2', - wasm: base64ToBytes(sigWasm), - provingKey: base64ToBytes(sigZKey), - verificationKey: byteEncoder.encode(sigVerificationKey), - }); - - await this.instance.saveCircuitData(CircuitId.AuthV2, { + await CircuitStorageService.instance.saveCircuitData( + CircuitId.AtomicQuerySigV2, + { + circuitId: 'credentialAtomicQuerySigV2', + wasm: base64ToBytes(sigWasm), + provingKey: base64ToBytes(sigZKey), + verificationKey: byteEncoder.encode(sigVerificationKey), + } + ); + + await CircuitStorageService.instance.saveCircuitData(CircuitId.AuthV2, { circuitId: 'authV2', wasm: base64ToBytes(authWasm), provingKey: base64ToBytes(authZKey), @@ -104,17 +111,22 @@ class CircuitStorageService { ), }); - await this.instance.saveCircuitData(CircuitId.AtomicQueryMTPV2, { - circuitId: 'credentialAtomicQueryMTPV2', - wasm: base64ToBytes(mtpWasm), - provingKey: base64ToBytes(mtpZKey), - verificationKey: byteEncoder.encode(JSON.stringify(mtpVerificationKey)), - }); + await CircuitStorageService.instance.saveCircuitData( + CircuitId.AtomicQueryMTPV2, + { + circuitId: 'credentialAtomicQueryMTPV2', + wasm: base64ToBytes(mtpWasm), + provingKey: base64ToBytes(mtpZKey), + verificationKey: byteEncoder.encode( + JSON.stringify(mtpVerificationKey) + ), + } + ); } } static get() { - return this.instance; + return CircuitStorageService.instance; } } diff --git a/packages/snap/src/polygon-id/Polygon.service.ts b/packages/snap/src/polygon-id/Polygon.service.ts index 7484d1088..19a85d4f5 100644 --- a/packages/snap/src/polygon-id/Polygon.service.ts +++ b/packages/snap/src/polygon-id/Polygon.service.ts @@ -1,7 +1,6 @@ import { AuthHandler, BjjProvider, - byteEncoder, CircuitData, CircuitId, CredentialStatusResolverRegistry, @@ -11,7 +10,6 @@ import { DataPrepareHandlerFunc, EthStateStorage, FetchHandler, - hexToBytes, IdentityStorage, IdentityWallet, InMemoryPrivateKeyStore, @@ -20,15 +18,17 @@ import { KMS, KmsKeyType, OnChainResolver, + PROTOCOL_CONSTANTS, PackageManager, PlainPacker, ProofService, - PROTOCOL_CONSTANTS, RHSResolver, VerifiableConstants, VerificationHandlerFunc, W3CCredential, ZKPPacker, + byteEncoder, + hexToBytes, } from '@0xpolygonid/js-sdk'; import { CURRENT_STATE_VERSION, @@ -46,10 +46,10 @@ import CircuitStorageService from './CircuitStorage.service'; import { BLOCKCHAINS, CHAIN_ID_TO_BLOCKCHAIN_AND_NETWORK_ID, - getDefaultEthConnectionConfig, METHODS, NETWORKS, RHS_URL, + getDefaultEthConnectionConfig, } from './constants'; import { SnapDataSource, SnapMerkleTreeStorage } from './storage'; @@ -105,8 +105,8 @@ class PolygonService { }; static get() { - const { method, blockchain, networkId } = this.metadata; - return this.instance[method][blockchain][networkId]; + const { method, blockchain, networkId } = PolygonService.metadata; + return PolygonService.instance[method][blockchain][networkId]; } static async init() { @@ -127,8 +127,8 @@ class PolygonService { networkId === NetworkId.Mumbai ) ) { - this.instance[method][blockchain][networkId] = - await this.createBaseInstance({ + PolygonService.instance[method][blockchain][networkId] = + await PolygonService.createBaseInstance({ method, blockchain, networkId, @@ -163,14 +163,14 @@ class PolygonService { const { blockchain, networkId } = mapping; // Set metadata so we can reuse it later - this.metadata = { + PolygonService.metadata = { method, blockchain, networkId, }; const { dataStorage, wallet, kms } = - this.instance[method][blockchain][networkId]; + PolygonService.instance[method][blockchain][networkId]; const identity = (await dataStorage.identity.getAllIdentities())[0]; const entropy = await snap.request({ @@ -223,7 +223,7 @@ class PolygonService { { ipfsGatewayURL: 'https://ipfs.io' } ); - const packageMgr = await this.getPackageMgr({ + const packageMgr = await PolygonService.getPackageMgr({ circuitData, proofService, kms, @@ -243,13 +243,14 @@ class PolygonService { } static async saveCredential(credential: W3CCredential) { - const { method, blockchain, networkId } = this.metadata; - const { credWallet } = this.instance[method][blockchain][networkId]; + const { method, blockchain, networkId } = PolygonService.metadata; + const { credWallet } = + PolygonService.instance[method][blockchain][networkId]; // Check if credential subject is correct const { id } = credential.credentialSubject; - const identifier = await this.getIdentifier(); + const identifier = await PolygonService.getIdentifier(); if (id !== identifier) { throw new Error('The credential does not belong to the current identity'); @@ -272,7 +273,8 @@ class PolygonService { networkId === NetworkId.Mumbai ) ) { - const { credWallet } = this.instance[method][blockchain][networkId]; + const { credWallet } = + PolygonService.instance[method][blockchain][networkId]; const creds = await credWallet.list(); credentials.push( ...creds.filter( @@ -302,7 +304,8 @@ class PolygonService { networkId === NetworkId.Mumbai ) ) { - const { credWallet } = this.instance[method][blockchain][networkId]; + const { credWallet } = + PolygonService.instance[method][blockchain][networkId]; await credWallet.remove(id); } } @@ -311,9 +314,9 @@ class PolygonService { } static async getIdentifier(): Promise { - const { method, blockchain, networkId } = this.metadata; + const { method, blockchain, networkId } = PolygonService.metadata; const identity = ( - await this.instance[method][blockchain][ + await PolygonService.instance[method][blockchain][ networkId ].dataStorage.identity.getAllIdentities() )[0]; @@ -329,9 +332,10 @@ class PolygonService { params: HandleCredentialOfferRequestParams ): Promise { const { credentialOffer } = params; - const { method, blockchain, networkId } = this.metadata; + const { method, blockchain, networkId } = PolygonService.metadata; - const { packageMgr } = this.instance[method][blockchain][networkId]; + const { packageMgr } = + PolygonService.instance[method][blockchain][networkId]; const fetchHandler = new FetchHandler(packageMgr); const messageBytes = byteEncoder.encode(credentialOffer); @@ -354,13 +358,14 @@ class PolygonService { params: HandleAuthorizationRequestParams ): Promise { const { authorizationRequest } = params; - const { method, blockchain, networkId } = this.metadata; + const { method, blockchain, networkId } = PolygonService.metadata; - const { authHandler } = this.instance[method][blockchain][networkId]; + const { authHandler } = + PolygonService.instance[method][blockchain][networkId]; const messageBytes = byteEncoder.encode(authorizationRequest); try { - const did = DID.parse(await this.getIdentifier()); + const did = DID.parse(await PolygonService.getIdentifier()); const { token, authRequest } = await authHandler.handleAuthorizationRequest(did, messageBytes, { diff --git a/packages/snap/src/polygon-id/storage/SnapMerkleTreeStorage.ts b/packages/snap/src/polygon-id/storage/SnapMerkleTreeStorage.ts index 9cf67ed2f..010365541 100644 --- a/packages/snap/src/polygon-id/storage/SnapMerkleTreeStorage.ts +++ b/packages/snap/src/polygon-id/storage/SnapMerkleTreeStorage.ts @@ -1,6 +1,6 @@ import { - IdentityMerkleTreeMetaInformation, IMerkleTreeStorage, + IdentityMerkleTreeMetaInformation, MerkleTreeType, } from '@0xpolygonid/js-sdk'; import { CURRENT_STATE_VERSION } from '@blockchain-lab-um/masca-types'; diff --git a/packages/snap/src/polygon-id/storage/SnapTreeStorage.ts b/packages/snap/src/polygon-id/storage/SnapTreeStorage.ts index 8b4356e3e..ba474c272 100644 --- a/packages/snap/src/polygon-id/storage/SnapTreeStorage.ts +++ b/packages/snap/src/polygon-id/storage/SnapTreeStorage.ts @@ -2,17 +2,17 @@ import { CURRENT_STATE_VERSION } from '@blockchain-lab-um/masca-types'; import { Blockchain, DidMethod, NetworkId } from '@iden3/js-iden3-core'; import { Bytes, - bytes2Hex, Hash, ITreeStorage, - Node, NODE_TYPE_EMPTY, NODE_TYPE_LEAF, NODE_TYPE_MIDDLE, + Node, NodeEmpty, NodeLeaf, NodeMiddle, ZERO_HASH, + bytes2Hex, } from '@iden3/js-merkletree'; import StorageService from '../../storage/Storage.service'; diff --git a/packages/snap/src/storage/Storage.service.ts b/packages/snap/src/storage/Storage.service.ts index 0820934e3..7ad214431 100644 --- a/packages/snap/src/storage/Storage.service.ts +++ b/packages/snap/src/storage/Storage.service.ts @@ -14,28 +14,28 @@ class StorageService { const state = await SnapStorage.load(); if (!state) { - this.instance = getInitialSnapState(); + StorageService.instance = getInitialSnapState(); return; } - this.instance = state as MascaState; + StorageService.instance = state as MascaState; } static get(): MascaState { - return this.instance; + return StorageService.instance; } static set(state: MascaState): void { - this.instance = state; + StorageService.instance = state; } static async save(): Promise { - await SnapStorage.save(this.instance); + await SnapStorage.save(StorageService.instance); } static getAccountState(): MascaAccountState { - return this.instance[CURRENT_STATE_VERSION].accountState[ - this.instance[CURRENT_STATE_VERSION].currentAccount + return StorageService.instance[CURRENT_STATE_VERSION].accountState[ + StorageService.instance[CURRENT_STATE_VERSION].currentAccount ]; } } diff --git a/packages/snap/src/utils/ebsiUtils.ts b/packages/snap/src/utils/ebsiUtils.ts index 70add858c..ead6d30ca 100644 --- a/packages/snap/src/utils/ebsiUtils.ts +++ b/packages/snap/src/utils/ebsiUtils.ts @@ -5,8 +5,8 @@ import { import type { IDIDManagerCreateArgs } from '@veramo/core'; import { keccak256 } from 'ethers'; -import VeramoService from '../veramo/Veramo.service'; import WalletService from '../Wallet.service'; +import VeramoService from '../veramo/Veramo.service'; /** * Function that creates a new EBSI identifier. diff --git a/packages/snap/src/utils/jwt.ts b/packages/snap/src/utils/jwt.ts index dea48446c..e65be1b26 100644 --- a/packages/snap/src/utils/jwt.ts +++ b/packages/snap/src/utils/jwt.ts @@ -12,7 +12,6 @@ export function decodeJWT(jwt: string): VerifiableCredential { return normalizedVC; } catch (e: any) { - // eslint-disable-next-line @typescript-eslint/restrict-template-expressions throw new Error(`Invalid JWT: ${e.message}`); } } diff --git a/packages/snap/src/veramo/Veramo.service.ts b/packages/snap/src/veramo/Veramo.service.ts index e6f6f9b59..3099abdb0 100644 --- a/packages/snap/src/veramo/Veramo.service.ts +++ b/packages/snap/src/veramo/Veramo.service.ts @@ -4,8 +4,8 @@ import { } from '@blockchain-lab-um/did-provider-key'; import { AvailableCredentialStores, - CreatePresentationRequestParams, CURRENT_STATE_VERSION, + CreatePresentationRequestParams, Filter, MinimalUnsignedCredential, QueryCredentialsOptions, @@ -24,20 +24,19 @@ import { PresentationDefinition, TokenResponse, } from '@blockchain-lab-um/oidc-types'; -import { isError, Result } from '@blockchain-lab-um/utils'; +import { Result, isError } from '@blockchain-lab-um/utils'; import { AbstractDataStore, DataManager, IDataManager, } from '@blockchain-lab-um/veramo-datamanager'; import { - createAgent, CredentialPayload, CredentialStatus, ICredentialIssuer, ICredentialVerifier, - IDataStore, IDIDManager, + IDataStore, IIdentifier, IKeyManager, IResolver, @@ -49,6 +48,7 @@ import { VerifiableCredential, VerifiablePresentation, W3CVerifiableCredential, + createAgent, } from '@veramo/core'; import { CredentialIssuerEIP712 } from '@veramo/credential-eip712'; import { CredentialStatusPlugin } from '@veramo/credential-status'; @@ -77,8 +77,8 @@ import { KeyManagementSystem } from '@veramo/kms-local'; import { decodeCredentialToObject } from '@veramo/utils'; import { DIDResolutionResult, Resolver } from 'did-resolver'; import { - getResolver as ensDidResolver, ProviderConfiguration, + getResolver as ensDidResolver, } from 'ens-did-resolver'; import { BrowserProvider } from 'ethers'; import { getResolver as ethrDidResolver } from 'ethr-did-resolver'; @@ -86,12 +86,12 @@ import qs from 'qs'; import EthereumService from '../Ethereum.service'; import GeneralService from '../General.service'; -import StorageService from '../storage/Storage.service'; import UIService from '../UI.service'; import UniversalResolverService from '../UniversalResolver.service'; +import WalletService from '../Wallet.service'; +import StorageService from '../storage/Storage.service'; import { normalizeCredential } from '../utils/credential'; import { sign } from '../utils/sign'; -import WalletService from '../Wallet.service'; import { CeramicCredentialStore } from './plugins/ceramicDataStore/ceramicDataStore'; import { SnapCredentialStore } from './plugins/snapDataStore/snapDataStore'; @@ -110,7 +110,7 @@ class VeramoService { private static instance: Agent; static async init(): Promise { - this.instance = await this.createAgent(); + VeramoService.instance = await VeramoService.createAgent(); } /** @@ -137,17 +137,18 @@ class VeramoService { if (!res) throw new Error('Failed to get keys'); - const identifier: IIdentifier = await this.instance.didManagerCreate({ - alias: `metamask-${method}-${account}`, - provider: method === 'did:key:jwk_jcs-pub' ? 'did:key' : method, - kms: 'snap', - options: { - privateKeyHex: res.privateKey.slice(2), - keyType: - method === 'did:key:jwk_jcs-pub' ? 'Secp256r1' : 'Secp256k1', - ...(method === 'did:key:jwk_jcs-pub' && { type: 'ebsi' }), - }, - }); + const identifier: IIdentifier = + await VeramoService.instance.didManagerCreate({ + alias: `metamask-${method}-${account}`, + provider: method === 'did:key:jwk_jcs-pub' ? 'did:key' : method, + kms: 'snap', + options: { + privateKeyHex: res.privateKey.slice(2), + keyType: + method === 'did:key:jwk_jcs-pub' ? 'Secp256r1' : 'Secp256k1', + ...(method === 'did:key:jwk_jcs-pub' && { type: 'ebsi' }), + }, + }); if (!identifier?.did) throw new Error('Failed to create identifier'); return; @@ -213,7 +214,7 @@ class VeramoService { case 'did:key': case 'did:jwk': { const { alias: _, ...identifier } = - await this.instance.didManagerGetByAlias({ + await VeramoService.instance.didManagerGetByAlias({ alias: `metamask-${method}-${state[CURRENT_STATE_VERSION].currentAccount}`, provider: method === 'did:key:jwk_jcs-pub' ? 'did:key' : method, }); @@ -240,7 +241,7 @@ class VeramoService { * @returns DID resolution result */ static async resolveDID(did: string): Promise { - return this.instance.resolveDid({ didUrl: did }); + return VeramoService.instance.resolveDid({ didUrl: did }); } /** @@ -259,7 +260,7 @@ class VeramoService { credential.issuer = identifier.did; - const vc = await this.instance.createVerifiableCredential({ + const vc = await VeramoService.instance.createVerifiableCredential({ credential: credential as CredentialPayload, proofFormat, }); @@ -276,7 +277,7 @@ class VeramoService { credential: MinimalUnsignedCredential; }): Promise { const { credential } = params; - const { did } = await this.getIdentifier(); + const { did } = await VeramoService.getIdentifier(); if (!credential.credentialSubject) { throw new Error('Verifiable credential must have a credentialSubject'); @@ -332,7 +333,7 @@ class VeramoService { const normalizedCredential = normalizeCredential(verifiableCredential); - const result = await this.instance.save({ + const result = await VeramoService.instance.save({ data: normalizedCredential, options: { store }, }); @@ -370,7 +371,7 @@ class VeramoService { }): Promise { const { id, store } = params; - const result = await this.instance.delete({ + const result = await VeramoService.instance.delete({ id, ...(store ? { options: { store } } : {}), }); @@ -389,7 +390,7 @@ class VeramoService { filter?: Filter; }): Promise { const { options, filter } = params; - const result = await this.instance.query({ + const result = await VeramoService.instance.query({ filter, options, }); @@ -433,7 +434,7 @@ class VeramoService { }): Promise { const { store, filter } = params; - const result = await this.instance.clear({ + const result = await VeramoService.instance.clear({ filter, ...(store ? { options: { store } } : {}), }); @@ -454,9 +455,9 @@ class VeramoService { const { vcs, proofFormat = 'jwt', proofOptions } = params; const domain = proofOptions?.domain; const challenge = proofOptions?.challenge; - const identifier = await this.getIdentifier(); + const identifier = await VeramoService.getIdentifier(); - return this.instance.createVerifiablePresentation({ + return VeramoService.instance.createVerifiablePresentation({ presentation: { holder: identifier.did, type: ['VerifiablePresentation', 'Custom'], @@ -478,7 +479,7 @@ class VeramoService { }): Promise { const { credentials } = params; - const { did } = await this.getIdentifier(); + const { did } = await VeramoService.getIdentifier(); // FIXME: there's an issue here const canonicalizedVcs = credentials.map((credential) => { @@ -519,13 +520,13 @@ class VeramoService { const { credential, presentation } = params; if (credential) { - const vcResult = await this.instance.verifyCredential({ + const vcResult = await VeramoService.instance.verifyCredential({ credential, }); return JSON.parse(JSON.stringify(vcResult)) as IVerifyResult; } if (presentation) { - const vpResult = await this.instance.verifyPresentation({ + const vpResult = await VeramoService.instance.verifyPresentation({ presentation, }); return JSON.parse(JSON.stringify(vpResult)) as IVerifyResult; @@ -605,7 +606,7 @@ class VeramoService { const authorizationRequestURI = authorizationRequestURIResult.data; const handleAuthorizationRequestResult = - await this.handleAuthorizationRequest({ + await VeramoService.handleAuthorizationRequest({ authorizationRequestURI, did, customSign, @@ -621,7 +622,9 @@ class VeramoService { handleAuthorizationRequestResult; const sendAuthorizationResponseResult = - await this.sendAuthorizationResponse(sendOIDCAuthorizationResponseArgs); + await VeramoService.sendAuthorizationResponse( + sendOIDCAuthorizationResponseArgs + ); const { code } = sendAuthorizationResponseResult; @@ -747,7 +750,7 @@ class VeramoService { }); const handleAuthorizationRequestResult = - await this.handleAuthorizationRequest({ + await VeramoService.handleAuthorizationRequest({ authorizationRequestURI, customSign, did, @@ -763,7 +766,9 @@ class VeramoService { handleAuthorizationRequestResult; const sendAuthorizationResponseResult = - await this.sendAuthorizationResponse(sendOIDCAuthorizationResponseArgs); + await VeramoService.sendAuthorizationResponse( + sendOIDCAuthorizationResponseArgs + ); throw new Error('Not implemented'); } @@ -792,7 +797,7 @@ class VeramoService { > { const { authorizationRequestURI, did, customSign, credentials: _ } = params; const authorizationRequestResult = - await this.instance.parseOIDCAuthorizationRequestURI({ + await VeramoService.instance.parseOIDCAuthorizationRequestURI({ authorizationRequestURI, }); @@ -826,9 +831,10 @@ class VeramoService { const queriedCredentials: any = queryResults.map((result) => result.data); - const selectCredentialsResult = await this.instance.selectCredentials({ - credentials: queriedCredentials, - }); + const selectCredentialsResult = + await VeramoService.instance.selectCredentials({ + credentials: queriedCredentials, + }); if (isError(selectCredentialsResult)) { throw new Error(selectCredentialsResult.error); @@ -850,7 +856,7 @@ class VeramoService { // } const createPresentationSubmissionResult = - await this.instance.createPresentationSubmission({ + await VeramoService.instance.createPresentationSubmission({ credentials: selectCredentialsResult.data, }); @@ -861,12 +867,11 @@ class VeramoService { const presentationSubmission = createPresentationSubmissionResult.data; const decodedCredentials = selectCredentialsResult.data.map( - // eslint-disable-next-line @typescript-eslint/no-unsafe-return (credential) => decodeCredentialToObject(credential).proof.jwt ); const veramoPresentation = - await this.instance.createVerifiablePresentation({ + await VeramoService.instance.createVerifiablePresentation({ presentation: { holder: did, verifiableCredential: decodedCredentials, @@ -883,7 +888,7 @@ class VeramoService { verifiableCredential: decodedCredentials, }; - const createVpTokenResult = await this.instance.createVpToken({ + const createVpTokenResult = await VeramoService.instance.createVpToken({ sign: customSign, vp, }); @@ -901,7 +906,7 @@ class VeramoService { if (authorizationRequest.response_type.includes('id_token')) { // Create id token - const idTokenResult = await this.instance.createIdToken({ + const idTokenResult = await VeramoService.instance.createIdToken({ sign: customSign, }); @@ -925,7 +930,7 @@ class VeramoService { ): Promise<{ code: string; state: string }> { // POST /auth-mock/direct_post const authorizationResponseResult = - await this.instance.sendOIDCAuthorizationResponse(params); + await VeramoService.instance.sendOIDCAuthorizationResponse(params); if (isError(authorizationResponseResult)) { throw new Error(authorizationResponseResult.error); @@ -1037,7 +1042,7 @@ class VeramoService { } static getAgent(): Agent { - return this.instance; + return VeramoService.instance; } } diff --git a/packages/snap/tests/cron/handleAuthorizationFlow.spec.ts b/packages/snap/tests/cron/handleAuthorizationFlow.spec.ts index a8010e445..bc1e4c165 100644 --- a/packages/snap/tests/cron/handleAuthorizationFlow.spec.ts +++ b/packages/snap/tests/cron/handleAuthorizationFlow.spec.ts @@ -1,4 +1,4 @@ -import { isError, Result } from '@blockchain-lab-um/utils'; +import { Result, isError } from '@blockchain-lab-um/utils'; import { MetaMaskInpageProvider } from '@metamask/providers'; import { SnapsProvider } from '@metamask/snaps-sdk'; import { beforeAll, describe, expect, it } from 'vitest'; @@ -7,7 +7,7 @@ import { onRpcRequest } from '../../src'; import StorageService from '../../src/storage/Storage.service'; import { account } from '../data/constants'; import { getDefaultSnapState } from '../data/defaultSnapState'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; describe('handlePolygonFlow', () => { let snapMock: SnapsProvider & SnapMock; diff --git a/packages/snap/tests/e2e/addDappSettings.spec.ts b/packages/snap/tests/e2e/addDappSettings.spec.ts index 3bbac33bb..7402de3f9 100644 --- a/packages/snap/tests/e2e/addDappSettings.spec.ts +++ b/packages/snap/tests/e2e/addDappSettings.spec.ts @@ -1,5 +1,5 @@ import { CURRENT_STATE_VERSION } from '@blockchain-lab-um/masca-types'; -import { isError, isSuccess, Result } from '@blockchain-lab-um/utils'; +import { Result, isError, isSuccess } from '@blockchain-lab-um/utils'; import { MetaMaskInpageProvider } from '@metamask/providers'; import { SnapsProvider } from '@metamask/snaps-sdk'; import { beforeAll, describe, expect, it } from 'vitest'; @@ -8,7 +8,7 @@ import { onRpcRequest } from '../../src'; import { getInitialPermissions } from '../../src/utils/config'; import { account } from '../data/constants'; import { getDefaultSnapState } from '../data/defaultSnapState'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; describe('addDappSettings', () => { let snapMock: SnapsProvider & SnapMock; diff --git a/packages/snap/tests/e2e/addTrustedDapp.spec.ts b/packages/snap/tests/e2e/addTrustedDapp.spec.ts index 30e0d4a2b..1beeba3fe 100644 --- a/packages/snap/tests/e2e/addTrustedDapp.spec.ts +++ b/packages/snap/tests/e2e/addTrustedDapp.spec.ts @@ -1,5 +1,5 @@ import { CURRENT_STATE_VERSION } from '@blockchain-lab-um/masca-types'; -import { isError, isSuccess, Result } from '@blockchain-lab-um/utils'; +import { Result, isError, isSuccess } from '@blockchain-lab-um/utils'; import { MetaMaskInpageProvider } from '@metamask/providers'; import { SnapsProvider } from '@metamask/snaps-sdk'; import { beforeAll, describe, expect, it, vi } from 'vitest'; @@ -9,7 +9,7 @@ import UIService from '../../src/UI.service'; import { getInitialPermissions } from '../../src/utils/config'; import { account } from '../data/constants'; import { getDefaultSnapState } from '../data/defaultSnapState'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; describe('addTrustedDapp', () => { let snapMock: SnapsProvider & SnapMock; diff --git a/packages/snap/tests/e2e/changePermission.spec.ts b/packages/snap/tests/e2e/changePermission.spec.ts index ddff15c0d..526f7ed36 100644 --- a/packages/snap/tests/e2e/changePermission.spec.ts +++ b/packages/snap/tests/e2e/changePermission.spec.ts @@ -1,5 +1,5 @@ import { CURRENT_STATE_VERSION } from '@blockchain-lab-um/masca-types'; -import { isError, isSuccess, Result } from '@blockchain-lab-um/utils'; +import { Result, isError, isSuccess } from '@blockchain-lab-um/utils'; import { MetaMaskInpageProvider } from '@metamask/providers'; import { SnapsProvider } from '@metamask/snaps-sdk'; import { beforeAll, describe, expect, it, vi } from 'vitest'; @@ -9,7 +9,7 @@ import UIService from '../../src/UI.service'; import { getInitialPermissions } from '../../src/utils/config'; import { account } from '../data/constants'; import { getDefaultSnapState } from '../data/defaultSnapState'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; describe('changePermission', () => { let snapMock: SnapsProvider & SnapMock; diff --git a/packages/snap/tests/e2e/createVerifiableCredential.spec.ts b/packages/snap/tests/e2e/createVerifiableCredential.spec.ts index 401d029ff..ad8174906 100644 --- a/packages/snap/tests/e2e/createVerifiableCredential.spec.ts +++ b/packages/snap/tests/e2e/createVerifiableCredential.spec.ts @@ -3,7 +3,7 @@ import { AvailableMethods, QueryCredentialsRequestResult, } from '@blockchain-lab-um/masca-types'; -import { isError, Result } from '@blockchain-lab-um/utils'; +import { Result, isError } from '@blockchain-lab-um/utils'; import { MetaMaskInpageProvider } from '@metamask/providers'; import { SnapsProvider } from '@metamask/snaps-sdk'; import type { VerifiableCredential } from '@veramo/core'; @@ -15,7 +15,7 @@ import VeramoService, { type Agent } from '../../src/veramo/Veramo.service'; import { account } from '../data/constants'; import { EXAMPLE_VC_PAYLOAD } from '../data/credentials'; import { getDefaultSnapState } from '../data/defaultSnapState'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; const methods: AvailableMethods[] = ['did:key', 'did:jwk']; // TODO: Resolve bugs for lds and EthereumEip712Signature2021 diff --git a/packages/snap/tests/e2e/createVerifiablePresentation.spec.ts b/packages/snap/tests/e2e/createVerifiablePresentation.spec.ts index e90476e54..ef10a074c 100644 --- a/packages/snap/tests/e2e/createVerifiablePresentation.spec.ts +++ b/packages/snap/tests/e2e/createVerifiablePresentation.spec.ts @@ -1,7 +1,7 @@ import { AvailableMethods, ProofOptions } from '@blockchain-lab-um/masca-types'; -import { isError, Result } from '@blockchain-lab-um/utils'; +import { Result, isError } from '@blockchain-lab-um/utils'; import { MetaMaskInpageProvider } from '@metamask/providers'; -import { SnapsProvider, type Json } from '@metamask/snaps-sdk'; +import { type Json, SnapsProvider } from '@metamask/snaps-sdk'; import { VerifiablePresentation } from '@veramo/core'; import { beforeAll, describe, expect, it } from 'vitest'; @@ -12,11 +12,11 @@ import { account } from '../data/constants'; import { getDefaultSnapState } from '../data/defaultSnapState'; import { EXAMPLE_VC, + EXAMPLE_VC2, EXAMPLE_VC_EIP712, EXAMPLE_VC_LDS, - EXAMPLE_VC2, } from '../data/verifiable-credentials'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; const methods: AvailableMethods[] = ['did:key', 'did:jwk']; // TODO: Resolve bugs for lds and EthereumEip712Signature2021 diff --git a/packages/snap/tests/e2e/deleteVerifiableCredentials.spec.ts b/packages/snap/tests/e2e/deleteVerifiableCredentials.spec.ts index 6c3aa9172..13ec16a33 100644 --- a/packages/snap/tests/e2e/deleteVerifiableCredentials.spec.ts +++ b/packages/snap/tests/e2e/deleteVerifiableCredentials.spec.ts @@ -1,4 +1,4 @@ -import { isError, isSuccess, Result } from '@blockchain-lab-um/utils'; +import { Result, isError, isSuccess } from '@blockchain-lab-um/utils'; import { IDataManagerSaveResult } from '@blockchain-lab-um/veramo-datamanager'; import { DIDDataStore } from '@glazed/did-datastore'; import { MetaMaskInpageProvider } from '@metamask/providers'; @@ -8,13 +8,13 @@ import { beforeAll, beforeEach, describe, expect, it, vi } from 'vitest'; import { onRpcRequest } from '../../src'; import StorageService from '../../src/storage/Storage.service'; -import type { StoredCredentials } from '../../src/veramo/plugins/ceramicDataStore/ceramicDataStore'; import VeramoService, { type Agent } from '../../src/veramo/Veramo.service'; +import type { StoredCredentials } from '../../src/veramo/plugins/ceramicDataStore/ceramicDataStore'; import { account } from '../data/constants'; import { EXAMPLE_VC_PAYLOAD } from '../data/credentials'; import { getDefaultSnapState } from '../data/defaultSnapState'; import { createTestVCs } from '../helpers/generateTestVCs'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; describe('deleteCredential', () => { let ceramicData: StoredCredentials; diff --git a/packages/snap/tests/e2e/exportStateBackup.spec.ts b/packages/snap/tests/e2e/exportStateBackup.spec.ts index 683812769..1c81e7692 100644 --- a/packages/snap/tests/e2e/exportStateBackup.spec.ts +++ b/packages/snap/tests/e2e/exportStateBackup.spec.ts @@ -1,4 +1,4 @@ -import { isError, Result } from '@blockchain-lab-um/utils'; +import { Result, isError } from '@blockchain-lab-um/utils'; import { IDataManagerSaveResult } from '@blockchain-lab-um/veramo-datamanager'; import { MetaMaskInpageProvider } from '@metamask/providers'; import { SnapsProvider } from '@metamask/snaps-sdk'; @@ -13,7 +13,7 @@ import { account } from '../data/constants'; import { EXAMPLE_VC_PAYLOAD } from '../data/credentials'; import { getDefaultSnapState } from '../data/defaultSnapState'; import { createTestVCs } from '../helpers/generateTestVCs'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; describe('exportStateBackup', () => { let snapMock: SnapsProvider & SnapMock; diff --git a/packages/snap/tests/e2e/getAccountSettings.spec.ts b/packages/snap/tests/e2e/getAccountSettings.spec.ts index 06e7cf41e..3cba7cd2c 100644 --- a/packages/snap/tests/e2e/getAccountSettings.spec.ts +++ b/packages/snap/tests/e2e/getAccountSettings.spec.ts @@ -1,5 +1,5 @@ import { CURRENT_STATE_VERSION } from '@blockchain-lab-um/masca-types'; -import { isError, Result } from '@blockchain-lab-um/utils'; +import { Result, isError } from '@blockchain-lab-um/utils'; import { MetaMaskInpageProvider } from '@metamask/providers'; import { SnapsProvider } from '@metamask/snaps-sdk'; import { beforeAll, describe, expect, it } from 'vitest'; @@ -7,7 +7,7 @@ import { beforeAll, describe, expect, it } from 'vitest'; import { onRpcRequest } from '../../src'; import { account } from '../data/constants'; import { getDefaultSnapState } from '../data/defaultSnapState'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; describe('getAccountSettings', () => { let snapMock: SnapsProvider & SnapMock; diff --git a/packages/snap/tests/e2e/getAvailableMethods.spec.ts b/packages/snap/tests/e2e/getAvailableMethods.spec.ts index 5563ecd8a..ded8467ea 100644 --- a/packages/snap/tests/e2e/getAvailableMethods.spec.ts +++ b/packages/snap/tests/e2e/getAvailableMethods.spec.ts @@ -1,5 +1,5 @@ import { availableMethods } from '@blockchain-lab-um/masca-types'; -import { isError, Result } from '@blockchain-lab-um/utils'; +import { Result, isError } from '@blockchain-lab-um/utils'; import { MetaMaskInpageProvider } from '@metamask/providers'; import { SnapsProvider } from '@metamask/snaps-sdk'; import { beforeAll, describe, expect, it } from 'vitest'; @@ -7,7 +7,7 @@ import { beforeAll, describe, expect, it } from 'vitest'; import { onRpcRequest } from '../../src'; import { account } from '../data/constants'; import { getDefaultSnapState } from '../data/defaultSnapState'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; describe('getAvailableMethods', () => { let snapMock: SnapsProvider & SnapMock; diff --git a/packages/snap/tests/e2e/getAvailableVCStores.spec.ts b/packages/snap/tests/e2e/getAvailableVCStores.spec.ts index 69f8b0b8e..8f4d84a1f 100644 --- a/packages/snap/tests/e2e/getAvailableVCStores.spec.ts +++ b/packages/snap/tests/e2e/getAvailableVCStores.spec.ts @@ -1,5 +1,5 @@ import { availableCredentialStores } from '@blockchain-lab-um/masca-types'; -import { isError, Result } from '@blockchain-lab-um/utils'; +import { Result, isError } from '@blockchain-lab-um/utils'; import { MetaMaskInpageProvider } from '@metamask/providers'; import { SnapsProvider } from '@metamask/snaps-sdk'; import { beforeAll, describe, expect, it } from 'vitest'; @@ -7,7 +7,7 @@ import { beforeAll, describe, expect, it } from 'vitest'; import { onRpcRequest } from '../../src'; import { account } from '../data/constants'; import { getDefaultSnapState } from '../data/defaultSnapState'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; describe('getAvailableCredentialStores', () => { let snapMock: SnapsProvider & SnapMock; diff --git a/packages/snap/tests/e2e/getDID.spec.ts b/packages/snap/tests/e2e/getDID.spec.ts index c6c4820e4..bc9850739 100644 --- a/packages/snap/tests/e2e/getDID.spec.ts +++ b/packages/snap/tests/e2e/getDID.spec.ts @@ -1,4 +1,4 @@ -import { isError, Result } from '@blockchain-lab-um/utils'; +import { Result, isError } from '@blockchain-lab-um/utils'; import { MetaMaskInpageProvider } from '@metamask/providers'; import { SnapsProvider } from '@metamask/snaps-sdk'; import { beforeAll, describe, expect, it } from 'vitest'; @@ -6,7 +6,7 @@ import { beforeAll, describe, expect, it } from 'vitest'; import { onRpcRequest } from '../../src'; import { account } from '../data/constants'; import { getDefaultSnapState } from '../data/defaultSnapState'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; // TODO verify that these are the correct dids (after keypair implementation is complete and final mappings are set) const methods = [ diff --git a/packages/snap/tests/e2e/getSelectedMethod.spec.ts b/packages/snap/tests/e2e/getSelectedMethod.spec.ts index e20667c84..cabf573c3 100644 --- a/packages/snap/tests/e2e/getSelectedMethod.spec.ts +++ b/packages/snap/tests/e2e/getSelectedMethod.spec.ts @@ -1,4 +1,4 @@ -import { isError, Result } from '@blockchain-lab-um/utils'; +import { Result, isError } from '@blockchain-lab-um/utils'; import { MetaMaskInpageProvider } from '@metamask/providers'; import { SnapsProvider } from '@metamask/snaps-sdk'; import { beforeAll, describe, expect, it } from 'vitest'; @@ -6,7 +6,7 @@ import { beforeAll, describe, expect, it } from 'vitest'; import { onRpcRequest } from '../../src'; import { account } from '../data/constants'; import { getDefaultSnapState } from '../data/defaultSnapState'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; describe('getSelectedMethod', () => { let snapMock: SnapsProvider & SnapMock; diff --git a/packages/snap/tests/e2e/getSnapSettings.spec.ts b/packages/snap/tests/e2e/getSnapSettings.spec.ts index cfa37824f..66ca52b3f 100644 --- a/packages/snap/tests/e2e/getSnapSettings.spec.ts +++ b/packages/snap/tests/e2e/getSnapSettings.spec.ts @@ -1,5 +1,5 @@ import { CURRENT_STATE_VERSION } from '@blockchain-lab-um/masca-types'; -import { isError, Result } from '@blockchain-lab-um/utils'; +import { Result, isError } from '@blockchain-lab-um/utils'; import { MetaMaskInpageProvider } from '@metamask/providers'; import { SnapsProvider } from '@metamask/snaps-sdk'; import { beforeAll, describe, expect, it } from 'vitest'; @@ -7,7 +7,7 @@ import { beforeAll, describe, expect, it } from 'vitest'; import { onRpcRequest } from '../../src'; import { account } from '../data/constants'; import { getDefaultSnapState } from '../data/defaultSnapState'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; describe('getSnapSettings', () => { let snapMock: SnapsProvider & SnapMock; diff --git a/packages/snap/tests/e2e/getVCStore.spec.ts b/packages/snap/tests/e2e/getVCStore.spec.ts index 3c960ac90..732a16184 100644 --- a/packages/snap/tests/e2e/getVCStore.spec.ts +++ b/packages/snap/tests/e2e/getVCStore.spec.ts @@ -1,4 +1,4 @@ -import { isError, Result } from '@blockchain-lab-um/utils'; +import { Result, isError } from '@blockchain-lab-um/utils'; import { MetaMaskInpageProvider } from '@metamask/providers'; import { SnapsProvider } from '@metamask/snaps-sdk'; import { beforeAll, describe, expect, it } from 'vitest'; @@ -6,7 +6,7 @@ import { beforeAll, describe, expect, it } from 'vitest'; import { onRpcRequest } from '../../src'; import { account } from '../data/constants'; import { getDefaultSnapState } from '../data/defaultSnapState'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; describe('getVCStore', () => { let snapMock: SnapsProvider & SnapMock; diff --git a/packages/snap/tests/e2e/importStateBackup.spec.ts b/packages/snap/tests/e2e/importStateBackup.spec.ts index 674887171..32342935a 100644 --- a/packages/snap/tests/e2e/importStateBackup.spec.ts +++ b/packages/snap/tests/e2e/importStateBackup.spec.ts @@ -1,5 +1,5 @@ import { type MascaState } from '@blockchain-lab-um/masca-types'; -import { isError, Result } from '@blockchain-lab-um/utils'; +import { Result, isError } from '@blockchain-lab-um/utils'; import { IDataManagerSaveResult } from '@blockchain-lab-um/veramo-datamanager'; import { MetaMaskInpageProvider } from '@metamask/providers'; import { SnapsProvider } from '@metamask/snaps-sdk'; @@ -14,7 +14,7 @@ import { account } from '../data/constants'; import { EXAMPLE_VC_PAYLOAD } from '../data/credentials'; import { getDefaultSnapState } from '../data/defaultSnapState'; import { createTestVCs } from '../helpers/generateTestVCs'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; describe('importStateBackup', () => { let snapMock: SnapsProvider & SnapMock; diff --git a/packages/snap/tests/e2e/queryVerifiableCredentials.spec.ts b/packages/snap/tests/e2e/queryVerifiableCredentials.spec.ts index e94ebbd6e..275a82d46 100644 --- a/packages/snap/tests/e2e/queryVerifiableCredentials.spec.ts +++ b/packages/snap/tests/e2e/queryVerifiableCredentials.spec.ts @@ -1,4 +1,4 @@ -import { isError, Result } from '@blockchain-lab-um/utils'; +import { Result, isError } from '@blockchain-lab-um/utils'; import { IDataManagerSaveResult } from '@blockchain-lab-um/veramo-datamanager'; import { DIDDataStore } from '@glazed/did-datastore'; import { MetaMaskInpageProvider } from '@metamask/providers'; @@ -8,13 +8,13 @@ import { beforeAll, beforeEach, describe, expect, it, vi } from 'vitest'; import { onRpcRequest } from '../../src'; import StorageService from '../../src/storage/Storage.service'; -import { StoredCredentials } from '../../src/veramo/plugins/ceramicDataStore/ceramicDataStore'; import VeramoService, { type Agent } from '../../src/veramo/Veramo.service'; +import { StoredCredentials } from '../../src/veramo/plugins/ceramicDataStore/ceramicDataStore'; import { account, jsonPath2 } from '../data/constants'; import { EXAMPLE_VC_PAYLOAD } from '../data/credentials'; import { getDefaultSnapState } from '../data/defaultSnapState'; import { createTestVCs } from '../helpers/generateTestVCs'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; describe('queryVerifiableCredentials', () => { let ceramicData: StoredCredentials; diff --git a/packages/snap/tests/e2e/removeDappSettings.spec.ts b/packages/snap/tests/e2e/removeDappSettings.spec.ts index 2a460a302..c93d5ae70 100644 --- a/packages/snap/tests/e2e/removeDappSettings.spec.ts +++ b/packages/snap/tests/e2e/removeDappSettings.spec.ts @@ -1,5 +1,5 @@ import { CURRENT_STATE_VERSION } from '@blockchain-lab-um/masca-types'; -import { isError, isSuccess, Result } from '@blockchain-lab-um/utils'; +import { Result, isError, isSuccess } from '@blockchain-lab-um/utils'; import { MetaMaskInpageProvider } from '@metamask/providers'; import { SnapsProvider } from '@metamask/snaps-sdk'; import { beforeAll, describe, expect, it } from 'vitest'; @@ -8,7 +8,7 @@ import { onRpcRequest } from '../../src'; import { getInitialPermissions } from '../../src/utils/config'; import { account } from '../data/constants'; import { getDefaultSnapState } from '../data/defaultSnapState'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; describe('removeDappSettings', () => { let snapMock: SnapsProvider & SnapMock; diff --git a/packages/snap/tests/e2e/removeTrustedDapp.spec.ts b/packages/snap/tests/e2e/removeTrustedDapp.spec.ts index 45e8027c9..a1816fcfa 100644 --- a/packages/snap/tests/e2e/removeTrustedDapp.spec.ts +++ b/packages/snap/tests/e2e/removeTrustedDapp.spec.ts @@ -1,5 +1,5 @@ import { CURRENT_STATE_VERSION } from '@blockchain-lab-um/masca-types'; -import { isError, Result } from '@blockchain-lab-um/utils'; +import { Result, isError } from '@blockchain-lab-um/utils'; import { IDataManagerSaveResult } from '@blockchain-lab-um/veramo-datamanager'; import { MetaMaskInpageProvider } from '@metamask/providers'; import { SnapsProvider } from '@metamask/snaps-sdk'; @@ -7,15 +7,15 @@ import { VerifiableCredential } from '@veramo/core'; import { beforeAll, describe, expect, it, vi } from 'vitest'; import { onRpcRequest } from '../../src'; -import StorageService from '../../src/storage/Storage.service'; import UIService from '../../src/UI.service'; +import StorageService from '../../src/storage/Storage.service'; import { getInitialPermissions } from '../../src/utils/config'; import VeramoService from '../../src/veramo/Veramo.service'; import { account } from '../data/constants'; import { EXAMPLE_VC_PAYLOAD } from '../data/credentials'; import { getDefaultSnapState } from '../data/defaultSnapState'; import { createTestVCs } from '../helpers/generateTestVCs'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; describe('removeTrustedDapp', () => { let snapMock: SnapsProvider & SnapMock; @@ -180,7 +180,6 @@ describe('removeTrustedDapp', () => { }, })) as Result; - // eslint-disable-next-line @typescript-eslint/unbound-method expect(spy).toHaveBeenCalledTimes(1); expect.assertions(1); }); diff --git a/packages/snap/tests/e2e/resolveDID.spec.ts b/packages/snap/tests/e2e/resolveDID.spec.ts index 2c51d7944..912256974 100644 --- a/packages/snap/tests/e2e/resolveDID.spec.ts +++ b/packages/snap/tests/e2e/resolveDID.spec.ts @@ -1,4 +1,4 @@ -import { isError, Result } from '@blockchain-lab-um/utils'; +import { Result, isError } from '@blockchain-lab-um/utils'; import { MetaMaskInpageProvider } from '@metamask/providers'; import { SnapsProvider } from '@metamask/snaps-sdk'; import { DIDResolutionResult } from 'did-resolver'; @@ -8,7 +8,7 @@ import { onRpcRequest } from '../../src'; import { account } from '../data/constants'; import { getDefaultSnapState } from '../data/defaultSnapState'; import { CHEQD, EBSI, ENS, ETHR, KEY, WEB } from '../data/documentResolution'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; describe('resolveDID', () => { let snapMock: SnapsProvider & SnapMock; diff --git a/packages/snap/tests/e2e/saveVerifiableCredential.spec.ts b/packages/snap/tests/e2e/saveVerifiableCredential.spec.ts index 4e64bc37d..0d4daaf70 100644 --- a/packages/snap/tests/e2e/saveVerifiableCredential.spec.ts +++ b/packages/snap/tests/e2e/saveVerifiableCredential.spec.ts @@ -2,7 +2,7 @@ import { AvailableCredentialStores, SaveCredentialOptions, } from '@blockchain-lab-um/masca-types'; -import { isError, isSuccess, Result } from '@blockchain-lab-um/utils'; +import { Result, isError, isSuccess } from '@blockchain-lab-um/utils'; import { IDataManagerSaveResult } from '@blockchain-lab-um/veramo-datamanager'; import { DIDDataStore } from '@glazed/did-datastore'; import { MetaMaskInpageProvider } from '@metamask/providers'; @@ -12,13 +12,13 @@ import { beforeAll, beforeEach, describe, expect, it, vi } from 'vitest'; import { onRpcRequest } from '../../src'; import StorageService from '../../src/storage/Storage.service'; -import type { StoredCredentials } from '../../src/veramo/plugins/ceramicDataStore/ceramicDataStore'; import VeramoService, { type Agent } from '../../src/veramo/Veramo.service'; +import type { StoredCredentials } from '../../src/veramo/plugins/ceramicDataStore/ceramicDataStore'; import { account } from '../data/constants'; import { EXAMPLE_VC_PAYLOAD } from '../data/credentials'; import { getDefaultSnapState } from '../data/defaultSnapState'; import { createTestVCs } from '../helpers/generateTestVCs'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; describe('saveVerifiableCredential', () => { let ceramicData: StoredCredentials; diff --git a/packages/snap/tests/e2e/setCeramicSession.spec.ts b/packages/snap/tests/e2e/setCeramicSession.spec.ts index 072856ea5..d503b9bcc 100644 --- a/packages/snap/tests/e2e/setCeramicSession.spec.ts +++ b/packages/snap/tests/e2e/setCeramicSession.spec.ts @@ -1,4 +1,4 @@ -import { isError, Result } from '@blockchain-lab-um/utils'; +import { Result, isError } from '@blockchain-lab-um/utils'; import { MetaMaskInpageProvider } from '@metamask/providers'; import { SnapsProvider } from '@metamask/snaps-sdk'; import { beforeAll, describe, expect, it } from 'vitest'; @@ -6,7 +6,7 @@ import { beforeAll, describe, expect, it } from 'vitest'; import { onRpcRequest } from '../../src'; import { account } from '../data/constants'; import { getDefaultSnapState } from '../data/defaultSnapState'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; describe('setCeramicSession', () => { let snapMock: SnapsProvider & SnapMock; diff --git a/packages/snap/tests/e2e/setCurrentAccount.spec.ts b/packages/snap/tests/e2e/setCurrentAccount.spec.ts index 416099054..e576f220d 100644 --- a/packages/snap/tests/e2e/setCurrentAccount.spec.ts +++ b/packages/snap/tests/e2e/setCurrentAccount.spec.ts @@ -1,5 +1,5 @@ import { CURRENT_STATE_VERSION } from '@blockchain-lab-um/masca-types'; -import { isError, isSuccess, Result } from '@blockchain-lab-um/utils'; +import { Result, isError, isSuccess } from '@blockchain-lab-um/utils'; import { MetaMaskInpageProvider } from '@metamask/providers'; import { SnapsProvider } from '@metamask/snaps-sdk'; import { VerifiableCredential } from '@veramo/core'; @@ -9,7 +9,7 @@ import { onRpcRequest } from '../../src'; import { account } from '../data/constants'; import { EXAMPLE_VC_PAYLOAD } from '../data/credentials'; import { getDefaultSnapState } from '../data/defaultSnapState'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; describe('setCurrentAccount', () => { let snapMock: SnapsProvider & SnapMock; diff --git a/packages/snap/tests/e2e/setVCStore.spec.ts b/packages/snap/tests/e2e/setVCStore.spec.ts index 36ab6812e..c80b74ba6 100644 --- a/packages/snap/tests/e2e/setVCStore.spec.ts +++ b/packages/snap/tests/e2e/setVCStore.spec.ts @@ -1,4 +1,4 @@ -import { isError, isSuccess, Result } from '@blockchain-lab-um/utils'; +import { Result, isError, isSuccess } from '@blockchain-lab-um/utils'; import { MetaMaskInpageProvider } from '@metamask/providers'; import { SnapsProvider } from '@metamask/snaps-sdk'; import { beforeAll, describe, expect, it } from 'vitest'; @@ -6,7 +6,7 @@ import { beforeAll, describe, expect, it } from 'vitest'; import { onRpcRequest } from '../../src'; import { account } from '../data/constants'; import { getDefaultSnapState } from '../data/defaultSnapState'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; describe('setVCStore', () => { let snapMock: SnapsProvider & SnapMock; diff --git a/packages/snap/tests/e2e/signData.spec.ts b/packages/snap/tests/e2e/signData.spec.ts index 49acb806f..e5da2bf95 100644 --- a/packages/snap/tests/e2e/signData.spec.ts +++ b/packages/snap/tests/e2e/signData.spec.ts @@ -1,22 +1,22 @@ import { - methodIndexMapping, SignJWTParams, SignJWZParams, + methodIndexMapping, } from '@blockchain-lab-um/masca-types'; -import { isError, isSuccess, Result } from '@blockchain-lab-um/utils'; +import { Result, isError, isSuccess } from '@blockchain-lab-um/utils'; import { MetaMaskInpageProvider } from '@metamask/providers'; import { SnapsProvider } from '@metamask/snaps-sdk'; import { bytesToBase64url } from '@veramo/utils'; import elliptic from 'elliptic'; import { HDNodeWallet, Mnemonic } from 'ethers'; -import { importJWK, JWK, jwtVerify } from 'jose'; +import { JWK, importJWK, jwtVerify } from 'jose'; import cloneDeep from 'lodash.clonedeep'; import { beforeAll, describe, expect, it } from 'vitest'; import { onRpcRequest } from '../../src'; import { account } from '../data/constants'; import { getDefaultSnapState } from '../data/defaultSnapState'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; const { ec: EC } = elliptic; diff --git a/packages/snap/tests/e2e/switchDIDMethod.spec.ts b/packages/snap/tests/e2e/switchDIDMethod.spec.ts index c3096e52c..dccbaa289 100644 --- a/packages/snap/tests/e2e/switchDIDMethod.spec.ts +++ b/packages/snap/tests/e2e/switchDIDMethod.spec.ts @@ -1,4 +1,4 @@ -import { isError, Result } from '@blockchain-lab-um/utils'; +import { Result, isError } from '@blockchain-lab-um/utils'; import { MetaMaskInpageProvider } from '@metamask/providers'; import { SnapsProvider } from '@metamask/snaps-sdk'; import { beforeAll, describe, expect, it } from 'vitest'; @@ -6,7 +6,7 @@ import { beforeAll, describe, expect, it } from 'vitest'; import { onRpcRequest } from '../../src'; import { account } from '../data/constants'; import { getDefaultSnapState } from '../data/defaultSnapState'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; // TODO verify that these are the correct dids (after keypair implementation is complete and final mappings are set) const methods = [ diff --git a/packages/snap/tests/e2e/togglePopups.spec.ts b/packages/snap/tests/e2e/togglePopups.spec.ts index d85d555c1..e2cd03a3b 100644 --- a/packages/snap/tests/e2e/togglePopups.spec.ts +++ b/packages/snap/tests/e2e/togglePopups.spec.ts @@ -1,4 +1,4 @@ -import { isError, Result } from '@blockchain-lab-um/utils'; +import { Result, isError } from '@blockchain-lab-um/utils'; import { MetaMaskInpageProvider } from '@metamask/providers'; import { SnapsProvider } from '@metamask/snaps-sdk'; import { beforeAll, describe, expect, it } from 'vitest'; @@ -6,7 +6,7 @@ import { beforeAll, describe, expect, it } from 'vitest'; import { onRpcRequest } from '../../src'; import { account } from '../data/constants'; import { getDefaultSnapState } from '../data/defaultSnapState'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; describe('togglePopups', () => { it('pass', () => { diff --git a/packages/snap/tests/e2e/validateStoredCeramicSession.spec.ts b/packages/snap/tests/e2e/validateStoredCeramicSession.spec.ts index 0dce2c188..dad4d49a6 100644 --- a/packages/snap/tests/e2e/validateStoredCeramicSession.spec.ts +++ b/packages/snap/tests/e2e/validateStoredCeramicSession.spec.ts @@ -1,5 +1,5 @@ import { CURRENT_STATE_VERSION } from '@blockchain-lab-um/masca-types'; -import { isError, Result } from '@blockchain-lab-um/utils'; +import { Result, isError } from '@blockchain-lab-um/utils'; import { MetaMaskInpageProvider } from '@metamask/providers'; import { SnapsProvider } from '@metamask/snaps-sdk'; import { beforeAll, describe, expect, it } from 'vitest'; @@ -7,7 +7,7 @@ import { beforeAll, describe, expect, it } from 'vitest'; import { onRpcRequest } from '../../src'; import { account } from '../data/constants'; import { getDefaultSnapState } from '../data/defaultSnapState'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; describe('validateStoredCeramicSession', () => { let snapMock: SnapsProvider & SnapMock; diff --git a/packages/snap/tests/e2e/verifyData.spec.ts b/packages/snap/tests/e2e/verifyData.spec.ts index 84d2bbd78..f3ebc896e 100644 --- a/packages/snap/tests/e2e/verifyData.spec.ts +++ b/packages/snap/tests/e2e/verifyData.spec.ts @@ -1,4 +1,4 @@ -import { isError, Result } from '@blockchain-lab-um/utils'; +import { Result, isError } from '@blockchain-lab-um/utils'; import { MetaMaskInpageProvider } from '@metamask/providers'; import { SnapsProvider } from '@metamask/snaps-sdk'; import { VerifiableCredential, VerifiablePresentation } from '@veramo/core'; @@ -11,7 +11,7 @@ import { account } from '../data/constants'; import { EXAMPLE_VC_PAYLOAD } from '../data/credentials'; import { getDefaultSnapState } from '../data/defaultSnapState'; import { createTestVCs } from '../helpers/generateTestVCs'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; describe('verifyData', () => { let snapMock: SnapsProvider & SnapMock; diff --git a/packages/snap/tests/globalSetup.ts b/packages/snap/tests/globalSetup.ts index ad4b51f0a..6edb93372 100644 --- a/packages/snap/tests/globalSetup.ts +++ b/packages/snap/tests/globalSetup.ts @@ -5,7 +5,6 @@ import { beforeAll, expect } from 'vitest'; expect.extend(matchers); beforeAll(() => { - // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore global.window = { crypto }; }); diff --git a/packages/snap/tests/helpers/snapMock.ts b/packages/snap/tests/helpers/snapMock.ts index 174b3806b..1536cbc64 100644 --- a/packages/snap/tests/helpers/snapMock.ts +++ b/packages/snap/tests/helpers/snapMock.ts @@ -1,10 +1,10 @@ -import { readFile } from 'fs/promises'; import type { MascaState } from '@blockchain-lab-um/masca-types'; import { BIP44CoinTypeNode } from '@metamask/key-tree'; import type { RequestArguments } from '@metamask/providers/dist/BaseProvider'; import type { Maybe } from '@metamask/providers/dist/utils'; import { SnapsProvider } from '@metamask/snaps-sdk'; import { AlchemyProvider, Filter, TransactionRequest } from 'ethers'; +import { readFile } from 'fs/promises'; import { vi } from 'vitest'; import { account, mnemonic } from '../data/constants'; @@ -101,31 +101,28 @@ export class SnapMock implements ISnapMock { .mockImplementation(async (data: unknown) => this.snapEthLogs(data as any[]) ), - snap_getFile: vi - .fn() - .mockImplementation( - async (params: { - path: string; - encoding?: 'base64' | 'utf8' | 'hex'; - }) => { - // Use root of the project as base path - const projectRoot = import.meta.url.split('/').slice(2, -3).join('/'); - const filePath = `${projectRoot}/${params.path.slice(2)}`; - - const value = await readFile(filePath); - - if (params.encoding === 'hex') { - return value.toString('hex'); - } - - return value.toString('utf8'); + snap_getFile: vi.fn().mockImplementation( + async (params: { + path: string; + encoding?: 'base64' | 'utf8' | 'hex'; + }) => { + // Use root of the project as base path + const projectRoot = import.meta.url.split('/').slice(2, -3).join('/'); + const filePath = `${projectRoot}/${params.path.slice(2)}`; + + const value = await readFile(filePath); + + if (params.encoding === 'hex') { + return value.toString('hex'); } - ), + + return value.toString('utf8'); + } + ), }; request(args: RequestArguments): Promise> { const { method, params } = args; - // eslint-disable-next-line return this.rpcMocks[method](params); } } diff --git a/packages/snap/tests/unit/Storage.service.spec.ts b/packages/snap/tests/unit/Storage.service.spec.ts index 3354d0a90..9d28b6390 100644 --- a/packages/snap/tests/unit/Storage.service.spec.ts +++ b/packages/snap/tests/unit/Storage.service.spec.ts @@ -5,7 +5,7 @@ import { beforeEach, describe, expect, it } from 'vitest'; import StorageService from '../../src/storage/Storage.service'; import { getInitialSnapState } from '../../src/utils/config'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; describe('Storage Service', () => { let snapMock: SnapsProvider & SnapMock; diff --git a/packages/snap/tests/unit/Veramo.service.spec.ts b/packages/snap/tests/unit/Veramo.service.spec.ts index 75e033f4d..a380a38c0 100644 --- a/packages/snap/tests/unit/Veramo.service.spec.ts +++ b/packages/snap/tests/unit/Veramo.service.spec.ts @@ -7,10 +7,10 @@ import { IIdentifier } from '@veramo/core'; import { beforeAll, beforeEach, describe, expect, it, vi } from 'vitest'; import GeneralService from '../../src/General.service'; +import WalletService from '../../src/Wallet.service'; import StorageService from '../../src/storage/Storage.service'; -import type { StoredCredentials } from '../../src/veramo/plugins/ceramicDataStore/ceramicDataStore'; import VeramoService from '../../src/veramo/Veramo.service'; -import WalletService from '../../src/Wallet.service'; +import type { StoredCredentials } from '../../src/veramo/plugins/ceramicDataStore/ceramicDataStore'; import { account, jsonPath, @@ -30,11 +30,11 @@ import { } from '../data/identifiers/didKey'; import { EXAMPLE_VC, + EXAMPLE_VC2, EXAMPLE_VC_EIP712, EXAMPLE_VC_LDS, - EXAMPLE_VC2, } from '../data/verifiable-credentials'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; const credentials = [EXAMPLE_VC, EXAMPLE_VC2, EXAMPLE_VC_EIP712]; diff --git a/packages/snap/tests/unit/Wallet.service.spec.ts b/packages/snap/tests/unit/Wallet.service.spec.ts index 7d2ac82ca..d7909146b 100644 --- a/packages/snap/tests/unit/Wallet.service.spec.ts +++ b/packages/snap/tests/unit/Wallet.service.spec.ts @@ -6,11 +6,11 @@ import { MetaMaskInpageProvider } from '@metamask/providers'; import { SnapsProvider } from '@metamask/snaps-sdk'; import { beforeAll, beforeEach, describe, expect, it } from 'vitest'; -import StorageService from '../../src/storage/Storage.service'; import WalletService from '../../src/Wallet.service'; +import StorageService from '../../src/storage/Storage.service'; import { account } from '../data/constants'; import { getDefaultSnapState } from '../data/defaultSnapState'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; const methods = [ { diff --git a/packages/snap/tests/unit/ceramic.spec.ts b/packages/snap/tests/unit/ceramic.spec.ts index 19241362b..6bb2c9207 100644 --- a/packages/snap/tests/unit/ceramic.spec.ts +++ b/packages/snap/tests/unit/ceramic.spec.ts @@ -9,7 +9,7 @@ import VeramoService from '../../src/veramo/Veramo.service'; import { account } from '../data/constants'; import { getDefaultSnapState } from '../data/defaultSnapState'; import { EXAMPLE_VC } from '../data/verifiable-credentials'; -import { createMockSnap, SnapMock } from '../helpers/snapMock'; +import { SnapMock, createMockSnap } from '../helpers/snapMock'; describe('Utils [ceramic]', () => { let snapMock: SnapsProvider & SnapMock; diff --git a/packages/snap/tests/unit/requestParams.spec.ts b/packages/snap/tests/unit/requestParams.spec.ts index 1215d2fd3..b327b9a41 100644 --- a/packages/snap/tests/unit/requestParams.spec.ts +++ b/packages/snap/tests/unit/requestParams.spec.ts @@ -17,8 +17,8 @@ import { EXAMPLE_VC_PAYLOAD } from '../data/credentials'; import { getDefaultSnapState } from '../data/defaultSnapState'; import { EXAMPLE_VC, - EXAMPLE_VC_LDS, EXAMPLE_VC2, + EXAMPLE_VC_LDS, } from '../data/verifiable-credentials'; describe('Utils [requestParams]', () => { diff --git a/packages/snap/tsconfig.build.json b/packages/snap/tsconfig.build.json index 9a86746ce..cf58c1984 100644 --- a/packages/snap/tsconfig.build.json +++ b/packages/snap/tsconfig.build.json @@ -1,8 +1,4 @@ { "extends": "./tsconfig.json", - "exclude": [ - // Exclude all test files - "tests/**/*", - "*.spec.ts" - ] + "exclude": ["tests/**/*", "*.spec.ts"] } diff --git a/packages/snap/tsconfig.eslint.json b/packages/snap/tsconfig.eslint.json deleted file mode 100644 index b0a08c182..000000000 --- a/packages/snap/tsconfig.eslint.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["**/*", ".eslintrc.cjs"] -} diff --git a/packages/types/.eslintrc.cjs b/packages/types/.eslintrc.cjs deleted file mode 100644 index b7ab67ca9..000000000 --- a/packages/types/.eslintrc.cjs +++ /dev/null @@ -1,10 +0,0 @@ -module.exports = { - root: true, - extends: ['../../.eslintrc.cjs'], - ignorePatterns: ['**/src/typia-generated/*.ts'], - parserOptions: { - project: './tsconfig.eslint.json', - sourceType: 'module', - tsconfigRootDir: __dirname, - }, -}; diff --git a/packages/types/.lintstagedrc.cjs b/packages/types/.lintstagedrc.cjs index 0fa2a7f45..616c3ec1a 100644 --- a/packages/types/.lintstagedrc.cjs +++ b/packages/types/.lintstagedrc.cjs @@ -1,4 +1,3 @@ module.exports = { - '*.{js,ts}': ['eslint --fix'], - '*.{md,json,yml,yaml}': ['prettier --write'], + '*.{js,ts,mts,mjs,cjs,cts,jsx,tsx,md,json,yml,yaml}': ['biome check --apply'], }; diff --git a/packages/types/.prettierignore b/packages/types/.prettierignore deleted file mode 100644 index 350a7d768..000000000 --- a/packages/types/.prettierignore +++ /dev/null @@ -1,4 +0,0 @@ -node_modules -CHANGELOG.md -dist -src/typia-generated diff --git a/packages/types/package.json b/packages/types/package.json index 4386038ff..2a90ea4e4 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -2,12 +2,7 @@ "name": "@blockchain-lab-um/masca-types", "version": "1.3.0", "description": "Types for Masca", - "keywords": [ - "ssi", - "metamask", - "snap", - "dapp" - ], + "keywords": ["ssi", "metamask", "snap", "dapp"], "license": "(Apache-2.0 AND MIT)", "author": { "name": "Blockchain Lab:UM", @@ -19,20 +14,13 @@ "module": "./dist/index.js", "source": "./src/index.ts", "types": "./dist/index.d.ts", - "files": [ - "dist/**", - "README.md", - "package.json", - "CHANGELOG.md" - ], + "files": ["dist/**", "README.md", "package.json", "CHANGELOG.md"], "scripts": { "build": "pnpm clean && pnpm typia:generate && pnpm compile", "clean": "rimraf dist", "compile": "tsup", - "lint": "pnpm lint:eslint && pnpm lint:prettier", - "lint:eslint": "eslint .", - "lint:fix": "eslint . --fix && prettier . --write", - "lint:prettier": "prettier . --check", + "lint": "biome check .", + "lint:fix": "biome check --apply .", "typia:generate": "pnpm typia generate --input typia-templates --output src/typia-generated --project tsconfig.json" }, "dependencies": { @@ -50,38 +38,22 @@ }, "nx": { "namedInputs": { - "default": [ - "{projectRoot}/**/*" - ], + "default": ["{projectRoot}/**/*"], "production": [ "default", "!{projectRoot}/dist/**/*", - "!{projectRoot}/.lintstagedrc.cjs", - "!{projectRoot}/.prettierignore" + "!{projectRoot}/.lintstagedrc.cjs" ] }, "targets": { "build": { - "inputs": [ - "production", - "^production" - ], - "dependsOn": [ - "^build" - ], - "outputs": [ - "{projectRoot}/dist", - "{projectRoot}/src/typia-generated" - ] + "inputs": ["production", "^production"], + "dependsOn": ["^build"], + "outputs": ["{projectRoot}/dist", "{projectRoot}/src/typia-generated"] }, "lint": { - "inputs": [ - "default", - "^production" - ], - "dependsOn": [ - "build" - ], + "inputs": ["default", "^production"], + "dependsOn": ["build"], "outputs": [] } } diff --git a/packages/types/tsconfig.eslint.json b/packages/types/tsconfig.eslint.json deleted file mode 100644 index b0a08c182..000000000 --- a/packages/types/tsconfig.eslint.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["**/*", ".eslintrc.cjs"] -} diff --git a/packages/types/tsup.config.ts b/packages/types/tsup.config.ts index 1607f97d4..15422d924 100644 --- a/packages/types/tsup.config.ts +++ b/packages/types/tsup.config.ts @@ -1,4 +1,4 @@ -import { defineConfig, Options } from 'tsup'; +import { Options, defineConfig } from 'tsup'; export default defineConfig((options: Options) => ({ target: 'es2020', diff --git a/packages/types/typia-templates/isParam.ts b/packages/types/typia-templates/isParam.ts index 34899c7df..7d8efc9ad 100644 --- a/packages/types/typia-templates/isParam.ts +++ b/packages/types/typia-templates/isParam.ts @@ -1,12 +1,9 @@ import typia from 'typia'; import { - availableCredentialStores, - CURRENT_STATE_VERSION, - isW3CCredential, - isW3CVerifiableCredential, type AddDappSettingsRequestParams, type AvailableCredentialStores, + CURRENT_STATE_VERSION, type ChangePermissionsRequestParams, type CreateCredentialRequestParams, type CreatePresentationRequestParams, @@ -22,6 +19,9 @@ import { type SignDataRequestParams, type SwitchMethodRequestParams, type VerifyDataRequestParams, + availableCredentialStores, + isW3CCredential, + isW3CVerifiableCredential, } from '../src/index.js'; const isEnabledCredentialStore = ( diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b6924b590..010e5eca2 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -35,6 +35,9 @@ importers: specifier: 2.27.1 version: 2.27.1 devDependencies: + '@biomejs/biome': + specifier: 1.5.3 + version: 1.5.3 '@changesets/changelog-github': specifier: 0.5.0 version: 0.5.0 @@ -44,60 +47,24 @@ importers: '@commitlint/config-conventional': specifier: ^19.0.3 version: 19.0.3 - '@ianvs/prettier-plugin-sort-imports': - specifier: ^4.1.1 - version: 4.1.1(prettier@3.2.5) '@nx/devkit': specifier: 18.0.7 version: 18.0.7(nx@18.0.7) '@nx/jest': specifier: 18.0.7 version: 18.0.7(@types/node@20.11.25)(nx@18.0.7)(ts-node@10.9.2)(typescript@5.3.3) - '@types/eslint': - specifier: ^8.56.5 - version: 8.56.5 '@types/jest': specifier: ^29.5.12 version: 29.5.12 '@types/node': specifier: ^20.11.24 version: 20.11.25 - '@typescript-eslint/eslint-plugin': - specifier: ^7.1.1 - version: 7.1.1(@typescript-eslint/parser@7.1.1)(eslint@8.57.0)(typescript@5.3.3) - '@typescript-eslint/parser': - specifier: ^7.1.1 - version: 7.1.1(eslint@8.57.0)(typescript@5.3.3) concurrently: specifier: ^8.2.2 version: 8.2.2 cross-env: specifier: ^7.0.3 version: 7.0.3 - eslint: - specifier: ^8.57.0 - version: 8.57.0 - eslint-config-airbnb-base: - specifier: ^15.0.0 - version: 15.0.0(eslint-plugin-import@2.29.1)(eslint@8.57.0) - eslint-config-airbnb-typescript: - specifier: 18.0.0 - version: 18.0.0(@typescript-eslint/eslint-plugin@7.1.1)(@typescript-eslint/parser@7.1.1)(eslint-plugin-import@2.29.1)(eslint@8.57.0) - eslint-config-prettier: - specifier: ^9.1.0 - version: 9.1.0(eslint@8.57.0) - eslint-plugin-import: - specifier: ^2.29.1 - version: 2.29.1(@typescript-eslint/parser@7.1.1)(eslint@8.57.0) - eslint-plugin-jest: - specifier: ^27.9.0 - version: 27.9.0(@typescript-eslint/eslint-plugin@7.1.1)(eslint@8.57.0)(typescript@5.3.3) - eslint-plugin-jest-extended: - specifier: ^2.0.0 - version: 2.0.0(eslint@8.57.0)(typescript@5.3.3) - eslint-plugin-unused-imports: - specifier: ^3.1.0 - version: 3.1.0(@typescript-eslint/eslint-plugin@7.1.1)(eslint@8.57.0) execa: specifier: ^8.0.1 version: 8.0.1 @@ -119,15 +86,6 @@ importers: nx-cloud: specifier: ^18.0.0 version: 18.0.0 - prettier: - specifier: ^3.2.5 - version: 3.2.5 - prettier-plugin-packagejson: - specifier: ^2.4.12 - version: 2.4.12(prettier@3.2.5) - prettier-plugin-tailwindcss: - specifier: ^0.5.11 - version: 0.5.12(@ianvs/prettier-plugin-sort-imports@4.1.1)(prettier@3.2.5) rimraf: specifier: ^5.0.5 version: 5.0.5 @@ -216,7 +174,7 @@ importers: version: 5.6.1-next.57 '@veramo/credential-w3c': specifier: 5.6.1-next.57 - version: 5.6.1-next.57(encoding@0.1.13)(expo-crypto@12.8.1)(expo@49.0.16)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1)(react-native@0.72.6) + version: 5.6.1-next.57(encoding@0.1.13)(expo@50.0.11)(react-native@0.73.5) '@veramo/data-store': specifier: 5.6.1-next.57 version: 5.6.1-next.57(better-sqlite3@9.4.3)(ts-node@10.9.2) @@ -279,7 +237,7 @@ importers: version: 5.4.1 '@veramo/credential-w3c': specifier: 5.6.0 - version: 5.6.0(expo@49.0.16)(react-native@0.72.6) + version: 5.6.0(expo@50.0.11)(react-native@0.73.5) '@veramo/did-provider-jwk': specifier: 5.6.0 version: 5.6.0 @@ -321,26 +279,26 @@ importers: specifier: 5.6.0 version: 5.6.0 '@vitest/coverage-v8': - specifier: 1.0.0-beta.3 - version: 1.0.0-beta.3(vitest@1.0.0-beta.3) + specifier: 1.3.1 + version: 1.3.1(vitest@1.3.1) desm: - specifier: ^1.3.0 - version: 1.3.0 + specifier: ^1.3.1 + version: 1.3.1 did-jwt: - specifier: ^8.0.0 - version: 8.0.0 + specifier: ^8.0.1 + version: 8.0.1 tsup: - specifier: ^7.2.0 - version: 7.2.0(ts-node@10.9.2)(typescript@5.3.3) + specifier: ^8.0.2 + version: 8.0.2(ts-node@10.9.2)(typescript@5.3.3) vite: - specifier: ^4.5.0 - version: 4.5.0(@types/node@20.11.25) + specifier: ^5.1.5 + version: 5.1.5(@types/node@20.11.25) vite-tsconfig-paths: - specifier: ^4.2.1 - version: 4.2.1(typescript@5.3.3)(vite@4.5.0) + specifier: ^4.3.1 + version: 4.3.1(typescript@5.3.3)(vite@5.1.5) vitest: - specifier: 1.0.0-beta.3 - version: 1.0.0-beta.3(@types/node@20.11.25) + specifier: 1.3.1 + version: 1.3.1(@types/node@20.11.25) libs/oidc/client-plugin: dependencies: @@ -464,13 +422,13 @@ importers: devDependencies: esbuild-loader: specifier: ^4.0.3 - version: 4.1.0(webpack@5.89.0) + version: 4.1.0(webpack@5.90.3) tsup: specifier: ^8.0.2 version: 8.0.2(ts-node@10.9.2)(typescript@5.3.3) webpack-cli: specifier: ^5.1.4 - version: 5.1.4(webpack@5.89.0) + version: 5.1.4(webpack@5.90.3) packages/dapp: dependencies: @@ -491,10 +449,10 @@ importers: version: 2.1.1(react@18.2.0) '@nextui-org/react': specifier: ^2.2.10 - version: 2.2.10(@types/react@18.2.63)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19)(tailwindcss@3.4.1) + version: 2.2.10(@types/react@18.2.64)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0)(tailwindcss@3.4.1) '@radix-ui/react-toast': specifier: ^1.1.5 - version: 1.1.5(@types/react-dom@18.2.20)(@types/react@18.2.63)(react-dom@18.2.0)(react@18.2.0) + version: 1.1.5(@types/react-dom@18.2.21)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0) '@react-oauth/google': specifier: ^0.12.1 version: 0.12.1(react-dom@18.2.0)(react@18.2.0) @@ -524,7 +482,7 @@ importers: version: 5.6.1-next.57(encoding@0.1.13) '@veramo/credential-w3c': specifier: 5.6.1-next.57 - version: 5.6.1-next.57(encoding@0.1.13)(expo-crypto@12.8.1)(expo@49.0.16)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1)(react-native@0.72.6) + version: 5.6.1-next.57(encoding@0.1.13)(expo@50.0.11)(react-native@0.73.5) '@veramo/did-provider-ethr': specifier: 5.6.1-next.57 version: 5.6.1-next.57 @@ -539,7 +497,7 @@ importers: version: 5.6.1-next.57(encoding@0.1.13) '@vercel/analytics': specifier: ^1.2.2 - version: 1.2.2(next@14.1.2)(react@18.2.0) + version: 1.2.2(next@14.1.3)(react@18.2.0) '@vercel/og': specifier: ^0.6.2 version: 0.6.2 @@ -601,17 +559,17 @@ importers: specifier: ^12.0.1 version: 12.0.1 next: - specifier: 14.1.2 - version: 14.1.2(@babel/core@7.23.2)(react-dom@18.2.0)(react@18.2.0) + specifier: 14.1.3 + version: 14.1.3(@babel/core@7.24.0)(react-dom@18.2.0)(react@18.2.0) next-intl: - specifier: 3.9.2 - version: 3.9.2(next@14.1.2)(react@18.2.0) + specifier: 3.9.4 + version: 3.9.4(next@14.1.3)(react@18.2.0) next-sitemap: specifier: ^4.2.3 - version: 4.2.3(next@14.1.2) + version: 4.2.3(next@14.1.3) next-themes: specifier: ^0.2.1 - version: 0.2.1(next@14.1.2)(react-dom@18.2.0)(react@18.2.0) + version: 0.2.1(next@14.1.3)(react-dom@18.2.0)(react@18.2.0) pino-pretty: specifier: ^10.3.1 version: 10.3.1 @@ -647,10 +605,10 @@ importers: version: 2.7.22(typescript@5.3.3) wagmi: specifier: ^2.5.7 - version: 2.5.7(@tanstack/react-query@5.25.0)(@types/react@18.2.63)(encoding@0.1.13)(react-dom@18.2.0)(react-native@0.72.6)(react@18.2.0)(typescript@5.3.3)(viem@2.7.22) + version: 2.5.7(@tanstack/react-query@5.25.0)(@types/react@18.2.64)(encoding@0.1.13)(react-dom@18.2.0)(react-native@0.73.5)(react@18.2.0)(typescript@5.3.3)(viem@2.7.22) zustand: specifier: ^4.5.2 - version: 4.5.2(@types/react@18.2.63)(react@18.2.0) + version: 4.5.2(@types/react@18.2.64)(react@18.2.0) devDependencies: '@svgr/webpack': specifier: ^8.1.0 @@ -668,17 +626,14 @@ importers: specifier: ^6.9.12 version: 6.9.12 '@types/react': - specifier: 18.2.63 - version: 18.2.63 + specifier: 18.2.64 + version: 18.2.64 '@types/react-dom': - specifier: 18.2.20 - version: 18.2.20 + specifier: 18.2.21 + version: 18.2.21 autoprefixer: specifier: ^10.4.18 version: 10.4.18(postcss@8.4.35) - eslint-config-next: - specifier: ^14.1.2 - version: 14.1.3(eslint@8.57.0)(typescript@5.3.3) postcss: specifier: ^8.4.35 version: 8.4.35 @@ -727,19 +682,19 @@ importers: dependencies: '@docusaurus/core': specifier: 3.1.1 - version: 3.1.1(@docusaurus/types@3.1.1)(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) + version: 3.1.1(@docusaurus/types@3.1.1)(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) '@docusaurus/preset-classic': specifier: 3.1.1 - version: 3.1.1(@algolia/client-search@4.20.0)(@types/react@18.2.63)(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(search-insights@2.9.0)(typescript@5.3.3) + version: 3.1.1(@algolia/client-search@4.22.1)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0)(search-insights@2.13.0)(typescript@5.4.2) '@emotion/react': specifier: ^11.11.4 - version: 11.11.4(@types/react@18.2.63)(react@18.2.0) + version: 11.11.4(@types/react@18.2.64)(react@18.2.0) '@emotion/styled': specifier: ^11.11.0 - version: 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.63)(react@18.2.0) + version: 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.64)(react@18.2.0) '@mdx-js/react': specifier: 3.0.1 - version: 3.0.1(@types/react@18.2.63)(react@18.2.0) + version: 3.0.1(@types/react@18.2.64)(react@18.2.0) clsx: specifier: ^2.1.0 version: 2.1.0 @@ -758,7 +713,7 @@ importers: version: 3.1.1(react-dom@18.2.0)(react@18.2.0) '@docusaurus/plugin-content-docs': specifier: ^3.1.1 - version: 3.1.1(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) + version: 3.1.1(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) '@docusaurus/types': specifier: ^3.1.1 version: 3.1.1(react-dom@18.2.0)(react@18.2.0) @@ -766,8 +721,8 @@ importers: specifier: ^2.0.2 version: 2.0.2 '@types/react': - specifier: 18.2.63 - version: 18.2.63 + specifier: 18.2.64 + version: 18.2.64 precompress: specifier: ^12.0.2 version: 12.0.2 @@ -830,13 +785,13 @@ importers: version: 5.6.1-next.57(encoding@0.1.13) '@veramo/credential-ld': specifier: 5.6.1-next.57 - version: 5.6.1-next.57(encoding@0.1.13)(expo-crypto@12.8.1)(expo@49.0.16)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1)(react-native@0.72.6) + version: 5.6.1-next.57(expo-crypto@12.8.1)(expo@50.0.11)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1)(react-native@0.73.5) '@veramo/credential-status': specifier: 5.6.1-next.57 version: 5.6.1-next.57 '@veramo/credential-w3c': specifier: 5.6.1-next.57 - version: 5.6.1-next.57(encoding@0.1.13)(expo-crypto@12.8.1)(expo@49.0.16)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1)(react-native@0.72.6) + version: 5.6.1-next.57(encoding@0.1.13)(expo@50.0.11)(react-native@0.73.5) '@veramo/did-manager': specifier: 5.6.1-next.57 version: 5.6.1-next.57 @@ -909,7 +864,7 @@ importers: version: 2.17.0 '@metamask/snaps-cli': specifier: 3.0.3 - version: 3.0.3(@metamask/approval-controller@4.1.0)(esbuild@0.20.1) + version: 3.0.3(@metamask/approval-controller@5.1.3)(esbuild@0.20.1) '@types/elliptic': specifier: ^6.4.18 version: 6.4.18 @@ -966,11 +921,11 @@ importers: version: 5.6.1-next.57 typia: specifier: ^5.5.0 - version: 5.5.3(typescript@5.3.3) + version: 5.5.3(typescript@5.4.2) devDependencies: tsup: specifier: ^8.0.2 - version: 8.0.2(ts-node@10.9.2)(typescript@5.3.3) + version: 8.0.2(ts-node@10.9.2)(typescript@5.4.2) packages: @@ -1007,57 +962,53 @@ packages: - web-streams-polyfill dev: false - /@aashutoshrathi/word-wrap@1.2.6: - resolution: {integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==} - engines: {node: '>=0.10.0'} - /@adraffy/ens-normalize@1.10.0: resolution: {integrity: sha512-nA9XHtlAkYfJxY7bce8DcN7eKxWWCWkU+1GR9d+U6MbNpfwQp8TI7vqOsBsMcHoT4mBu2kypKoSKnghEzOOq5Q==} /@adraffy/ens-normalize@1.10.1: resolution: {integrity: sha512-96Z2IP3mYmF1Xg2cDm8f1gWGf/HUVedQ3FMifV4kG/PQ4yEP51xDtRAEfhVNt5f/uzpNkZHwWQuUcu6D6K+Ekw==} - /@algolia/autocomplete-core@1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.19.1)(search-insights@2.9.0): + /@algolia/autocomplete-core@1.9.3(@algolia/client-search@4.22.1)(algoliasearch@4.19.1)(search-insights@2.13.0): resolution: {integrity: sha512-009HdfugtGCdC4JdXUbVJClA0q0zh24yyePn+KUGk3rP7j8FEe/m5Yo/z65gn6nP/cM39PxpzqKrL7A6fP6PPw==} dependencies: - '@algolia/autocomplete-plugin-algolia-insights': 1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.19.1)(search-insights@2.9.0) - '@algolia/autocomplete-shared': 1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.19.1) + '@algolia/autocomplete-plugin-algolia-insights': 1.9.3(@algolia/client-search@4.22.1)(algoliasearch@4.19.1)(search-insights@2.13.0) + '@algolia/autocomplete-shared': 1.9.3(@algolia/client-search@4.22.1)(algoliasearch@4.19.1) transitivePeerDependencies: - '@algolia/client-search' - algoliasearch - search-insights dev: false - /@algolia/autocomplete-plugin-algolia-insights@1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.19.1)(search-insights@2.9.0): + /@algolia/autocomplete-plugin-algolia-insights@1.9.3(@algolia/client-search@4.22.1)(algoliasearch@4.19.1)(search-insights@2.13.0): resolution: {integrity: sha512-a/yTUkcO/Vyy+JffmAnTWbr4/90cLzw+CC3bRbhnULr/EM0fGNvM13oQQ14f2moLMcVDyAx/leczLlAOovhSZg==} peerDependencies: search-insights: '>= 1 < 3' dependencies: - '@algolia/autocomplete-shared': 1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.19.1) - search-insights: 2.9.0 + '@algolia/autocomplete-shared': 1.9.3(@algolia/client-search@4.22.1)(algoliasearch@4.19.1) + search-insights: 2.13.0 transitivePeerDependencies: - '@algolia/client-search' - algoliasearch dev: false - /@algolia/autocomplete-preset-algolia@1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.19.1): + /@algolia/autocomplete-preset-algolia@1.9.3(@algolia/client-search@4.22.1)(algoliasearch@4.19.1): resolution: {integrity: sha512-d4qlt6YmrLMYy95n5TB52wtNDr6EgAIPH81dvvvW8UmuWRgxEtY0NJiPwl/h95JtG2vmRM804M0DSwMCNZlzRA==} peerDependencies: '@algolia/client-search': '>= 4.9.1 < 6' algoliasearch: '>= 4.9.1 < 6' dependencies: - '@algolia/autocomplete-shared': 1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.19.1) - '@algolia/client-search': 4.20.0 + '@algolia/autocomplete-shared': 1.9.3(@algolia/client-search@4.22.1)(algoliasearch@4.19.1) + '@algolia/client-search': 4.22.1 algoliasearch: 4.19.1 dev: false - /@algolia/autocomplete-shared@1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.19.1): + /@algolia/autocomplete-shared@1.9.3(@algolia/client-search@4.22.1)(algoliasearch@4.19.1): resolution: {integrity: sha512-Wnm9E4Ye6Rl6sTTqjoymD+l8DjSTHsHboVRYrKgEt8Q7UHm9nYbqhN/i0fhUYA3OAEH7WA8x3jfpnmJm3rKvaQ==} peerDependencies: '@algolia/client-search': '>= 4.9.1 < 6' algoliasearch: '>= 4.9.1 < 6' dependencies: - '@algolia/client-search': 4.20.0 + '@algolia/client-search': 4.22.1 algoliasearch: 4.19.1 dev: false @@ -1071,8 +1022,8 @@ packages: resolution: {integrity: sha512-XGghi3l0qA38HiqdoUY+wvGyBsGvKZ6U3vTiMBT4hArhP3fOGLXpIINgMiiGjTe4FVlTa5a/7Zf2bwlIHfRqqg==} dev: false - /@algolia/cache-common@4.20.0: - resolution: {integrity: sha512-vCfxauaZutL3NImzB2G9LjLt36vKAckc6DhMp05An14kVo8F1Yofb6SIl6U3SaEz8pG2QOB9ptwM5c+zGevwIQ==} + /@algolia/cache-common@4.22.1: + resolution: {integrity: sha512-TJMBKqZNKYB9TptRRjSUtevJeQVXRmg6rk9qgFKWvOy8jhCPdyNZV1nB3SKGufzvTVbomAukFR8guu/8NRKBTA==} dev: false /@algolia/cache-in-memory@4.19.1: @@ -1105,11 +1056,11 @@ packages: '@algolia/transporter': 4.19.1 dev: false - /@algolia/client-common@4.20.0: - resolution: {integrity: sha512-P3WgMdEss915p+knMMSd/fwiHRHKvDu4DYRrCRaBrsfFw7EQHon+EbRSm4QisS9NYdxbS04kcvNoavVGthyfqQ==} + /@algolia/client-common@4.22.1: + resolution: {integrity: sha512-IvaL5v9mZtm4k4QHbBGDmU3wa/mKokmqNBqPj0K7lcR8ZDKzUorhcGp/u8PkPC/e0zoHSTvRh7TRkGX3Lm7iOQ==} dependencies: - '@algolia/requester-common': 4.20.0 - '@algolia/transporter': 4.20.0 + '@algolia/requester-common': 4.22.1 + '@algolia/transporter': 4.22.1 dev: false /@algolia/client-personalization@4.19.1: @@ -1128,12 +1079,12 @@ packages: '@algolia/transporter': 4.19.1 dev: false - /@algolia/client-search@4.20.0: - resolution: {integrity: sha512-zgwqnMvhWLdpzKTpd3sGmMlr4c+iS7eyyLGiaO51zDZWGMkpgoNVmltkzdBwxOVXz0RsFMznIxB9zuarUv4TZg==} + /@algolia/client-search@4.22.1: + resolution: {integrity: sha512-yb05NA4tNaOgx3+rOxAmFztgMTtGBi97X7PC3jyNeGiwkAjOZc2QrdZBYyIdcDLoI09N0gjtpClcackoTN0gPA==} dependencies: - '@algolia/client-common': 4.20.0 - '@algolia/requester-common': 4.20.0 - '@algolia/transporter': 4.20.0 + '@algolia/client-common': 4.22.1 + '@algolia/requester-common': 4.22.1 + '@algolia/transporter': 4.22.1 dev: false /@algolia/events@4.0.1: @@ -1144,8 +1095,8 @@ packages: resolution: {integrity: sha512-i6pLPZW/+/YXKis8gpmSiNk1lOmYCmRI6+x6d2Qk1OdfvX051nRVdalRbEcVTpSQX6FQAoyeaui0cUfLYW5Elw==} dev: false - /@algolia/logger-common@4.20.0: - resolution: {integrity: sha512-xouigCMB5WJYEwvoWW5XDv7Z9f0A8VoXJc3VKwlHJw/je+3p2RcDXfksLI4G4lIVncFUYMZx30tP/rsdlvvzHQ==} + /@algolia/logger-common@4.22.1: + resolution: {integrity: sha512-OnTFymd2odHSO39r4DSWRFETkBufnY2iGUZNrMXpIhF5cmFE8pGoINNPzwg02QLBlGSaLqdKy0bM8S0GyqPLBg==} dev: false /@algolia/logger-console@4.19.1: @@ -1164,8 +1115,8 @@ packages: resolution: {integrity: sha512-BisRkcWVxrDzF1YPhAckmi2CFYK+jdMT60q10d7z3PX+w6fPPukxHRnZwooiTUrzFe50UBmLItGizWHP5bDzVQ==} dev: false - /@algolia/requester-common@4.20.0: - resolution: {integrity: sha512-9h6ye6RY/BkfmeJp7Z8gyyeMrmmWsMOCRBXQDs4mZKKsyVlfIVICpcSibbeYcuUdurLhIlrOUkH3rQEgZzonng==} + /@algolia/requester-common@4.22.1: + resolution: {integrity: sha512-dgvhSAtg2MJnR+BxrIFqlLtkLlVVhas9HgYKMk2Uxiy5m6/8HZBL40JVAMb2LovoPFs9I/EWIoFVjOrFwzn5Qg==} dev: false /@algolia/requester-node-http@4.19.1: @@ -1182,12 +1133,12 @@ packages: '@algolia/requester-common': 4.19.1 dev: false - /@algolia/transporter@4.20.0: - resolution: {integrity: sha512-Lsii1pGWOAISbzeyuf+r/GPhvHMPHSPrTDWNcIzOE1SG1inlJHICaVe2ikuoRjcpgxZNU54Jl+if15SUCsaTUg==} + /@algolia/transporter@4.22.1: + resolution: {integrity: sha512-kzWgc2c9IdxMa3YqA6TN0NW5VrKYYW/BELIn7vnLyn+U/RFdZ4lxxt9/8yq3DKV5snvoDzzO4ClyejZRdV3lMQ==} dependencies: - '@algolia/cache-common': 4.20.0 - '@algolia/logger-common': 4.20.0 - '@algolia/requester-common': 4.20.0 + '@algolia/cache-common': 4.22.1 + '@algolia/logger-common': 4.22.1 + '@algolia/requester-common': 4.22.1 dev: false /@alloc/quick-lru@5.2.0: @@ -1201,10 +1152,18 @@ packages: '@jridgewell/gen-mapping': 0.3.3 '@jridgewell/trace-mapping': 0.3.20 + /@ampproject/remapping@2.3.0: + resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} + engines: {node: '>=6.0.0'} + dependencies: + '@jridgewell/gen-mapping': 0.3.5 + '@jridgewell/trace-mapping': 0.3.25 + dev: true + /@babel/code-frame@7.10.4: resolution: {integrity: sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==} dependencies: - '@babel/highlight': 7.22.20 + '@babel/highlight': 7.23.4 /@babel/code-frame@7.22.13: resolution: {integrity: sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==} @@ -1361,6 +1320,7 @@ packages: '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 '@babel/helper-split-export-declaration': 7.22.6 semver: 6.3.1 + dev: true /@babel/helper-create-class-features-plugin@7.22.15(@babel/core@7.24.0): resolution: {integrity: sha512-jKkwA59IXcvSaiK2UN45kKwSC9o+KuoXsBDvHvU/7BecYIp8GQ2UwrVvFgJASUT+hBnwJx6MhvMCuMzwZZ7jlg==} @@ -1379,6 +1339,23 @@ packages: '@babel/helper-split-export-declaration': 7.22.6 semver: 6.3.1 + /@babel/helper-create-class-features-plugin@7.24.0(@babel/core@7.24.0): + resolution: {integrity: sha512-QAH+vfvts51BCsNZ2PhY6HAggnlS6omLLFTsIpeqZk/MmJ6cW7tgz5yRv0fMJThcr6FmbMrENh1RgrWPTYA76g==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-function-name': 7.23.0 + '@babel/helper-member-expression-to-functions': 7.23.0 + '@babel/helper-optimise-call-expression': 7.22.5 + '@babel/helper-replace-supers': 7.22.20(@babel/core@7.24.0) + '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 + '@babel/helper-split-export-declaration': 7.22.6 + semver: 6.3.1 + /@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.23.2): resolution: {integrity: sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==} engines: {node: '>=6.9.0'} @@ -1389,6 +1366,7 @@ packages: '@babel/helper-annotate-as-pure': 7.22.5 regexpu-core: 5.3.2 semver: 6.3.1 + dev: true /@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.24.0): resolution: {integrity: sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==} @@ -1429,6 +1407,7 @@ packages: resolve: 1.22.8 transitivePeerDependencies: - supports-color + dev: true /@babel/helper-define-polyfill-provider@0.4.3(@babel/core@7.24.0): resolution: {integrity: sha512-WBrLmuPP47n7PNwsZ57pqam6G/RGo1vw/87b0Blc53tZNGZ4x7YvZ6HgQe2vo1W/FR20OgjeZuGXzudPiXHFug==} @@ -1444,6 +1423,34 @@ packages: transitivePeerDependencies: - supports-color + /@babel/helper-define-polyfill-provider@0.5.0(@babel/core@7.24.0): + resolution: {integrity: sha512-NovQquuQLAQ5HuyjCz7WQP9MjRj7dx++yspwiyUiGl9ZyadHRSql1HZh5ogRd8W8w6YM6EQ/NTB8rgjLt5W65Q==} + peerDependencies: + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-compilation-targets': 7.23.6 + '@babel/helper-plugin-utils': 7.24.0 + debug: 4.3.4 + lodash.debounce: 4.0.8 + resolve: 1.22.8 + transitivePeerDependencies: + - supports-color + + /@babel/helper-define-polyfill-provider@0.6.0(@babel/core@7.24.0): + resolution: {integrity: sha512-efwOM90nCG6YeT8o3PCyBVSxRfmILxCNL+TNI8CGQl7a62M0Wd9VkV+XHwIlkOz1r4b+lxu6gBjdWiOMdUCrCQ==} + peerDependencies: + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-compilation-targets': 7.23.6 + '@babel/helper-plugin-utils': 7.24.0 + debug: 4.3.4 + lodash.debounce: 4.0.8 + resolve: 1.22.8 + transitivePeerDependencies: + - supports-color + /@babel/helper-environment-visitor@7.22.20: resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==} engines: {node: '>=6.9.0'} @@ -1529,6 +1536,10 @@ packages: resolution: {integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==} engines: {node: '>=6.9.0'} + /@babel/helper-plugin-utils@7.24.0: + resolution: {integrity: sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==} + engines: {node: '>=6.9.0'} + /@babel/helper-remap-async-to-generator@7.22.20(@babel/core@7.23.2): resolution: {integrity: sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==} engines: {node: '>=6.9.0'} @@ -1539,6 +1550,7 @@ packages: '@babel/helper-annotate-as-pure': 7.22.5 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-wrap-function': 7.22.20 + dev: true /@babel/helper-remap-async-to-generator@7.22.20(@babel/core@7.24.0): resolution: {integrity: sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==} @@ -1573,6 +1585,7 @@ packages: '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-member-expression-to-functions': 7.23.0 '@babel/helper-optimise-call-expression': 7.22.5 + dev: true /@babel/helper-replace-supers@7.22.20(@babel/core@7.24.0): resolution: {integrity: sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw==} @@ -1710,6 +1723,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.22.15(@babel/core@7.24.0): resolution: {integrity: sha512-FB9iYlz7rURmRJyXRKEnalYPPdn87H5no108cyuQQyMwlpJ2SJtpIUBI27kdTin956pz+LPypkPVPUTlxOmrsg==} @@ -1730,6 +1744,15 @@ packages: '@babel/helper-plugin-utils': 7.22.5 dev: true + /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-iRkKcCqb7iGnq9+3G6rZ+Ciz5VywC4XNRHe57lKM+jOeYAoR0lVqdeeDRfh0tQcTfw/+vBhHn926FmQhLtlFLQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.22.15(@babel/core@7.23.2): resolution: {integrity: sha512-Hyph9LseGvAeeXzikV88bczhsrLrIZqDPxO+sSmAunMPaGrBGhfMWzCPYTtiW9t+HzSE2wtV8e5cc5P6r1xMDQ==} engines: {node: '>=6.9.0'} @@ -1740,6 +1763,7 @@ packages: '@babel/helper-plugin-utils': 7.22.5 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 '@babel/plugin-transform-optional-chaining': 7.23.0(@babel/core@7.23.2) + dev: true /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.22.15(@babel/core@7.24.0): resolution: {integrity: sha512-Hyph9LseGvAeeXzikV88bczhsrLrIZqDPxO+sSmAunMPaGrBGhfMWzCPYTtiW9t+HzSE2wtV8e5cc5P6r1xMDQ==} @@ -1764,29 +1788,50 @@ packages: '@babel/plugin-transform-optional-chaining': 7.22.12(@babel/core@7.23.2) dev: true - /@babel/plugin-proposal-async-generator-functions@7.20.7(@babel/core@7.23.2): + /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-WwlxbfMNdVEpQjZmK5mhm7oSwD3dS6eU+Iwsi4Knl9wAletWem7kaRsGOG+8UEbRyqxY4SS5zvtfXwX+jMxUwQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.13.0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 + '@babel/plugin-transform-optional-chaining': 7.23.4(@babel/core@7.24.0) + + /@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.23.7(@babel/core@7.24.0): + resolution: {integrity: sha512-LlRT7HgaifEpQA1ZgLVOIJZZFVPWN5iReq/7/JixwBtwcoeVGDBD53ZV28rrsLYOZs1Y/EHhA8N/Z6aazHR8cw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-plugin-utils': 7.24.0 + + /@babel/plugin-proposal-async-generator-functions@7.20.7(@babel/core@7.24.0): resolution: {integrity: sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==} engines: {node: '>=6.9.0'} deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-async-generator-functions instead. peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.2 + '@babel/core': 7.24.0 '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.23.2) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.23.2) + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.0) + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.0) - /@babel/plugin-proposal-class-properties@7.18.6(@babel/core@7.23.2): + /@babel/plugin-proposal-class-properties@7.18.6(@babel/core@7.24.0): resolution: {integrity: sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==} engines: {node: '>=6.9.0'} deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-properties instead. peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.2 - '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.2) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 /@babel/plugin-proposal-decorators@7.23.2(@babel/core@7.23.2): resolution: {integrity: sha512-eR0gJQc830fJVGz37oKLvt9W9uUIQSAovUl0e9sJ3YeO09dlcoBVYD3CLrjCj4qHdXmfiyTyFt8yeQYSN5fxLg==} @@ -1800,16 +1845,28 @@ packages: '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.2) '@babel/helper-split-export-declaration': 7.22.6 '@babel/plugin-syntax-decorators': 7.22.10(@babel/core@7.23.2) + dev: true - /@babel/plugin-proposal-export-default-from@7.22.17(@babel/core@7.23.2): - resolution: {integrity: sha512-cop/3quQBVvdz6X5SJC6AhUv3C9DrVTM06LUEXimEdWAhCSyOJIr9NiZDU9leHZ0/aiG0Sh7Zmvaku5TWYNgbA==} + /@babel/plugin-proposal-decorators@7.24.0(@babel/core@7.24.0): + resolution: {integrity: sha512-LiT1RqZWeij7X+wGxCoYh3/3b8nVOX6/7BZ9wiQgAIyjoeQWdROaodJCgT+dwtbjHaz0r7bEbHJzjSbVfcOyjQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-export-default-from': 7.22.5(@babel/core@7.23.2) + '@babel/core': 7.24.0 + '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-decorators': 7.24.0(@babel/core@7.24.0) + + /@babel/plugin-proposal-export-default-from@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-Q23MpLZfSGZL1kU7fWqV262q65svLSCIP5kZ/JCW/rKTCm/FrLjpvEd2kfUYMVeHh4QhV/xzyoRAHWrAZJrE3Q==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-export-default-from': 7.23.3(@babel/core@7.24.0) /@babel/plugin-proposal-export-namespace-from@7.18.9(@babel/core@7.23.2): resolution: {integrity: sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==} @@ -1822,64 +1879,64 @@ packages: '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.23.2) - /@babel/plugin-proposal-nullish-coalescing-operator@7.18.6(@babel/core@7.23.2): + /@babel/plugin-proposal-nullish-coalescing-operator@7.18.6(@babel/core@7.24.0): resolution: {integrity: sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==} engines: {node: '>=6.9.0'} deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-nullish-coalescing-operator instead. peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.2) + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.0) - /@babel/plugin-proposal-numeric-separator@7.18.6(@babel/core@7.23.2): + /@babel/plugin-proposal-numeric-separator@7.18.6(@babel/core@7.24.0): resolution: {integrity: sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==} engines: {node: '>=6.9.0'} deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-numeric-separator instead. peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.2) + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.0) - /@babel/plugin-proposal-object-rest-spread@7.20.7(@babel/core@7.23.2): + /@babel/plugin-proposal-object-rest-spread@7.20.7(@babel/core@7.24.0): resolution: {integrity: sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==} engines: {node: '>=6.9.0'} deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-object-rest-spread instead. peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/compat-data': 7.23.2 - '@babel/core': 7.23.2 - '@babel/helper-compilation-targets': 7.22.15 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.2) - '@babel/plugin-transform-parameters': 7.22.15(@babel/core@7.23.2) + '@babel/compat-data': 7.23.5 + '@babel/core': 7.24.0 + '@babel/helper-compilation-targets': 7.23.6 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.24.0) - /@babel/plugin-proposal-optional-catch-binding@7.18.6(@babel/core@7.23.2): + /@babel/plugin-proposal-optional-catch-binding@7.18.6(@babel/core@7.24.0): resolution: {integrity: sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==} engines: {node: '>=6.9.0'} deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-catch-binding instead. peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.2) + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.0) - /@babel/plugin-proposal-optional-chaining@7.21.0(@babel/core@7.23.2): + /@babel/plugin-proposal-optional-chaining@7.21.0(@babel/core@7.24.0): resolution: {integrity: sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==} engines: {node: '>=6.9.0'} deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-chaining instead. peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.2) + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.0) /@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.23.2): resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==} @@ -1888,6 +1945,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.23.2 + dev: true /@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.0): resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==} @@ -1904,6 +1962,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.24.0): resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} @@ -1929,6 +1988,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.24.0): resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} @@ -1946,6 +2006,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.24.0): resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} @@ -1964,6 +2025,16 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true + + /@babel/plugin-syntax-decorators@7.24.0(@babel/core@7.24.0): + resolution: {integrity: sha512-MXW3pQCu9gUiVGzqkGqsgiINDVYXoAnrY8FYF/rmb+OfufNF0zHMpHPN4ulRrinxYT8Vk/aZJxYqOKsDECjKAw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 /@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.23.2): resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} @@ -1972,6 +2043,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.24.0): resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} @@ -1981,14 +2053,14 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.22.5 - /@babel/plugin-syntax-export-default-from@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-ODAqWWXB/yReh/jVQDag/3/tl6lgBueQkk/TcfW/59Oykm4c8a55XloX0CTk2k2VJiFWMgHby9xNX29IbCv9dQ==} + /@babel/plugin-syntax-export-default-from@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-KeENO5ck1IeZ/l2lFZNy+mpobV3D2Zy5C1YFnWm+YuY5mQiAWc4yAp13dqgguwsBsFVLh4LPCEqCa5qW13N+hw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 /@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.23.2): resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} @@ -2006,14 +2078,14 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.22.5 - /@babel/plugin-syntax-flow@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-9RdCl0i+q0QExayk2nOS7853w08yLucnnPML6EN9S8fgMPVtdLDCdx/cOQ/i44Lb9UeQX9A35yaqBBOMMZxPxQ==} + /@babel/plugin-syntax-flow@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-YZiAIpkJAwQXBJLIQbRFayR5c+gJ35Vcz3bg954k7cd73zqjvhacJuL9RbrzPz8qPmZdgqP6EUKwy0PCNhaaPA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 /@babel/plugin-syntax-import-assertions@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-rdV97N7KqsRzeNGoWUOK6yUsWarLjE5Su/Snk9IYPU9CwkWHs4t+rTGOvffTR8XGkJMTAdLfO0xVnXm8wugIJg==} @@ -2023,6 +2095,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-syntax-import-assertions@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-rdV97N7KqsRzeNGoWUOK6yUsWarLjE5Su/Snk9IYPU9CwkWHs4t+rTGOvffTR8XGkJMTAdLfO0xVnXm8wugIJg==} @@ -2033,6 +2106,15 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-syntax-import-assertions@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-lPgDSU+SJLK3xmFDTV2ZRQAiM7UuUjGidwBywFavObCiZc1BeAAcMtHJKUya92hPHO+at63JJPLygilZard8jw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-syntax-import-attributes@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-KwvoWDeNKPETmozyFE0P2rOLqh39EoQHNjqizrI5B8Vt0ZNS7M56s7dAiAqbYfiAYOuIzIh96z3iR2ktgu3tEg==} engines: {node: '>=6.9.0'} @@ -2041,6 +2123,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-syntax-import-attributes@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-KwvoWDeNKPETmozyFE0P2rOLqh39EoQHNjqizrI5B8Vt0ZNS7M56s7dAiAqbYfiAYOuIzIh96z3iR2ktgu3tEg==} @@ -2051,6 +2134,15 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-syntax-import-attributes@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-pawnE0P9g10xgoP7yKr6CK63K2FMsTE+FZidZO/1PwRdzmAPVs+HS1mAURUsgaoxammTJvULUdIkEK0gOcU2tA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.23.2): resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} peerDependencies: @@ -2058,6 +2150,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.24.0): resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} @@ -2074,6 +2167,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.24.0): resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} @@ -2091,6 +2185,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-syntax-jsx@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==} @@ -2101,6 +2196,15 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-syntax-jsx@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-EB2MELswq55OHUoRZLGg/zC7QWUKfNLpE57m/S2yr1uEneIgsTgrSzXP3NXEsMkVn76OlaVVnzN+ugObuYGwhg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.23.2): resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} peerDependencies: @@ -2108,6 +2212,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.24.0): resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} @@ -2124,6 +2229,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.24.0): resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} @@ -2140,6 +2246,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.24.0): resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} @@ -2156,6 +2263,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.24.0): resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} @@ -2172,6 +2280,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.24.0): resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} @@ -2188,6 +2297,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.24.0): resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} @@ -2205,6 +2315,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.24.0): resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} @@ -2223,6 +2334,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.24.0): resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} @@ -2241,6 +2353,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-syntax-typescript@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==} @@ -2251,6 +2364,15 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-syntax-typescript@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-9EiNjVJOMwCO+43TqoTrgQ8jMwcAd0sWyXi9RPfIsLTj4R2MADDDQXELhffaUx/uJv2AYcxBgPwH6j4TIA4ytQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.23.2): resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==} engines: {node: '>=6.9.0'} @@ -2260,6 +2382,7 @@ packages: '@babel/core': 7.23.2 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.24.0): resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==} @@ -2279,6 +2402,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-arrow-functions@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-26lTNXoVRdAnsaDXPpvCNUq+OVWEVC6bx7Vvz9rC53F2bagUWW4u4ii2+h8Fejfh7RYqPxn+libeFBBck9muEw==} @@ -2289,6 +2413,15 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-transform-arrow-functions@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-NzQcQrzaQPkaEwoTm4Mhyl8jI1huEL/WWIEvudjTCMJ9aBZNpsJbMASx7EQECtQQPS/DcnFpo0FIh3LvEO9cxQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-transform-async-generator-functions@7.22.11(@babel/core@7.23.2): resolution: {integrity: sha512-0pAlmeRJn6wU84zzZsEOx1JV1Jf8fqO9ok7wofIJwUnplYo247dcd24P+cMJht7ts9xkzdtB0EPHmOb7F+KzXw==} engines: {node: '>=6.9.0'} @@ -2313,6 +2446,7 @@ packages: '@babel/helper-plugin-utils': 7.22.5 '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.23.2) '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.23.2) + dev: true /@babel/plugin-transform-async-generator-functions@7.23.2(@babel/core@7.24.0): resolution: {integrity: sha512-BBYVGxbDVHfoeXbOwcagAkOQAm9NxoTdMGfTqghu1GrvadSaw6iW3Je6IcL5PNOw8VwjxqBECXy50/iCQSY/lQ==} @@ -2326,6 +2460,18 @@ packages: '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.0) '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.0) + /@babel/plugin-transform-async-generator-functions@7.23.9(@babel/core@7.24.0): + resolution: {integrity: sha512-8Q3veQEDGe14dTYuwagbRtwxQDnytyg1JFu4/HwEMETeofocrB0U0ejBJIXoeG/t2oXZ8kzCyI0ZZfbT80VFNQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.0) + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.0) + /@babel/plugin-transform-async-to-generator@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==} engines: {node: '>=6.9.0'} @@ -2336,6 +2482,7 @@ packages: '@babel/helper-module-imports': 7.22.15 '@babel/helper-plugin-utils': 7.22.5 '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.23.2) + dev: true /@babel/plugin-transform-async-to-generator@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==} @@ -2348,6 +2495,17 @@ packages: '@babel/helper-plugin-utils': 7.22.5 '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.0) + /@babel/plugin-transform-async-to-generator@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-A7LFsKi4U4fomjqXJlZg/u0ft/n8/7n7lpffUP/ZULx/DtV9SGlNKZolHH6PE8Xl1ngCc0M11OaeZptXVkfKSw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-module-imports': 7.22.15 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.0) + /@babel/plugin-transform-block-scoped-functions@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-tdXZ2UdknEKQWKJP1KMNmuF5Lx3MymtMN/pvA+p/VEkhK8jVcQ1fzSy8KM9qRYhAf2/lV33hoMPKI/xaI9sADA==} engines: {node: '>=6.9.0'} @@ -2356,6 +2514,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-block-scoped-functions@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-tdXZ2UdknEKQWKJP1KMNmuF5Lx3MymtMN/pvA+p/VEkhK8jVcQ1fzSy8KM9qRYhAf2/lV33hoMPKI/xaI9sADA==} @@ -2366,6 +2525,15 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-transform-block-scoped-functions@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-vI+0sIaPIO6CNuM9Kk5VmXcMVRiOpDh7w2zZt9GXzmE/9KD70CUEVhvPR/etAeNK/FAEkhxQtXOzVF3EuRL41A==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-transform-block-scoping@7.22.10(@babel/core@7.23.2): resolution: {integrity: sha512-1+kVpGAOOI1Albt6Vse7c8pHzcZQdQKW+wJH+g8mCaszOdDVwRXa/slHPqIw+oJAJANTKDMuM2cBdV0Dg618Vg==} engines: {node: '>=6.9.0'} @@ -2384,6 +2552,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-block-scoping@7.23.0(@babel/core@7.24.0): resolution: {integrity: sha512-cOsrbmIOXmf+5YbL99/S49Y3j46k/T16b9ml8bm9lP6N9US5iQ2yBK7gpui1pg0V/WMcXdkfKbTb7HXq9u+v4g==} @@ -2394,6 +2563,15 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-transform-block-scoping@7.23.4(@babel/core@7.24.0): + resolution: {integrity: sha512-0QqbP6B6HOh7/8iNR4CQU2Th/bbRtBp4KS9vcaZd1fZ0wSh5Fyssg0UCIHwxh+ka+pNDREbVLQnHCMHKZfPwfw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-transform-class-properties@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-nDkQ0NfkOhPTq8YCLiWNxp1+f9fCobEjCb0n8WdbNUBc4IB5V7P1QnX9IjpSoquKrXF5SKojHleVNs2vGeHCHQ==} engines: {node: '>=6.9.0'} @@ -2403,6 +2581,7 @@ packages: '@babel/core': 7.23.2 '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-class-properties@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-nDkQ0NfkOhPTq8YCLiWNxp1+f9fCobEjCb0n8WdbNUBc4IB5V7P1QnX9IjpSoquKrXF5SKojHleVNs2vGeHCHQ==} @@ -2414,6 +2593,16 @@ packages: '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-transform-class-properties@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-uM+AN8yCIjDPccsKGlw271xjJtGii+xQIF/uMPS8H15L12jZTsLfF4o5vNO7d/oUguOyfdikHGc/yi9ge4SGIg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-transform-class-static-block@7.22.11(@babel/core@7.23.2): resolution: {integrity: sha512-GMM8gGmqI7guS/llMFk1bJDkKfn3v3C4KHK9Yg1ey5qcHcOlKb0QvcMrgzvxo+T03/4szNh5lghY+fEC98Kq9g==} engines: {node: '>=6.9.0'} @@ -2424,6 +2613,7 @@ packages: '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.23.2) + dev: true /@babel/plugin-transform-class-static-block@7.22.11(@babel/core@7.24.0): resolution: {integrity: sha512-GMM8gGmqI7guS/llMFk1bJDkKfn3v3C4KHK9Yg1ey5qcHcOlKb0QvcMrgzvxo+T03/4szNh5lghY+fEC98Kq9g==} @@ -2436,6 +2626,17 @@ packages: '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.0) + /@babel/plugin-transform-class-static-block@7.23.4(@babel/core@7.24.0): + resolution: {integrity: sha512-nsWu/1M+ggti1SOALj3hfx5FXzAY06fwPJsUZD4/A5e1bWi46VUIWtD+kOX6/IdhXGsXBWllLFDSnqSCdUNydQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.12.0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.0) + /@babel/plugin-transform-classes@7.22.15(@babel/core@7.23.2): resolution: {integrity: sha512-VbbC3PGjBdE0wAWDdHM9G8Gm977pnYI0XpqMd6LrKISj8/DJXEsWqgRuTYaNE9Bv0JGhTZUzHDlMk18IpOuoqw==} engines: {node: '>=6.9.0'} @@ -2452,6 +2653,7 @@ packages: '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.2) '@babel/helper-split-export-declaration': 7.22.6 globals: 11.12.0 + dev: true /@babel/plugin-transform-classes@7.22.15(@babel/core@7.24.0): resolution: {integrity: sha512-VbbC3PGjBdE0wAWDdHM9G8Gm977pnYI0XpqMd6LrKISj8/DJXEsWqgRuTYaNE9Bv0JGhTZUzHDlMk18IpOuoqw==} @@ -2488,6 +2690,22 @@ packages: globals: 11.12.0 dev: true + /@babel/plugin-transform-classes@7.23.8(@babel/core@7.24.0): + resolution: {integrity: sha512-yAYslGsY1bX6Knmg46RjiCiNSwJKv2IUC8qOdYKqMMr0491SXFhcHqOdRDeCRohOOIzwN/90C6mQ9qAKgrP7dg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-compilation-targets': 7.23.6 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-function-name': 7.23.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-replace-supers': 7.22.20(@babel/core@7.24.0) + '@babel/helper-split-export-declaration': 7.22.6 + globals: 11.12.0 + /@babel/plugin-transform-computed-properties@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-4GHWBgRf0krxPX+AaPtgBAlTgTeZmqDynokHOX7aqqAB4tHs3U2Y02zH6ETFdLZGcg9UQSD1WCmkVrE9ErHeOg==} engines: {node: '>=6.9.0'} @@ -2497,6 +2715,7 @@ packages: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 '@babel/template': 7.22.15 + dev: true /@babel/plugin-transform-computed-properties@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-4GHWBgRf0krxPX+AaPtgBAlTgTeZmqDynokHOX7aqqAB4tHs3U2Y02zH6ETFdLZGcg9UQSD1WCmkVrE9ErHeOg==} @@ -2508,6 +2727,16 @@ packages: '@babel/helper-plugin-utils': 7.22.5 '@babel/template': 7.22.15 + /@babel/plugin-transform-computed-properties@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-dTj83UVTLw/+nbiHqQSFdwO9CbTtwq1DsDqm3CUEtDrZNET5rT5E6bIdTlOftDTDLMYxvxHNEYO4B9SLl8SLZw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/template': 7.24.0 + /@babel/plugin-transform-destructuring@7.22.10(@babel/core@7.23.2): resolution: {integrity: sha512-dPJrL0VOyxqLM9sritNbMSGx/teueHF/htMKrPT7DNxccXxRDPYqlgPFFdr8u+F+qUZOkZoXue/6rL5O5GduEw==} engines: {node: '>=6.9.0'} @@ -2526,6 +2755,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-destructuring@7.23.0(@babel/core@7.24.0): resolution: {integrity: sha512-vaMdgNXFkYrB+8lbgniSYWHsgqK5gjaMNcc84bMIOMRLH0L9AqYq3hwMdvnyqj1OPqea8UtjPEuS/DCenah1wg==} @@ -2536,6 +2766,15 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-transform-destructuring@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-n225npDqjDIr967cMScVKHXJs7rout1q+tt50inyBCPkyZ8KxeI6d+GIbSBTT/w/9WdlWDOej3V9HE5Lgk57gw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-transform-dotall-regex@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-5/Yk9QxCQCl+sOIB1WelKnVRxTJDSAIxtJLL2/pqL14ZVlbH0fUQUZa/T5/UnQtBNgghR7mfB8ERBKyKPCi7Vw==} engines: {node: '>=6.9.0'} @@ -2545,6 +2784,7 @@ packages: '@babel/core': 7.23.2 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-dotall-regex@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-5/Yk9QxCQCl+sOIB1WelKnVRxTJDSAIxtJLL2/pqL14ZVlbH0fUQUZa/T5/UnQtBNgghR7mfB8ERBKyKPCi7Vw==} @@ -2556,6 +2796,16 @@ packages: '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-transform-dotall-regex@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-vgnFYDHAKzFaTVp+mneDsIEbnJ2Np/9ng9iviHw3P/KVcgONxpNULEW/51Z/BaFojG2GI2GwwXck5uV1+1NOYQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-transform-duplicate-keys@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-dEnYD+9BBgld5VBXHnF/DbYGp3fqGMsyxKbtD1mDyIA7AkTSpKXFhCVuj/oQVOoALfBs77DudA0BE4d5mcpmqw==} engines: {node: '>=6.9.0'} @@ -2564,6 +2814,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-duplicate-keys@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-dEnYD+9BBgld5VBXHnF/DbYGp3fqGMsyxKbtD1mDyIA7AkTSpKXFhCVuj/oQVOoALfBs77DudA0BE4d5mcpmqw==} @@ -2574,6 +2825,15 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-transform-duplicate-keys@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-RrqQ+BQmU3Oyav3J+7/myfvRCq7Tbz+kKLLshUmMwNlDHExbGL7ARhajvoBJEvc+fCguPPu887N+3RRXBVKZUA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-transform-dynamic-import@7.22.11(@babel/core@7.23.2): resolution: {integrity: sha512-g/21plo58sfteWjaO0ZNVb+uEOkJNjAaHhbejrnBmu011l/eNDScmkbjCC3l4FKb10ViaGU4aOkFznSu2zRHgA==} engines: {node: '>=6.9.0'} @@ -2583,6 +2843,7 @@ packages: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.23.2) + dev: true /@babel/plugin-transform-dynamic-import@7.22.11(@babel/core@7.24.0): resolution: {integrity: sha512-g/21plo58sfteWjaO0ZNVb+uEOkJNjAaHhbejrnBmu011l/eNDScmkbjCC3l4FKb10ViaGU4aOkFznSu2zRHgA==} @@ -2594,6 +2855,16 @@ packages: '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.0) + /@babel/plugin-transform-dynamic-import@7.23.4(@babel/core@7.24.0): + resolution: {integrity: sha512-V6jIbLhdJK86MaLh4Jpghi8ho5fGzt3imHOBu/x0jlBaPYqDoWz4RDXjmMOfnh+JWNaQleEAByZLV0QzBT4YQQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.0) + /@babel/plugin-transform-exponentiation-operator@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-vIpJFNM/FjZ4rh1myqIya9jXwrwwgFRHPjT3DkUA9ZLHuzox8jiXkOLvwm1H+PQIP3CqfC++WPKeuDi0Sjdj1g==} engines: {node: '>=6.9.0'} @@ -2603,6 +2874,7 @@ packages: '@babel/core': 7.23.2 '@babel/helper-builder-binary-assignment-operator-visitor': 7.22.15 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-exponentiation-operator@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-vIpJFNM/FjZ4rh1myqIya9jXwrwwgFRHPjT3DkUA9ZLHuzox8jiXkOLvwm1H+PQIP3CqfC++WPKeuDi0Sjdj1g==} @@ -2614,6 +2886,16 @@ packages: '@babel/helper-builder-binary-assignment-operator-visitor': 7.22.15 '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-transform-exponentiation-operator@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-5fhCsl1odX96u7ILKHBj4/Y8vipoqwsJMh4csSA8qFfxrZDEA4Ssku2DyNvMJSmZNOEBT750LfFPbtrnTP90BQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-builder-binary-assignment-operator-visitor': 7.22.15 + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-transform-export-namespace-from@7.22.11(@babel/core@7.23.2): resolution: {integrity: sha512-xa7aad7q7OiT8oNZ1mU7NrISjlSkVdMbNxn9IuLZyL9AJEhs1Apba3I+u5riX1dIkdptP5EKDG5XDPByWxtehw==} engines: {node: '>=6.9.0'} @@ -2623,6 +2905,7 @@ packages: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.23.2) + dev: true /@babel/plugin-transform-export-namespace-from@7.22.11(@babel/core@7.24.0): resolution: {integrity: sha512-xa7aad7q7OiT8oNZ1mU7NrISjlSkVdMbNxn9IuLZyL9AJEhs1Apba3I+u5riX1dIkdptP5EKDG5XDPByWxtehw==} @@ -2634,15 +2917,25 @@ packages: '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.0) - /@babel/plugin-transform-flow-strip-types@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-tujNbZdxdG0/54g/oua8ISToaXTFBf8EnSb5PgQSciIXWOWKX3S4+JR7ZE9ol8FZwf9kxitzkGQ+QWeov/mCiA==} + /@babel/plugin-transform-export-namespace-from@7.23.4(@babel/core@7.24.0): + resolution: {integrity: sha512-GzuSBcKkx62dGzZI1WVgTWvkkz84FZO5TC5T8dl/Tht/rAla6Dg/Mz9Yhypg+ezVACf/rgDuQt3kbWEv7LdUDQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-flow': 7.22.5(@babel/core@7.23.2) + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.0) + + /@babel/plugin-transform-flow-strip-types@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-26/pQTf9nQSNVJCrLB1IkHUKyPxR+lMrH2QDPG89+Znu9rAMbtrybdbWeE9bb7gzjmE5iXHEY+e0HUwM6Co93Q==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-flow': 7.23.3(@babel/core@7.24.0) /@babel/plugin-transform-for-of@7.22.15(@babel/core@7.23.2): resolution: {integrity: sha512-me6VGeHsx30+xh9fbDLLPi0J1HzmeIIyenoOQHuw2D4m2SAU3NrspX5XxJLBpqn5yrLzrlw2Iy3RA//Bx27iOA==} @@ -2652,6 +2945,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-for-of@7.22.15(@babel/core@7.24.0): resolution: {integrity: sha512-me6VGeHsx30+xh9fbDLLPi0J1HzmeIIyenoOQHuw2D4m2SAU3NrspX5XxJLBpqn5yrLzrlw2Iy3RA//Bx27iOA==} @@ -2672,6 +2966,16 @@ packages: '@babel/helper-plugin-utils': 7.22.5 dev: true + /@babel/plugin-transform-for-of@7.23.6(@babel/core@7.24.0): + resolution: {integrity: sha512-aYH4ytZ0qSuBbpfhuofbg/e96oQ7U2w1Aw/UQmKT+1l39uEhUPoFS3fHevDc1G0OvewyDudfMKY1OulczHzWIw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 + /@babel/plugin-transform-function-name@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-UIzQNMS0p0HHiQm3oelztj+ECwFnj+ZRV4KnguvlsD2of1whUeM6o7wGNj6oLwcDoAXQ8gEqfgC24D+VdIcevg==} engines: {node: '>=6.9.0'} @@ -2682,6 +2986,7 @@ packages: '@babel/helper-compilation-targets': 7.22.15 '@babel/helper-function-name': 7.23.0 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-function-name@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-UIzQNMS0p0HHiQm3oelztj+ECwFnj+ZRV4KnguvlsD2of1whUeM6o7wGNj6oLwcDoAXQ8gEqfgC24D+VdIcevg==} @@ -2694,6 +2999,17 @@ packages: '@babel/helper-function-name': 7.23.0 '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-transform-function-name@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-I1QXp1LxIvt8yLaib49dRW5Okt7Q4oaxao6tFVKS/anCdEOMtYwWVKoiOA1p34GOWIZjUK0E+zCp7+l1pfQyiw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-compilation-targets': 7.23.6 + '@babel/helper-function-name': 7.23.0 + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-transform-json-strings@7.22.11(@babel/core@7.23.2): resolution: {integrity: sha512-CxT5tCqpA9/jXFlme9xIBCc5RPtdDq3JpkkhgHQqtDdiTnTI0jtZ0QzXhr5DILeYifDPp2wvY2ad+7+hLMW5Pw==} engines: {node: '>=6.9.0'} @@ -2703,6 +3019,7 @@ packages: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.23.2) + dev: true /@babel/plugin-transform-json-strings@7.22.11(@babel/core@7.24.0): resolution: {integrity: sha512-CxT5tCqpA9/jXFlme9xIBCc5RPtdDq3JpkkhgHQqtDdiTnTI0jtZ0QzXhr5DILeYifDPp2wvY2ad+7+hLMW5Pw==} @@ -2714,6 +3031,16 @@ packages: '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.0) + /@babel/plugin-transform-json-strings@7.23.4(@babel/core@7.24.0): + resolution: {integrity: sha512-81nTOqM1dMwZ/aRXQ59zVubN9wHGqk6UtqRK+/q+ciXmRy8fSolhGVvG09HHRGo4l6fr/c4ZhXUQH0uFW7PZbg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.0) + /@babel/plugin-transform-literals@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-fTLj4D79M+mepcw3dgFBTIDYpbcB9Sm0bpm4ppXPaO+U+PKFFyV9MGRvS0gvGw62sd10kT5lRMKXAADb9pWy8g==} engines: {node: '>=6.9.0'} @@ -2722,6 +3049,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-literals@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-fTLj4D79M+mepcw3dgFBTIDYpbcB9Sm0bpm4ppXPaO+U+PKFFyV9MGRvS0gvGw62sd10kT5lRMKXAADb9pWy8g==} @@ -2732,6 +3060,15 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-transform-literals@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-wZ0PIXRxnwZvl9AYpqNUxpZ5BiTGrYt7kueGQ+N5FiQ7RCOD4cm8iShd6S6ggfVIWaJf2EMk8eRzAh52RfP4rQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-transform-logical-assignment-operators@7.22.11(@babel/core@7.23.2): resolution: {integrity: sha512-qQwRTP4+6xFCDV5k7gZBF3C31K34ut0tbEcTKxlX/0KXxm9GLcO14p570aWxFvVzx6QAfPgq7gaeIHXJC8LswQ==} engines: {node: '>=6.9.0'} @@ -2741,6 +3078,7 @@ packages: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.23.2) + dev: true /@babel/plugin-transform-logical-assignment-operators@7.22.11(@babel/core@7.24.0): resolution: {integrity: sha512-qQwRTP4+6xFCDV5k7gZBF3C31K34ut0tbEcTKxlX/0KXxm9GLcO14p570aWxFvVzx6QAfPgq7gaeIHXJC8LswQ==} @@ -2752,6 +3090,16 @@ packages: '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.0) + /@babel/plugin-transform-logical-assignment-operators@7.23.4(@babel/core@7.24.0): + resolution: {integrity: sha512-Mc/ALf1rmZTP4JKKEhUwiORU+vcfarFVLfcFiolKUo6sewoxSEgl36ak5t+4WamRsNr6nzjZXQjM35WsU+9vbg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.0) + /@babel/plugin-transform-member-expression-literals@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-RZEdkNtzzYCFl9SE9ATaUMTj2hqMb4StarOJLrZRbqqU4HSBE7UlBw9WBWQiDzrJZJdUWiMTVDI6Gv/8DPvfew==} engines: {node: '>=6.9.0'} @@ -2760,6 +3108,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-member-expression-literals@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-RZEdkNtzzYCFl9SE9ATaUMTj2hqMb4StarOJLrZRbqqU4HSBE7UlBw9WBWQiDzrJZJdUWiMTVDI6Gv/8DPvfew==} @@ -2770,6 +3119,15 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-transform-member-expression-literals@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-sC3LdDBDi5x96LA+Ytekz2ZPk8i/Ck+DEuDbRAll5rknJ5XRTSaPKEYwomLcs1AA8wg9b3KjIQRsnApj+q51Ag==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-transform-modules-amd@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-R+PTfLTcYEmb1+kK7FNkhQ1gP4KgjpSO6HfH9+f8/yfp2Nt3ggBjiVpRwmwTlfqZLafYKJACy36yDXlEmI9HjQ==} engines: {node: '>=6.9.0'} @@ -2790,6 +3148,7 @@ packages: '@babel/core': 7.23.2 '@babel/helper-module-transforms': 7.23.0(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-modules-amd@7.23.0(@babel/core@7.24.0): resolution: {integrity: sha512-xWT5gefv2HGSm4QHtgc1sYPbseOyf+FFDo2JbpE25GWl5BqTGO9IMwTYJRoIdjsF85GE+VegHxSCUt5EvoYTAw==} @@ -2801,6 +3160,16 @@ packages: '@babel/helper-module-transforms': 7.23.0(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-transform-modules-amd@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-vJYQGxeKM4t8hYCKVBlZX/gtIY2I7mRGFNcm85sgXGMTBcoV3QdVtdpbcWEbzbfUIUZKwvgFT82mRvaQIebZzw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-transform-modules-commonjs@7.22.11(@babel/core@7.23.2): resolution: {integrity: sha512-o2+bg7GDS60cJMgz9jWqRUsWkMzLCxp+jFDeDUT5sjRlAxcJWZ2ylNdI7QQ2+CH5hWu7OnN+Cv3htt7AkSf96g==} engines: {node: '>=6.9.0'} @@ -2835,6 +3204,17 @@ packages: '@babel/helper-plugin-utils': 7.22.5 '@babel/helper-simple-access': 7.22.5 + /@babel/plugin-transform-modules-commonjs@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-aVS0F65LKsdNOtcz6FRCpE4OgsP2OFnW46qNxNIX9h3wuzaNcSQsJysuMwqSibC98HPrf2vCgtxKNwS0DAlgcA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-simple-access': 7.22.5 + /@babel/plugin-transform-modules-systemjs@7.22.11(@babel/core@7.23.2): resolution: {integrity: sha512-rIqHmHoMEOhI3VkVf5jQ15l539KrwhzqcBO6wdCNWPWc/JWt9ILNYNUssbRpeq0qWns8svuw8LnMNCvWBIJ8wA==} engines: {node: '>=6.9.0'} @@ -2859,6 +3239,7 @@ packages: '@babel/helper-module-transforms': 7.23.0(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 '@babel/helper-validator-identifier': 7.22.20 + dev: true /@babel/plugin-transform-modules-systemjs@7.23.0(@babel/core@7.24.0): resolution: {integrity: sha512-qBej6ctXZD2f+DhlOC9yO47yEYgUh5CZNz/aBoH4j/3NOlRfJXJbY7xDQCqQVf9KbrqGzIWER1f23doHGrIHFg==} @@ -2872,6 +3253,18 @@ packages: '@babel/helper-plugin-utils': 7.22.5 '@babel/helper-validator-identifier': 7.22.20 + /@babel/plugin-transform-modules-systemjs@7.23.9(@babel/core@7.24.0): + resolution: {integrity: sha512-KDlPRM6sLo4o1FkiSlXoAa8edLXFsKKIda779fbLrvmeuc3itnjCtaO6RrtoaANsIJANj+Vk1zqbZIMhkCAHVw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-hoist-variables': 7.22.5 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-validator-identifier': 7.22.20 + /@babel/plugin-transform-modules-umd@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-+S6kzefN/E1vkSsKx8kmQuqeQsvCKCd1fraCM7zXm4SFoggI099Tr4G8U81+5gtMdUeMQ4ipdQffbKLX0/7dBQ==} engines: {node: '>=6.9.0'} @@ -2881,6 +3274,7 @@ packages: '@babel/core': 7.23.2 '@babel/helper-module-transforms': 7.23.0(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-modules-umd@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-+S6kzefN/E1vkSsKx8kmQuqeQsvCKCd1fraCM7zXm4SFoggI099Tr4G8U81+5gtMdUeMQ4ipdQffbKLX0/7dBQ==} @@ -2892,6 +3286,16 @@ packages: '@babel/helper-module-transforms': 7.23.0(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-transform-modules-umd@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-zHsy9iXX2nIsCBFPud3jKn1IRPWg3Ing1qOZgeKV39m1ZgIdpJqvlWVeiHBZC6ITRG0MfskhYe9cLgntfSFPIg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-transform-named-capturing-groups-regex@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==} engines: {node: '>=6.9.0'} @@ -2901,6 +3305,7 @@ packages: '@babel/core': 7.23.2 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-named-capturing-groups-regex@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==} @@ -2920,6 +3325,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-new-target@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-AsF7K0Fx/cNKVyk3a+DW0JLo+Ua598/NxMRvxDnkpCIGFh43+h/v2xyhRUYf6oD8gE4QtL83C7zZVghMjHd+iw==} @@ -2930,6 +3336,15 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-transform-new-target@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-YJ3xKqtJMAT5/TIZnpAR3I+K+WaDowYbN3xyxI8zxx/Gsypwf9B9h0VB+1Nh6ACAAPRS5NSRje0uVv5i79HYGQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-transform-nullish-coalescing-operator@7.22.11(@babel/core@7.23.2): resolution: {integrity: sha512-YZWOw4HxXrotb5xsjMJUDlLgcDXSfO9eCmdl1bgW4+/lAGdkjaEvOnQ4p5WKKdUgSzO39dgPl0pTnfxm0OAXcg==} engines: {node: '>=6.9.0'} @@ -2939,6 +3354,7 @@ packages: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.2) + dev: true /@babel/plugin-transform-nullish-coalescing-operator@7.22.11(@babel/core@7.24.0): resolution: {integrity: sha512-YZWOw4HxXrotb5xsjMJUDlLgcDXSfO9eCmdl1bgW4+/lAGdkjaEvOnQ4p5WKKdUgSzO39dgPl0pTnfxm0OAXcg==} @@ -2950,6 +3366,16 @@ packages: '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.0) + /@babel/plugin-transform-nullish-coalescing-operator@7.23.4(@babel/core@7.24.0): + resolution: {integrity: sha512-jHE9EVVqHKAQx+VePv5LLGHjmHSJR76vawFPTdlxR/LVJPfOEGxREQwQfjuZEOPTwG92X3LINSh3M40Rv4zpVA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.0) + /@babel/plugin-transform-numeric-separator@7.22.11(@babel/core@7.23.2): resolution: {integrity: sha512-3dzU4QGPsILdJbASKhF/V2TVP+gJya1PsueQCxIPCEcerqF21oEcrob4mzjsp2Py/1nLfF5m+xYNMDpmA8vffg==} engines: {node: '>=6.9.0'} @@ -2959,6 +3385,7 @@ packages: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.2) + dev: true /@babel/plugin-transform-numeric-separator@7.22.11(@babel/core@7.24.0): resolution: {integrity: sha512-3dzU4QGPsILdJbASKhF/V2TVP+gJya1PsueQCxIPCEcerqF21oEcrob4mzjsp2Py/1nLfF5m+xYNMDpmA8vffg==} @@ -2970,6 +3397,16 @@ packages: '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.0) + /@babel/plugin-transform-numeric-separator@7.23.4(@babel/core@7.24.0): + resolution: {integrity: sha512-mps6auzgwjRrwKEZA05cOwuDc9FAzoyFS4ZsG/8F43bTLf/TgkJg7QXOrPO1JO599iA3qgK9MXdMGOEC8O1h6Q==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.0) + /@babel/plugin-transform-object-rest-spread@7.22.11(@babel/core@7.23.2): resolution: {integrity: sha512-nX8cPFa6+UmbepISvlf5jhQyaC7ASs/7UxHmMkuJ/k5xSHvDPPaibMo+v3TXwU/Pjqhep/nFNpd3zn4YR59pnw==} engines: {node: '>=6.9.0'} @@ -2996,6 +3433,7 @@ packages: '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.2) '@babel/plugin-transform-parameters': 7.22.15(@babel/core@7.23.2) + dev: true /@babel/plugin-transform-object-rest-spread@7.22.15(@babel/core@7.24.0): resolution: {integrity: sha512-fEB+I1+gAmfAyxZcX1+ZUwLeAuuf8VIg67CTznZE0MqVFumWkh8xWtn58I4dxdVf080wn7gzWoF8vndOViJe9Q==} @@ -3010,6 +3448,19 @@ packages: '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.0) '@babel/plugin-transform-parameters': 7.22.15(@babel/core@7.24.0) + /@babel/plugin-transform-object-rest-spread@7.24.0(@babel/core@7.24.0): + resolution: {integrity: sha512-y/yKMm7buHpFFXfxVFS4Vk1ToRJDilIa6fKRioB9Vjichv58TDGXTvqV0dN7plobAmTW5eSEGXDngE+Mm+uO+w==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/compat-data': 7.23.5 + '@babel/core': 7.24.0 + '@babel/helper-compilation-targets': 7.23.6 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.24.0) + /@babel/plugin-transform-object-super@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-klXqyaT9trSjIUrcsYIfETAzmOEZL3cBYqOYLJxBHfMFFggmXOv+NYSX/Jbs9mzMVESw/WycLFPRx8ba/b2Ipw==} engines: {node: '>=6.9.0'} @@ -3019,6 +3470,7 @@ packages: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.2) + dev: true /@babel/plugin-transform-object-super@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-klXqyaT9trSjIUrcsYIfETAzmOEZL3cBYqOYLJxBHfMFFggmXOv+NYSX/Jbs9mzMVESw/WycLFPRx8ba/b2Ipw==} @@ -3030,6 +3482,16 @@ packages: '@babel/helper-plugin-utils': 7.22.5 '@babel/helper-replace-supers': 7.22.20(@babel/core@7.24.0) + /@babel/plugin-transform-object-super@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-BwQ8q0x2JG+3lxCVFohg+KbQM7plfpBwThdW9A6TMtWwLsbDA01Ek2Zb/AgDN39BiZsExm4qrXxjk+P1/fzGrA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-replace-supers': 7.22.20(@babel/core@7.24.0) + /@babel/plugin-transform-optional-catch-binding@7.22.11(@babel/core@7.23.2): resolution: {integrity: sha512-rli0WxesXUeCJnMYhzAglEjLWVDF6ahb45HuprcmQuLidBJFWjNnOzssk2kuc6e33FlLaiZhG/kUIzUMWdBKaQ==} engines: {node: '>=6.9.0'} @@ -3039,6 +3501,7 @@ packages: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.2) + dev: true /@babel/plugin-transform-optional-catch-binding@7.22.11(@babel/core@7.24.0): resolution: {integrity: sha512-rli0WxesXUeCJnMYhzAglEjLWVDF6ahb45HuprcmQuLidBJFWjNnOzssk2kuc6e33FlLaiZhG/kUIzUMWdBKaQ==} @@ -3050,6 +3513,16 @@ packages: '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.0) + /@babel/plugin-transform-optional-catch-binding@7.23.4(@babel/core@7.24.0): + resolution: {integrity: sha512-XIq8t0rJPHf6Wvmbn9nFxU6ao4c7WhghTR5WyV8SrJfUFzyxhCm4nhC+iAp3HFhbAKLfYpgzhJ6t4XCtVwqO5A==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.0) + /@babel/plugin-transform-optional-chaining@7.22.12(@babel/core@7.23.2): resolution: {integrity: sha512-7XXCVqZtyFWqjDsYDY4T45w4mlx1rf7aOgkc/Ww76xkgBiOlmjPkx36PBLHa1k1rwWvVgYMPsbuVnIamx2ZQJw==} engines: {node: '>=6.9.0'} @@ -3072,6 +3545,7 @@ packages: '@babel/helper-plugin-utils': 7.22.5 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.2) + dev: true /@babel/plugin-transform-optional-chaining@7.23.0(@babel/core@7.24.0): resolution: {integrity: sha512-sBBGXbLJjxTzLBF5rFWaikMnOGOk/BmK6vVByIdEggZ7Vn6CvWXZyRkkLFK6WE0IF8jSliyOkUN6SScFgzCM0g==} @@ -3084,6 +3558,17 @@ packages: '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.0) + /@babel/plugin-transform-optional-chaining@7.23.4(@babel/core@7.24.0): + resolution: {integrity: sha512-ZU8y5zWOfjM5vZ+asjgAPwDaBjJzgufjES89Rs4Lpq63O300R/kOz30WCLo6BxxX6QVEilwSlpClnG5cZaikTA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.0) + /@babel/plugin-transform-parameters@7.22.15(@babel/core@7.23.2): resolution: {integrity: sha512-hjk7qKIqhyzhhUvRT683TYQOFa/4cQKwQy7ALvTpODswN40MljzNDa0YldevS6tGbxwaEKVn502JmY0dP7qEtQ==} engines: {node: '>=6.9.0'} @@ -3092,6 +3577,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-parameters@7.22.15(@babel/core@7.24.0): resolution: {integrity: sha512-hjk7qKIqhyzhhUvRT683TYQOFa/4cQKwQy7ALvTpODswN40MljzNDa0YldevS6tGbxwaEKVn502JmY0dP7qEtQ==} @@ -3112,6 +3598,15 @@ packages: '@babel/helper-plugin-utils': 7.22.5 dev: true + /@babel/plugin-transform-parameters@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-09lMt6UsUb3/34BbECKVbVwrT9bO6lILWln237z7sLaWnMsTi7Yc9fhX5DLpkJzAGfaReXI22wP41SZmnAA3Vw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-transform-private-methods@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-PPjh4gyrQnGe97JTalgRGMuU4icsZFnWkzicB/fUtzlKUqvsWBKEpPPfr5a2JiyirZkHxnAqkQMO5Z5B2kK3fA==} engines: {node: '>=6.9.0'} @@ -3121,6 +3616,7 @@ packages: '@babel/core': 7.23.2 '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-private-methods@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-PPjh4gyrQnGe97JTalgRGMuU4icsZFnWkzicB/fUtzlKUqvsWBKEpPPfr5a2JiyirZkHxnAqkQMO5Z5B2kK3fA==} @@ -3132,6 +3628,16 @@ packages: '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-transform-private-methods@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-UzqRcRtWsDMTLrRWFvUBDwmw06tCQH9Rl1uAjfh6ijMSmGYQ+fpdB+cnqRC8EMh5tuuxSv0/TejGL+7vyj+50g==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-transform-private-property-in-object@7.22.11(@babel/core@7.23.2): resolution: {integrity: sha512-sSCbqZDBKHetvjSwpyWzhuHkmW5RummxJBVbYLkGkaiTOWGxml7SXt0iWa03bzxFIx7wOj3g/ILRd0RcJKBeSQ==} engines: {node: '>=6.9.0'} @@ -3143,6 +3649,7 @@ packages: '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.23.2) + dev: true /@babel/plugin-transform-private-property-in-object@7.22.11(@babel/core@7.24.0): resolution: {integrity: sha512-sSCbqZDBKHetvjSwpyWzhuHkmW5RummxJBVbYLkGkaiTOWGxml7SXt0iWa03bzxFIx7wOj3g/ILRd0RcJKBeSQ==} @@ -3156,6 +3663,18 @@ packages: '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.0) + /@babel/plugin-transform-private-property-in-object@7.23.4(@babel/core@7.24.0): + resolution: {integrity: sha512-9G3K1YqTq3F4Vt88Djx1UZ79PDyj+yKRnUy7cZGSMe+a7jkwD259uKKuUzQlPkGam7R+8RJwh5z4xO27fA1o2A==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.0) + /@babel/plugin-transform-property-literals@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-TiOArgddK3mK/x1Qwf5hay2pxI6wCZnvQqrFSqbtg1GLl2JcNMitVH/YnqjP+M31pLUeTfzY1HAXFDnUBV30rQ==} engines: {node: '>=6.9.0'} @@ -3164,6 +3683,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-property-literals@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-TiOArgddK3mK/x1Qwf5hay2pxI6wCZnvQqrFSqbtg1GLl2JcNMitVH/YnqjP+M31pLUeTfzY1HAXFDnUBV30rQ==} @@ -3174,6 +3694,15 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-transform-property-literals@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-jR3Jn3y7cZp4oEWPFAlRsSWjxKe4PZILGBSd4nis1TsC5qeSpb+nrtihJuDhNI7QHiVbUaiXa0X2RZY3/TI6Nw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-transform-react-constant-elements@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-BF5SXoO+nX3h5OhlN78XbbDrBOffv+AxPP2ENaJOVqjWCgBDeOY3WcaUcddutGSfoap+5NEQ/q/4I3WZIvgkXA==} engines: {node: '>=6.9.0'} @@ -3201,6 +3730,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-react-display-name@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-PVk3WPYudRF5z4GKMEYUrLjPl38fJSKNaEOkFuoprioowGuWN6w2RKznuFNSlJx7pzzXXStPUnNSOEO0jL5EVw==} @@ -3211,6 +3741,15 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-transform-react-display-name@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-GnvhtVfA2OAtzdX58FJxU19rhoGeQzyVndw3GgtdECQvQFXPEZIOVULHVZGAYmOgmqjXpVpfocAbSjh99V/Fqw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-transform-react-jsx-development@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-bDhuzwWMuInwCYeDeMzyi7TaBgRQei6DqxhbyniL7/VG4RSS7HtSL2QbY4eESy1KJqlWt8g3xeEBGPuo+XqC8A==} engines: {node: '>=6.9.0'} @@ -3230,38 +3769,25 @@ packages: '@babel/core': 7.24.0 '@babel/plugin-transform-react-jsx': 7.22.5(@babel/core@7.24.0) - /@babel/plugin-transform-react-jsx-self@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-nTh2ogNUtxbiSbxaT4Ds6aXnXEipHweN9YRgOX/oNXdf0cCrGn/+2LozFa3lnPV5D90MkjhgckCPBrsoSc1a7g==} + /@babel/plugin-transform-react-jsx-self@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-qXRvbeKDSfwnlJnanVRp0SfuWE5DQhwQr5xtLBzp56Wabyo+4CMosF6Kfp+eOD/4FYpql64XVJ2W0pVLlJZxOQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 - /@babel/plugin-transform-react-jsx-source@7.22.5(@babel/core@7.23.2): - resolution: {integrity: sha512-yIiRO6yobeEIaI0RTbIr8iAK9FcBHLtZq0S89ZPjDLQXBA4xvghaKqI0etp/tF3htTM0sazJKKLz9oEiGRtu7w==} + /@babel/plugin-transform-react-jsx-source@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-91RS0MDnAWDNvGC6Wio5XYkyWI39FMFO+JK9+4AlgaTH+yWwVTsw7/sn6LK0lH7c5F+TFkpv/3LfCJ1Ydwof/g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 - /@babel/plugin-transform-react-jsx@7.22.15(@babel/core@7.23.2): - resolution: {integrity: sha512-oKckg2eZFa8771O/5vi7XeTvmM6+O9cxZu+kanTU7tD4sin5nO/G8jGJhq8Hvt2Z0kUoEDRayuZLaUlYl8QuGA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-module-imports': 7.22.15 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.23.2) - '@babel/types': 7.23.0 - - /@babel/plugin-transform-react-jsx@7.22.15(@babel/core@7.24.0): + /@babel/plugin-transform-react-jsx@7.22.15(@babel/core@7.24.0): resolution: {integrity: sha512-oKckg2eZFa8771O/5vi7XeTvmM6+O9cxZu+kanTU7tD4sin5nO/G8jGJhq8Hvt2Z0kUoEDRayuZLaUlYl8QuGA==} engines: {node: '>=6.9.0'} peerDependencies: @@ -3301,6 +3827,19 @@ packages: '@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.24.0) '@babel/types': 7.23.0 + /@babel/plugin-transform-react-jsx@7.23.4(@babel/core@7.24.0): + resolution: {integrity: sha512-5xOpoPguCZCRbo/JeHlloSkTA8Bld1J/E1/kLfD1nsuiW1m8tduTA1ERCgIZokDflX/IBzKcqR3l7VlRgiIfHA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-module-imports': 7.22.15 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-jsx': 7.23.3(@babel/core@7.24.0) + '@babel/types': 7.24.0 + /@babel/plugin-transform-react-pure-annotations@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-gP4k85wx09q+brArVinTXhWiyzLl9UpmGva0+mWyKxk6JZequ05x3eUcIUE+FyttPKJFRRVtAvQaJ6YF9h1ZpA==} engines: {node: '>=6.9.0'} @@ -3322,6 +3861,16 @@ packages: '@babel/helper-annotate-as-pure': 7.22.5 '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-transform-react-pure-annotations@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-qMFdSS+TUhB7Q/3HVPnEdYJDQIk57jkntAwSuz9xfSE4n+3I+vHYCli3HoHawN1Z3RfCz/y1zXA/JXjG6cVImQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-transform-regenerator@7.22.10(@babel/core@7.23.2): resolution: {integrity: sha512-F28b1mDt8KcT5bUyJc/U9nwzw6cV+UmTeRlXYIl2TNqMMJif0Jeey9/RQ3C4NOd2zp0/TRsDns9ttj2L523rsw==} engines: {node: '>=6.9.0'} @@ -3331,6 +3880,7 @@ packages: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 regenerator-transform: 0.15.2 + dev: true /@babel/plugin-transform-regenerator@7.22.10(@babel/core@7.24.0): resolution: {integrity: sha512-F28b1mDt8KcT5bUyJc/U9nwzw6cV+UmTeRlXYIl2TNqMMJif0Jeey9/RQ3C4NOd2zp0/TRsDns9ttj2L523rsw==} @@ -3342,6 +3892,16 @@ packages: '@babel/helper-plugin-utils': 7.22.5 regenerator-transform: 0.15.2 + /@babel/plugin-transform-regenerator@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-KP+75h0KghBMcVpuKisx3XTu9Ncut8Q8TuvGO4IhY+9D5DFEckQefOuIsB/gQ2tG71lCke4NMrtIPS8pOj18BQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + regenerator-transform: 0.15.2 + /@babel/plugin-transform-reserved-words@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-DTtGKFRQUDm8svigJzZHzb/2xatPc6TzNvAIJ5GqOKDsGFYgAskjRulbR/vGsPKq3OPqtexnz327qYpP57RFyA==} engines: {node: '>=6.9.0'} @@ -3350,6 +3910,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-reserved-words@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-DTtGKFRQUDm8svigJzZHzb/2xatPc6TzNvAIJ5GqOKDsGFYgAskjRulbR/vGsPKq3OPqtexnz327qYpP57RFyA==} @@ -3360,6 +3921,15 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-transform-reserved-words@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-QnNTazY54YqgGxwIexMZva9gqbPa15t/x9VS+0fsEFWplwVpXYZivtgl43Z1vMpc1bdPP2PP8siFeVcnFvA3Cg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-transform-runtime@7.23.2(@babel/core@7.23.2): resolution: {integrity: sha512-XOntj6icgzMS58jPVtQpiuF6ZFWxQiJavISGx5KGjRj+3gqZr8+N6Kx+N9BApWzgS+DOjIZfXXj0ZesenOWDyA==} engines: {node: '>=6.9.0'} @@ -3375,6 +3945,7 @@ packages: semver: 6.3.1 transitivePeerDependencies: - supports-color + dev: true /@babel/plugin-transform-runtime@7.23.2(@babel/core@7.24.0): resolution: {integrity: sha512-XOntj6icgzMS58jPVtQpiuF6ZFWxQiJavISGx5KGjRj+3gqZr8+N6Kx+N9BApWzgS+DOjIZfXXj0ZesenOWDyA==} @@ -3392,6 +3963,22 @@ packages: transitivePeerDependencies: - supports-color + /@babel/plugin-transform-runtime@7.24.0(@babel/core@7.24.0): + resolution: {integrity: sha512-zc0GA5IitLKJrSfXlXmp8KDqLrnGECK7YRfQBmEKg1NmBOQ7e+KuclBEKJgzifQeUYLdNiAw4B4bjyvzWVLiSA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-module-imports': 7.22.15 + '@babel/helper-plugin-utils': 7.24.0 + babel-plugin-polyfill-corejs2: 0.4.9(@babel/core@7.24.0) + babel-plugin-polyfill-corejs3: 0.9.0(@babel/core@7.24.0) + babel-plugin-polyfill-regenerator: 0.5.5(@babel/core@7.24.0) + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + /@babel/plugin-transform-shorthand-properties@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-vM4fq9IXHscXVKzDv5itkO1X52SmdFBFcMIBZ2FRn2nqVYqw6dBexUgMvAjHW+KXpPPViD/Yo3GrDEBaRC0QYA==} engines: {node: '>=6.9.0'} @@ -3400,6 +3987,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-shorthand-properties@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-vM4fq9IXHscXVKzDv5itkO1X52SmdFBFcMIBZ2FRn2nqVYqw6dBexUgMvAjHW+KXpPPViD/Yo3GrDEBaRC0QYA==} @@ -3410,6 +3998,15 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-transform-shorthand-properties@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-ED2fgqZLmexWiN+YNFX26fx4gh5qHDhn1O2gvEhreLW2iI63Sqm4llRLCXALKrCnbN4Jy0VcMQZl/SAzqug/jg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-transform-spread@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-5ZzDQIGyvN4w8+dMmpohL6MBo+l2G7tfC/O2Dg7/hjpgeWvUx8FzfeOKxGog9IimPa4YekaQ9PlDqTLOljkcxg==} engines: {node: '>=6.9.0'} @@ -3419,6 +4016,7 @@ packages: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 + dev: true /@babel/plugin-transform-spread@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-5ZzDQIGyvN4w8+dMmpohL6MBo+l2G7tfC/O2Dg7/hjpgeWvUx8FzfeOKxGog9IimPa4YekaQ9PlDqTLOljkcxg==} @@ -3430,6 +4028,16 @@ packages: '@babel/helper-plugin-utils': 7.22.5 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 + /@babel/plugin-transform-spread@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-VvfVYlrlBVu+77xVTOAoxQ6mZbnIq5FM0aGBSFEcIh03qHf+zNqA4DC/3XMUozTg7bZV3e3mZQ0i13VB6v5yUg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 + /@babel/plugin-transform-sticky-regex@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-zf7LuNpHG0iEeiyCNwX4j3gDg1jgt1k3ZdXBKbZSoA3BbGQGvMiSvfbZRR3Dr3aeJe3ooWFZxOOG3IRStYp2Bw==} engines: {node: '>=6.9.0'} @@ -3438,6 +4046,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-sticky-regex@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-zf7LuNpHG0iEeiyCNwX4j3gDg1jgt1k3ZdXBKbZSoA3BbGQGvMiSvfbZRR3Dr3aeJe3ooWFZxOOG3IRStYp2Bw==} @@ -3448,6 +4057,15 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-transform-sticky-regex@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-HZOyN9g+rtvnOU3Yh7kSxXrKbzgrm5X4GncPY1QOquu7epga5MxKHVpYu2hvQnry/H+JjckSYRb93iNfsioAGg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-transform-template-literals@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-5ciOehRNf+EyUeewo8NkbQiUs4d6ZxiHo6BcBcnFlgiJfu16q0bQUw9Jvo0b0gBKFG1SMhDSjeKXSYuJLeFSMA==} engines: {node: '>=6.9.0'} @@ -3456,6 +4074,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-template-literals@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-5ciOehRNf+EyUeewo8NkbQiUs4d6ZxiHo6BcBcnFlgiJfu16q0bQUw9Jvo0b0gBKFG1SMhDSjeKXSYuJLeFSMA==} @@ -3466,6 +4085,15 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-transform-template-literals@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-Flok06AYNp7GV2oJPZZcP9vZdszev6vPBkHLwxwSpaIqx75wn6mUd3UFWsSsA0l8nXAKkyCmL/sR02m8RYGeHg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-transform-typeof-symbol@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-bYkI5lMzL4kPii4HHEEChkD0rkc+nvnlR6+o/qdqR6zrm0Sv/nodmyLhlq2DO0YKLUNd2VePmPRjJXSBh9OIdA==} engines: {node: '>=6.9.0'} @@ -3474,6 +4102,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-typeof-symbol@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-bYkI5lMzL4kPii4HHEEChkD0rkc+nvnlR6+o/qdqR6zrm0Sv/nodmyLhlq2DO0YKLUNd2VePmPRjJXSBh9OIdA==} @@ -3484,6 +4113,15 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-transform-typeof-symbol@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-4t15ViVnaFdrPC74be1gXBSMzXk3B4Us9lP7uLRQHTFpV5Dvt33pn+2MyyNxmN3VTTm3oTrZVMUmuw3oBnQ2oQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-transform-typescript@7.22.11(@babel/core@7.23.2): resolution: {integrity: sha512-0E4/L+7gfvHub7wsbTv03oRtD69X31LByy44fGmFzbZScpupFByMcgCJ0VbBTkzyjSJKuRoGN8tcijOWKTmqOA==} engines: {node: '>=6.9.0'} @@ -3508,6 +4146,7 @@ packages: '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-typescript': 7.22.5(@babel/core@7.23.2) + dev: true /@babel/plugin-transform-typescript@7.22.15(@babel/core@7.24.0): resolution: {integrity: sha512-1uirS0TnijxvQLnlv5wQBwOX3E1wCFX7ITv+9pBV2wKEk4K+M5tqDaoNXnTH8tjEIYHLO98MwiTWO04Ggz4XuA==} @@ -3521,6 +4160,18 @@ packages: '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-typescript': 7.22.5(@babel/core@7.24.0) + /@babel/plugin-transform-typescript@7.23.6(@babel/core@7.24.0): + resolution: {integrity: sha512-6cBG5mBvUu4VUD04OHKnYzbuHNP8huDsD3EDqqpIpsswTDoqHCjLoHb6+QgsV1WsT2nipRqCPgxD3LXnEO7XfA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-typescript': 7.23.3(@babel/core@7.24.0) + /@babel/plugin-transform-unicode-escapes@7.22.10(@babel/core@7.23.2): resolution: {integrity: sha512-lRfaRKGZCBqDlRU3UIFovdp9c9mEvlylmpod0/OatICsSfuQ9YFthRo1tpTkGsklEefZdqlEFdY4A2dwTb6ohg==} engines: {node: '>=6.9.0'} @@ -3529,6 +4180,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-unicode-escapes@7.22.10(@babel/core@7.24.0): resolution: {integrity: sha512-lRfaRKGZCBqDlRU3UIFovdp9c9mEvlylmpod0/OatICsSfuQ9YFthRo1tpTkGsklEefZdqlEFdY4A2dwTb6ohg==} @@ -3539,6 +4191,15 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-transform-unicode-escapes@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-OMCUx/bU6ChE3r4+ZdylEqAjaQgHAgipgW8nsCfu5pGqDcFytVd91AwRvUJSBZDz0exPGgnjoqhgRYLRjFZc9Q==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-transform-unicode-property-regex@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-HCCIb+CbJIAE6sXn5CjFQXMwkCClcOfPCzTlilJ8cUatfzwHlWQkbtV0zD338u9dZskwvuOYTuuaMaA8J5EI5A==} engines: {node: '>=6.9.0'} @@ -3548,6 +4209,7 @@ packages: '@babel/core': 7.23.2 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-unicode-property-regex@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-HCCIb+CbJIAE6sXn5CjFQXMwkCClcOfPCzTlilJ8cUatfzwHlWQkbtV0zD338u9dZskwvuOYTuuaMaA8J5EI5A==} @@ -3559,6 +4221,16 @@ packages: '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-transform-unicode-property-regex@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-KcLIm+pDZkWZQAFJ9pdfmh89EwVfmNovFBcXko8szpBeF8z68kWIPeKlmSOkT9BXJxs2C0uk+5LxoxIv62MROA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-transform-unicode-regex@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-028laaOKptN5vHJf9/Arr/HiJekMd41hOEZYvNsrsXqJ7YPYuX2bQxh31fkZzGmq3YqHRJzYFFAVYvKfMPKqyg==} engines: {node: '>=6.9.0'} @@ -3568,6 +4240,7 @@ packages: '@babel/core': 7.23.2 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-unicode-regex@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-028laaOKptN5vHJf9/Arr/HiJekMd41hOEZYvNsrsXqJ7YPYuX2bQxh31fkZzGmq3YqHRJzYFFAVYvKfMPKqyg==} @@ -3579,6 +4252,16 @@ packages: '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-transform-unicode-regex@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-wMHpNA4x2cIA32b/ci3AfwNgheiva2W0WUKWTK7vBHBhDKfPsc5cFGNWm69WBqpwd86u1qwZ9PWevKqm1A3yAw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 + /@babel/plugin-transform-unicode-sets-regex@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-lhMfi4FC15j13eKrh3DnYHjpGj6UKQHtNKTbtc1igvAhRy4+kLhV07OpLcsN0VgDEw/MjAvJO4BdMJsHwMhzCg==} engines: {node: '>=6.9.0'} @@ -3588,6 +4271,7 @@ packages: '@babel/core': 7.23.2 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/plugin-transform-unicode-sets-regex@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-lhMfi4FC15j13eKrh3DnYHjpGj6UKQHtNKTbtc1igvAhRy4+kLhV07OpLcsN0VgDEw/MjAvJO4BdMJsHwMhzCg==} @@ -3599,6 +4283,16 @@ packages: '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.22.5 + /@babel/plugin-transform-unicode-sets-regex@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-W7lliA/v9bNR83Qc3q1ip9CQMZ09CcHDbHfbLRDNuAhn1Mvkr1ZNF7hPmztMQvtTGVLJ9m8IZqWsTkXOml8dbw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 + /@babel/preset-env@7.22.14(@babel/core@7.23.2): resolution: {integrity: sha512-daodMIoVo+ol/g+//c/AH+szBkFj4STQUikvBijRGL72Ph+w+AMTSh55DUETe8KJlPlDT1k/mp7NBfOuiWmoig==} engines: {node: '>=6.9.0'} @@ -3779,6 +4473,7 @@ packages: semver: 6.3.1 transitivePeerDependencies: - supports-color + dev: true /@babel/preset-env@7.23.2(@babel/core@7.24.0): resolution: {integrity: sha512-BW3gsuDD+rvHL2VO2SjAUNTBe5YrjsTiDyqamPDWY723na3/yPQ65X5oQkFVJZ0o50/2d+svm1rkPoJeR1KxVQ==} @@ -3870,16 +4565,106 @@ packages: transitivePeerDependencies: - supports-color - /@babel/preset-flow@7.22.15(@babel/core@7.23.2): - resolution: {integrity: sha512-dB5aIMqpkgbTfN5vDdTRPzjqtWiZcRESNR88QYnoPR+bmdYoluOzMX9tQerTv0XzSgZYctPfO1oc0N5zdog1ew==} + /@babel/preset-env@7.24.0(@babel/core@7.24.0): + resolution: {integrity: sha512-ZxPEzV9IgvGn73iK0E6VB9/95Nd7aMFpbE0l8KQFDG70cOV9IxRP7Y2FUPmlK0v6ImlLqYX50iuZ3ZTVhOF2lA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-validator-option': 7.22.15 - '@babel/plugin-transform-flow-strip-types': 7.22.5(@babel/core@7.23.2) + '@babel/compat-data': 7.23.5 + '@babel/core': 7.24.0 + '@babel/helper-compilation-targets': 7.23.6 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-validator-option': 7.23.5 + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.23.7(@babel/core@7.24.0) + '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.0) + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.0) + '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.24.0) + '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.0) + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-syntax-import-assertions': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-syntax-import-attributes': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.24.0) + '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.0) + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.0) + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.0) + '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.24.0) + '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.24.0) + '@babel/plugin-transform-arrow-functions': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-async-generator-functions': 7.23.9(@babel/core@7.24.0) + '@babel/plugin-transform-async-to-generator': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-block-scoped-functions': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-block-scoping': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-class-properties': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-class-static-block': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-classes': 7.23.8(@babel/core@7.24.0) + '@babel/plugin-transform-computed-properties': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-destructuring': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-dotall-regex': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-duplicate-keys': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-dynamic-import': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-exponentiation-operator': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-export-namespace-from': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-for-of': 7.23.6(@babel/core@7.24.0) + '@babel/plugin-transform-function-name': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-json-strings': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-literals': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-logical-assignment-operators': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-member-expression-literals': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-modules-amd': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-modules-commonjs': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-modules-systemjs': 7.23.9(@babel/core@7.24.0) + '@babel/plugin-transform-modules-umd': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.24.0) + '@babel/plugin-transform-new-target': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-nullish-coalescing-operator': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-numeric-separator': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-object-rest-spread': 7.24.0(@babel/core@7.24.0) + '@babel/plugin-transform-object-super': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-optional-catch-binding': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-optional-chaining': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-private-methods': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-private-property-in-object': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-property-literals': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-regenerator': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-reserved-words': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-shorthand-properties': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-spread': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-sticky-regex': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-template-literals': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-typeof-symbol': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-unicode-escapes': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-unicode-property-regex': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-unicode-regex': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-unicode-sets-regex': 7.23.3(@babel/core@7.24.0) + '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.24.0) + babel-plugin-polyfill-corejs2: 0.4.9(@babel/core@7.24.0) + babel-plugin-polyfill-corejs3: 0.9.0(@babel/core@7.24.0) + babel-plugin-polyfill-regenerator: 0.5.5(@babel/core@7.24.0) + core-js-compat: 3.36.0 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + /@babel/preset-flow@7.24.0(@babel/core@7.24.0): + resolution: {integrity: sha512-cum/nSi82cDaSJ21I4PgLTVlj0OXovFk6GRguJYe/IKg6y6JHLTbJhybtX4k35WT9wdeJfEVjycTixMhBHd0Dg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-validator-option': 7.23.5 + '@babel/plugin-transform-flow-strip-types': 7.23.3(@babel/core@7.24.0) /@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.23.2): resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==} @@ -3890,6 +4675,7 @@ packages: '@babel/helper-plugin-utils': 7.22.5 '@babel/types': 7.23.0 esutils: 2.0.3 + dev: true /@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.24.0): resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==} @@ -3930,6 +4716,20 @@ packages: '@babel/plugin-transform-react-pure-annotations': 7.22.5(@babel/core@7.23.2) dev: true + /@babel/preset-react@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-tbkHOS9axH6Ysf2OUEqoSZ6T3Fa2SrNH6WTWSPBboxKzdxNc9qOICeLXkNG0ZEwbQ1HY8liwOce4aN/Ceyuq6w==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-validator-option': 7.23.5 + '@babel/plugin-transform-react-display-name': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-react-jsx': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-react-jsx-development': 7.22.5(@babel/core@7.24.0) + '@babel/plugin-transform-react-pure-annotations': 7.23.3(@babel/core@7.24.0) + /@babel/preset-typescript@7.22.11(@babel/core@7.23.2): resolution: {integrity: sha512-tWY5wyCZYBGY7IlalfKI1rLiGlIfnwsRHZqlky0HVv8qviwQ1Uo/05M6+s+TcTCVa6Bmoo2uJW5TMFX6Wa4qVg==} engines: {node: '>=6.9.0'} @@ -3956,6 +4756,7 @@ packages: '@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.23.2) '@babel/plugin-transform-modules-commonjs': 7.23.0(@babel/core@7.23.2) '@babel/plugin-transform-typescript': 7.22.15(@babel/core@7.23.2) + dev: true /@babel/preset-typescript@7.23.2(@babel/core@7.24.0): resolution: {integrity: sha512-u4UJc1XsS1GhIGteM8rnGiIvf9rJpiVgMEeCnwlLA7WJPC+jcXWJAGxYmeqs5hOZD8BbAfnV5ezBOxQbb4OUxA==} @@ -3970,13 +4771,26 @@ packages: '@babel/plugin-transform-modules-commonjs': 7.23.0(@babel/core@7.24.0) '@babel/plugin-transform-typescript': 7.22.15(@babel/core@7.24.0) - /@babel/register@7.22.15(@babel/core@7.23.2): - resolution: {integrity: sha512-V3Q3EqoQdn65RCgTLwauZaTfd1ShhwPmbBv+1dkZV/HpCGMKVyn6oFcRlI7RaKqiDQjX2Qd3AuoEguBgdjIKlg==} + /@babel/preset-typescript@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-17oIGVlqz6CchO9RFYn5U6ZpWRZIngayYCtrPRSgANSwC2V1Jb+iP74nVxzzXJte8b8BYxrL1yY96xfhTBrNNQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.2 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-validator-option': 7.23.5 + '@babel/plugin-syntax-jsx': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-modules-commonjs': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-typescript': 7.23.6(@babel/core@7.24.0) + + /@babel/register@7.23.7(@babel/core@7.24.0): + resolution: {integrity: sha512-EjJeB6+kvpk+Y5DAkEAmbOBEFkh9OASx0huoEkqYTFxAZHzOAX2Oh5uwAUuL2rUddqfM0SA+KPXV2TbzoZ2kvQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 clone-deep: 4.0.1 find-cache-dir: 2.1.0 make-dir: 2.1.0 @@ -4013,6 +4827,12 @@ packages: dependencies: regenerator-runtime: 0.14.0 + /@babel/runtime@7.24.0: + resolution: {integrity: sha512-Chk32uHMg6TnQdvw2e9IlqPpFX/6NLuK0Ys2PqLb7/gL5uFn9mXvK715FGLlOLQrcO4qIkNHkvPGktzzXexsFw==} + engines: {node: '>=6.9.0'} + dependencies: + regenerator-runtime: 0.14.1 + /@babel/template@7.22.15: resolution: {integrity: sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==} engines: {node: '>=6.9.0'} @@ -4083,6 +4903,94 @@ packages: resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} dev: true + /@biomejs/biome@1.5.3: + resolution: {integrity: sha512-yvZCa/g3akwTaAQ7PCwPWDCkZs3Qa5ONg/fgOUT9e6wAWsPftCjLQFPXBeGxPK30yZSSpgEmRCfpGTmVbUjGgg==} + engines: {node: '>=14.*'} + hasBin: true + requiresBuild: true + optionalDependencies: + '@biomejs/cli-darwin-arm64': 1.5.3 + '@biomejs/cli-darwin-x64': 1.5.3 + '@biomejs/cli-linux-arm64': 1.5.3 + '@biomejs/cli-linux-arm64-musl': 1.5.3 + '@biomejs/cli-linux-x64': 1.5.3 + '@biomejs/cli-linux-x64-musl': 1.5.3 + '@biomejs/cli-win32-arm64': 1.5.3 + '@biomejs/cli-win32-x64': 1.5.3 + dev: true + + /@biomejs/cli-darwin-arm64@1.5.3: + resolution: {integrity: sha512-ImU7mh1HghEDyqNmxEZBoMPr8SxekkZuYcs+gynKlNW+TALQs7swkERiBLkG9NR0K1B3/2uVzlvYowXrmlW8hw==} + engines: {node: '>=14.*'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@biomejs/cli-darwin-x64@1.5.3: + resolution: {integrity: sha512-vCdASqYnlpq/swErH7FD6nrFz0czFtK4k/iLgj0/+VmZVjineFPgevOb+Sr9vz0tk0GfdQO60bSpI74zU8M9Dw==} + engines: {node: '>=14.*'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@biomejs/cli-linux-arm64-musl@1.5.3: + resolution: {integrity: sha512-DYuMizUYUBYfS0IHGjDrOP1RGipqWfMGEvNEJ398zdtmCKLXaUvTimiox5dvx4X15mBK5M2m8wgWUgOP1giUpQ==} + engines: {node: '>=14.*'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@biomejs/cli-linux-arm64@1.5.3: + resolution: {integrity: sha512-cupBQv0sNF1OKqBfx7EDWMSsKwRrBUZfjXawT4s6hKV6ALq7p0QzWlxr/sDmbKMLOaLQtw2Qgu/77N9rm+f9Rg==} + engines: {node: '>=14.*'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@biomejs/cli-linux-x64-musl@1.5.3: + resolution: {integrity: sha512-UUHiAnlDqr2Y/LpvshBFhUYMWkl2/Jn+bi3U6jKuav0qWbbBKU/ByHgR4+NBxpKBYoCtWxhnmatfH1bpPIuZMw==} + engines: {node: '>=14.*'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@biomejs/cli-linux-x64@1.5.3: + resolution: {integrity: sha512-YQrSArQvcv4FYsk7Q91Yv4uuu5F8hJyORVcv3zsjCLGkjIjx2RhjYLpTL733SNL7v33GmOlZY0eFR1ko38tuUw==} + engines: {node: '>=14.*'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@biomejs/cli-win32-arm64@1.5.3: + resolution: {integrity: sha512-HxatYH7vf/kX9nrD+pDYuV2GI9GV8EFo6cfKkahAecTuZLPxryHx1WEfJthp5eNsE0+09STGkKIKjirP0ufaZA==} + engines: {node: '>=14.*'} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@biomejs/cli-win32-x64@1.5.3: + resolution: {integrity: sha512-fMvbSouZEASU7mZH8SIJSANDm5OqsjgtVXlbUqxwed6BP7uuHRSs396Aqwh2+VoW8fwTpp6ybIUoC9FrzB0kyA==} + engines: {node: '>=14.*'} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + /@bitauth/libauth@1.19.1: resolution: {integrity: sha512-R524tD5VwOt3QRHr7N518nqTVR/HKgfWL4LypekcGuNQN8R4PWScvuRcRzrY39A28kLztMv+TJdiKuMNbkU1ug==} engines: {node: '>=8.9'} @@ -4830,7 +5738,6 @@ packages: dependencies: base64url-universal: 2.0.0 pako: 2.1.0 - dev: false optional: true /@digitalbazaar/http-client@1.2.0(patch_hash=yl3b524jp4dtc7mdahww7krgi4): @@ -4854,7 +5761,6 @@ packages: undici: 5.23.0 transitivePeerDependencies: - web-streams-polyfill - dev: false /@digitalbazaar/http-client@4.1.1: resolution: {integrity: sha512-PG0r9sAEzAmnCSrwKg+HhM6+GNMU24ttiFMBycqhM1vDi8enipuFpW45vn2lzr8+i7I2yLUzNyfrrkQTlzGLmQ==} @@ -4862,6 +5768,7 @@ packages: dependencies: ky: 1.2.2 undici: 6.7.1 + dev: false /@digitalbazaar/security-context@1.0.1: resolution: {integrity: sha512-0WZa6tPiTZZF8leBtQgYAfXQePFQp2z5ivpCEN/iZguYYZ0TB9qRmWtan5XH6mNFuusHtMcyIzAcReyE6rZPhA==} @@ -4869,7 +5776,11 @@ packages: /@digitalbazaar/vc-status-list-context@3.0.1: resolution: {integrity: sha512-vQsqQXpmSXKNy/C0xxFUOBzz60dHh6oupQam1xRC8IspVC11hYJiX9SAhmbI0ulHvX1R2JfqZaJHZjmAyMZ/aA==} requiresBuild: true - dev: false + optional: true + + /@digitalbazaar/vc-status-list-context@3.1.1: + resolution: {integrity: sha512-cMVtd+EV+4KN2kUG4/vsV74JVsGE6dcpod6zRoFB/AJA2W/sZbJqR44KL3G6P262+GcAECNhtnSsKsTnQ6y8+w==} + requiresBuild: true optional: true /@digitalbazaar/vc-status-list@7.0.0: @@ -4886,20 +5797,32 @@ packages: dev: false optional: true - /@digitalbazaar/vc@5.0.0: - resolution: {integrity: sha512-XmLM7Ag5W+XidGnFuxFIyUFSMnHnWEMJlHei602GG94+WzFJ6Ik8txzPQL8T18egSoiTsd1VekymbIlSimhuaQ==} - engines: {node: '>=14'} + /@digitalbazaar/vc-status-list@7.1.0: + resolution: {integrity: sha512-p5uxKJlX13N8TcTuv9qFDeej+6bndU+Rh1Cez2MT+bXQE6Jpn5t336FBSHmcECB4yUfZQpkmV/LOcYU4lW8Ojw==} + engines: {node: '>=16'} requiresBuild: true dependencies: + '@digitalbazaar/bitstring': 3.1.0 + '@digitalbazaar/vc': 5.0.0 + '@digitalbazaar/vc-status-list-context': 3.1.1 credentials-context: 2.0.0 - jsonld: 8.2.0 - jsonld-signatures: 11.2.1 transitivePeerDependencies: - web-streams-polyfill - dev: false optional: true - /@digitalcredentials/base58-universal@1.0.1: + /@digitalbazaar/vc@5.0.0: + resolution: {integrity: sha512-XmLM7Ag5W+XidGnFuxFIyUFSMnHnWEMJlHei602GG94+WzFJ6Ik8txzPQL8T18egSoiTsd1VekymbIlSimhuaQ==} + engines: {node: '>=14'} + requiresBuild: true + dependencies: + credentials-context: 2.0.0 + jsonld: 8.3.2 + jsonld-signatures: 11.2.1 + transitivePeerDependencies: + - web-streams-polyfill + optional: true + + /@digitalcredentials/base58-universal@1.0.1: resolution: {integrity: sha512-1xKdJnfITMvrF/sCgwBx2C4p7qcNAARyIvrAOZGqIHmBaT/hAenpC8bf44qVY+UIMuCYP23kqpIfJQebQDThDQ==} engines: {node: '>=12'} @@ -4909,7 +5832,6 @@ packages: requiresBuild: true dependencies: base64url: 3.0.1 - dev: false optional: true /@digitalcredentials/bitstring@2.0.1: @@ -4919,17 +5841,16 @@ packages: dependencies: '@digitalcredentials/base64url-universal': 2.0.2 pako: 2.1.0 - dev: false optional: true - /@digitalcredentials/ed25519-signature-2020@3.0.2(expo@49.0.16)(react-native@0.72.6): + /@digitalcredentials/ed25519-signature-2020@3.0.2(expo@50.0.11)(react-native@0.73.5): resolution: {integrity: sha512-R8IrR21Dh+75CYriQov3nVHKaOVusbxfk9gyi6eCAwLHKn6fllUt+2LQfuUrL7Ts/sGIJqQcev7YvkX9GvyYRA==} engines: {node: '>=14'} requiresBuild: true dependencies: '@digitalcredentials/base58-universal': 1.0.1 '@digitalcredentials/ed25519-verification-key-2020': 3.2.2 - '@digitalcredentials/jsonld-signatures': 9.3.2(expo@49.0.16)(react-native@0.72.6) + '@digitalcredentials/jsonld-signatures': 9.3.2(expo@50.0.11)(react-native@0.73.5) ed25519-signature-2018-context: 1.1.0 ed25519-signature-2020-context: 1.1.0 transitivePeerDependencies: @@ -4937,16 +5858,15 @@ packages: - expo - react-native - web-streams-polyfill - dev: false optional: true - /@digitalcredentials/ed25519-signature-2020@4.0.0(expo-crypto@12.8.1)(expo@49.0.16)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1): + /@digitalcredentials/ed25519-signature-2020@4.0.0(expo-crypto@12.8.1)(expo@50.0.11)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1): resolution: {integrity: sha512-xdmtgmp7OYnc9imXzA2IJjkLmY28e9oCL0UshEMF9vljcPnkfAWvi9wrfXyOoFVdszxVNivF7U/q0u1PbQ7gfA==} engines: {node: '>=14'} dependencies: '@digitalcredentials/base58-universal': 1.0.1 '@digitalcredentials/ed25519-verification-key-2020': 3.2.2 - '@digitalcredentials/jsonld-signatures': 10.0.1(expo-crypto@12.8.1)(expo@49.0.16)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1) + '@digitalcredentials/jsonld-signatures': 10.0.1(expo-crypto@12.8.1)(expo@50.0.11)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1) ed25519-signature-2018-context: 1.1.0 ed25519-signature-2020-context: 1.1.0 transitivePeerDependencies: @@ -4954,6 +5874,7 @@ packages: - expo-crypto - msrcrypto - react-native-securerandom + dev: false /@digitalcredentials/ed25519-verification-key-2020@3.2.2: resolution: {integrity: sha512-ZfxNFZlA379MZpf+gV2tUYyiZ15eGVgjtCQLWlyu3frWxsumUgv++o0OJlMnrDsWGwzFMRrsXcosd5+752rLOA==} @@ -4982,12 +5903,12 @@ packages: - domexception - web-streams-polyfill - /@digitalcredentials/jsonld-signatures@10.0.1(expo-crypto@12.8.1)(expo@49.0.16)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1): + /@digitalcredentials/jsonld-signatures@10.0.1(expo-crypto@12.8.1)(expo@50.0.11)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1): resolution: {integrity: sha512-r7yx25SUkyzX7ZGnvzZCtoMH+udbhM3VnHN0rcLv/PW57mpj3lf1lYdu+7Hl24L26H+mUD42otCg4sbVLaZl8Q==} engines: {node: '>=18'} dependencies: '@digitalbazaar/security-context': 1.0.1 - '@sphereon/isomorphic-webcrypto': 2.4.0-unstable.4(expo-crypto@12.8.1)(expo@49.0.16)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1) + '@sphereon/isomorphic-webcrypto': 2.4.0-unstable.4(expo-crypto@12.8.1)(expo@50.0.11)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1) fast-text-encoding: 1.0.6 jsonld: github.com/digitalcredentials/jsonld.js/17f2c35f85d176231d9c8620d39144e845c15e91 serialize-error: 8.1.0 @@ -4996,15 +5917,32 @@ packages: - expo-crypto - msrcrypto - react-native-securerandom + dev: false - /@digitalcredentials/jsonld-signatures@9.3.2(expo@49.0.16)(react-native@0.72.6): + /@digitalcredentials/jsonld-signatures@9.3.2(expo@50.0.11)(react-native@0.73.5): resolution: {integrity: sha512-auubZrr3D7et5O6zCdqoXsLhI8/F26HqneE94gIoZYVuxNHBNaFoDQ1Z71RfddRqwJonHkfkWgeZSzqjv6aUmg==} engines: {node: '>=12'} dependencies: '@digitalbazaar/security-context': 1.0.1 - '@digitalcredentials/jsonld': 6.0.0(expo@49.0.16)(react-native@0.72.6) + '@digitalcredentials/jsonld': 6.0.0(expo@50.0.11)(react-native@0.73.5) + fast-text-encoding: 1.0.6 + isomorphic-webcrypto: 2.3.8(expo@50.0.11)(react-native@0.73.5) + serialize-error: 8.1.0 + transitivePeerDependencies: + - domexception + - expo + - react-native + - web-streams-polyfill + optional: true + + /@digitalcredentials/jsonld-signatures@9.4.0(expo@50.0.11)(react-native@0.73.5): + resolution: {integrity: sha512-DnR+HDTm7qpcDd0wcD1w6GdlAwfHjQSgu+ahion8REkCkkMRywF+CLunU7t8AZpFB2Gr/+N8naUtiEBNje1Oew==} + engines: {node: '>=18'} + dependencies: + '@digitalbazaar/security-context': 1.0.1 + '@digitalcredentials/jsonld': 6.0.0(expo@50.0.11)(react-native@0.73.5) fast-text-encoding: 1.0.6 - isomorphic-webcrypto: 2.3.8(expo@49.0.16)(react-native@0.72.6) + isomorphic-webcrypto: 2.3.8(expo@50.0.11)(react-native@0.73.5) serialize-error: 8.1.0 transitivePeerDependencies: - domexception @@ -5012,12 +5950,12 @@ packages: - react-native - web-streams-polyfill - /@digitalcredentials/jsonld@5.2.2(expo@49.0.16)(react-native@0.72.6): + /@digitalcredentials/jsonld@5.2.2(expo@50.0.11)(react-native@0.73.5): resolution: {integrity: sha512-hz7YR3kv6+8UUdgMyTGl1o8NjVKKwnMry/Rh/rWeAvwL+NqgoUHorWzI3rM+PW+MPFyDC0ieXStClt9n9D9SGA==} engines: {node: '>=12'} dependencies: '@digitalcredentials/http-client': 1.2.2 - '@digitalcredentials/rdf-canonize': 1.0.0(expo@49.0.16)(react-native@0.72.6) + '@digitalcredentials/rdf-canonize': 1.0.0(expo@50.0.11)(react-native@0.73.5) canonicalize: 1.0.8 lru-cache: 6.0.0 transitivePeerDependencies: @@ -5026,12 +5964,12 @@ packages: - react-native - web-streams-polyfill - /@digitalcredentials/jsonld@6.0.0(expo@49.0.16)(react-native@0.72.6): + /@digitalcredentials/jsonld@6.0.0(expo@50.0.11)(react-native@0.73.5): resolution: {integrity: sha512-5tTakj0/GsqAJi8beQFVMQ97wUJZnuxViW9xRuAATL6eOBIefGBwHkVryAgEq2I4J/xKgb/nEyw1ZXX0G8wQJQ==} engines: {node: '>=12'} dependencies: '@digitalcredentials/http-client': 1.2.2 - '@digitalcredentials/rdf-canonize': 1.0.0(expo@49.0.16)(react-native@0.72.6) + '@digitalcredentials/rdf-canonize': 1.0.0(expo@50.0.11)(react-native@0.73.5) canonicalize: 1.0.8 lru-cache: 6.0.0 transitivePeerDependencies: @@ -5053,60 +5991,58 @@ packages: /@digitalcredentials/open-badges-context@2.1.0: resolution: {integrity: sha512-VK7X5u6OoBFxkyIFplNqUPVbo+8vFSAEoam8tSozpj05KPfcGw41Tp5p9fqMnY38oPfwtZR2yDNSctj/slrE0A==} - /@digitalcredentials/rdf-canonize@1.0.0(expo@49.0.16)(react-native@0.72.6): + /@digitalcredentials/rdf-canonize@1.0.0(expo@50.0.11)(react-native@0.73.5): resolution: {integrity: sha512-z8St0Ex2doecsExCFK1uI4gJC+a5EqYYu1xpRH1pKmqSS9l/nxfuVxexNFyaeEum4dUdg1EetIC2rTwLIFhPRA==} engines: {node: '>=12'} dependencies: fast-text-encoding: 1.0.6 - isomorphic-webcrypto: 2.3.8(expo@49.0.16)(react-native@0.72.6) + isomorphic-webcrypto: 2.3.8(expo@50.0.11)(react-native@0.73.5) transitivePeerDependencies: - expo - react-native - /@digitalcredentials/vc-status-list@5.0.2(expo@49.0.16)(react-native@0.72.6): + /@digitalcredentials/vc-status-list@5.0.2(expo@50.0.11)(react-native@0.73.5): resolution: {integrity: sha512-PI0N7SM0tXpaNLelbCNsMAi34AjOeuhUzMSYTkHdeqRPX7oT2F3ukyOssgr4koEqDxw9shHtxHu3fSJzrzcPMQ==} engines: {node: '>=14'} requiresBuild: true dependencies: '@digitalbazaar/vc-status-list-context': 3.0.1 '@digitalcredentials/bitstring': 2.0.1 - '@digitalcredentials/vc': 4.2.0(expo@49.0.16)(react-native@0.72.6) + '@digitalcredentials/vc': 4.2.0(expo@50.0.11)(react-native@0.73.5) credentials-context: 2.0.0 transitivePeerDependencies: - domexception - expo - react-native - web-streams-polyfill - dev: false optional: true - /@digitalcredentials/vc@4.2.0(expo@49.0.16)(react-native@0.72.6): + /@digitalcredentials/vc@4.2.0(expo@50.0.11)(react-native@0.73.5): resolution: {integrity: sha512-8Rxpn77JghJN7noBQdcMuzm/tB8vhDwPoFepr3oGd5w+CyJxOk2RnBlgIGlAAGA+mALFWECPv1rANfXno+hdjA==} engines: {node: '>=12'} requiresBuild: true dependencies: - '@digitalcredentials/jsonld': 5.2.2(expo@49.0.16)(react-native@0.72.6) - '@digitalcredentials/jsonld-signatures': 9.3.2(expo@49.0.16)(react-native@0.72.6) + '@digitalcredentials/jsonld': 5.2.2(expo@50.0.11)(react-native@0.73.5) + '@digitalcredentials/jsonld-signatures': 9.3.2(expo@50.0.11)(react-native@0.73.5) credentials-context: 2.0.0 transitivePeerDependencies: - domexception - expo - react-native - web-streams-polyfill - dev: false optional: true - /@digitalcredentials/vc@6.0.0(expo@49.0.16)(react-native@0.72.6): + /@digitalcredentials/vc@6.0.0(expo@50.0.11)(react-native@0.73.5): resolution: {integrity: sha512-RNCkNAKEnkU7/8OiKbS3sM3qePQpH4ZGAXSwaQ0XrRQumPbLEJz8AMpxXmH28sFnmxUrCyvuCGKUq8CBjS1+cQ==} engines: {node: '>=12'} requiresBuild: true dependencies: '@digitalbazaar/vc-status-list': 7.0.0 - '@digitalcredentials/ed25519-signature-2020': 3.0.2(expo@49.0.16)(react-native@0.72.6) - '@digitalcredentials/jsonld': 6.0.0(expo@49.0.16)(react-native@0.72.6) - '@digitalcredentials/jsonld-signatures': 9.3.2(expo@49.0.16)(react-native@0.72.6) + '@digitalcredentials/ed25519-signature-2020': 3.0.2(expo@50.0.11)(react-native@0.73.5) + '@digitalcredentials/jsonld': 6.0.0(expo@50.0.11)(react-native@0.73.5) + '@digitalcredentials/jsonld-signatures': 9.3.2(expo@50.0.11)(react-native@0.73.5) '@digitalcredentials/open-badges-context': 2.0.1 - '@digitalcredentials/vc-status-list': 5.0.2(expo@49.0.16)(react-native@0.72.6) + '@digitalcredentials/vc-status-list': 5.0.2(expo@50.0.11)(react-native@0.73.5) credentials-context: 2.0.0 fix-esm: 1.0.1 transitivePeerDependencies: @@ -5118,12 +6054,33 @@ packages: dev: false optional: true - /@digitalcredentials/vc@7.0.0(expo-crypto@12.8.1)(expo@49.0.16)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1): + /@digitalcredentials/vc@6.0.1(expo@50.0.11)(react-native@0.73.5): + resolution: {integrity: sha512-TZgLoi00Jc9uv3b6jStH+G8+bCqpHIqFw9DYODz+fVjNh197ksvcYqSndUDHa2oi0HCcK+soI8j4ba3Sa4Pl4w==} + engines: {node: '>=12'} + requiresBuild: true + dependencies: + '@digitalbazaar/vc-status-list': 7.1.0 + '@digitalcredentials/ed25519-signature-2020': 3.0.2(expo@50.0.11)(react-native@0.73.5) + '@digitalcredentials/jsonld': 6.0.0(expo@50.0.11)(react-native@0.73.5) + '@digitalcredentials/jsonld-signatures': 9.4.0(expo@50.0.11)(react-native@0.73.5) + '@digitalcredentials/open-badges-context': 2.1.0 + '@digitalcredentials/vc-status-list': 5.0.2(expo@50.0.11)(react-native@0.73.5) + credentials-context: 2.0.0 + fix-esm: 1.0.1 + transitivePeerDependencies: + - domexception + - expo + - react-native + - supports-color + - web-streams-polyfill + optional: true + + /@digitalcredentials/vc@7.0.0(expo-crypto@12.8.1)(expo@50.0.11)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1): resolution: {integrity: sha512-CgjUOqU2VWanbcKUA8L50/72O8rTtCtOY9indMwRIUgFgWkdY4wT89UTWs5QG3SGimXJsbjzKhVJ67VahPxg+Q==} engines: {node: '>=12'} dependencies: - '@digitalcredentials/ed25519-signature-2020': 4.0.0(expo-crypto@12.8.1)(expo@49.0.16)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1) - '@digitalcredentials/jsonld-signatures': 10.0.1(expo-crypto@12.8.1)(expo@49.0.16)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1) + '@digitalcredentials/ed25519-signature-2020': 4.0.0(expo-crypto@12.8.1)(expo@50.0.11)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1) + '@digitalcredentials/jsonld-signatures': 10.0.1(expo-crypto@12.8.1)(expo@50.0.11)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1) '@digitalcredentials/open-badges-context': 2.1.0 credentials-context: 2.0.0 fix-esm: 1.0.1 @@ -5134,6 +6091,7 @@ packages: - msrcrypto - react-native-securerandom - supports-color + dev: false /@discoveryjs/json-ext@0.5.7: resolution: {integrity: sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==} @@ -5143,7 +6101,7 @@ packages: resolution: {integrity: sha512-+sbxb71sWre+PwDK7X2T8+bhS6clcVMLwBPznX45Qu6opJcgRjAp7gYSDzVFp187J+feSj5dNBN1mJoi6ckkUQ==} dev: false - /@docsearch/react@3.6.0(@algolia/client-search@4.20.0)(@types/react@18.2.63)(react-dom@18.2.0)(react@18.2.0)(search-insights@2.9.0): + /@docsearch/react@3.6.0(@algolia/client-search@4.22.1)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0)(search-insights@2.13.0): resolution: {integrity: sha512-HUFut4ztcVNmqy9gp/wxNbC7pTOHhgVVkHVGCACTuLhUKUhKAF9KYHJtMiLUJxEqiFLQiuri1fWF8zqwM/cu1w==} peerDependencies: '@types/react': '>= 16.8.0 < 19.0.0' @@ -5160,19 +6118,19 @@ packages: search-insights: optional: true dependencies: - '@algolia/autocomplete-core': 1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.19.1)(search-insights@2.9.0) - '@algolia/autocomplete-preset-algolia': 1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.19.1) + '@algolia/autocomplete-core': 1.9.3(@algolia/client-search@4.22.1)(algoliasearch@4.19.1)(search-insights@2.13.0) + '@algolia/autocomplete-preset-algolia': 1.9.3(@algolia/client-search@4.22.1)(algoliasearch@4.19.1) '@docsearch/css': 3.6.0 - '@types/react': 18.2.63 + '@types/react': 18.2.64 algoliasearch: 4.19.1 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) - search-insights: 2.9.0 + search-insights: 2.13.0 transitivePeerDependencies: - '@algolia/client-search' dev: false - /@docusaurus/core@3.1.1(@docusaurus/types@3.1.1)(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3): + /@docusaurus/core@3.1.1(@docusaurus/types@3.1.1)(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2): resolution: {integrity: sha512-2nQfKFcf+MLEM7JXsXwQxPOmQAR6ytKMZVSx7tVi9HEm9WtfwBH1fp6bn8Gj4zLUhjWKCLoysQ9/Wm+EZCQ4yQ==} engines: {node: '>=18.0'} hasBin: true @@ -5227,10 +6185,10 @@ packages: lodash: 4.17.21 mini-css-extract-plugin: 2.7.6(webpack@5.89.0) postcss: 8.4.35 - postcss-loader: 7.3.3(postcss@8.4.35)(typescript@5.3.3)(webpack@5.89.0) + postcss-loader: 7.3.3(postcss@8.4.35)(typescript@5.4.2)(webpack@5.89.0) prompts: 2.4.2 react: 18.2.0 - react-dev-utils: 12.0.1(eslint@8.57.0)(typescript@5.3.3)(webpack@5.89.0) + react-dev-utils: 12.0.1(typescript@5.4.2)(webpack@5.89.0) react-dom: 18.2.0(react@18.2.0) react-helmet-async: 1.3.0(react-dom@18.2.0)(react@18.2.0) react-loadable: /@docusaurus/react-loadable@5.5.2(react@18.2.0) @@ -5337,7 +6295,7 @@ packages: '@docusaurus/react-loadable': 5.5.2(react@18.2.0) '@docusaurus/types': 3.1.1(react-dom@18.2.0)(react@18.2.0) '@types/history': 4.7.11 - '@types/react': 18.2.63 + '@types/react': 18.2.64 '@types/react-router-config': 5.0.7 '@types/react-router-dom': 5.3.3 react: 18.2.0 @@ -5351,14 +6309,14 @@ packages: - uglify-js - webpack-cli - /@docusaurus/plugin-content-blog@3.1.1(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3): + /@docusaurus/plugin-content-blog@3.1.1(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2): resolution: {integrity: sha512-ew/3VtVoG3emoAKmoZl7oKe1zdFOsI0NbcHS26kIxt2Z8vcXKCUgK9jJJrz0TbOipyETPhqwq4nbitrY3baibg==} engines: {node: '>=18.0'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 3.1.1(@docusaurus/types@3.1.1)(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) + '@docusaurus/core': 3.1.1(@docusaurus/types@3.1.1)(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) '@docusaurus/logger': 3.1.1 '@docusaurus/mdx-loader': 3.1.1(@docusaurus/types@3.1.1)(react-dom@18.2.0)(react@18.2.0) '@docusaurus/types': 3.1.1(react-dom@18.2.0)(react@18.2.0) @@ -5395,14 +6353,14 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-content-docs@3.1.1(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3): + /@docusaurus/plugin-content-docs@3.1.1(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2): resolution: {integrity: sha512-lhFq4E874zw0UOH7ujzxnCayOyAt0f9YPVYSb9ohxrdCM8B4szxitUw9rIX4V9JLLHVoqIJb6k+lJJ1jrcGJ0A==} engines: {node: '>=18.0'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 3.1.1(@docusaurus/types@3.1.1)(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) + '@docusaurus/core': 3.1.1(@docusaurus/types@3.1.1)(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) '@docusaurus/logger': 3.1.1 '@docusaurus/mdx-loader': 3.1.1(@docusaurus/types@3.1.1)(react-dom@18.2.0)(react@18.2.0) '@docusaurus/module-type-aliases': 3.1.1(react-dom@18.2.0)(react@18.2.0) @@ -5436,14 +6394,14 @@ packages: - vue-template-compiler - webpack-cli - /@docusaurus/plugin-content-pages@3.1.1(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3): + /@docusaurus/plugin-content-pages@3.1.1(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2): resolution: {integrity: sha512-NQHncNRAJbyLtgTim9GlEnNYsFhuCxaCNkMwikuxLTiGIPH7r/jpb7O3f3jUMYMebZZZrDq5S7om9a6rvB/YCA==} engines: {node: '>=18.0'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 3.1.1(@docusaurus/types@3.1.1)(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) + '@docusaurus/core': 3.1.1(@docusaurus/types@3.1.1)(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) '@docusaurus/mdx-loader': 3.1.1(@docusaurus/types@3.1.1)(react-dom@18.2.0)(react@18.2.0) '@docusaurus/types': 3.1.1(react-dom@18.2.0)(react@18.2.0) '@docusaurus/utils': 3.1.1(@docusaurus/types@3.1.1) @@ -5471,14 +6429,14 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-debug@3.1.1(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3): + /@docusaurus/plugin-debug@3.1.1(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2): resolution: {integrity: sha512-xWeMkueM9wE/8LVvl4+Qf1WqwXmreMjI5Kgr7GYCDoJ8zu4kD+KaMhrh7py7MNM38IFvU1RfrGKacCEe2DRRfQ==} engines: {node: '>=18.0'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 3.1.1(@docusaurus/types@3.1.1)(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) + '@docusaurus/core': 3.1.1(@docusaurus/types@3.1.1)(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) '@docusaurus/types': 3.1.1(react-dom@18.2.0)(react@18.2.0) '@docusaurus/utils': 3.1.1(@docusaurus/types@3.1.1) fs-extra: 11.1.1 @@ -5504,14 +6462,14 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-google-analytics@3.1.1(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3): + /@docusaurus/plugin-google-analytics@3.1.1(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2): resolution: {integrity: sha512-+q2UpWTqVi8GdlLoSlD5bS/YpxW+QMoBwrPrUH/NpvpuOi0Of7MTotsQf9JWd3hymZxl2uu1o3PIrbpxfeDFDQ==} engines: {node: '>=18.0'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 3.1.1(@docusaurus/types@3.1.1)(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) + '@docusaurus/core': 3.1.1(@docusaurus/types@3.1.1)(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) '@docusaurus/types': 3.1.1(react-dom@18.2.0)(react@18.2.0) '@docusaurus/utils-validation': 3.1.1(@docusaurus/types@3.1.1) react: 18.2.0 @@ -5535,14 +6493,14 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-google-gtag@3.1.1(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3): + /@docusaurus/plugin-google-gtag@3.1.1(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2): resolution: {integrity: sha512-0mMPiBBlQ5LFHTtjxuvt/6yzh8v7OxLi3CbeEsxXZpUzcKO/GC7UA1VOWUoBeQzQL508J12HTAlR3IBU9OofSw==} engines: {node: '>=18.0'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 3.1.1(@docusaurus/types@3.1.1)(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) + '@docusaurus/core': 3.1.1(@docusaurus/types@3.1.1)(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) '@docusaurus/types': 3.1.1(react-dom@18.2.0)(react@18.2.0) '@docusaurus/utils-validation': 3.1.1(@docusaurus/types@3.1.1) '@types/gtag.js': 0.0.12 @@ -5567,14 +6525,14 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-google-tag-manager@3.1.1(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3): + /@docusaurus/plugin-google-tag-manager@3.1.1(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2): resolution: {integrity: sha512-d07bsrMLdDIryDtY17DgqYUbjkswZQr8cLWl4tzXrt5OR/T/zxC1SYKajzB3fd87zTu5W5klV5GmUwcNSMXQXA==} engines: {node: '>=18.0'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 3.1.1(@docusaurus/types@3.1.1)(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) + '@docusaurus/core': 3.1.1(@docusaurus/types@3.1.1)(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) '@docusaurus/types': 3.1.1(react-dom@18.2.0)(react@18.2.0) '@docusaurus/utils-validation': 3.1.1(@docusaurus/types@3.1.1) react: 18.2.0 @@ -5598,14 +6556,14 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-sitemap@3.1.1(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3): + /@docusaurus/plugin-sitemap@3.1.1(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2): resolution: {integrity: sha512-iJ4hCaMmDaUqRv131XJdt/C/jJQx8UreDWTRqZKtNydvZVh/o4yXGRRFOplea1D9b/zpwL1Y+ZDwX7xMhIOTmg==} engines: {node: '>=18.0'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 3.1.1(@docusaurus/types@3.1.1)(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) + '@docusaurus/core': 3.1.1(@docusaurus/types@3.1.1)(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) '@docusaurus/logger': 3.1.1 '@docusaurus/types': 3.1.1(react-dom@18.2.0)(react@18.2.0) '@docusaurus/utils': 3.1.1(@docusaurus/types@3.1.1) @@ -5634,25 +6592,25 @@ packages: - webpack-cli dev: false - /@docusaurus/preset-classic@3.1.1(@algolia/client-search@4.20.0)(@types/react@18.2.63)(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(search-insights@2.9.0)(typescript@5.3.3): + /@docusaurus/preset-classic@3.1.1(@algolia/client-search@4.22.1)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0)(search-insights@2.13.0)(typescript@5.4.2): resolution: {integrity: sha512-jG4ys/hWYf69iaN/xOmF+3kjs4Nnz1Ay3CjFLDtYa8KdxbmUhArA9HmP26ru5N0wbVWhY+6kmpYhTJpez5wTyg==} engines: {node: '>=18.0'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 3.1.1(@docusaurus/types@3.1.1)(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) - '@docusaurus/plugin-content-blog': 3.1.1(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) - '@docusaurus/plugin-content-docs': 3.1.1(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) - '@docusaurus/plugin-content-pages': 3.1.1(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) - '@docusaurus/plugin-debug': 3.1.1(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) - '@docusaurus/plugin-google-analytics': 3.1.1(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) - '@docusaurus/plugin-google-gtag': 3.1.1(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) - '@docusaurus/plugin-google-tag-manager': 3.1.1(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) - '@docusaurus/plugin-sitemap': 3.1.1(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) - '@docusaurus/theme-classic': 3.1.1(@types/react@18.2.63)(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) - '@docusaurus/theme-common': 3.1.1(@docusaurus/types@3.1.1)(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) - '@docusaurus/theme-search-algolia': 3.1.1(@algolia/client-search@4.20.0)(@docusaurus/types@3.1.1)(@types/react@18.2.63)(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(search-insights@2.9.0)(typescript@5.3.3) + '@docusaurus/core': 3.1.1(@docusaurus/types@3.1.1)(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) + '@docusaurus/plugin-content-blog': 3.1.1(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) + '@docusaurus/plugin-content-docs': 3.1.1(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) + '@docusaurus/plugin-content-pages': 3.1.1(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) + '@docusaurus/plugin-debug': 3.1.1(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) + '@docusaurus/plugin-google-analytics': 3.1.1(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) + '@docusaurus/plugin-google-gtag': 3.1.1(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) + '@docusaurus/plugin-google-tag-manager': 3.1.1(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) + '@docusaurus/plugin-sitemap': 3.1.1(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) + '@docusaurus/theme-classic': 3.1.1(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) + '@docusaurus/theme-common': 3.1.1(@docusaurus/types@3.1.1)(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) + '@docusaurus/theme-search-algolia': 3.1.1(@algolia/client-search@4.22.1)(@docusaurus/types@3.1.1)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0)(search-insights@2.13.0)(typescript@5.4.2) '@docusaurus/types': 3.1.1(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -5682,30 +6640,30 @@ packages: peerDependencies: react: '*' dependencies: - '@types/react': 18.2.63 + '@types/react': 18.2.64 prop-types: 15.8.1 react: 18.2.0 - /@docusaurus/theme-classic@3.1.1(@types/react@18.2.63)(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3): + /@docusaurus/theme-classic@3.1.1(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2): resolution: {integrity: sha512-GiPE/jbWM8Qv1A14lk6s9fhc0LhPEQ00eIczRO4QL2nAQJZXkjPG6zaVx+1cZxPFWbAsqSjKe2lqkwF3fGkQ7Q==} engines: {node: '>=18.0'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 3.1.1(@docusaurus/types@3.1.1)(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) + '@docusaurus/core': 3.1.1(@docusaurus/types@3.1.1)(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) '@docusaurus/mdx-loader': 3.1.1(@docusaurus/types@3.1.1)(react-dom@18.2.0)(react@18.2.0) '@docusaurus/module-type-aliases': 3.1.1(react-dom@18.2.0)(react@18.2.0) - '@docusaurus/plugin-content-blog': 3.1.1(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) - '@docusaurus/plugin-content-docs': 3.1.1(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) - '@docusaurus/plugin-content-pages': 3.1.1(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) - '@docusaurus/theme-common': 3.1.1(@docusaurus/types@3.1.1)(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) + '@docusaurus/plugin-content-blog': 3.1.1(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) + '@docusaurus/plugin-content-docs': 3.1.1(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) + '@docusaurus/plugin-content-pages': 3.1.1(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) + '@docusaurus/theme-common': 3.1.1(@docusaurus/types@3.1.1)(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) '@docusaurus/theme-translations': 3.1.1 '@docusaurus/types': 3.1.1(react-dom@18.2.0)(react@18.2.0) '@docusaurus/utils': 3.1.1(@docusaurus/types@3.1.1) '@docusaurus/utils-common': 3.1.1(@docusaurus/types@3.1.1) '@docusaurus/utils-validation': 3.1.1(@docusaurus/types@3.1.1) - '@mdx-js/react': 3.0.1(@types/react@18.2.63)(react@18.2.0) + '@mdx-js/react': 3.0.1(@types/react@18.2.64)(react@18.2.0) clsx: 2.1.0 copy-text-to-clipboard: 3.2.0 infima: 0.2.0-alpha.43 @@ -5739,7 +6697,7 @@ packages: - webpack-cli dev: false - /@docusaurus/theme-common@3.1.1(@docusaurus/types@3.1.1)(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3): + /@docusaurus/theme-common@3.1.1(@docusaurus/types@3.1.1)(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2): resolution: {integrity: sha512-38urZfeMhN70YaXkwIGXmcUcv2CEYK/2l4b05GkJPrbEbgpsIZM3Xc+Js2ehBGGZmfZq8GjjQ5RNQYG+MYzCYg==} engines: {node: '>=18.0'} peerDependencies: @@ -5748,13 +6706,13 @@ packages: dependencies: '@docusaurus/mdx-loader': 3.1.1(@docusaurus/types@3.1.1)(react-dom@18.2.0)(react@18.2.0) '@docusaurus/module-type-aliases': 3.1.1(react-dom@18.2.0)(react@18.2.0) - '@docusaurus/plugin-content-blog': 3.1.1(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) - '@docusaurus/plugin-content-docs': 3.1.1(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) - '@docusaurus/plugin-content-pages': 3.1.1(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) + '@docusaurus/plugin-content-blog': 3.1.1(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) + '@docusaurus/plugin-content-docs': 3.1.1(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) + '@docusaurus/plugin-content-pages': 3.1.1(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) '@docusaurus/utils': 3.1.1(@docusaurus/types@3.1.1) '@docusaurus/utils-common': 3.1.1(@docusaurus/types@3.1.1) '@types/history': 4.7.11 - '@types/react': 18.2.63 + '@types/react': 18.2.64 '@types/react-router-config': 5.0.7 clsx: 2.1.0 parse-numeric-range: 1.3.0 @@ -5782,18 +6740,18 @@ packages: - webpack-cli dev: false - /@docusaurus/theme-search-algolia@3.1.1(@algolia/client-search@4.20.0)(@docusaurus/types@3.1.1)(@types/react@18.2.63)(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(search-insights@2.9.0)(typescript@5.3.3): + /@docusaurus/theme-search-algolia@3.1.1(@algolia/client-search@4.22.1)(@docusaurus/types@3.1.1)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0)(search-insights@2.13.0)(typescript@5.4.2): resolution: {integrity: sha512-tBH9VY5EpRctVdaAhT+b1BY8y5dyHVZGFXyCHgTrvcXQy5CV4q7serEX7U3SveNT9zksmchPyct6i1sFDC4Z5g==} engines: {node: '>=18.0'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 dependencies: - '@docsearch/react': 3.6.0(@algolia/client-search@4.20.0)(@types/react@18.2.63)(react-dom@18.2.0)(react@18.2.0)(search-insights@2.9.0) - '@docusaurus/core': 3.1.1(@docusaurus/types@3.1.1)(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) + '@docsearch/react': 3.6.0(@algolia/client-search@4.22.1)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0)(search-insights@2.13.0) + '@docusaurus/core': 3.1.1(@docusaurus/types@3.1.1)(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) '@docusaurus/logger': 3.1.1 - '@docusaurus/plugin-content-docs': 3.1.1(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) - '@docusaurus/theme-common': 3.1.1(@docusaurus/types@3.1.1)(eslint@8.57.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) + '@docusaurus/plugin-content-docs': 3.1.1(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) + '@docusaurus/theme-common': 3.1.1(@docusaurus/types@3.1.1)(react-dom@18.2.0)(react@18.2.0)(typescript@5.4.2) '@docusaurus/theme-translations': 3.1.1 '@docusaurus/utils': 3.1.1(@docusaurus/types@3.1.1) '@docusaurus/utils-validation': 3.1.1(@docusaurus/types@3.1.1) @@ -5845,7 +6803,7 @@ packages: dependencies: '@mdx-js/mdx': 3.0.1 '@types/history': 4.7.11 - '@types/react': 18.2.63 + '@types/react': 18.2.64 commander: 5.1.0 joi: 17.11.0 react: 18.2.0 @@ -5986,7 +6944,7 @@ packages: resolution: {integrity: sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==} dev: false - /@emotion/react@11.11.4(@types/react@18.2.63)(react@18.2.0): + /@emotion/react@11.11.4(@types/react@18.2.64)(react@18.2.0): resolution: {integrity: sha512-t8AjMlF0gHpvvxk5mAtCqR4vmxiGHCeJBaQO6gncUSdklELOgtwjerNY2yuJNfwnc6vi16U/+uMF+afIawJ9iw==} peerDependencies: '@types/react': '*' @@ -6002,7 +6960,7 @@ packages: '@emotion/use-insertion-effect-with-fallbacks': 1.0.1(react@18.2.0) '@emotion/utils': 1.2.1 '@emotion/weak-memoize': 0.3.1 - '@types/react': 18.2.63 + '@types/react': 18.2.64 hoist-non-react-statics: 3.3.2 react: 18.2.0 dev: false @@ -6031,7 +6989,7 @@ packages: resolution: {integrity: sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA==} dev: false - /@emotion/styled@11.11.0(@emotion/react@11.11.4)(@types/react@18.2.63)(react@18.2.0): + /@emotion/styled@11.11.0(@emotion/react@11.11.4)(@types/react@18.2.64)(react@18.2.0): resolution: {integrity: sha512-hM5Nnvu9P3midq5aaXj4I+lnSfNi7Pmd4EWk1fOZ3pxookaQTNew6bp4JaCBYM4HVFZF9g7UjJmsUmC2JlxOng==} peerDependencies: '@emotion/react': ^11.0.0-rc.0 @@ -6044,11 +7002,11 @@ packages: '@babel/runtime': 7.22.6 '@emotion/babel-plugin': 11.11.0 '@emotion/is-prop-valid': 1.2.1 - '@emotion/react': 11.11.4(@types/react@18.2.63)(react@18.2.0) + '@emotion/react': 11.11.4(@types/react@18.2.64)(react@18.2.0) '@emotion/serialize': 1.1.2 '@emotion/use-insertion-effect-with-fallbacks': 1.0.1(react@18.2.0) '@emotion/utils': 1.2.1 - '@types/react': 18.2.63 + '@types/react': 18.2.64 react: 18.2.0 dev: false @@ -6076,8 +7034,8 @@ packages: resolution: {integrity: sha512-Ol8ct0aW8VK1ZaqntnUJfrYT59P6Xn36XPbHzkqQhsYkpudKDn5ILYEwGmSO/Ff+XJjv/pReNI0lhOyyrDa9mg==} dev: true - /@esbuild/aix-ppc64@0.20.1: - resolution: {integrity: sha512-m55cpeupQ2DbuRGQMMZDzbv9J9PgVelPjlcmM5kxHnrBdBx6REaEd7LamYV7Dm8N7rCyR/XwU6rVP8ploKtIkA==} + /@esbuild/aix-ppc64@0.19.12: + resolution: {integrity: sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA==} engines: {node: '>=12'} cpu: [ppc64] os: [aix] @@ -6085,17 +7043,17 @@ packages: dev: true optional: true - /@esbuild/android-arm64@0.18.20: - resolution: {integrity: sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==} + /@esbuild/aix-ppc64@0.20.1: + resolution: {integrity: sha512-m55cpeupQ2DbuRGQMMZDzbv9J9PgVelPjlcmM5kxHnrBdBx6REaEd7LamYV7Dm8N7rCyR/XwU6rVP8ploKtIkA==} engines: {node: '>=12'} - cpu: [arm64] - os: [android] + cpu: [ppc64] + os: [aix] requiresBuild: true dev: true optional: true - /@esbuild/android-arm64@0.19.5: - resolution: {integrity: sha512-5d1OkoJxnYQfmC+Zd8NBFjkhyCNYwM4n9ODrycTFY6Jk1IGiZ+tjVJDDSwDt77nK+tfpGP4T50iMtVi4dEGzhQ==} + /@esbuild/android-arm64@0.19.12: + resolution: {integrity: sha512-P0UVNGIienjZv3f5zq0DP3Nt2IE/3plFzuaS96vihvD0Hd6H/q4WXUGpCxD/E8YrSXfNyRPbpTq+T8ZQioSuPA==} engines: {node: '>=12'} cpu: [arm64] os: [android] @@ -6112,17 +7070,8 @@ packages: dev: true optional: true - /@esbuild/android-arm@0.18.20: - resolution: {integrity: sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==} - engines: {node: '>=12'} - cpu: [arm] - os: [android] - requiresBuild: true - dev: true - optional: true - - /@esbuild/android-arm@0.19.5: - resolution: {integrity: sha512-bhvbzWFF3CwMs5tbjf3ObfGqbl/17ict2/uwOSfr3wmxDE6VdS2GqY/FuzIPe0q0bdhj65zQsvqfArI9MY6+AA==} + /@esbuild/android-arm@0.19.12: + resolution: {integrity: sha512-qg/Lj1mu3CdQlDEEiWrlC4eaPZ1KztwGJ9B6J+/6G+/4ewxJg7gqj8eVYWvao1bXrqGiW2rsBZFSX3q2lcW05w==} engines: {node: '>=12'} cpu: [arm] os: [android] @@ -6139,17 +7088,8 @@ packages: dev: true optional: true - /@esbuild/android-x64@0.18.20: - resolution: {integrity: sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==} - engines: {node: '>=12'} - cpu: [x64] - os: [android] - requiresBuild: true - dev: true - optional: true - - /@esbuild/android-x64@0.19.5: - resolution: {integrity: sha512-9t+28jHGL7uBdkBjL90QFxe7DVA+KGqWlHCF8ChTKyaKO//VLuoBricQCgwhOjA1/qOczsw843Fy4cbs4H3DVA==} + /@esbuild/android-x64@0.19.12: + resolution: {integrity: sha512-3k7ZoUW6Q6YqhdhIaq/WZ7HwBpnFBlW905Fa4s4qWJyiNOgT1dOqDiVAQFwBH7gBRZr17gLrlFCRzF6jFh7Kew==} engines: {node: '>=12'} cpu: [x64] os: [android] @@ -6166,17 +7106,8 @@ packages: dev: true optional: true - /@esbuild/darwin-arm64@0.18.20: - resolution: {integrity: sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==} - engines: {node: '>=12'} - cpu: [arm64] - os: [darwin] - requiresBuild: true - dev: true - optional: true - - /@esbuild/darwin-arm64@0.19.5: - resolution: {integrity: sha512-mvXGcKqqIqyKoxq26qEDPHJuBYUA5KizJncKOAf9eJQez+L9O+KfvNFu6nl7SCZ/gFb2QPaRqqmG0doSWlgkqw==} + /@esbuild/darwin-arm64@0.19.12: + resolution: {integrity: sha512-B6IeSgZgtEzGC42jsI+YYu9Z3HKRxp8ZT3cqhvliEHovq8HSX2YX8lNocDn79gCKJXOSaEot9MVYky7AKjCs8g==} engines: {node: '>=12'} cpu: [arm64] os: [darwin] @@ -6193,17 +7124,8 @@ packages: dev: true optional: true - /@esbuild/darwin-x64@0.18.20: - resolution: {integrity: sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [darwin] - requiresBuild: true - dev: true - optional: true - - /@esbuild/darwin-x64@0.19.5: - resolution: {integrity: sha512-Ly8cn6fGLNet19s0X4unjcniX24I0RqjPv+kurpXabZYSXGM4Pwpmf85WHJN3lAgB8GSth7s5A0r856S+4DyiA==} + /@esbuild/darwin-x64@0.19.12: + resolution: {integrity: sha512-hKoVkKzFiToTgn+41qGhsUJXFlIjxI/jSYeZf3ugemDYZldIXIxhvwN6erJGlX4t5h417iFuheZ7l+YVn05N3A==} engines: {node: '>=12'} cpu: [x64] os: [darwin] @@ -6220,17 +7142,8 @@ packages: dev: true optional: true - /@esbuild/freebsd-arm64@0.18.20: - resolution: {integrity: sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==} - engines: {node: '>=12'} - cpu: [arm64] - os: [freebsd] - requiresBuild: true - dev: true - optional: true - - /@esbuild/freebsd-arm64@0.19.5: - resolution: {integrity: sha512-GGDNnPWTmWE+DMchq1W8Sd0mUkL+APvJg3b11klSGUDvRXh70JqLAO56tubmq1s2cgpVCSKYywEiKBfju8JztQ==} + /@esbuild/freebsd-arm64@0.19.12: + resolution: {integrity: sha512-4aRvFIXmwAcDBw9AueDQ2YnGmz5L6obe5kmPT8Vd+/+x/JMVKCgdcRwH6APrbpNXsPz+K653Qg8HB/oXvXVukA==} engines: {node: '>=12'} cpu: [arm64] os: [freebsd] @@ -6247,17 +7160,8 @@ packages: dev: true optional: true - /@esbuild/freebsd-x64@0.18.20: - resolution: {integrity: sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [freebsd] - requiresBuild: true - dev: true - optional: true - - /@esbuild/freebsd-x64@0.19.5: - resolution: {integrity: sha512-1CCwDHnSSoA0HNwdfoNY0jLfJpd7ygaLAp5EHFos3VWJCRX9DMwWODf96s9TSse39Br7oOTLryRVmBoFwXbuuQ==} + /@esbuild/freebsd-x64@0.19.12: + resolution: {integrity: sha512-EYoXZ4d8xtBoVN7CEwWY2IN4ho76xjYXqSXMNccFSx2lgqOG/1TBPW0yPx1bJZk94qu3tX0fycJeeQsKovA8gg==} engines: {node: '>=12'} cpu: [x64] os: [freebsd] @@ -6274,17 +7178,8 @@ packages: dev: true optional: true - /@esbuild/linux-arm64@0.18.20: - resolution: {integrity: sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==} - engines: {node: '>=12'} - cpu: [arm64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@esbuild/linux-arm64@0.19.5: - resolution: {integrity: sha512-o3vYippBmSrjjQUCEEiTZ2l+4yC0pVJD/Dl57WfPwwlvFkrxoSO7rmBZFii6kQB3Wrn/6GwJUPLU5t52eq2meA==} + /@esbuild/linux-arm64@0.19.12: + resolution: {integrity: sha512-EoTjyYyLuVPfdPLsGVVVC8a0p1BFFvtpQDB/YLEhaXyf/5bczaGeN15QkR+O4S5LeJ92Tqotve7i1jn35qwvdA==} engines: {node: '>=12'} cpu: [arm64] os: [linux] @@ -6301,17 +7196,8 @@ packages: dev: true optional: true - /@esbuild/linux-arm@0.18.20: - resolution: {integrity: sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==} - engines: {node: '>=12'} - cpu: [arm] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@esbuild/linux-arm@0.19.5: - resolution: {integrity: sha512-lrWXLY/vJBzCPC51QN0HM71uWgIEpGSjSZZADQhq7DKhPcI6NH1IdzjfHkDQws2oNpJKpR13kv7/pFHBbDQDwQ==} + /@esbuild/linux-arm@0.19.12: + resolution: {integrity: sha512-J5jPms//KhSNv+LO1S1TX1UWp1ucM6N6XuL6ITdKWElCu8wXP72l9MM0zDTzzeikVyqFE6U8YAV9/tFyj0ti+w==} engines: {node: '>=12'} cpu: [arm] os: [linux] @@ -6328,17 +7214,8 @@ packages: dev: true optional: true - /@esbuild/linux-ia32@0.18.20: - resolution: {integrity: sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==} - engines: {node: '>=12'} - cpu: [ia32] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@esbuild/linux-ia32@0.19.5: - resolution: {integrity: sha512-MkjHXS03AXAkNp1KKkhSKPOCYztRtK+KXDNkBa6P78F8Bw0ynknCSClO/ztGszILZtyO/lVKpa7MolbBZ6oJtQ==} + /@esbuild/linux-ia32@0.19.12: + resolution: {integrity: sha512-Thsa42rrP1+UIGaWz47uydHSBOgTUnwBwNq59khgIwktK6x60Hivfbux9iNR0eHCHzOLjLMLfUMLCypBkZXMHA==} engines: {node: '>=12'} cpu: [ia32] os: [linux] @@ -6355,17 +7232,8 @@ packages: dev: true optional: true - /@esbuild/linux-loong64@0.18.20: - resolution: {integrity: sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==} - engines: {node: '>=12'} - cpu: [loong64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@esbuild/linux-loong64@0.19.5: - resolution: {integrity: sha512-42GwZMm5oYOD/JHqHska3Jg0r+XFb/fdZRX+WjADm3nLWLcIsN27YKtqxzQmGNJgu0AyXg4HtcSK9HuOk3v1Dw==} + /@esbuild/linux-loong64@0.19.12: + resolution: {integrity: sha512-LiXdXA0s3IqRRjm6rV6XaWATScKAXjI4R4LoDlvO7+yQqFdlr1Bax62sRwkVvRIrwXxvtYEHHI4dm50jAXkuAA==} engines: {node: '>=12'} cpu: [loong64] os: [linux] @@ -6382,17 +7250,8 @@ packages: dev: true optional: true - /@esbuild/linux-mips64el@0.18.20: - resolution: {integrity: sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==} - engines: {node: '>=12'} - cpu: [mips64el] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@esbuild/linux-mips64el@0.19.5: - resolution: {integrity: sha512-kcjndCSMitUuPJobWCnwQ9lLjiLZUR3QLQmlgaBfMX23UEa7ZOrtufnRds+6WZtIS9HdTXqND4yH8NLoVVIkcg==} + /@esbuild/linux-mips64el@0.19.12: + resolution: {integrity: sha512-fEnAuj5VGTanfJ07ff0gOA6IPsvrVHLVb6Lyd1g2/ed67oU1eFzL0r9WL7ZzscD+/N6i3dWumGE1Un4f7Amf+w==} engines: {node: '>=12'} cpu: [mips64el] os: [linux] @@ -6409,17 +7268,8 @@ packages: dev: true optional: true - /@esbuild/linux-ppc64@0.18.20: - resolution: {integrity: sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==} - engines: {node: '>=12'} - cpu: [ppc64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@esbuild/linux-ppc64@0.19.5: - resolution: {integrity: sha512-yJAxJfHVm0ZbsiljbtFFP1BQKLc8kUF6+17tjQ78QjqjAQDnhULWiTA6u0FCDmYT1oOKS9PzZ2z0aBI+Mcyj7Q==} + /@esbuild/linux-ppc64@0.19.12: + resolution: {integrity: sha512-nYJA2/QPimDQOh1rKWedNOe3Gfc8PabU7HT3iXWtNUbRzXS9+vgB0Fjaqr//XNbd82mCxHzik2qotuI89cfixg==} engines: {node: '>=12'} cpu: [ppc64] os: [linux] @@ -6436,17 +7286,8 @@ packages: dev: true optional: true - /@esbuild/linux-riscv64@0.18.20: - resolution: {integrity: sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==} - engines: {node: '>=12'} - cpu: [riscv64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@esbuild/linux-riscv64@0.19.5: - resolution: {integrity: sha512-5u8cIR/t3gaD6ad3wNt1MNRstAZO+aNyBxu2We8X31bA8XUNyamTVQwLDA1SLoPCUehNCymhBhK3Qim1433Zag==} + /@esbuild/linux-riscv64@0.19.12: + resolution: {integrity: sha512-2MueBrlPQCw5dVJJpQdUYgeqIzDQgw3QtiAHUC4RBz9FXPrskyyU3VI1hw7C0BSKB9OduwSJ79FTCqtGMWqJHg==} engines: {node: '>=12'} cpu: [riscv64] os: [linux] @@ -6463,17 +7304,8 @@ packages: dev: true optional: true - /@esbuild/linux-s390x@0.18.20: - resolution: {integrity: sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==} - engines: {node: '>=12'} - cpu: [s390x] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@esbuild/linux-s390x@0.19.5: - resolution: {integrity: sha512-Z6JrMyEw/EmZBD/OFEFpb+gao9xJ59ATsoTNlj39jVBbXqoZm4Xntu6wVmGPB/OATi1uk/DB+yeDPv2E8PqZGw==} + /@esbuild/linux-s390x@0.19.12: + resolution: {integrity: sha512-+Pil1Nv3Umes4m3AZKqA2anfhJiVmNCYkPchwFJNEJN5QxmTs1uzyy4TvmDrCRNT2ApwSari7ZIgrPeUx4UZDg==} engines: {node: '>=12'} cpu: [s390x] os: [linux] @@ -6490,17 +7322,8 @@ packages: dev: true optional: true - /@esbuild/linux-x64@0.18.20: - resolution: {integrity: sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==} - engines: {node: '>=12'} - cpu: [x64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@esbuild/linux-x64@0.19.5: - resolution: {integrity: sha512-psagl+2RlK1z8zWZOmVdImisMtrUxvwereIdyJTmtmHahJTKb64pAcqoPlx6CewPdvGvUKe2Jw+0Z/0qhSbG1A==} + /@esbuild/linux-x64@0.19.12: + resolution: {integrity: sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg==} engines: {node: '>=12'} cpu: [x64] os: [linux] @@ -6517,17 +7340,8 @@ packages: dev: true optional: true - /@esbuild/netbsd-x64@0.18.20: - resolution: {integrity: sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==} - engines: {node: '>=12'} - cpu: [x64] - os: [netbsd] - requiresBuild: true - dev: true - optional: true - - /@esbuild/netbsd-x64@0.19.5: - resolution: {integrity: sha512-kL2l+xScnAy/E/3119OggX8SrWyBEcqAh8aOY1gr4gPvw76la2GlD4Ymf832UCVbmuWeTf2adkZDK+h0Z/fB4g==} + /@esbuild/netbsd-x64@0.19.12: + resolution: {integrity: sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA==} engines: {node: '>=12'} cpu: [x64] os: [netbsd] @@ -6544,17 +7358,8 @@ packages: dev: true optional: true - /@esbuild/openbsd-x64@0.18.20: - resolution: {integrity: sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==} - engines: {node: '>=12'} - cpu: [x64] - os: [openbsd] - requiresBuild: true - dev: true - optional: true - - /@esbuild/openbsd-x64@0.19.5: - resolution: {integrity: sha512-sPOfhtzFufQfTBgRnE1DIJjzsXukKSvZxloZbkJDG383q0awVAq600pc1nfqBcl0ice/WN9p4qLc39WhBShRTA==} + /@esbuild/openbsd-x64@0.19.12: + resolution: {integrity: sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw==} engines: {node: '>=12'} cpu: [x64] os: [openbsd] @@ -6571,17 +7376,8 @@ packages: dev: true optional: true - /@esbuild/sunos-x64@0.18.20: - resolution: {integrity: sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [sunos] - requiresBuild: true - dev: true - optional: true - - /@esbuild/sunos-x64@0.19.5: - resolution: {integrity: sha512-dGZkBXaafuKLpDSjKcB0ax0FL36YXCvJNnztjKV+6CO82tTYVDSH2lifitJ29jxRMoUhgkg9a+VA/B03WK5lcg==} + /@esbuild/sunos-x64@0.19.12: + resolution: {integrity: sha512-HKjJwRrW8uWtCQnQOz9qcU3mUZhTUQvi56Q8DPTLLB+DawoiQdjsYq+j+D3s9I8VFtDr+F9CjgXKKC4ss89IeA==} engines: {node: '>=12'} cpu: [x64] os: [sunos] @@ -6598,17 +7394,8 @@ packages: dev: true optional: true - /@esbuild/win32-arm64@0.18.20: - resolution: {integrity: sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==} - engines: {node: '>=12'} - cpu: [arm64] - os: [win32] - requiresBuild: true - dev: true - optional: true - - /@esbuild/win32-arm64@0.19.5: - resolution: {integrity: sha512-dWVjD9y03ilhdRQ6Xig1NWNgfLtf2o/STKTS+eZuF90fI2BhbwD6WlaiCGKptlqXlURVB5AUOxUj09LuwKGDTg==} + /@esbuild/win32-arm64@0.19.12: + resolution: {integrity: sha512-URgtR1dJnmGvX864pn1B2YUYNzjmXkuJOIqG2HdU62MVS4EHpU2946OZoTMnRUHklGtJdJZ33QfzdjGACXhn1A==} engines: {node: '>=12'} cpu: [arm64] os: [win32] @@ -6625,17 +7412,8 @@ packages: dev: true optional: true - /@esbuild/win32-ia32@0.18.20: - resolution: {integrity: sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==} - engines: {node: '>=12'} - cpu: [ia32] - os: [win32] - requiresBuild: true - dev: true - optional: true - - /@esbuild/win32-ia32@0.19.5: - resolution: {integrity: sha512-4liggWIA4oDgUxqpZwrDhmEfAH4d0iljanDOK7AnVU89T6CzHon/ony8C5LeOdfgx60x5cnQJFZwEydVlYx4iw==} + /@esbuild/win32-ia32@0.19.12: + resolution: {integrity: sha512-+ZOE6pUkMOJfmxmBZElNOx72NKpIa/HFOMGzu8fqzQJ5kgf6aTGrcJaFsNiVMH4JKpMipyK+7k0n2UXN7a8YKQ==} engines: {node: '>=12'} cpu: [ia32] os: [win32] @@ -6652,17 +7430,8 @@ packages: dev: true optional: true - /@esbuild/win32-x64@0.18.20: - resolution: {integrity: sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [win32] - requiresBuild: true - dev: true - optional: true - - /@esbuild/win32-x64@0.19.5: - resolution: {integrity: sha512-czTrygUsB/jlM8qEW5MD8bgYU2Xg14lo6kBDXW6HdxKjh8M5PzETGiSHaz9MtbXBYDloHNUAUW2tMiKW4KM9Mw==} + /@esbuild/win32-x64@0.19.12: + resolution: {integrity: sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA==} engines: {node: '>=12'} cpu: [x64] os: [win32] @@ -6679,39 +7448,6 @@ packages: dev: true optional: true - /@eslint-community/eslint-utils@4.4.0(eslint@8.57.0): - resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - dependencies: - eslint: 8.57.0 - eslint-visitor-keys: 3.4.3 - - /@eslint-community/regexpp@4.10.0: - resolution: {integrity: sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==} - engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - - /@eslint/eslintrc@2.1.4: - resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - ajv: 6.12.6 - debug: 4.3.4 - espree: 9.6.1 - globals: 13.24.0 - ignore: 5.3.0 - import-fresh: 3.3.0 - js-yaml: 4.1.0 - minimatch: 3.1.2 - strip-json-comments: 3.1.1 - transitivePeerDependencies: - - supports-color - - /@eslint/js@8.57.0: - resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - /@ethereumjs/common@2.6.5: resolution: {integrity: sha512-lRyVQOeCDaIVtgfbowla32pzeDv2Obr8oR8Put5RdUBNRGr1VGPGQNGP6elWIpgK3YdpzqTOh4GyUGOureVeeA==} dependencies: @@ -7068,66 +7804,80 @@ packages: mv: 2.1.1 safe-json-stringify: 1.2.0 - /@expo/cli@0.10.14(encoding@0.1.13)(expo-modules-autolinking@1.5.1): - resolution: {integrity: sha512-IIZ9mYYHpNkK9XJAWLPtwTwZmasDq/NJsHLPjLtw5la4ANjWWwKYUcl3XKBECKovSDn9WHEQHGsBz6cyKS88Mg==} + /@expo/cli@0.17.7(@react-native/babel-preset@0.73.21)(encoding@0.1.13)(expo-modules-autolinking@1.10.3): + resolution: {integrity: sha512-sOssVCFCVXSdZr2/KdqPeT2Qwxmty3rZeO9g5RbzZexHz93VUyONuqGwO1VlYKibn7FLYEGUovqU9Xi8zVB6JQ==} hasBin: true dependencies: - '@babel/runtime': 7.23.2 + '@babel/runtime': 7.24.0 '@expo/code-signing-certificates': 0.0.5 - '@expo/config': 8.1.2 - '@expo/config-plugins': 7.2.5 - '@expo/dev-server': 0.5.5(encoding@0.1.13) + '@expo/config': 8.5.4 + '@expo/config-plugins': 7.8.4 '@expo/devcert': 1.1.0 - '@expo/env': 0.0.5 - '@expo/json-file': 8.2.37 - '@expo/metro-config': 0.10.7 - '@expo/osascript': 2.0.33 - '@expo/package-manager': 1.1.2 - '@expo/plist': 0.0.20 - '@expo/prebuild-config': 6.2.6(encoding@0.1.13)(expo-modules-autolinking@1.5.1) + '@expo/env': 0.2.2 + '@expo/image-utils': 0.4.1(encoding@0.1.13) + '@expo/json-file': 8.3.0 + '@expo/metro-config': 0.17.6(@react-native/babel-preset@0.73.21) + '@expo/osascript': 2.1.0 + '@expo/package-manager': 1.4.2 + '@expo/plist': 0.1.0 + '@expo/prebuild-config': 6.7.4(encoding@0.1.13)(expo-modules-autolinking@1.10.3) '@expo/rudder-sdk-node': 1.1.1(encoding@0.1.13) '@expo/spawn-async': 1.5.0 - '@expo/xcpretty': 4.2.2 + '@expo/xcpretty': 4.3.1 + '@react-native/dev-middleware': 0.73.8(encoding@0.1.13) '@urql/core': 2.3.6(graphql@15.8.0) '@urql/exchange-retry': 0.3.0(graphql@15.8.0) accepts: 1.3.8 - arg: 4.1.0 + arg: 5.0.2 better-opn: 3.0.2 bplist-parser: 0.3.2 cacache: 15.3.0 chalk: 4.1.2 ci-info: 3.9.0 + connect: 3.7.0 debug: 4.3.4 env-editor: 0.4.2 + find-yarn-workspace-root: 2.0.0 form-data: 3.0.1 freeport-async: 2.0.0 fs-extra: 8.1.0 getenv: 1.0.0 + glob: 7.2.3 graphql: 15.8.0 graphql-tag: 2.12.6(graphql@15.8.0) https-proxy-agent: 5.0.1 internal-ip: 4.3.0 + is-docker: 2.2.1 + is-wsl: 2.2.0 js-yaml: 3.14.1 json-schema-deref-sync: 0.13.0 - md5-file: 3.2.3 + lodash.debounce: 4.0.8 md5hex: 1.0.0 - minipass: 3.1.6 + minimatch: 3.1.2 + minipass: 3.3.6 node-fetch: 2.7.0(encoding@0.1.13) node-forge: 1.3.1 npm-package-arg: 7.0.0 + open: 8.4.2 ora: 3.4.0 + picomatch: 3.0.1 pretty-bytes: 5.6.0 progress: 2.0.3 prompts: 2.4.2 qrcode-terminal: 0.11.0 require-from-string: 2.0.2 requireg: 0.2.2 + resolve: 1.22.8 resolve-from: 5.0.0 - semver: 7.5.4 + resolve.exports: 2.0.2 + semver: 7.6.0 send: 0.18.0 slugify: 1.6.6 + source-map-support: 0.5.21 + stacktrace-parser: 0.1.10 structured-headers: 0.4.1 tar: 6.2.0 + temp-dir: 2.0.0 tempy: 0.7.1 terminal-link: 2.1.1 text-table: 0.2.0 @@ -7135,6 +7885,7 @@ packages: wrap-ansi: 7.0.0 ws: 8.16.0 transitivePeerDependencies: + - '@react-native/babel-preset' - bluebird - bufferutil - encoding @@ -7148,12 +7899,13 @@ packages: node-forge: 1.3.1 nullthrows: 1.1.1 - /@expo/config-plugins@7.2.5: - resolution: {integrity: sha512-w+5ccu1IxBHgyQk9CPFKLZOk8yZQEyTjbJwOzESK1eR7QwosbcsLkN1c1WWUZYiCXwORu3UTwJYll4+X2xxJhQ==} + /@expo/config-plugins@7.8.4: + resolution: {integrity: sha512-hv03HYxb/5kX8Gxv/BTI8TLc9L06WzqAfHRRXdbar4zkLcP2oTzvsLEF4/L/TIpD3rsnYa0KU42d0gWRxzPCJg==} dependencies: - '@expo/config-types': 49.0.0 - '@expo/json-file': 8.2.37 - '@expo/plist': 0.0.20 + '@expo/config-types': 50.0.0 + '@expo/fingerprint': 0.6.0 + '@expo/json-file': 8.3.0 + '@expo/plist': 0.1.0 '@expo/sdk-runtime-versions': 1.0.0 '@react-native/normalize-color': 2.1.0 chalk: 4.1.2 @@ -7162,23 +7914,24 @@ packages: getenv: 1.0.0 glob: 7.1.6 resolve-from: 5.0.0 - semver: 7.5.4 + semver: 7.6.0 slash: 3.0.0 + slugify: 1.6.6 xcode: 3.0.1 xml2js: 0.6.0 transitivePeerDependencies: - supports-color - /@expo/config-types@49.0.0: - resolution: {integrity: sha512-8eyREVi+K2acnMBe/rTIu1dOfyR2+AMnTLHlut+YpMV9OZPdeKV0Bs9BxAewGqBA2slslbQ9N39IS2CuTKpXkA==} + /@expo/config-types@50.0.0: + resolution: {integrity: sha512-0kkhIwXRT6EdFDwn+zTg9R2MZIAEYGn1MVkyRohAd+C9cXOb5RA8WLQi7vuxKF9m1SMtNAUrf0pO+ENK0+/KSw==} - /@expo/config@8.1.2: - resolution: {integrity: sha512-4e7hzPj50mQIlsrzOH6XZ36O094mPfPTIDIH4yv49bWNMc7GFLTofB/lcT+QyxiLaJuC0Wlk9yOLB8DIqmtwug==} + /@expo/config@8.5.4: + resolution: {integrity: sha512-ggOLJPHGzJSJHVBC1LzwXwR6qUn8Mw7hkc5zEKRIdhFRuIQ6s2FE4eOvP87LrNfDF7eZGa6tJQYsiHSmZKG+8Q==} dependencies: '@babel/code-frame': 7.10.4 - '@expo/config-plugins': 7.2.5 - '@expo/config-types': 49.0.0 - '@expo/json-file': 8.2.37 + '@expo/config-plugins': 7.8.4 + '@expo/config-types': 50.0.0 + '@expo/json-file': 8.3.0 getenv: 1.0.0 glob: 7.1.6 require-from-string: 2.0.2 @@ -7189,30 +7942,8 @@ packages: transitivePeerDependencies: - supports-color - /@expo/dev-server@0.5.5(encoding@0.1.13): - resolution: {integrity: sha512-t0fT8xH1exwYsH5hh7bAt85VF+gXxg24qrbny2rR/iKoPTWFCd2JNQV8pvfLg51hvrywQ3YCBuT3lU1w7aZxFA==} - dependencies: - '@expo/bunyan': 4.0.0 - '@expo/metro-config': 0.10.7 - '@expo/osascript': 2.0.33 - '@expo/spawn-async': 1.5.0 - body-parser: 1.20.2 - chalk: 4.1.2 - connect: 3.7.0 - fs-extra: 9.0.0 - is-docker: 2.2.1 - is-wsl: 2.2.0 - node-fetch: 2.7.0(encoding@0.1.13) - open: 8.4.2 - resolve-from: 5.0.0 - serialize-error: 6.0.0 - temp-dir: 2.0.0 - transitivePeerDependencies: - - encoding - - supports-color - - /@expo/devcert@1.1.0: - resolution: {integrity: sha512-ghUVhNJQOCTdQckSGTHctNp/0jzvVoMMkVh+6SHn+TZj8sU15U/npXIDt8NtQp0HedlPaCgkVdMu8Sacne0aEA==} + /@expo/devcert@1.1.0: + resolution: {integrity: sha512-ghUVhNJQOCTdQckSGTHctNp/0jzvVoMMkVh+6SHn+TZj8sU15U/npXIDt8NtQp0HedlPaCgkVdMu8Sacne0aEA==} dependencies: application-config-path: 0.1.1 command-exists: 1.2.9 @@ -7230,8 +7961,8 @@ packages: transitivePeerDependencies: - supports-color - /@expo/env@0.0.5: - resolution: {integrity: sha512-UXuKAqyXfhMQC3gP0OyjXmFX08Z1fkVWiGBN7bYzfoX8LHatjeHrDtI6w5nDvd8XPxPvmqaZoEDw1lW3+dz3oQ==} + /@expo/env@0.2.2: + resolution: {integrity: sha512-m9nGuaSpzdvMzevQ1H60FWgf4PG5s4J0dfKUzdAGnDu7sMUerY/yUeDaA4+OBo3vBwGVQ+UHcQS9vPSMBNaPcg==} dependencies: chalk: 4.1.2 debug: 4.3.4 @@ -7241,15 +7972,28 @@ packages: transitivePeerDependencies: - supports-color - /@expo/image-utils@0.3.22(encoding@0.1.13): - resolution: {integrity: sha512-uzq+RERAtkWypOFOLssFnXXqEqKjNj9eXN7e97d/EXUAojNcLDoXc0sL+F5B1I4qtlsnhX01kcpoIBBZD8wZNQ==} + /@expo/fingerprint@0.6.0: + resolution: {integrity: sha512-KfpoVRTMwMNJ/Cf5o+Ou8M/Y0EGSTqK+rbi70M2Y0K2qgWNfMJ1gm6sYO9uc8lcTr7YSYM1Rme3dk7QXhpScNA==} + hasBin: true + dependencies: + '@expo/spawn-async': 1.7.2 + chalk: 4.1.2 + debug: 4.3.4 + find-up: 5.0.0 + minimatch: 3.1.2 + p-limit: 3.1.0 + resolve-from: 5.0.0 + transitivePeerDependencies: + - supports-color + + /@expo/image-utils@0.4.1(encoding@0.1.13): + resolution: {integrity: sha512-EZb+VHSmw+a5s2hS9qksTcWylY0FDaIAVufcxoaRS9tHIXLjW5zcKW7Rhj9dSEbZbRVy9yXXdHKa3GQdUQIOFw==} dependencies: '@expo/spawn-async': 1.5.0 chalk: 4.1.2 fs-extra: 9.0.0 getenv: 1.0.0 jimp-compact: 0.16.1 - mime: 2.6.0 node-fetch: 2.7.0(encoding@0.1.13) parse-png: 2.1.0 resolve-from: 5.0.0 @@ -7258,23 +8002,34 @@ packages: transitivePeerDependencies: - encoding - /@expo/json-file@8.2.37: - resolution: {integrity: sha512-YaH6rVg11JoTS2P6LsW7ybS2CULjf40AbnAHw2F1eDPuheprNjARZMnyHFPkKv7GuxCy+B9GPcbOKgc4cgA80Q==} + /@expo/json-file@8.3.0: + resolution: {integrity: sha512-yROUeXJXR5goagB8c3muFLCzLmdGOvoPpR5yDNaXrnTp4euNykr9yW0wWhJx4YVRTNOPtGBnEbbJBW+a9q+S6g==} dependencies: '@babel/code-frame': 7.10.4 json5: 2.2.3 write-file-atomic: 2.4.3 - /@expo/metro-config@0.10.7: - resolution: {integrity: sha512-uACymEiyX0447hI4unt+2cemLQkTZXKvTev936NhtsgVnql45EP0V0pzmo/0H0WlHaAGXgvOBZJl8wFqcJ3CbQ==} + /@expo/metro-config@0.17.6(@react-native/babel-preset@0.73.21): + resolution: {integrity: sha512-WaC1C+sLX/Wa7irwUigLhng3ckmXIEQefZczB8DfYmleV6uhfWWo2kz/HijFBpV7FKs2cW6u8J/aBQpFkxlcqg==} + peerDependencies: + '@react-native/babel-preset': '*' dependencies: - '@expo/config': 8.1.2 - '@expo/env': 0.0.5 - '@expo/json-file': 8.2.37 + '@babel/core': 7.24.0 + '@babel/generator': 7.23.6 + '@babel/parser': 7.24.0 + '@babel/types': 7.24.0 + '@expo/config': 8.5.4 + '@expo/env': 0.2.2 + '@expo/json-file': 8.3.0 + '@expo/spawn-async': 1.7.2 + '@react-native/babel-preset': 0.73.21(@babel/core@7.24.0)(@babel/preset-env@7.24.0) + babel-preset-fbjs: 3.4.0(@babel/core@7.24.0) chalk: 4.1.2 debug: 4.3.4 find-yarn-workspace-root: 2.0.0 + fs-extra: 9.1.0 getenv: 1.0.0 + glob: 7.2.3 jsc-safe-url: 0.2.4 lightningcss: 1.19.0 postcss: 8.4.35 @@ -7283,17 +8038,17 @@ packages: transitivePeerDependencies: - supports-color - /@expo/osascript@2.0.33: - resolution: {integrity: sha512-FQinlwHrTlJbntp8a7NAlCKedVXe06Va/0DSLXRO8lZVtgbEMrYYSUZWQNcOlNtc58c2elNph6z9dMOYwSo3JQ==} + /@expo/osascript@2.1.0: + resolution: {integrity: sha512-bOhuFnlRaS7CU33+rFFIWdcET/Vkyn1vsN8BYFwCDEF5P1fVVvYN7bFOsQLTMD3nvi35C1AGmtqUr/Wfv8Xaow==} engines: {node: '>=12'} dependencies: '@expo/spawn-async': 1.5.0 exec-async: 2.2.0 - /@expo/package-manager@1.1.2: - resolution: {integrity: sha512-JI9XzrxB0QVXysyuJ996FPCJGDCYRkbUvgG4QmMTTMFA1T+mv8YzazC3T9C1pHQUAAveVCre1+Pqv0nZXN24Xg==} + /@expo/package-manager@1.4.2: + resolution: {integrity: sha512-LKdo/6y4W7llZ6ghsg1kdx2CeH/qR/c6QI/JI8oPUvppsZoeIYjSkdflce978fAMfR8IXoi0wt0jA2w0kWpwbg==} dependencies: - '@expo/json-file': 8.2.37 + '@expo/json-file': 8.3.0 '@expo/spawn-async': 1.5.0 ansi-regex: 5.0.1 chalk: 4.1.2 @@ -7302,28 +8057,29 @@ packages: js-yaml: 3.14.1 micromatch: 4.0.5 npm-package-arg: 7.0.0 + ora: 3.4.0 split: 1.0.1 sudo-prompt: 9.1.1 - /@expo/plist@0.0.20: - resolution: {integrity: sha512-UXQ4LXCfTZ580LDHGJ5q62jSTwJFFJ1GqBu8duQMThiHKWbMJ+gajJh6rsB6EJ3aLUr9wcauxneL5LVRFxwBEA==} + /@expo/plist@0.1.0: + resolution: {integrity: sha512-xWD+8vIFif0wKyuqe3fmnmnSouXYucciZXFzS0ZD5OV9eSAS1RGQI5FaGGJ6zxJ4mpdy/4QzbLdBjnYE5vxA0g==} dependencies: '@xmldom/xmldom': 0.7.13 base64-js: 1.5.1 xmlbuilder: 14.0.0 - /@expo/prebuild-config@6.2.6(encoding@0.1.13)(expo-modules-autolinking@1.5.1): - resolution: {integrity: sha512-uFVvDAm9dPg9p1qpnr4CVnpo2hmkZIL5FQz+VlIdXXJpe7ySh/qTGHtKWY/lWUshQkAJ0nwbKGPztGWdABns/Q==} + /@expo/prebuild-config@6.7.4(encoding@0.1.13)(expo-modules-autolinking@1.10.3): + resolution: {integrity: sha512-x8EUdCa8DTMZ/dtEXjHAdlP+ljf6oSeSKNzhycXiHhpMSMG9jEhV28ocCwc6cKsjK5GziweEiHwvrj6+vsBlhA==} peerDependencies: expo-modules-autolinking: '>=0.8.1' dependencies: - '@expo/config': 8.1.2 - '@expo/config-plugins': 7.2.5 - '@expo/config-types': 49.0.0 - '@expo/image-utils': 0.3.22(encoding@0.1.13) - '@expo/json-file': 8.2.37 + '@expo/config': 8.5.4 + '@expo/config-plugins': 7.8.4 + '@expo/config-types': 50.0.0 + '@expo/image-utils': 0.4.1(encoding@0.1.13) + '@expo/json-file': 8.3.0 debug: 4.3.4 - expo-modules-autolinking: 1.5.1 + expo-modules-autolinking: 1.10.3 fs-extra: 9.1.0 resolve-from: 5.0.0 semver: 7.5.3 @@ -7355,11 +8111,17 @@ packages: dependencies: cross-spawn: 6.0.5 - /@expo/vector-icons@13.0.0: - resolution: {integrity: sha512-TI+l71+5aSKnShYclFa14Kum+hQMZ86b95SH6tQUG3qZEmLTarvWpKwqtTwQKqvlJSJrpFiSFu3eCuZokY6zWA==} + /@expo/spawn-async@1.7.2: + resolution: {integrity: sha512-QdWi16+CHB9JYP7gma19OVVg0BFkvU8zNj9GjWorYI8Iv8FUxjOCcYRuAmX4s/h91e4e7BPsskc8cSrZYho9Ew==} + engines: {node: '>=12'} + dependencies: + cross-spawn: 7.0.3 + + /@expo/vector-icons@14.0.0: + resolution: {integrity: sha512-5orm59pdnBQlovhU9k4DbjMUZBHNlku7IRgFY56f7pcaaCnXq9yaLJoOQl9sMwNdFzf4gnkTyHmR5uN10mI9rA==} - /@expo/xcpretty@4.2.2: - resolution: {integrity: sha512-Lke/geldJqUV0Dfxg5/QIOugOzdqZ/rQ9yHKSgGbjZtG1uiSqWyFwWvXmrdd3/sIdX33eykGvIcf+OrvvcXVUw==} + /@expo/xcpretty@4.3.1: + resolution: {integrity: sha512-sqXgo1SCv+j4VtYEwl/bukuOIBrVgx6euIoCat3Iyx5oeoXwEA2USCoeL0IPubflMxncA2INkqJ/Wr3NGrSgzw==} hasBin: true dependencies: '@babel/code-frame': 7.10.4 @@ -7381,6 +8143,13 @@ packages: tslib: 2.6.2 dev: false + /@formatjs/ecma402-abstract@1.18.2: + resolution: {integrity: sha512-+QoPW4csYALsQIl8GbN14igZzDbuwzcpWrku9nyMXlaqAlwRBgl5V+p0vWMGFqHOw37czNXaP/lEk4wbLgcmtA==} + dependencies: + '@formatjs/intl-localematcher': 0.5.4 + tslib: 2.6.2 + dev: false + /@formatjs/fast-memoize@1.2.1: resolution: {integrity: sha512-Rg0e76nomkz3vF9IPlKeV+Qynok0r7YZjL6syLz4/urSg0IbjPZCB/iYUMNsYA643gh4mgrX3T7KEIFIxJBQeg==} dependencies: @@ -7441,6 +8210,12 @@ packages: tslib: 2.6.2 dev: false + /@formatjs/intl-localematcher@0.5.4: + resolution: {integrity: sha512-zTwEpWOzZ2CiKcB93BLngUX59hQkuZjT2+SAQEscSm52peDW/getsawMcWF1rGRpMCX6D7nSJA3CzJ8gn13N/g==} + dependencies: + tslib: 2.6.2 + dev: false + /@gar/promisify@1.1.3: resolution: {integrity: sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==} requiresBuild: true @@ -7517,43 +8292,6 @@ packages: react: 18.2.0 dev: false - /@humanwhocodes/config-array@0.11.14: - resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==} - engines: {node: '>=10.10.0'} - dependencies: - '@humanwhocodes/object-schema': 2.0.2 - debug: 4.3.4 - minimatch: 3.1.2 - transitivePeerDependencies: - - supports-color - - /@humanwhocodes/module-importer@1.0.1: - resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} - engines: {node: '>=12.22'} - - /@humanwhocodes/object-schema@2.0.2: - resolution: {integrity: sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==} - - /@ianvs/prettier-plugin-sort-imports@4.1.1(prettier@3.2.5): - resolution: {integrity: sha512-kJhXq63ngpTQ2dxgf5GasbPJWsJA3LgoOdd7WGhpUSzLgLgI4IsIzYkbJf9kmpOHe7Vdm/o3PcRA3jmizXUuAQ==} - peerDependencies: - '@vue/compiler-sfc': '>=3.0.0' - prettier: 2 || 3 - peerDependenciesMeta: - '@vue/compiler-sfc': - optional: true - dependencies: - '@babel/core': 7.23.2 - '@babel/generator': 7.23.0 - '@babel/parser': 7.23.0 - '@babel/traverse': 7.23.2 - '@babel/types': 7.23.0 - prettier: 3.2.5 - semver: 7.5.4 - transitivePeerDependencies: - - supports-color - dev: true - /@iden3/bigarray@0.0.2: resolution: {integrity: sha512-Xzdyxqm1bOFF6pdIsiHLLl3HkSLjbhqJHVyqaTxXt3RqXBEnmsUmEW47H7VOi/ak7TdkRpNkxjyK5Zbkm+y52g==} dev: false @@ -7849,6 +8587,14 @@ packages: dependencies: multiformats: 13.1.0 + /@ipld/dag-pb@4.1.0: + resolution: {integrity: sha512-LJU451Drqs5zjFm7jI4Hs3kHlilOqkjcSfPiQgVsZnWaYb2C7YdfhnclrVn/X+ucKejlU9BL3+gXFCZUXkMuCg==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + requiresBuild: true + dependencies: + multiformats: 13.1.0 + optional: true + /@isaacs/cliui@8.0.2: resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} engines: {node: '>=12'} @@ -7861,6 +8607,10 @@ packages: wrap-ansi-cjs: /wrap-ansi@7.0.0 dev: true + /@isaacs/ttlcache@1.4.1: + resolution: {integrity: sha512-RQgQ4uQ+pLbqXfOmieB91ejmLwvSgv9nLx6sT6sD83s7umBypgg+OIBOBbEUiJXrfpnp9j0mRhYYdzp9uqq3lA==} + engines: {node: '>=12'} + /@istanbuljs/load-nyc-config@1.1.0: resolution: {integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==} engines: {node: '>=8'} @@ -8043,20 +8793,10 @@ packages: resolution: {integrity: sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==} engines: {node: '>= 10.14.2'} dependencies: - '@types/istanbul-lib-coverage': 2.0.5 - '@types/istanbul-reports': 3.0.3 - '@types/node': 20.11.25 - '@types/yargs': 15.0.17 - chalk: 4.1.2 - - /@jest/types@27.5.1: - resolution: {integrity: sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dependencies: - '@types/istanbul-lib-coverage': 2.0.5 - '@types/istanbul-reports': 3.0.3 + '@types/istanbul-lib-coverage': 2.0.6 + '@types/istanbul-reports': 3.0.4 '@types/node': 20.11.25 - '@types/yargs': 16.0.7 + '@types/yargs': 15.0.19 chalk: 4.1.2 /@jest/types@29.6.3: @@ -8078,14 +8818,33 @@ packages: '@jridgewell/sourcemap-codec': 1.4.15 '@jridgewell/trace-mapping': 0.3.19 + /@jridgewell/gen-mapping@0.3.5: + resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} + engines: {node: '>=6.0.0'} + dependencies: + '@jridgewell/set-array': 1.2.1 + '@jridgewell/sourcemap-codec': 1.4.15 + '@jridgewell/trace-mapping': 0.3.25 + dev: true + /@jridgewell/resolve-uri@3.1.1: resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==} engines: {node: '>=6.0.0'} + /@jridgewell/resolve-uri@3.1.2: + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} + engines: {node: '>=6.0.0'} + dev: true + /@jridgewell/set-array@1.1.2: resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} engines: {node: '>=6.0.0'} + /@jridgewell/set-array@1.2.1: + resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} + engines: {node: '>=6.0.0'} + dev: true + /@jridgewell/source-map@0.3.5: resolution: {integrity: sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==} dependencies: @@ -8107,6 +8866,13 @@ packages: '@jridgewell/resolve-uri': 3.1.1 '@jridgewell/sourcemap-codec': 1.4.15 + /@jridgewell/trace-mapping@0.3.25: + resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.4.15 + dev: true + /@jridgewell/trace-mapping@0.3.9: resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} dependencies: @@ -8187,14 +8953,14 @@ packages: transitivePeerDependencies: - supports-color - /@mdx-js/react@3.0.1(@types/react@18.2.63)(react@18.2.0): + /@mdx-js/react@3.0.1(@types/react@18.2.64)(react@18.2.0): resolution: {integrity: sha512-9ZrPIU4MGf6et1m1ov3zKf+q9+deetI51zprKB1D/z3NOb+rUxxtEl3mCjW5wTGh6VhRdwPueh1oRzi6ezkA8A==} peerDependencies: '@types/react': '>=16' react: '>=16' dependencies: '@types/mdx': 2.0.11 - '@types/react': 18.2.63 + '@types/react': 18.2.64 react: 18.2.0 dev: false @@ -8208,15 +8974,14 @@ packages: - supports-color dev: false - /@metamask/approval-controller@4.1.0: - resolution: {integrity: sha512-UdSf8787NMADvmGqC88y8GbzwljdWw4cDCs4NWfc1HIhG4mvvaAFZwjZpPvU59DuFG6WycNfNLyJ7lcJsiYCYg==} + /@metamask/approval-controller@5.1.3: + resolution: {integrity: sha512-RebVeTCrNePzXKTe+YcLlqWeKP5ADpWdIINOoP+IP8+AAWwzBJiHXXJ/4AxSBrIC4la+a0Xnohd+ou27bzfDDg==} engines: {node: '>=16.0.0'} dependencies: - '@metamask/base-controller': 3.2.3 - '@metamask/rpc-errors': 6.1.0 - '@metamask/utils': 8.2.1 - immer: 9.0.21 - nanoid: 3.3.6 + '@metamask/base-controller': 4.1.1 + '@metamask/rpc-errors': 6.2.1 + '@metamask/utils': 8.3.0 + nanoid: 3.3.7 transitivePeerDependencies: - supports-color dev: true @@ -8231,6 +8996,16 @@ packages: - supports-color dev: true + /@metamask/base-controller@4.1.1: + resolution: {integrity: sha512-sJdsd/XlyOa0kRJ16qbM+xeQ8peV1yZcYumJmHCClPK09MkAlxq7EzsrahVZXUCFwcxtSucf244pbttnVqNthw==} + engines: {node: '>=16.0.0'} + dependencies: + '@metamask/utils': 8.3.0 + immer: 9.0.21 + transitivePeerDependencies: + - supports-color + dev: true + /@metamask/controller-utils@5.0.2: resolution: {integrity: sha512-bHgyPL+Ah6OBOkjWykA1NpTZdpRhoJjCrvuFf8mFxBJLvXE9m/rw9DYp2Rw9WXonMWK17NxwQv/7bKzsGZnjVQ==} engines: {node: '>=16.0.0'} @@ -8334,13 +9109,13 @@ packages: bowser: 2.11.0 dev: false - /@metamask/permission-controller@5.0.1(@metamask/approval-controller@4.1.0): + /@metamask/permission-controller@5.0.1(@metamask/approval-controller@5.1.3): resolution: {integrity: sha512-dm/8U4yHtq0cwW/vrVpKT9fFyHdGC6BBwW+e1EUwm+OUhOHtwcB08XuAx5XNVfzE/ymbuBYJyE2SgbvOxvd4PQ==} engines: {node: '>=16.0.0'} peerDependencies: '@metamask/approval-controller': ^4.1.0 dependencies: - '@metamask/approval-controller': 4.1.0 + '@metamask/approval-controller': 5.1.3 '@metamask/base-controller': 3.2.3 '@metamask/controller-utils': 5.0.2 '@metamask/json-rpc-engine': 7.3.0 @@ -8410,6 +9185,16 @@ packages: transitivePeerDependencies: - supports-color + /@metamask/rpc-errors@6.2.1: + resolution: {integrity: sha512-VTgWkjWLzb0nupkFl1duQi9Mk8TGT9rsdnQg6DeRrYEFxtFOh0IF8nAwxM/4GWqDl6uIB06lqUBgUrAVWl62Bw==} + engines: {node: '>=16.0.0'} + dependencies: + '@metamask/utils': 8.3.0 + fast-safe-stringify: 2.1.1 + transitivePeerDependencies: + - supports-color + dev: true + /@metamask/safe-event-emitter@2.0.0: resolution: {integrity: sha512-/kSXhY692qiV1MXu6EeOZvg5nECLclxNXcKCxJ3cXQgYuRymRHpdx/t7JXfsK+JLjwA1e1c1/SBrlQYpusC29Q==} dev: false @@ -8440,22 +9225,22 @@ packages: - supports-color dev: false - /@metamask/sdk-install-modal-web@0.14.1(@types/react@18.2.63)(react-native@0.72.6): + /@metamask/sdk-install-modal-web@0.14.1(@types/react@18.2.64)(react-native@0.73.5): resolution: {integrity: sha512-emT8HKbnfVwGhPxyUfMja6DWzvtJvDEBQxqCVx93H0HsyrrOzOC43iGCAosslw6o5h7gOfRKLqWmK8V7jQAS2Q==} dependencies: - '@emotion/react': 11.11.4(@types/react@18.2.63)(react@18.2.0) - '@emotion/styled': 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.63)(react@18.2.0) + '@emotion/react': 11.11.4(@types/react@18.2.64)(react@18.2.0) + '@emotion/styled': 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.64)(react@18.2.0) i18next: 22.5.1 qr-code-styling: 1.6.0-rc.1 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) - react-i18next: 13.5.0(i18next@22.5.1)(react-dom@18.2.0)(react-native@0.72.6)(react@18.2.0) + react-i18next: 13.5.0(i18next@22.5.1)(react-dom@18.2.0)(react-native@0.73.5)(react@18.2.0) transitivePeerDependencies: - '@types/react' - react-native dev: false - /@metamask/sdk@0.14.3(@types/react@18.2.63)(encoding@0.1.13)(react-dom@18.2.0)(react-native@0.72.6)(react@18.2.0): + /@metamask/sdk@0.14.3(@types/react@18.2.64)(encoding@0.1.13)(react-dom@18.2.0)(react-native@0.73.5)(react@18.2.0): resolution: {integrity: sha512-BYLs//nY2wioVSih78gOQI6sLIYY3vWkwVqXGYUgkBV+bi49bv+9S0m+hZ2cwiRaxfMYtKs0KvhAQ8weiYwDrg==} peerDependencies: react: ^18.2.0 @@ -8470,8 +9255,8 @@ packages: '@metamask/post-message-stream': 6.2.0 '@metamask/providers': 10.2.1 '@metamask/sdk-communication-layer': 0.14.3(encoding@0.1.13) - '@metamask/sdk-install-modal-web': 0.14.1(@types/react@18.2.63)(react-native@0.72.6) - '@react-native-async-storage/async-storage': 1.21.0(react-native@0.72.6) + '@metamask/sdk-install-modal-web': 0.14.1(@types/react@18.2.64)(react-native@0.73.5) + '@react-native-async-storage/async-storage': 1.21.0(react-native@0.73.5) '@types/dom-screen-wake-lock': 1.0.3 bowser: 2.11.0 cross-fetch: 4.0.0(patch_hash=o37ixiuozlaw3unzpuuojolyvy)(encoding@0.1.13) @@ -8485,9 +9270,9 @@ packages: pump: 3.0.0 qrcode-terminal-nooctal: 0.12.1 react: 18.2.0 - react-i18next: 13.5.0(i18next@22.5.1)(react-dom@18.2.0)(react-native@0.72.6)(react@18.2.0) - react-native: 0.72.6(@babel/core@7.23.2)(@babel/preset-env@7.23.2)(encoding@0.1.13)(react@18.2.0) - react-native-webview: 11.26.1(react-native@0.72.6)(react@18.2.0) + react-i18next: 13.5.0(i18next@22.5.1)(react-dom@18.2.0)(react-native@0.73.5)(react@18.2.0) + react-native: 0.73.5(@babel/core@7.24.0)(@babel/preset-env@7.24.0)(encoding@0.1.13)(react@18.2.0) + react-native-webview: 11.26.1(react-native@0.73.5)(react@18.2.0) readable-stream: 2.3.8 rollup-plugin-visualizer: 5.12.0 socket.io-client: 4.7.4(bufferutil@4.0.8)(utf-8-validate@6.0.3) @@ -8503,7 +9288,7 @@ packages: - utf-8-validate dev: false - /@metamask/snaps-cli@3.0.3(@metamask/approval-controller@4.1.0)(esbuild@0.20.1): + /@metamask/snaps-cli@3.0.3(@metamask/approval-controller@5.1.3)(esbuild@0.20.1): resolution: {integrity: sha512-8BG9OG0NhnYt4B/N0WgP3dpH6H6b8YlXemuVFqORs21aEQUaXAmIk3LV+jdfRzsu6tp9i4TG7XWP8NRoJAdmNw==} engines: {node: ^18.16 || >=20} hasBin: true @@ -8517,8 +9302,8 @@ packages: '@babel/preset-env': 7.23.2(@babel/core@7.23.2) '@babel/preset-typescript': 7.23.2(@babel/core@7.23.2) '@metamask/snaps-sdk': 1.2.0(patch_hash=opksiuvz2n6at3zcjhfdijadqq) - '@metamask/snaps-utils': 5.0.0(@metamask/approval-controller@4.1.0) - '@metamask/snaps-webpack-plugin': 3.1.1(@metamask/approval-controller@4.1.0) + '@metamask/snaps-utils': 5.0.0(@metamask/approval-controller@5.1.3) + '@metamask/snaps-webpack-plugin': 3.1.1(@metamask/approval-controller@5.1.3) '@metamask/utils': 8.2.1 '@swc/core': 1.3.78 assert: 2.0.0 @@ -8591,7 +9376,7 @@ packages: - supports-color patched: true - /@metamask/snaps-utils@5.0.0(@metamask/approval-controller@4.1.0): + /@metamask/snaps-utils@5.0.0(@metamask/approval-controller@5.1.3): resolution: {integrity: sha512-29sErNno5CzTrmgsG9SnHxFHbGPhyt2jh5wW6rIfLe4QVJfY/MhL1kR0hVqCIDHluCSl37PDGW1b8qfznRbOfA==} engines: {node: ^18.16 || >=20} dependencies: @@ -8599,7 +9384,7 @@ packages: '@babel/types': 7.23.0 '@metamask/base-controller': 3.2.3 '@metamask/key-tree': 9.0.0 - '@metamask/permission-controller': 5.0.1(@metamask/approval-controller@4.1.0) + '@metamask/permission-controller': 5.0.1(@metamask/approval-controller@5.1.3) '@metamask/rpc-errors': 6.1.0 '@metamask/snaps-registry': 2.1.0 '@metamask/snaps-sdk': 1.2.0(patch_hash=opksiuvz2n6at3zcjhfdijadqq) @@ -8621,12 +9406,12 @@ packages: - supports-color dev: true - /@metamask/snaps-webpack-plugin@3.1.1(@metamask/approval-controller@4.1.0): + /@metamask/snaps-webpack-plugin@3.1.1(@metamask/approval-controller@5.1.3): resolution: {integrity: sha512-nCRjZ+ZkrsgoYh5+rqZJ81Gw9aunrzGy9shFTDcZAeRT2K6slCSV1L5J0/qwVOJnpN5th0JjTwMFN0T0TH6wrQ==} engines: {node: ^18.16 || >=20} dependencies: '@metamask/snaps-sdk': 1.2.0(patch_hash=opksiuvz2n6at3zcjhfdijadqq) - '@metamask/snaps-utils': 5.0.0(@metamask/approval-controller@4.1.0) + '@metamask/snaps-utils': 5.0.0(@metamask/approval-controller@5.1.3) '@metamask/utils': 8.2.1 webpack-sources: 3.2.3 transitivePeerDependencies: @@ -8675,6 +9460,22 @@ packages: transitivePeerDependencies: - supports-color + /@metamask/utils@8.3.0: + resolution: {integrity: sha512-WFVcMPEkKKRCJ8DDkZUTVbLlpwgRn98F4VM/WzN89HM8PmHMnCyk/oG0AmK/seOxtik7uC7Bbi2YBC5Z5XB2zw==} + engines: {node: '>=16.0.0'} + dependencies: + '@ethereumjs/tx': 4.2.0 + '@noble/hashes': 1.3.3 + '@scure/base': 1.1.5 + '@types/debug': 4.1.12 + debug: 4.3.4 + pony-cause: 2.1.10 + semver: 7.6.0 + superstruct: 1.0.3 + transitivePeerDependencies: + - supports-color + dev: true + /@motionone/animation@10.17.0: resolution: {integrity: sha512-ANfIN9+iq1kGgsZxs+Nz96uiNcPLGTXwfNo2Xz/fcJXniPYpaz/Uyrfa+7I5BPLxCP82sh7quVDudf1GABqHbg==} dependencies: @@ -8744,18 +9545,12 @@ packages: resolution: {integrity: sha512-fwz2QgVg08v7ZL7KmbQBLF2PubR/6zQdKBgmHEl3BCyWTEDsAQEijjw2gbFhI1tcKfLdOOJUXntz5vZ4S0Polg==} dev: false - /@next/env@14.1.2: - resolution: {integrity: sha512-U0iEG+JF86j6qyu330sfPgsMmDVH8vWVmzZadl+an5EU3o5HqdNytOpM+HsFpl58PmhGBTKx3UmM9c+eoLK0mA==} + /@next/env@14.1.3: + resolution: {integrity: sha512-VhgXTvrgeBRxNPjyfBsDIMvgsKDxjlpw4IAUsHCX8Gjl1vtHUYRT3+xfQ/wwvLPDd/6kqfLqk9Pt4+7gysuCKQ==} dev: false - /@next/eslint-plugin-next@14.1.3: - resolution: {integrity: sha512-VCnZI2cy77Yaj3L7Uhs3+44ikMM1VD/fBMwvTBb3hIaTIuqa+DmG4dhUDq+MASu3yx97KhgsVJbsas0XuiKyww==} - dependencies: - glob: 10.3.10 - dev: true - - /@next/swc-darwin-arm64@14.1.2: - resolution: {integrity: sha512-E4/clgk0ZrYMo9eMRwP/4IO/cvXF1yEYSnGcdGfH+NYTR8bNFy76TSlc1Vb2rK3oaQY4BVHRpx8f/sMN/D5gNw==} + /@next/swc-darwin-arm64@14.1.3: + resolution: {integrity: sha512-LALu0yIBPRiG9ANrD5ncB3pjpO0Gli9ZLhxdOu6ZUNf3x1r3ea1rd9Q+4xxUkGrUXLqKVK9/lDkpYIJaCJ6AHQ==} engines: {node: '>= 10'} cpu: [arm64] os: [darwin] @@ -8763,8 +9558,8 @@ packages: dev: false optional: true - /@next/swc-darwin-x64@14.1.2: - resolution: {integrity: sha512-j8mEOI+ZM0tU9B/L/OGa6F7d9FXYMkog5OWWuhTWzz3iZ91UKIGGpD/ojTNKuejainDMgbqOBTNnLg0jZywM/g==} + /@next/swc-darwin-x64@14.1.3: + resolution: {integrity: sha512-E/9WQeXxkqw2dfcn5UcjApFgUq73jqNKaE5bysDm58hEUdUGedVrnRhblhJM7HbCZNhtVl0j+6TXsK0PuzXTCg==} engines: {node: '>= 10'} cpu: [x64] os: [darwin] @@ -8772,8 +9567,8 @@ packages: dev: false optional: true - /@next/swc-linux-arm64-gnu@14.1.2: - resolution: {integrity: sha512-qpRrd5hl6BFTWiFLgHtJmqqQGRMs+ol0MN9pEp0SYoLs3j8OTErPiDMhbKWjMWHGdc2E3kg4RRBV3cSTZiePiQ==} + /@next/swc-linux-arm64-gnu@14.1.3: + resolution: {integrity: sha512-USArX9B+3rZSXYLFvgy0NVWQgqh6LHWDmMt38O4lmiJNQcwazeI6xRvSsliDLKt+78KChVacNiwvOMbl6g6BBw==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] @@ -8781,8 +9576,8 @@ packages: dev: false optional: true - /@next/swc-linux-arm64-musl@14.1.2: - resolution: {integrity: sha512-HAhvVXAv+wnbj0wztT0YnpgJVoHtw1Mv4Y1R/JJcg5yXSU8FsP2uEGUwjQaqPoD76YSZjuKl32YbJlmPgQbLFw==} + /@next/swc-linux-arm64-musl@14.1.3: + resolution: {integrity: sha512-esk1RkRBLSIEp1qaQXv1+s6ZdYzuVCnDAZySpa62iFTMGTisCyNQmqyCTL9P+cLJ4N9FKCI3ojtSfsyPHJDQNw==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] @@ -8790,8 +9585,8 @@ packages: dev: false optional: true - /@next/swc-linux-x64-gnu@14.1.2: - resolution: {integrity: sha512-PCWC312woXLWOXiedi1E+fEw6B/ECP1fMiK1nSoGS2E43o56Z8kq4WeJLbJoufFQGVj5ZOKU3jIVyV//3CI4wQ==} + /@next/swc-linux-x64-gnu@14.1.3: + resolution: {integrity: sha512-8uOgRlYEYiKo0L8YGeS+3TudHVDWDjPVDUcST+z+dUzgBbTEwSSIaSgF/vkcC1T/iwl4QX9iuUyUdQEl0Kxalg==} engines: {node: '>= 10'} cpu: [x64] os: [linux] @@ -8799,8 +9594,8 @@ packages: dev: false optional: true - /@next/swc-linux-x64-musl@14.1.2: - resolution: {integrity: sha512-KQSKzdWPNrYZjeTPCsepEpagOzU8Nf3Zzu53X1cLsSY6QlOIkYcSgEihRjsMKyeQW4aSvc+nN5pIpC2pLWNSMA==} + /@next/swc-linux-x64-musl@14.1.3: + resolution: {integrity: sha512-DX2zqz05ziElLoxskgHasaJBREC5Y9TJcbR2LYqu4r7naff25B4iXkfXWfcp69uD75/0URmmoSgT8JclJtrBoQ==} engines: {node: '>= 10'} cpu: [x64] os: [linux] @@ -8808,8 +9603,8 @@ packages: dev: false optional: true - /@next/swc-win32-arm64-msvc@14.1.2: - resolution: {integrity: sha512-3b0PouKd09Ulm2T1tjaRnwQj9+UwSsMO680d/sD4XAlm29KkNmVLAEIwWTfb3L+E11Qyw+jdcN3HtbDCg5+vYA==} + /@next/swc-win32-arm64-msvc@14.1.3: + resolution: {integrity: sha512-HjssFsCdsD4GHstXSQxsi2l70F/5FsRTRQp8xNgmQs15SxUfUJRvSI9qKny/jLkY3gLgiCR3+6A7wzzK0DBlfA==} engines: {node: '>= 10'} cpu: [arm64] os: [win32] @@ -8817,8 +9612,8 @@ packages: dev: false optional: true - /@next/swc-win32-ia32-msvc@14.1.2: - resolution: {integrity: sha512-CC1gaJY4h+wg6d5r2biggGM6nCFXh/6WEim2VOQI0WrA6easCQi2P2hzWyrU6moQ0g1GOiWzesGc6nn0a92Kgg==} + /@next/swc-win32-ia32-msvc@14.1.3: + resolution: {integrity: sha512-DRuxD5axfDM1/Ue4VahwSxl1O5rn61hX8/sF0HY8y0iCbpqdxw3rB3QasdHn/LJ6Wb2y5DoWzXcz3L1Cr+Thrw==} engines: {node: '>= 10'} cpu: [ia32] os: [win32] @@ -8826,8 +9621,8 @@ packages: dev: false optional: true - /@next/swc-win32-x64-msvc@14.1.2: - resolution: {integrity: sha512-pfASwanOd+yP3D80O63DuQffrBySZPuB7wRN0IGSRq/0rDm9p/MvvnLzzgP2kSiLOUklOrFYVax7P6AEzjGykQ==} + /@next/swc-win32-x64-msvc@14.1.3: + resolution: {integrity: sha512-uC2DaDoWH7h1P/aJ4Fok3Xiw6P0Lo4ez7NbowW2VGNXw/Xv6tOuLUcxhBYZxsSUJtpeknCi8/fvnSpyCFp4Rcg==} engines: {node: '>= 10'} cpu: [x64] os: [win32] @@ -8835,7 +9630,7 @@ packages: dev: false optional: true - /@nextui-org/accordion@2.0.28(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19): + /@nextui-org/accordion@2.0.28(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-WzD7sscL+4K0TFyUutTn1AhU0wcS68TqNCTNv7KgON6ODdwieydilMxAyXvwo3RgXeWG+8BbdxJC/6W+/iLBTg==} peerDependencies: '@nextui-org/system': '>=2.0.0' @@ -8844,13 +9639,13 @@ packages: react: '>=18' react-dom: '>=18' dependencies: - '@nextui-org/aria-utils': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/divider': 2.0.25(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/framer-transitions': 2.0.15(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/aria-utils': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/divider': 2.0.25(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/framer-transitions': 2.0.15(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-icons': 2.0.6(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@nextui-org/use-aria-accordion': 2.0.2(react-dom@18.2.0)(react@18.2.0) '@nextui-org/use-aria-press': 2.0.1(react@18.2.0) @@ -8868,7 +9663,7 @@ packages: - tailwind-variants dev: false - /@nextui-org/aria-utils@2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19): + /@nextui-org/aria-utils@2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-4M4jeJ/ghGaia9064yS+mEZ3sFPH80onmjNGWJZkkZDmUV4R88lNkqe/XYBK1tbxfl4Kxa8jc/ALsZkUkkvR5w==} peerDependencies: react: '>=18' @@ -8876,7 +9671,7 @@ packages: dependencies: '@nextui-org/react-rsc-utils': 2.0.10 '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@react-aria/utils': 3.22.0(react@18.2.0) '@react-stately/collections': 3.10.3(react@18.2.0) '@react-types/overlays': 3.8.4(react@18.2.0) @@ -8888,7 +9683,7 @@ packages: - tailwind-variants dev: false - /@nextui-org/autocomplete@2.0.10(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.63)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19): + /@nextui-org/autocomplete@2.0.10(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.64)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-nQr8VC5RtpjnPef1qXgjNxRAw8JbN6q5qIFtsHWOCzvvn5jGAtdxkAkNE4C7DTvlMWZkIlEuR4DyAmFfY8CChQ==} peerDependencies: '@nextui-org/system': '>=2.0.0' @@ -8897,17 +9692,17 @@ packages: react: '>=18' react-dom: '>=18' dependencies: - '@nextui-org/aria-utils': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/button': 2.0.27(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/input': 2.1.17(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.63)(react-dom@18.2.0)(react@18.2.0) - '@nextui-org/listbox': 2.1.16(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/popover': 2.1.15(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.63)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/aria-utils': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/button': 2.0.27(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/input': 2.1.17(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0) + '@nextui-org/listbox': 2.1.16(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/popover': 2.1.15(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.64)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/scroll-shadow': 2.1.13(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0) '@nextui-org/shared-icons': 2.0.6(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/spinner': 2.0.25(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/spinner': 2.0.25(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@nextui-org/use-aria-button': 2.0.6(react@18.2.0) '@react-aria/combobox': 3.8.0(react-dom@18.2.0)(react@18.2.0) @@ -8937,7 +9732,7 @@ packages: dependencies: '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@nextui-org/use-image': 2.0.4(react@18.2.0) '@react-aria/focus': 3.15.0(react@18.2.0) @@ -8947,7 +9742,7 @@ packages: react-dom: 18.2.0(react@18.2.0) dev: false - /@nextui-org/badge@2.0.24(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19): + /@nextui-org/badge@2.0.24(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-FA3XgqEbyKWepMXqMZg7D+1IRf7flrb2LzFvTbkmsbvWQ4yYz1LqJXZ/HDmoCydvh2pOnc+1zPK3BpB7vGrrwA==} peerDependencies: '@nextui-org/theme': '>=2.1.0' @@ -8956,7 +9751,7 @@ packages: dependencies: '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system-rsc': 2.0.11(@nextui-org/theme@2.1.18)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system-rsc': 2.0.11(@nextui-org/theme@2.1.18)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -8975,7 +9770,7 @@ packages: '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-icons': 2.0.6(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@react-aria/breadcrumbs': 3.5.8(react@18.2.0) '@react-aria/focus': 3.15.0(react@18.2.0) @@ -8986,7 +9781,7 @@ packages: react-dom: 18.2.0(react@18.2.0) dev: false - /@nextui-org/button@2.0.27(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19): + /@nextui-org/button@2.0.27(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-oErzUr9KtE/qjUx4dSbalphxURssxGf9tv0mW++ZMkmVX1E6i887FwZb9xAVm9oBwYwR6+xpJaqjQLmt8aN/rQ==} peerDependencies: '@nextui-org/system': '>=2.0.0' @@ -8998,8 +9793,8 @@ packages: '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/ripple': 2.0.24(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/spinner': 2.0.25(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/spinner': 2.0.25(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@nextui-org/use-aria-button': 2.0.6(react@18.2.0) '@react-aria/button': 3.9.0(react@18.2.0) @@ -9027,7 +9822,7 @@ packages: '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/ripple': 2.0.24(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@nextui-org/use-aria-button': 2.0.6(react@18.2.0) '@react-aria/button': 3.9.0(react@18.2.0) @@ -9050,7 +9845,7 @@ packages: dependencies: '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@nextui-org/use-aria-press': 2.0.1(react@18.2.0) '@react-aria/checkbox': 3.12.0(react@18.2.0) @@ -9077,7 +9872,7 @@ packages: '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-icons': 2.0.6(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@nextui-org/use-aria-press': 2.0.1(react@18.2.0) '@react-aria/focus': 3.15.0(react@18.2.0) @@ -9088,7 +9883,7 @@ packages: react-dom: 18.2.0(react@18.2.0) dev: false - /@nextui-org/code@2.0.24(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19): + /@nextui-org/code@2.0.24(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-Kw/uOQtdytRWY99zMQuGHqMAAGXWBAxHlyMMge1OCckpadCDfX6plPjqoS18SGM0orJ4fox+a1FM8VhnRQ2kQw==} peerDependencies: '@nextui-org/theme': '>=2.1.0' @@ -9097,7 +9892,7 @@ packages: dependencies: '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system-rsc': 2.0.11(@nextui-org/theme@2.1.18)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system-rsc': 2.0.11(@nextui-org/theme@2.1.18)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -9105,7 +9900,7 @@ packages: - tailwind-variants dev: false - /@nextui-org/divider@2.0.25(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19): + /@nextui-org/divider@2.0.25(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-yEvHqYlhNBwmF68pfjJKdzC8gVQtL+txxD5COBGF9uFyfxA5hVw2D6GmYgOH514bxrFBuWOLcQX6gyljgcN3bA==} peerDependencies: '@nextui-org/theme': '>=2.1.0' @@ -9114,7 +9909,7 @@ packages: dependencies: '@nextui-org/react-rsc-utils': 2.0.10 '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system-rsc': 2.0.11(@nextui-org/theme@2.1.18)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system-rsc': 2.0.11(@nextui-org/theme@2.1.18)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@react-types/shared': 3.22.0(react@18.2.0) react: 18.2.0 @@ -9123,7 +9918,7 @@ packages: - tailwind-variants dev: false - /@nextui-org/dropdown@2.1.17(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.63)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19): + /@nextui-org/dropdown@2.1.17(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.64)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-Hxmz1Yf/LjjOLqWRF49Q5ZYJtae6ydDEk1mv8oMKNmSWHi92lrgmHlwkGvR3mjczbRuF+WkXHLEhVZH6/tZQ7A==} peerDependencies: '@nextui-org/system': '>=2.0.0' @@ -9132,11 +9927,11 @@ packages: react: '>=18' react-dom: '>=18' dependencies: - '@nextui-org/menu': 2.0.17(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/popover': 2.1.15(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.63)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/menu': 2.0.17(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/popover': 2.1.15(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.64)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@react-aria/focus': 3.15.0(react@18.2.0) '@react-aria/menu': 3.11.2(react-dom@18.2.0)(react@18.2.0) @@ -9151,7 +9946,7 @@ packages: - tailwind-variants dev: false - /@nextui-org/framer-transitions@2.0.15(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19): + /@nextui-org/framer-transitions@2.0.15(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-UlWMCAFdrq8wKrYFGwc+O4kFhKCkL4L9ZadBkP0PqjmfyAC2gA3ygRbNqtKhFMWeKbBAiC8qQ9aTBEA/+0r/EA==} peerDependencies: framer-motion: '>=4.0.0' @@ -9159,7 +9954,7 @@ packages: react-dom: '>=18' dependencies: '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) framer-motion: 11.0.8(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -9178,14 +9973,14 @@ packages: dependencies: '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@nextui-org/use-image': 2.0.4(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false - /@nextui-org/input@2.1.17(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.63)(react-dom@18.2.0)(react@18.2.0): + /@nextui-org/input@2.1.17(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-3FW3NDDbQOa5IlUCpO2Ma/XEjGnx4TQLM8MvMbskc+GNbZ0mtzfV0hCeQkqxxJ2lP4Mkp4QhwGRRkRrDu1G0Wg==} peerDependencies: '@nextui-org/system': '>=2.0.0' @@ -9196,7 +9991,7 @@ packages: '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-icons': 2.0.6(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@react-aria/focus': 3.15.0(react@18.2.0) '@react-aria/interactions': 3.20.0(react@18.2.0) @@ -9207,12 +10002,12 @@ packages: '@react-types/textfield': 3.9.0(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) - react-textarea-autosize: 8.5.2(@types/react@18.2.63)(react@18.2.0) + react-textarea-autosize: 8.5.2(@types/react@18.2.64)(react@18.2.0) transitivePeerDependencies: - '@types/react' dev: false - /@nextui-org/kbd@2.0.25(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19): + /@nextui-org/kbd@2.0.25(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-cYwbEjp/+/tjtOdmiRy2UHjfBhP3bqd5e+JFTa5sY1HotckUZrCintATyBcg9bPa3iSPUI44M6Cb9e0oAUUeMA==} peerDependencies: '@nextui-org/theme': '>=2.1.0' @@ -9221,7 +10016,7 @@ packages: dependencies: '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system-rsc': 2.0.11(@nextui-org/theme@2.1.18)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system-rsc': 2.0.11(@nextui-org/theme@2.1.18)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@react-aria/utils': 3.22.0(react@18.2.0) react: 18.2.0 @@ -9241,7 +10036,7 @@ packages: '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-icons': 2.0.6(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@nextui-org/use-aria-link': 2.0.15(react@18.2.0) '@react-aria/focus': 3.15.0(react@18.2.0) @@ -9252,7 +10047,7 @@ packages: react-dom: 18.2.0(react@18.2.0) dev: false - /@nextui-org/listbox@2.1.16(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19): + /@nextui-org/listbox@2.1.16(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-5PmUCoHFgAr+1nAU3IlqPFTgyHo7zsTcNeja4wcErD/KseCF2h7Uk5OqUX5hQDN9B9fZuGjPrkG4yoK/6pqcUQ==} peerDependencies: '@nextui-org/system': '>=2.0.0' @@ -9260,11 +10055,11 @@ packages: react: '>=18' react-dom: '>=18' dependencies: - '@nextui-org/aria-utils': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/divider': 2.0.25(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/aria-utils': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/divider': 2.0.25(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@nextui-org/use-aria-press': 2.0.1(react@18.2.0) '@nextui-org/use-is-mobile': 2.0.6(react@18.2.0) @@ -9281,7 +10076,7 @@ packages: - tailwind-variants dev: false - /@nextui-org/menu@2.0.17(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19): + /@nextui-org/menu@2.0.17(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-qr/BPDbBvg5tpAZZLkLx8eNnvYwJYM3Q72fmRYbzwmG3upNtdjln0QYxSwPXUz7RYqTKEFWc9JPxq2pgPM15Wg==} peerDependencies: '@nextui-org/system': '>=2.0.0' @@ -9289,11 +10084,11 @@ packages: react: '>=18' react-dom: '>=18' dependencies: - '@nextui-org/aria-utils': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/divider': 2.0.25(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/aria-utils': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/divider': 2.0.25(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@nextui-org/use-aria-press': 2.0.1(react@18.2.0) '@nextui-org/use-is-mobile': 2.0.6(react@18.2.0) @@ -9311,7 +10106,7 @@ packages: - tailwind-variants dev: false - /@nextui-org/modal@2.0.29(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.63)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19): + /@nextui-org/modal@2.0.29(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.64)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-C/pvw0fAPWKbfMoGfIVZWhMRbe+DRGEg7GqPVY7EmW4FSSIK7Sfdn6Jxm+sSv+a7xHpDr86nirFbvN3S4jCaHw==} peerDependencies: '@nextui-org/system': '>=2.0.0' @@ -9320,11 +10115,11 @@ packages: react: '>=18' react-dom: '>=18' dependencies: - '@nextui-org/framer-transitions': 2.0.15(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/framer-transitions': 2.0.15(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-icons': 2.0.6(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@nextui-org/use-aria-button': 2.0.6(react@18.2.0) '@nextui-org/use-aria-modal-overlay': 2.0.6(react-dom@18.2.0)(react@18.2.0) @@ -9339,13 +10134,13 @@ packages: framer-motion: 11.0.8(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) - react-remove-scroll: 2.5.7(@types/react@18.2.63)(react@18.2.0) + react-remove-scroll: 2.5.7(@types/react@18.2.64)(react@18.2.0) transitivePeerDependencies: - '@types/react' - tailwind-variants dev: false - /@nextui-org/navbar@2.0.27(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.63)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19): + /@nextui-org/navbar@2.0.27(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.64)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-iP4Pn4ItQkAW1nbu1Jmrh5l9pMVG43lDxq9rbx6DbLjLnnZOOrE6fURb8uN5NVy3ooV5dF02zKAoxlkE5fN/xw==} peerDependencies: '@nextui-org/system': '>=2.0.0' @@ -9354,10 +10149,10 @@ packages: react: '>=18' react-dom: '>=18' dependencies: - '@nextui-org/framer-transitions': 2.0.15(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/framer-transitions': 2.0.15(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@nextui-org/use-aria-toggle-button': 2.0.6(react@18.2.0) '@nextui-org/use-scroll-position': 2.0.4(react@18.2.0) @@ -9370,7 +10165,7 @@ packages: framer-motion: 11.0.8(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) - react-remove-scroll: 2.5.7(@types/react@18.2.63)(react@18.2.0) + react-remove-scroll: 2.5.7(@types/react@18.2.64)(react@18.2.0) transitivePeerDependencies: - '@types/react' - tailwind-variants @@ -9387,7 +10182,7 @@ packages: '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-icons': 2.0.6(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@nextui-org/use-aria-press': 2.0.1(react@18.2.0) '@nextui-org/use-pagination': 2.0.5(react@18.2.0) @@ -9400,7 +10195,7 @@ packages: scroll-into-view-if-needed: 3.0.10 dev: false - /@nextui-org/popover@2.1.15(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.63)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19): + /@nextui-org/popover@2.1.15(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.64)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-FQ66y49sQvXvyDrEsEFAC0qfpl2X+5ZPGaVXdNd3Cjox/jxAxp93cSUkk0iOfYvdsbO5zVFjuM0L3Dqn4hsHMw==} peerDependencies: '@nextui-org/system': '>=2.0.0' @@ -9409,12 +10204,12 @@ packages: react: '>=18' react-dom: '>=18' dependencies: - '@nextui-org/aria-utils': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/button': 2.0.27(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/framer-transitions': 2.0.15(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/aria-utils': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/button': 2.0.27(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/framer-transitions': 2.0.15(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@nextui-org/use-aria-button': 2.0.6(react@18.2.0) '@nextui-org/use-safe-layout-effect': 2.0.4(react@18.2.0) @@ -9429,7 +10224,7 @@ packages: framer-motion: 11.0.8(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) - react-remove-scroll: 2.5.7(@types/react@18.2.63)(react@18.2.0) + react-remove-scroll: 2.5.7(@types/react@18.2.64)(react@18.2.0) transitivePeerDependencies: - '@types/react' - tailwind-variants @@ -9445,7 +10240,7 @@ packages: dependencies: '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@nextui-org/use-is-mounted': 2.0.4(react@18.2.0) '@react-aria/i18n': 3.9.0(react@18.2.0) @@ -9466,7 +10261,7 @@ packages: dependencies: '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@nextui-org/use-aria-press': 2.0.1(react@18.2.0) '@react-aria/focus': 3.15.0(react@18.2.0) @@ -9495,51 +10290,51 @@ packages: react: 18.2.0 dev: false - /@nextui-org/react@2.2.10(@types/react@18.2.63)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19)(tailwindcss@3.4.1): + /@nextui-org/react@2.2.10(@types/react@18.2.64)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0)(tailwindcss@3.4.1): resolution: {integrity: sha512-YJhUIeLnO/FGDbZgfeWEz32RBrH2YFA1qsJQtMF7mza8rjspX/CkankvI7xs1o6sW/TYLSTq7sOF9RGMxLTIAA==} peerDependencies: framer-motion: '>=4.0.0' react: '>=18' react-dom: '>=18' dependencies: - '@nextui-org/accordion': 2.0.28(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/autocomplete': 2.0.10(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.63)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/accordion': 2.0.28(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/autocomplete': 2.0.10(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.64)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/avatar': 2.0.24(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0) - '@nextui-org/badge': 2.0.24(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/badge': 2.0.24(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/breadcrumbs': 2.0.4(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0) - '@nextui-org/button': 2.0.27(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/button': 2.0.27(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/card': 2.0.24(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0) '@nextui-org/checkbox': 2.0.25(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0) '@nextui-org/chip': 2.0.25(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0) - '@nextui-org/code': 2.0.24(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/divider': 2.0.25(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/dropdown': 2.1.17(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.63)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/code': 2.0.24(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/divider': 2.0.25(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/dropdown': 2.1.17(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.64)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/image': 2.0.24(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0) - '@nextui-org/input': 2.1.17(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.63)(react-dom@18.2.0)(react@18.2.0) - '@nextui-org/kbd': 2.0.25(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/input': 2.1.17(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0) + '@nextui-org/kbd': 2.0.25(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/link': 2.0.26(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0) - '@nextui-org/listbox': 2.1.16(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/menu': 2.0.17(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/modal': 2.0.29(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.63)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/navbar': 2.0.27(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.63)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/listbox': 2.1.16(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/menu': 2.0.17(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/modal': 2.0.29(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.64)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/navbar': 2.0.27(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.64)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/pagination': 2.0.27(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0) - '@nextui-org/popover': 2.1.15(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.63)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/popover': 2.1.15(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.64)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/progress': 2.0.25(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0) '@nextui-org/radio': 2.0.25(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0) '@nextui-org/ripple': 2.0.24(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0) '@nextui-org/scroll-shadow': 2.1.13(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0) - '@nextui-org/select': 2.1.21(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.63)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/skeleton': 2.0.24(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/slider': 2.2.6(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/snippet': 2.0.31(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/spacer': 2.0.24(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/spinner': 2.0.25(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/select': 2.1.21(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.64)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/skeleton': 2.0.24(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/slider': 2.2.6(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/snippet': 2.0.31(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/spacer': 2.0.24(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/spinner': 2.0.25(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/switch': 2.0.25(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/table': 2.0.28(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/tabs': 2.0.26(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/table': 2.0.28(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/tabs': 2.0.26(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) - '@nextui-org/tooltip': 2.0.30(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/tooltip': 2.0.30(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/user': 2.0.25(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0) '@react-aria/visually-hidden': 3.8.7(react@18.2.0) framer-motion: 11.0.8(react-dom@18.2.0)(react@18.2.0) @@ -9562,7 +10357,7 @@ packages: dependencies: '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) framer-motion: 11.0.8(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 @@ -9579,14 +10374,14 @@ packages: dependencies: '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@nextui-org/use-data-scroll-overflow': 2.1.3(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false - /@nextui-org/select@2.1.21(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.63)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19): + /@nextui-org/select@2.1.21(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.64)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-BVfmxIsZTL6dBiZ1Q5RbAnqiNpVnaJgWi0M1QMV448FHMaDHLTWtNOJPMD0QyxHRNPfDgFrqEAq6a1+pA26ckQ==} peerDependencies: '@nextui-org/system': '>=2.0.0' @@ -9595,15 +10390,15 @@ packages: react: '>=18' react-dom: '>=18' dependencies: - '@nextui-org/aria-utils': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/listbox': 2.1.16(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/popover': 2.1.15(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.63)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/aria-utils': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/listbox': 2.1.16(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/popover': 2.1.15(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(@types/react@18.2.64)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/scroll-shadow': 2.1.13(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0) '@nextui-org/shared-icons': 2.0.6(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/spinner': 2.0.25(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/spinner': 2.0.25(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@nextui-org/use-aria-button': 2.0.6(react@18.2.0) '@nextui-org/use-aria-multiselect': 2.1.4(react-dom@18.2.0)(react@18.2.0) @@ -9636,7 +10431,7 @@ packages: react: 18.2.0 dev: false - /@nextui-org/skeleton@2.0.24(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19): + /@nextui-org/skeleton@2.0.24(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-bsb+lYugSfQV3RHrEHLbHhkkeslaxybnnT4z485Y/GBYTENOiHIOnWFWntfxCbjZ6vCewGlfgnphj6zeqlk20g==} peerDependencies: '@nextui-org/theme': '>=2.1.0' @@ -9645,7 +10440,7 @@ packages: dependencies: '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system-rsc': 2.0.11(@nextui-org/theme@2.1.18)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system-rsc': 2.0.11(@nextui-org/theme@2.1.18)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -9653,7 +10448,7 @@ packages: - tailwind-variants dev: false - /@nextui-org/slider@2.2.6(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19): + /@nextui-org/slider@2.2.6(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-adCjQ8k4bUwWcvmOJUki3+UVsCz4ms+qLG4jnY2wClPdQAwISMbZzQsuv3km+1HIZE5Ja7jzeeT/dMd8l3n+bg==} peerDependencies: '@nextui-org/system': '>=2.0.0' @@ -9663,9 +10458,9 @@ packages: dependencies: '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) - '@nextui-org/tooltip': 2.0.30(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/tooltip': 2.0.30(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/use-aria-press': 2.0.1(react@18.2.0) '@react-aria/focus': 3.15.0(react@18.2.0) '@react-aria/i18n': 3.9.0(react@18.2.0) @@ -9681,7 +10476,7 @@ packages: - tailwind-variants dev: false - /@nextui-org/snippet@2.0.31(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19): + /@nextui-org/snippet@2.0.31(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-WooH5cqlHoa6SqUhzseKY7g1ah8kzSv382u95Or9kIgSirEZCrjygup3nFeKTMAe01NZoAz3OOYO7XNFWJ57vA==} peerDependencies: '@nextui-org/system': '>=2.0.0' @@ -9690,13 +10485,13 @@ packages: react: '>=18' react-dom: '>=18' dependencies: - '@nextui-org/button': 2.0.27(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/button': 2.0.27(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-icons': 2.0.6(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) - '@nextui-org/tooltip': 2.0.30(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/tooltip': 2.0.30(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/use-clipboard': 2.0.4(react@18.2.0) '@react-aria/focus': 3.15.0(react@18.2.0) '@react-aria/utils': 3.22.0(react@18.2.0) @@ -9707,7 +10502,7 @@ packages: - tailwind-variants dev: false - /@nextui-org/spacer@2.0.24(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19): + /@nextui-org/spacer@2.0.24(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-bLnhPRnoyHQXhLneHjbRqZNxJWMFOBYOZkuX83uy59/FFUY07BcoNsb2s80tN3GoVxsaZ2jB6NxxVbaCJwoPog==} peerDependencies: '@nextui-org/theme': '>=2.1.0' @@ -9716,7 +10511,7 @@ packages: dependencies: '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system-rsc': 2.0.11(@nextui-org/theme@2.1.18)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system-rsc': 2.0.11(@nextui-org/theme@2.1.18)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -9724,7 +10519,7 @@ packages: - tailwind-variants dev: false - /@nextui-org/spinner@2.0.25(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19): + /@nextui-org/spinner@2.0.25(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-s2iqaB71sanRxglJtG4UZF+Rz/W6UxnYegbkhnkkljH20vhOcrhwm5jKGStq8jkata8UZ0ajS67H8KY8lHV8nw==} peerDependencies: '@nextui-org/theme': '>=2.1.0' @@ -9733,7 +10528,7 @@ packages: dependencies: '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system-rsc': 2.0.11(@nextui-org/theme@2.1.18)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system-rsc': 2.0.11(@nextui-org/theme@2.1.18)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -9751,7 +10546,7 @@ packages: dependencies: '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@nextui-org/use-aria-press': 2.0.1(react@18.2.0) '@react-aria/focus': 3.15.0(react@18.2.0) @@ -9765,7 +10560,7 @@ packages: react-dom: 18.2.0(react@18.2.0) dev: false - /@nextui-org/system-rsc@2.0.11(@nextui-org/theme@2.1.18)(react@18.2.0)(tailwind-variants@0.1.19): + /@nextui-org/system-rsc@2.0.11(@nextui-org/theme@2.1.18)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-1QqZ+GM7Ii0rsfSHXS6BBjzKOoLIWwb72nm4h4WgjlMXbRKLZcCQasRHVe5HMSBMvN0JUo7qyGExchfDFl/Ubw==} peerDependencies: '@nextui-org/theme': '>=2.1.0' @@ -9775,16 +10570,16 @@ packages: '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) clsx: 1.2.1 react: 18.2.0 - tailwind-variants: 0.1.19(tailwindcss@3.4.1) + tailwind-variants: 0.2.0(tailwindcss@3.4.1) dev: false - /@nextui-org/system@2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19): + /@nextui-org/system@2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-WFDq+Rx6D+gmK1YGEG2RBARPK9EOYonQDt5Tq2tUchzOOqj3kXXcM5Z0F3fudM59eIncLa/tX/ApJSTLry+hsw==} peerDependencies: react: '>=18' react-dom: '>=18' dependencies: - '@nextui-org/system-rsc': 2.0.11(@nextui-org/theme@2.1.18)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system-rsc': 2.0.11(@nextui-org/theme@2.1.18)(react@18.2.0)(tailwind-variants@0.2.0) '@react-aria/i18n': 3.9.0(react@18.2.0) '@react-aria/overlays': 3.19.0(react-dom@18.2.0)(react@18.2.0) '@react-aria/utils': 3.22.0(react@18.2.0) @@ -9796,7 +10591,7 @@ packages: - tailwind-variants dev: false - /@nextui-org/table@2.0.28(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19): + /@nextui-org/table@2.0.28(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-qH/7jdV5+tiMDDvBfMrUZN4jamds0FsL5Ak+ighoKIUYRFTSXOroi+63ZzzAh/mZAsUALCPPcfbXt4r4aBFDzg==} peerDependencies: '@nextui-org/system': '>=2.0.0' @@ -9808,8 +10603,8 @@ packages: '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-icons': 2.0.6(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/spacer': 2.0.24(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/spacer': 2.0.24(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@react-aria/focus': 3.15.0(react@18.2.0) '@react-aria/interactions': 3.20.0(react@18.2.0) @@ -9826,7 +10621,7 @@ packages: - tailwind-variants dev: false - /@nextui-org/tabs@2.0.26(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19): + /@nextui-org/tabs@2.0.26(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-GjERgBYUAY1KD4GqNVy0cRi6GyQnf62q0ddcN4je3sEM6rsq3PygEXhkN5pxxFPacoYM/UE6rBswHSKlbjJjgw==} peerDependencies: '@nextui-org/system': '>=2.0.0' @@ -9835,11 +10630,11 @@ packages: react: '>=18' react-dom: '>=18' dependencies: - '@nextui-org/aria-utils': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/framer-transitions': 2.0.15(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/aria-utils': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/framer-transitions': 2.0.15(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@nextui-org/use-is-mounted': 2.0.4(react@18.2.0) '@nextui-org/use-update-effect': 2.0.4(react@18.2.0) @@ -9876,7 +10671,7 @@ packages: tailwindcss: 3.4.1(ts-node@10.9.2) dev: false - /@nextui-org/tooltip@2.0.30(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19): + /@nextui-org/tooltip@2.0.30(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-V3N9o/oNU1Y11etiilrlqt5dF4/o9eJSttgN2CPo8eRAPc96+sRpdGPGX3XcLJZNFRcNx8BkD/bcEUcrDdjmRA==} peerDependencies: '@nextui-org/system': '>=2.0.0' @@ -9885,11 +10680,11 @@ packages: react: '>=18' react-dom: '>=18' dependencies: - '@nextui-org/aria-utils': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) - '@nextui-org/framer-transitions': 2.0.15(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/aria-utils': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) + '@nextui-org/framer-transitions': 2.0.15(@nextui-org/theme@2.1.18)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@nextui-org/use-safe-layout-effect': 2.0.4(react@18.2.0) '@react-aria/interactions': 3.20.0(react@18.2.0) @@ -10121,7 +10916,7 @@ packages: '@nextui-org/avatar': 2.0.24(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0) '@nextui-org/react-utils': 2.0.10(react@18.2.0) '@nextui-org/shared-utils': 2.0.4(react@18.2.0) - '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.1.19) + '@nextui-org/system': 2.0.15(@nextui-org/theme@2.1.18)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0) '@nextui-org/theme': 2.1.18(tailwindcss@3.4.1) '@react-aria/focus': 3.15.0(react@18.2.0) '@react-aria/utils': 3.22.0(react@18.2.0) @@ -10132,6 +10927,9 @@ packages: /@noble/ciphers@0.4.0: resolution: {integrity: sha512-xaUaUUDWbHIFSxaQ/pIe+33VG2mfJp6N/KxKLmZr5biWdNznCAmfu24QRhX10BbVAuqOahAoyp0S4M9md6GPDw==} + /@noble/ciphers@0.5.1: + resolution: {integrity: sha512-aNE06lbe36ifvMbbWvmmF/8jx6EQPu2HVg70V95T+iGjOuYwPpAccwAQc2HlXO2D0aiQ3zavbMga4jjWnrpiPA==} + /@noble/curves@1.2.0: resolution: {integrity: sha512-oYclrNgRaM9SsBUBVbb8M6DTV7ZHRTKugureoYEncY5c65HOmRzvSiTE3y5CYaPYJA/GVkrhXEoF0M3Ya9PMnw==} dependencies: @@ -10189,7 +10987,7 @@ packages: requiresBuild: true dependencies: '@gar/promisify': 1.1.3 - semver: 7.5.4 + semver: 7.6.0 /@npmcli/move-file@1.1.2: resolution: {integrity: sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==} @@ -10661,11 +11459,6 @@ packages: dev: true optional: true - /@pkgr/core@0.1.1: - resolution: {integrity: sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==} - engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} - dev: true - /@pnpm/config.env-replace@1.1.0: resolution: {integrity: sha512-htyl8TWnKL7K/ESFa1oW2UB5lVDxuF5DpM7tBi6Hu2LNL3mWkIzNLG6N4zoCUP1lCKNxWy/3iu8mS8MvToGd6w==} engines: {node: '>=12.22.0'} @@ -10693,7 +11486,7 @@ packages: '@babel/runtime': 7.23.2 dev: false - /@radix-ui/react-collection@1.0.3(@types/react-dom@18.2.20)(@types/react@18.2.63)(react-dom@18.2.0)(react@18.2.0): + /@radix-ui/react-collection@1.0.3(@types/react-dom@18.2.21)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-3SzW+0PW7yBBoQlT8wNcGtaxaD0XSu0uLUFgrtHY08Acx05TaHaOmVLR73c0j/cqpDy53KBMO7s0dx2wmOIDIA==} peerDependencies: '@types/react': '*' @@ -10707,17 +11500,17 @@ packages: optional: true dependencies: '@babel/runtime': 7.23.2 - '@radix-ui/react-compose-refs': 1.0.1(@types/react@18.2.63)(react@18.2.0) - '@radix-ui/react-context': 1.0.1(@types/react@18.2.63)(react@18.2.0) - '@radix-ui/react-primitive': 1.0.3(@types/react-dom@18.2.20)(@types/react@18.2.63)(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-slot': 1.0.2(@types/react@18.2.63)(react@18.2.0) - '@types/react': 18.2.63 - '@types/react-dom': 18.2.20 + '@radix-ui/react-compose-refs': 1.0.1(@types/react@18.2.64)(react@18.2.0) + '@radix-ui/react-context': 1.0.1(@types/react@18.2.64)(react@18.2.0) + '@radix-ui/react-primitive': 1.0.3(@types/react-dom@18.2.21)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-slot': 1.0.2(@types/react@18.2.64)(react@18.2.0) + '@types/react': 18.2.64 + '@types/react-dom': 18.2.21 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false - /@radix-ui/react-compose-refs@1.0.1(@types/react@18.2.63)(react@18.2.0): + /@radix-ui/react-compose-refs@1.0.1(@types/react@18.2.64)(react@18.2.0): resolution: {integrity: sha512-fDSBgd44FKHa1FRMU59qBMPFcl2PZE+2nmqunj+BWFyYYjnhIDWL2ItDs3rrbJDQOtzt5nIebLCQc4QRfz6LJw==} peerDependencies: '@types/react': '*' @@ -10727,11 +11520,11 @@ packages: optional: true dependencies: '@babel/runtime': 7.23.2 - '@types/react': 18.2.63 + '@types/react': 18.2.64 react: 18.2.0 dev: false - /@radix-ui/react-context@1.0.1(@types/react@18.2.63)(react@18.2.0): + /@radix-ui/react-context@1.0.1(@types/react@18.2.64)(react@18.2.0): resolution: {integrity: sha512-ebbrdFoYTcuZ0v4wG5tedGnp9tzcV8awzsxYph7gXUyvnNLuTIcCk1q17JEbnVhXAKG9oX3KtchwiMIAYp9NLg==} peerDependencies: '@types/react': '*' @@ -10741,11 +11534,11 @@ packages: optional: true dependencies: '@babel/runtime': 7.23.2 - '@types/react': 18.2.63 + '@types/react': 18.2.64 react: 18.2.0 dev: false - /@radix-ui/react-dismissable-layer@1.0.5(@types/react-dom@18.2.20)(@types/react@18.2.63)(react-dom@18.2.0)(react@18.2.0): + /@radix-ui/react-dismissable-layer@1.0.5(@types/react-dom@18.2.21)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-aJeDjQhywg9LBu2t/At58hCvr7pEm0o2Ke1x33B+MhjNmmZ17sy4KImo0KPLgsnc/zN7GPdce8Cnn0SWvwZO7g==} peerDependencies: '@types/react': '*' @@ -10760,17 +11553,17 @@ packages: dependencies: '@babel/runtime': 7.23.2 '@radix-ui/primitive': 1.0.1 - '@radix-ui/react-compose-refs': 1.0.1(@types/react@18.2.63)(react@18.2.0) - '@radix-ui/react-primitive': 1.0.3(@types/react-dom@18.2.20)(@types/react@18.2.63)(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-use-callback-ref': 1.0.1(@types/react@18.2.63)(react@18.2.0) - '@radix-ui/react-use-escape-keydown': 1.0.3(@types/react@18.2.63)(react@18.2.0) - '@types/react': 18.2.63 - '@types/react-dom': 18.2.20 + '@radix-ui/react-compose-refs': 1.0.1(@types/react@18.2.64)(react@18.2.0) + '@radix-ui/react-primitive': 1.0.3(@types/react-dom@18.2.21)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-use-callback-ref': 1.0.1(@types/react@18.2.64)(react@18.2.0) + '@radix-ui/react-use-escape-keydown': 1.0.3(@types/react@18.2.64)(react@18.2.0) + '@types/react': 18.2.64 + '@types/react-dom': 18.2.21 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false - /@radix-ui/react-portal@1.0.4(@types/react-dom@18.2.20)(@types/react@18.2.63)(react-dom@18.2.0)(react@18.2.0): + /@radix-ui/react-portal@1.0.4(@types/react-dom@18.2.21)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-Qki+C/EuGUVCQTOTD5vzJzJuMUlewbzuKyUy+/iHM2uwGiru9gZeBJtHAPKAEkB5KWGi9mP/CHKcY0wt1aW45Q==} peerDependencies: '@types/react': '*' @@ -10784,14 +11577,14 @@ packages: optional: true dependencies: '@babel/runtime': 7.23.2 - '@radix-ui/react-primitive': 1.0.3(@types/react-dom@18.2.20)(@types/react@18.2.63)(react-dom@18.2.0)(react@18.2.0) - '@types/react': 18.2.63 - '@types/react-dom': 18.2.20 + '@radix-ui/react-primitive': 1.0.3(@types/react-dom@18.2.21)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0) + '@types/react': 18.2.64 + '@types/react-dom': 18.2.21 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false - /@radix-ui/react-presence@1.0.1(@types/react-dom@18.2.20)(@types/react@18.2.63)(react-dom@18.2.0)(react@18.2.0): + /@radix-ui/react-presence@1.0.1(@types/react-dom@18.2.21)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-UXLW4UAbIY5ZjcvzjfRFo5gxva8QirC9hF7wRE4U5gz+TP0DbRk+//qyuAQ1McDxBt1xNMBTaciFGvEmJvAZCg==} peerDependencies: '@types/react': '*' @@ -10805,15 +11598,15 @@ packages: optional: true dependencies: '@babel/runtime': 7.23.2 - '@radix-ui/react-compose-refs': 1.0.1(@types/react@18.2.63)(react@18.2.0) - '@radix-ui/react-use-layout-effect': 1.0.1(@types/react@18.2.63)(react@18.2.0) - '@types/react': 18.2.63 - '@types/react-dom': 18.2.20 + '@radix-ui/react-compose-refs': 1.0.1(@types/react@18.2.64)(react@18.2.0) + '@radix-ui/react-use-layout-effect': 1.0.1(@types/react@18.2.64)(react@18.2.0) + '@types/react': 18.2.64 + '@types/react-dom': 18.2.21 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false - /@radix-ui/react-primitive@1.0.3(@types/react-dom@18.2.20)(@types/react@18.2.63)(react-dom@18.2.0)(react@18.2.0): + /@radix-ui/react-primitive@1.0.3(@types/react-dom@18.2.21)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-yi58uVyoAcK/Nq1inRY56ZSjKypBNKTa/1mcL8qdl6oJeEaDbOldlzrGn7P6Q3Id5d+SYNGc5AJgc4vGhjs5+g==} peerDependencies: '@types/react': '*' @@ -10827,14 +11620,14 @@ packages: optional: true dependencies: '@babel/runtime': 7.23.2 - '@radix-ui/react-slot': 1.0.2(@types/react@18.2.63)(react@18.2.0) - '@types/react': 18.2.63 - '@types/react-dom': 18.2.20 + '@radix-ui/react-slot': 1.0.2(@types/react@18.2.64)(react@18.2.0) + '@types/react': 18.2.64 + '@types/react-dom': 18.2.21 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false - /@radix-ui/react-slot@1.0.2(@types/react@18.2.63)(react@18.2.0): + /@radix-ui/react-slot@1.0.2(@types/react@18.2.64)(react@18.2.0): resolution: {integrity: sha512-YeTpuq4deV+6DusvVUW4ivBgnkHwECUu0BiN43L5UCDFgdhsRUWAghhTF5MbvNTPzmiFOx90asDSUjWuCNapwg==} peerDependencies: '@types/react': '*' @@ -10844,12 +11637,12 @@ packages: optional: true dependencies: '@babel/runtime': 7.23.2 - '@radix-ui/react-compose-refs': 1.0.1(@types/react@18.2.63)(react@18.2.0) - '@types/react': 18.2.63 + '@radix-ui/react-compose-refs': 1.0.1(@types/react@18.2.64)(react@18.2.0) + '@types/react': 18.2.64 react: 18.2.0 dev: false - /@radix-ui/react-toast@1.1.5(@types/react-dom@18.2.20)(@types/react@18.2.63)(react-dom@18.2.0)(react@18.2.0): + /@radix-ui/react-toast@1.1.5(@types/react-dom@18.2.21)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-fRLn227WHIBRSzuRzGJ8W+5YALxofH23y0MlPLddaIpLpCDqdE0NZlS2NRQDRiptfxDeeCjgFIpexB1/zkxDlw==} peerDependencies: '@types/react': '*' @@ -10864,24 +11657,24 @@ packages: dependencies: '@babel/runtime': 7.23.2 '@radix-ui/primitive': 1.0.1 - '@radix-ui/react-collection': 1.0.3(@types/react-dom@18.2.20)(@types/react@18.2.63)(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-compose-refs': 1.0.1(@types/react@18.2.63)(react@18.2.0) - '@radix-ui/react-context': 1.0.1(@types/react@18.2.63)(react@18.2.0) - '@radix-ui/react-dismissable-layer': 1.0.5(@types/react-dom@18.2.20)(@types/react@18.2.63)(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-portal': 1.0.4(@types/react-dom@18.2.20)(@types/react@18.2.63)(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-presence': 1.0.1(@types/react-dom@18.2.20)(@types/react@18.2.63)(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-primitive': 1.0.3(@types/react-dom@18.2.20)(@types/react@18.2.63)(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-use-callback-ref': 1.0.1(@types/react@18.2.63)(react@18.2.0) - '@radix-ui/react-use-controllable-state': 1.0.1(@types/react@18.2.63)(react@18.2.0) - '@radix-ui/react-use-layout-effect': 1.0.1(@types/react@18.2.63)(react@18.2.0) - '@radix-ui/react-visually-hidden': 1.0.3(@types/react-dom@18.2.20)(@types/react@18.2.63)(react-dom@18.2.0)(react@18.2.0) - '@types/react': 18.2.63 - '@types/react-dom': 18.2.20 + '@radix-ui/react-collection': 1.0.3(@types/react-dom@18.2.21)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-compose-refs': 1.0.1(@types/react@18.2.64)(react@18.2.0) + '@radix-ui/react-context': 1.0.1(@types/react@18.2.64)(react@18.2.0) + '@radix-ui/react-dismissable-layer': 1.0.5(@types/react-dom@18.2.21)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-portal': 1.0.4(@types/react-dom@18.2.21)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-presence': 1.0.1(@types/react-dom@18.2.21)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-primitive': 1.0.3(@types/react-dom@18.2.21)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-use-callback-ref': 1.0.1(@types/react@18.2.64)(react@18.2.0) + '@radix-ui/react-use-controllable-state': 1.0.1(@types/react@18.2.64)(react@18.2.0) + '@radix-ui/react-use-layout-effect': 1.0.1(@types/react@18.2.64)(react@18.2.0) + '@radix-ui/react-visually-hidden': 1.0.3(@types/react-dom@18.2.21)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0) + '@types/react': 18.2.64 + '@types/react-dom': 18.2.21 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false - /@radix-ui/react-use-callback-ref@1.0.1(@types/react@18.2.63)(react@18.2.0): + /@radix-ui/react-use-callback-ref@1.0.1(@types/react@18.2.64)(react@18.2.0): resolution: {integrity: sha512-D94LjX4Sp0xJFVaoQOd3OO9k7tpBYNOXdVhkltUbGv2Qb9OXdrg/CpsjlZv7ia14Sylv398LswWBVVu5nqKzAQ==} peerDependencies: '@types/react': '*' @@ -10891,11 +11684,11 @@ packages: optional: true dependencies: '@babel/runtime': 7.23.2 - '@types/react': 18.2.63 + '@types/react': 18.2.64 react: 18.2.0 dev: false - /@radix-ui/react-use-controllable-state@1.0.1(@types/react@18.2.63)(react@18.2.0): + /@radix-ui/react-use-controllable-state@1.0.1(@types/react@18.2.64)(react@18.2.0): resolution: {integrity: sha512-Svl5GY5FQeN758fWKrjM6Qb7asvXeiZltlT4U2gVfl8Gx5UAv2sMR0LWo8yhsIZh2oQ0eFdZ59aoOOMV7b47VA==} peerDependencies: '@types/react': '*' @@ -10905,12 +11698,12 @@ packages: optional: true dependencies: '@babel/runtime': 7.23.2 - '@radix-ui/react-use-callback-ref': 1.0.1(@types/react@18.2.63)(react@18.2.0) - '@types/react': 18.2.63 + '@radix-ui/react-use-callback-ref': 1.0.1(@types/react@18.2.64)(react@18.2.0) + '@types/react': 18.2.64 react: 18.2.0 dev: false - /@radix-ui/react-use-escape-keydown@1.0.3(@types/react@18.2.63)(react@18.2.0): + /@radix-ui/react-use-escape-keydown@1.0.3(@types/react@18.2.64)(react@18.2.0): resolution: {integrity: sha512-vyL82j40hcFicA+M4Ex7hVkB9vHgSse1ZWomAqV2Je3RleKGO5iM8KMOEtfoSB0PnIelMd2lATjTGMYqN5ylTg==} peerDependencies: '@types/react': '*' @@ -10920,12 +11713,12 @@ packages: optional: true dependencies: '@babel/runtime': 7.23.2 - '@radix-ui/react-use-callback-ref': 1.0.1(@types/react@18.2.63)(react@18.2.0) - '@types/react': 18.2.63 + '@radix-ui/react-use-callback-ref': 1.0.1(@types/react@18.2.64)(react@18.2.0) + '@types/react': 18.2.64 react: 18.2.0 dev: false - /@radix-ui/react-use-layout-effect@1.0.1(@types/react@18.2.63)(react@18.2.0): + /@radix-ui/react-use-layout-effect@1.0.1(@types/react@18.2.64)(react@18.2.0): resolution: {integrity: sha512-v/5RegiJWYdoCvMnITBkNNx6bCj20fiaJnWtRkU18yITptraXjffz5Qbn05uOiQnOvi+dbkznkoaMltz1GnszQ==} peerDependencies: '@types/react': '*' @@ -10935,11 +11728,11 @@ packages: optional: true dependencies: '@babel/runtime': 7.23.2 - '@types/react': 18.2.63 + '@types/react': 18.2.64 react: 18.2.0 dev: false - /@radix-ui/react-visually-hidden@1.0.3(@types/react-dom@18.2.20)(@types/react@18.2.63)(react-dom@18.2.0)(react@18.2.0): + /@radix-ui/react-visually-hidden@1.0.3(@types/react-dom@18.2.21)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-D4w41yN5YRKtu464TLnByKzMDG/JlMPHtfZgQAu9v6mNakUqGUI9vUrfQKz8NK41VMm/xbZbh76NUTVtIYqOMA==} peerDependencies: '@types/react': '*' @@ -10953,9 +11746,9 @@ packages: optional: true dependencies: '@babel/runtime': 7.23.2 - '@radix-ui/react-primitive': 1.0.3(@types/react-dom@18.2.20)(@types/react@18.2.63)(react-dom@18.2.0)(react@18.2.0) - '@types/react': 18.2.63 - '@types/react-dom': 18.2.20 + '@radix-ui/react-primitive': 1.0.3(@types/react-dom@18.2.21)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0) + '@types/react': 18.2.64 + '@types/react-dom': 18.2.21 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false @@ -11423,150 +12216,107 @@ packages: react: 18.2.0 dev: false - /@react-native-async-storage/async-storage@1.21.0(react-native@0.72.6): + /@react-native-async-storage/async-storage@1.21.0(react-native@0.73.5): resolution: {integrity: sha512-JL0w36KuFHFCvnbOXRekqVAUplmOyT/OuCQkogo6X98MtpSaJOKEAeZnYO8JB0U/RIEixZaGI5px73YbRm/oag==} peerDependencies: react-native: ^0.0.0-0 || >=0.60 <1.0 dependencies: merge-options: 3.0.4 - react-native: 0.72.6(@babel/core@7.23.2)(@babel/preset-env@7.23.2)(encoding@0.1.13)(react@18.2.0) + react-native: 0.73.5(@babel/core@7.24.0)(@babel/preset-env@7.24.0)(encoding@0.1.13)(react@18.2.0) dev: false - /@react-native-community/cli-clean@11.3.7(encoding@0.1.13): - resolution: {integrity: sha512-twtsv54ohcRyWVzPXL3F9VHGb4Qhn3slqqRs3wEuRzjR7cTmV2TIO2b1VhaqF4HlCgNd+cGuirvLtK2JJyaxMg==} + /@react-native-community/cli-clean@12.3.6(encoding@0.1.13): + resolution: {integrity: sha512-gUU29ep8xM0BbnZjwz9MyID74KKwutq9x5iv4BCr2im6nly4UMf1B1D+V225wR7VcDGzbgWjaezsJShLLhC5ig==} dependencies: - '@react-native-community/cli-tools': 11.3.7(encoding@0.1.13) + '@react-native-community/cli-tools': 12.3.6(encoding@0.1.13) chalk: 4.1.2 execa: 5.1.1 - prompts: 2.4.2 transitivePeerDependencies: - encoding - /@react-native-community/cli-config@11.3.7(encoding@0.1.13): - resolution: {integrity: sha512-FDBLku9xskS+bx0YFJFLCmUJhEZ4/MMSC9qPYOGBollWYdgE7k/TWI0IeYFmMALAnbCdKQAYP5N29N55Tad8lg==} + /@react-native-community/cli-config@12.3.6(encoding@0.1.13): + resolution: {integrity: sha512-JGWSYQ9EAK6m2v0abXwFLEfsqJ1zkhzZ4CV261QZF9MoUNB6h57a274h1MLQR9mG6Tsh38wBUuNfEPUvS1vYew==} dependencies: - '@react-native-community/cli-tools': 11.3.7(encoding@0.1.13) + '@react-native-community/cli-tools': 12.3.6(encoding@0.1.13) chalk: 4.1.2 cosmiconfig: 5.2.1 deepmerge: 4.3.1 glob: 7.2.3 - joi: 17.11.0 + joi: 17.12.2 transitivePeerDependencies: - encoding - /@react-native-community/cli-debugger-ui@11.3.7: - resolution: {integrity: sha512-aVmKuPKHZENR8SrflkMurZqeyLwbKieHdOvaZCh1Nn/0UC5CxWcyST2DB2XQboZwsvr3/WXKJkSUO+SZ1J9qTQ==} + /@react-native-community/cli-debugger-ui@12.3.6: + resolution: {integrity: sha512-SjUKKsx5FmcK9G6Pb6UBFT0s9JexVStK5WInmANw75Hm7YokVvHEgtprQDz2Uvy5znX5g2ujzrkIU//T15KQzA==} dependencies: serve-static: 1.15.0 transitivePeerDependencies: - supports-color - /@react-native-community/cli-doctor@11.3.7(encoding@0.1.13): - resolution: {integrity: sha512-YEHUqWISOHnsl5+NM14KHelKh68Sr5/HeEZvvNdIcvcKtZic3FU7Xd1WcbNdo3gCq5JvzGFfufx02Tabh5zmrg==} + /@react-native-community/cli-doctor@12.3.6(encoding@0.1.13): + resolution: {integrity: sha512-fvBDv2lTthfw4WOQKkdTop2PlE9GtfrlNnpjB818MhcdEnPjfQw5YaTUcnNEGsvGomdCs1MVRMgYXXwPSN6OvQ==} dependencies: - '@react-native-community/cli-config': 11.3.7(encoding@0.1.13) - '@react-native-community/cli-platform-android': 11.3.7(encoding@0.1.13) - '@react-native-community/cli-platform-ios': 11.3.7(encoding@0.1.13) - '@react-native-community/cli-tools': 11.3.7(encoding@0.1.13) + '@react-native-community/cli-config': 12.3.6(encoding@0.1.13) + '@react-native-community/cli-platform-android': 12.3.6(encoding@0.1.13) + '@react-native-community/cli-platform-ios': 12.3.6(encoding@0.1.13) + '@react-native-community/cli-tools': 12.3.6(encoding@0.1.13) chalk: 4.1.2 command-exists: 1.2.9 - envinfo: 7.10.0 + deepmerge: 4.3.1 + envinfo: 7.11.1 execa: 5.1.1 hermes-profile-transformer: 0.0.6 - ip: 1.1.8 node-stream-zip: 1.15.0 ora: 5.4.1 - prompts: 2.4.2 - semver: 7.5.4 + semver: 7.6.0 strip-ansi: 5.2.0 - sudo-prompt: 9.2.1 wcwidth: 1.0.1 - yaml: 2.3.3 + yaml: 2.4.1 transitivePeerDependencies: - encoding - /@react-native-community/cli-hermes@11.3.7(encoding@0.1.13): - resolution: {integrity: sha512-chkKd8n/xeZkinRvtH6QcYA8rjNOKU3S3Lw/3Psxgx+hAYV0Gyk95qJHTalx7iu+PwjOOqqvCkJo5jCkYLkoqw==} + /@react-native-community/cli-hermes@12.3.6(encoding@0.1.13): + resolution: {integrity: sha512-sNGwfOCl8OAIjWCkwuLpP8NZbuO0dhDI/2W7NeOGDzIBsf4/c4MptTrULWtGIH9okVPLSPX0NnRyGQ+mSwWyuQ==} dependencies: - '@react-native-community/cli-platform-android': 11.3.7(encoding@0.1.13) - '@react-native-community/cli-tools': 11.3.7(encoding@0.1.13) + '@react-native-community/cli-platform-android': 12.3.6(encoding@0.1.13) + '@react-native-community/cli-tools': 12.3.6(encoding@0.1.13) chalk: 4.1.2 hermes-profile-transformer: 0.0.6 - ip: 1.1.8 transitivePeerDependencies: - encoding - /@react-native-community/cli-platform-android@11.3.7(encoding@0.1.13): - resolution: {integrity: sha512-WGtXI/Rm178UQb8bu1TAeFC/RJvYGnbHpULXvE20GkmeJ1HIrMjkagyk6kkY3Ej25JAP2R878gv+TJ/XiRhaEg==} + /@react-native-community/cli-platform-android@12.3.6(encoding@0.1.13): + resolution: {integrity: sha512-DeDDAB8lHpuGIAPXeeD9Qu2+/wDTFPo99c8uSW49L0hkmZJixzvvvffbGQAYk32H0TmaI7rzvzH+qzu7z3891g==} dependencies: - '@react-native-community/cli-tools': 11.3.7(encoding@0.1.13) + '@react-native-community/cli-tools': 12.3.6(encoding@0.1.13) chalk: 4.1.2 execa: 5.1.1 + fast-xml-parser: 4.3.5 glob: 7.2.3 logkitty: 0.7.1 transitivePeerDependencies: - encoding - /@react-native-community/cli-platform-ios@11.3.7(encoding@0.1.13): - resolution: {integrity: sha512-Z/8rseBput49EldX7MogvN6zJlWzZ/4M97s2P+zjS09ZoBU7I0eOKLi0N9wx+95FNBvGQQ/0P62bB9UaFQH2jw==} + /@react-native-community/cli-platform-ios@12.3.6(encoding@0.1.13): + resolution: {integrity: sha512-3eZ0jMCkKUO58wzPWlvAPRqezVKm9EPZyaPyHbRPWU8qw7JqkvnRlWIaYDGpjCJgVW4k2hKsEursLtYKb188tg==} dependencies: - '@react-native-community/cli-tools': 11.3.7(encoding@0.1.13) + '@react-native-community/cli-tools': 12.3.6(encoding@0.1.13) chalk: 4.1.2 execa: 5.1.1 - fast-xml-parser: 4.3.2 + fast-xml-parser: 4.3.5 glob: 7.2.3 ora: 5.4.1 transitivePeerDependencies: - encoding - /@react-native-community/cli-plugin-metro@11.3.7(@babel/core@7.23.2): - resolution: {integrity: sha512-0WhgoBVGF1f9jXcuagQmtxpwpfP+2LbLZH4qMyo6OtYLWLG13n2uRep+8tdGzfNzl1bIuUTeE9yZSAdnf9LfYQ==} - dependencies: - '@react-native-community/cli-server-api': 11.3.7(encoding@0.1.13) - '@react-native-community/cli-tools': 11.3.7(encoding@0.1.13) - chalk: 4.1.2 - execa: 5.1.1 - metro: 0.76.8 - metro-config: 0.76.8 - metro-core: 0.76.8 - metro-react-native-babel-transformer: 0.76.8(@babel/core@7.23.2) - metro-resolver: 0.76.8 - metro-runtime: 0.76.8 - readline: 1.3.0 - transitivePeerDependencies: - - '@babel/core' - - bufferutil - - encoding - - supports-color - - utf-8-validate - - /@react-native-community/cli-plugin-metro@11.3.7(@babel/core@7.23.2)(encoding@0.1.13): - resolution: {integrity: sha512-0WhgoBVGF1f9jXcuagQmtxpwpfP+2LbLZH4qMyo6OtYLWLG13n2uRep+8tdGzfNzl1bIuUTeE9yZSAdnf9LfYQ==} - dependencies: - '@react-native-community/cli-server-api': 11.3.7(encoding@0.1.13) - '@react-native-community/cli-tools': 11.3.7(encoding@0.1.13) - chalk: 4.1.2 - execa: 5.1.1 - metro: 0.76.8(encoding@0.1.13) - metro-config: 0.76.8(encoding@0.1.13) - metro-core: 0.76.8 - metro-react-native-babel-transformer: 0.76.8(@babel/core@7.23.2) - metro-resolver: 0.76.8 - metro-runtime: 0.76.8 - readline: 1.3.0 - transitivePeerDependencies: - - '@babel/core' - - bufferutil - - encoding - - supports-color - - utf-8-validate - dev: false + /@react-native-community/cli-plugin-metro@12.3.6: + resolution: {integrity: sha512-3jxSBQt4fkS+KtHCPSyB5auIT+KKIrPCv9Dk14FbvOaEh9erUWEm/5PZWmtboW1z7CYeNbFMeXm9fM2xwtVOpg==} - /@react-native-community/cli-server-api@11.3.7(encoding@0.1.13): - resolution: {integrity: sha512-yoFyGdvR3HxCnU6i9vFqKmmSqFzCbnFSnJ29a+5dppgPRetN+d//O8ard/YHqHzToFnXutAFf2neONn23qcJAg==} + /@react-native-community/cli-server-api@12.3.6(encoding@0.1.13): + resolution: {integrity: sha512-80NIMzo8b2W+PL0Jd7NjiJW9mgaT8Y8wsIT/lh6mAvYH7mK0ecDJUYUTAAv79Tbo1iCGPAr3T295DlVtS8s4yQ==} dependencies: - '@react-native-community/cli-debugger-ui': 11.3.7 - '@react-native-community/cli-tools': 11.3.7(encoding@0.1.13) + '@react-native-community/cli-debugger-ui': 12.3.6 + '@react-native-community/cli-tools': 12.3.6(encoding@0.1.13) compression: 1.7.4 connect: 3.7.0 errorhandler: 1.5.1 @@ -11580,8 +12330,8 @@ packages: - supports-color - utf-8-validate - /@react-native-community/cli-tools@11.3.7(encoding@0.1.13): - resolution: {integrity: sha512-peyhP4TV6Ps1hk+MBHTFaIR1eI3u+OfGBvr5r0wPwo3FAJvldRinMgcB/TcCcOBXVORu7ba1XYjkubPeYcqAyA==} + /@react-native-community/cli-tools@12.3.6(encoding@0.1.13): + resolution: {integrity: sha512-FPEvZn19UTMMXUp/piwKZSh8cMEfO8G3KDtOwo53O347GTcwNrKjgZGtLSPELBX2gr+YlzEft3CoRv2Qmo83fQ==} dependencies: appdirsjs: 1.2.7 chalk: 4.1.2 @@ -11590,111 +12340,236 @@ packages: node-fetch: 2.7.0(encoding@0.1.13) open: 6.4.0 ora: 5.4.1 - semver: 7.5.4 + semver: 7.6.0 shell-quote: 1.8.1 + sudo-prompt: 9.2.1 transitivePeerDependencies: - encoding - /@react-native-community/cli-types@11.3.7: - resolution: {integrity: sha512-OhSr/TiDQkXjL5YOs8+hvGSB+HltLn5ZI0+A3DCiMsjUgTTsYh+Z63OtyMpNjrdCEFcg0MpfdU2uxstCS6Dc5g==} + /@react-native-community/cli-types@12.3.6: + resolution: {integrity: sha512-xPqTgcUtZowQ8WKOkI9TLGBwH2bGggOC4d2FFaIRST3gTcjrEeGRNeR5aXCzJFIgItIft8sd7p2oKEdy90+01Q==} dependencies: - joi: 17.11.0 + joi: 17.12.2 - /@react-native-community/cli@11.3.7(@babel/core@7.23.2): - resolution: {integrity: sha512-Ou8eDlF+yh2rzXeCTpMPYJ2fuqsusNOhmpYPYNQJQ2h6PvaF30kPomflgRILems+EBBuggRtcT+I+1YH4o/q6w==} - engines: {node: '>=16'} + /@react-native-community/cli@12.3.6(encoding@0.1.13): + resolution: {integrity: sha512-647OSi6xBb8FbwFqX9zsJxOzu685AWtrOUWHfOkbKD+5LOpGORw+GQo0F9rWZnB68rLQyfKUZWJeaD00pGv5fw==} + engines: {node: '>=18'} hasBin: true dependencies: - '@react-native-community/cli-clean': 11.3.7(encoding@0.1.13) - '@react-native-community/cli-config': 11.3.7(encoding@0.1.13) - '@react-native-community/cli-debugger-ui': 11.3.7 - '@react-native-community/cli-doctor': 11.3.7(encoding@0.1.13) - '@react-native-community/cli-hermes': 11.3.7(encoding@0.1.13) - '@react-native-community/cli-plugin-metro': 11.3.7(@babel/core@7.23.2) - '@react-native-community/cli-server-api': 11.3.7(encoding@0.1.13) - '@react-native-community/cli-tools': 11.3.7(encoding@0.1.13) - '@react-native-community/cli-types': 11.3.7 + '@react-native-community/cli-clean': 12.3.6(encoding@0.1.13) + '@react-native-community/cli-config': 12.3.6(encoding@0.1.13) + '@react-native-community/cli-debugger-ui': 12.3.6 + '@react-native-community/cli-doctor': 12.3.6(encoding@0.1.13) + '@react-native-community/cli-hermes': 12.3.6(encoding@0.1.13) + '@react-native-community/cli-plugin-metro': 12.3.6 + '@react-native-community/cli-server-api': 12.3.6(encoding@0.1.13) + '@react-native-community/cli-tools': 12.3.6(encoding@0.1.13) + '@react-native-community/cli-types': 12.3.6 chalk: 4.1.2 commander: 9.5.0 + deepmerge: 4.3.1 execa: 5.1.1 find-up: 4.1.0 fs-extra: 8.1.0 graceful-fs: 4.2.11 prompts: 2.4.2 - semver: 7.5.4 + semver: 7.6.0 + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + + /@react-native/assets-registry@0.73.1: + resolution: {integrity: sha512-2FgAbU7uKM5SbbW9QptPPZx8N9Ke2L7bsHb+EhAanZjFZunA9PaYtyjUQ1s7HD+zDVqOQIvjkpXSv7Kejd2tqg==} + engines: {node: '>=18'} + + /@react-native/babel-plugin-codegen@0.73.4(@babel/preset-env@7.24.0): + resolution: {integrity: sha512-XzRd8MJGo4Zc5KsphDHBYJzS1ryOHg8I2gOZDAUCGcwLFhdyGu1zBNDJYH2GFyDrInn9TzAbRIf3d4O+eltXQQ==} + engines: {node: '>=18'} + dependencies: + '@react-native/codegen': 0.73.3(@babel/preset-env@7.24.0) + transitivePeerDependencies: + - '@babel/preset-env' + - supports-color + + /@react-native/babel-preset@0.73.21(@babel/core@7.24.0)(@babel/preset-env@7.24.0): + resolution: {integrity: sha512-WlFttNnySKQMeujN09fRmrdWqh46QyJluM5jdtDNrkl/2Hx6N4XeDUGhABvConeK95OidVO7sFFf7sNebVXogA==} + engines: {node: '>=18'} + peerDependencies: + '@babel/core': '*' + dependencies: + '@babel/core': 7.24.0 + '@babel/plugin-proposal-async-generator-functions': 7.20.7(@babel/core@7.24.0) + '@babel/plugin-proposal-class-properties': 7.18.6(@babel/core@7.24.0) + '@babel/plugin-proposal-export-default-from': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-proposal-nullish-coalescing-operator': 7.18.6(@babel/core@7.24.0) + '@babel/plugin-proposal-numeric-separator': 7.18.6(@babel/core@7.24.0) + '@babel/plugin-proposal-object-rest-spread': 7.20.7(@babel/core@7.24.0) + '@babel/plugin-proposal-optional-catch-binding': 7.18.6(@babel/core@7.24.0) + '@babel/plugin-proposal-optional-chaining': 7.21.0(@babel/core@7.24.0) + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-syntax-export-default-from': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-syntax-flow': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-transform-arrow-functions': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-async-to-generator': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-block-scoping': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-classes': 7.23.8(@babel/core@7.24.0) + '@babel/plugin-transform-computed-properties': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-destructuring': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-flow-strip-types': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-function-name': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-literals': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-modules-commonjs': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.24.0) + '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-private-methods': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-private-property-in-object': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-react-display-name': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-react-jsx': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-react-jsx-self': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-react-jsx-source': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-runtime': 7.24.0(@babel/core@7.24.0) + '@babel/plugin-transform-shorthand-properties': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-spread': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-sticky-regex': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-typescript': 7.23.6(@babel/core@7.24.0) + '@babel/plugin-transform-unicode-regex': 7.23.3(@babel/core@7.24.0) + '@babel/template': 7.24.0 + '@react-native/babel-plugin-codegen': 0.73.4(@babel/preset-env@7.24.0) + babel-plugin-transform-flow-enums: 0.0.2(@babel/core@7.24.0) + react-refresh: 0.14.0 + transitivePeerDependencies: + - '@babel/preset-env' + - supports-color + + /@react-native/codegen@0.73.3(@babel/preset-env@7.24.0): + resolution: {integrity: sha512-sxslCAAb8kM06vGy9Jyh4TtvjhcP36k/rvj2QE2Jdhdm61KvfafCATSIsOfc0QvnduWFcpXUPvAVyYwuv7PYDg==} + engines: {node: '>=18'} + peerDependencies: + '@babel/preset-env': ^7.1.6 + dependencies: + '@babel/parser': 7.24.0 + '@babel/preset-env': 7.24.0(@babel/core@7.24.0) + flow-parser: 0.206.0 + glob: 7.2.3 + invariant: 2.2.4 + jscodeshift: 0.14.0(@babel/preset-env@7.24.0) + mkdirp: 0.5.6 + nullthrows: 1.1.1 + transitivePeerDependencies: + - supports-color + + /@react-native/community-cli-plugin@0.73.17(@babel/core@7.24.0)(@babel/preset-env@7.24.0): + resolution: {integrity: sha512-F3PXZkcHg+1ARIr6FRQCQiB7ZAA+MQXGmq051metRscoLvgYJwj7dgC8pvgy0kexzUkHu5BNKrZeySzUft3xuQ==} + engines: {node: '>=18'} + dependencies: + '@react-native-community/cli-server-api': 12.3.6(encoding@0.1.13) + '@react-native-community/cli-tools': 12.3.6(encoding@0.1.13) + '@react-native/dev-middleware': 0.73.8(encoding@0.1.13) + '@react-native/metro-babel-transformer': 0.73.15(@babel/core@7.24.0)(@babel/preset-env@7.24.0) + chalk: 4.1.2 + execa: 5.1.1 + metro: 0.80.6 + metro-config: 0.80.6 + metro-core: 0.80.6 + node-fetch: 2.7.0(encoding@0.1.13) + readline: 1.3.0 transitivePeerDependencies: - '@babel/core' + - '@babel/preset-env' - bufferutil - encoding - supports-color - utf-8-validate - /@react-native-community/cli@11.3.7(@babel/core@7.23.2)(encoding@0.1.13): - resolution: {integrity: sha512-Ou8eDlF+yh2rzXeCTpMPYJ2fuqsusNOhmpYPYNQJQ2h6PvaF30kPomflgRILems+EBBuggRtcT+I+1YH4o/q6w==} - engines: {node: '>=16'} - hasBin: true + /@react-native/community-cli-plugin@0.73.17(@babel/core@7.24.0)(@babel/preset-env@7.24.0)(encoding@0.1.13): + resolution: {integrity: sha512-F3PXZkcHg+1ARIr6FRQCQiB7ZAA+MQXGmq051metRscoLvgYJwj7dgC8pvgy0kexzUkHu5BNKrZeySzUft3xuQ==} + engines: {node: '>=18'} dependencies: - '@react-native-community/cli-clean': 11.3.7(encoding@0.1.13) - '@react-native-community/cli-config': 11.3.7(encoding@0.1.13) - '@react-native-community/cli-debugger-ui': 11.3.7 - '@react-native-community/cli-doctor': 11.3.7(encoding@0.1.13) - '@react-native-community/cli-hermes': 11.3.7(encoding@0.1.13) - '@react-native-community/cli-plugin-metro': 11.3.7(@babel/core@7.23.2)(encoding@0.1.13) - '@react-native-community/cli-server-api': 11.3.7(encoding@0.1.13) - '@react-native-community/cli-tools': 11.3.7(encoding@0.1.13) - '@react-native-community/cli-types': 11.3.7 + '@react-native-community/cli-server-api': 12.3.6(encoding@0.1.13) + '@react-native-community/cli-tools': 12.3.6(encoding@0.1.13) + '@react-native/dev-middleware': 0.73.8(encoding@0.1.13) + '@react-native/metro-babel-transformer': 0.73.15(@babel/core@7.24.0)(@babel/preset-env@7.24.0) chalk: 4.1.2 - commander: 9.5.0 execa: 5.1.1 - find-up: 4.1.0 - fs-extra: 8.1.0 - graceful-fs: 4.2.11 - prompts: 2.4.2 - semver: 7.5.4 + metro: 0.80.6(encoding@0.1.13) + metro-config: 0.80.6(encoding@0.1.13) + metro-core: 0.80.6 + node-fetch: 2.7.0(encoding@0.1.13) + readline: 1.3.0 transitivePeerDependencies: - '@babel/core' + - '@babel/preset-env' - bufferutil - encoding - supports-color - utf-8-validate - dev: false - /@react-native/assets-registry@0.72.0: - resolution: {integrity: sha512-Im93xRJuHHxb1wniGhBMsxLwcfzdYreSZVQGDoMJgkd6+Iky61LInGEHnQCTN0fKNYF1Dvcofb4uMmE1RQHXHQ==} + /@react-native/debugger-frontend@0.73.3: + resolution: {integrity: sha512-RgEKnWuoo54dh7gQhV7kvzKhXZEhpF9LlMdZolyhGxHsBqZ2gXdibfDlfcARFFifPIiaZ3lXuOVVa4ei+uPgTw==} + engines: {node: '>=18'} - /@react-native/codegen@0.72.7(@babel/preset-env@7.23.2): - resolution: {integrity: sha512-O7xNcGeXGbY+VoqBGNlZ3O05gxfATlwE1Q1qQf5E38dK+tXn5BY4u0jaQ9DPjfE8pBba8g/BYI1N44lynidMtg==} - peerDependencies: - '@babel/preset-env': ^7.1.6 + /@react-native/dev-middleware@0.73.8(encoding@0.1.13): + resolution: {integrity: sha512-oph4NamCIxkMfUL/fYtSsE+JbGOnrlawfQ0kKtDQ5xbOjPKotKoXqrs1eGwozNKv7FfQ393stk1by9a6DyASSg==} + engines: {node: '>=18'} dependencies: - '@babel/parser': 7.23.0 - '@babel/preset-env': 7.23.2(@babel/core@7.23.2) - flow-parser: 0.206.0 - jscodeshift: 0.14.0(@babel/preset-env@7.23.2) - nullthrows: 1.1.1 + '@isaacs/ttlcache': 1.4.1 + '@react-native/debugger-frontend': 0.73.3 + chrome-launcher: 0.15.2 + chromium-edge-launcher: 1.0.0 + connect: 3.7.0 + debug: 2.6.9 + node-fetch: 2.7.0(encoding@0.1.13) + open: 7.4.2 + serve-static: 1.15.0 + temp-dir: 2.0.0 + ws: 6.2.2 transitivePeerDependencies: + - bufferutil + - encoding - supports-color + - utf-8-validate - /@react-native/gradle-plugin@0.72.11: - resolution: {integrity: sha512-P9iRnxiR2w7EHcZ0mJ+fmbPzMby77ZzV6y9sJI3lVLJzF7TLSdbwcQyD3lwMsiL+q5lKUHoZJS4sYmih+P2HXw==} + /@react-native/gradle-plugin@0.73.4: + resolution: {integrity: sha512-PMDnbsZa+tD55Ug+W8CfqXiGoGneSSyrBZCMb5JfiB3AFST3Uj5e6lw8SgI/B6SKZF7lG0BhZ6YHZsRZ5MlXmg==} + engines: {node: '>=18'} - /@react-native/js-polyfills@0.72.1: - resolution: {integrity: sha512-cRPZh2rBswFnGt5X5EUEPs0r+pAsXxYsifv/fgy9ZLQokuT52bPH+9xjDR+7TafRua5CttGW83wP4TntRcWNDA==} + /@react-native/js-polyfills@0.73.1: + resolution: {integrity: sha512-ewMwGcumrilnF87H4jjrnvGZEaPFCAC4ebraEK+CurDDmwST/bIicI4hrOAv+0Z0F7DEK4O4H7r8q9vH7IbN4g==} + engines: {node: '>=18'} - /@react-native/normalize-color@2.1.0: + /@react-native/metro-babel-transformer@0.73.15(@babel/core@7.24.0)(@babel/preset-env@7.24.0): + resolution: {integrity: sha512-LlkSGaXCz+xdxc9819plmpsl4P4gZndoFtpjN3GMBIu6f7TBV0GVbyJAU4GE8fuAWPVSVL5ArOcdkWKSbI1klw==} + engines: {node: '>=18'} + peerDependencies: + '@babel/core': '*' + dependencies: + '@babel/core': 7.24.0 + '@react-native/babel-preset': 0.73.21(@babel/core@7.24.0)(@babel/preset-env@7.24.0) + hermes-parser: 0.15.0 + nullthrows: 1.1.1 + transitivePeerDependencies: + - '@babel/preset-env' + - supports-color + + /@react-native/normalize-color@2.1.0: resolution: {integrity: sha512-Z1jQI2NpdFJCVgpY+8Dq/Bt3d+YUi1928Q+/CZm/oh66fzM0RUl54vvuXlPJKybH4pdCZey1eDTPaLHkMPNgWA==} - /@react-native/normalize-colors@0.72.0: - resolution: {integrity: sha512-285lfdqSXaqKuBbbtP9qL2tDrfxdOFtIMvkKadtleRQkdOxx+uzGvFr82KHmc/sSiMtfXGp7JnFYWVh4sFl7Yw==} + /@react-native/normalize-colors@0.73.2: + resolution: {integrity: sha512-bRBcb2T+I88aG74LMVHaKms2p/T8aQd8+BZ7LuuzXlRfog1bMWWn/C5i0HVuvW4RPtXQYgIlGiXVDy9Ir1So/w==} - /@react-native/virtualized-lists@0.72.8(react-native@0.72.6): - resolution: {integrity: sha512-J3Q4Bkuo99k7mu+jPS9gSUSgq+lLRSI/+ahXNwV92XgJ/8UgOTxu2LPwhJnBk/sQKxq7E8WkZBnBiozukQMqrw==} + /@react-native/virtualized-lists@0.73.4(react-native@0.73.5): + resolution: {integrity: sha512-HpmLg1FrEiDtrtAbXiwCgXFYyloK/dOIPIuWW3fsqukwJEWAiTzm1nXGJ7xPU5XTHiWZ4sKup5Ebaj8z7iyWog==} + engines: {node: '>=18'} peerDependencies: react-native: '*' dependencies: invariant: 2.2.4 nullthrows: 1.1.1 - react-native: 0.72.6(@babel/core@7.23.2)(@babel/preset-env@7.23.2)(react@18.2.0) + react-native: 0.73.5(@babel/core@7.24.0)(@babel/preset-env@7.24.0)(encoding@0.1.13)(react@18.2.0) /@react-oauth/google@0.12.1(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-qagsy22t+7UdkYAiT5ZhfM4StXi9PPNvw0zuwNmabrWyMKddczMtBIOARflbaIj+wHiQjnMAsZmzsUYuXeyoSg==} @@ -12248,10 +13123,6 @@ packages: dev: true optional: true - /@rushstack/eslint-patch@1.5.1: - resolution: {integrity: sha512-6i/8UoL0P5y4leBIGzvkZdS85RDMG9y1ihZzmTZQ5LdHUYmZ7pKFoj8X0236s3lusPs1Fa5HTQUpwI+UfTcmeA==} - dev: true - /@safe-global/safe-apps-provider@0.18.1(typescript@5.3.3): resolution: {integrity: sha512-V4a05A3EgJcriqtDoJklDz1BOinWhC6P0hjUSxshA4KOZM7rGPCTto/usXs09zr1vvL28evl/NldSTv97j2bmg==} dependencies: @@ -12333,7 +13204,7 @@ packages: /@segment/loosely-validate-event@2.0.0: resolution: {integrity: sha512-ZMCSfztDBqwotkl848ODgVcAmN4OItEWDCkshcKz0/W6gGSQayuuCtWV/MlodFivAZD793d6UgANd6wCXUfrIw==} dependencies: - component-type: 1.2.1 + component-type: 1.2.2 join-component: 1.1.0 /@shuding/opentype.js@1.4.0-beta.0: @@ -12350,6 +13221,11 @@ packages: dependencies: '@hapi/hoek': 9.3.0 + /@sideway/address@4.1.5: + resolution: {integrity: sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q==} + dependencies: + '@hapi/hoek': 9.3.0 + /@sideway/formula@3.0.1: resolution: {integrity: sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==} @@ -12396,7 +13272,7 @@ packages: resolution: {integrity: sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg==} dev: false - /@sphereon/isomorphic-webcrypto@2.4.0-unstable.4(expo-crypto@12.8.1)(expo@49.0.16)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1): + /@sphereon/isomorphic-webcrypto@2.4.0-unstable.4(expo-crypto@12.8.1)(expo@50.0.11)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1): resolution: {integrity: sha512-7i9GBta0yji3Z5ocyk82fXpqrV/swe7hXZVfVzOXRaGtTUNd+y8W/3cpHRQC2S4UEO/5N3lX7+B6qUunK9wS/Q==} peerDependencies: expo: '*' @@ -12410,17 +13286,18 @@ packages: b64u-lite: 1.1.0 cipher-base: 1.0.4 create-hash: 1.2.0 - expo: 49.0.16(@babel/core@7.23.2)(encoding@0.1.13) - expo-crypto: 12.8.1(expo@49.0.16) + expo: 50.0.11(@babel/core@7.24.0)(@react-native/babel-preset@0.73.21)(encoding@0.1.13) + expo-crypto: 12.8.1(expo@50.0.11) inherits: 2.0.4 md5.js: 1.3.5 msrcrypto: 1.5.8 randomfill: 1.0.4 - react-native-securerandom: 1.0.1(react-native@0.72.6) + react-native-securerandom: 1.0.1(react-native@0.73.5) ripemd160: 2.0.2 sha.js: 2.4.11 str2buf: 1.3.0 webcrypto-shim: 0.1.7 + dev: false /@sphereon/pex-models@2.0.3: resolution: {integrity: sha512-NsPeYmJLhxRG5fJxpcHnRR3xvi7i8SK8s21kYR9oBWO8cBU9qBCpw3gdUNiyI01/h6fbYqkIZ7eBNsHBIzqk5Q==} @@ -13508,6 +14385,12 @@ packages: dependencies: '@types/ms': 0.7.33 + /@types/debug@4.1.12: + resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==} + dependencies: + '@types/ms': 0.7.34 + dev: true + /@types/deep-freeze-strict@1.1.0: resolution: {integrity: sha512-fILflsS66kGQ4iIBzYoxuQCWK1wQdy/ooguTofUk0KSxA+G5ZzH8WdU8mf6IU+5cMBW+j9u+eh+7kv63R3O9Tw==} dev: true @@ -13533,6 +14416,13 @@ packages: '@types/eslint': 8.56.5 '@types/estree': 1.0.3 + /@types/eslint-scope@3.7.7: + resolution: {integrity: sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==} + dependencies: + '@types/eslint': 8.56.5 + '@types/estree': 1.0.5 + dev: true + /@types/eslint@8.56.5: resolution: {integrity: sha512-u5/YPJHo1tvkSF2CE0USEkxon82Z5DBy2xR+qfyYNszpX9qcs4sT6uq2kBbj4BXY1+DBGDPnrhMZV3pKWGNukw==} dependencies: @@ -13620,16 +14510,29 @@ packages: /@types/istanbul-lib-coverage@2.0.5: resolution: {integrity: sha512-zONci81DZYCZjiLe0r6equvZut0b+dBRPBN5kBDjsONnutYNtJMoWQ9uR2RkL1gLG9NMTzvf+29e5RFfPbeKhQ==} + /@types/istanbul-lib-coverage@2.0.6: + resolution: {integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==} + /@types/istanbul-lib-report@3.0.2: resolution: {integrity: sha512-8toY6FgdltSdONav1XtUHl4LN1yTmLza+EuDazb/fEmRNCwjyqNVIQWs2IfC74IqjHkREs/nQ2FWq5kZU9IC0w==} dependencies: '@types/istanbul-lib-coverage': 2.0.5 + /@types/istanbul-lib-report@3.0.3: + resolution: {integrity: sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==} + dependencies: + '@types/istanbul-lib-coverage': 2.0.6 + /@types/istanbul-reports@3.0.3: resolution: {integrity: sha512-1nESsePMBlf0RPRffLZi5ujYh7IH1BWL4y9pr+Bn3cJBdxz+RTP8bUFljLz9HvzhhOSWKdyBZ4DIivdL6rvgZg==} dependencies: '@types/istanbul-lib-report': 3.0.2 + /@types/istanbul-reports@3.0.4: + resolution: {integrity: sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==} + dependencies: + '@types/istanbul-lib-report': 3.0.3 + /@types/jest@29.5.12: resolution: {integrity: sha512-eDC8bTvT/QhYdxJAulQikueigY5AsdBRH2yDKW3yveW7svY3+DzN84/2NUgkw10RTiJbWqZrTtoGVdYlvFJdLw==} dependencies: @@ -13649,17 +14552,9 @@ packages: parse5: 7.1.2 dev: false - /@types/json-schema@7.0.14: - resolution: {integrity: sha512-U3PUjAudAdJBeC2pgN8uTIKgxrb4nlDF3SF0++EldXQvQBGkpFZMSnwQiIoDU77tv45VgNkl/L4ouD+rEomujw==} - dev: true - /@types/json-schema@7.0.15: resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} - /@types/json5@0.0.29: - resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} - dev: true - /@types/jsonpath@0.2.4: resolution: {integrity: sha512-K3hxB8Blw0qgW6ExKgMbXQv2UPZBoE2GqLpVY+yr7nMD2Pq86lsuIzyAaiQ7eMqFL5B6di6pxSkogLJEyEHoGA==} dev: true @@ -13705,6 +14600,10 @@ packages: /@types/ms@0.7.33: resolution: {integrity: sha512-AuHIyzR5Hea7ij0P9q7vx7xu4z0C28ucwjAZC0ja7JhINyCnOw8/DnvAPQQ9TfOlCtZAmCERKQX9+o1mgQhuOQ==} + /@types/ms@0.7.34: + resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} + dev: true + /@types/node@12.20.55: resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==} dev: false @@ -13750,8 +14649,8 @@ packages: resolution: {integrity: sha512-ZTaqn/qSqUuAq1YwvOFQfVW1AR/oQJlLSZVustdjwI+GZ8kr0MSHBj0tsXPW1EqHubx50gtBEjbPGsdZwQwCjQ==} dev: false - /@types/prop-types@15.7.9: - resolution: {integrity: sha512-n1yyPsugYNSmHgxDFjicaI2+gCNjsBck8UX9kuofAKlc0h1bL+20oSF72KeNaW2DUlesbEVCFgyV2dPGTiY42g==} + /@types/prop-types@15.7.11: + resolution: {integrity: sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==} /@types/qs@6.9.12: resolution: {integrity: sha512-bZcOkJ6uWrL0Qb2NAWKa7TBU+mJHPzhx9jjLL1KHF+XpzEcR7EXHvjbHlGtR/IsP1vyPrehuS6XqkmaePy//mg==} @@ -13759,37 +14658,37 @@ packages: /@types/range-parser@1.2.6: resolution: {integrity: sha512-+0autS93xyXizIYiyL02FCY8N+KkKPhILhcUSA276HxzreZ16kl+cmwvV2qAM/PuCCwPXzOXOWhiPcw20uSFcA==} - /@types/react-dom@18.2.20: - resolution: {integrity: sha512-HXN/biJY8nv20Cn9ZbCFq3liERd4CozVZmKbaiZ9KiKTrWqsP7eoGDO6OOGvJQwoVFuiXaiJ7nBBjiFFbRmQMQ==} + /@types/react-dom@18.2.21: + resolution: {integrity: sha512-gnvBA/21SA4xxqNXEwNiVcP0xSGHh/gi1VhWv9Bl46a0ItbTT5nFY+G9VSQpaG/8N/qdJpJ+vftQ4zflTtnjLw==} dependencies: - '@types/react': 18.2.63 + '@types/react': 18.2.64 /@types/react-router-config@5.0.7: resolution: {integrity: sha512-pFFVXUIydHlcJP6wJm7sDii5mD/bCmmAY0wQzq+M+uX7bqS95AQqHZWP1iNMKrWVQSuHIzj5qi9BvrtLX2/T4w==} dependencies: '@types/history': 4.7.11 - '@types/react': 18.2.63 + '@types/react': 18.2.64 '@types/react-router': 5.1.20 /@types/react-router-dom@5.3.3: resolution: {integrity: sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw==} dependencies: '@types/history': 4.7.11 - '@types/react': 18.2.63 + '@types/react': 18.2.64 '@types/react-router': 5.1.20 /@types/react-router@5.1.20: resolution: {integrity: sha512-jGjmu/ZqS7FjSH6owMcD5qpq19+1RS9DeVRqfl1FeBMxTDQAGwlMWOcs52NDoXaNKyG3d1cYQFMs9rCrb88o9Q==} dependencies: '@types/history': 4.7.11 - '@types/react': 18.2.63 + '@types/react': 18.2.64 - /@types/react@18.2.63: - resolution: {integrity: sha512-ppaqODhs15PYL2nGUOaOu2RSCCB4Difu4UFrP4I3NHLloXC/ESQzQMi9nvjfT1+rudd0d2L3fQPJxRSey+rGlQ==} + /@types/react@18.2.64: + resolution: {integrity: sha512-MlmPvHgjj2p3vZaxbQgFUQFvD8QiZwACfGqEdDSWou5yISWxDQ4/74nCAwsUiX7UFLKZz3BbVSPj+YxeoGGCfg==} dependencies: - '@types/prop-types': 15.7.9 - '@types/scheduler': 0.16.5 - csstype: 3.1.2 + '@types/prop-types': 15.7.11 + '@types/scheduler': 0.16.8 + csstype: 3.1.3 /@types/retry@0.12.0: resolution: {integrity: sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==} @@ -13800,20 +14699,17 @@ packages: '@types/node': 20.11.25 dev: false - /@types/scheduler@0.16.5: - resolution: {integrity: sha512-s/FPdYRmZR8SjLWGMCuax7r3qCWQw9QKHzXVukAuuIJkXkDRwp+Pu5LMIVFi0Fxbav35WURicYr8u1QsoybnQw==} + /@types/scheduler@0.16.8: + resolution: {integrity: sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==} /@types/secp256k1@4.0.6: resolution: {integrity: sha512-hHxJU6PAEUn0TP4S/ZOzuTUvJWuZ6eIKeNKb5RBpODvSl6hp1Wrw4s7ATY50rklRCScUDpHzVA/DQdSjJ3UoYQ==} dependencies: '@types/node': 20.11.25 - /@types/semver@7.5.0: - resolution: {integrity: sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==} - dev: true - /@types/semver@7.5.4: resolution: {integrity: sha512-MMzuxN3GdFwskAnb6fz0orFvhfqi752yjaXylr0Rp4oDg5H0Zn1IuyRhDVvYOwAXoJirx2xuS16I3WjxnAIHiQ==} + dev: false /@types/send@0.17.3: resolution: {integrity: sha512-/7fKxvKUoETxjFUsuFlPB9YndePpxxRAOfGC/yJdc9kTjTeP5kRCTzfnE8kPUKCeyiyIZu0YQ76s50hCedI1ug==} @@ -13873,278 +14769,19 @@ packages: /@types/yargs-parser@21.0.2: resolution: {integrity: sha512-5qcvofLPbfjmBfKaLfj/+f+Sbd6pN4zl7w7VSVI5uz7m9QZTuB2aZAa2uo1wHFBNN2x6g/SoTkXmd8mQnQF2Cw==} - /@types/yargs@15.0.17: - resolution: {integrity: sha512-cj53I8GUcWJIgWVTSVe2L7NJAB5XWGdsoMosVvUgv1jEnMbAcsbaCzt1coUcyi8Sda5PgTWAooG8jNyDTD+CWA==} - dependencies: - '@types/yargs-parser': 21.0.2 + /@types/yargs-parser@21.0.3: + resolution: {integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==} - /@types/yargs@16.0.7: - resolution: {integrity: sha512-lQcYmxWuOfJq4IncK88/nwud9rwr1F04CFc5xzk0k4oKVyz/AI35TfsXmhjf6t8zp8mpCOi17BfvuNWx+zrYkg==} + /@types/yargs@15.0.19: + resolution: {integrity: sha512-2XUaGVmyQjgyAZldf0D0c14vvo/yv0MhQBSTJcejMMaitsn3nxCB6TmH4G0ZQf+uxROOa9mpanoSm8h6SG/1ZA==} dependencies: - '@types/yargs-parser': 21.0.2 + '@types/yargs-parser': 21.0.3 /@types/yargs@17.0.29: resolution: {integrity: sha512-nacjqA3ee9zRF/++a3FUY1suHTFKZeHba2n8WeDw9cCVdmzmHpIxyzOJBcpHvvEmS8E9KqWlSnWHUkOrkhWcvA==} dependencies: '@types/yargs-parser': 21.0.2 - /@typescript-eslint/eslint-plugin@7.1.1(@typescript-eslint/parser@7.1.1)(eslint@8.57.0)(typescript@5.3.3): - resolution: {integrity: sha512-zioDz623d0RHNhvx0eesUmGfIjzrk18nSBC8xewepKXbBvN/7c1qImV7Hg8TI1URTxKax7/zxfxj3Uph8Chcuw==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - '@typescript-eslint/parser': ^7.0.0 - eslint: ^8.56.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - '@eslint-community/regexpp': 4.10.0 - '@typescript-eslint/parser': 7.1.1(eslint@8.57.0)(typescript@5.3.3) - '@typescript-eslint/scope-manager': 7.1.1 - '@typescript-eslint/type-utils': 7.1.1(eslint@8.57.0)(typescript@5.3.3) - '@typescript-eslint/utils': 7.1.1(eslint@8.57.0)(typescript@5.3.3) - '@typescript-eslint/visitor-keys': 7.1.1 - debug: 4.3.4 - eslint: 8.57.0 - graphemer: 1.4.0 - ignore: 5.3.0 - natural-compare: 1.4.0 - semver: 7.5.4 - ts-api-utils: 1.0.3(typescript@5.3.3) - typescript: 5.3.3 - transitivePeerDependencies: - - supports-color - dev: true - - /@typescript-eslint/parser@6.9.0(eslint@8.57.0)(typescript@5.3.3): - resolution: {integrity: sha512-GZmjMh4AJ/5gaH4XF2eXA8tMnHWP+Pm1mjQR2QN4Iz+j/zO04b9TOvJYOX2sCNIQHtRStKTxRY1FX7LhpJT4Gw==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - eslint: ^7.0.0 || ^8.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - '@typescript-eslint/scope-manager': 6.9.0 - '@typescript-eslint/types': 6.9.0 - '@typescript-eslint/typescript-estree': 6.9.0(typescript@5.3.3) - '@typescript-eslint/visitor-keys': 6.9.0 - debug: 4.3.4 - eslint: 8.57.0 - typescript: 5.3.3 - transitivePeerDependencies: - - supports-color - dev: true - - /@typescript-eslint/parser@7.1.1(eslint@8.57.0)(typescript@5.3.3): - resolution: {integrity: sha512-ZWUFyL0z04R1nAEgr9e79YtV5LbafdOtN7yapNbn1ansMyaegl2D4bL7vHoJ4HPSc4CaLwuCVas8CVuneKzplQ==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - eslint: ^8.56.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - '@typescript-eslint/scope-manager': 7.1.1 - '@typescript-eslint/types': 7.1.1 - '@typescript-eslint/typescript-estree': 7.1.1(typescript@5.3.3) - '@typescript-eslint/visitor-keys': 7.1.1 - debug: 4.3.4 - eslint: 8.57.0 - typescript: 5.3.3 - transitivePeerDependencies: - - supports-color - dev: true - - /@typescript-eslint/scope-manager@5.62.0: - resolution: {integrity: sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/visitor-keys': 5.62.0 - dev: true - - /@typescript-eslint/scope-manager@6.9.0: - resolution: {integrity: sha512-1R8A9Mc39n4pCCz9o79qRO31HGNDvC7UhPhv26TovDsWPBDx+Sg3rOZdCELIA3ZmNoWAuxaMOT7aWtGRSYkQxw==} - engines: {node: ^16.0.0 || >=18.0.0} - dependencies: - '@typescript-eslint/types': 6.9.0 - '@typescript-eslint/visitor-keys': 6.9.0 - dev: true - - /@typescript-eslint/scope-manager@7.1.1: - resolution: {integrity: sha512-cirZpA8bJMRb4WZ+rO6+mnOJrGFDd38WoXCEI57+CYBqta8Yc8aJym2i7vyqLL1vVYljgw0X27axkUXz32T8TA==} - engines: {node: ^16.0.0 || >=18.0.0} - dependencies: - '@typescript-eslint/types': 7.1.1 - '@typescript-eslint/visitor-keys': 7.1.1 - dev: true - - /@typescript-eslint/type-utils@7.1.1(eslint@8.57.0)(typescript@5.3.3): - resolution: {integrity: sha512-5r4RKze6XHEEhlZnJtR3GYeCh1IueUHdbrukV2KSlLXaTjuSfeVF8mZUVPLovidCuZfbVjfhi4c0DNSa/Rdg5g==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - eslint: ^8.56.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - '@typescript-eslint/typescript-estree': 7.1.1(typescript@5.3.3) - '@typescript-eslint/utils': 7.1.1(eslint@8.57.0)(typescript@5.3.3) - debug: 4.3.4 - eslint: 8.57.0 - ts-api-utils: 1.0.3(typescript@5.3.3) - typescript: 5.3.3 - transitivePeerDependencies: - - supports-color - dev: true - - /@typescript-eslint/types@5.62.0: - resolution: {integrity: sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dev: true - - /@typescript-eslint/types@6.9.0: - resolution: {integrity: sha512-+KB0lbkpxBkBSiVCuQvduqMJy+I1FyDbdwSpM3IoBS7APl4Bu15lStPjgBIdykdRqQNYqYNMa8Kuidax6phaEw==} - engines: {node: ^16.0.0 || >=18.0.0} - dev: true - - /@typescript-eslint/types@7.1.1: - resolution: {integrity: sha512-KhewzrlRMrgeKm1U9bh2z5aoL4s7K3tK5DwHDn8MHv0yQfWFz/0ZR6trrIHHa5CsF83j/GgHqzdbzCXJ3crx0Q==} - engines: {node: ^16.0.0 || >=18.0.0} - dev: true - - /@typescript-eslint/typescript-estree@5.62.0(typescript@5.3.3): - resolution: {integrity: sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/visitor-keys': 5.62.0 - debug: 4.3.4 - globby: 11.1.0 - is-glob: 4.0.3 - semver: 7.5.4 - tsutils: 3.21.0(typescript@5.3.3) - typescript: 5.3.3 - transitivePeerDependencies: - - supports-color - dev: true - - /@typescript-eslint/typescript-estree@6.9.0(typescript@5.3.3): - resolution: {integrity: sha512-NJM2BnJFZBEAbCfBP00zONKXvMqihZCrmwCaik0UhLr0vAgb6oguXxLX1k00oQyD+vZZ+CJn3kocvv2yxm4awQ==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - '@typescript-eslint/types': 6.9.0 - '@typescript-eslint/visitor-keys': 6.9.0 - debug: 4.3.4 - globby: 11.1.0 - is-glob: 4.0.3 - semver: 7.5.4 - ts-api-utils: 1.0.3(typescript@5.3.3) - typescript: 5.3.3 - transitivePeerDependencies: - - supports-color - dev: true - - /@typescript-eslint/typescript-estree@7.1.1(typescript@5.3.3): - resolution: {integrity: sha512-9ZOncVSfr+sMXVxxca2OJOPagRwT0u/UHikM2Rd6L/aB+kL/QAuTnsv6MeXtjzCJYb8PzrXarypSGIPx3Jemxw==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - '@typescript-eslint/types': 7.1.1 - '@typescript-eslint/visitor-keys': 7.1.1 - debug: 4.3.4 - globby: 11.1.0 - is-glob: 4.0.3 - minimatch: 9.0.3 - semver: 7.5.4 - ts-api-utils: 1.0.3(typescript@5.3.3) - typescript: 5.3.3 - transitivePeerDependencies: - - supports-color - dev: true - - /@typescript-eslint/utils@5.62.0(eslint@8.57.0)(typescript@5.3.3): - resolution: {integrity: sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - '@types/json-schema': 7.0.14 - '@types/semver': 7.5.0 - '@typescript-eslint/scope-manager': 5.62.0 - '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.3.3) - eslint: 8.57.0 - eslint-scope: 5.1.1 - semver: 7.5.4 - transitivePeerDependencies: - - supports-color - - typescript - dev: true - - /@typescript-eslint/utils@7.1.1(eslint@8.57.0)(typescript@5.3.3): - resolution: {integrity: sha512-thOXM89xA03xAE0lW7alstvnyoBUbBX38YtY+zAUcpRPcq9EIhXPuJ0YTv948MbzmKh6e1AUszn5cBFK49Umqg==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - eslint: ^8.56.0 - dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - '@types/json-schema': 7.0.15 - '@types/semver': 7.5.4 - '@typescript-eslint/scope-manager': 7.1.1 - '@typescript-eslint/types': 7.1.1 - '@typescript-eslint/typescript-estree': 7.1.1(typescript@5.3.3) - eslint: 8.57.0 - semver: 7.5.4 - transitivePeerDependencies: - - supports-color - - typescript - dev: true - - /@typescript-eslint/visitor-keys@5.62.0: - resolution: {integrity: sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - '@typescript-eslint/types': 5.62.0 - eslint-visitor-keys: 3.4.3 - dev: true - - /@typescript-eslint/visitor-keys@6.9.0: - resolution: {integrity: sha512-dGtAfqjV6RFOtIP8I0B4ZTBRrlTT8NHHlZZSchQx3qReaoDeXhYM++M4So2AgFK9ZB0emRPA6JI1HkafzA2Ibg==} - engines: {node: ^16.0.0 || >=18.0.0} - dependencies: - '@typescript-eslint/types': 6.9.0 - eslint-visitor-keys: 3.4.3 - dev: true - - /@typescript-eslint/visitor-keys@7.1.1: - resolution: {integrity: sha512-yTdHDQxY7cSoCcAtiBzVzxleJhkGB9NncSIyMYe2+OGON1ZsP9zOPws/Pqgopa65jvknOjlk/w7ulPlZ78PiLQ==} - engines: {node: ^16.0.0 || >=18.0.0} - dependencies: - '@typescript-eslint/types': 7.1.1 - eslint-visitor-keys: 3.4.3 - dev: true - /@ungap/structured-clone@1.2.0: resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} @@ -14265,19 +14902,19 @@ packages: - utf-8-validate dev: false - /@veramo/credential-ld@5.6.0(expo@49.0.16)(react-native@0.72.6): + /@veramo/credential-ld@5.6.0(expo@50.0.11)(react-native@0.73.5): resolution: {integrity: sha512-X68oMx5xTZruo/Otn2vqj6pM9Rd55j/ysTfnpChj+SXxm5nVnnoMeL76sLQoAyLiLib018mRxy+9rjcKWR085Q==} requiresBuild: true dependencies: - '@digitalcredentials/ed25519-signature-2020': 3.0.2(expo@49.0.16)(react-native@0.72.6) + '@digitalcredentials/ed25519-signature-2020': 3.0.2(expo@50.0.11)(react-native@0.73.5) '@digitalcredentials/ed25519-verification-key-2020': 4.0.0 - '@digitalcredentials/jsonld': 6.0.0(expo@49.0.16)(react-native@0.72.6) - '@digitalcredentials/jsonld-signatures': 9.3.2(expo@49.0.16)(react-native@0.72.6) - '@digitalcredentials/vc': 6.0.0(expo@49.0.16)(react-native@0.72.6) + '@digitalcredentials/jsonld': 6.0.0(expo@50.0.11)(react-native@0.73.5) + '@digitalcredentials/jsonld-signatures': 9.3.2(expo@50.0.11)(react-native@0.73.5) + '@digitalcredentials/vc': 6.0.0(expo@50.0.11)(react-native@0.73.5) '@transmute/credentials-context': 0.7.0-unstable.81 '@transmute/ed25519-signature-2018': 0.7.0-unstable.81 '@transmute/json-web-signature': 0.7.0-unstable.81 - '@veramo-community/lds-ecdsa-secp256k1-recovery2020': github.com/uport-project/EcdsaSecp256k1RecoverySignature2020/ab0db52de6f4e6663ef271a48009ba26e688ef9b(expo@49.0.16)(react-native@0.72.6) + '@veramo-community/lds-ecdsa-secp256k1-recovery2020': github.com/uport-project/EcdsaSecp256k1RecoverySignature2020/ab0db52de6f4e6663ef271a48009ba26e688ef9b(expo@50.0.11)(react-native@0.73.5) '@veramo/core-types': 5.6.0 '@veramo/utils': 5.6.0 cross-fetch: 4.0.0(patch_hash=o37ixiuozlaw3unzpuuojolyvy)(encoding@0.1.13) @@ -14295,18 +14932,18 @@ packages: dev: false optional: true - /@veramo/credential-ld@5.6.1-next.57(encoding@0.1.13)(expo-crypto@12.8.1)(expo@49.0.16)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1)(react-native@0.72.6): + /@veramo/credential-ld@5.6.1-next.57(expo-crypto@12.8.1)(expo@50.0.11)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1)(react-native@0.73.5): resolution: {integrity: sha512-dlLjBRg/2sXOsMbsU9Hv8c1lVoUDiuruR1rhOchQIBOxJVXK83IRCmKBsCh912z6tnNI9dRN4tlPqRq9mn8bHg==} dependencies: - '@digitalcredentials/ed25519-signature-2020': 4.0.0(expo-crypto@12.8.1)(expo@49.0.16)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1) + '@digitalcredentials/ed25519-signature-2020': 4.0.0(expo-crypto@12.8.1)(expo@50.0.11)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1) '@digitalcredentials/ed25519-verification-key-2020': 4.0.0 - '@digitalcredentials/jsonld': 6.0.0(expo@49.0.16)(react-native@0.72.6) - '@digitalcredentials/jsonld-signatures': 10.0.1(expo-crypto@12.8.1)(expo@49.0.16)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1) - '@digitalcredentials/vc': 7.0.0(expo-crypto@12.8.1)(expo@49.0.16)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1) + '@digitalcredentials/jsonld': 6.0.0(expo@50.0.11)(react-native@0.73.5) + '@digitalcredentials/jsonld-signatures': 10.0.1(expo-crypto@12.8.1)(expo@50.0.11)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1) + '@digitalcredentials/vc': 7.0.0(expo-crypto@12.8.1)(expo@50.0.11)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1) '@transmute/credentials-context': 0.7.0-unstable.81 '@transmute/ed25519-signature-2018': 0.7.0-unstable.81 '@transmute/json-web-signature': 0.7.0-unstable.81 - '@veramo-community/lds-ecdsa-secp256k1-recovery2020': github.com/uport-project/EcdsaSecp256k1RecoverySignature2020/ab0db52de6f4e6663ef271a48009ba26e688ef9b(expo@49.0.16)(react-native@0.72.6) + '@veramo-community/lds-ecdsa-secp256k1-recovery2020': github.com/uport-project/EcdsaSecp256k1RecoverySignature2020/ab0db52de6f4e6663ef271a48009ba26e688ef9b(expo@50.0.11)(react-native@0.73.5) '@veramo/core-types': 5.6.1-next.57 '@veramo/utils': 5.6.1-next.57(encoding@0.1.13) cross-fetch: 4.0.0(patch_hash=o37ixiuozlaw3unzpuuojolyvy)(encoding@0.1.13) @@ -14324,6 +14961,36 @@ packages: - supports-color - utf-8-validate - web-streams-polyfill + dev: false + + /@veramo/credential-ld@5.6.1-unstable.36(encoding@0.1.13)(expo@50.0.11)(react-native@0.73.5): + resolution: {integrity: sha512-RLAnm3sRiCLjjKKUX2+6VyxMuRR0hb/ZoUd3iIhKQx+QkJfIgKz+HzPYZ8A18q0CNiY3x3T5NtZuGS42Yl5lrw==} + requiresBuild: true + dependencies: + '@digitalcredentials/ed25519-signature-2020': 3.0.2(expo@50.0.11)(react-native@0.73.5) + '@digitalcredentials/ed25519-verification-key-2020': 4.0.0 + '@digitalcredentials/jsonld': 6.0.0(expo@50.0.11)(react-native@0.73.5) + '@digitalcredentials/jsonld-signatures': 9.4.0(expo@50.0.11)(react-native@0.73.5) + '@digitalcredentials/vc': 6.0.1(expo@50.0.11)(react-native@0.73.5) + '@transmute/credentials-context': 0.7.0-unstable.81 + '@transmute/ed25519-signature-2018': 0.7.0-unstable.81 + '@transmute/json-web-signature': 0.7.0-unstable.81 + '@veramo-community/lds-ecdsa-secp256k1-recovery2020': github.com/uport-project/EcdsaSecp256k1RecoverySignature2020/ab0db52de6f4e6663ef271a48009ba26e688ef9b(expo@50.0.11)(react-native@0.73.5) + '@veramo/core-types': 5.6.1-unstable.36 + '@veramo/utils': 5.6.1-unstable.36(encoding@0.1.13) + cross-fetch: 4.0.0(patch_hash=o37ixiuozlaw3unzpuuojolyvy)(encoding@0.1.13) + debug: 4.3.4 + did-resolver: 4.1.0 + transitivePeerDependencies: + - bufferutil + - domexception + - encoding + - expo + - react-native + - supports-color + - utf-8-validate + - web-streams-polyfill + optional: true /@veramo/credential-status@5.4.1: resolution: {integrity: sha512-A1VqdQ/ZiRD760291XhpFgXkW+ONgL90/pTEOpre1eZoNsFnytaIfPo5LIE60dDGxOf3x8rArrtlyYMFC5UPHw==} @@ -14331,7 +14998,7 @@ packages: '@veramo/core-types': 5.6.0 '@veramo/utils': 5.6.0 credential-status: 2.0.6 - did-jwt: 7.4.4 + did-jwt: 7.4.7 did-resolver: 4.1.0 transitivePeerDependencies: - bufferutil @@ -14355,7 +15022,7 @@ packages: - utf-8-validate dev: false - /@veramo/credential-w3c@5.6.0(expo@49.0.16)(react-native@0.72.6): + /@veramo/credential-w3c@5.6.0(expo@50.0.11)(react-native@0.73.5): resolution: {integrity: sha512-ExCr/77sIN3C6QpWDICNkwjYcz6BuXhk6talP3m0iixMQ/TO05f6jyvnnEpRbKhuwpEBqw2JE3zszSxz+U34+A==} dependencies: '@veramo/core-types': 5.6.0 @@ -14363,12 +15030,12 @@ packages: '@veramo/utils': 5.6.0 canonicalize: 2.0.0 debug: 4.3.4 - did-jwt: 7.4.4 + did-jwt: 7.4.7 did-jwt-vc: 3.2.13 did-resolver: 4.1.0 uuid: 9.0.1 optionalDependencies: - '@veramo/credential-ld': 5.6.0(expo@49.0.16)(react-native@0.72.6) + '@veramo/credential-ld': 5.6.0(expo@50.0.11)(react-native@0.73.5) transitivePeerDependencies: - bufferutil - domexception @@ -14380,7 +15047,7 @@ packages: - web-streams-polyfill dev: false - /@veramo/credential-w3c@5.6.1-next.57(encoding@0.1.13)(expo-crypto@12.8.1)(expo@49.0.16)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1)(react-native@0.72.6): + /@veramo/credential-w3c@5.6.1-next.57(encoding@0.1.13)(expo@50.0.11)(react-native@0.73.5): resolution: {integrity: sha512-YjFjw5hZMHmMhf29I648JMTXklRB0VViz1PDNut+/OhyQxAPa0IiyOcTL8SgByZAUjkCKcFZAH4GGR8/2UqVRQ==} dependencies: '@veramo/core-types': 5.6.1-next.57 @@ -14393,16 +15060,13 @@ packages: did-resolver: 4.1.0 uuid: 9.0.1 optionalDependencies: - '@veramo/credential-ld': 5.6.1-next.57(encoding@0.1.13)(expo-crypto@12.8.1)(expo@49.0.16)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1)(react-native@0.72.6) + '@veramo/credential-ld': 5.6.1-unstable.36(encoding@0.1.13)(expo@50.0.11)(react-native@0.73.5) transitivePeerDependencies: - bufferutil - domexception - encoding - expo - - expo-crypto - - msrcrypto - react-native - - react-native-securerandom - supports-color - utf-8-validate - web-streams-polyfill @@ -14601,7 +15265,7 @@ packages: '@veramo/core-types': 5.6.0 '@veramo/utils': 5.6.0 debug: 4.3.4 - did-jwt: 7.4.4 + did-jwt: 7.4.7 ethers: 6.11.1 uint8arrays: 4.0.6 uuid: 9.0.1 @@ -14639,7 +15303,7 @@ packages: '@veramo/key-manager': 5.6.0 '@veramo/utils': 5.6.0 debug: 4.3.4 - did-jwt: 7.4.4 + did-jwt: 7.4.7 ethers: 6.11.1 transitivePeerDependencies: - bufferutil @@ -14692,7 +15356,7 @@ packages: credential-status: 2.0.6 cross-fetch: 4.0.0(patch_hash=o37ixiuozlaw3unzpuuojolyvy)(encoding@0.1.13) debug: 4.3.4 - did-jwt: 7.4.4 + did-jwt: 7.4.7 did-jwt-vc: 3.2.13 did-resolver: 4.1.0 ethers: 6.11.1 @@ -14714,7 +15378,7 @@ packages: credential-status: 3.0.1 cross-fetch: 4.0.0(patch_hash=o37ixiuozlaw3unzpuuojolyvy)(encoding@0.1.13) debug: 4.3.4 - did-jwt: 8.0.0 + did-jwt: 8.0.1 did-jwt-vc: 4.0.0 did-resolver: 4.1.0 ethers: 6.11.1 @@ -14727,7 +15391,31 @@ packages: - supports-color - utf-8-validate - /@vercel/analytics@1.2.2(next@14.1.2)(react@18.2.0): + /@veramo/utils@5.6.1-unstable.36(encoding@0.1.13): + resolution: {integrity: sha512-67fhvZPDD/zK6aCcXthjX/h1XLbAJ9SiWT5qDKoF5pl5QcVmlBSfH4HG7TvFyqOmF/gZZPTzO3H2ohOtN/WlbA==} + requiresBuild: true + dependencies: + '@ipld/dag-pb': 4.1.0 + '@noble/curves': 1.3.0 + '@veramo/core-types': 5.6.1-unstable.36 + credential-status: 2.0.6 + cross-fetch: 4.0.0(patch_hash=o37ixiuozlaw3unzpuuojolyvy)(encoding@0.1.13) + debug: 4.3.4 + did-jwt: 8.0.0 + did-jwt-vc: 4.0.0 + did-resolver: 4.1.0 + ethers: 6.11.1 + ipfs-unixfs: 11.1.3 + multiformats: 12.1.3 + uint8arrays: 4.0.10 + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + optional: true + + /@vercel/analytics@1.2.2(next@14.1.3)(react@18.2.0): resolution: {integrity: sha512-X0rctVWkQV1e5Y300ehVNqpOfSOufo7ieA5PIdna8yX/U7Vjz0GFsGf4qvAhxV02uQ2CVt7GYcrFfddXXK2Y4A==} peerDependencies: next: '>= 13' @@ -14738,7 +15426,7 @@ packages: react: optional: true dependencies: - next: 14.1.2(@babel/core@7.23.2)(react-dom@18.2.0)(react@18.2.0) + next: 14.1.3(@babel/core@7.24.0)(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 server-only: 0.0.1 dev: false @@ -14752,40 +15440,19 @@ packages: yoga-wasm-web: 0.3.3 dev: false - /@vitest/coverage-v8@1.0.0-beta.3(vitest@1.0.0-beta.3): - resolution: {integrity: sha512-ewUkoelUzU3lBxWiv53lMzfgAZzz9OSyveb4ngIIP+I2/zqNA2IGhhHrFgFL4AqSoOBD1W2mUoUO4noaUrP2Wg==} - peerDependencies: - vitest: ^1.0.0-0 - dependencies: - '@ampproject/remapping': 2.2.1 - '@bcoe/v8-coverage': 0.2.3 - istanbul-lib-coverage: 3.2.0 - istanbul-lib-report: 3.0.1 - istanbul-lib-source-maps: 4.0.1 - istanbul-reports: 3.1.6 - magic-string: 0.30.5 - picocolors: 1.0.0 - std-env: 3.7.0 - test-exclude: 6.0.0 - v8-to-istanbul: 9.1.3 - vitest: 1.0.0-beta.3(@types/node@20.11.25) - transitivePeerDependencies: - - supports-color - dev: true - /@vitest/coverage-v8@1.3.1(vitest@1.3.1): resolution: {integrity: sha512-UuBnkSJUNE9rdHjDCPyJ4fYuMkoMtnghes1XohYa4At0MS3OQSAo97FrbwSLRshYsXThMZy1+ybD/byK5llyIg==} peerDependencies: vitest: 1.3.1 dependencies: - '@ampproject/remapping': 2.2.1 + '@ampproject/remapping': 2.3.0 '@bcoe/v8-coverage': 0.2.3 debug: 4.3.4 istanbul-lib-coverage: 3.2.2 istanbul-lib-report: 3.0.1 istanbul-lib-source-maps: 4.0.1 - istanbul-reports: 3.1.6 - magic-string: 0.30.5 + istanbul-reports: 3.1.7 + magic-string: 0.30.8 magicast: 0.3.3 picocolors: 1.0.0 std-env: 3.7.0 @@ -14796,72 +15463,34 @@ packages: - supports-color dev: true - /@vitest/expect@1.0.0-beta.3: - resolution: {integrity: sha512-fbDKa7aj/xiCcS9X6RwlPXTZ5SNQpvPl0eswD+d3Lnp8gmuB8j2mb+CDUMe7VRg+ah5Cm/kqAc9DzYTe2IcvgQ==} - dependencies: - '@vitest/spy': 1.0.0-beta.3 - '@vitest/utils': 1.0.0-beta.3 - chai: 4.3.10 - dev: true - /@vitest/expect@1.3.1: resolution: {integrity: sha512-xofQFwIzfdmLLlHa6ag0dPV8YsnKOCP1KdAeVVh34vSjN2dcUiXYCD9htu/9eM7t8Xln4v03U9HLxLpPlsXdZw==} dependencies: '@vitest/spy': 1.3.1 '@vitest/utils': 1.3.1 - chai: 4.3.10 + chai: 4.4.1 dev: true - /@vitest/runner@1.0.0-beta.3: - resolution: {integrity: sha512-9xakpVjEpuFiyoCt42d0Ff/PiPOlBLQeKjEZbnT3LURi1M26llNVZ2I9ogDQipH3EH9IK0/xDfYAxOjs2jYaDw==} - dependencies: - '@vitest/utils': 1.0.0-beta.3 - p-limit: 4.0.0 - pathe: 1.1.1 - dev: true - - /@vitest/runner@1.3.1: - resolution: {integrity: sha512-5FzF9c3jG/z5bgCnjr8j9LNq/9OxV2uEBAITOXfoe3rdZJTdO7jzThth7FXv/6b+kdY65tpRQB7WaKhNZwX+Kg==} + /@vitest/runner@1.3.1: + resolution: {integrity: sha512-5FzF9c3jG/z5bgCnjr8j9LNq/9OxV2uEBAITOXfoe3rdZJTdO7jzThth7FXv/6b+kdY65tpRQB7WaKhNZwX+Kg==} dependencies: '@vitest/utils': 1.3.1 p-limit: 5.0.0 - pathe: 1.1.1 - dev: true - - /@vitest/snapshot@1.0.0-beta.3: - resolution: {integrity: sha512-fun2daxMGuXo2wBi6ItFgUFl0xnN4v2hVXvIYGvoJG9SoPobfPlQ79MO8gMKOt++rWlUXNj7J23KHcoOyZ2Wwg==} - dependencies: - magic-string: 0.30.5 - pathe: 1.1.1 - pretty-format: 29.7.0 + pathe: 1.1.2 dev: true /@vitest/snapshot@1.3.1: resolution: {integrity: sha512-EF++BZbt6RZmOlE3SuTPu/NfwBF6q4ABS37HHXzs2LUVPBLx2QoY/K0fKpRChSo8eLiuxcbCVfqKgx/dplCDuQ==} dependencies: - magic-string: 0.30.5 - pathe: 1.1.1 + magic-string: 0.30.8 + pathe: 1.1.2 pretty-format: 29.7.0 dev: true - /@vitest/spy@1.0.0-beta.3: - resolution: {integrity: sha512-ybwJagwd1f3awJixX9YWdGtZNHXbJozzEekRfYdHmTudPgIX5bxFCcH4cG/gtGY6VbVuvExwk0Es04bFx2YkLA==} - dependencies: - tinyspy: 2.2.0 - dev: true - /@vitest/spy@1.3.1: resolution: {integrity: sha512-xAcW+S099ylC9VLU7eZfdT9myV67Nor9w9zhf0mGCYJSO+zM2839tOeROTdikOi/8Qeusffvxb/MyBSOja1Uig==} dependencies: - tinyspy: 2.2.0 - dev: true - - /@vitest/utils@1.0.0-beta.3: - resolution: {integrity: sha512-8j7Xg3A13kt78DqWJC3ludyMsBbKQn/LcX9wcULxZFMGQqmSkUFN8ij6JWFQs67w39T+clLWzPrV+NRxe+Mc9g==} - dependencies: - diff-sequences: 29.6.3 - loupe: 2.3.7 - pretty-format: 29.7.0 + tinyspy: 2.2.1 dev: true /@vitest/utils@1.3.1: @@ -14873,7 +15502,7 @@ packages: pretty-format: 29.7.0 dev: true - /@wagmi/connectors@4.1.14(@types/react@18.2.63)(@wagmi/core@2.6.5)(encoding@0.1.13)(react-dom@18.2.0)(react-native@0.72.6)(react@18.2.0)(typescript@5.3.3)(viem@2.7.22): + /@wagmi/connectors@4.1.14(@types/react@18.2.64)(@wagmi/core@2.6.5)(encoding@0.1.13)(react-dom@18.2.0)(react-native@0.73.5)(react@18.2.0)(typescript@5.3.3)(viem@2.7.22): resolution: {integrity: sha512-e8I89FsNBtzhIilU3nqmgMR9xvSgCfmkWLz9iCKBTqyitbK5EJU7WTEtjjYFm1v2J//JeAwaA2XEKtG9BLR9jQ==} peerDependencies: '@wagmi/core': 2.6.5 @@ -14884,12 +15513,12 @@ packages: optional: true dependencies: '@coinbase/wallet-sdk': 3.9.1 - '@metamask/sdk': 0.14.3(@types/react@18.2.63)(encoding@0.1.13)(react-dom@18.2.0)(react-native@0.72.6)(react@18.2.0) + '@metamask/sdk': 0.14.3(@types/react@18.2.64)(encoding@0.1.13)(react-dom@18.2.0)(react-native@0.73.5)(react@18.2.0) '@safe-global/safe-apps-provider': 0.18.1(typescript@5.3.3) '@safe-global/safe-apps-sdk': 8.1.0(typescript@5.3.3) - '@wagmi/core': 2.6.5(@types/react@18.2.63)(react@18.2.0)(typescript@5.3.3)(viem@2.7.22) - '@walletconnect/ethereum-provider': 2.11.1(@types/react@18.2.63)(encoding@0.1.13)(react@18.2.0) - '@walletconnect/modal': 2.6.2(@types/react@18.2.63)(react@18.2.0) + '@wagmi/core': 2.6.5(@types/react@18.2.64)(react@18.2.0)(typescript@5.3.3)(viem@2.7.22) + '@walletconnect/ethereum-provider': 2.11.1(@types/react@18.2.64)(encoding@0.1.13)(react@18.2.0) + '@walletconnect/modal': 2.6.2(@types/react@18.2.64)(react@18.2.0) typescript: 5.3.3 viem: 2.7.22(typescript@5.3.3) transitivePeerDependencies: @@ -14917,7 +15546,7 @@ packages: - zod dev: false - /@wagmi/core@2.6.5(@types/react@18.2.63)(react@18.2.0)(typescript@5.3.3)(viem@2.7.22): + /@wagmi/core@2.6.5(@types/react@18.2.64)(react@18.2.0)(typescript@5.3.3)(viem@2.7.22): resolution: {integrity: sha512-DLyrc0o+dx05oIhBJuxnS7ekS5e6rB5mytlqPme+Km7aLdeBdcfYB4yJyYCyWoi93OLa7M5sbflTttz3o56bKw==} peerDependencies: '@tanstack/query-core': '>=5.0.0' @@ -14933,7 +15562,7 @@ packages: mipd: 0.0.5(typescript@5.3.3) typescript: 5.3.3 viem: 2.7.22(typescript@5.3.3) - zustand: 4.4.1(@types/react@18.2.63)(react@18.2.0) + zustand: 4.4.1(@types/react@18.2.64)(react@18.2.0) transitivePeerDependencies: - '@types/react' - bufferutil @@ -14988,14 +15617,14 @@ packages: tslib: 1.14.1 dev: false - /@walletconnect/ethereum-provider@2.11.1(@types/react@18.2.63)(encoding@0.1.13)(react@18.2.0): + /@walletconnect/ethereum-provider@2.11.1(@types/react@18.2.64)(encoding@0.1.13)(react@18.2.0): resolution: {integrity: sha512-UfQH0ho24aa2M1xYmanbJv2ggQPebKmQytp2j20QEvURJ2R0v7YKWZ+0PfwOs6o6cuGw6gGxy/0WQXQRZSAsfg==} dependencies: '@walletconnect/jsonrpc-http-connection': 1.0.7(encoding@0.1.13) '@walletconnect/jsonrpc-provider': 1.0.13 '@walletconnect/jsonrpc-types': 1.0.3 '@walletconnect/jsonrpc-utils': 1.0.8 - '@walletconnect/modal': 2.6.2(@types/react@18.2.63)(react@18.2.0) + '@walletconnect/modal': 2.6.2(@types/react@18.2.64)(react@18.2.0) '@walletconnect/sign-client': 2.11.1(encoding@0.1.13) '@walletconnect/types': 2.11.1 '@walletconnect/universal-provider': 2.11.1(encoding@0.1.13) @@ -15116,19 +15745,19 @@ packages: tslib: 1.14.1 dev: false - /@walletconnect/modal-core@2.6.2(@types/react@18.2.63)(react@18.2.0): + /@walletconnect/modal-core@2.6.2(@types/react@18.2.64)(react@18.2.0): resolution: {integrity: sha512-cv8ibvdOJQv2B+nyxP9IIFdxvQznMz8OOr/oR/AaUZym4hjXNL/l1a2UlSQBXrVjo3xxbouMxLb3kBsHoYP2CA==} dependencies: - valtio: 1.11.2(@types/react@18.2.63)(react@18.2.0) + valtio: 1.11.2(@types/react@18.2.64)(react@18.2.0) transitivePeerDependencies: - '@types/react' - react dev: false - /@walletconnect/modal-ui@2.6.2(@types/react@18.2.63)(react@18.2.0): + /@walletconnect/modal-ui@2.6.2(@types/react@18.2.64)(react@18.2.0): resolution: {integrity: sha512-rbdstM1HPGvr7jprQkyPggX7rP4XiCG85ZA+zWBEX0dVQg8PpAgRUqpeub4xQKDgY7pY/xLRXSiCVdWGqvG2HA==} dependencies: - '@walletconnect/modal-core': 2.6.2(@types/react@18.2.63)(react@18.2.0) + '@walletconnect/modal-core': 2.6.2(@types/react@18.2.64)(react@18.2.0) lit: 2.8.0 motion: 10.16.2 qrcode: 1.5.3 @@ -15137,11 +15766,11 @@ packages: - react dev: false - /@walletconnect/modal@2.6.2(@types/react@18.2.63)(react@18.2.0): + /@walletconnect/modal@2.6.2(@types/react@18.2.64)(react@18.2.0): resolution: {integrity: sha512-eFopgKi8AjKf/0U4SemvcYw9zlLpx9njVN8sf6DAkowC2Md0gPU/UNEbH1Wwj407pEKnEds98pKWib1NN1ACoA==} dependencies: - '@walletconnect/modal-core': 2.6.2(@types/react@18.2.63)(react@18.2.0) - '@walletconnect/modal-ui': 2.6.2(@types/react@18.2.63)(react@18.2.0) + '@walletconnect/modal-core': 2.6.2(@types/react@18.2.64)(react@18.2.0) + '@walletconnect/modal-ui': 2.6.2(@types/react@18.2.64)(react@18.2.0) transitivePeerDependencies: - '@types/react' - react @@ -15401,29 +16030,29 @@ packages: '@webassemblyjs/ast': 1.11.6 '@xtuc/long': 4.2.2 - /@webpack-cli/configtest@2.1.1(webpack-cli@5.1.4)(webpack@5.89.0): + /@webpack-cli/configtest@2.1.1(webpack-cli@5.1.4)(webpack@5.90.3): resolution: {integrity: sha512-wy0mglZpDSiSS0XHrVR+BAdId2+yxPSoJW8fsna3ZpYSlufjvxnP4YbKTCBZnNIcGN4r6ZPXV55X4mYExOfLmw==} engines: {node: '>=14.15.0'} peerDependencies: webpack: 5.x.x webpack-cli: 5.x.x dependencies: - webpack: 5.89.0(esbuild@0.19.5)(webpack-cli@5.1.4) - webpack-cli: 5.1.4(webpack@5.89.0) + webpack: 5.90.3(esbuild@0.19.12)(webpack-cli@5.1.4) + webpack-cli: 5.1.4(webpack@5.90.3) dev: true - /@webpack-cli/info@2.0.2(webpack-cli@5.1.4)(webpack@5.89.0): + /@webpack-cli/info@2.0.2(webpack-cli@5.1.4)(webpack@5.90.3): resolution: {integrity: sha512-zLHQdI/Qs1UyT5UBdWNqsARasIA+AaF8t+4u2aS2nEpBQh2mWIVb8qAklq0eUENnC5mOItrIB4LiS9xMtph18A==} engines: {node: '>=14.15.0'} peerDependencies: webpack: 5.x.x webpack-cli: 5.x.x dependencies: - webpack: 5.89.0(esbuild@0.19.5)(webpack-cli@5.1.4) - webpack-cli: 5.1.4(webpack@5.89.0) + webpack: 5.90.3(esbuild@0.19.12)(webpack-cli@5.1.4) + webpack-cli: 5.1.4(webpack@5.90.3) dev: true - /@webpack-cli/serve@2.0.5(webpack-cli@5.1.4)(webpack@5.89.0): + /@webpack-cli/serve@2.0.5(webpack-cli@5.1.4)(webpack@5.90.3): resolution: {integrity: sha512-lqaoKnRYBdo1UgDX8uF24AfGMifWK19TxPmM5FHc2vAGxrJ/qtyUyFBWoY1tISZdelsQ5fBcOusifo5o5wSJxQ==} engines: {node: '>=14.15.0'} peerDependencies: @@ -15434,8 +16063,8 @@ packages: webpack-dev-server: optional: true dependencies: - webpack: 5.89.0(esbuild@0.19.5)(webpack-cli@5.1.4) - webpack-cli: 5.1.4(webpack@5.89.0) + webpack: 5.90.3(esbuild@0.19.12)(webpack-cli@5.1.4) + webpack-cli: 5.1.4(webpack@5.90.3) dev: true /@xmldom/xmldom@0.7.13: @@ -15526,20 +16155,20 @@ packages: mime-types: 2.1.35 negotiator: 0.6.3 - /acorn-import-assertions@1.9.0(acorn@8.10.0): + /acorn-import-assertions@1.9.0(acorn@8.11.2): resolution: {integrity: sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==} peerDependencies: acorn: ^8 dependencies: - acorn: 8.10.0 - dev: true + acorn: 8.11.2 - /acorn-import-assertions@1.9.0(acorn@8.11.2): + /acorn-import-assertions@1.9.0(acorn@8.11.3): resolution: {integrity: sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==} peerDependencies: acorn: ^8 dependencies: - acorn: 8.11.2 + acorn: 8.11.3 + dev: true /acorn-jsx@5.3.2(acorn@8.11.2): resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} @@ -15586,13 +16215,17 @@ packages: resolution: {integrity: sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==} engines: {node: '>=0.4.0'} hasBin: true - dev: true /acorn@8.11.2: resolution: {integrity: sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==} engines: {node: '>=0.4.0'} hasBin: true + /acorn@8.11.3: + resolution: {integrity: sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==} + engines: {node: '>=0.4.0'} + hasBin: true + /address@1.2.2: resolution: {integrity: sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==} engines: {node: '>= 10.0.0'} @@ -15789,9 +16422,6 @@ packages: /application-config-path@0.1.1: resolution: {integrity: sha512-zy9cHePtMP0YhwG+CfHm0bgwdnga2X3gZexpdCwEj//dpb+TKajtiC8REEUJUSq6Ab4f9cgNy2l8ObXzCXFkEw==} - /arg@4.1.0: - resolution: {integrity: sha512-ZWc51jO3qegGkVh8Hwpv636EkbesNV5ZNQPCtRa+0qytRYPEs9IYT9qITY9buezqUH5uqyzlWLcufrzU2rffdg==} - /arg@4.1.3: resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==} @@ -15806,17 +16436,12 @@ packages: /argparse@2.0.1: resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} - /aria-query@5.3.0: - resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} - dependencies: - dequal: 2.0.3 - dev: true - /array-buffer-byte-length@1.0.0: resolution: {integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==} dependencies: call-bind: 1.0.5 is-array-buffer: 3.0.2 + dev: false /array-flatten@1.1.1: resolution: {integrity: sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==} @@ -15828,17 +16453,6 @@ packages: resolution: {integrity: sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==} dev: true - /array-includes@3.1.7: - resolution: {integrity: sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - get-intrinsic: 1.2.2 - is-string: 1.0.7 - dev: true - /array-timsort@1.0.3: resolution: {integrity: sha512-/+3GRL7dDAGEfM6TseQk/U+mi18TU2Ms9I3UlLdUMhz2hbvGNTKdj9xniwXfUqgYhHxRx0+8UnKkvlNwVU+cWQ==} dev: false @@ -15847,17 +16461,6 @@ packages: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} engines: {node: '>=8'} - /array.prototype.findlastindex@1.2.3: - resolution: {integrity: sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - es-shim-unscopables: 1.0.2 - get-intrinsic: 1.2.2 - dev: true - /array.prototype.flat@1.3.2: resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==} engines: {node: '>= 0.4'} @@ -15866,26 +16469,7 @@ packages: define-properties: 1.2.1 es-abstract: 1.22.3 es-shim-unscopables: 1.0.2 - - /array.prototype.flatmap@1.3.2: - resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - es-shim-unscopables: 1.0.2 - dev: true - - /array.prototype.tosorted@1.1.2: - resolution: {integrity: sha512-HuQCHOlk1Weat5jzStICBCd83NxiIMwqDg/dHEsoefabn/hJRj5pVdWcPUSpRrwhwxZOsQassMpgN/xRYFBMIg==} - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - es-shim-unscopables: 1.0.2 - get-intrinsic: 1.2.2 - dev: true + dev: false /arraybuffer.prototype.slice@1.0.1: resolution: {integrity: sha512-09x0ZWFEjj4WD8PDbykUwo3t9arLn8NIzmmYEJFpYekOAQjpkGSyrQhNoRTcwwcFRu+ycWF78QZ63oWTqSjBcw==} @@ -15897,6 +16481,7 @@ packages: get-intrinsic: 1.2.1 is-array-buffer: 3.0.2 is-shared-array-buffer: 1.0.2 + dev: false /arraybuffer.prototype.slice@1.0.2: resolution: {integrity: sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==} @@ -15909,6 +16494,7 @@ packages: get-intrinsic: 1.2.2 is-array-buffer: 3.0.2 is-shared-array-buffer: 1.0.2 + dev: false /arrify@1.0.1: resolution: {integrity: sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==} @@ -15923,6 +16509,7 @@ packages: /asmcrypto.js@2.3.2: resolution: {integrity: sha512-3FgFARf7RupsZETQ1nHnhLUUvpcttcCq1iZCaVAbJZbCZ5VNRrNyvpDyHTOb0KC3llFcsyOT/a99NZcCbeiEsA==} + dev: false /asn1.js@5.4.1: resolution: {integrity: sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==} @@ -15960,10 +16547,6 @@ packages: resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} dev: true - /ast-types-flow@0.0.7: - resolution: {integrity: sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==} - dev: true - /ast-types@0.15.2: resolution: {integrity: sha512-c27loCv9QkZinsa5ProX751khO9DJl/AcB5c2KNtA6NRvHKS0PgLfcftz72KVq504vB0Gku5s2kUZzDBvQWvHg==} engines: {node: '>=4'} @@ -15990,12 +16573,6 @@ packages: /async@3.2.4: resolution: {integrity: sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==} - /asynciterator.prototype@1.0.0: - resolution: {integrity: sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==} - dependencies: - has-symbols: 1.0.3 - dev: true - /asynckit@0.4.0: resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} @@ -16027,11 +16604,6 @@ packages: resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} engines: {node: '>= 0.4'} - /axe-core@4.8.2: - resolution: {integrity: sha512-/dlp0fxyM3R8YW7MFzaHWXrf4zzbr0vaYb23VBFCl83R7nWNPg/yaQw2Dc8jzCMmDVLhSdzH8MjrsuIUuvX+6g==} - engines: {node: '>=4'} - dev: true - /axios@1.1.3: resolution: {integrity: sha512-00tXVRwKx/FZr/IDVFt4C+f9FYairX517WoGCL6dpOntqLkZofjhu43F/Xl44UOpqa+9sLFDrG/XAnFsUYgkDA==} dependencies: @@ -16072,12 +16644,6 @@ packages: - debug dev: true - /axobject-query@3.2.1: - resolution: {integrity: sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==} - dependencies: - dequal: 2.0.3 - dev: true - /b4a@1.6.4: resolution: {integrity: sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw==} dev: false @@ -16092,12 +16658,12 @@ packages: dependencies: b64-lite: 1.4.0 - /babel-core@7.0.0-bridge.0(@babel/core@7.23.2): + /babel-core@7.0.0-bridge.0(@babel/core@7.24.0): resolution: {integrity: sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.2 + '@babel/core': 7.24.0 /babel-jest@29.7.0(@babel/core@7.23.2): resolution: {integrity: sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==} @@ -16187,16 +16753,6 @@ packages: resolve: 1.22.4 dev: false - /babel-plugin-module-resolver@5.0.0: - resolution: {integrity: sha512-g0u+/ChLSJ5+PzYwLwP8Rp8Rcfowz58TJNCe+L/ui4rpzE/mg//JVX0EWBUYoxaextqnwuGHzfGp2hh0PPV25Q==} - engines: {node: '>= 16'} - dependencies: - find-babel-config: 2.0.0 - glob: 8.1.0 - pkg-up: 3.1.0 - reselect: 4.1.8 - resolve: 1.22.8 - /babel-plugin-polyfill-corejs2@0.4.5(@babel/core@7.23.2): resolution: {integrity: sha512-19hwUH5FKl49JEsvyTcoHakh6BE0wgXLLptIyKZ3PijHc/Ci521wygORCUCCred+E/twuqRyAkE02BAWPmsHOg==} peerDependencies: @@ -16221,6 +16777,7 @@ packages: semver: 6.3.1 transitivePeerDependencies: - supports-color + dev: true /babel-plugin-polyfill-corejs2@0.4.6(@babel/core@7.24.0): resolution: {integrity: sha512-jhHiWVZIlnPbEUKSSNb9YoWcQGdlTLq7z1GHL4AjFxaoOUMuuEVJ+Y4pAaQUGOGk93YsVCKPbqbfw3m0SM6H8Q==} @@ -16234,6 +16791,18 @@ packages: transitivePeerDependencies: - supports-color + /babel-plugin-polyfill-corejs2@0.4.9(@babel/core@7.24.0): + resolution: {integrity: sha512-BXIWIaO3MewbXWdJdIGDWZurv5OGJlFNo7oy20DpB3kWDVJLcY2NRypRsRUbRe5KMqSNLuOGnWTFQQtY5MAsRw==} + peerDependencies: + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 + dependencies: + '@babel/compat-data': 7.23.5 + '@babel/core': 7.24.0 + '@babel/helper-define-polyfill-provider': 0.6.0(@babel/core@7.24.0) + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + /babel-plugin-polyfill-corejs3@0.8.3(@babel/core@7.23.2): resolution: {integrity: sha512-z41XaniZL26WLrvjy7soabMXrfPWARN25PZoriDEiLMxAp50AUW3t35BGQUMg5xK3UrpVTtagIDklxYa+MhiNA==} peerDependencies: @@ -16256,6 +16825,7 @@ packages: core-js-compat: 3.33.1 transitivePeerDependencies: - supports-color + dev: true /babel-plugin-polyfill-corejs3@0.8.6(@babel/core@7.24.0): resolution: {integrity: sha512-leDIc4l4tUgU7str5BWLS2h8q2N4Nf6lGZP6UrNDxdtfF2g69eJ5L0H7S8A5Ln/arfFAfHor5InAdZuIOwZdgQ==} @@ -16268,6 +16838,17 @@ packages: transitivePeerDependencies: - supports-color + /babel-plugin-polyfill-corejs3@0.9.0(@babel/core@7.24.0): + resolution: {integrity: sha512-7nZPG1uzK2Ymhy/NbaOWTg3uibM2BmGASS4vHS4szRZAIR8R6GwA/xAujpdrXU5iyklrimWnLWU+BLF9suPTqg==} + peerDependencies: + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-define-polyfill-provider': 0.5.0(@babel/core@7.24.0) + core-js-compat: 3.36.0 + transitivePeerDependencies: + - supports-color + /babel-plugin-polyfill-regenerator@0.5.2(@babel/core@7.23.2): resolution: {integrity: sha512-tAlOptU0Xj34V1Y2PNTL4Y0FOJMDB6bZmoW39FeCQIhigGLkqu3Fj6uiXpxIf6Ij274ENdYx64y6Au+ZKlb1IA==} peerDependencies: @@ -16288,6 +16869,7 @@ packages: '@babel/helper-define-polyfill-provider': 0.4.3(@babel/core@7.23.2) transitivePeerDependencies: - supports-color + dev: true /babel-plugin-polyfill-regenerator@0.5.3(@babel/core@7.24.0): resolution: {integrity: sha512-8sHeDOmXC8csczMrYEOf0UTNa4yE2SxV5JGeT/LP1n0OYVDUUFPxG9vdk2AlDlIit4t+Kf0xCtpgXPBwnn/9pw==} @@ -16299,16 +16881,26 @@ packages: transitivePeerDependencies: - supports-color + /babel-plugin-polyfill-regenerator@0.5.5(@babel/core@7.24.0): + resolution: {integrity: sha512-OJGYZlhLqBh2DDHeqAxWB1XIvr49CxiJ2gIt61/PU55CQK4Z58OzMqjDe1zwQdQk+rBYsRc+1rJmdajM3gimHg==} + peerDependencies: + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-define-polyfill-provider': 0.5.0(@babel/core@7.24.0) + transitivePeerDependencies: + - supports-color + /babel-plugin-react-native-web@0.18.12: resolution: {integrity: sha512-4djr9G6fMdwQoD6LQ7hOKAm39+y12flWgovAqS1k5O8f42YQ3A1FFMyV5kKfetZuGhZO5BmNmOdRRZQ1TixtDw==} /babel-plugin-syntax-trailing-function-commas@7.0.0-beta.0: resolution: {integrity: sha512-Xj9XuRuz3nTSbaTXWv3itLOcxyF4oPD8douBBmj7U9BBC6nEBYfyOJYQMf/8PJAFotC62UY5dFfIGEPr7WswzQ==} - /babel-plugin-transform-flow-enums@0.0.2(@babel/core@7.23.2): + /babel-plugin-transform-flow-enums@0.0.2(@babel/core@7.24.0): resolution: {integrity: sha512-g4aaCrDDOsWjbm0PUUeVnkcVd6AKJsVc/MbnPhEotEpkeJQP6b8nzewohQi7+QS8UyPehOhGWn0nOwjvWpmMvQ==} dependencies: - '@babel/plugin-syntax-flow': 7.22.5(@babel/core@7.23.2) + '@babel/plugin-syntax-flow': 7.23.3(@babel/core@7.24.0) transitivePeerDependencies: - '@babel/core' @@ -16345,53 +16937,54 @@ packages: '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.23.2) dev: true - /babel-preset-expo@9.5.2(@babel/core@7.23.2): - resolution: {integrity: sha512-hU1G1TDiikuXV6UDZjPnX+WdbjbtidDiYhftMEVrZQSst45pDPVBWbM41TUKrpJMwv4FypsLzK+378gnMPRVWQ==} + /babel-preset-expo@10.0.1(@babel/core@7.24.0): + resolution: {integrity: sha512-uWIGmLfbP3dS5+8nesxaW6mQs41d4iP7X82ZwRdisB/wAhKQmuJM9Y1jQe4006uNYkw6Phf2TT03ykLVro7KuQ==} dependencies: - '@babel/plugin-proposal-decorators': 7.23.2(@babel/core@7.23.2) - '@babel/plugin-proposal-export-namespace-from': 7.18.9(@babel/core@7.23.2) - '@babel/plugin-proposal-object-rest-spread': 7.20.7(@babel/core@7.23.2) - '@babel/plugin-transform-react-jsx': 7.22.15(@babel/core@7.23.2) - '@babel/preset-env': 7.23.2(@babel/core@7.23.2) - babel-plugin-module-resolver: 5.0.0 + '@babel/plugin-proposal-decorators': 7.24.0(@babel/core@7.24.0) + '@babel/plugin-transform-export-namespace-from': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-object-rest-spread': 7.24.0(@babel/core@7.24.0) + '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.24.0) + '@babel/preset-env': 7.24.0(@babel/core@7.24.0) + '@babel/preset-react': 7.23.3(@babel/core@7.24.0) + '@react-native/babel-preset': 0.73.21(@babel/core@7.24.0)(@babel/preset-env@7.24.0) babel-plugin-react-native-web: 0.18.12 - metro-react-native-babel-preset: 0.76.8(@babel/core@7.23.2) + react-refresh: 0.14.0 transitivePeerDependencies: - '@babel/core' - supports-color - /babel-preset-fbjs@3.4.0(@babel/core@7.23.2): + /babel-preset-fbjs@3.4.0(@babel/core@7.24.0): resolution: {integrity: sha512-9ywCsCvo1ojrw0b+XYk7aFvTH6D9064t0RIL1rtMf3nsa02Xw41MS7sZw216Im35xj/UY0PDBQsa1brUDDF1Ow==} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.23.2 - '@babel/plugin-proposal-class-properties': 7.18.6(@babel/core@7.23.2) - '@babel/plugin-proposal-object-rest-spread': 7.20.7(@babel/core@7.23.2) - '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.23.2) - '@babel/plugin-syntax-flow': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.2) - '@babel/plugin-transform-arrow-functions': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-block-scoped-functions': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-block-scoping': 7.23.0(@babel/core@7.23.2) - '@babel/plugin-transform-classes': 7.22.15(@babel/core@7.23.2) - '@babel/plugin-transform-computed-properties': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-destructuring': 7.23.0(@babel/core@7.23.2) - '@babel/plugin-transform-flow-strip-types': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-for-of': 7.22.15(@babel/core@7.23.2) - '@babel/plugin-transform-function-name': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-literals': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-member-expression-literals': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-modules-commonjs': 7.23.0(@babel/core@7.23.2) - '@babel/plugin-transform-object-super': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-parameters': 7.22.15(@babel/core@7.23.2) - '@babel/plugin-transform-property-literals': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-react-display-name': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-react-jsx': 7.22.15(@babel/core@7.23.2) - '@babel/plugin-transform-shorthand-properties': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-spread': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-template-literals': 7.22.5(@babel/core@7.23.2) + '@babel/core': 7.24.0 + '@babel/plugin-proposal-class-properties': 7.18.6(@babel/core@7.24.0) + '@babel/plugin-proposal-object-rest-spread': 7.20.7(@babel/core@7.24.0) + '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.24.0) + '@babel/plugin-syntax-flow': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-syntax-jsx': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-transform-arrow-functions': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-block-scoped-functions': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-block-scoping': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-classes': 7.23.8(@babel/core@7.24.0) + '@babel/plugin-transform-computed-properties': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-destructuring': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-flow-strip-types': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-for-of': 7.23.6(@babel/core@7.24.0) + '@babel/plugin-transform-function-name': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-literals': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-member-expression-literals': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-modules-commonjs': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-object-super': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-property-literals': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-react-display-name': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-react-jsx': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-shorthand-properties': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-spread': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-template-literals': 7.23.3(@babel/core@7.24.0) babel-plugin-syntax-trailing-function-commas: 7.0.0-beta.0 /babel-preset-jest@29.6.3(@babel/core@7.23.2): @@ -16456,7 +17049,6 @@ packages: requiresBuild: true dependencies: base64url: 3.0.1 - dev: false optional: true /base64url@3.0.1: @@ -16508,6 +17100,10 @@ packages: resolution: {integrity: sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==} engines: {node: '>=0.6'} + /big-integer@1.6.52: + resolution: {integrity: sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==} + engines: {node: '>=0.6'} + /big.js@5.2.2: resolution: {integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==} @@ -16611,25 +17207,6 @@ packages: transitivePeerDependencies: - supports-color - /body-parser@1.20.2: - resolution: {integrity: sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==} - engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} - dependencies: - bytes: 3.1.2 - content-type: 1.0.5 - debug: 2.6.9 - depd: 2.0.0 - destroy: 1.2.0 - http-errors: 2.0.0 - iconv-lite: 0.4.24 - on-finished: 2.4.1 - qs: 6.11.0 - raw-body: 2.5.2 - type-is: 1.6.18 - unpipe: 1.0.0 - transitivePeerDependencies: - - supports-color - /bonjour-service@1.1.1: resolution: {integrity: sha512-Z/5lQRMOG9k7W+FkeGTNjh7htqn/2LMnfOvBZ8pynNZCM9MwkQkI3zeI4oz09uWdcgmgHugVvBqxGg4VQJ5PCg==} dependencies: @@ -16680,13 +17257,13 @@ packages: resolution: {integrity: sha512-PyJxiNtA5T2PlLIeBot4lbp7rj4OadzjnMZD/G5zuBNt8ei/yCU7+wW0h2bag9vr8c+/WuRWmSxbqAl9hL1rBA==} engines: {node: '>= 5.10.0'} dependencies: - big-integer: 1.6.51 + big-integer: 1.6.52 /bplist-parser@0.3.2: resolution: {integrity: sha512-apC2+fspHGI3mMKj+dGevkGo/tCqVB8jMb6i+OX+E29p0Iposz07fABkRIfVUPNd5A5VbuOz1bZbnmkKLYF+wQ==} engines: {node: '>= 5.10.0'} dependencies: - big-integer: 1.6.51 + big-integer: 1.6.52 /brace-expansion@1.1.11: resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} @@ -16949,23 +17526,13 @@ packages: semver: 7.5.4 dev: true - /bundle-require@4.0.1(esbuild@0.18.20): - resolution: {integrity: sha512-9NQkRHlNdNpDBGmLpngF3EFDcwodhMUuLz9PaWYciVcQF9SE4LFjM2DB/xV1Li5JiuDMv7ZUWuC3rGbqR0MAXQ==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - peerDependencies: - esbuild: '>=0.17' - dependencies: - esbuild: 0.18.20 - load-tsconfig: 0.2.5 - dev: true - - /bundle-require@4.0.1(esbuild@0.19.5): - resolution: {integrity: sha512-9NQkRHlNdNpDBGmLpngF3EFDcwodhMUuLz9PaWYciVcQF9SE4LFjM2DB/xV1Li5JiuDMv7ZUWuC3rGbqR0MAXQ==} + /bundle-require@4.0.2(esbuild@0.19.12): + resolution: {integrity: sha512-jwzPOChofl67PSTW2SGubV9HBQAhhR2i6nskiOThauo9dzwDUgOWQScFVaJkjEfYX+UXiD+LEx8EblQMc2wIag==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} peerDependencies: esbuild: '>=0.17' dependencies: - esbuild: 0.19.5 + esbuild: 0.19.12 load-tsconfig: 0.2.5 dev: true @@ -16974,7 +17541,6 @@ packages: engines: {node: '>=10.16.0'} dependencies: streamsearch: 1.1.0 - dev: false /bytes@3.0.0: resolution: {integrity: sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==} @@ -17146,8 +17712,8 @@ packages: /ccount@2.0.1: resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} - /chai@4.3.10: - resolution: {integrity: sha512-0UXG04VuVbruMUYbJ6JctvH0YnC/4q3/AkT18q4NaITo91CUm0liMS9VqzT9vZhVQ/1eqPanMWjBM+Juhfb/9g==} + /chai@4.4.1: + resolution: {integrity: sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==} engines: {node: '>=4'} dependencies: assertion-error: 1.1.0 @@ -17249,6 +17815,21 @@ packages: optionalDependencies: fsevents: 2.3.3 + /chokidar@3.6.0: + resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} + engines: {node: '>= 8.10.0'} + dependencies: + anymatch: 3.1.3 + braces: 3.0.2 + glob-parent: 5.1.2 + is-binary-path: 2.1.0 + is-glob: 4.0.3 + normalize-path: 3.0.0 + readdirp: 3.6.0 + optionalDependencies: + fsevents: 2.3.3 + dev: true + /chownr@1.1.4: resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} dev: true @@ -17257,10 +17838,34 @@ packages: resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} engines: {node: '>=10'} + /chrome-launcher@0.15.2: + resolution: {integrity: sha512-zdLEwNo3aUVzIhKhTtXfxhdvZhUghrnmkvcAq2NoDd+LeOHKf03H5jwZ8T/STsAlzyALkBVK552iaG1fGf1xVQ==} + engines: {node: '>=12.13.0'} + hasBin: true + dependencies: + '@types/node': 20.11.25 + escape-string-regexp: 4.0.0 + is-wsl: 2.2.0 + lighthouse-logger: 1.4.2 + transitivePeerDependencies: + - supports-color + /chrome-trace-event@1.0.3: resolution: {integrity: sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==} engines: {node: '>=6.0'} + /chromium-edge-launcher@1.0.0: + resolution: {integrity: sha512-pgtgjNKZ7i5U++1g1PWv75umkHvhVTDOQIZ+sjeUX9483S7Y6MUvO0lrd7ShGlQlFHMN4SwKTCq/X8hWrbv2KA==} + dependencies: + '@types/node': 20.11.25 + escape-string-regexp: 4.0.0 + is-wsl: 2.2.0 + lighthouse-logger: 1.4.2 + mkdirp: 1.0.4 + rimraf: 3.0.2 + transitivePeerDependencies: + - supports-color + /ci-info@2.0.0: resolution: {integrity: sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==} @@ -17354,6 +17959,10 @@ packages: resolution: {integrity: sha512-jHgecW0pxkonBJdrKsqxgRX9AcG+u/5k0Q7WPDfi8AogLAdwxEkyYYNWwZ5GvVFoFx2uiY1eNcSK00fh+1+FyQ==} engines: {node: '>=6'} + /cli-spinners@2.9.2: + resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==} + engines: {node: '>=6'} + /cli-table3@0.6.3: resolution: {integrity: sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==} engines: {node: 10.* || >= 12.*} @@ -17556,9 +18165,6 @@ packages: engines: {node: '>=16'} dev: true - /commander@2.13.0: - resolution: {integrity: sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==} - /commander@2.20.3: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} @@ -17608,9 +18214,11 @@ packages: /compare-versions@3.6.0: resolution: {integrity: sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==} + requiresBuild: true + optional: true - /component-type@1.2.1: - resolution: {integrity: sha512-Kgy+2+Uwr75vAi6ChWXgHuLvd+QLD7ssgpaRq2zCvt80ptvAfMc/hijcJxXkBa2wMlEZcJvC2H8Ubo+A9ATHIg==} + /component-type@1.2.2: + resolution: {integrity: sha512-99VUHREHiN5cLeHm3YLq312p6v+HUEcwtLCAtelvUDI6+SH5g5Cr85oNR2S1o6ywzL0ykMbuwLzM2ANocjEOIA==} /compressible@2.0.18: resolution: {integrity: sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==} @@ -17681,10 +18289,6 @@ packages: write-file-atomic: 3.0.3 xdg-basedir: 5.1.0 - /confusing-browser-globals@1.0.11: - resolution: {integrity: sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA==} - dev: true - /connect-history-api-fallback@2.0.0: resolution: {integrity: sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==} engines: {node: '>=0.8'} @@ -17813,6 +18417,11 @@ packages: dependencies: browserslist: 4.22.1 + /core-js-compat@3.36.0: + resolution: {integrity: sha512-iV9Pd/PsgjNWBXeq8XRtWVSgz2tKAfhfvBs7qxYty+RlRd+OCksaWmOnc4JKrTc1cToXL1N0s3l/vwlxPtdElw==} + dependencies: + browserslist: 4.23.0 + /core-js-pure@3.33.1: resolution: {integrity: sha512-wCXGbLjnsP10PlK/thHSQlOLlLKNEkaWbTzVvHHZ79fZNeN1gUmw2gBlpItxPv/pvqldevEXFh/d5stdNvl6EQ==} requiresBuild: true @@ -17891,6 +18500,22 @@ packages: parse-json: 5.2.0 path-type: 4.0.0 typescript: 5.3.3 + dev: true + + /cosmiconfig@8.3.6(typescript@5.4.2): + resolution: {integrity: sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==} + engines: {node: '>=14'} + peerDependencies: + typescript: '>=4.9.5' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + import-fresh: 3.3.0 + js-yaml: 4.1.0 + parse-json: 5.2.0 + path-type: 4.0.0 + typescript: 5.4.2 /crc-32@1.2.2: resolution: {integrity: sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==} @@ -17934,7 +18559,7 @@ packages: /credential-status@3.0.1: resolution: {integrity: sha512-CXQkxpaymOg92DxbFzYLRhG5HI1ai1e+Ip3XbKV4IsFcuwRgu/hhSAeljSDBgDLgw1yDhZqDLJ+tYWLlydxjeA==} dependencies: - did-jwt: 8.0.0 + did-jwt: 8.0.1 did-resolver: 4.1.0 /credentials-context@2.0.0: @@ -18264,6 +18889,10 @@ packages: /csstype@3.1.2: resolution: {integrity: sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==} + dev: false + + /csstype@3.1.3: + resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} /csv-generate@3.4.3: resolution: {integrity: sha512-w/T+rqR0vwvHqWs/1ZyMDWtHHSJaN06klRqJXBEpDJaM/+dZkso0OKh1VcuuYvK3XM53KysVNq8Ko/epCK8wOw==} @@ -18297,10 +18926,6 @@ packages: /dag-map@1.0.2: resolution: {integrity: sha512-+LSAiGFwQ9dRnRdOeaj7g47ZFJcOUPukAP8J3A3fuZ1g9Y44BG+P1sgApjLXTQPOzC4+7S9Wr8kXsfpINM4jpw==} - /damerau-levenshtein@1.0.8: - resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==} - dev: true - /dargs@8.1.0: resolution: {integrity: sha512-wAV9QHOsNbwnWdNW2FYvE1P56wtgSbM+3SZcdGiWQILwVjACCXDCI3Ai8QlCjMDB8YK5zySiXZYBiwGmNY3lnw==} engines: {node: '>=12'} @@ -18440,6 +19065,7 @@ packages: /deep-is@0.1.4: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} + dev: false /deepmerge@4.3.1: resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} @@ -18535,10 +19161,11 @@ packages: resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} engines: {node: '>= 0.8'} - /deprecated-react-native-prop-types@4.1.0: - resolution: {integrity: sha512-WfepZHmRbbdTvhcolb8aOKEvQdcmTMn5tKLbqbXmkBvjFjRVWAYqsXk/DBsV8TZxws8SdGHLuHaJrHSQUPRdfw==} + /deprecated-react-native-prop-types@5.0.0: + resolution: {integrity: sha512-cIK8KYiiGVOFsKdPMmm1L3tA/Gl+JopXL6F5+C7x39MyPsQYnP57Im/D6bNUzcborD7fcMwiwZqcBdBXXZucYQ==} + engines: {node: '>=18'} dependencies: - '@react-native/normalize-colors': 0.72.0 + '@react-native/normalize-colors': 0.73.2 invariant: 2.2.4 prop-types: 15.8.1 @@ -18562,10 +19189,6 @@ packages: inherits: 2.0.4 minimalistic-assert: 1.0.1 - /desm@1.3.0: - resolution: {integrity: sha512-RvlHN2gfYA0BpCfjpWzCdQeR6p5U+84f5DzcirLow86UA/OcpwuOqXRC4Oz0bG9rzcJPVtMT6ZgNtjp4qh+uqA==} - dev: true - /desm@1.3.1: resolution: {integrity: sha512-vgTAOosB1aHrmzjGnzFCbjvXbk8QAOC/36JxJhcBkeAuUy8QwRFxAWBHemiDpUB3cbrBruFUdzpUS21aocvaWg==} dev: true @@ -18586,11 +19209,6 @@ packages: engines: {node: '>=8'} dev: false - /detect-indent@7.0.1: - resolution: {integrity: sha512-Mc7QhQ8s+cLrnUfU/Ji94vG/r8M26m8f++vyres4ZoojaRDpZ1eSIh/EpzLNwlWuvzSZ3UbDFspjFvTDXe6e/g==} - engines: {node: '>=12.20'} - dev: true - /detect-libc@1.0.3: resolution: {integrity: sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==} engines: {node: '>=0.10'} @@ -18605,11 +19223,6 @@ packages: engines: {node: '>=8'} dev: true - /detect-newline@4.0.1: - resolution: {integrity: sha512-qE3Veg1YXzGHQhlA6jzebZN2qVf6NX+A7m7qlhCGG30dJixrAQhYOsJjsnBjJkCSmuOPpCk30145fr8FV0bzog==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - dev: true - /detect-node-es@1.1.0: resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==} dev: false @@ -18662,7 +19275,7 @@ packages: resolution: {integrity: sha512-lplB8Ksehx1gn/FQZQ8hW+9KziTqOHsNKqIFBIw26n2mCi+mbDJUyAmJ/rqQoN4OOUm97bdI39HS/b8KDE4drg==} engines: {node: '>=18'} dependencies: - did-jwt: 8.0.0 + did-jwt: 8.0.1 did-resolver: 4.1.0 /did-jwt@6.11.6: @@ -18693,8 +19306,8 @@ packages: multiformats: 12.1.3 uint8arrays: 4.0.6 - /did-jwt@8.0.0: - resolution: {integrity: sha512-lJSVC9Ckxl+U+jDPbdATDtXV7CwE0XGT0Js6KNfjRlaj0LTXvDF90IAyayFwLUzO6punA/q3ZHVfTZaYDhHrLw==} + /did-jwt@7.4.7: + resolution: {integrity: sha512-Apz7nIfIHSKWIMaEP5L/K8xkwByvjezjTG0xiqwKdnNj1x8M0+Yasury5Dm/KPltxi2PlGfRPf3IejRKZrT8mQ==} dependencies: '@noble/ciphers': 0.4.0 '@noble/curves': 1.2.0 @@ -18706,9 +19319,35 @@ packages: multiformats: 9.9.0 uint8arrays: 3.1.1 - /did-resolver@4.1.0: - resolution: {integrity: sha512-S6fWHvCXkZg2IhS4RcVHxwuyVejPR7c+a4Go0xbQ9ps5kILa8viiYQgrM4gfTyeTjJ0ekgJH9gk/BawTpmkbZA==} - + /did-jwt@8.0.0: + resolution: {integrity: sha512-lJSVC9Ckxl+U+jDPbdATDtXV7CwE0XGT0Js6KNfjRlaj0LTXvDF90IAyayFwLUzO6punA/q3ZHVfTZaYDhHrLw==} + dependencies: + '@noble/ciphers': 0.4.0 + '@noble/curves': 1.2.0 + '@noble/hashes': 1.3.2 + '@scure/base': 1.1.3 + canonicalize: 2.0.0 + did-resolver: 4.1.0 + multibase: 4.0.6 + multiformats: 9.9.0 + uint8arrays: 3.1.1 + + /did-jwt@8.0.1: + resolution: {integrity: sha512-J3AWsJhf8wJhKBjzCnFn2fgG403TF4uFnj+zpvQnUlMBu6+ySYj6nACFZ6FN+8Coj0kvbdXJermU6hs1Ihx3gA==} + dependencies: + '@noble/ciphers': 0.5.1 + '@noble/curves': 1.3.0 + '@noble/hashes': 1.3.3 + '@scure/base': 1.1.5 + canonicalize: 2.0.0 + did-resolver: 4.1.0 + multibase: 4.0.6 + multiformats: 9.9.0 + uint8arrays: 3.1.1 + + /did-resolver@4.1.0: + resolution: {integrity: sha512-S6fWHvCXkZg2IhS4RcVHxwuyVejPR7c+a4Go0xbQ9ps5kILa8viiYQgrM4gfTyeTjJ0ekgJH9gk/BawTpmkbZA==} + /did-session@2.0.1: resolution: {integrity: sha512-z4Q2cqD1Wtrmd8Hc54Ia1vwAGHg7la1ine+CIle46cn9ccRKMtKpj+CiP/WpI8qJfImVJDTzePoCJ+fh8OI7Qg==} engines: {node: '>=14.14'} @@ -18731,7 +19370,7 @@ packages: '@didtools/pkh-ethereum': 0.3.0 '@stablelib/random': 1.0.2 dag-jose-utils: 3.0.0 - did-jwt: 7.4.4 + did-jwt: 7.4.7 did-resolver: 4.1.0 multiformats: 11.0.2 rpc-utils: 0.6.2 @@ -18779,19 +19418,6 @@ packages: dependencies: '@leichtgewicht/ip-codec': 2.0.4 - /doctrine@2.1.0: - resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} - engines: {node: '>=0.10.0'} - dependencies: - esutils: 2.0.3 - dev: true - - /doctrine@3.0.0: - resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} - engines: {node: '>=6.0.0'} - dependencies: - esutils: 2.0.3 - /dom-converter@0.2.0: resolution: {integrity: sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==} dependencies: @@ -19077,6 +19703,14 @@ packages: graceful-fs: 4.2.11 tapable: 2.2.1 + /enhanced-resolve@5.15.1: + resolution: {integrity: sha512-3d3JRbwsCLJsYgvb6NuWEG44jjPSOMuS73L/6+7BZuoKm3W+qXnSoIYVHi8dG7Qcg4inAY4jbzkZ7MnskePeDg==} + engines: {node: '>=10.13.0'} + dependencies: + graceful-fs: 4.2.11 + tapable: 2.2.1 + dev: true + /enquirer@2.3.6: resolution: {integrity: sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==} engines: {node: '>=8.6'} @@ -19118,6 +19752,12 @@ packages: resolution: {integrity: sha512-ZtUjZO6l5mwTHvc1L9+1q5p/R3wTopcfqMW8r5t8SJSKqeVI/LtajORwRFEKpEFuekjD0VBjwu1HMxL4UalIRw==} engines: {node: '>=4'} hasBin: true + dev: true + + /envinfo@7.11.1: + resolution: {integrity: sha512-8PiZgZNIB4q/Lw4AhOvAfB/ityHAd2bli3lESSWmWSzSsl5dKpy5N1d1Rfkd2teq/g9xN90lc6o98DOjMeYHpg==} + engines: {node: '>=4'} + hasBin: true /eol@0.9.1: resolution: {integrity: sha512-Ds/TEoZjwggRoz/Q2O7SE3i4Jm66mqTDfmdHdq/7DKVk3bro9Q8h6WdXKdPqFLMoqxrDK5SVRzHVPOS6uuGtrg==} @@ -19185,6 +19825,7 @@ packages: typed-array-length: 1.0.4 unbox-primitive: 1.0.2 which-typed-array: 1.1.11 + dev: false /es-abstract@1.22.3: resolution: {integrity: sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==} @@ -19229,29 +19870,15 @@ packages: typed-array-length: 1.0.4 unbox-primitive: 1.0.2 which-typed-array: 1.1.13 - - /es-iterator-helpers@1.0.15: - resolution: {integrity: sha512-GhoY8uYqd6iwUl2kgjTm4CZAf6oo5mHK7BPqx3rKgx893YSsy0LGHV6gfqqQvZt/8xM8xeOnfXBCfqclMKkJ5g==} - dependencies: - asynciterator.prototype: 1.0.0 - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - es-set-tostringtag: 2.0.2 - function-bind: 1.1.2 - get-intrinsic: 1.2.2 - globalthis: 1.0.3 - has-property-descriptors: 1.0.1 - has-proto: 1.0.1 - has-symbols: 1.0.3 - internal-slot: 1.0.6 - iterator.prototype: 1.1.2 - safe-array-concat: 1.0.1 - dev: true + dev: false /es-module-lexer@1.3.1: resolution: {integrity: sha512-JUFAyicQV9mXc3YRxPnDlrfBKpqt6hUYzz9/boprUJHs4e4KVr3XwOF70doO6gwXUor6EWZJAyWAfKki84t20Q==} + /es-module-lexer@1.4.1: + resolution: {integrity: sha512-cXLGjP0c4T3flZJKQSuziYoq7MlT+rnvfZjfp7h+I7K9BNX54kP9nyWvdbwjQ4u1iWbOL4u96fgeZLToQlZC7w==} + dev: true + /es-set-tostringtag@2.0.1: resolution: {integrity: sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==} engines: {node: '>= 0.4'} @@ -19259,6 +19886,7 @@ packages: get-intrinsic: 1.2.1 has: 1.0.3 has-tostringtag: 1.0.0 + dev: false /es-set-tostringtag@2.0.2: resolution: {integrity: sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q==} @@ -19267,551 +19895,156 @@ packages: get-intrinsic: 1.2.2 has-tostringtag: 1.0.0 hasown: 2.0.0 - - /es-shim-unscopables@1.0.2: - resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==} - dependencies: - hasown: 2.0.0 - - /es-to-primitive@1.2.1: - resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} - engines: {node: '>= 0.4'} - dependencies: - is-callable: 1.2.7 - is-date-object: 1.0.5 - is-symbol: 1.0.4 - - /es6-object-assign@1.1.0: - resolution: {integrity: sha512-MEl9uirslVwqQU369iHNWZXsI8yaZYGg/D65aOgZkeyFJwHYSxilf7rQzXKI7DdDuBPrBXbfk3sl9hJhmd5AUw==} - dev: true - - /es6-promise@4.2.8: - resolution: {integrity: sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==} dev: false - /esbuild-loader@4.1.0(webpack@5.89.0): - resolution: {integrity: sha512-543TtIvqbqouEMlOHg4xKoDQkmdImlwIpyAIgpUtDPvMuklU/c2k+Qt2O3VeDBgAwozxmlEbjOzV+F8CZ0g+Bw==} - peerDependencies: - webpack: ^4.40.0 || ^5.0.0 - dependencies: - esbuild: 0.20.1 - get-tsconfig: 4.7.2 - loader-utils: 2.0.4 - webpack: 5.89.0(esbuild@0.19.5)(webpack-cli@5.1.4) - webpack-sources: 1.4.3 - dev: true - - /esbuild@0.18.20: - resolution: {integrity: sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==} - engines: {node: '>=12'} - hasBin: true - requiresBuild: true - optionalDependencies: - '@esbuild/android-arm': 0.18.20 - '@esbuild/android-arm64': 0.18.20 - '@esbuild/android-x64': 0.18.20 - '@esbuild/darwin-arm64': 0.18.20 - '@esbuild/darwin-x64': 0.18.20 - '@esbuild/freebsd-arm64': 0.18.20 - '@esbuild/freebsd-x64': 0.18.20 - '@esbuild/linux-arm': 0.18.20 - '@esbuild/linux-arm64': 0.18.20 - '@esbuild/linux-ia32': 0.18.20 - '@esbuild/linux-loong64': 0.18.20 - '@esbuild/linux-mips64el': 0.18.20 - '@esbuild/linux-ppc64': 0.18.20 - '@esbuild/linux-riscv64': 0.18.20 - '@esbuild/linux-s390x': 0.18.20 - '@esbuild/linux-x64': 0.18.20 - '@esbuild/netbsd-x64': 0.18.20 - '@esbuild/openbsd-x64': 0.18.20 - '@esbuild/sunos-x64': 0.18.20 - '@esbuild/win32-arm64': 0.18.20 - '@esbuild/win32-ia32': 0.18.20 - '@esbuild/win32-x64': 0.18.20 - dev: true - - /esbuild@0.19.5: - resolution: {integrity: sha512-bUxalY7b1g8vNhQKdB24QDmHeY4V4tw/s6Ak5z+jJX9laP5MoQseTOMemAr0gxssjNcH0MCViG8ONI2kksvfFQ==} - engines: {node: '>=12'} - hasBin: true - requiresBuild: true - optionalDependencies: - '@esbuild/android-arm': 0.19.5 - '@esbuild/android-arm64': 0.19.5 - '@esbuild/android-x64': 0.19.5 - '@esbuild/darwin-arm64': 0.19.5 - '@esbuild/darwin-x64': 0.19.5 - '@esbuild/freebsd-arm64': 0.19.5 - '@esbuild/freebsd-x64': 0.19.5 - '@esbuild/linux-arm': 0.19.5 - '@esbuild/linux-arm64': 0.19.5 - '@esbuild/linux-ia32': 0.19.5 - '@esbuild/linux-loong64': 0.19.5 - '@esbuild/linux-mips64el': 0.19.5 - '@esbuild/linux-ppc64': 0.19.5 - '@esbuild/linux-riscv64': 0.19.5 - '@esbuild/linux-s390x': 0.19.5 - '@esbuild/linux-x64': 0.19.5 - '@esbuild/netbsd-x64': 0.19.5 - '@esbuild/openbsd-x64': 0.19.5 - '@esbuild/sunos-x64': 0.19.5 - '@esbuild/win32-arm64': 0.19.5 - '@esbuild/win32-ia32': 0.19.5 - '@esbuild/win32-x64': 0.19.5 - dev: true - - /esbuild@0.20.1: - resolution: {integrity: sha512-OJwEgrpWm/PCMsLVWXKqvcjme3bHNpOgN7Tb6cQnR5n0TPbQx1/Xrn7rqM+wn17bYeT6MGB5sn1Bh5YiGi70nA==} - engines: {node: '>=12'} - hasBin: true - requiresBuild: true - optionalDependencies: - '@esbuild/aix-ppc64': 0.20.1 - '@esbuild/android-arm': 0.20.1 - '@esbuild/android-arm64': 0.20.1 - '@esbuild/android-x64': 0.20.1 - '@esbuild/darwin-arm64': 0.20.1 - '@esbuild/darwin-x64': 0.20.1 - '@esbuild/freebsd-arm64': 0.20.1 - '@esbuild/freebsd-x64': 0.20.1 - '@esbuild/linux-arm': 0.20.1 - '@esbuild/linux-arm64': 0.20.1 - '@esbuild/linux-ia32': 0.20.1 - '@esbuild/linux-loong64': 0.20.1 - '@esbuild/linux-mips64el': 0.20.1 - '@esbuild/linux-ppc64': 0.20.1 - '@esbuild/linux-riscv64': 0.20.1 - '@esbuild/linux-s390x': 0.20.1 - '@esbuild/linux-x64': 0.20.1 - '@esbuild/netbsd-x64': 0.20.1 - '@esbuild/openbsd-x64': 0.20.1 - '@esbuild/sunos-x64': 0.20.1 - '@esbuild/win32-arm64': 0.20.1 - '@esbuild/win32-ia32': 0.20.1 - '@esbuild/win32-x64': 0.20.1 - dev: true - - /escalade@3.1.1: - resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} - engines: {node: '>=6'} - - /escape-goat@4.0.0: - resolution: {integrity: sha512-2Sd4ShcWxbx6OY1IHyla/CVNwvg7XwZVoXZHcSu9w9SReNP1EzzD5T8NWKIR38fIqEns9kDWKUQTXXAmlDrdPg==} - engines: {node: '>=12'} - - /escape-html@1.0.3: - resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==} - - /escape-string-regexp@1.0.5: - resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} - engines: {node: '>=0.8.0'} - - /escape-string-regexp@2.0.0: - resolution: {integrity: sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==} - engines: {node: '>=8'} - - /escape-string-regexp@4.0.0: - resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} - engines: {node: '>=10'} - - /escape-string-regexp@5.0.0: - resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} - engines: {node: '>=12'} - - /escodegen@1.14.3: - resolution: {integrity: sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==} - engines: {node: '>=4.0'} - hasBin: true - dependencies: - esprima: 4.0.1 - estraverse: 4.3.0 - esutils: 2.0.3 - optionator: 0.8.3 - optionalDependencies: - source-map: 0.6.1 - dev: false - - /eslint-config-airbnb-base@15.0.0(eslint-plugin-import@2.29.1)(eslint@8.57.0): - resolution: {integrity: sha512-xaX3z4ZZIcFLvh2oUNvcX5oEofXda7giYmuplVxoOg5A7EXJMrUyqRgR+mhDhPK8LZ4PttFOBvCYDbX3sUoUig==} - engines: {node: ^10.12.0 || >=12.0.0} - peerDependencies: - eslint: ^7.32.0 || ^8.2.0 - eslint-plugin-import: ^2.25.2 - dependencies: - confusing-browser-globals: 1.0.11 - eslint: 8.57.0 - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.1.1)(eslint@8.57.0) - object.assign: 4.1.4 - object.entries: 1.1.6 - semver: 6.3.1 - dev: true - - /eslint-config-airbnb-typescript@18.0.0(@typescript-eslint/eslint-plugin@7.1.1)(@typescript-eslint/parser@7.1.1)(eslint-plugin-import@2.29.1)(eslint@8.57.0): - resolution: {integrity: sha512-oc+Lxzgzsu8FQyFVa4QFaVKiitTYiiW3frB9KYW5OWdPrqFc7FzxgB20hP4cHMlr+MBzGcLl3jnCOVOydL9mIg==} - peerDependencies: - '@typescript-eslint/eslint-plugin': ^7.0.0 - '@typescript-eslint/parser': ^7.0.0 - eslint: ^8.56.0 - dependencies: - '@typescript-eslint/eslint-plugin': 7.1.1(@typescript-eslint/parser@7.1.1)(eslint@8.57.0)(typescript@5.3.3) - '@typescript-eslint/parser': 7.1.1(eslint@8.57.0)(typescript@5.3.3) - eslint: 8.57.0 - eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.29.1)(eslint@8.57.0) - transitivePeerDependencies: - - eslint-plugin-import - dev: true - - /eslint-config-next@14.1.3(eslint@8.57.0)(typescript@5.3.3): - resolution: {integrity: sha512-sUCpWlGuHpEhI0pIT0UtdSLJk5Z8E2DYinPTwsBiWaSYQomchdl0i60pjynY48+oXvtyWMQ7oE+G3m49yrfacg==} - peerDependencies: - eslint: ^7.23.0 || ^8.0.0 - typescript: '>=3.3.1' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - '@next/eslint-plugin-next': 14.1.3 - '@rushstack/eslint-patch': 1.5.1 - '@typescript-eslint/parser': 6.9.0(eslint@8.57.0)(typescript@5.3.3) - eslint: 8.57.0 - eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@6.9.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.1.1)(eslint@8.57.0) - eslint-plugin-jsx-a11y: 6.7.1(eslint@8.57.0) - eslint-plugin-react: 7.33.2(eslint@8.57.0) - eslint-plugin-react-hooks: 4.6.0(eslint@8.57.0) - typescript: 5.3.3 - transitivePeerDependencies: - - eslint-import-resolver-webpack - - supports-color - dev: true - - /eslint-config-prettier@9.1.0(eslint@8.57.0): - resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==} - hasBin: true - peerDependencies: - eslint: '>=7.0.0' - dependencies: - eslint: 8.57.0 - dev: true - - /eslint-import-resolver-node@0.3.9: - resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} - dependencies: - debug: 3.2.7 - is-core-module: 2.13.1 - resolve: 1.22.8 - transitivePeerDependencies: - - supports-color - dev: true - - /eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.9.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0): - resolution: {integrity: sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==} - engines: {node: ^14.18.0 || >=16.0.0} - peerDependencies: - eslint: '*' - eslint-plugin-import: '*' - dependencies: - debug: 4.3.4 - enhanced-resolve: 5.15.0 - eslint: 8.57.0 - eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.9.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.1.1)(eslint@8.57.0) - fast-glob: 3.3.1 - get-tsconfig: 4.7.2 - is-core-module: 2.13.1 - is-glob: 4.0.3 - transitivePeerDependencies: - - '@typescript-eslint/parser' - - eslint-import-resolver-node - - eslint-import-resolver-webpack - - supports-color - dev: true - - /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.9.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0): - resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==} - engines: {node: '>=4'} - peerDependencies: - '@typescript-eslint/parser': '*' - eslint: '*' - eslint-import-resolver-node: '*' - eslint-import-resolver-typescript: '*' - eslint-import-resolver-webpack: '*' - peerDependenciesMeta: - '@typescript-eslint/parser': - optional: true - eslint: - optional: true - eslint-import-resolver-node: - optional: true - eslint-import-resolver-typescript: - optional: true - eslint-import-resolver-webpack: - optional: true - dependencies: - '@typescript-eslint/parser': 6.9.0(eslint@8.57.0)(typescript@5.3.3) - debug: 3.2.7 - eslint: 8.57.0 - eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@6.9.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0) - transitivePeerDependencies: - - supports-color - dev: true - - /eslint-module-utils@2.8.0(@typescript-eslint/parser@7.1.1)(eslint-import-resolver-node@0.3.9)(eslint@8.57.0): - resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==} - engines: {node: '>=4'} - peerDependencies: - '@typescript-eslint/parser': '*' - eslint: '*' - eslint-import-resolver-node: '*' - eslint-import-resolver-typescript: '*' - eslint-import-resolver-webpack: '*' - peerDependenciesMeta: - '@typescript-eslint/parser': - optional: true - eslint: - optional: true - eslint-import-resolver-node: - optional: true - eslint-import-resolver-typescript: - optional: true - eslint-import-resolver-webpack: - optional: true - dependencies: - '@typescript-eslint/parser': 7.1.1(eslint@8.57.0)(typescript@5.3.3) - debug: 3.2.7 - eslint: 8.57.0 - eslint-import-resolver-node: 0.3.9 - transitivePeerDependencies: - - supports-color - dev: true - - /eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.1.1)(eslint@8.57.0): - resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==} - engines: {node: '>=4'} - peerDependencies: - '@typescript-eslint/parser': '*' - eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 - peerDependenciesMeta: - '@typescript-eslint/parser': - optional: true - dependencies: - '@typescript-eslint/parser': 7.1.1(eslint@8.57.0)(typescript@5.3.3) - array-includes: 3.1.7 - array.prototype.findlastindex: 1.2.3 - array.prototype.flat: 1.3.2 - array.prototype.flatmap: 1.3.2 - debug: 3.2.7 - doctrine: 2.1.0 - eslint: 8.57.0 - eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.8.0(@typescript-eslint/parser@7.1.1)(eslint-import-resolver-node@0.3.9)(eslint@8.57.0) - hasown: 2.0.0 - is-core-module: 2.13.1 - is-glob: 4.0.3 - minimatch: 3.1.2 - object.fromentries: 2.0.7 - object.groupby: 1.0.1 - object.values: 1.1.7 - semver: 6.3.1 - tsconfig-paths: 3.15.0 - transitivePeerDependencies: - - eslint-import-resolver-typescript - - eslint-import-resolver-webpack - - supports-color - dev: true - - /eslint-plugin-jest-extended@2.0.0(eslint@8.57.0)(typescript@5.3.3): - resolution: {integrity: sha512-nMhVVsVcG/+Q6FMshql35WBxwx8xlBhxKgAG08WP3BYWfXrp28oxLpJVu9JSbMpfmfKGVrHwMYJGfPLRKlGB8w==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - peerDependencies: - eslint: ^7.0.0 || ^8.0.0 - dependencies: - '@typescript-eslint/utils': 5.62.0(eslint@8.57.0)(typescript@5.3.3) - eslint: 8.57.0 - transitivePeerDependencies: - - supports-color - - typescript - dev: true - - /eslint-plugin-jest@27.9.0(@typescript-eslint/eslint-plugin@7.1.1)(eslint@8.57.0)(typescript@5.3.3): - resolution: {integrity: sha512-QIT7FH7fNmd9n4se7FFKHbsLKGQiw885Ds6Y/sxKgCZ6natwCsXdgPOADnYVxN2QrRweF0FZWbJ6S7Rsn7llug==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - peerDependencies: - '@typescript-eslint/eslint-plugin': ^5.0.0 || ^6.0.0 || ^7.0.0 - eslint: ^7.0.0 || ^8.0.0 - jest: '*' - peerDependenciesMeta: - '@typescript-eslint/eslint-plugin': - optional: true - jest: - optional: true - dependencies: - '@typescript-eslint/eslint-plugin': 7.1.1(@typescript-eslint/parser@7.1.1)(eslint@8.57.0)(typescript@5.3.3) - '@typescript-eslint/utils': 5.62.0(eslint@8.57.0)(typescript@5.3.3) - eslint: 8.57.0 - transitivePeerDependencies: - - supports-color - - typescript - dev: true - - /eslint-plugin-jsx-a11y@6.7.1(eslint@8.57.0): - resolution: {integrity: sha512-63Bog4iIethyo8smBklORknVjB0T2dwB8Mr/hIC+fBS0uyHdYYpzM/Ed+YC8VxTjlXHEWFOdmgwcDn1U2L9VCA==} - engines: {node: '>=4.0'} - peerDependencies: - eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 + /es-shim-unscopables@1.0.2: + resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==} dependencies: - '@babel/runtime': 7.23.2 - aria-query: 5.3.0 - array-includes: 3.1.7 - array.prototype.flatmap: 1.3.2 - ast-types-flow: 0.0.7 - axe-core: 4.8.2 - axobject-query: 3.2.1 - damerau-levenshtein: 1.0.8 - emoji-regex: 9.2.2 - eslint: 8.57.0 - has: 1.0.4 - jsx-ast-utils: 3.3.5 - language-tags: 1.0.5 - minimatch: 3.1.2 - object.entries: 1.1.7 - object.fromentries: 2.0.7 - semver: 6.3.1 - dev: true + hasown: 2.0.0 + dev: false - /eslint-plugin-react-hooks@4.6.0(eslint@8.57.0): - resolution: {integrity: sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==} - engines: {node: '>=10'} - peerDependencies: - eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 + /es-to-primitive@1.2.1: + resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} + engines: {node: '>= 0.4'} dependencies: - eslint: 8.57.0 + is-callable: 1.2.7 + is-date-object: 1.0.5 + is-symbol: 1.0.4 + dev: false + + /es6-object-assign@1.1.0: + resolution: {integrity: sha512-MEl9uirslVwqQU369iHNWZXsI8yaZYGg/D65aOgZkeyFJwHYSxilf7rQzXKI7DdDuBPrBXbfk3sl9hJhmd5AUw==} dev: true - /eslint-plugin-react@7.33.2(eslint@8.57.0): - resolution: {integrity: sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==} - engines: {node: '>=4'} + /es6-promise@4.2.8: + resolution: {integrity: sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==} + dev: false + + /esbuild-loader@4.1.0(webpack@5.90.3): + resolution: {integrity: sha512-543TtIvqbqouEMlOHg4xKoDQkmdImlwIpyAIgpUtDPvMuklU/c2k+Qt2O3VeDBgAwozxmlEbjOzV+F8CZ0g+Bw==} peerDependencies: - eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 + webpack: ^4.40.0 || ^5.0.0 dependencies: - array-includes: 3.1.7 - array.prototype.flatmap: 1.3.2 - array.prototype.tosorted: 1.1.2 - doctrine: 2.1.0 - es-iterator-helpers: 1.0.15 - eslint: 8.57.0 - estraverse: 5.3.0 - jsx-ast-utils: 3.3.5 - minimatch: 3.1.2 - object.entries: 1.1.7 - object.fromentries: 2.0.7 - object.hasown: 1.1.3 - object.values: 1.1.7 - prop-types: 15.8.1 - resolve: 2.0.0-next.5 - semver: 6.3.1 - string.prototype.matchall: 4.0.10 + esbuild: 0.20.1 + get-tsconfig: 4.7.2 + loader-utils: 2.0.4 + webpack: 5.90.3(esbuild@0.19.12)(webpack-cli@5.1.4) + webpack-sources: 1.4.3 dev: true - /eslint-plugin-unused-imports@3.1.0(@typescript-eslint/eslint-plugin@7.1.1)(eslint@8.57.0): - resolution: {integrity: sha512-9l1YFCzXKkw1qtAru1RWUtG2EVDZY0a0eChKXcL+EZ5jitG7qxdctu4RnvhOJHv4xfmUf7h+JJPINlVpGhZMrw==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - '@typescript-eslint/eslint-plugin': 6 - 7 - eslint: '8' - peerDependenciesMeta: - '@typescript-eslint/eslint-plugin': - optional: true - dependencies: - '@typescript-eslint/eslint-plugin': 7.1.1(@typescript-eslint/parser@7.1.1)(eslint@8.57.0)(typescript@5.3.3) - eslint: 8.57.0 - eslint-rule-composer: 0.3.0 + /esbuild@0.19.12: + resolution: {integrity: sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg==} + engines: {node: '>=12'} + hasBin: true + requiresBuild: true + optionalDependencies: + '@esbuild/aix-ppc64': 0.19.12 + '@esbuild/android-arm': 0.19.12 + '@esbuild/android-arm64': 0.19.12 + '@esbuild/android-x64': 0.19.12 + '@esbuild/darwin-arm64': 0.19.12 + '@esbuild/darwin-x64': 0.19.12 + '@esbuild/freebsd-arm64': 0.19.12 + '@esbuild/freebsd-x64': 0.19.12 + '@esbuild/linux-arm': 0.19.12 + '@esbuild/linux-arm64': 0.19.12 + '@esbuild/linux-ia32': 0.19.12 + '@esbuild/linux-loong64': 0.19.12 + '@esbuild/linux-mips64el': 0.19.12 + '@esbuild/linux-ppc64': 0.19.12 + '@esbuild/linux-riscv64': 0.19.12 + '@esbuild/linux-s390x': 0.19.12 + '@esbuild/linux-x64': 0.19.12 + '@esbuild/netbsd-x64': 0.19.12 + '@esbuild/openbsd-x64': 0.19.12 + '@esbuild/sunos-x64': 0.19.12 + '@esbuild/win32-arm64': 0.19.12 + '@esbuild/win32-ia32': 0.19.12 + '@esbuild/win32-x64': 0.19.12 dev: true - /eslint-rule-composer@0.3.0: - resolution: {integrity: sha512-bt+Sh8CtDmn2OajxvNO+BX7Wn4CIWMpTRm3MaiKPCQcnnlm0CS2mhui6QaoeQugs+3Kj2ESKEEGJUdVafwhiCg==} - engines: {node: '>=4.0.0'} + /esbuild@0.20.1: + resolution: {integrity: sha512-OJwEgrpWm/PCMsLVWXKqvcjme3bHNpOgN7Tb6cQnR5n0TPbQx1/Xrn7rqM+wn17bYeT6MGB5sn1Bh5YiGi70nA==} + engines: {node: '>=12'} + hasBin: true + requiresBuild: true + optionalDependencies: + '@esbuild/aix-ppc64': 0.20.1 + '@esbuild/android-arm': 0.20.1 + '@esbuild/android-arm64': 0.20.1 + '@esbuild/android-x64': 0.20.1 + '@esbuild/darwin-arm64': 0.20.1 + '@esbuild/darwin-x64': 0.20.1 + '@esbuild/freebsd-arm64': 0.20.1 + '@esbuild/freebsd-x64': 0.20.1 + '@esbuild/linux-arm': 0.20.1 + '@esbuild/linux-arm64': 0.20.1 + '@esbuild/linux-ia32': 0.20.1 + '@esbuild/linux-loong64': 0.20.1 + '@esbuild/linux-mips64el': 0.20.1 + '@esbuild/linux-ppc64': 0.20.1 + '@esbuild/linux-riscv64': 0.20.1 + '@esbuild/linux-s390x': 0.20.1 + '@esbuild/linux-x64': 0.20.1 + '@esbuild/netbsd-x64': 0.20.1 + '@esbuild/openbsd-x64': 0.20.1 + '@esbuild/sunos-x64': 0.20.1 + '@esbuild/win32-arm64': 0.20.1 + '@esbuild/win32-ia32': 0.20.1 + '@esbuild/win32-x64': 0.20.1 dev: true - /eslint-scope@5.1.1: - resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} - engines: {node: '>=8.0.0'} - dependencies: - esrecurse: 4.3.0 - estraverse: 4.3.0 + /escalade@3.1.1: + resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} + engines: {node: '>=6'} - /eslint-scope@7.2.2: - resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - esrecurse: 4.3.0 - estraverse: 5.3.0 + /escape-goat@4.0.0: + resolution: {integrity: sha512-2Sd4ShcWxbx6OY1IHyla/CVNwvg7XwZVoXZHcSu9w9SReNP1EzzD5T8NWKIR38fIqEns9kDWKUQTXXAmlDrdPg==} + engines: {node: '>=12'} - /eslint-visitor-keys@3.4.3: - resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + /escape-html@1.0.3: + resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==} - /eslint@8.57.0: - resolution: {integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + /escape-string-regexp@1.0.5: + resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} + engines: {node: '>=0.8.0'} + + /escape-string-regexp@2.0.0: + resolution: {integrity: sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==} + engines: {node: '>=8'} + + /escape-string-regexp@4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + + /escape-string-regexp@5.0.0: + resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} + engines: {node: '>=12'} + + /escodegen@1.14.3: + resolution: {integrity: sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==} + engines: {node: '>=4.0'} hasBin: true dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - '@eslint-community/regexpp': 4.10.0 - '@eslint/eslintrc': 2.1.4 - '@eslint/js': 8.57.0 - '@humanwhocodes/config-array': 0.11.14 - '@humanwhocodes/module-importer': 1.0.1 - '@nodelib/fs.walk': 1.2.8 - '@ungap/structured-clone': 1.2.0 - ajv: 6.12.6 - chalk: 4.1.2 - cross-spawn: 7.0.3 - debug: 4.3.4 - doctrine: 3.0.0 - escape-string-regexp: 4.0.0 - eslint-scope: 7.2.2 - eslint-visitor-keys: 3.4.3 - espree: 9.6.1 - esquery: 1.5.0 + esprima: 4.0.1 + estraverse: 4.3.0 esutils: 2.0.3 - fast-deep-equal: 3.1.3 - file-entry-cache: 6.0.1 - find-up: 5.0.0 - glob-parent: 6.0.2 - globals: 13.24.0 - graphemer: 1.4.0 - ignore: 5.3.0 - imurmurhash: 0.1.4 - is-glob: 4.0.3 - is-path-inside: 3.0.3 - js-yaml: 4.1.0 - json-stable-stringify-without-jsonify: 1.0.1 - levn: 0.4.1 - lodash.merge: 4.6.2 - minimatch: 3.1.2 - natural-compare: 1.4.0 - optionator: 0.9.3 - strip-ansi: 6.0.1 - text-table: 0.2.0 - transitivePeerDependencies: - - supports-color + optionator: 0.8.3 + optionalDependencies: + source-map: 0.6.1 + dev: false + + /eslint-scope@5.1.1: + resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} + engines: {node: '>=8.0.0'} + dependencies: + esrecurse: 4.3.0 + estraverse: 4.3.0 /esm@3.2.25: resolution: {integrity: sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==} engines: {node: '>=6'} - /espree@9.6.1: - resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - acorn: 8.11.2 - acorn-jsx: 5.3.2(acorn@8.11.2) - eslint-visitor-keys: 3.4.3 - /esprima@1.2.2: resolution: {integrity: sha512-+JpPZam9w5DuJ3Q67SqsMGtiHKENSMRVoxvArfJZK01/BfLEObtZ6orJa/MtoGNR/rfMgp5837T41PAmTwAv/A==} engines: {node: '>=0.4.0'} @@ -19828,6 +20061,7 @@ packages: engines: {node: '>=0.10'} dependencies: estraverse: 5.3.0 + dev: true /esrecurse@4.3.0: resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} @@ -20090,7 +20324,7 @@ packages: /ethr-did@3.0.12: resolution: {integrity: sha512-g+h1Y6GtYrXGrE3R9qlLdeP3N8BLHmPxXy2adysRjl2seluGne+C42yL1p+m3zdCiuznu8UvtkzZXcIVzBGhSw==} dependencies: - did-jwt: 7.4.4 + did-jwt: 7.4.7 did-resolver: 4.1.0 ethers: 6.11.1 ethr-did-resolver: 10.1.3 @@ -20193,68 +20427,59 @@ packages: jest-util: 29.7.0 dev: true - /expo-application@5.3.1(expo@49.0.16): - resolution: {integrity: sha512-HR2+K+Hm33vLw/TfbFaHrvUbRRNRco8R+3QaCKy7eJC2LFfT05kZ15ynGaKfB5DJ/oqPV3mxXVR/EfwmE++hoA==} - peerDependencies: - expo: '*' - dependencies: - expo: 49.0.16(@babel/core@7.23.2)(encoding@0.1.13) - - /expo-asset@8.10.1(expo@49.0.16): - resolution: {integrity: sha512-5VMTESxgY9GBsspO/esY25SKEa7RyascVkLe/OcL1WgblNFm7xCCEEUIW8VWS1nHJQGYxpMZPr3bEfjMpdWdyA==} + /expo-asset@9.0.2(expo@50.0.11): + resolution: {integrity: sha512-PzYKME1MgUOoUvwtdzhAyXkjXOXGiSYqGKG/MsXwWr0Ef5wlBaBm2DCO9V6KYbng5tBPFu6hTjoRNil1tBOSow==} dependencies: + '@react-native/assets-registry': 0.73.1 blueimp-md5: 2.19.0 - expo-constants: 14.4.2(expo@49.0.16) - expo-file-system: 15.4.4(expo@49.0.16) + expo-constants: 15.4.5(expo@50.0.11) + expo-file-system: 16.0.8(expo@50.0.11) invariant: 2.2.4 md5-file: 3.2.3 - path-browserify: 1.0.1 - url-parse: 1.5.10 transitivePeerDependencies: - expo - supports-color - /expo-constants@14.4.2(expo@49.0.16): - resolution: {integrity: sha512-nOB122DOAjk+KrJT69lFQAoYVQGQjFHSigCPVBzVdko9S1xGsfiOH9+X5dygTsZTIlVLpQJDdmZ7ONiv3i+26w==} + /expo-constants@15.4.5(expo@50.0.11): + resolution: {integrity: sha512-1pVVjwk733hbbIjtQcvUFCme540v4gFemdNlaxM2UXKbfRCOh2hzgKN5joHMOysoXQe736TTUrRj7UaZI5Yyhg==} peerDependencies: expo: '*' dependencies: - '@expo/config': 8.1.2 - expo: 49.0.16(@babel/core@7.23.2)(encoding@0.1.13) - uuid: 3.4.0 + '@expo/config': 8.5.4 + expo: 50.0.11(@babel/core@7.24.0)(@react-native/babel-preset@0.73.21)(encoding@0.1.13) transitivePeerDependencies: - supports-color - /expo-crypto@12.8.1(expo@49.0.16): + /expo-crypto@12.8.1(expo@50.0.11): resolution: {integrity: sha512-EJEzmfBUSkGfALTlZRKUbh1RMKF7mWI12vkhO2w6bhGO4bjgGB8XzUHgLfrvSjphDFMx/lwaR6bAQDmXKO9UkQ==} peerDependencies: expo: '*' dependencies: base64-js: 1.5.1 - expo: 49.0.16(@babel/core@7.23.2)(encoding@0.1.13) + expo: 50.0.11(@babel/core@7.24.0)(@react-native/babel-preset@0.73.21)(encoding@0.1.13) + dev: false - /expo-file-system@15.4.4(expo@49.0.16): - resolution: {integrity: sha512-F0xS88D85F7qVQ61r0qBnzh6VW/s6iIl+VaQEEi2nAIOQHw1JIEj4yCXPLTtbyn5VmArbe2dSL3KYz1V+BLkKA==} + /expo-file-system@16.0.8(expo@50.0.11): + resolution: {integrity: sha512-yDbVT0TUKd7ewQjaY5THum2VRFx2n/biskGhkUmLh3ai21xjIVtaeIzHXyv9ir537eVgt4ReqDNWi7jcXjdUcA==} peerDependencies: expo: '*' dependencies: - expo: 49.0.16(@babel/core@7.23.2)(encoding@0.1.13) - uuid: 3.4.0 + expo: 50.0.11(@babel/core@7.24.0)(@react-native/babel-preset@0.73.21)(encoding@0.1.13) - /expo-font@11.4.0(expo@49.0.16): - resolution: {integrity: sha512-nkmezCFD7gR/I6R+e3/ry18uEfF8uYrr6h+PdBJu+3dawoLOpo+wFb/RG9bHUekU1/cPanR58LR7G5MEMKHR2w==} + /expo-font@11.10.3(expo@50.0.11): + resolution: {integrity: sha512-q1Td2zUvmLbCA9GV4OG4nLPw5gJuNY1VrPycsnemN1m8XWTzzs8nyECQQqrcBhgulCgcKZZJJ6U0kC2iuSoQHQ==} peerDependencies: expo: '*' dependencies: - expo: 49.0.16(@babel/core@7.23.2)(encoding@0.1.13) + expo: 50.0.11(@babel/core@7.24.0)(@react-native/babel-preset@0.73.21)(encoding@0.1.13) fontfaceobserver: 2.3.0 - /expo-keep-awake@12.3.0(expo@49.0.16): - resolution: {integrity: sha512-ujiJg1p9EdCOYS05jh5PtUrfiZnK0yyLy+UewzqrjUqIT8eAGMQbkfOn3C3fHE7AKd5AefSMzJnS3lYZcZYHDw==} + /expo-keep-awake@12.8.2(expo@50.0.11): + resolution: {integrity: sha512-uiQdGbSX24Pt8nGbnmBtrKq6xL/Tm3+DuDRGBk/3ZE/HlizzNosGRIufIMJ/4B4FRw4dw8KU81h2RLuTjbay6g==} peerDependencies: expo: '*' dependencies: - expo: 49.0.16(@babel/core@7.23.2)(encoding@0.1.13) + expo: 50.0.11(@babel/core@7.24.0)(@react-native/babel-preset@0.73.21)(encoding@0.1.13) /expo-modules-autolinking@0.0.3: resolution: {integrity: sha512-azkCRYj/DxbK4udDuDxA9beYzQTwpJ5a9QA0bBgha2jHtWdFGF4ZZWSY+zNA5mtU3KqzYt8jWHfoqgSvKyu1Aw==} @@ -20268,61 +20493,56 @@ packages: fs-extra: 9.1.0 optional: true - /expo-modules-autolinking@1.5.1: - resolution: {integrity: sha512-yt5a1VCp2BF9CrsO689PCD5oXKP14MMhnOanQMvDn4BDpURYfzAlDVGC5fZrNQKtwn/eq3bcrxIwZ7D9QjVVRg==} + /expo-modules-autolinking@1.10.3: + resolution: {integrity: sha512-pn4n2Dl4iRh/zUeiChjRIe1C7EqOw1qhccr85viQV7W6l5vgRpY0osE51ij5LKg/kJmGRcJfs12+PwbdTplbKw==} hasBin: true dependencies: - '@expo/config': 8.1.2 + '@expo/config': 8.5.4 chalk: 4.1.2 commander: 7.2.0 - fast-glob: 3.3.1 + fast-glob: 3.3.2 find-up: 5.0.0 fs-extra: 9.1.0 transitivePeerDependencies: - supports-color - /expo-modules-core@1.5.11: - resolution: {integrity: sha512-1Dj2t74nVjxq6xEQf2b9WFfAMhPzVnR0thY0PfRFgob4STyj3sq1U4PIHVWvKQBtDKIa227DrNRb+Hu+LqKWQg==} + /expo-modules-core@1.11.10: + resolution: {integrity: sha512-L1DSxV3AUnEvR8+G1JHbMPjpwqALv0AF71oREhDJ/ehI2TDX6LkE+up5BUK1/++UjmVu1lviefbUfLut2F5wNQ==} dependencies: - compare-versions: 3.6.0 invariant: 2.2.4 - /expo-random@13.4.0(expo@49.0.16): - resolution: {integrity: sha512-Z/Bbd+1MbkK8/4ukspgA3oMlcu0q3YTCu//7q2xHwy35huN6WCv4/Uw2OGyCiOQjAbU02zwq6swA+VgVmJRCEw==} + /expo-random@13.6.0(expo@50.0.11): + resolution: {integrity: sha512-c4Ikio+a2sUyJC0386K6JplqjVDelsyqQfjiy4yCx+0epEu44AP99ipF+HsmZVOvsWsWkd/lkpq5kGnJON5EfA==} requiresBuild: true peerDependencies: expo: '*' dependencies: base64-js: 1.5.1 - expo: 49.0.16(@babel/core@7.23.2)(encoding@0.1.13) + expo: 50.0.11(@babel/core@7.24.0)(@react-native/babel-preset@0.73.21)(encoding@0.1.13) optional: true - /expo@49.0.16(@babel/core@7.23.2)(encoding@0.1.13): - resolution: {integrity: sha512-1TcpWUEpzCQ7FjtwO1j+l/UvNgrEDZWfQm4kOo9eVZVDNKavYo+KL4XXHeljSAOOGhI/plmpD3bvhfYoywOAFQ==} + /expo@50.0.11(@babel/core@7.24.0)(@react-native/babel-preset@0.73.21)(encoding@0.1.13): + resolution: {integrity: sha512-XEq8By1l8FQo2SEzhXfQEoKBd0nZ9j6HKsDzj1dUrRVYd02SMH/xUCERxuRaWUL2u1bWdfaFlg/Dmc/2JlVkKQ==} hasBin: true dependencies: - '@babel/runtime': 7.23.2 - '@expo/cli': 0.10.14(encoding@0.1.13)(expo-modules-autolinking@1.5.1) - '@expo/config': 8.1.2 - '@expo/config-plugins': 7.2.5 - '@expo/vector-icons': 13.0.0 - babel-preset-expo: 9.5.2(@babel/core@7.23.2) - expo-application: 5.3.1(expo@49.0.16) - expo-asset: 8.10.1(expo@49.0.16) - expo-constants: 14.4.2(expo@49.0.16) - expo-file-system: 15.4.4(expo@49.0.16) - expo-font: 11.4.0(expo@49.0.16) - expo-keep-awake: 12.3.0(expo@49.0.16) - expo-modules-autolinking: 1.5.1 - expo-modules-core: 1.5.11 + '@babel/runtime': 7.24.0 + '@expo/cli': 0.17.7(@react-native/babel-preset@0.73.21)(encoding@0.1.13)(expo-modules-autolinking@1.10.3) + '@expo/config': 8.5.4 + '@expo/config-plugins': 7.8.4 + '@expo/metro-config': 0.17.6(@react-native/babel-preset@0.73.21) + '@expo/vector-icons': 14.0.0 + babel-preset-expo: 10.0.1(@babel/core@7.24.0) + expo-asset: 9.0.2(expo@50.0.11) + expo-file-system: 16.0.8(expo@50.0.11) + expo-font: 11.10.3(expo@50.0.11) + expo-keep-awake: 12.8.2(expo@50.0.11) + expo-modules-autolinking: 1.10.3 + expo-modules-core: 1.11.10 fbemitter: 3.0.0(encoding@0.1.13) - invariant: 2.2.4 - md5-file: 3.2.3 - node-fetch: 2.7.0(encoding@0.1.13) - pretty-format: 26.6.2 - uuid: 3.4.0 + whatwg-url-without-unicode: 8.0.0-3 transitivePeerDependencies: - '@babel/core' + - '@react-native/babel-preset' - bluebird - bufferutil - encoding @@ -20443,6 +20663,16 @@ packages: merge2: 1.4.1 micromatch: 4.0.5 + /fast-glob@3.3.2: + resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} + engines: {node: '>=8.6.0'} + dependencies: + '@nodelib/fs.stat': 2.0.5 + '@nodelib/fs.walk': 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.5 + /fast-json-patch@3.1.1: resolution: {integrity: sha512-vf6IHUX2SBcA+5/+4883dsIjpBTqmfBjmYiWK1savxQmFk4JfBMLa7ynTYOs1Rolp/T1betJxHiGD3g1Mn8lUQ==} dev: false @@ -20452,6 +20682,7 @@ packages: /fast-levenshtein@2.0.6: resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} + dev: false /fast-redact@3.3.0: resolution: {integrity: sha512-6T5V1QK1u4oF+ATxs1lWUmlEk6P2T9HqJG3e2DnHOdVgZy2rFJBoEnrIedcTXlkAHU/zKC+7KETJ+KGGKwxgMQ==} @@ -20475,6 +20706,12 @@ packages: dependencies: strnum: 1.0.5 + /fast-xml-parser@4.3.5: + resolution: {integrity: sha512-sWvP1Pl8H03B8oFJpFR3HE31HUfwtX7Rlf9BNsvdpujD4n7WMhfmu8h9wOV2u+c1k0ZilTADhPqypzx2J690ZQ==} + hasBin: true + dependencies: + strnum: 1.0.5 + /fastest-levenshtein@1.0.16: resolution: {integrity: sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==} engines: {node: '>= 4.9.1'} @@ -20525,7 +20762,7 @@ packages: object-assign: 4.1.1 promise: 7.3.1 setimmediate: 1.0.5 - ua-parser-js: 1.0.36 + ua-parser-js: 1.0.37 transitivePeerDependencies: - encoding @@ -20581,12 +20818,6 @@ packages: dependencies: escape-string-regexp: 1.0.5 - /file-entry-cache@6.0.1: - resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} - engines: {node: ^10.12.0 || >=12.0.0} - dependencies: - flat-cache: 3.2.0 - /file-loader@6.2.0(webpack@5.89.0): resolution: {integrity: sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==} engines: {node: '>= 10.13.0'} @@ -20653,13 +20884,6 @@ packages: transitivePeerDependencies: - supports-color - /find-babel-config@2.0.0: - resolution: {integrity: sha512-dOKT7jvF3hGzlW60Gc3ONox/0rRZ/tz7WCil0bqA1In/3I8f1BctpXahRnEKDySZqci7u+dqq93sZST9fOJpFw==} - engines: {node: '>=16.0.0'} - dependencies: - json5: 2.2.3 - path-exists: 4.0.0 - /find-cache-dir@2.1.0: resolution: {integrity: sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==} engines: {node: '>=6'} @@ -20736,23 +20960,12 @@ packages: transitivePeerDependencies: - supports-color - /flat-cache@3.2.0: - resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==} - engines: {node: ^10.12.0 || >=12.0.0} - dependencies: - flatted: 3.2.9 - keyv: 4.5.4 - rimraf: 3.0.2 - /flat@5.0.2: resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==} hasBin: true - /flatted@3.2.9: - resolution: {integrity: sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==} - - /flow-enums-runtime@0.0.5: - resolution: {integrity: sha512-PSZF9ZuaZD03sT9YaIs0FrGJ7lSUw7rHZIex+73UYVXg46eL/wxN5PaVcPJFudE2cJu5f0fezitV5aBkLHPUOQ==} + /flow-enums-runtime@0.0.6: + resolution: {integrity: sha512-3PYnM29RFXwvAN6Pc/scUfkI7RwhQ/xqyLUyPNlXUp9S40zI8nup9tUSrTLSVnWGBN38FNiGWbwZOB6uR4OGdw==} /flow-parser@0.206.0: resolution: {integrity: sha512-HVzoK3r6Vsg+lKvlIZzaWNBVai+FXTX1wdYhz/wVlH13tb/gOdLXmlTqy6odmTBhT5UoWUbq0k8263Qhr9d88w==} @@ -20806,7 +21019,7 @@ packages: signal-exit: 4.1.0 dev: true - /fork-ts-checker-webpack-plugin@6.5.3(eslint@8.57.0)(typescript@5.3.3)(webpack@5.89.0): + /fork-ts-checker-webpack-plugin@6.5.3(typescript@5.4.2)(webpack@5.89.0): resolution: {integrity: sha512-SbH/l9ikmMWycd5puHJKTkZJKddF4iRLyW3DeZ08HTI7NGyLS38MXd/KGgeWumQO7YNQbW2u/NtPT2YowbPaGQ==} engines: {node: '>=10', yarn: '>=1.0.0'} peerDependencies: @@ -20826,7 +21039,6 @@ packages: chokidar: 3.5.3 cosmiconfig: 6.0.0 deepmerge: 4.3.1 - eslint: 8.57.0 fs-extra: 9.1.0 glob: 7.2.3 memfs: 3.5.3 @@ -20834,7 +21046,7 @@ packages: schema-utils: 2.7.0 semver: 7.5.4 tapable: 1.1.3 - typescript: 5.3.3 + typescript: 5.4.2 webpack: 5.89.0 /form-data-encoder@2.1.4: @@ -20980,6 +21192,7 @@ packages: define-properties: 1.2.0 es-abstract: 1.22.1 functions-have-names: 1.2.3 + dev: false /function.prototype.name@1.1.6: resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==} @@ -20989,9 +21202,11 @@ packages: define-properties: 1.2.1 es-abstract: 1.22.3 functions-have-names: 1.2.3 + dev: false /functions-have-names@1.2.3: resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} + dev: false /futoin-hkdf@1.5.3: resolution: {integrity: sha512-SewY5KdMpaoCeh7jachEWFsh1nNlaDjNHZXWqL5IGwtpEYHTgkr2+AMCgNwKWkcc0wpSYrZfR7he4WdmHFtDxQ==} @@ -21084,11 +21299,6 @@ packages: resolution: {integrity: sha512-x5UJKlgeUiNT8nyo/AcnwLnZuZNcSjSw0kogRB+Whd1fjjFq4B1hySFxSFWWSn4mIBzg3sRNUDFYc4g5gjPoLg==} engines: {node: '>=4'} - /get-stdin@9.0.0: - resolution: {integrity: sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==} - engines: {node: '>=12'} - dev: true - /get-stream@4.1.0: resolution: {integrity: sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==} engines: {node: '>=6'} @@ -21109,6 +21319,7 @@ packages: dependencies: call-bind: 1.0.5 get-intrinsic: 1.2.2 + dev: false /get-tsconfig@4.7.2: resolution: {integrity: sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==} @@ -21120,10 +21331,6 @@ packages: resolution: {integrity: sha512-7yetJWqbS9sbn0vIfliPsFgoXMKn/YMF+Wuiog97x+urnSRRRZ7xB+uVkwGKzRgq9CDFfMQnE9ruL5DHv9c6Xg==} engines: {node: '>=6'} - /git-hooks-list@3.1.0: - resolution: {integrity: sha512-LF8VeHeR7v+wAbXqfgRlTSX/1BJR9Q1vEMR8JAz1cEg6GX07+zyj3sAdDvYjj/xnlIfVuGgj4qBei1K3hKH+PA==} - dev: true - /git-raw-commits@4.0.0: resolution: {integrity: sha512-ICsMM1Wk8xSGMowkOmPrzo2Fgmfo4bMHLNX6ytHjajRJUqvHOw/TFapQ+QG75c3X/tTDDhOSRPGC52dDbNM8FQ==} engines: {node: '>=16'} @@ -21199,16 +21406,6 @@ packages: once: 1.4.0 path-is-absolute: 1.0.1 - /glob@8.1.0: - resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} - engines: {node: '>=12'} - dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 5.1.6 - once: 1.4.0 - /global-directory@4.0.1: resolution: {integrity: sha512-wHTUcDUoZ1H5/0iVqEudYW4/kAlN5cZ3j/bXn0Dpbizl9iaUVeWSHqiOjsgk6OW2bkLclbBjzewBz6weQ1zA2Q==} engines: {node: '>=18'} @@ -21240,17 +21437,12 @@ packages: resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} engines: {node: '>=4'} - /globals@13.24.0: - resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} - engines: {node: '>=8'} - dependencies: - type-fest: 0.20.2 - /globalthis@1.0.3: resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} engines: {node: '>= 0.4'} dependencies: define-properties: 1.2.1 + dev: false /globby@11.1.0: resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} @@ -21350,9 +21542,6 @@ packages: resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==} dev: false - /graphemer@1.4.0: - resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} - /graphql-tag@2.12.6(graphql@15.8.0): resolution: {integrity: sha512-FdSNcu2QQcWnM2VNvSCCDCVS5PpPqpzgFT8+GXzqJuoDd0CBncxCY278u4mhRO7tMgo2JjgJA5aZ+nWSQ/Z+xg==} engines: {node: '>=10'} @@ -21419,6 +21608,7 @@ packages: /has-bigints@1.0.2: resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} + dev: false /has-flag@3.0.0: resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} @@ -21610,13 +21800,21 @@ packages: resolution: {integrity: sha512-7xgomUX6ADmcYzFik0HzAxh/73YlKR9bmFzf51CZwR+b6YtzU2m0u49hQCqV6SvlqIqsaxovfwdvbnsw3b/zpg==} dev: false - /hermes-estree@0.12.0: - resolution: {integrity: sha512-+e8xR6SCen0wyAKrMT3UD0ZCCLymKhRgjEB5sS28rKiFir/fXgLoeRilRUssFCILmGHb+OvHDUlhxs0+IEyvQw==} + /hermes-estree@0.15.0: + resolution: {integrity: sha512-lLYvAd+6BnOqWdnNbP/Q8xfl8LOGw4wVjfrNd9Gt8eoFzhNBRVD95n4l2ksfMVOoxuVyegs85g83KS9QOsxbVQ==} - /hermes-parser@0.12.0: - resolution: {integrity: sha512-d4PHnwq6SnDLhYl3LHNHvOg7nQ6rcI7QVil418REYksv0Mh3cEkHDcuhGxNQ3vgnLSLl4QSvDrFCwQNYdpWlzw==} + /hermes-estree@0.19.1: + resolution: {integrity: sha512-daLGV3Q2MKk8w4evNMKwS8zBE/rcpA800nu1Q5kM08IKijoSnPe9Uo1iIxzPKRkn95IxxsgBMPeYHt3VG4ej2g==} + + /hermes-parser@0.15.0: + resolution: {integrity: sha512-Q1uks5rjZlE9RjMMjSUCkGrEIPI5pKJILeCtK1VmTj7U4pf3wVPoo+cxfu+s4cBAPy2JzikIIdCZgBoR6x7U1Q==} + dependencies: + hermes-estree: 0.15.0 + + /hermes-parser@0.19.1: + resolution: {integrity: sha512-Vp+bXzxYJWrpEuJ/vXxUsLnt0+y4q9zyi4zUlkLqD8FKv4LjIfOvP69R/9Lty3dCyKh0E2BU7Eypqr63/rKT/A==} dependencies: - hermes-estree: 0.12.0 + hermes-estree: 0.19.1 /hermes-profile-transformer@0.0.6: resolution: {integrity: sha512-cnN7bQUm65UWOy6cbGcCcZ3rpwW8Q/j4OP5aWRhEry4Z2t2aR1cjrbp0BS+KiBN0smvP1caBgAuxutvyvJILzQ==} @@ -21963,6 +22161,13 @@ packages: dependencies: queue: 6.0.2 + /image-size@1.1.1: + resolution: {integrity: sha512-541xKlUw6jr/6gGuk92F+mYM5zaFAc5ahphvkqvNe2bQ6gVBkd6bfrmVJ2t4KDAfikAYZyIqTnktX3i6/aQDrQ==} + engines: {node: '>=16.x'} + hasBin: true + dependencies: + queue: 6.0.2 + /immer@9.0.21: resolution: {integrity: sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA==} @@ -22105,6 +22310,7 @@ packages: get-intrinsic: 1.2.1 has: 1.0.3 side-channel: 1.0.4 + dev: false /internal-slot@1.0.6: resolution: {integrity: sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==} @@ -22113,6 +22319,7 @@ packages: get-intrinsic: 1.2.2 hasown: 2.0.0 side-channel: 1.0.4 + dev: false /interpret@1.4.0: resolution: {integrity: sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==} @@ -22172,9 +22379,6 @@ packages: resolution: {integrity: sha512-58yWmlHpp7VYfcdTwMTvwMmqx/Elfxjd9RXTDyMsbL7lLWmhMylLEqiYVLKuLzOZqVgiWXD9MfR62Vv89VRxkw==} engines: {node: '>=4'} - /ip@1.1.8: - resolution: {integrity: sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==} - /ipaddr.js@1.9.1: resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==} engines: {node: '>= 0.10'} @@ -22191,6 +22395,15 @@ packages: protons-runtime: 5.2.2 uint8arraylist: 2.4.8 + /ipfs-unixfs@11.1.3: + resolution: {integrity: sha512-sy6Koojwm/EcM8yvDlycRYA89C8wIcLcGTMMpqnCPUtqTCdl+JxsuPNCBgAu7tmO8Nipm7Tv7f0g/erxTGKKRA==} + requiresBuild: true + dependencies: + err-code: 3.0.1 + protons-runtime: 5.4.0 + uint8arraylist: 2.4.8 + optional: true + /iron-webcrypto@1.0.0: resolution: {integrity: sha512-anOK1Mktt8U1Xi7fCM3RELTuYbnFikQY5VtrDj7kPgpejV7d43tWKhzgioO0zpkazLEL/j/iayRqnJhrGfqUsg==} dev: false @@ -22217,6 +22430,7 @@ packages: call-bind: 1.0.5 get-intrinsic: 1.2.2 is-typed-array: 1.1.12 + dev: false /is-arrayish@0.2.1: resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} @@ -22225,17 +22439,11 @@ packages: resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} dev: false - /is-async-function@2.0.0: - resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==} - engines: {node: '>= 0.4'} - dependencies: - has-tostringtag: 1.0.0 - dev: true - /is-bigint@1.0.4: resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} dependencies: has-bigints: 1.0.2 + dev: false /is-binary-path@2.1.0: resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} @@ -22249,6 +22457,7 @@ packages: dependencies: call-bind: 1.0.5 has-tostringtag: 1.0.0 + dev: false /is-buffer@1.1.6: resolution: {integrity: sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==} @@ -22278,6 +22487,7 @@ packages: engines: {node: '>= 0.4'} dependencies: has-tostringtag: 1.0.0 + dev: false /is-decimal@2.0.1: resolution: {integrity: sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==} @@ -22305,15 +22515,9 @@ packages: resolution: {integrity: sha512-7Q+VbVafe6x2T+Tu6NcOf6sRklazEPmBoB3IWk3WdGZM2iGUwU/Oe3Wtq5lSEkDTTlpp8yx+5t4pzO/i9Ty1ww==} engines: {node: '>=0.10.0'} - /is-extglob@2.1.1: - resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} - engines: {node: '>=0.10.0'} - - /is-finalizationregistry@1.0.2: - resolution: {integrity: sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==} - dependencies: - call-bind: 1.0.5 - dev: true + /is-extglob@2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} /is-fullwidth-code-point@2.0.0: resolution: {integrity: sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==} @@ -22391,10 +22595,6 @@ packages: dependencies: is-glob: 2.0.1 - /is-map@2.0.2: - resolution: {integrity: sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==} - dev: true - /is-nan@1.3.2: resolution: {integrity: sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==} engines: {node: '>= 0.4'} @@ -22406,6 +22606,7 @@ packages: /is-negative-zero@2.0.2: resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} engines: {node: '>= 0.4'} + dev: false /is-npm@6.0.0: resolution: {integrity: sha512-JEjxbSmtPSt1c8XTkVrlujcXdKV1/tvuQ7GwKcAlyiVLeYFQ2VHat8xfrDJsIkhCdF/tZ7CiIR3sy141c6+gPQ==} @@ -22416,6 +22617,7 @@ packages: engines: {node: '>= 0.4'} dependencies: has-tostringtag: 1.0.0 + dev: false /is-number@7.0.0: resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} @@ -22480,6 +22682,7 @@ packages: dependencies: call-bind: 1.0.5 has-tostringtag: 1.0.0 + dev: false /is-regexp@1.0.0: resolution: {integrity: sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==} @@ -22489,14 +22692,11 @@ packages: resolution: {integrity: sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==} engines: {node: '>=6'} - /is-set@2.0.2: - resolution: {integrity: sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==} - dev: true - /is-shared-array-buffer@1.0.2: resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==} dependencies: call-bind: 1.0.5 + dev: false /is-stream@1.1.0: resolution: {integrity: sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==} @@ -22515,6 +22715,7 @@ packages: engines: {node: '>= 0.4'} dependencies: has-tostringtag: 1.0.0 + dev: false /is-subdir@1.2.0: resolution: {integrity: sha512-2AT6j+gXe/1ueqbW6fLZJiIw3F8iXGJtt0yDrZaBhAZEG1raiTxKWU+IPqMCzQAXOUCKdA4UDMgacKH25XG2Cw==} @@ -22534,6 +22735,7 @@ packages: engines: {node: '>= 0.4'} dependencies: has-symbols: 1.0.3 + dev: false /is-text-path@2.0.0: resolution: {integrity: sha512-+oDTluR6WEjdXEJMnC2z6A4FRwFoYuvShVVEGsS7ewc0UTi2QtAKMDJuL4BDEVt+5T7MjFo12RP8ghOM75oKJw==} @@ -22561,21 +22763,11 @@ packages: dependencies: is-invalid-path: 0.1.0 - /is-weakmap@2.0.1: - resolution: {integrity: sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==} - dev: true - /is-weakref@1.0.2: resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} dependencies: call-bind: 1.0.5 - - /is-weakset@2.0.2: - resolution: {integrity: sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==} - dependencies: - call-bind: 1.0.5 - get-intrinsic: 1.2.2 - dev: true + dev: false /is-windows@1.0.2: resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==} @@ -22618,6 +22810,7 @@ packages: /isarray@2.0.5: resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} + dev: false /isexe@2.0.0: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} @@ -22640,7 +22833,7 @@ packages: - encoding dev: false - /isomorphic-webcrypto@2.3.8(expo@49.0.16)(react-native@0.72.6): + /isomorphic-webcrypto@2.3.8(expo@50.0.11)(react-native@0.73.5): resolution: {integrity: sha512-XddQSI0WYlSCjxtm1AI8kWQOulf7hAN3k3DclF1sxDJZqOe0pcsOt675zvWW91cZH9hYs3nlA3Ev8QK5i80SxQ==} dependencies: '@peculiar/webcrypto': 1.4.3 @@ -22653,8 +22846,8 @@ packages: optionalDependencies: '@unimodules/core': 7.1.2 '@unimodules/react-native-adapter': 6.3.9 - expo-random: 13.4.0(expo@49.0.16) - react-native-securerandom: 0.1.1(react-native@0.72.6) + expo-random: 13.6.0(expo@50.0.11) + react-native-securerandom: 0.1.1(react-native@0.73.5) transitivePeerDependencies: - expo - react-native @@ -22731,20 +22924,18 @@ packages: istanbul-lib-report: 3.0.1 dev: true + /istanbul-reports@3.1.7: + resolution: {integrity: sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==} + engines: {node: '>=8'} + dependencies: + html-escaper: 2.0.2 + istanbul-lib-report: 3.0.1 + dev: true + /it-first@1.0.7: resolution: {integrity: sha512-nvJKZoBpZD/6Rtde6FXqwDqDZGF1sCADmr2Zoc0hZsIvnE449gRFnGctxDf09Bzc/FWnHXAdaHVIetY6lrE0/g==} dev: false - /iterator.prototype@1.1.2: - resolution: {integrity: sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==} - dependencies: - define-properties: 1.2.1 - get-intrinsic: 1.2.2 - has-symbols: 1.0.3 - reflect.getprototypeof: 1.0.4 - set-function-name: 2.0.1 - dev: true - /jackspeak@2.3.6: resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==} engines: {node: '>=14'} @@ -22961,10 +23152,6 @@ packages: jest-resolve: 29.7.0 dev: true - /jest-regex-util@27.5.1: - resolution: {integrity: sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - /jest-regex-util@29.6.3: resolution: {integrity: sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -23072,17 +23259,6 @@ packages: - supports-color dev: true - /jest-util@27.5.1: - resolution: {integrity: sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dependencies: - '@jest/types': 27.5.1 - '@types/node': 20.11.25 - chalk: 4.1.2 - ci-info: 3.9.0 - graceful-fs: 4.2.11 - picomatch: 2.3.1 - /jest-util@29.7.0: resolution: {integrity: sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -23158,6 +23334,15 @@ packages: '@sideway/formula': 3.0.1 '@sideway/pinpoint': 2.0.0 + /joi@17.12.2: + resolution: {integrity: sha512-RonXAIzCiHLc8ss3Ibuz45u28GOsWE1UpfDXLbN/9NKbL4tCJf8TWYVKsoYuuh+sAUt7fsSNpA+r2+TBA6Wjmw==} + dependencies: + '@hapi/hoek': 9.3.0 + '@hapi/topo': 5.1.0 + '@sideway/address': 4.1.5 + '@sideway/formula': 3.0.1 + '@sideway/pinpoint': 2.0.0 + /join-component@1.1.0: resolution: {integrity: sha512-bF7vcQxbODoGK1imE2P9GS9aw4zD0Sd+Hni68IMZLj7zRnquH7dXUmMw9hDI5S/Jzt7q+IyTXN0rSg2GI0IKhQ==} @@ -23214,23 +23399,23 @@ packages: /jsc-safe-url@0.2.4: resolution: {integrity: sha512-0wM3YBWtYePOjfyXQH5MWQ8H7sdk5EXSwZvmSLKk2RboVQ2Bu239jycHDz5J/8Blf3K0Qnoy2b6xD+z10MFB+Q==} - /jscodeshift@0.14.0(@babel/preset-env@7.23.2): + /jscodeshift@0.14.0(@babel/preset-env@7.24.0): resolution: {integrity: sha512-7eCC1knD7bLUPuSCwXsMZUH51O8jIcoVyKtI6P0XM0IVzlGjckPy3FIwQlorzbN0Sg79oK+RlohN32Mqf/lrYA==} hasBin: true peerDependencies: '@babel/preset-env': ^7.1.6 dependencies: - '@babel/core': 7.23.2 - '@babel/parser': 7.23.0 - '@babel/plugin-proposal-class-properties': 7.18.6(@babel/core@7.23.2) - '@babel/plugin-proposal-nullish-coalescing-operator': 7.18.6(@babel/core@7.23.2) - '@babel/plugin-proposal-optional-chaining': 7.21.0(@babel/core@7.23.2) - '@babel/plugin-transform-modules-commonjs': 7.23.0(@babel/core@7.23.2) - '@babel/preset-env': 7.23.2(@babel/core@7.23.2) - '@babel/preset-flow': 7.22.15(@babel/core@7.23.2) - '@babel/preset-typescript': 7.23.2(@babel/core@7.23.2) - '@babel/register': 7.22.15(@babel/core@7.23.2) - babel-core: 7.0.0-bridge.0(@babel/core@7.23.2) + '@babel/core': 7.24.0 + '@babel/parser': 7.24.0 + '@babel/plugin-proposal-class-properties': 7.18.6(@babel/core@7.24.0) + '@babel/plugin-proposal-nullish-coalescing-operator': 7.18.6(@babel/core@7.24.0) + '@babel/plugin-proposal-optional-chaining': 7.21.0(@babel/core@7.24.0) + '@babel/plugin-transform-modules-commonjs': 7.23.3(@babel/core@7.24.0) + '@babel/preset-env': 7.24.0(@babel/core@7.24.0) + '@babel/preset-flow': 7.24.0(@babel/core@7.24.0) + '@babel/preset-typescript': 7.23.3(@babel/core@7.24.0) + '@babel/register': 7.23.7(@babel/core@7.24.0) + babel-core: 7.0.0-bridge.0(@babel/core@7.24.0) chalk: 4.1.2 flow-parser: 0.206.0 graceful-fs: 4.2.11 @@ -23352,7 +23537,7 @@ packages: lodash: 4.17.21 md5: 2.2.1 memory-cache: 0.2.0 - traverse: 0.6.7 + traverse: 0.6.8 valid-url: 1.0.9 /json-schema-traverse@0.4.1: @@ -23365,20 +23550,10 @@ packages: resolution: {integrity: sha512-XQmWYj2Sm4kn4WeTYvmpKEbyPsL7nBsb647c7pMe6l02/yx2+Jfc4dT6UZkEXnIUb5LhD55r2HPsJ1milQ4rDg==} dev: false - /json-stable-stringify-without-jsonify@1.0.1: - resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} - /json-stringify-deterministic@1.0.12: resolution: {integrity: sha512-q3PN0lbUdv0pmurkBNdJH3pfFvOTL/Zp0lquqpvcjfKzt6Y0j49EPHAmVHCAS4Ceq/Y+PejWTzyiVpoY71+D6g==} engines: {node: '>= 4'} - /json5@1.0.2: - resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} - hasBin: true - dependencies: - minimist: 1.2.8 - dev: true - /json5@2.2.3: resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} engines: {node: '>=6'} @@ -23417,11 +23592,10 @@ packages: requiresBuild: true dependencies: '@digitalbazaar/security-context': 1.0.1 - jsonld: 8.2.0 + jsonld: 8.3.2 serialize-error: 8.1.0 transitivePeerDependencies: - web-streams-polyfill - dev: false optional: true /jsonld@5.2.0: @@ -23448,6 +23622,19 @@ packages: - web-streams-polyfill dev: false + /jsonld@8.3.2: + resolution: {integrity: sha512-MwBbq95szLwt8eVQ1Bcfwmgju/Y5P2GdtlHE2ncyfuYjIdEhluUVyj1eudacf1mOkWIoS9GpDBTECqhmq7EOaA==} + engines: {node: '>=14'} + requiresBuild: true + dependencies: + '@digitalbazaar/http-client': 3.4.1 + canonicalize: 1.0.8 + lru-cache: 6.0.0 + rdf-canonize: 3.4.0 + transitivePeerDependencies: + - web-streams-polyfill + optional: true + /jsonp@0.2.1: resolution: {integrity: sha512-pfog5gdDxPdV4eP7Kg87M8/bHgshlZ5pybl+yKxAnCZ5O7lCIn7Ixydj03wOlnDQesky2BPyA91SQ+5Y/mNwzw==} dependencies: @@ -23493,16 +23680,6 @@ packages: semver: 7.5.4 dev: false - /jsx-ast-utils@3.3.5: - resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} - engines: {node: '>=4.0'} - dependencies: - array-includes: 3.1.7 - array.prototype.flat: 1.3.2 - object.assign: 4.1.4 - object.values: 1.1.7 - dev: true - /jwa@1.4.1: resolution: {integrity: sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==} dependencies: @@ -23550,7 +23727,7 @@ packages: engines: {node: '>=14.14'} dependencies: '@stablelib/ed25519': 1.0.3 - did-jwt: 7.4.4 + did-jwt: 7.4.7 dids: 4.0.1 fast-json-stable-stringify: 2.1.0 rpc-utils: 0.6.2 @@ -23613,7 +23790,6 @@ packages: abort-controller: 3.0.0 ky: 0.33.3 node-fetch: 3.3.2 - dev: false /ky-universal@0.8.2(ky@0.25.1): resolution: {integrity: sha512-xe0JaOH9QeYxdyGLnzUOVGK4Z6FGvDVzcXFTdrYA1f33MZdEa45sUDaMBy98xQMcsd2XIBrTXRrRYnegcSdgVQ==} @@ -23638,11 +23814,11 @@ packages: /ky@0.33.3: resolution: {integrity: sha512-CasD9OCEQSFIam2U8efFK81Yeg8vNMTBUqtMOHlrcWQHqUX3HeCl9Dr31u4toV7emlH8Mymk5+9p0lL6mKb/Xw==} engines: {node: '>=14.16'} - dev: false /ky@1.2.2: resolution: {integrity: sha512-gYA2QOI3uIaImJPJjaBbLCdvKHzwxsuB03s7PjrXmoO6tcn6k53rwYoSRgqrmVsEV6wFFegOXDVjABxFZ0aRSg==} engines: {node: '>=18'} + dev: false /labeled-stream-splicer@2.0.2: resolution: {integrity: sha512-Ca4LSXFFZUjPScRaqOcFxneA0VpKZr4MMYCljyQr4LIewTLb3Y0IUTIsnBBsVubIeEfxeSZpSjSsRM8APEQaAw==} @@ -23651,16 +23827,6 @@ packages: stream-splicer: 2.0.1 dev: true - /language-subtag-registry@0.3.22: - resolution: {integrity: sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==} - dev: true - - /language-tags@1.0.5: - resolution: {integrity: sha512-qJhlO9cGXi6hBGKoxEG/sKZDAHD5Hnu9Hs4WbOY3pCWXDhw0N8x1NenNzm2EnNLkLkk7J2SdxAkDSbb6ftT+UQ==} - dependencies: - language-subtag-registry: 0.3.22 - dev: true - /latest-version@7.0.0: resolution: {integrity: sha512-KvNT4XqAMzdcL6ka6Tl3i2lYeFDgXNCuIX+xNx6ZMVR1dFq+idXd9FLKNMOIx0t9mJ9/HudyX4oZWXZQ0UJHeg==} engines: {node: '>=14.16'} @@ -23685,12 +23851,13 @@ packages: type-check: 0.3.2 dev: false - /levn@0.4.1: - resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} - engines: {node: '>= 0.8.0'} + /lighthouse-logger@1.4.2: + resolution: {integrity: sha512-gPWxznF6TKmUHrOQjlVo2UbaL2EJ71mb2CCeRs/2qBpi4L/g4LUVc9+3lKQ6DTUZwJswfM7ainGrLO1+fOqa2g==} dependencies: - prelude-ls: 1.2.1 - type-check: 0.4.0 + debug: 2.6.9 + marky: 1.2.5 + transitivePeerDependencies: + - supports-color /lightningcss-darwin-arm64@1.19.0: resolution: {integrity: sha512-wIJmFtYX0rXHsXHSr4+sC5clwblEMji7HHQ4Ub1/CznVRxtCFha6JIt5JZaNf8vQrfdZnBxLLC6R8pC818jXqg==} @@ -23780,6 +23947,11 @@ packages: engines: {node: '>=14'} dev: true + /lilconfig@3.1.1: + resolution: {integrity: sha512-O18pf7nyvHTckunPWCV1XUNXU1piu01y2b7ATJ0ppkUkk8ocqVWBrYjJBCwHDjD/ZWcfyrA0P4gKhzWGi5EINQ==} + engines: {node: '>=14'} + dev: true + /linebreak@1.1.0: resolution: {integrity: sha512-MHp03UImeVhB7XZtjd0E4n6+3xr5Dq/9xI/5FptGk5FrbDR3zagPa2DS6U8ks/3HjbKWG9Q1M2ufOzxV2qLYSQ==} dependencies: @@ -23902,16 +24074,11 @@ packages: resolution: {integrity: sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==} engines: {node: '>= 12.13.0'} - /local-pkg@0.4.3: - resolution: {integrity: sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==} - engines: {node: '>=14'} - dev: true - /local-pkg@0.5.0: resolution: {integrity: sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==} engines: {node: '>=14'} dependencies: - mlly: 1.4.2 + mlly: 1.6.1 pkg-types: 1.0.3 dev: true @@ -24019,6 +24186,7 @@ packages: /lodash.merge@4.6.2: resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + dev: true /lodash.mergewith@4.6.2: resolution: {integrity: sha512-GK3g5RPZWTRSeLSpgP8Xhra+pnjBC56q9FZYe1d5RN3TJ35dbkGy3YqBSMbyCrlbi+CM9Z3Jk5yTL7RCsqboyQ==} @@ -24161,8 +24329,8 @@ packages: resolution: {integrity: sha512-zobTr7akeGHnv7eBOXcRgMeCP6+uyYsczwmeRCauvpvaAltgNyTbLH/+VaEAPUeWBT+1GuNmz4wC/6jtQzbbVA==} engines: {node: '>=12'} - /magic-string@0.30.5: - resolution: {integrity: sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==} + /magic-string@0.30.8: + resolution: {integrity: sha512-ISQTe55T2ao7XtlAStud6qwYPZjE4GK1S/BeVPus4jrq6JuOnQ00YKQC581RWhR122W7msZV263KzVeLoqidyQ==} engines: {node: '>=12'} dependencies: '@jridgewell/sourcemap-codec': 1.4.15 @@ -24232,6 +24400,9 @@ packages: hasBin: true dev: false + /marky@1.2.5: + resolution: {integrity: sha512-q9JtQJKjpsVxCRVgQ+WapguSbKC3SQ5HEzFGPAJMStgh3QjCawp00UKv3MTTAArTmGmmPUvllHZoNbZ3gs0I+Q==} + /md5-file@3.2.3: resolution: {integrity: sha512-3Tkp1piAHaworfcCgH0jKbTvj1jWWFgbvh2cXaNCgHwyTCBxxvD1Y04rmfpvdPm1P4oXMOpm6+2H7sr7v9v8Fw==} engines: {node: '>=0.10'} @@ -24546,81 +24717,78 @@ packages: resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==} engines: {node: '>= 0.6'} - /metro-babel-transformer@0.76.8: - resolution: {integrity: sha512-Hh6PW34Ug/nShlBGxkwQJSgPGAzSJ9FwQXhUImkzdsDgVu6zj5bx258J8cJVSandjNoQ8nbaHK6CaHlnbZKbyA==} - engines: {node: '>=16'} + /metro-babel-transformer@0.80.6: + resolution: {integrity: sha512-ssuoVC4OzqaOt3LpwfUbDfBlFGRu9v1Yf2JJnKPz0ROYHNjSBws4aUesqQQ/Ea8DbiH7TK4j4cJmm+XjdHmgqA==} + engines: {node: '>=18'} dependencies: - '@babel/core': 7.23.2 - hermes-parser: 0.12.0 + '@babel/core': 7.24.0 + hermes-parser: 0.19.1 nullthrows: 1.1.1 transitivePeerDependencies: - supports-color - /metro-cache-key@0.76.8: - resolution: {integrity: sha512-buKQ5xentPig9G6T37Ww/R/bC+/V1MA5xU/D8zjnhlelsrPG6w6LtHUS61ID3zZcMZqYaELWk5UIadIdDsaaLw==} - engines: {node: '>=16'} + /metro-cache-key@0.80.6: + resolution: {integrity: sha512-DFmjQacC8m/S3HpELklLMWkPGP/fZPX3BSgjd0xQvwIvWyFwk8Nn/lfp/uWdEVDtDSIr64/anXU5uWohGwlWXw==} + engines: {node: '>=18'} - /metro-cache@0.76.8: - resolution: {integrity: sha512-QBJSJIVNH7Hc/Yo6br/U/qQDUpiUdRgZ2ZBJmvAbmAKp2XDzsapnMwK/3BGj8JNWJF7OLrqrYHsRsukSbUBpvQ==} - engines: {node: '>=16'} + /metro-cache@0.80.6: + resolution: {integrity: sha512-NP81pHSPkzs+iNlpVkJqijrpcd6lfuDAunYH9/Rn8oLNz0yLfkl8lt+xOdUU4IkFt3oVcTBEFCnzAzv4B8YhyA==} + engines: {node: '>=18'} dependencies: - metro-core: 0.76.8 + metro-core: 0.80.6 rimraf: 3.0.2 - /metro-config@0.76.8: - resolution: {integrity: sha512-SL1lfKB0qGHALcAk2zBqVgQZpazDYvYFGwCK1ikz0S6Y/CM2i2/HwuZN31kpX6z3mqjv/6KvlzaKoTb1otuSAA==} - engines: {node: '>=16'} + /metro-config@0.80.6: + resolution: {integrity: sha512-vHYYvJpRTWYbmvqlR7i04xQpZCHJ6yfZ/xIcPdz2ssbdJGGJbiT1Aar9wr8RAhsccSxdJgfE5B1DB8Mo+DnhIg==} + engines: {node: '>=18'} dependencies: connect: 3.7.0 cosmiconfig: 5.2.1 jest-validate: 29.7.0 - metro: 0.76.8 - metro-cache: 0.76.8 - metro-core: 0.76.8 - metro-runtime: 0.76.8 + metro: 0.80.6 + metro-cache: 0.80.6 + metro-core: 0.80.6 + metro-runtime: 0.80.6 transitivePeerDependencies: - bufferutil - encoding - supports-color - utf-8-validate - /metro-config@0.76.8(encoding@0.1.13): - resolution: {integrity: sha512-SL1lfKB0qGHALcAk2zBqVgQZpazDYvYFGwCK1ikz0S6Y/CM2i2/HwuZN31kpX6z3mqjv/6KvlzaKoTb1otuSAA==} - engines: {node: '>=16'} + /metro-config@0.80.6(encoding@0.1.13): + resolution: {integrity: sha512-vHYYvJpRTWYbmvqlR7i04xQpZCHJ6yfZ/xIcPdz2ssbdJGGJbiT1Aar9wr8RAhsccSxdJgfE5B1DB8Mo+DnhIg==} + engines: {node: '>=18'} dependencies: connect: 3.7.0 cosmiconfig: 5.2.1 jest-validate: 29.7.0 - metro: 0.76.8(encoding@0.1.13) - metro-cache: 0.76.8 - metro-core: 0.76.8 - metro-runtime: 0.76.8 + metro: 0.80.6(encoding@0.1.13) + metro-cache: 0.80.6 + metro-core: 0.80.6 + metro-runtime: 0.80.6 transitivePeerDependencies: - bufferutil - encoding - supports-color - utf-8-validate - dev: false - /metro-core@0.76.8: - resolution: {integrity: sha512-sl2QLFI3d1b1XUUGxwzw/KbaXXU/bvFYrSKz6Sg19AdYGWFyzsgZ1VISRIDf+HWm4R/TJXluhWMEkEtZuqi3qA==} - engines: {node: '>=16'} + /metro-core@0.80.6: + resolution: {integrity: sha512-fn4rryTUAwzFJWj7VIPDH4CcW/q7MV4oGobqR6NsuxZoIGYrVpK7pBasumu5YbCqifuErMs5s23BhmrDNeZURw==} + engines: {node: '>=18'} dependencies: lodash.throttle: 4.1.1 - metro-resolver: 0.76.8 + metro-resolver: 0.80.6 - /metro-file-map@0.76.8: - resolution: {integrity: sha512-A/xP1YNEVwO1SUV9/YYo6/Y1MmzhL4ZnVgcJC3VmHp/BYVOXVStzgVbWv2wILe56IIMkfXU+jpXrGKKYhFyHVw==} - engines: {node: '>=16'} + /metro-file-map@0.80.6: + resolution: {integrity: sha512-S3CUqvpXpc+q3q+hCEWvFKhVqgq0VmXdZQDF6u7ue86E2elq1XLnfLOt9JSpwyhpMQRyysjSCnd/Yh6GZMNHoQ==} + engines: {node: '>=18'} dependencies: anymatch: 3.1.3 debug: 2.6.9 fb-watchman: 2.0.2 graceful-fs: 4.2.11 invariant: 2.2.4 - jest-regex-util: 27.5.1 - jest-util: 27.5.1 - jest-worker: 27.5.1 + jest-worker: 29.7.0 micromatch: 4.0.5 node-abort-controller: 3.1.1 nullthrows: 1.1.1 @@ -24630,129 +24798,44 @@ packages: transitivePeerDependencies: - supports-color - /metro-inspector-proxy@0.76.8(encoding@0.1.13): - resolution: {integrity: sha512-Us5o5UEd4Smgn1+TfHX4LvVPoWVo9VsVMn4Ldbk0g5CQx3Gu0ygc/ei2AKPGTwsOZmKxJeACj7yMH2kgxQP/iw==} - engines: {node: '>=16'} - hasBin: true - dependencies: - connect: 3.7.0 - debug: 2.6.9 - node-fetch: 2.7.0(encoding@0.1.13) - ws: 7.5.9 - yargs: 17.7.2 - transitivePeerDependencies: - - bufferutil - - encoding - - supports-color - - utf-8-validate - - /metro-minify-terser@0.76.8: - resolution: {integrity: sha512-Orbvg18qXHCrSj1KbaeSDVYRy/gkro2PC7Fy2tDSH1c9RB4aH8tuMOIXnKJE+1SXxBtjWmQ5Yirwkth2DyyEZA==} - engines: {node: '>=16'} - dependencies: - terser: 5.26.0 - - /metro-minify-uglify@0.76.8: - resolution: {integrity: sha512-6l8/bEvtVaTSuhG1FqS0+Mc8lZ3Bl4RI8SeRIifVLC21eeSDp4CEBUWSGjpFyUDfi6R5dXzYaFnSgMNyfxADiQ==} - engines: {node: '>=16'} - dependencies: - uglify-es: 3.3.9 - - /metro-react-native-babel-preset@0.76.8(@babel/core@7.23.2): - resolution: {integrity: sha512-Ptza08GgqzxEdK8apYsjTx2S8WDUlS2ilBlu9DR1CUcHmg4g3kOkFylZroogVAUKtpYQNYwAvdsjmrSdDNtiAg==} - engines: {node: '>=16'} - peerDependencies: - '@babel/core': '*' - dependencies: - '@babel/core': 7.23.2 - '@babel/plugin-proposal-async-generator-functions': 7.20.7(@babel/core@7.23.2) - '@babel/plugin-proposal-class-properties': 7.18.6(@babel/core@7.23.2) - '@babel/plugin-proposal-export-default-from': 7.22.17(@babel/core@7.23.2) - '@babel/plugin-proposal-nullish-coalescing-operator': 7.18.6(@babel/core@7.23.2) - '@babel/plugin-proposal-numeric-separator': 7.18.6(@babel/core@7.23.2) - '@babel/plugin-proposal-object-rest-spread': 7.20.7(@babel/core@7.23.2) - '@babel/plugin-proposal-optional-catch-binding': 7.18.6(@babel/core@7.23.2) - '@babel/plugin-proposal-optional-chaining': 7.21.0(@babel/core@7.23.2) - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.23.2) - '@babel/plugin-syntax-export-default-from': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-syntax-flow': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.2) - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.2) - '@babel/plugin-transform-arrow-functions': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-async-to-generator': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-block-scoping': 7.23.0(@babel/core@7.23.2) - '@babel/plugin-transform-classes': 7.22.15(@babel/core@7.23.2) - '@babel/plugin-transform-computed-properties': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-destructuring': 7.23.0(@babel/core@7.23.2) - '@babel/plugin-transform-flow-strip-types': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-function-name': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-literals': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-modules-commonjs': 7.23.0(@babel/core@7.23.2) - '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-parameters': 7.22.15(@babel/core@7.23.2) - '@babel/plugin-transform-react-display-name': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-react-jsx': 7.22.15(@babel/core@7.23.2) - '@babel/plugin-transform-react-jsx-self': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-react-jsx-source': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-runtime': 7.23.2(@babel/core@7.23.2) - '@babel/plugin-transform-shorthand-properties': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-spread': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-sticky-regex': 7.22.5(@babel/core@7.23.2) - '@babel/plugin-transform-typescript': 7.22.15(@babel/core@7.23.2) - '@babel/plugin-transform-unicode-regex': 7.22.5(@babel/core@7.23.2) - '@babel/template': 7.22.15 - babel-plugin-transform-flow-enums: 0.0.2(@babel/core@7.23.2) - react-refresh: 0.4.3 - transitivePeerDependencies: - - supports-color - - /metro-react-native-babel-transformer@0.76.8(@babel/core@7.23.2): - resolution: {integrity: sha512-3h+LfS1WG1PAzhq8QF0kfXjxuXetbY/lgz8vYMQhgrMMp17WM1DNJD0gjx8tOGYbpbBC1qesJ45KMS4o5TA73A==} - engines: {node: '>=16'} - peerDependencies: - '@babel/core': '*' + /metro-minify-terser@0.80.6: + resolution: {integrity: sha512-83eZaH2+B+jP92KuodPqXknzwmiboKAuZY4doRfTEEXAG57pNVNN6cqSRJlwDnmaTBKRffxoncBXbYqHQgulgg==} + engines: {node: '>=18'} dependencies: - '@babel/core': 7.23.2 - babel-preset-fbjs: 3.4.0(@babel/core@7.23.2) - hermes-parser: 0.12.0 - metro-react-native-babel-preset: 0.76.8(@babel/core@7.23.2) - nullthrows: 1.1.1 - transitivePeerDependencies: - - supports-color + terser: 5.29.1 - /metro-resolver@0.76.8: - resolution: {integrity: sha512-KccOqc10vrzS7ZhG2NSnL2dh3uVydarB7nOhjreQ7C4zyWuiW9XpLC4h47KtGQv3Rnv/NDLJYeDqaJ4/+140HQ==} - engines: {node: '>=16'} + /metro-resolver@0.80.6: + resolution: {integrity: sha512-R7trfglG4zY4X9XyM9cvuffAhQ9W1reWoahr1jdEWa6rOI8PyM0qXjcsb8l+fsOQhdSiVlkKcYAmkyrs1S/zrA==} + engines: {node: '>=18'} - /metro-runtime@0.76.8: - resolution: {integrity: sha512-XKahvB+iuYJSCr3QqCpROli4B4zASAYpkK+j3a0CJmokxCDNbgyI4Fp88uIL6rNaZfN0Mv35S0b99SdFXIfHjg==} - engines: {node: '>=16'} + /metro-runtime@0.80.6: + resolution: {integrity: sha512-21GQVd0pp2nACoK0C2PL8mBsEhIFUFFntYrWRlYNHtPQoqDzddrPEIgkyaABGXGued+dZoBlFQl+LASlmmfkvw==} + engines: {node: '>=18'} dependencies: - '@babel/runtime': 7.23.2 - react-refresh: 0.4.3 + '@babel/runtime': 7.24.0 - /metro-source-map@0.76.8: - resolution: {integrity: sha512-Hh0ncPsHPVf6wXQSqJqB3K9Zbudht4aUtNpNXYXSxH+pteWqGAXnjtPsRAnCsCWl38wL0jYF0rJDdMajUI3BDw==} - engines: {node: '>=16'} + /metro-source-map@0.80.6: + resolution: {integrity: sha512-lqDuSLctWy9Qccu4Zl0YB1PzItpsqcKGb1nK0aDY+lzJ26X65OCib2VzHlj+xj7e4PiIKOfsvDCczCBz4cnxdg==} + engines: {node: '>=18'} dependencies: - '@babel/traverse': 7.23.2 - '@babel/types': 7.23.0 + '@babel/traverse': 7.24.0 + '@babel/types': 7.24.0 invariant: 2.2.4 - metro-symbolicate: 0.76.8 + metro-symbolicate: 0.80.6 nullthrows: 1.1.1 - ob1: 0.76.8 + ob1: 0.80.6 source-map: 0.5.7 vlq: 1.0.1 transitivePeerDependencies: - supports-color - /metro-symbolicate@0.76.8: - resolution: {integrity: sha512-LrRL3uy2VkzrIXVlxoPtqb40J6Bf1mlPNmUQewipc3qfKKFgtPHBackqDy1YL0njDsWopCKcfGtFYLn0PTUn3w==} - engines: {node: '>=16'} + /metro-symbolicate@0.80.6: + resolution: {integrity: sha512-SGwKeBi+lK7NmM5+EcW6DyRRa9HmGSvH0LJtlT4XoRMbpxzsLYs0qUEA+olD96pOIP+ta7I8S30nQr2ttqgO8A==} + engines: {node: '>=18'} hasBin: true dependencies: invariant: 2.2.4 - metro-source-map: 0.76.8 + metro-source-map: 0.80.6 nullthrows: 1.1.1 source-map: 0.5.7 through2: 2.0.5 @@ -24760,33 +24843,33 @@ packages: transitivePeerDependencies: - supports-color - /metro-transform-plugins@0.76.8: - resolution: {integrity: sha512-PlkGTQNqS51Bx4vuufSQCdSn2R2rt7korzngo+b5GCkeX5pjinPjnO2kNhQ8l+5bO0iUD/WZ9nsM2PGGKIkWFA==} - engines: {node: '>=16'} + /metro-transform-plugins@0.80.6: + resolution: {integrity: sha512-e04tdTC5Fy1vOQrTTXb5biao0t7nR/h+b1IaBTlM5UaHaAJZr658uVOoZhkRxKjbhF2mIwJ/8DdorD2CA15BCg==} + engines: {node: '>=18'} dependencies: - '@babel/core': 7.23.2 - '@babel/generator': 7.23.0 - '@babel/template': 7.22.15 - '@babel/traverse': 7.23.2 + '@babel/core': 7.24.0 + '@babel/generator': 7.23.6 + '@babel/template': 7.24.0 + '@babel/traverse': 7.24.0 nullthrows: 1.1.1 transitivePeerDependencies: - supports-color - /metro-transform-worker@0.76.8: - resolution: {integrity: sha512-mE1fxVAnJKmwwJyDtThildxxos9+DGs9+vTrx2ktSFMEVTtXS/bIv2W6hux1pqivqAfyJpTeACXHk5u2DgGvIQ==} - engines: {node: '>=16'} + /metro-transform-worker@0.80.6: + resolution: {integrity: sha512-jV+VgCLiCj5jQadW/h09qJaqDreL6XcBRY52STCoz2xWn6WWLLMB5nXzQtvFNPmnIOps+Xu8+d5hiPcBNOhYmA==} + engines: {node: '>=18'} dependencies: - '@babel/core': 7.23.2 - '@babel/generator': 7.23.0 - '@babel/parser': 7.23.0 - '@babel/types': 7.23.0 - babel-preset-fbjs: 3.4.0(@babel/core@7.23.2) - metro: 0.76.8 - metro-babel-transformer: 0.76.8 - metro-cache: 0.76.8 - metro-cache-key: 0.76.8 - metro-source-map: 0.76.8 - metro-transform-plugins: 0.76.8 + '@babel/core': 7.24.0 + '@babel/generator': 7.23.6 + '@babel/parser': 7.24.0 + '@babel/types': 7.24.0 + metro: 0.80.6 + metro-babel-transformer: 0.80.6 + metro-cache: 0.80.6 + metro-cache-key: 0.80.6 + metro-minify-terser: 0.80.6 + metro-source-map: 0.80.6 + metro-transform-plugins: 0.80.6 nullthrows: 1.1.1 transitivePeerDependencies: - bufferutil @@ -24794,43 +24877,41 @@ packages: - supports-color - utf-8-validate - /metro-transform-worker@0.76.8(encoding@0.1.13): - resolution: {integrity: sha512-mE1fxVAnJKmwwJyDtThildxxos9+DGs9+vTrx2ktSFMEVTtXS/bIv2W6hux1pqivqAfyJpTeACXHk5u2DgGvIQ==} - engines: {node: '>=16'} + /metro-transform-worker@0.80.6(encoding@0.1.13): + resolution: {integrity: sha512-jV+VgCLiCj5jQadW/h09qJaqDreL6XcBRY52STCoz2xWn6WWLLMB5nXzQtvFNPmnIOps+Xu8+d5hiPcBNOhYmA==} + engines: {node: '>=18'} dependencies: - '@babel/core': 7.23.2 - '@babel/generator': 7.23.0 - '@babel/parser': 7.23.0 - '@babel/types': 7.23.0 - babel-preset-fbjs: 3.4.0(@babel/core@7.23.2) - metro: 0.76.8(encoding@0.1.13) - metro-babel-transformer: 0.76.8 - metro-cache: 0.76.8 - metro-cache-key: 0.76.8 - metro-source-map: 0.76.8 - metro-transform-plugins: 0.76.8 + '@babel/core': 7.24.0 + '@babel/generator': 7.23.6 + '@babel/parser': 7.24.0 + '@babel/types': 7.24.0 + metro: 0.80.6(encoding@0.1.13) + metro-babel-transformer: 0.80.6 + metro-cache: 0.80.6 + metro-cache-key: 0.80.6 + metro-minify-terser: 0.80.6 + metro-source-map: 0.80.6 + metro-transform-plugins: 0.80.6 nullthrows: 1.1.1 transitivePeerDependencies: - bufferutil - encoding - supports-color - utf-8-validate - dev: false - /metro@0.76.8: - resolution: {integrity: sha512-oQA3gLzrrYv3qKtuWArMgHPbHu8odZOD9AoavrqSFllkPgOtmkBvNNDLCELqv5SjBfqjISNffypg+5UGG3y0pg==} - engines: {node: '>=16'} + /metro@0.80.6: + resolution: {integrity: sha512-f6Nhnht9TxVRP6zdBq9J2jNdeDBxRmJFnjxhQS1GeCpokBvI6fTXq+wHTLz5jZA+75fwbkPSzBxBJzQa6xi0AQ==} + engines: {node: '>=18'} hasBin: true dependencies: - '@babel/code-frame': 7.22.13 - '@babel/core': 7.23.2 - '@babel/generator': 7.23.0 - '@babel/parser': 7.23.0 - '@babel/template': 7.22.15 - '@babel/traverse': 7.23.2 - '@babel/types': 7.23.0 + '@babel/code-frame': 7.23.5 + '@babel/core': 7.24.0 + '@babel/generator': 7.23.6 + '@babel/parser': 7.24.0 + '@babel/template': 7.24.0 + '@babel/traverse': 7.24.0 + '@babel/types': 7.24.0 accepts: 1.3.8 - async: 3.2.4 chalk: 4.1.2 ci-info: 2.0.0 connect: 3.7.0 @@ -24838,28 +24919,24 @@ packages: denodeify: 1.2.1 error-stack-parser: 2.1.4 graceful-fs: 4.2.11 - hermes-parser: 0.12.0 - image-size: 1.0.2 + hermes-parser: 0.19.1 + image-size: 1.1.1 invariant: 2.2.4 - jest-worker: 27.5.1 + jest-worker: 29.7.0 jsc-safe-url: 0.2.4 lodash.throttle: 4.1.1 - metro-babel-transformer: 0.76.8 - metro-cache: 0.76.8 - metro-cache-key: 0.76.8 - metro-config: 0.76.8 - metro-core: 0.76.8 - metro-file-map: 0.76.8 - metro-inspector-proxy: 0.76.8(encoding@0.1.13) - metro-minify-terser: 0.76.8 - metro-minify-uglify: 0.76.8 - metro-react-native-babel-preset: 0.76.8(@babel/core@7.23.2) - metro-resolver: 0.76.8 - metro-runtime: 0.76.8 - metro-source-map: 0.76.8 - metro-symbolicate: 0.76.8 - metro-transform-plugins: 0.76.8 - metro-transform-worker: 0.76.8 + metro-babel-transformer: 0.80.6 + metro-cache: 0.80.6 + metro-cache-key: 0.80.6 + metro-config: 0.80.6 + metro-core: 0.80.6 + metro-file-map: 0.80.6 + metro-resolver: 0.80.6 + metro-runtime: 0.80.6 + metro-source-map: 0.80.6 + metro-symbolicate: 0.80.6 + metro-transform-plugins: 0.80.6 + metro-transform-worker: 0.80.6 mime-types: 2.1.35 node-fetch: 2.7.0(encoding@0.1.13) nullthrows: 1.1.1 @@ -24876,20 +24953,19 @@ packages: - supports-color - utf-8-validate - /metro@0.76.8(encoding@0.1.13): - resolution: {integrity: sha512-oQA3gLzrrYv3qKtuWArMgHPbHu8odZOD9AoavrqSFllkPgOtmkBvNNDLCELqv5SjBfqjISNffypg+5UGG3y0pg==} - engines: {node: '>=16'} + /metro@0.80.6(encoding@0.1.13): + resolution: {integrity: sha512-f6Nhnht9TxVRP6zdBq9J2jNdeDBxRmJFnjxhQS1GeCpokBvI6fTXq+wHTLz5jZA+75fwbkPSzBxBJzQa6xi0AQ==} + engines: {node: '>=18'} hasBin: true dependencies: - '@babel/code-frame': 7.22.13 - '@babel/core': 7.23.2 - '@babel/generator': 7.23.0 - '@babel/parser': 7.23.0 - '@babel/template': 7.22.15 - '@babel/traverse': 7.23.2 - '@babel/types': 7.23.0 + '@babel/code-frame': 7.23.5 + '@babel/core': 7.24.0 + '@babel/generator': 7.23.6 + '@babel/parser': 7.24.0 + '@babel/template': 7.24.0 + '@babel/traverse': 7.24.0 + '@babel/types': 7.24.0 accepts: 1.3.8 - async: 3.2.4 chalk: 4.1.2 ci-info: 2.0.0 connect: 3.7.0 @@ -24897,28 +24973,24 @@ packages: denodeify: 1.2.1 error-stack-parser: 2.1.4 graceful-fs: 4.2.11 - hermes-parser: 0.12.0 - image-size: 1.0.2 + hermes-parser: 0.19.1 + image-size: 1.1.1 invariant: 2.2.4 - jest-worker: 27.5.1 + jest-worker: 29.7.0 jsc-safe-url: 0.2.4 lodash.throttle: 4.1.1 - metro-babel-transformer: 0.76.8 - metro-cache: 0.76.8 - metro-cache-key: 0.76.8 - metro-config: 0.76.8(encoding@0.1.13) - metro-core: 0.76.8 - metro-file-map: 0.76.8 - metro-inspector-proxy: 0.76.8(encoding@0.1.13) - metro-minify-terser: 0.76.8 - metro-minify-uglify: 0.76.8 - metro-react-native-babel-preset: 0.76.8(@babel/core@7.23.2) - metro-resolver: 0.76.8 - metro-runtime: 0.76.8 - metro-source-map: 0.76.8 - metro-symbolicate: 0.76.8 - metro-transform-plugins: 0.76.8 - metro-transform-worker: 0.76.8(encoding@0.1.13) + metro-babel-transformer: 0.80.6 + metro-cache: 0.80.6 + metro-cache-key: 0.80.6 + metro-config: 0.80.6(encoding@0.1.13) + metro-core: 0.80.6 + metro-file-map: 0.80.6 + metro-resolver: 0.80.6 + metro-runtime: 0.80.6 + metro-source-map: 0.80.6 + metro-symbolicate: 0.80.6 + metro-transform-plugins: 0.80.6 + metro-transform-worker: 0.80.6(encoding@0.1.13) mime-types: 2.1.35 node-fetch: 2.7.0(encoding@0.1.13) nullthrows: 1.1.1 @@ -24934,7 +25006,6 @@ packages: - encoding - supports-color - utf-8-validate - dev: false /micro-ftch@0.3.1: resolution: {integrity: sha512-/0LLxhzP0tfiR5hcQebtudP56gUurs2CLkGarnCiB/OqEyUFQ6U3paQi/tgLv0hBJYt2rnr9MNpxz4fiiugstg==} @@ -25421,12 +25492,6 @@ packages: dependencies: minipass: 3.3.6 - /minipass@3.1.6: - resolution: {integrity: sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==} - engines: {node: '>=8'} - dependencies: - yallist: 4.0.0 - /minipass@3.3.6: resolution: {integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==} engines: {node: '>=8'} @@ -25499,6 +25564,15 @@ packages: pkg-types: 1.0.3 ufo: 1.3.1 + /mlly@1.6.1: + resolution: {integrity: sha512-vLgaHvaeunuOXHSmEbZ9izxPx3USsk8KCQ8iC+aTlp5sKRSoZvwhHh5L9VbKSaVC6sJDqbyohIS76E2VmHIPAA==} + dependencies: + acorn: 8.11.3 + pathe: 1.1.2 + pkg-types: 1.0.3 + ufo: 1.4.0 + dev: true + /module-deps@6.2.3: resolution: {integrity: sha512-fg7OZaQBcL4/L+AK5f4iVqf9OMbCclXfy/znXRxTVhJSeW5AIlS9AwheYwDaXM3lVW7OBeaeUEY3gbaC6cLlSA==} engines: {node: '>= 0.8.0'} @@ -25642,6 +25716,7 @@ packages: /natural-compare@1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} + dev: true /ncp@2.0.0: resolution: {integrity: sha512-zIdGUrPRFTUELUvr3Gmc7KZ2Sw/h1PiVM0Af/oHB6zgnV1ikqSfRk+TOufi79aHYCW3NiOXmr1BP5nWbzojLaA==} @@ -25659,20 +25734,20 @@ packages: /nested-error-stacks@2.0.1: resolution: {integrity: sha512-SrQrok4CATudVzBS7coSz26QRSmlK9TzzoFbeKfcPBUFPjcQM9Rqvr/DlJkOrwI/0KcgvMub1n1g5Jt9EgRn4A==} - /next-intl@3.9.2(next@14.1.2)(react@18.2.0): - resolution: {integrity: sha512-I/E7fle1rZuNQWPCI/XZNGc75ZCVjzvE+62RRClB3EzJDTqjNXpjmZplXD4WQxQjJ2mBZ2aKgGjblRg52EKa0Q==} + /next-intl@3.9.4(next@14.1.3)(react@18.2.0): + resolution: {integrity: sha512-ktm7tKgD35GY08HrCbuTFdgaLFNykUB1EOef4JPUo63E7qDShBx8bD+A4HYjs/Y/zoq4K5IPyG03Thj+lKmymg==} peerDependencies: next: ^10.0.0 || ^11.0.0 || ^12.0.0 || ^13.0.0 || ^14.0.0 react: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: '@formatjs/intl-localematcher': 0.2.32 negotiator: 0.6.3 - next: 14.1.2(@babel/core@7.23.2)(react-dom@18.2.0)(react@18.2.0) + next: 14.1.3(@babel/core@7.24.0)(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 use-intl: 3.9.4(react@18.2.0) dev: false - /next-sitemap@4.2.3(next@14.1.2): + /next-sitemap@4.2.3(next@14.1.3): resolution: {integrity: sha512-vjdCxeDuWDzldhCnyFCQipw5bfpl4HmZA7uoo3GAaYGjGgfL4Cxb1CiztPuWGmS+auYs7/8OekRS8C2cjdAsjQ==} engines: {node: '>=14.18'} hasBin: true @@ -25683,23 +25758,23 @@ packages: '@next/env': 13.4.13 fast-glob: 3.3.1 minimist: 1.2.8 - next: 14.1.2(@babel/core@7.23.2)(react-dom@18.2.0)(react@18.2.0) + next: 14.1.3(@babel/core@7.24.0)(react-dom@18.2.0)(react@18.2.0) dev: false - /next-themes@0.2.1(next@14.1.2)(react-dom@18.2.0)(react@18.2.0): + /next-themes@0.2.1(next@14.1.3)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-B+AKNfYNIzh0vqQQKqQItTS8evEouKD7H5Hj3kmuPERwddR2TxvDSFZuTj6T7Jfn1oyeUyJMydPl1Bkxkh0W7A==} peerDependencies: next: '*' react: '*' react-dom: '*' dependencies: - next: 14.1.2(@babel/core@7.23.2)(react-dom@18.2.0)(react@18.2.0) + next: 14.1.3(@babel/core@7.24.0)(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false - /next@14.1.2(@babel/core@7.23.2)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-p4RfNmopqkzRP1uUyBJnHii+qMg71f2udWhTTZopBB8b3T5QXNzn7yO+LCYHPWZG2kAvEn4l4neyJHqkXvo2wg==} + /next@14.1.3(@babel/core@7.24.0)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-oexgMV2MapI0UIWiXKkixF8J8ORxpy64OuJ/J9oVUmIthXOUCcuVEZX+dtpgq7wIfIqtBwQsKEDXejcjTsan9g==} engines: {node: '>=18.17.0'} hasBin: true peerDependencies: @@ -25713,7 +25788,7 @@ packages: sass: optional: true dependencies: - '@next/env': 14.1.2 + '@next/env': 14.1.3 '@swc/helpers': 0.5.2 busboy: 1.6.0 caniuse-lite: 1.0.30001596 @@ -25721,17 +25796,17 @@ packages: postcss: 8.4.31 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) - styled-jsx: 5.1.1(@babel/core@7.23.2)(react@18.2.0) + styled-jsx: 5.1.1(@babel/core@7.24.0)(react@18.2.0) optionalDependencies: - '@next/swc-darwin-arm64': 14.1.2 - '@next/swc-darwin-x64': 14.1.2 - '@next/swc-linux-arm64-gnu': 14.1.2 - '@next/swc-linux-arm64-musl': 14.1.2 - '@next/swc-linux-x64-gnu': 14.1.2 - '@next/swc-linux-x64-musl': 14.1.2 - '@next/swc-win32-arm64-msvc': 14.1.2 - '@next/swc-win32-ia32-msvc': 14.1.2 - '@next/swc-win32-x64-msvc': 14.1.2 + '@next/swc-darwin-arm64': 14.1.3 + '@next/swc-darwin-x64': 14.1.3 + '@next/swc-linux-arm64-gnu': 14.1.3 + '@next/swc-linux-arm64-musl': 14.1.3 + '@next/swc-linux-x64-gnu': 14.1.3 + '@next/swc-linux-x64-musl': 14.1.3 + '@next/swc-win32-arm64-msvc': 14.1.3 + '@next/swc-win32-ia32-msvc': 14.1.3 + '@next/swc-win32-x64-msvc': 14.1.3 transitivePeerDependencies: - '@babel/core' - babel-plugin-macros @@ -26068,9 +26143,9 @@ packages: - debug dev: true - /ob1@0.76.8: - resolution: {integrity: sha512-dlBkJJV5M/msj9KYA9upc+nUWVwuOFFTbu28X6kZeGwcuW+JxaHSBZ70SYQnk5M+j5JbNLR6yKHmgW4M5E7X5g==} - engines: {node: '>=16'} + /ob1@0.80.6: + resolution: {integrity: sha512-nlLGZPMQ/kbmkdIb5yvVzep1jKUII2x6ehNsHpgy71jpnJMW7V+KsB3AjYI2Ajb7UqMAMNjlssg6FUodrEMYzg==} + engines: {node: '>=18'} /obj-multiplex@1.0.0: resolution: {integrity: sha512-0GNJAOsHoBHeNTvl5Vt6IWnpUEcc3uSRxzBri7EDyIcMgYvnY2JL2qdeV5zTMjWQX5OHcD5amcW2HFfDh0gjIA==} @@ -26093,6 +26168,7 @@ packages: /object-inspect@1.13.1: resolution: {integrity: sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==} + dev: false /object-is@1.1.5: resolution: {integrity: sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==} @@ -26121,58 +26197,6 @@ packages: has-symbols: 1.0.3 object-keys: 1.1.1 - /object.entries@1.1.6: - resolution: {integrity: sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - dev: true - - /object.entries@1.1.7: - resolution: {integrity: sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - dev: true - - /object.fromentries@2.0.7: - resolution: {integrity: sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - dev: true - - /object.groupby@1.0.1: - resolution: {integrity: sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==} - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - get-intrinsic: 1.2.2 - dev: true - - /object.hasown@1.1.3: - resolution: {integrity: sha512-fFI4VcYpRHvSLXxP7yiZOMAd331cPfd2p7PFDVbgUsYOfCT3tICVqXWngbjr4m49OvsBwUBQ6O2uQoJvy3RexA==} - dependencies: - define-properties: 1.2.1 - es-abstract: 1.22.3 - dev: true - - /object.values@1.1.7: - resolution: {integrity: sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - dev: true - /obuf@1.1.2: resolution: {integrity: sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==} @@ -26238,6 +26262,13 @@ packages: dependencies: is-wsl: 1.1.0 + /open@7.4.2: + resolution: {integrity: sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==} + engines: {node: '>=8'} + dependencies: + is-docker: 2.2.1 + is-wsl: 2.2.0 + /open@8.4.2: resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==} engines: {node: '>=12'} @@ -26262,24 +26293,13 @@ packages: word-wrap: 1.2.5 dev: false - /optionator@0.9.3: - resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==} - engines: {node: '>= 0.8.0'} - dependencies: - '@aashutoshrathi/word-wrap': 1.2.6 - deep-is: 0.1.4 - fast-levenshtein: 2.0.6 - levn: 0.4.1 - prelude-ls: 1.2.1 - type-check: 0.4.0 - /ora@3.4.0: resolution: {integrity: sha512-eNwHudNbO1folBP3JsZ19v9azXWtQZjICdr3Q0TDPIaeBQ3mXLrh54wM+er0+hSp+dWKf+Z8KM58CYzEyIYxYg==} engines: {node: '>=6'} dependencies: chalk: 2.4.2 cli-cursor: 2.1.0 - cli-spinners: 2.9.1 + cli-spinners: 2.9.2 log-symbols: 2.2.0 strip-ansi: 5.2.0 wcwidth: 1.0.1 @@ -26444,7 +26464,6 @@ packages: /pako@2.1.0: resolution: {integrity: sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==} - dev: false /param-case@3.0.4: resolution: {integrity: sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==} @@ -26562,6 +26581,7 @@ packages: /path-browserify@1.0.1: resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} + dev: true /path-exists@3.0.0: resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==} @@ -26628,6 +26648,10 @@ packages: /pathe@1.1.1: resolution: {integrity: sha512-d+RQGp0MAYTIaDBIMmOfMwz3E+LOZnxx1HZd5R18mmCZY0QBlK0LDZfPc8FW8Ed2DlvsuE6PRjroDY+wg4+j/Q==} + /pathe@1.1.2: + resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} + dev: true + /pathval@1.1.1: resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==} dev: true @@ -26656,6 +26680,10 @@ packages: resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} engines: {node: '>=8.6'} + /picomatch@3.0.1: + resolution: {integrity: sha512-I3EurrIQMlRc9IaAZnqRR044Phh2DXY+55o7uJ0V+hYZAcQYSuFWsc9q5PvyDHUSCe1Qxn/iBz+78s86zWnGag==} + engines: {node: '>=10'} + /pidtree@0.6.0: resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==} engines: {node: '>=0.10'} @@ -26907,14 +26935,31 @@ packages: ts-node: 10.9.2(@types/node@20.11.25)(typescript@5.3.3) yaml: 2.3.3 - /postcss-loader@7.3.3(postcss@8.4.35)(typescript@5.3.3)(webpack@5.89.0): + /postcss-load-config@4.0.2(ts-node@10.9.2): + resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==} + engines: {node: '>= 14'} + peerDependencies: + postcss: '>=8.0.9' + ts-node: '>=9.0.0' + peerDependenciesMeta: + postcss: + optional: true + ts-node: + optional: true + dependencies: + lilconfig: 3.1.1 + ts-node: 10.9.2(@types/node@20.11.25)(typescript@5.3.3) + yaml: 2.4.1 + dev: true + + /postcss-loader@7.3.3(postcss@8.4.35)(typescript@5.4.2)(webpack@5.89.0): resolution: {integrity: sha512-YgO/yhtevGO/vJePCQmTxiaEwER94LABZN0ZMT4A0vsak9TpO+RvKRs7EmJ8peIlB9xfXCsS7M8LjqncsUZ5HA==} engines: {node: '>= 14.15.0'} peerDependencies: postcss: ^7.0.0 || ^8.0.1 webpack: ^5.0.0 dependencies: - cosmiconfig: 8.3.6(typescript@5.3.3) + cosmiconfig: 8.3.6(typescript@5.4.2) jiti: 1.21.0 postcss: 8.4.35 semver: 7.5.4 @@ -27210,9 +27255,10 @@ packages: resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} engines: {node: ^10 || ^12 || >=14} dependencies: - nanoid: 3.3.6 + nanoid: 3.3.7 picocolors: 1.0.0 source-map-js: 1.0.2 + dev: false /postcss@8.4.35: resolution: {integrity: sha512-u5U8qYpBCpN13BsiEB0CbR1Hhh4Gc0zLFuedrHJKMctHCHAGrMdG0PRM/KErzAL3CU6/eckEtmHNB3x6e3c0vA==} @@ -27266,91 +27312,12 @@ packages: engines: {node: '>= 0.8.0'} dev: false - /prelude-ls@1.2.1: - resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} - engines: {node: '>= 0.8.0'} - - /prettier-plugin-packagejson@2.4.12(prettier@3.2.5): - resolution: {integrity: sha512-hifuuOgw5rHHTdouw9VrhT8+Nd7UwxtL1qco8dUfd4XUFQL6ia3xyjSxhPQTsGnSYFraTWy5Omb+MZm/OWDTpQ==} - peerDependencies: - prettier: '>= 1.16.0' - peerDependenciesMeta: - prettier: - optional: true - dependencies: - prettier: 3.2.5 - sort-package-json: 2.8.0 - synckit: 0.9.0 - dev: true - - /prettier-plugin-tailwindcss@0.5.12(@ianvs/prettier-plugin-sort-imports@4.1.1)(prettier@3.2.5): - resolution: {integrity: sha512-o74kiDBVE73oHW+pdkFSluHBL3cYEvru5YgEqNkBMFF7Cjv+w1vI565lTlfoJT4VLWDe0FMtZ7FkE/7a4pMXSQ==} - engines: {node: '>=14.21.3'} - peerDependencies: - '@ianvs/prettier-plugin-sort-imports': '*' - '@prettier/plugin-pug': '*' - '@shopify/prettier-plugin-liquid': '*' - '@trivago/prettier-plugin-sort-imports': '*' - prettier: ^3.0 - prettier-plugin-astro: '*' - prettier-plugin-css-order: '*' - prettier-plugin-import-sort: '*' - prettier-plugin-jsdoc: '*' - prettier-plugin-marko: '*' - prettier-plugin-organize-attributes: '*' - prettier-plugin-organize-imports: '*' - prettier-plugin-sort-imports: '*' - prettier-plugin-style-order: '*' - prettier-plugin-svelte: '*' - prettier-plugin-twig-melody: '*' - peerDependenciesMeta: - '@ianvs/prettier-plugin-sort-imports': - optional: true - '@prettier/plugin-pug': - optional: true - '@shopify/prettier-plugin-liquid': - optional: true - '@trivago/prettier-plugin-sort-imports': - optional: true - prettier-plugin-astro: - optional: true - prettier-plugin-css-order: - optional: true - prettier-plugin-import-sort: - optional: true - prettier-plugin-jsdoc: - optional: true - prettier-plugin-marko: - optional: true - prettier-plugin-organize-attributes: - optional: true - prettier-plugin-organize-imports: - optional: true - prettier-plugin-sort-imports: - optional: true - prettier-plugin-style-order: - optional: true - prettier-plugin-svelte: - optional: true - prettier-plugin-twig-melody: - optional: true - dependencies: - '@ianvs/prettier-plugin-sort-imports': 4.1.1(prettier@3.2.5) - prettier: 3.2.5 - dev: true - /prettier@2.8.8: resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==} engines: {node: '>=10.13.0'} hasBin: true dev: false - /prettier@3.2.5: - resolution: {integrity: sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==} - engines: {node: '>=14'} - hasBin: true - dev: true - /pretty-bytes@5.6.0: resolution: {integrity: sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==} engines: {node: '>=6'} @@ -27466,6 +27433,15 @@ packages: uint8arraylist: 2.4.8 uint8arrays: 5.0.1 + /protons-runtime@5.4.0: + resolution: {integrity: sha512-XfA++W/WlQOSyjUyuF5lgYBfXZUEMP01Oh1C2dSwZAlF2e/ZrMRPfWonXj6BGM+o8Xciv7w0tsRMKYwYEuQvaw==} + requiresBuild: true + dependencies: + uint8-varint: 2.0.4 + uint8arraylist: 2.4.8 + uint8arrays: 5.0.2 + optional: true + /proxy-addr@2.0.7: resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==} engines: {node: '>= 0.10'} @@ -27519,7 +27495,6 @@ packages: /punycode@2.3.1: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} - dev: false /pupa@3.1.0: resolution: {integrity: sha512-FLpr4flz5xZTSJxSeaheeMKN/EDzMdK7b8PTOC6a5PYFKTucWbdqjgqaEyH0shFiSJrVB1+Qqi4Tk19ccU6Aug==} @@ -27607,6 +27582,7 @@ packages: /querystringify@2.2.0: resolution: {integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==} + dev: false /queue-microtask@1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} @@ -27678,15 +27654,6 @@ packages: iconv-lite: 0.4.24 unpipe: 1.0.0 - /raw-body@2.5.2: - resolution: {integrity: sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==} - engines: {node: '>= 0.8'} - dependencies: - bytes: 3.1.2 - http-errors: 2.0.0 - iconv-lite: 0.4.24 - unpipe: 1.0.0 - /rc@1.2.8: resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} hasBin: true @@ -27707,8 +27674,9 @@ packages: engines: {node: '>=18'} dependencies: setimmediate: 1.0.5 + dev: false - /react-dev-utils@12.0.1(eslint@8.57.0)(typescript@5.3.3)(webpack@5.89.0): + /react-dev-utils@12.0.1(typescript@5.4.2)(webpack@5.89.0): resolution: {integrity: sha512-84Ivxmr17KjUupyqzFode6xKhjwuEJDROWKJy/BthkL7Wn6NJ8h4WE6k/exAv6ImS+0oZLRRW5j/aINMHyeGeQ==} engines: {node: '>=14'} peerDependencies: @@ -27727,7 +27695,7 @@ packages: escape-string-regexp: 4.0.0 filesize: 8.0.7 find-up: 5.0.0 - fork-ts-checker-webpack-plugin: 6.5.3(eslint@8.57.0)(typescript@5.3.3)(webpack@5.89.0) + fork-ts-checker-webpack-plugin: 6.5.3(typescript@5.4.2)(webpack@5.89.0) global-modules: 2.0.0 globby: 11.1.0 gzip-size: 6.0.0 @@ -27742,7 +27710,7 @@ packages: shell-quote: 1.8.1 strip-ansi: 6.0.1 text-table: 0.2.0 - typescript: 5.3.3 + typescript: 5.4.2 webpack: 5.89.0 transitivePeerDependencies: - eslint @@ -27787,7 +27755,7 @@ packages: react-fast-compare: 3.2.2 shallowequal: 1.1.0 - /react-i18next@13.5.0(i18next@22.5.1)(react-dom@18.2.0)(react-native@0.72.6)(react@18.2.0): + /react-i18next@13.5.0(i18next@22.5.1)(react-dom@18.2.0)(react-native@0.73.5)(react@18.2.0): resolution: {integrity: sha512-CFJ5NDGJ2MUyBohEHxljOq/39NQ972rh1ajnadG9BjTk+UXbHLq4z5DKEbEQBDoIhUmmbuS/fIMJKo6VOax1HA==} peerDependencies: i18next: '>= 23.2.3' @@ -27805,7 +27773,7 @@ packages: i18next: 22.5.1 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) - react-native: 0.72.6(@babel/core@7.23.2)(@babel/preset-env@7.23.2)(encoding@0.1.13)(react@18.2.0) + react-native: 0.73.5(@babel/core@7.24.0)(@babel/preset-env@7.24.0)(encoding@0.1.13)(react@18.2.0) dev: false /react-is@16.13.1: @@ -27837,25 +27805,26 @@ packages: react-loadable: /@docusaurus/react-loadable@5.5.2(react@18.2.0) webpack: 5.89.0 - /react-native-securerandom@0.1.1(react-native@0.72.6): + /react-native-securerandom@0.1.1(react-native@0.73.5): resolution: {integrity: sha512-CozcCx0lpBLevxiXEb86kwLRalBCHNjiGPlw3P7Fi27U6ZLdfjOCNRHD1LtBKcvPvI3TvkBXB3GOtLvqaYJLGw==} requiresBuild: true peerDependencies: react-native: '*' dependencies: base64-js: 1.5.1 - react-native: 0.72.6(@babel/core@7.23.2)(@babel/preset-env@7.23.2)(react@18.2.0) + react-native: 0.73.5(@babel/core@7.24.0)(@babel/preset-env@7.24.0)(react@18.2.0) optional: true - /react-native-securerandom@1.0.1(react-native@0.72.6): + /react-native-securerandom@1.0.1(react-native@0.73.5): resolution: {integrity: sha512-ibuDnd3xi17HyD5CkilOXGPFpS9Z1oifjyHFwUl8NMzcQcpruM0ZX8ytr3A4rCeAsaBHjz69r78Xgd6vUswv1Q==} peerDependencies: react-native: '*' dependencies: base64-js: 1.5.1 - react-native: 0.72.6(@babel/core@7.23.2)(@babel/preset-env@7.23.2)(react@18.2.0) + react-native: 0.73.5(@babel/core@7.24.0)(@babel/preset-env@7.24.0)(react@18.2.0) + dev: false - /react-native-webview@11.26.1(react-native@0.72.6)(react@18.2.0): + /react-native-webview@11.26.1(react-native@0.73.5)(react@18.2.0): resolution: {integrity: sha512-hC7BkxOpf+z0UKhxFSFTPAM4shQzYmZHoELa6/8a/MspcjEP7ukYKpuSUTLDywQditT8yI9idfcKvfZDKQExGw==} peerDependencies: react: '*' @@ -27864,51 +27833,53 @@ packages: escape-string-regexp: 2.0.0 invariant: 2.2.4 react: 18.2.0 - react-native: 0.72.6(@babel/core@7.23.2)(@babel/preset-env@7.23.2)(encoding@0.1.13)(react@18.2.0) + react-native: 0.73.5(@babel/core@7.24.0)(@babel/preset-env@7.24.0)(encoding@0.1.13)(react@18.2.0) dev: false - /react-native@0.72.6(@babel/core@7.23.2)(@babel/preset-env@7.23.2)(encoding@0.1.13)(react@18.2.0): - resolution: {integrity: sha512-RafPY2gM7mcrFySS8TL8x+TIO3q7oAlHpzEmC7Im6pmXni6n1AuufGaVh0Narbr1daxstw7yW7T9BKW5dpVc2A==} - engines: {node: '>=16'} + /react-native@0.73.5(@babel/core@7.24.0)(@babel/preset-env@7.24.0)(encoding@0.1.13)(react@18.2.0): + resolution: {integrity: sha512-iHgDArmF4CrhL0qTj+Rn+CBN5pZWUL9lUGl8ub+V9Hwu/vnzQQh8rTMVSwVd2sV6N76KjpE5a4TfIAHkpIHhKg==} + engines: {node: '>=18'} hasBin: true peerDependencies: react: 18.2.0 dependencies: '@jest/create-cache-key-function': 29.7.0 - '@react-native-community/cli': 11.3.7(@babel/core@7.23.2)(encoding@0.1.13) - '@react-native-community/cli-platform-android': 11.3.7(encoding@0.1.13) - '@react-native-community/cli-platform-ios': 11.3.7(encoding@0.1.13) - '@react-native/assets-registry': 0.72.0 - '@react-native/codegen': 0.72.7(@babel/preset-env@7.23.2) - '@react-native/gradle-plugin': 0.72.11 - '@react-native/js-polyfills': 0.72.1 - '@react-native/normalize-colors': 0.72.0 - '@react-native/virtualized-lists': 0.72.8(react-native@0.72.6) + '@react-native-community/cli': 12.3.6(encoding@0.1.13) + '@react-native-community/cli-platform-android': 12.3.6(encoding@0.1.13) + '@react-native-community/cli-platform-ios': 12.3.6(encoding@0.1.13) + '@react-native/assets-registry': 0.73.1 + '@react-native/codegen': 0.73.3(@babel/preset-env@7.24.0) + '@react-native/community-cli-plugin': 0.73.17(@babel/core@7.24.0)(@babel/preset-env@7.24.0)(encoding@0.1.13) + '@react-native/gradle-plugin': 0.73.4 + '@react-native/js-polyfills': 0.73.1 + '@react-native/normalize-colors': 0.73.2 + '@react-native/virtualized-lists': 0.73.4(react-native@0.73.5) abort-controller: 3.0.0 anser: 1.4.10 + ansi-regex: 5.0.1 base64-js: 1.5.1 - deprecated-react-native-prop-types: 4.1.0 + chalk: 4.1.2 + deprecated-react-native-prop-types: 5.0.0 event-target-shim: 5.0.1 - flow-enums-runtime: 0.0.5 + flow-enums-runtime: 0.0.6 invariant: 2.2.4 jest-environment-node: 29.7.0 jsc-android: 250231.0.0 memoize-one: 5.2.1 - metro-runtime: 0.76.8 - metro-source-map: 0.76.8 + metro-runtime: 0.80.6 + metro-source-map: 0.80.6 mkdirp: 0.5.6 nullthrows: 1.1.1 pretty-format: 26.6.2 promise: 8.3.0 react: 18.2.0 react-devtools-core: 4.28.5 - react-refresh: 0.4.3 + react-refresh: 0.14.0 react-shallow-renderer: 16.15.0(react@18.2.0) regenerator-runtime: 0.13.11 scheduler: 0.24.0-canary-efb381bbf-20230505 stacktrace-parser: 0.1.10 - use-sync-external-store: 1.2.0(react@18.2.0) - whatwg-fetch: 3.6.19 + whatwg-fetch: 3.6.20 ws: 6.2.2 yargs: 17.7.2 transitivePeerDependencies: @@ -27918,50 +27889,51 @@ packages: - encoding - supports-color - utf-8-validate - dev: false - /react-native@0.72.6(@babel/core@7.23.2)(@babel/preset-env@7.23.2)(react@18.2.0): - resolution: {integrity: sha512-RafPY2gM7mcrFySS8TL8x+TIO3q7oAlHpzEmC7Im6pmXni6n1AuufGaVh0Narbr1daxstw7yW7T9BKW5dpVc2A==} - engines: {node: '>=16'} + /react-native@0.73.5(@babel/core@7.24.0)(@babel/preset-env@7.24.0)(react@18.2.0): + resolution: {integrity: sha512-iHgDArmF4CrhL0qTj+Rn+CBN5pZWUL9lUGl8ub+V9Hwu/vnzQQh8rTMVSwVd2sV6N76KjpE5a4TfIAHkpIHhKg==} + engines: {node: '>=18'} hasBin: true peerDependencies: react: 18.2.0 dependencies: '@jest/create-cache-key-function': 29.7.0 - '@react-native-community/cli': 11.3.7(@babel/core@7.23.2) - '@react-native-community/cli-platform-android': 11.3.7(encoding@0.1.13) - '@react-native-community/cli-platform-ios': 11.3.7(encoding@0.1.13) - '@react-native/assets-registry': 0.72.0 - '@react-native/codegen': 0.72.7(@babel/preset-env@7.23.2) - '@react-native/gradle-plugin': 0.72.11 - '@react-native/js-polyfills': 0.72.1 - '@react-native/normalize-colors': 0.72.0 - '@react-native/virtualized-lists': 0.72.8(react-native@0.72.6) + '@react-native-community/cli': 12.3.6(encoding@0.1.13) + '@react-native-community/cli-platform-android': 12.3.6(encoding@0.1.13) + '@react-native-community/cli-platform-ios': 12.3.6(encoding@0.1.13) + '@react-native/assets-registry': 0.73.1 + '@react-native/codegen': 0.73.3(@babel/preset-env@7.24.0) + '@react-native/community-cli-plugin': 0.73.17(@babel/core@7.24.0)(@babel/preset-env@7.24.0) + '@react-native/gradle-plugin': 0.73.4 + '@react-native/js-polyfills': 0.73.1 + '@react-native/normalize-colors': 0.73.2 + '@react-native/virtualized-lists': 0.73.4(react-native@0.73.5) abort-controller: 3.0.0 anser: 1.4.10 + ansi-regex: 5.0.1 base64-js: 1.5.1 - deprecated-react-native-prop-types: 4.1.0 + chalk: 4.1.2 + deprecated-react-native-prop-types: 5.0.0 event-target-shim: 5.0.1 - flow-enums-runtime: 0.0.5 + flow-enums-runtime: 0.0.6 invariant: 2.2.4 jest-environment-node: 29.7.0 jsc-android: 250231.0.0 memoize-one: 5.2.1 - metro-runtime: 0.76.8 - metro-source-map: 0.76.8 + metro-runtime: 0.80.6 + metro-source-map: 0.80.6 mkdirp: 0.5.6 nullthrows: 1.1.1 pretty-format: 26.6.2 promise: 8.3.0 react: 18.2.0 react-devtools-core: 4.28.5 - react-refresh: 0.4.3 + react-refresh: 0.14.0 react-shallow-renderer: 16.15.0(react@18.2.0) regenerator-runtime: 0.13.11 scheduler: 0.24.0-canary-efb381bbf-20230505 stacktrace-parser: 0.1.10 - use-sync-external-store: 1.2.0(react@18.2.0) - whatwg-fetch: 3.6.19 + whatwg-fetch: 3.6.20 ws: 6.2.2 yargs: 17.7.2 transitivePeerDependencies: @@ -27972,11 +27944,11 @@ packages: - supports-color - utf-8-validate - /react-refresh@0.4.3: - resolution: {integrity: sha512-Hwln1VNuGl/6bVwnd0Xdn1e84gT/8T9aYNL+HAKDArLCS7LWjwr7StE30IEYbIkx0Vi3vs+coQxe+SQDbGbbpA==} + /react-refresh@0.14.0: + resolution: {integrity: sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==} engines: {node: '>=0.10.0'} - /react-remove-scroll-bar@2.3.4(@types/react@18.2.63)(react@18.2.0): + /react-remove-scroll-bar@2.3.4(@types/react@18.2.64)(react@18.2.0): resolution: {integrity: sha512-63C4YQBUt0m6ALadE9XV56hV8BgJWDmmTPY758iIJjfQKt2nYwoUrPk0LXRXcB/yIj82T1/Ixfdpdk68LwIB0A==} engines: {node: '>=10'} peerDependencies: @@ -27986,13 +27958,13 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.63 + '@types/react': 18.2.64 react: 18.2.0 - react-style-singleton: 2.2.1(@types/react@18.2.63)(react@18.2.0) + react-style-singleton: 2.2.1(@types/react@18.2.64)(react@18.2.0) tslib: 2.6.2 dev: false - /react-remove-scroll@2.5.7(@types/react@18.2.63)(react@18.2.0): + /react-remove-scroll@2.5.7(@types/react@18.2.64)(react@18.2.0): resolution: {integrity: sha512-FnrTWO4L7/Bhhf3CYBNArEG/yROV0tKmTv7/3h9QCFvH6sndeFf1wPqOcbFVu5VAulS5dV1wGT3GZZ/1GawqiA==} engines: {node: '>=10'} peerDependencies: @@ -28002,13 +27974,13 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.63 + '@types/react': 18.2.64 react: 18.2.0 - react-remove-scroll-bar: 2.3.4(@types/react@18.2.63)(react@18.2.0) - react-style-singleton: 2.2.1(@types/react@18.2.63)(react@18.2.0) + react-remove-scroll-bar: 2.3.4(@types/react@18.2.64)(react@18.2.0) + react-style-singleton: 2.2.1(@types/react@18.2.64)(react@18.2.0) tslib: 2.6.2 - use-callback-ref: 1.3.0(@types/react@18.2.63)(react@18.2.0) - use-sidecar: 1.1.2(@types/react@18.2.63)(react@18.2.0) + use-callback-ref: 1.3.0(@types/react@18.2.64)(react@18.2.0) + use-sidecar: 1.1.2(@types/react@18.2.64)(react@18.2.0) dev: false /react-router-config@5.1.1(react-router@5.3.4)(react@18.2.0): @@ -28072,7 +28044,7 @@ packages: - supports-color dev: false - /react-style-singleton@2.2.1(@types/react@18.2.63)(react@18.2.0): + /react-style-singleton@2.2.1(@types/react@18.2.64)(react@18.2.0): resolution: {integrity: sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==} engines: {node: '>=10'} peerDependencies: @@ -28082,14 +28054,14 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.63 + '@types/react': 18.2.64 get-nonce: 1.0.1 invariant: 2.2.4 react: 18.2.0 tslib: 2.6.2 dev: false - /react-textarea-autosize@8.5.2(@types/react@18.2.63)(react@18.2.0): + /react-textarea-autosize@8.5.2(@types/react@18.2.64)(react@18.2.0): resolution: {integrity: sha512-uOkyjkEl0ByEK21eCJMHDGBAAd/BoFQBawYK5XItjAmCTeSbjxghd8qnt7nzsLYzidjnoObu6M26xts0YGKsGg==} engines: {node: '>=10'} peerDependencies: @@ -28098,7 +28070,7 @@ packages: '@babel/runtime': 7.23.2 react: 18.2.0 use-composed-ref: 1.3.0(react@18.2.0) - use-latest: 1.2.1(@types/react@18.2.63)(react@18.2.0) + use-latest: 1.2.1(@types/react@18.2.64)(react@18.2.0) transitivePeerDependencies: - '@types/react' dev: false @@ -28265,18 +28237,6 @@ packages: resolution: {integrity: sha512-i5lLI6iw9AU3Uu4szRNPPEkomnkjRTaVt9hy/bn5g/oSzekBSMeLZblcjP74AW0vBabqERLLIrz+gR8QYR54Tw==} dev: true - /reflect.getprototypeof@1.0.4: - resolution: {integrity: sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - get-intrinsic: 1.2.2 - globalthis: 1.0.3 - which-builtin-type: 1.1.3 - dev: true - /regenerate-unicode-properties@10.1.1: resolution: {integrity: sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==} engines: {node: '>=4'} @@ -28292,6 +28252,9 @@ packages: /regenerator-runtime@0.14.0: resolution: {integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==} + /regenerator-runtime@0.14.1: + resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} + /regenerator-transform@0.15.2: resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==} dependencies: @@ -28304,6 +28267,7 @@ packages: call-bind: 1.0.2 define-properties: 1.2.0 functions-have-names: 1.2.3 + dev: false /regexp.prototype.flags@1.5.1: resolution: {integrity: sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==} @@ -28312,6 +28276,7 @@ packages: call-bind: 1.0.5 define-properties: 1.2.1 set-function-name: 2.0.1 + dev: false /regexpu-core@5.3.2: resolution: {integrity: sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==} @@ -28471,9 +28436,6 @@ packages: /requires-port@1.0.0: resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==} - /reselect@4.1.8: - resolution: {integrity: sha512-ab9EmR80F/zQTMNeneUr4cv+jSwPJgIlvEmVwLerwrWVbpLlBuls9XHzIeTFy4cegU2NHBp3va0LKOzU5qFEYQ==} - /resolve-alpn@1.2.1: resolution: {integrity: sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==} @@ -28511,7 +28473,6 @@ packages: /resolve.exports@2.0.2: resolution: {integrity: sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==} engines: {node: '>=10'} - dev: true /resolve@1.22.4: resolution: {integrity: sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==} @@ -28534,15 +28495,6 @@ packages: dependencies: path-parse: 1.0.7 - /resolve@2.0.0-next.5: - resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==} - hasBin: true - dependencies: - is-core-module: 2.13.1 - path-parse: 1.0.7 - supports-preserve-symlinks-flag: 1.0.0 - dev: true - /responselike@3.0.0: resolution: {integrity: sha512-40yHxbNcl2+rzXvZuVkrYohathsSJlMTXKryG5y8uciHv1+xDLHQpgjG64JUO9nrEq2jGLH6IZ8BcZyw3wrweg==} engines: {node: '>=14.16'} @@ -28660,22 +28612,6 @@ packages: yargs: 17.7.2 dev: false - /rollup@3.27.2: - resolution: {integrity: sha512-YGwmHf7h2oUHkVBT248x0yt6vZkYQ3/rvE5iQuVBh3WO8GcJ6BNeOkpoX1yMHIiBm18EMLjBPIoUDkhgnyxGOQ==} - engines: {node: '>=14.18.0', npm: '>=8.0.0'} - hasBin: true - optionalDependencies: - fsevents: 2.3.3 - dev: true - - /rollup@3.29.4: - resolution: {integrity: sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==} - engines: {node: '>=14.18.0', npm: '>=8.0.0'} - hasBin: true - optionalDependencies: - fsevents: 2.3.3 - dev: true - /rollup@4.12.1: resolution: {integrity: sha512-ggqQKvx/PsB0FaWXhIvVkSWh7a/PCLQAsMjBc+nA2M8Rv2/HG0X6zvixAB7KyZBRtifBUhy5k8voQX/mRnABPg==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} @@ -28748,6 +28684,7 @@ packages: get-intrinsic: 1.2.1 has-symbols: 1.0.3 isarray: 2.0.5 + dev: false /safe-array-concat@1.0.1: resolution: {integrity: sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==} @@ -28757,6 +28694,7 @@ packages: get-intrinsic: 1.2.2 has-symbols: 1.0.3 isarray: 2.0.5 + dev: false /safe-buffer@5.1.2: resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} @@ -28775,6 +28713,7 @@ packages: call-bind: 1.0.5 get-intrinsic: 1.2.2 is-regex: 1.1.4 + dev: false /safe-stable-stringify@2.4.3: resolution: {integrity: sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==} @@ -28854,8 +28793,8 @@ packages: /scrypt-js@3.0.1: resolution: {integrity: sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==} - /search-insights@2.9.0: - resolution: {integrity: sha512-bkWW9nIHOFkLwjQ1xqVaMbjjO5vhP26ERsH9Y3pKr8imthofEFIxlnOabkmGcw6ksRj9jWidcI65vvjJH/nTGg==} + /search-insights@2.13.0: + resolution: {integrity: sha512-Orrsjf9trHHxFRuo9/rzm0KIWmgzE8RMlZMzuhZOJ01Rnz3D0YBAe+V6473t6/H6c7irs6Lt48brULAiRWb3Vw==} dev: false /secp256k1@3.7.1: @@ -28952,7 +28891,6 @@ packages: hasBin: true dependencies: lru-cache: 6.0.0 - dev: true /send@0.18.0: resolution: {integrity: sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==} @@ -28978,12 +28916,6 @@ packages: resolution: {integrity: sha512-ghgmKt5o4Tly5yEG/UJp8qTd0AN7Xalw4XBtDEKP655B699qMEtra1WlXeE6WIvdEG481JvRxULKsInq/iNysw==} engines: {node: '>=0.10.0'} - /serialize-error@6.0.0: - resolution: {integrity: sha512-3vmBkMZLQO+BR4RPHcyRGdE09XCF6cvxzk2N2qn8Er3F91cy8Qt7VvEbZBOpaL53qsBbe2cFOefU6tRY6WDelA==} - engines: {node: '>=10'} - dependencies: - type-fest: 0.12.0 - /serialize-error@7.0.1: resolution: {integrity: sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==} engines: {node: '>=10'} @@ -29002,6 +28934,12 @@ packages: dependencies: randombytes: 2.1.0 + /serialize-javascript@6.0.2: + resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==} + dependencies: + randombytes: 2.1.0 + dev: true + /serve-handler@6.1.5: resolution: {integrity: sha512-ijPFle6Hwe8zfmBxJdE+5fta53fdIY0lHISJvuikXB3VYFafRjMRpOffSPvCYsbKyBA7pvy9oYr/BT1O3EArlg==} dependencies: @@ -29068,6 +29006,7 @@ packages: define-data-property: 1.1.1 functions-have-names: 1.2.3 has-property-descriptors: 1.0.1 + dev: false /setimmediate@1.0.5: resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==} @@ -29364,23 +29303,6 @@ packages: resolution: {integrity: sha512-IeWvo8NkNiY2vVYdPa27MCQiR0MN0M80johAYFVxWWXQ44KU84WNxjslwBHmc/7ZL2ccwkM7/e6S5aiKZXm7jA==} engines: {node: '>= 6.3.0'} - /sort-object-keys@1.1.3: - resolution: {integrity: sha512-855pvK+VkU7PaKYPc+Jjnmt4EzejQHyhhF33q31qG8x7maDzkeFhAAThdCYay11CISO+qAMwjOBP+fPZe0IPyg==} - dev: true - - /sort-package-json@2.8.0: - resolution: {integrity: sha512-PxeNg93bTJWmDGnu0HADDucoxfFiKkIr73Kv85EBThlI1YQPdc0XovBgg2llD0iABZbu2SlKo8ntGmOP9wOj/g==} - hasBin: true - dependencies: - detect-indent: 7.0.1 - detect-newline: 4.0.1 - get-stdin: 9.0.0 - git-hooks-list: 3.1.0 - globby: 13.2.2 - is-plain-obj: 4.1.0 - sort-object-keys: 1.1.3 - dev: true - /source-list-map@2.0.1: resolution: {integrity: sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==} dev: true @@ -29617,7 +29539,6 @@ packages: /streamsearch@1.1.0: resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==} engines: {node: '>=10.0.0'} - dev: false /strict-uri-encode@2.0.0: resolution: {integrity: sha512-QwiXZgpRcKkhTj2Scnn++4PKtWsH0kpzZ62L2R6c/LUVYv7hVnZqcg2+sMuT6R7Jusu1vviK/MFsu6kNJfWlEQ==} @@ -29666,20 +29587,6 @@ packages: resolution: {integrity: sha512-2cBVCj6I4IOvEnjgO/hWqXjqBGsY+zwPmHl12Srk9IXSZ56Jwwmy+66XO5Iut/oQVR7t5ihYdLB0GMa4alEUcg==} dev: false - /string.prototype.matchall@4.0.10: - resolution: {integrity: sha512-rGXbGmOEosIQi6Qva94HUjgPs9vKW+dkG7Y8Q5O2OYkWL6wFaTRZO8zM4mhP94uX55wgyrXzfS2aGtGzUL7EJQ==} - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - get-intrinsic: 1.2.2 - has-symbols: 1.0.3 - internal-slot: 1.0.6 - regexp.prototype.flags: 1.5.1 - set-function-name: 2.0.1 - side-channel: 1.0.4 - dev: true - /string.prototype.matchall@4.0.8: resolution: {integrity: sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==} dependencies: @@ -29700,6 +29607,7 @@ packages: call-bind: 1.0.2 define-properties: 1.2.0 es-abstract: 1.22.1 + dev: false /string.prototype.trim@1.2.8: resolution: {integrity: sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==} @@ -29708,6 +29616,7 @@ packages: call-bind: 1.0.5 define-properties: 1.2.1 es-abstract: 1.22.3 + dev: false /string.prototype.trimend@1.0.6: resolution: {integrity: sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==} @@ -29715,6 +29624,7 @@ packages: call-bind: 1.0.2 define-properties: 1.2.0 es-abstract: 1.22.1 + dev: false /string.prototype.trimend@1.0.7: resolution: {integrity: sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==} @@ -29722,6 +29632,7 @@ packages: call-bind: 1.0.5 define-properties: 1.2.1 es-abstract: 1.22.3 + dev: false /string.prototype.trimstart@1.0.6: resolution: {integrity: sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==} @@ -29729,6 +29640,7 @@ packages: call-bind: 1.0.2 define-properties: 1.2.0 es-abstract: 1.22.1 + dev: false /string.prototype.trimstart@1.0.7: resolution: {integrity: sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==} @@ -29736,6 +29648,7 @@ packages: call-bind: 1.0.5 define-properties: 1.2.1 es-abstract: 1.22.3 + dev: false /string_decoder@1.0.3: resolution: {integrity: sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==} @@ -29832,12 +29745,6 @@ packages: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} engines: {node: '>=8'} - /strip-literal@1.3.0: - resolution: {integrity: sha512-PugKzOsyXpArk0yWmUwqOZecSO0GH0bPoctLcqNDH9J04pVW3lflYE0ujElBGTloevcxF5MofAOZ7C5l2b+wLg==} - dependencies: - acorn: 8.11.2 - dev: true - /strip-literal@2.0.0: resolution: {integrity: sha512-f9vHgsCWBq2ugHAkGMiiYY+AYG0D/cbloKKg0nhaaaSNsujdGIpVXCNsrJpCKr5M0f4aI31mr13UjY6GAuXCKA==} dependencies: @@ -29870,7 +29777,7 @@ packages: dependencies: inline-style-parser: 0.2.2 - /styled-jsx@5.1.1(@babel/core@7.23.2)(react@18.2.0): + /styled-jsx@5.1.1(@babel/core@7.24.0)(react@18.2.0): resolution: {integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==} engines: {node: '>= 12.0.0'} peerDependencies: @@ -29883,7 +29790,7 @@ packages: babel-plugin-macros: optional: true dependencies: - '@babel/core': 7.23.2 + '@babel/core': 7.24.0 client-only: 0.0.1 react: 18.2.0 dev: false @@ -29921,6 +29828,20 @@ packages: pirates: 4.0.6 ts-interface-checker: 0.1.13 + /sucrase@3.35.0: + resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==} + engines: {node: '>=16 || 14 >=14.17'} + hasBin: true + dependencies: + '@jridgewell/gen-mapping': 0.3.5 + commander: 4.1.1 + glob: 10.3.10 + lines-and-columns: 1.2.4 + mz: 2.7.0 + pirates: 4.0.6 + ts-interface-checker: 0.1.13 + dev: true + /sudo-prompt@8.2.5: resolution: {integrity: sha512-rlBo3HU/1zAJUrkY6jNxDOC9eVYliG6nS4JA8u8KAshITd07tafMc/Br7xQwCSseXwJ2iCcHCE8SNWX3q8Z+kw==} @@ -30030,14 +29951,6 @@ packages: resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==} dev: false - /synckit@0.9.0: - resolution: {integrity: sha512-7RnqIMq572L8PeEzKeBINYEJDDxpcH8JEgLwUqBd3TkofhFRbkq4QLR0u+36avGAhCRbk2nnmjcW9SE531hPDg==} - engines: {node: ^14.18.0 || >=16.0.0} - dependencies: - '@pkgr/core': 0.1.1 - tslib: 2.6.2 - dev: true - /syntax-error@1.4.0: resolution: {integrity: sha512-YPPlu67mdnHGTup2A8ff7BC2Pjq0e0Yp/IyTFN03zWO0RcK07uLcbi7C2KpGR2FvWbaB0+bfE27a+sBKebSo7w==} dependencies: @@ -30053,6 +29966,12 @@ packages: resolution: {integrity: sha512-3mFKyCo/MBcgyOTlrY8T7odzZFx+w+qKSMAmdFzRvqBfLlSigU6TZnlFHK0lkMwj9Bj8OYU+9yW9lmGuS0QEnQ==} dev: false + /tailwind-merge@2.2.1: + resolution: {integrity: sha512-o+2GTLkthfa5YUt4JxPfzMIpQzZ3adD1vLVkvKE1Twl9UAhGsEbIZhHHZVRttyW177S8PDJI3bTQNaebyofK3Q==} + dependencies: + '@babel/runtime': 7.24.0 + dev: false + /tailwind-scrollbar@3.1.0(tailwindcss@3.4.1): resolution: {integrity: sha512-pmrtDIZeHyu2idTejfV59SbaJyvp1VRjYxAjZBH0jnyrPRo6HL1kD5Glz8VPagasqr6oAx6M05+Tuw429Z8jxg==} engines: {node: '>=12.13.0'} @@ -30072,6 +29991,16 @@ packages: tailwindcss: 3.4.1(ts-node@10.9.2) dev: false + /tailwind-variants@0.2.0(tailwindcss@3.4.1): + resolution: {integrity: sha512-EuW5Sic7c0tzp+p5rJwAgb7398Jb0hi4zkyCstOoZPW0DWwr+EWkNtnZYEo5CjgE1tazHUzyt4oIhss64UXRVA==} + engines: {node: '>=16.x', pnpm: '>=7.x'} + peerDependencies: + tailwindcss: '*' + dependencies: + tailwind-merge: 2.2.1 + tailwindcss: 3.4.1(ts-node@10.9.2) + dev: false + /tailwindcss@3.4.1(ts-node@10.9.2): resolution: {integrity: sha512-qAYmXRfk3ENzuPBakNK0SRrUDipP8NQnEY6772uDhflcQz5EhRdD7JNZxyrFHVQNCwULPBn6FNPp9brpO7ctcA==} engines: {node: '>=14.0.0'} @@ -30197,8 +30126,8 @@ packages: ansi-escapes: 4.3.2 supports-hyperlinks: 2.3.0 - /terser-webpack-plugin@5.3.9(@swc/core@1.3.78)(esbuild@0.20.1)(webpack@5.89.0): - resolution: {integrity: sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==} + /terser-webpack-plugin@5.3.10(esbuild@0.19.12)(webpack@5.90.3): + resolution: {integrity: sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==} engines: {node: '>= 10.13.0'} peerDependencies: '@swc/core': '*' @@ -30213,17 +30142,16 @@ packages: uglify-js: optional: true dependencies: - '@jridgewell/trace-mapping': 0.3.20 - '@swc/core': 1.3.78 - esbuild: 0.20.1 + '@jridgewell/trace-mapping': 0.3.25 + esbuild: 0.19.12 jest-worker: 27.5.1 schema-utils: 3.3.0 - serialize-javascript: 6.0.1 - terser: 5.22.0 - webpack: 5.89.0(@swc/core@1.3.78)(esbuild@0.20.1) + serialize-javascript: 6.0.2 + terser: 5.29.1 + webpack: 5.90.3(esbuild@0.19.12)(webpack-cli@5.1.4) dev: true - /terser-webpack-plugin@5.3.9(esbuild@0.19.5)(webpack@5.89.0): + /terser-webpack-plugin@5.3.9(@swc/core@1.3.78)(esbuild@0.20.1)(webpack@5.89.0): resolution: {integrity: sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==} engines: {node: '>= 10.13.0'} peerDependencies: @@ -30240,12 +30168,13 @@ packages: optional: true dependencies: '@jridgewell/trace-mapping': 0.3.20 - esbuild: 0.19.5 + '@swc/core': 1.3.78 + esbuild: 0.20.1 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.1 - terser: 5.26.0 - webpack: 5.89.0(esbuild@0.19.5)(webpack-cli@5.1.4) + terser: 5.22.0 + webpack: 5.89.0(@swc/core@1.3.78)(esbuild@0.20.1) dev: true /terser-webpack-plugin@5.3.9(webpack@5.89.0): @@ -30268,7 +30197,7 @@ packages: jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.1 - terser: 5.26.0 + terser: 5.22.0 webpack: 5.89.0 /terser@5.22.0: @@ -30280,7 +30209,6 @@ packages: acorn: 8.10.0 commander: 2.20.3 source-map-support: 0.5.21 - dev: true /terser@5.26.0: resolution: {integrity: sha512-dytTGoE2oHgbNV9nTzgBEPaqAWvcJNl66VZ0BkJqlvp71IjO8CxdBx/ykCNb47cLnCmCvRZ6ZR0tLkqvZCdVBQ==} @@ -30292,6 +30220,16 @@ packages: commander: 2.20.3 source-map-support: 0.5.21 + /terser@5.29.1: + resolution: {integrity: sha512-lZQ/fyaIGxsbGxApKmoPTODIzELy3++mXhS5hOqaAWZjQtpq/hFHAc+rm29NND1rYRxRWKcjuARNwULNXa5RtQ==} + engines: {node: '>=10'} + hasBin: true + dependencies: + '@jridgewell/source-map': 0.3.5 + acorn: 8.11.3 + commander: 2.20.3 + source-map-support: 0.5.21 + /test-exclude@6.0.0: resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==} engines: {node: '>=8'} @@ -30365,13 +30303,8 @@ packages: /tiny-warning@1.0.3: resolution: {integrity: sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==} - /tinybench@2.5.1: - resolution: {integrity: sha512-65NKvSuAVDP/n4CqH+a9w2kTlLReS9vhsAP06MWx+/89nMinJyB2icyl58RIcqCmIggpojIGeuJGhjU1aGMBSg==} - dev: true - - /tinypool@0.8.1: - resolution: {integrity: sha512-zBTCK0cCgRROxvs9c0CGK838sPkeokNGdQVUUwHAbynHFlmyJYj825f/oRs528HaIJ97lo0pLIlDUzwN+IorWg==} - engines: {node: '>=14.0.0'} + /tinybench@2.6.0: + resolution: {integrity: sha512-N8hW3PG/3aOoZAN5V/NSAEDz0ZixDSSt5b/a05iqtpgfLWMSVuCo7w0k2vVvEjdrIoeGqZzweX2WlyioNIHchA==} dev: true /tinypool@0.8.2: @@ -30379,8 +30312,8 @@ packages: engines: {node: '>=14.0.0'} dev: true - /tinyspy@2.2.0: - resolution: {integrity: sha512-d2eda04AN/cPOR89F7Xv5bK/jrQEhmcLFe6HFldoeO9AJtps+fqEnh486vnT/8y4bw38pSyxDcTCAq+Ks2aJTg==} + /tinyspy@2.2.1: + resolution: {integrity: sha512-KYad6Vy5VDWV4GH3fjpseMQ/XU2BhIYP7Vzd0LG44qRWm/Yt2WCOTicFdvmgo6gWaqooMQCawTtILVQJupKu7A==} engines: {node: '>=14.0.0'} dev: true @@ -30444,8 +30377,9 @@ packages: punycode: 2.3.1 dev: false - /traverse@0.6.7: - resolution: {integrity: sha512-/y956gpUo9ZNCb99YjxG7OaslxZWHfCHAUUfshwqOXmxUIvqLjVO581BT+gM59+QV9tFe6/CGG53tsA1Y7RSdg==} + /traverse@0.6.8: + resolution: {integrity: sha512-aXJDbk6SnumuaZSANd21XAo15ucCDE38H4fkqiGsc3MhCK+wOlZvLP9cB/TvpHT0mOyWgC4Z8EwRlzqYSUzdsA==} + engines: {node: '>= 0.4'} /tree-kill@1.2.2: resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} @@ -30467,15 +30401,6 @@ packages: resolution: {integrity: sha512-c3zayb8/kWWpycWYg87P71E1S1ZL6b6IJxfb5fvsUgsf0S2MVGaDhDXXjDMpdCpfWXqptc+4mXwmiy1ypXqRAA==} dev: false - /ts-api-utils@1.0.3(typescript@5.3.3): - resolution: {integrity: sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==} - engines: {node: '>=16.13.0'} - peerDependencies: - typescript: '>=4.2.0' - dependencies: - typescript: 5.3.3 - dev: true - /ts-interface-checker@0.1.13: resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} @@ -30540,21 +30465,8 @@ packages: v8-compile-cache-lib: 3.0.1 yn: 3.1.1 - /tsconfck@2.1.2(typescript@5.3.3): - resolution: {integrity: sha512-ghqN1b0puy3MhhviwO2kGF8SeMDNhEbnKxjK7h6+fvY9JAxqvXi8y5NAHSQv687OVboS2uZIByzGd45/YxrRHg==} - engines: {node: ^14.13.1 || ^16 || >=18} - hasBin: true - peerDependencies: - typescript: ^4.3.5 || ^5.0.0 - peerDependenciesMeta: - typescript: - optional: true - dependencies: - typescript: 5.3.3 - dev: true - - /tsconfck@3.0.2(typescript@5.3.3): - resolution: {integrity: sha512-6lWtFjwuhS3XI4HsX4Zg0izOI3FU/AI9EGVlPEUMDIhvLPMD4wkiof0WCoDgW7qY+Dy198g4d9miAqUHWHFH6Q==} + /tsconfck@3.0.3(typescript@5.3.3): + resolution: {integrity: sha512-4t0noZX9t6GcPTfBAbIbbIU4pfpCwh0ueq3S4O/5qXI1VwK1outmxhe9dOiEWqMz3MW2LKgDTpqWV+37IWuVbA==} engines: {node: ^18 || >=20} hasBin: true peerDependencies: @@ -30566,15 +30478,6 @@ packages: typescript: 5.3.3 dev: true - /tsconfig-paths@3.15.0: - resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} - dependencies: - '@types/json5': 0.0.29 - json5: 1.0.2 - minimist: 1.2.8 - strip-bom: 3.0.0 - dev: true - /tsconfig-paths@4.2.0: resolution: {integrity: sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==} engines: {node: '>=6'} @@ -30586,6 +30489,7 @@ packages: /tslib@1.14.1: resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} + dev: false /tslib@2.4.0: resolution: {integrity: sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==} @@ -30593,15 +30497,18 @@ packages: /tslib@2.6.2: resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} - /tsup@7.2.0(ts-node@10.9.2)(typescript@5.3.3): - resolution: {integrity: sha512-vDHlczXbgUvY3rWvqFEbSqmC1L7woozbzngMqTtL2PGBODTtWlRwGDDawhvWzr5c1QjKe4OAKqJGfE1xeXUvtQ==} - engines: {node: '>=16.14'} + /tsup@8.0.2(ts-node@10.9.2)(typescript@5.3.3): + resolution: {integrity: sha512-NY8xtQXdH7hDUAZwcQdY/Vzlw9johQsaqf7iwZ6g1DOUlFYQ5/AtVAjTvihhEyeRlGo4dLRVHtrRaL35M1daqQ==} + engines: {node: '>=18'} hasBin: true peerDependencies: + '@microsoft/api-extractor': ^7.36.0 '@swc/core': ^1 postcss: ^8.4.12 - typescript: '>=4.1.0' + typescript: '>=4.5.0' peerDependenciesMeta: + '@microsoft/api-extractor': + optional: true '@swc/core': optional: true postcss: @@ -30609,19 +30516,19 @@ packages: typescript: optional: true dependencies: - bundle-require: 4.0.1(esbuild@0.18.20) + bundle-require: 4.0.2(esbuild@0.19.12) cac: 6.7.14 - chokidar: 3.5.3 + chokidar: 3.6.0 debug: 4.3.4 - esbuild: 0.18.20 + esbuild: 0.19.12 execa: 5.1.1 globby: 11.1.0 joycon: 3.1.1 - postcss-load-config: 4.0.1(postcss@8.4.35)(ts-node@10.9.2) + postcss-load-config: 4.0.2(ts-node@10.9.2) resolve-from: 5.0.0 - rollup: 3.27.2 + rollup: 4.12.1 source-map: 0.8.0-beta.0 - sucrase: 3.34.0 + sucrase: 3.35.0 tree-kill: 1.2.2 typescript: 5.3.3 transitivePeerDependencies: @@ -30629,7 +30536,7 @@ packages: - ts-node dev: true - /tsup@8.0.2(ts-node@10.9.2)(typescript@5.3.3): + /tsup@8.0.2(ts-node@10.9.2)(typescript@5.4.2): resolution: {integrity: sha512-NY8xtQXdH7hDUAZwcQdY/Vzlw9johQsaqf7iwZ6g1DOUlFYQ5/AtVAjTvihhEyeRlGo4dLRVHtrRaL35M1daqQ==} engines: {node: '>=18'} hasBin: true @@ -30648,36 +30555,26 @@ packages: typescript: optional: true dependencies: - bundle-require: 4.0.1(esbuild@0.19.5) + bundle-require: 4.0.2(esbuild@0.19.12) cac: 6.7.14 - chokidar: 3.5.3 + chokidar: 3.6.0 debug: 4.3.4 - esbuild: 0.19.5 + esbuild: 0.19.12 execa: 5.1.1 globby: 11.1.0 joycon: 3.1.1 - postcss-load-config: 4.0.1(postcss@8.4.35)(ts-node@10.9.2) + postcss-load-config: 4.0.2(ts-node@10.9.2) resolve-from: 5.0.0 rollup: 4.12.1 source-map: 0.8.0-beta.0 - sucrase: 3.34.0 + sucrase: 3.35.0 tree-kill: 1.2.2 - typescript: 5.3.3 + typescript: 5.4.2 transitivePeerDependencies: - supports-color - ts-node dev: true - /tsutils@3.21.0(typescript@5.3.3): - resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} - engines: {node: '>= 6'} - peerDependencies: - typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' - dependencies: - tslib: 1.14.1 - typescript: 5.3.3 - dev: true - /tty-browserify@0.0.1: resolution: {integrity: sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==} dev: true @@ -30717,20 +30614,10 @@ packages: prelude-ls: 1.1.2 dev: false - /type-check@0.4.0: - resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} - engines: {node: '>= 0.8.0'} - dependencies: - prelude-ls: 1.2.1 - /type-detect@4.0.8: resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==} engines: {node: '>=4'} - /type-fest@0.12.0: - resolution: {integrity: sha512-53RyidyjvkGpnWPMF9bQgFtWp+Sl8O2Rp13VavmJgfAP9WWG6q6TkrKU8iyJdnwnfgHI6k2hTlgqH4aSdjoTbg==} - engines: {node: '>=10'} - /type-fest@0.13.1: resolution: {integrity: sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==} engines: {node: '>=10'} @@ -30793,6 +30680,7 @@ packages: call-bind: 1.0.5 get-intrinsic: 1.2.2 is-typed-array: 1.1.12 + dev: false /typed-array-byte-length@1.0.0: resolution: {integrity: sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==} @@ -30802,6 +30690,7 @@ packages: for-each: 0.3.3 has-proto: 1.0.1 is-typed-array: 1.1.12 + dev: false /typed-array-byte-offset@1.0.0: resolution: {integrity: sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==} @@ -30812,6 +30701,7 @@ packages: for-each: 0.3.3 has-proto: 1.0.1 is-typed-array: 1.1.12 + dev: false /typed-array-length@1.0.4: resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} @@ -30819,6 +30709,7 @@ packages: call-bind: 1.0.5 for-each: 0.3.3 is-typed-array: 1.1.12 + dev: false /typedarray-to-buffer@3.1.5: resolution: {integrity: sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==} @@ -30913,7 +30804,12 @@ packages: engines: {node: '>=14.17'} hasBin: true - /typia@5.5.3(typescript@5.3.3): + /typescript@5.4.2: + resolution: {integrity: sha512-+2/g0Fds1ERlP6JsakQQDXjZdZMM+rqpamFZJEKh4kwTIn3iDkgKtby0CeNd5ATNZ4Ry1ax15TMx0W2V+miizQ==} + engines: {node: '>=14.17'} + hasBin: true + + /typia@5.5.3(typescript@5.4.2): resolution: {integrity: sha512-t2dnG0Ygh3FWZxVUz7Mx7gcGak+sIc49QlBuabjaLCxSScAHVLAIXhUV79gdHpJk6NPnXUd59mw8OZ/tW/Jv1A==} hasBin: true peerDependencies: @@ -30923,11 +30819,11 @@ packages: comment-json: 4.2.3 inquirer: 8.2.6 randexp: 0.5.3 - typescript: 5.3.3 + typescript: 5.4.2 dev: false - /ua-parser-js@1.0.36: - resolution: {integrity: sha512-znuyCIXzl8ciS3+y3fHJI/2OhQIXbXw9MWC/o3qwyR+RGppjZHrM27CGFSKCJXi2Kctiz537iOu2KnXs1lMQhw==} + /ua-parser-js@1.0.37: + resolution: {integrity: sha512-bhTyI94tZofjo+Dn8SN6Zv8nBDvyXTymAdM3LDI/0IboIUwTu1rEhW7v2TfiVsoYWgkQ4kOVqnI8APUFbIQIFQ==} /ufo@1.3.1: resolution: {integrity: sha512-uY/99gMLIOlJPwATcMVYfqDSxUR9//AUcgZMzwfSTJPDKzA1S8mX4VLqa+fiAtveraQUBCz4FFcwVZBGbwBXIw==} @@ -30936,14 +30832,17 @@ packages: resolution: {integrity: sha512-o+ORpgGwaYQXgqGDwd+hkS4PuZ3QnmqMMxRuajK/a38L6fTpcE5GPIfrf+L/KemFzfUpeUQc1rRS1iDBozvnFA==} dev: false - /uglify-es@3.3.9: - resolution: {integrity: sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==} - engines: {node: '>=0.8.0'} - deprecated: support for ECMAScript is superseded by `uglify-js` as of v3.13.0 - hasBin: true + /ufo@1.4.0: + resolution: {integrity: sha512-Hhy+BhRBleFjpJ2vchUNN40qgkh0366FWJGqVLYBHev0vpHTrXSA0ryT+74UiW6KWsldNurQMKGqCm1M2zBciQ==} + dev: true + + /uint8-varint@2.0.4: + resolution: {integrity: sha512-FwpTa7ZGA/f/EssWAb5/YV6pHgVF1fViKdW8cWaEarjB8t7NyofSWBdOTyFPaGuUG4gx3v1O3PQ8etsiOs3lcw==} + requiresBuild: true dependencies: - commander: 2.13.0 - source-map: 0.6.1 + uint8arraylist: 2.4.8 + uint8arrays: 5.0.2 + optional: true /uint8arraylist@2.4.8: resolution: {integrity: sha512-vc1PlGOzglLF0eae1M8mLRTBivsvrGsdmJ5RbK3e+QRvRLOZfZhQROTwH/OfyF3+ZVUg9/8hE8bmKP2CvP9quQ==} @@ -30961,6 +30860,13 @@ packages: dependencies: multiformats: 9.9.0 + /uint8arrays@4.0.10: + resolution: {integrity: sha512-AnJNUGGDJAgFw/eWu/Xb9zrVKEGlwJJCaeInlf3BkecE/zcTobk5YXYIPNQJO1q5Hh1QZrQQHf0JvcHqz2hqoA==} + requiresBuild: true + dependencies: + multiformats: 12.1.3 + optional: true + /uint8arrays@4.0.6: resolution: {integrity: sha512-4ZesjQhqOU2Ip6GPReIwN60wRxIupavL8T0Iy36BBHr2qyMrNxsPJvr7vpS4eFt8F8kSguWUPad6ZM9izs/vyw==} dependencies: @@ -30971,6 +30877,13 @@ packages: dependencies: multiformats: 13.1.0 + /uint8arrays@5.0.2: + resolution: {integrity: sha512-S0GaeR+orZt7LaqzTRs4ZP8QqzAauJ+0d4xvP2lJTA99jIkKsE2FgDs4tGF/K/z5O9I/2W5Yvrh7IuqNeYH+0Q==} + requiresBuild: true + dependencies: + multiformats: 13.1.0 + optional: true + /umd@3.0.3: resolution: {integrity: sha512-4IcGSufhFshvLNcMCV80UnQVlZ5pMOC8mvNPForqwA4+lzYQuetTESLDQkeLmihq8bRcnpbQa48Wb8Lh16/xow==} hasBin: true @@ -30983,6 +30896,7 @@ packages: has-bigints: 1.0.2 has-symbols: 1.0.3 which-boxed-primitive: 1.0.2 + dev: false /uncrypto@0.1.3: resolution: {integrity: sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==} @@ -31011,11 +30925,11 @@ packages: engines: {node: '>=14.0'} dependencies: busboy: 1.6.0 - dev: false /undici@6.7.1: resolution: {integrity: sha512-+Wtb9bAQw6HYWzCnxrPTMVEV3Q1QjYanI0E4q02ehReMuquQdLTEFEYbfs7hcImVYKcQkWSwT6buEmSVIiDDtQ==} engines: {node: '>=18.0'} + dev: false /unenv@1.9.0: resolution: {integrity: sha512-QKnFNznRxmbOF1hDgzpqrlIf6NC5sbZ2OJ+5Wl3OX8uM+LUJXbj4TXvLJCtwbPTmbMHCLIz6JLKNinNsMShK9g==} @@ -31306,6 +31220,7 @@ packages: dependencies: querystringify: 2.2.0 requires-port: 1.0.0 + dev: false /url-template@2.0.8: resolution: {integrity: sha512-XdVKMF4SJ0nP/O7XIPB0JwAEuT9lDIYnNsK8yGVe43y0AWoKeJNdv3ZNWh7ksJ6KqQFjOO6ox/VEitLnaVNufw==} @@ -31318,7 +31233,7 @@ packages: qs: 6.11.2 dev: true - /use-callback-ref@1.3.0(@types/react@18.2.63)(react@18.2.0): + /use-callback-ref@1.3.0(@types/react@18.2.64)(react@18.2.0): resolution: {integrity: sha512-3FT9PRuRdbB9HfXhEq35u4oZkvpJ5kuYbpqhCfmiZyReuRgpnhDlbr2ZEnnuS0RrJAPn6l23xjFg9kpDM+Ms7w==} engines: {node: '>=10'} peerDependencies: @@ -31328,7 +31243,7 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.63 + '@types/react': 18.2.64 react: 18.2.0 tslib: 2.6.2 dev: false @@ -31346,12 +31261,12 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: - '@formatjs/ecma402-abstract': 1.18.0 + '@formatjs/ecma402-abstract': 1.18.2 intl-messageformat: 9.13.0 react: 18.2.0 dev: false - /use-isomorphic-layout-effect@1.1.2(@types/react@18.2.63)(react@18.2.0): + /use-isomorphic-layout-effect@1.1.2(@types/react@18.2.64)(react@18.2.0): resolution: {integrity: sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==} peerDependencies: '@types/react': '*' @@ -31360,11 +31275,11 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.63 + '@types/react': 18.2.64 react: 18.2.0 dev: false - /use-latest@1.2.1(@types/react@18.2.63)(react@18.2.0): + /use-latest@1.2.1(@types/react@18.2.64)(react@18.2.0): resolution: {integrity: sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==} peerDependencies: '@types/react': '*' @@ -31373,12 +31288,12 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.63 + '@types/react': 18.2.64 react: 18.2.0 - use-isomorphic-layout-effect: 1.1.2(@types/react@18.2.63)(react@18.2.0) + use-isomorphic-layout-effect: 1.1.2(@types/react@18.2.64)(react@18.2.0) dev: false - /use-sidecar@1.1.2(@types/react@18.2.63)(react@18.2.0): + /use-sidecar@1.1.2(@types/react@18.2.64)(react@18.2.0): resolution: {integrity: sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==} engines: {node: '>=10'} peerDependencies: @@ -31388,7 +31303,7 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.63 + '@types/react': 18.2.64 detect-node-es: 1.1.0 react: 18.2.0 tslib: 2.6.2 @@ -31400,6 +31315,7 @@ packages: react: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: react: 18.2.0 + dev: false /utf-8-validate@6.0.3: resolution: {integrity: sha512-uIuGf9TWQ/y+0Lp+KGZCMuJWc3N9BHA+l/UmHd/oUHwJJDeysyTRxNQVkbzsIWfGFbRe3OcgML/i0mvVRPOyDA==} @@ -31438,11 +31354,6 @@ packages: resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==} engines: {node: '>= 0.4.0'} - /uuid@3.4.0: - resolution: {integrity: sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==} - deprecated: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details. - hasBin: true - /uuid@7.0.3: resolution: {integrity: sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg==} hasBin: true @@ -31471,8 +31382,8 @@ packages: resolution: {integrity: sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA==} engines: {node: '>=10.12.0'} dependencies: - '@jridgewell/trace-mapping': 0.3.20 - '@types/istanbul-lib-coverage': 2.0.5 + '@jridgewell/trace-mapping': 0.3.25 + '@types/istanbul-lib-coverage': 2.0.6 convert-source-map: 2.0.0 dev: true @@ -31503,7 +31414,7 @@ packages: engines: {node: '>= 0.10'} dev: false - /valtio@1.11.2(@types/react@18.2.63)(react@18.2.0): + /valtio@1.11.2(@types/react@18.2.64)(react@18.2.0): resolution: {integrity: sha512-1XfIxnUXzyswPAPXo1P3Pdx2mq/pIqZICkWN60Hby0d9Iqb+MEIpqgYVlbflvHdrp2YR/q3jyKWRPJJ100yxaw==} engines: {node: '>=12.20.0'} peerDependencies: @@ -31515,7 +31426,7 @@ packages: react: optional: true dependencies: - '@types/react': 18.2.63 + '@types/react': 18.2.64 proxy-compare: 2.5.1 react: 18.2.0 use-sync-external-store: 1.2.0(react@18.2.0) @@ -31602,28 +31513,6 @@ packages: - zod dev: false - /vite-node@1.0.0-beta.3(@types/node@20.11.25): - resolution: {integrity: sha512-qpdoB+N9LV2Lr3W6k8vZwm/lN3hdmz+c0Tixh2ktnX/ywF0OkQf7wIWLeiFLvW4Fa/iw4qhye7xiBBMP1o6/sA==} - engines: {node: ^18.0.0 || >=20.0.0} - hasBin: true - dependencies: - cac: 6.7.14 - debug: 4.3.4 - mlly: 1.4.2 - pathe: 1.1.1 - picocolors: 1.0.0 - vite: 4.5.0(@types/node@20.11.25) - transitivePeerDependencies: - - '@types/node' - - less - - lightningcss - - sass - - stylus - - sugarss - - supports-color - - terser - dev: true - /vite-node@1.3.1(@types/node@20.11.25): resolution: {integrity: sha512-azbRrqRxlWTJEVbzInZCTchx0X69M/XPTCz4H+TLvlTcR/xH/3hkRqhOakT41fMJCMzXTu4UvegkZiEoJAWvng==} engines: {node: ^18.0.0 || >=20.0.0} @@ -31631,7 +31520,7 @@ packages: dependencies: cac: 6.7.14 debug: 4.3.4 - pathe: 1.1.1 + pathe: 1.1.2 picocolors: 1.0.0 vite: 5.1.5(@types/node@20.11.25) transitivePeerDependencies: @@ -31645,23 +31534,6 @@ packages: - terser dev: true - /vite-tsconfig-paths@4.2.1(typescript@5.3.3)(vite@4.5.0): - resolution: {integrity: sha512-GNUI6ZgPqT3oervkvzU+qtys83+75N/OuDaQl7HmOqFTb0pjZsuARrRipsyJhJ3enqV8beI1xhGbToR4o78nSQ==} - peerDependencies: - vite: '*' - peerDependenciesMeta: - vite: - optional: true - dependencies: - debug: 4.3.4 - globrex: 0.1.2 - tsconfck: 2.1.2(typescript@5.3.3) - vite: 4.5.0(@types/node@20.11.25) - transitivePeerDependencies: - - supports-color - - typescript - dev: true - /vite-tsconfig-paths@4.3.1(typescript@5.3.3)(vite@5.1.5): resolution: {integrity: sha512-cfgJwcGOsIxXOLU/nELPny2/LUD/lcf1IbfyeKTv2bsupVbTH/xpFtdQlBmIP1GEK2CjjLxYhFfB+QODFAx5aw==} peerDependencies: @@ -31672,49 +31544,13 @@ packages: dependencies: debug: 4.3.4 globrex: 0.1.2 - tsconfck: 3.0.2(typescript@5.3.3) + tsconfck: 3.0.3(typescript@5.3.3) vite: 5.1.5(@types/node@20.11.25) transitivePeerDependencies: - supports-color - typescript dev: true - /vite@4.5.0(@types/node@20.11.25): - resolution: {integrity: sha512-ulr8rNLA6rkyFAlVWw2q5YJ91v098AFQ2R0PRFwPzREXOUJQPtFUG0t+/ZikhaOCDqFoDhN6/v8Sq0o4araFAw==} - engines: {node: ^14.18.0 || >=16.0.0} - hasBin: true - peerDependencies: - '@types/node': '>= 14' - less: '*' - lightningcss: ^1.21.0 - sass: '*' - stylus: '*' - sugarss: '*' - terser: ^5.4.0 - peerDependenciesMeta: - '@types/node': - optional: true - less: - optional: true - lightningcss: - optional: true - sass: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true - dependencies: - '@types/node': 20.11.25 - esbuild: 0.18.20 - postcss: 8.4.31 - rollup: 3.29.4 - optionalDependencies: - fsevents: 2.3.3 - dev: true - /vite@5.1.5(@types/node@20.11.25): resolution: {integrity: sha512-BdN1xh0Of/oQafhU+FvopafUp6WaYenLU/NFoL5WyJL++GxkNfieKzBhM24H3HVsPQrlAqB7iJYTHabzaRed5Q==} engines: {node: ^18.0.0 || >=20.0.0} @@ -31744,70 +31580,13 @@ packages: optional: true dependencies: '@types/node': 20.11.25 - esbuild: 0.19.5 + esbuild: 0.19.12 postcss: 8.4.35 rollup: 4.12.1 optionalDependencies: fsevents: 2.3.3 dev: true - /vitest@1.0.0-beta.3(@types/node@20.11.25): - resolution: {integrity: sha512-Ytj70kgJq1MxWpS8U33nRwF7Mngzr0NxD6J1J8WZGZrYhGRktW3t0AwbjLyFg1URiW3ds6FSp/T3C8JEnP49cA==} - engines: {node: ^18.0.0 || >=20.0.0} - hasBin: true - peerDependencies: - '@edge-runtime/vm': '*' - '@types/node': ^18.0.0 || >=20.0.0 - '@vitest/browser': '*' - '@vitest/ui': '*' - happy-dom: '*' - jsdom: '*' - peerDependenciesMeta: - '@edge-runtime/vm': - optional: true - '@types/node': - optional: true - '@vitest/browser': - optional: true - '@vitest/ui': - optional: true - happy-dom: - optional: true - jsdom: - optional: true - dependencies: - '@types/node': 20.11.25 - '@vitest/expect': 1.0.0-beta.3 - '@vitest/runner': 1.0.0-beta.3 - '@vitest/snapshot': 1.0.0-beta.3 - '@vitest/spy': 1.0.0-beta.3 - '@vitest/utils': 1.0.0-beta.3 - acorn: 8.11.2 - acorn-walk: 8.2.0 - cac: 6.7.14 - chai: 4.3.10 - debug: 4.3.4 - local-pkg: 0.4.3 - magic-string: 0.30.5 - pathe: 1.1.1 - picocolors: 1.0.0 - std-env: 3.7.0 - strip-literal: 1.3.0 - tinybench: 2.5.1 - tinypool: 0.8.1 - vite: 4.5.0(@types/node@20.11.25) - vite-node: 1.0.0-beta.3(@types/node@20.11.25) - why-is-node-running: 2.2.2 - transitivePeerDependencies: - - less - - lightningcss - - sass - - stylus - - sugarss - - supports-color - - terser - dev: true - /vitest@1.3.1(@types/node@20.11.25): resolution: {integrity: sha512-/1QJqXs8YbCrfv/GPQ05wAZf2eakUPLPa18vkJAKE7RXOKfVHqMZZ1WlTjiwl6Gcn65M5vpNUB6EFLnEdRdEXQ==} engines: {node: ^18.0.0 || >=20.0.0} @@ -31840,16 +31619,16 @@ packages: '@vitest/spy': 1.3.1 '@vitest/utils': 1.3.1 acorn-walk: 8.3.2 - chai: 4.3.10 + chai: 4.4.1 debug: 4.3.4 execa: 8.0.1 local-pkg: 0.5.0 - magic-string: 0.30.5 - pathe: 1.1.1 + magic-string: 0.30.8 + pathe: 1.1.2 picocolors: 1.0.0 std-env: 3.7.0 strip-literal: 2.0.0 - tinybench: 2.5.1 + tinybench: 2.6.0 tinypool: 0.8.2 vite: 5.1.5(@types/node@20.11.25) vite-node: 1.3.1(@types/node@20.11.25) @@ -31883,7 +31662,7 @@ packages: xml-name-validator: 5.0.0 dev: false - /wagmi@2.5.7(@tanstack/react-query@5.25.0)(@types/react@18.2.63)(encoding@0.1.13)(react-dom@18.2.0)(react-native@0.72.6)(react@18.2.0)(typescript@5.3.3)(viem@2.7.22): + /wagmi@2.5.7(@tanstack/react-query@5.25.0)(@types/react@18.2.64)(encoding@0.1.13)(react-dom@18.2.0)(react-native@0.73.5)(react@18.2.0)(typescript@5.3.3)(viem@2.7.22): resolution: {integrity: sha512-xSuteMXFKvra4xDddqZbZv/gQlcg3X+To5AoZW7WoAm0iVlF8/vEGpQzCWy6KZs2z1szxPrr0YnH3Zr1Qj4E/A==} peerDependencies: '@tanstack/react-query': '>=5.0.0' @@ -31895,8 +31674,8 @@ packages: optional: true dependencies: '@tanstack/react-query': 5.25.0(react@18.2.0) - '@wagmi/connectors': 4.1.14(@types/react@18.2.63)(@wagmi/core@2.6.5)(encoding@0.1.13)(react-dom@18.2.0)(react-native@0.72.6)(react@18.2.0)(typescript@5.3.3)(viem@2.7.22) - '@wagmi/core': 2.6.5(@types/react@18.2.63)(react@18.2.0)(typescript@5.3.3)(viem@2.7.22) + '@wagmi/connectors': 4.1.14(@types/react@18.2.64)(@wagmi/core@2.6.5)(encoding@0.1.13)(react-dom@18.2.0)(react-native@0.73.5)(react@18.2.0)(typescript@5.3.3)(viem@2.7.22) + '@wagmi/core': 2.6.5(@types/react@18.2.64)(react@18.2.0)(typescript@5.3.3)(viem@2.7.22) react: 18.2.0 typescript: 5.3.3 use-sync-external-store: 1.2.0(react@18.2.0) @@ -32017,6 +31796,10 @@ packages: resolution: {integrity: sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==} dev: true + /webidl-conversions@5.0.0: + resolution: {integrity: sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==} + engines: {node: '>=8'} + /webidl-conversions@7.0.0: resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==} engines: {node: '>=12'} @@ -32048,7 +31831,7 @@ packages: - bufferutil - utf-8-validate - /webpack-cli@5.1.4(webpack@5.89.0): + /webpack-cli@5.1.4(webpack@5.90.3): resolution: {integrity: sha512-pIDJHIEI9LR0yxHXQ+Qh95k2EvXpWzZ5l+d+jIo+RdSm9MiHfzazIxwwni/p7+x4eJZuvG1AJwgC4TNQ7NRgsg==} engines: {node: '>=14.15.0'} hasBin: true @@ -32066,9 +31849,9 @@ packages: optional: true dependencies: '@discoveryjs/json-ext': 0.5.7 - '@webpack-cli/configtest': 2.1.1(webpack-cli@5.1.4)(webpack@5.89.0) - '@webpack-cli/info': 2.0.2(webpack-cli@5.1.4)(webpack@5.89.0) - '@webpack-cli/serve': 2.0.5(webpack-cli@5.1.4)(webpack@5.89.0) + '@webpack-cli/configtest': 2.1.1(webpack-cli@5.1.4)(webpack@5.90.3) + '@webpack-cli/info': 2.0.2(webpack-cli@5.1.4)(webpack@5.90.3) + '@webpack-cli/serve': 2.0.5(webpack-cli@5.1.4)(webpack@5.90.3) colorette: 2.0.20 commander: 10.0.1 cross-spawn: 7.0.3 @@ -32077,7 +31860,7 @@ packages: import-local: 3.1.0 interpret: 3.1.1 rechoir: 0.8.0 - webpack: 5.89.0(esbuild@0.19.5)(webpack-cli@5.1.4) + webpack: 5.90.3(esbuild@0.19.12)(webpack-cli@5.1.4) webpack-merge: 5.9.0 dev: true @@ -32225,8 +32008,8 @@ packages: '@webassemblyjs/ast': 1.11.6 '@webassemblyjs/wasm-edit': 1.11.6 '@webassemblyjs/wasm-parser': 1.11.6 - acorn: 8.10.0 - acorn-import-assertions: 1.9.0(acorn@8.10.0) + acorn: 8.11.2 + acorn-import-assertions: 1.9.0(acorn@8.11.2) browserslist: 4.22.1 chrome-trace-event: 1.0.3 enhanced-resolve: 5.15.0 @@ -32250,8 +32033,8 @@ packages: - uglify-js dev: true - /webpack@5.89.0(esbuild@0.19.5)(webpack-cli@5.1.4): - resolution: {integrity: sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==} + /webpack@5.90.3(esbuild@0.19.12)(webpack-cli@5.1.4): + resolution: {integrity: sha512-h6uDYlWCctQRuXBs1oYpVe6sFcWedl0dpcVaTf/YF67J9bKvwJajFulMVSYKHrksMB3I/pIagRzDxwxkebuzKA==} engines: {node: '>=10.13.0'} hasBin: true peerDependencies: @@ -32260,17 +32043,17 @@ packages: webpack-cli: optional: true dependencies: - '@types/eslint-scope': 3.7.6 - '@types/estree': 1.0.3 + '@types/eslint-scope': 3.7.7 + '@types/estree': 1.0.5 '@webassemblyjs/ast': 1.11.6 '@webassemblyjs/wasm-edit': 1.11.6 '@webassemblyjs/wasm-parser': 1.11.6 - acorn: 8.11.2 - acorn-import-assertions: 1.9.0(acorn@8.11.2) - browserslist: 4.22.1 + acorn: 8.11.3 + acorn-import-assertions: 1.9.0(acorn@8.11.3) + browserslist: 4.23.0 chrome-trace-event: 1.0.3 - enhanced-resolve: 5.15.0 - es-module-lexer: 1.3.1 + enhanced-resolve: 5.15.1 + es-module-lexer: 1.4.1 eslint-scope: 5.1.1 events: 3.3.0 glob-to-regexp: 0.4.1 @@ -32281,9 +32064,9 @@ packages: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.9(esbuild@0.19.5)(webpack@5.89.0) + terser-webpack-plugin: 5.3.10(esbuild@0.19.12)(webpack@5.90.3) watchpack: 2.4.0 - webpack-cli: 5.1.4(webpack@5.89.0) + webpack-cli: 5.1.4(webpack@5.90.3) webpack-sources: 3.2.3 transitivePeerDependencies: - '@swc/core' @@ -32322,14 +32105,22 @@ packages: iconv-lite: 0.6.3 dev: false - /whatwg-fetch@3.6.19: - resolution: {integrity: sha512-d67JP4dHSbm2TrpFj8AbO8DnL1JXL5J9u0Kq2xW6d0TFDbCA3Muhdt8orXC22utleTVj7Prqt82baN6RBvnEgw==} + /whatwg-fetch@3.6.20: + resolution: {integrity: sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg==} /whatwg-mimetype@4.0.0: resolution: {integrity: sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==} engines: {node: '>=18'} dev: false + /whatwg-url-without-unicode@8.0.0-3: + resolution: {integrity: sha512-HoKuzZrUlgpz35YO27XgD28uh/WJH4B0+3ttFqRo//lmq+9T/mIOJ6kqmINI9HpUpz1imRC/nR/lxKpJiv0uig==} + engines: {node: '>=10'} + dependencies: + buffer: 5.7.1 + punycode: 2.3.1 + webidl-conversions: 5.0.0 + /whatwg-url@14.0.0: resolution: {integrity: sha512-1lfMEm2IEr7RIV+f4lUNPOqfFL+pO+Xw3fJSqmjX9AbXcXcYOkCe1P6+9VBZB6n94af16NfZf+sSk0JCBZC9aw==} engines: {node: '>=18'} @@ -32360,33 +32151,7 @@ packages: is-number-object: 1.0.7 is-string: 1.0.7 is-symbol: 1.0.4 - - /which-builtin-type@1.1.3: - resolution: {integrity: sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==} - engines: {node: '>= 0.4'} - dependencies: - function.prototype.name: 1.1.6 - has-tostringtag: 1.0.0 - is-async-function: 2.0.0 - is-date-object: 1.0.5 - is-finalizationregistry: 1.0.2 - is-generator-function: 1.0.10 - is-regex: 1.1.4 - is-weakref: 1.0.2 - isarray: 2.0.5 - which-boxed-primitive: 1.0.2 - which-collection: 1.0.1 - which-typed-array: 1.1.13 - dev: true - - /which-collection@1.0.1: - resolution: {integrity: sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==} - dependencies: - is-map: 2.0.2 - is-set: 2.0.2 - is-weakmap: 2.0.1 - is-weakset: 2.0.2 - dev: true + dev: false /which-module@2.0.1: resolution: {integrity: sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==} @@ -32701,6 +32466,11 @@ packages: engines: {node: '>= 14'} dev: true + /yaml@2.4.1: + resolution: {integrity: sha512-pIXzoImaqmfOrL7teGUBt/T7ZDnyeGBWyXQBvOVhLkWLN37GXv8NMLK406UY6dS51JfcQHsmcW5cJ441bHg6Lg==} + engines: {node: '>= 14'} + hasBin: true + /yargs-parser@18.1.3: resolution: {integrity: sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==} engines: {node: '>=6'} @@ -32786,7 +32556,7 @@ packages: commander: 10.0.1 dev: false - /zustand@4.4.1(@types/react@18.2.63)(react@18.2.0): + /zustand@4.4.1(@types/react@18.2.64)(react@18.2.0): resolution: {integrity: sha512-QCPfstAS4EBiTQzlaGP1gmorkh/UL1Leaj2tdj+zZCZ/9bm0WS7sI2wnfD5lpOszFqWJ1DcPnGoY8RDL61uokw==} engines: {node: '>=12.7.0'} peerDependencies: @@ -32801,12 +32571,12 @@ packages: react: optional: true dependencies: - '@types/react': 18.2.63 + '@types/react': 18.2.64 react: 18.2.0 use-sync-external-store: 1.2.0(react@18.2.0) dev: false - /zustand@4.5.2(@types/react@18.2.63)(react@18.2.0): + /zustand@4.5.2(@types/react@18.2.64)(react@18.2.0): resolution: {integrity: sha512-2cN1tPkDVkwCy5ickKrI7vijSjPksFRfqS6237NzT0vqSsztTNnQdHw9mmN7uBdk3gceVXU0a+21jFzFzAc9+g==} engines: {node: '>=12.7.0'} peerDependencies: @@ -32821,7 +32591,7 @@ packages: react: optional: true dependencies: - '@types/react': 18.2.63 + '@types/react': 18.2.64 react: 18.2.0 use-sync-external-store: 1.2.0(react@18.2.0) dev: false @@ -32839,16 +32609,17 @@ packages: canonicalize: 1.0.8 lru-cache: 6.0.0 rdf-canonize: 4.0.1 + dev: false - github.com/uport-project/EcdsaSecp256k1RecoverySignature2020/ab0db52de6f4e6663ef271a48009ba26e688ef9b(expo@49.0.16)(react-native@0.72.6): + github.com/uport-project/EcdsaSecp256k1RecoverySignature2020/ab0db52de6f4e6663ef271a48009ba26e688ef9b(expo@50.0.11)(react-native@0.73.5): resolution: {tarball: https://codeload.github.com/uport-project/EcdsaSecp256k1RecoverySignature2020/tar.gz/ab0db52de6f4e6663ef271a48009ba26e688ef9b} id: github.com/uport-project/EcdsaSecp256k1RecoverySignature2020/ab0db52de6f4e6663ef271a48009ba26e688ef9b name: '@veramo-community/lds-ecdsa-secp256k1-recovery2020' version: 0.0.8 dependencies: '@bitauth/libauth': 1.19.1 - '@digitalcredentials/jsonld': 5.2.2(expo@49.0.16)(react-native@0.72.6) - '@digitalcredentials/jsonld-signatures': 9.3.2(expo@49.0.16)(react-native@0.72.6) + '@digitalcredentials/jsonld': 5.2.2(expo@50.0.11)(react-native@0.73.5) + '@digitalcredentials/jsonld-signatures': 9.4.0(expo@50.0.11)(react-native@0.73.5) '@ethersproject/transactions': 5.7.0 '@trust/keyto': 1.0.1 base64url: 3.0.1 diff --git a/scripts/README.md b/scripts/README.md index 3a968c90e..85a7a6ec2 100644 --- a/scripts/README.md +++ b/scripts/README.md @@ -43,11 +43,8 @@ ROOT_DIR/libs/did-provider-github │ ├── agent.spec.ts │ └── plugin.ts ├── tsconfig.build.json -├── tsconfig.eslint.json ├── tsconfig.json -├── .eslintrc.cjs ├── .lintstagedrc.cjs -├── .prettierignore ├── tsup.config.ts ├── README.md ├── jest.config.ts diff --git a/scripts/init-provider.sh b/scripts/init-provider.sh index 8614982ba..594cda1ca 100755 --- a/scripts/init-provider.sh +++ b/scripts/init-provider.sh @@ -15,8 +15,7 @@ find ../libs/did-provider-$lower -type f -name "*pluginTemplate*" -exec bash -c find ../libs/did-provider-$lower -type f -exec sed -i '' -e "s/pluginTemplate/$lower/g;s/PluginTemplate/$capital/g" {} + echo "module.exports = { - '*.{js,ts}': ['eslint --fix'], - '*.{md,json,yml,yaml}': ['prettier --write'], + '*.{js,ts,mts,mjs,cjs,cts,jsx,tsx,json}': ['biome check --apply'], };" > ../libs/did-provider-$lower/.lintstagedrc.cjs pnpm install diff --git a/templates/did-provider-plugin/.eslintrc.cjs b/templates/did-provider-plugin/.eslintrc.cjs deleted file mode 100644 index ef7346a34..000000000 --- a/templates/did-provider-plugin/.eslintrc.cjs +++ /dev/null @@ -1,9 +0,0 @@ -module.exports = { - root: true, - extends: ['../../.eslintrc.cjs'], - parserOptions: { - project: './tsconfig.eslint.json', - sourceType: 'module', - tsconfigRootDir: __dirname, - }, -}; diff --git a/templates/did-provider-plugin/.prettierignore b/templates/did-provider-plugin/.prettierignore deleted file mode 100644 index f3fd95230..000000000 --- a/templates/did-provider-plugin/.prettierignore +++ /dev/null @@ -1,4 +0,0 @@ -dist -node_modules -coverage -CHANGELOG.md diff --git a/templates/did-provider-plugin/package.json b/templates/did-provider-plugin/package.json index 5b734d004..1d83dbafb 100644 --- a/templates/did-provider-plugin/package.json +++ b/templates/did-provider-plugin/package.json @@ -19,19 +19,13 @@ "module": "./dist/index.js", "source": "./src/index.ts", "types": "./dist/index.d.ts", - "files": [ - "dist/**", - "README.md", - "package.json", - "CHANGELOG.md" - ], + "files": ["dist/**", "README.md", "package.json", "CHANGELOG.md"], "scripts": { "build": "pnpm clean && pnpm compile", "clean": "rimraf dist", "compile": "tsc --build tsconfig.build.json", - "lint": "pnpm lint:eslint && pnpm lint:prettier", - "lint:eslint": "eslint .", - "lint:prettier": "prettier . --check", + "lint": "biome check .", + "lint:fix": "biome check --apply .", "test": "pnpm jest", "test:ci": "pnpm run test --silent --coverage" }, diff --git a/templates/did-provider-plugin/src/pluginTemplateDidProvider.ts b/templates/did-provider-plugin/src/pluginTemplateDidProvider.ts index 3fd2c857e..492103f9d 100644 --- a/templates/did-provider-plugin/src/pluginTemplateDidProvider.ts +++ b/templates/did-provider-plugin/src/pluginTemplateDidProvider.ts @@ -65,7 +65,6 @@ export class PluginTemplateDIDProvider extends AbstractIdentifierProvider { context: IContext ): Promise { for (const { kid } of identifier.keys) { - // eslint-disable-next-line no-await-in-loop await context.agent.keyManagerDelete({ kid }); } return true; diff --git a/templates/did-provider-plugin/tests/agent.spec.ts b/templates/did-provider-plugin/tests/agent.spec.ts index 0bdddd8e5..b3e557ba7 100644 --- a/templates/did-provider-plugin/tests/agent.spec.ts +++ b/templates/did-provider-plugin/tests/agent.spec.ts @@ -1,23 +1,22 @@ -/* eslint-disable @typescript-eslint/no-unsafe-call */ import * as fs from 'fs'; import { - createAgent, type IAgentOptions, type ICredentialPlugin, + type IDIDManager, type IDataStore, type IDataStoreORM, - type IDIDManager, type IKeyManager, type IResolver, type TAgent, + createAgent, } from '@veramo/core'; import { CredentialPlugin } from '@veramo/credential-w3c'; import { DIDStore, Entities, KeyStore, - migrations, PrivateKeyStore, + migrations, } from '@veramo/data-store'; import { DIDManager } from '@veramo/did-manager'; import { DIDResolverPlugin } from '@veramo/did-resolver'; @@ -27,8 +26,8 @@ import { Resolver } from 'did-resolver'; import { DataSource, type DataSourceOptions } from 'typeorm'; import { - pluginTemplateDidResolver as getDidPluginTemplateResolver, PluginTemplateDIDProvider, + pluginTemplateDidResolver as getDidPluginTemplateResolver, } from '../src/index.js'; import plugin from './plugin.js'; @@ -114,12 +113,10 @@ const tearDown = async (): Promise => { return true; }; -// eslint-disable-next-line @typescript-eslint/no-unsafe-return const getAgent = () => agent; const testContext = { getAgent, setup, tearDown }; describe('did:pluginTemplate: Veramo Agent Tests', () => { - // eslint-disable-next-line @typescript-eslint/no-unsafe-call plugin(testContext); }); diff --git a/templates/did-provider-plugin/tests/plugin.ts b/templates/did-provider-plugin/tests/plugin.ts index 24266b620..457d82b04 100644 --- a/templates/did-provider-plugin/tests/plugin.ts +++ b/templates/did-provider-plugin/tests/plugin.ts @@ -1,4 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-call */ import type { IDIDManager, IKeyManager, TAgent } from '@veramo/core-types'; import { afterAll, beforeAll, describe, expect, it } from 'vitest'; diff --git a/templates/did-provider-plugin/tsconfig.eslint.json b/templates/did-provider-plugin/tsconfig.eslint.json deleted file mode 100644 index b0a08c182..000000000 --- a/templates/did-provider-plugin/tsconfig.eslint.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["**/*", ".eslintrc.cjs"] -} diff --git a/templates/did-provider-plugin/tsup.config.ts b/templates/did-provider-plugin/tsup.config.ts index 581cdba36..cbb7d24b9 100644 --- a/templates/did-provider-plugin/tsup.config.ts +++ b/templates/did-provider-plugin/tsup.config.ts @@ -1,4 +1,4 @@ -import { defineConfig, Options } from 'tsup'; +import { Options, defineConfig } from 'tsup'; export default defineConfig((options: Options) => ({ target: 'es2020', diff --git a/tsconfig.base.json b/tsconfig.base.json index bf058ef95..d43c3376c 100644 --- a/tsconfig.base.json +++ b/tsconfig.base.json @@ -1,10 +1,6 @@ { "compileOnSave": false, "compilerOptions": { - /* - Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects - for all imports. Implies 'allowSyntheticDefaultImports'. - */ "target": "ES2020", "module": "ES2022", "moduleResolution": "Bundler", @@ -17,7 +13,6 @@ "allowSyntheticDefaultImports": true, "skipLibCheck": true, - /* Stylize errors and messages using color and context. */ "pretty": true }, "exclude": ["node_modules", "dist"], From a764a99bcbc325fe44c3e7c098ebdb7ac874503e Mon Sep 17 00:00:00 2001 From: Martin Domajnko <35891136+martines3000@users.noreply.github.com> Date: Mon, 11 Mar 2024 10:30:28 +0100 Subject: [PATCH 03/19] chore: update next config (#582) --- packages/dapp/next.config.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/packages/dapp/next.config.js b/packages/dapp/next.config.js index 8385625d8..41e6b734c 100644 --- a/packages/dapp/next.config.js +++ b/packages/dapp/next.config.js @@ -47,6 +47,12 @@ const nextConfig = { }, env: { USE_LOCAL: process.env.USE_LOCAL || 'false', + NEXT_PUBLIC_SUPABASE_URL: + process.env.NEXT_PUBLIC_SUPABASE_URL || + 'https://vfxyvzkprpeegheyapzg.supabase.co', + NEXT_PUBLIC_SUPABASE_ANON_KEY: + process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY || + 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InZmeHl2emtwcnBlZWdoZXlhcHpnIiwicm9sZSI6ImFub24iLCJpYXQiOjE3MDExMDEwNjcsImV4cCI6MjAxNjY3NzA2N30.6hR8wsUp0grypTcvaH553CLg8Badz7CzamflDPLBeqU', }, typescript: { // We can ignore build errors because we are using tsc to type check From 114940217541d7241a8f52117ca54cf179ad4a46 Mon Sep 17 00:00:00 2001 From: Andraz <69682837+andyv09@users.noreply.github.com> Date: Mon, 11 Mar 2024 12:00:00 +0100 Subject: [PATCH 04/19] fix: visual bugs in table (#583) --- .changeset/strong-pens-thank.md | 5 +++++ .../CreatePresentationDisplay/index.tsx | 2 +- .../CredentialTable/index.tsx | 21 +++++++++++++------ 3 files changed, 21 insertions(+), 7 deletions(-) create mode 100644 .changeset/strong-pens-thank.md diff --git a/.changeset/strong-pens-thank.md b/.changeset/strong-pens-thank.md new file mode 100644 index 000000000..c5018e5e1 --- /dev/null +++ b/.changeset/strong-pens-thank.md @@ -0,0 +1,5 @@ +--- +"@blockchain-lab-um/dapp": patch +--- + +Fix some visual bugs diff --git a/packages/dapp/src/components/CreatePresentationDisplay/index.tsx b/packages/dapp/src/components/CreatePresentationDisplay/index.tsx index 8cff3319a..24b8f2326 100644 --- a/packages/dapp/src/components/CreatePresentationDisplay/index.tsx +++ b/packages/dapp/src/components/CreatePresentationDisplay/index.tsx @@ -201,7 +201,7 @@ const CreatePresentationDisplay = () => { />
    - {advanced && ( + {advanced && format === 'JWT' && (
    Challenge diff --git a/packages/dapp/src/components/DashboardDisplay/CredentialTable/index.tsx b/packages/dapp/src/components/DashboardDisplay/CredentialTable/index.tsx index 4c501e379..b99173e42 100644 --- a/packages/dapp/src/components/DashboardDisplay/CredentialTable/index.tsx +++ b/packages/dapp/src/components/DashboardDisplay/CredentialTable/index.tsx @@ -57,7 +57,7 @@ const IssuerCell = ({ vc }: { vc: QueryCredentialsRequestResult }) => { href={`https://dev.uniresolver.io/#${issuer}`} target="_blank" rel="noreferrer" - className="dark:text-orange-accent-dark dark:hover:text-orange-accent-dark/80 flex items-center justify-center text-pink-400 underline hover:text-pink-500" + className="dark:text-orange-accent-dark dark:hover:text-orange-accent-dark/80 flex items-center justify-start text-pink-400 underline hover:text-pink-500" >{`${issuer.slice(0, 8)}....${issuer.slice(-4)}`} ); @@ -147,7 +147,7 @@ const CredentialTable = ({ vcs }: CredentialTableProps) => { case 'date': { const date = Date.parse(vc.data.issuanceDate); return ( - + {new Date(date).toDateString()} ); @@ -165,7 +165,7 @@ const CredentialTable = ({ vcs }: CredentialTableProps) => { href={`https://dev.uniresolver.io/#${subject}`} target="_blank" rel="noreferrer" - className="dark:text-orange-accent-dark dark:hover:text-orange-accent-dark/80 flex items-center justify-center text-pink-400 underline hover:text-pink-500" + className="dark:text-orange-accent-dark dark:hover:text-orange-accent-dark/80 flex items-center justify-start text-pink-400 underline hover:text-pink-500" >{`${subject.slice(0, 8)}....${subject.slice(-4)}`} ); @@ -174,7 +174,7 @@ const CredentialTable = ({ vcs }: CredentialTableProps) => { return ; case 'exp_date': return ( - + {vc.data.expirationDate === undefined ? '/' : new Date(vc.data.expirationDate).toDateString()} @@ -225,7 +225,7 @@ const CredentialTable = ({ vcs }: CredentialTableProps) => { } case 'actions': return ( -
    +
    +
    +
    + ); +}; + +const DisplayDate = ({ text, date }: { text: string; date: string }) => ( +
    +

    + {text}: +

    +

    + {new Date(Date.parse(date)).toDateString()} +

    +
    +); + +const CredentialSubject = ({ + data, + viewJsonText, + selectJsonData, +}: { + data: Record; + viewJsonText: string; + selectJsonData: React.Dispatch>; +}) => ( + <> + {Object.entries(data).map(([key, value]: [string, any]) => { + if (value === null || value === '') return null; + return ( + + {(() => { + if (key === 'id') { + return ( + <> +
    +
    + +
    +
    + + ); + } + + if (key === 'address') return ; + + const isObject = !( + typeof value === 'string' || typeof value === 'number' + ); + // key is a string camel case, seperate it with spaces, e.g. CamelCase should be Camel Case + key = key.replace(/([A-Z])/g, ' $1').trim(); + return ( +
    +

    + {key}: +

    +
    + {isObject ? ( + + ) : ( + value + )} +
    +
    + ); + })()} +
    + ); + })} + +); + +const CredentialPanel = ({ credential }: FormattedPanelProps) => { + const t = useTranslations('CredentialPanel'); + + const pathname = usePathname(); + const router = useRouter(); + + // Local state + const types = useMemo(() => convertTypes(credential.type), [credential.type]); + const [jsonModalOpen, setJsonModalOpen] = useState(false); + const [selectedJsonData, setSelectedJsonData] = useState({}); + + const isValid = useMemo(() => { + if (!credential.expirationDate) return true; + return Date.parse(credential.expirationDate) > Date.now(); + }, [credential]); + + const selectJsonData = (data: any) => { + setSelectedJsonData(data); + setJsonModalOpen(true); + }; + + return ( + <> +
    +
    +
    +

    + {t('title')} +

    + +

    + {getFirstWord(types)} +

    +
    +
    +
    + + {isValid ? ( + + ) : ( + + )} + +
    +

    + {t('status')} +

    +

    + {isValid ? 'Valid' : 'Invalid'} +

    +
    +
    +
    +
    +
    +

    + {t('subject')} +

    + +
    +
    +
    +
    +

    + {t('issuer')} +

    +
    +
    + +
    +
    +
    +
    +

    + {t('dates')} +

    + + {credential.expirationDate && ( + + )} +
    +
    +
    +
    +
    { + const params = new URLSearchParams(window.location.search); + params.set('view', 'Json'); + router.replace(`${pathname}?${params.toString()}`); + }} + > + {t('view-json')} +
    +
    + + + ); +}; + +export default CredentialPanel; diff --git a/packages/dapp/src/app/[locale]/app/(public)/share-presentation/[id]/formattedView.tsx b/packages/dapp/src/app/[locale]/app/(public)/share-presentation/[id]/FormattedView.tsx similarity index 99% rename from packages/dapp/src/app/[locale]/app/(public)/share-presentation/[id]/formattedView.tsx rename to packages/dapp/src/app/[locale]/app/(public)/share-presentation/[id]/FormattedView.tsx index 9b75a57eb..c41a99f08 100644 --- a/packages/dapp/src/app/[locale]/app/(public)/share-presentation/[id]/formattedView.tsx +++ b/packages/dapp/src/app/[locale]/app/(public)/share-presentation/[id]/FormattedView.tsx @@ -14,7 +14,7 @@ import { useMemo, useState } from 'react'; import { VerificationInfoModal } from '@/components/VerificationInfoModal'; import { copyToClipboard } from '@/utils/string'; -import CredentialPanel from './credentialPanel'; +import CredentialPanel from './CredentialPanel'; export const FormattedView = ({ credential, diff --git a/packages/dapp/src/app/[locale]/app/(public)/share-presentation/[id]/NormalViewButton.tsx b/packages/dapp/src/app/[locale]/app/(public)/share-presentation/[id]/NormalViewButton.tsx new file mode 100644 index 000000000..4627002ff --- /dev/null +++ b/packages/dapp/src/app/[locale]/app/(public)/share-presentation/[id]/NormalViewButton.tsx @@ -0,0 +1,23 @@ +'use client'; + +import { ArrowLeftIcon } from '@heroicons/react/20/solid'; +import { usePathname, useRouter } from 'next/navigation'; + +export const NormalViewButton = () => { + const router = useRouter(); + const pathname = usePathname(); + + return ( + + ); +}; diff --git a/packages/dapp/src/app/[locale]/app/(public)/share-presentation/[id]/page.tsx b/packages/dapp/src/app/[locale]/app/(public)/share-presentation/[id]/page.tsx index 47ddda0bf..aafb1e3b7 100644 --- a/packages/dapp/src/app/[locale]/app/(public)/share-presentation/[id]/page.tsx +++ b/packages/dapp/src/app/[locale]/app/(public)/share-presentation/[id]/page.tsx @@ -1,4 +1,3 @@ -import { createClient } from '@supabase/supabase-js'; import { VerifiablePresentation } from '@veramo/core'; import { decodeCredentialToObject } from '@veramo/utils'; import { normalizeCredential } from 'did-jwt-vc'; @@ -7,48 +6,12 @@ import { notFound } from 'next/navigation'; import { getAgent } from '@/app/api/veramoSetup'; import JsonPanel from '@/components/CredentialDisplay/JsonPanel'; import { convertTypes } from '@/utils/string'; -import { Database } from '@/utils/supabase/database.types'; -import { FormattedView } from './formattedView'; +import { FormattedView } from './FormattedView'; +import { usePresentation, useUpdatePresentationViews } from '@/hooks'; +import { NormalViewButton } from './NormalViewButton'; export const revalidate = 0; -interface ReturnPresentation { - presentation: VerifiablePresentation; - title: string; -} - -const getPresentation = async (id: string): Promise => { - const supabase = createClient( - process.env.NEXT_PUBLIC_SUPABASE_URL!, - process.env.SUPABASE_SECRET_KEY! - ); - - // Query the presentation - const { data, error } = await supabase - .from('presentations') - .select() - .eq('id', id) - .limit(1); - - if (error) { - throw new Error('Failed to fetch presentation'); - } - - if (!data || data.length === 0) { - return notFound(); - } - - // Update views - await supabase - .from('presentations') - .update({ views: data[0].views + 1 }) - .eq('id', id); - - const presentation = data[0].presentation as VerifiablePresentation; - const { title } = data[0]; - return { presentation, title }; -}; - const verifyPresentation = async (presentation: VerifiablePresentation) => { const agent = await getAgent(); @@ -69,7 +32,16 @@ export default async function Page({ page: string | undefined; }; }) { - const { presentation } = await getPresentation(id); + const { data } = await usePresentation(id); + + if (!data) { + return notFound(); + } + + await useUpdatePresentationViews(id); + + const { presentation } = data; + const credentials = presentation.verifiableCredential ? presentation.verifiableCredential.map(decodeCredentialToObject) : []; @@ -94,6 +66,7 @@ export default async function Page({ )} {view === 'Json' && (
    +
    )} @@ -112,9 +85,16 @@ export async function generateMetadata({ page: string | undefined; }; }) { - const { presentation, title } = await getPresentation(id); - if (!presentation) return {}; + const { data } = await usePresentation(id); + + // If the presentation is not found, return an empty as the metadata + if (!data) return {}; + + const { presentation, title } = data; + const url = process.env.NEXT_PUBLIC_APP_URL || 'https://masca.io'; + + // Create the OpenGraph Image URL const ogUrl = new URL(`${url}/api/og`); ogUrl.searchParams.set('type', 'share-presentation'); ogUrl.searchParams.set('holder', presentation.holder); diff --git a/packages/dapp/src/app/[locale]/app/layout.tsx b/packages/dapp/src/app/[locale]/app/layout.tsx index 32af1ed85..8cb014258 100644 --- a/packages/dapp/src/app/[locale]/app/layout.tsx +++ b/packages/dapp/src/app/[locale]/app/layout.tsx @@ -2,12 +2,9 @@ import clsx from 'clsx'; import AppBottomBar from '@/components/AppBottomBar'; import AppNavbar from '@/components/AppNavbar'; -import { CookiesProvider } from '@/components/CookiesProvider'; -import { EncryptedSessionProvider } from '@/components/EncryptedSessionProvider'; -import MascaProvider from '@/components/MascaProvider'; import { SignInModal } from '@/components/SignInModal'; import ToastWrapper from '@/components/ToastWrapper'; -import WagmiProviderWrapper from '@/components/WagmiProvider'; +import { Providers } from '@/components/Providers'; export default async function AppLayout({ children, @@ -15,26 +12,21 @@ export default async function AppLayout({ children: React.ReactNode; }) { return ( - <> - - -
    -
    - - {children} -
    + + +
    +
    + {children}
    - - - - - +
    + + - +
    ); } diff --git a/packages/dapp/src/app/api/campaigns/issue/route.ts b/packages/dapp/src/app/api/campaigns/issue/route.ts new file mode 100644 index 000000000..319eecb1a --- /dev/null +++ b/packages/dapp/src/app/api/campaigns/issue/route.ts @@ -0,0 +1,246 @@ +import { randomUUID } from 'crypto'; +import { NextRequest, NextResponse } from 'next/server'; +import { MinimalImportableKey } from '@veramo/core'; +import jwt from 'jsonwebtoken'; + +import { getAgent } from '../../veramoSetup'; +import { supabaseServiceRoleClient } from '@/utils/supabase/supabaseServiceRoleClient'; + +const PRIVATE_KEY = process.env.CAMPAIGN_PRIVATE_KEY!; +const ISSUER = process.env.CAMPAIGN_ISSUER_DID!; + +const CORS_HEADERS = { + 'Access-Control-Allow-Origin': '*', + 'Access-Control-Allow-Methods': 'POST, OPTIONS', + 'Access-Control-Allow-Headers': 'Content-Type', +}; + +export const dynamic = 'force-dynamic'; + +export async function POST(request: NextRequest) { + try { + const token = request.headers.get('Authorization')?.replace('Bearer ', ''); + + if (!token) { + return new NextResponse('Unauthorized', { + status: 401, + headers: { + ...CORS_HEADERS, + }, + }); + } + + const user = jwt.verify(token, process.env.SUPABASE_JWT_SECRET!) as { + sub: string; + address: string; + aud: string; + role: string; + iat: number; + exp: number; + }; + + const { did, campaignId } = await request.json(); + + if (!did) { + return new NextResponse('Missing reciever did', { + status: 400, + headers: { + ...CORS_HEADERS, + }, + }); + } + + if (!campaignId) { + return new NextResponse('Missing campaignId', { + status: 400, + headers: { + ...CORS_HEADERS, + }, + }); + } + + const agent = await getAgent(); + const didResolution = await agent.resolveDid({ didUrl: did }); + + if ( + !didResolution.didDocument || + !didResolution.didDocument.verificationMethod + ) { + return new NextResponse('Error resolving did', { + status: 400, + headers: { + ...CORS_HEADERS, + }, + }); + } + + if ( + didResolution.didDocument.verificationMethod[0].blockchainAccountId + ?.split(':')[2] + .toLowerCase() !== user.address.toLowerCase() + ) { + return new NextResponse('Unauthorized', { + status: 401, + headers: { + ...CORS_HEADERS, + }, + }); + } + + const supabase = supabaseServiceRoleClient(); + + const { data: campaign, error: campaignError } = await supabase + .from('campaigns') + .select('*') + .eq('id', campaignId) + .single() + .throwOnError(); + + if (campaignError) { + return new NextResponse('Campaign not found', { + status: 404, + headers: { + ...CORS_HEADERS, + }, + }); + } + + if (campaign.total && campaign.claimed >= campaign.total) { + return new NextResponse('Campaign is already fully claimed', { + status: 400, + headers: { + ...CORS_HEADERS, + }, + }); + } + + const { data: claim, error: claimError } = await supabase + .from('claims') + .select('*') + .eq('campaign_id', campaignId) + .eq('user_id', user.sub); + + if (claimError) { + return new NextResponse('Internal Server Error', { + status: 500, + headers: { + ...CORS_HEADERS, + }, + }); + } + + const controllerKeyId = 'key-1'; + + const issuerDid = await agent.didManagerImport({ + did: ISSUER, + provider: 'did:ens', + controllerKeyId, + keys: [ + { + kid: controllerKeyId, + type: 'Secp256k1', + kms: 'local', + privateKeyHex: PRIVATE_KEY, + } as MinimalImportableKey, + ], + }); + + let claimDate = new Date().toISOString(); + if (claim.length > 0) { + claimDate = claim[0].claimed_at; + } + let credentialId = claim[0]?.credential_id; + if (claim.length === 0) { + const { data: insertedClaimData, error: updatedClaimError } = + await supabase + .from('claims') + .insert({ + user_id: user.sub, + campaign_id: campaignId, + claimed_at: claimDate, + }) + .select(); + if (insertedClaimData![0].credential_id) { + credentialId = insertedClaimData![0].credential_id; + } + if (updatedClaimError) { + if (updatedClaimError.message === 'Claimed cannot exceed Total') { + return new NextResponse('Campaign is already fully claimed', { + status: 400, + headers: { + ...CORS_HEADERS, + }, + }); + } + + console.error('Error updating claim', updatedClaimError); + return new NextResponse('Internal Server Error', { + status: 500, + headers: { + ...CORS_HEADERS, + }, + }); + } + } + // TODO: enhance this probably? + const credentialSubject: any = { + ...(campaign.credential_subject as object), + id: did as string, + }; + if (credentialId !== undefined && credentialId !== null) { + credentialSubject.credentialId = credentialId; + } + const vc = await agent.createVerifiableCredential({ + credential: { + id: randomUUID(), + issuer: issuerDid.did, + issuanceDate: claimDate, + '@context': [ + 'https://www.w3.org/2018/credentials/v1', + campaign.schema_context_url, + ], + credentialSchema: { + id: campaign.schema_url, + type: 'JsonSchema', + }, + type: ['VerifiableCredential', campaign.type], + credentialSubject, + }, + proofFormat: 'EthereumEip712Signature2021', + }); + + return NextResponse.json( + { + credential: vc, + }, + { + status: 200, + } + ); + } catch (error) { + console.error(error); + if ((error as Error).message === 'jwt expired') { + return new NextResponse('Unauthorized', { + status: 401, + headers: { + ...CORS_HEADERS, + }, + }); + } + return new NextResponse('Internal Server Error', { + status: 500, + headers: { + ...CORS_HEADERS, + }, + }); + } +} + +export async function OPTIONS() { + return new NextResponse(null, { + status: 200, + headers: { + ...CORS_HEADERS, + }, + }); +} diff --git a/packages/dapp/src/app/api/campaigns/requirements/verify/[id]/route.ts b/packages/dapp/src/app/api/campaigns/requirements/verify/[id]/route.ts new file mode 100644 index 000000000..84e374ee2 --- /dev/null +++ b/packages/dapp/src/app/api/campaigns/requirements/verify/[id]/route.ts @@ -0,0 +1,288 @@ +import { NextRequest, NextResponse } from 'next/server'; +import { + VerifiableCredential, + VerifiablePresentation, + W3CVerifiablePresentation, +} from '@veramo/core'; +import jwt from 'jsonwebtoken'; + +import { getAgent } from '@/app/api/veramoSetup'; +import { supabaseServiceRoleClient } from '@/utils/supabase/supabaseServiceRoleClient'; +import { normalizeCredential } from 'did-jwt-vc'; + +const CORS_HEADERS = { + 'Access-Control-Allow-Origin': '*', + 'Access-Control-Allow-Methods': 'POST, OPTIONS', + 'Access-Control-Allow-Headers': 'Content-Type', +}; + +export const dynamic = 'force-dynamic'; + +export async function POST( + request: NextRequest, + { params: { id } }: { params: { id: string } } +) { + try { + const token = request.headers.get('Authorization')?.replace('Bearer ', ''); + + if (!token) { + return new NextResponse('Unauthorized', { + status: 401, + headers: { + ...CORS_HEADERS, + }, + }); + } + + if (!id) { + return new NextResponse('Missing requirement_id', { + status: 400, + headers: { + ...CORS_HEADERS, + }, + }); + } + + const user = jwt.verify(token, process.env.SUPABASE_JWT_SECRET!) as { + sub: string; + address: string; + aud: string; + role: string; + iat: number; + exp: number; + }; + + const supabase = supabaseServiceRoleClient(); + + const { data: userRequirements, error: userRequirementsError } = + await supabase + .from('users_requirements') + .select('*') + .eq('user_id', user.sub) + .eq('requirement_id', id); + + if (userRequirementsError) { + return new NextResponse('Error getting user requirements', { + status: 500, + headers: { + ...CORS_HEADERS, + }, + }); + } + + if (userRequirements.length !== 0) { + return NextResponse.json( + { + success: true, + }, + { + status: 200, + headers: { + ...CORS_HEADERS, + }, + } + ); + } + + let { + presentation, + did, + }: { + presentation: W3CVerifiablePresentation; + did: string; + } = await request.json(); + + if (!presentation) { + return new NextResponse('Missing presentation', { + status: 400, + headers: { + ...CORS_HEADERS, + }, + }); + } + + if (!did) { + return new NextResponse('Missing did', { + status: 400, + headers: { + ...CORS_HEADERS, + }, + }); + } + + const agent = await getAgent(); + const didResolution = await agent.resolveDid({ didUrl: did }); + + if ( + !didResolution.didDocument || + !didResolution.didDocument.verificationMethod + ) { + return new NextResponse('Error resolving did', { + status: 400, + headers: { + ...CORS_HEADERS, + }, + }); + } + + if ( + didResolution.didDocument.verificationMethod[0].blockchainAccountId?.split( + ':' + )[2] !== user.address.toLowerCase() + ) { + return new NextResponse('Unauthorized', { + status: 401, + headers: { + ...CORS_HEADERS, + }, + }); + } + + const { data: requirement, error: requirementsError } = await supabase + .from('requirements') + .select('*') + .eq('id', id) + .single(); + + if (requirementsError) { + return new NextResponse('Error getting requirements', { + status: 500, + headers: { + ...CORS_HEADERS, + }, + }); + } + + if (typeof presentation === 'string') { + const decoded = jwt.decode(presentation); + + if (typeof decoded === 'string') { + return new NextResponse('Invalid presentation', { + status: 400, + headers: { + ...CORS_HEADERS, + }, + }); + } + + presentation = decoded as VerifiablePresentation; + } + + if (!presentation.verifiableCredential) { + return new NextResponse('No credentials in presentation', { + status: 400, + headers: { + ...CORS_HEADERS, + }, + }); + } + + let credentials: VerifiableCredential[]; + + try { + credentials = presentation.verifiableCredential.map((credential) => + normalizeCredential(credential) + ); + } catch (error) { + console.error('Error decoding credentials', error); + return new NextResponse('Error decoding credentials', { + status: 400, + headers: { + ...CORS_HEADERS, + }, + }); + } + + // TODO - simplify to only check the one requirement as long as the user has not selected the vcs for vp + const canClaim = (requirement.types ?? []).every((type) => + credentials.some((credential) => { + // Check issuer + const issuer = + typeof credential.issuer === 'string' + ? credential.issuer + : credential.issuer.id; + + if (issuer !== requirement.issuer) { + return false; + } + + // Check credential type + if (!credential.type) return false; + const credentialTypes = + typeof credential.type === 'string' + ? [credential.type] + : credential.type; + + return credentialTypes.includes(type); + }) + ); + + if (canClaim) { + const { error: insertedError } = await supabase + .from('users_requirements') + .insert({ + user_id: user.sub, + requirement_id: id, + }); + + if (insertedError) { + return new NextResponse('Internal Server Error', { + status: 500, + headers: { + ...CORS_HEADERS, + }, + }); + } + + return NextResponse.json( + { + success: true, + }, + { + status: 200, + headers: { + ...CORS_HEADERS, + }, + } + ); + } + + return NextResponse.json( + { + success: false, + message: 'Requirement not met', + }, + { + status: 200, + headers: { + ...CORS_HEADERS, + }, + } + ); + } catch (error) { + if ((error as Error).message === 'jwt expired') { + return new NextResponse('Unauthorized', { + status: 401, + headers: { + ...CORS_HEADERS, + }, + }); + } + + return new NextResponse('Internal Server Error', { + status: 500, + headers: { + ...CORS_HEADERS, + }, + }); + } +} + +export async function OPTIONS() { + return new NextResponse(null, { + status: 200, + headers: { + ...CORS_HEADERS, + }, + }); +} diff --git a/packages/dapp/src/app/api/campaigns/route.ts b/packages/dapp/src/app/api/campaigns/route.ts new file mode 100644 index 000000000..41dc2730d --- /dev/null +++ b/packages/dapp/src/app/api/campaigns/route.ts @@ -0,0 +1,33 @@ +import { NextRequest, NextResponse } from 'next/server'; + +import { supabaseServiceRoleClient } from '@/utils/supabase/supabaseServiceRoleClient'; + +const CORS_HEADERS = { + 'Access-Control-Allow-Origin': '*', + 'Access-Control-Allow-Methods': 'GET, OPTIONS', + 'Access-Control-Allow-Headers': 'Content-Type', +}; + +export const dynamic = 'force-dynamic'; + +export async function GET(_: NextRequest) { + const supabase = supabaseServiceRoleClient(); + + const { data: campaigns, error } = await supabase + .from('campaigns') + .select('*, requirements(id, *)') + .order('created_at', { ascending: false }) + .eq('production', true); + + if (error) { + console.error('Error getting campaigns', error); + return new NextResponse('Error getting campaigns', { + status: 500, + headers: { + ...CORS_HEADERS, + }, + }); + } + + return NextResponse.json({ campaigns }, { headers: { ...CORS_HEADERS } }); +} diff --git a/packages/dapp/src/app/api/campaigns/user/campaigns/route.ts b/packages/dapp/src/app/api/campaigns/user/campaigns/route.ts new file mode 100644 index 000000000..7276a748e --- /dev/null +++ b/packages/dapp/src/app/api/campaigns/user/campaigns/route.ts @@ -0,0 +1,78 @@ +import { NextRequest, NextResponse } from 'next/server'; +import jwt from 'jsonwebtoken'; + +import { supabaseServiceRoleClient } from '@/utils/supabase/supabaseServiceRoleClient'; + +const CORS_HEADERS = { + 'Access-Control-Allow-Origin': '*', + 'Access-Control-Allow-Methods': 'GET, OPTIONS', + 'Access-Control-Allow-Headers': 'Content-Type', +}; + +export const dynamic = 'force-dynamic'; + +export async function GET(request: NextRequest) { + try { + const token = request.headers.get('Authorization')?.replace('Bearer ', ''); + + if (!token) { + return new NextResponse('Unauthorized', { + status: 401, + headers: { + ...CORS_HEADERS, + }, + }); + } + + const user = jwt.verify(token, process.env.SUPABASE_JWT_SECRET!) as { + sub: string; + address: string; + aud: string; + role: string; + iat: number; + exp: number; + }; + + const supabase = supabaseServiceRoleClient(); + + const { data: claims, error: claimsError } = await supabase + .from('claims') + .select('campaign_id') + .eq('user_id', user.sub); + + if (claimsError) { + return new NextResponse('Internal Server Error', { + status: 500, + headers: { + ...CORS_HEADERS, + }, + }); + } + + return NextResponse.json(claims, { status: 200 }); + } catch (error) { + if ((error as Error).message === 'jwt expired') { + return new NextResponse('Unauthorized', { + status: 401, + headers: { + ...CORS_HEADERS, + }, + }); + } + return new NextResponse('Internal Server Error', { + status: 500, + headers: { + ...CORS_HEADERS, + }, + }); + } +} + +export async function OPTIONS() { + return new NextResponse(null, { + status: 200, + headers: { + ...CORS_HEADERS, + }, + }); +} diff --git a/packages/dapp/src/app/api/campaigns/user/requirements/route.ts b/packages/dapp/src/app/api/campaigns/user/requirements/route.ts new file mode 100644 index 000000000..73b5cf195 --- /dev/null +++ b/packages/dapp/src/app/api/campaigns/user/requirements/route.ts @@ -0,0 +1,86 @@ +import { NextRequest, NextResponse } from 'next/server'; +import jwt from 'jsonwebtoken'; + +import { supabaseServiceRoleClient } from '@/utils/supabase/supabaseServiceRoleClient'; + +const CORS_HEADERS = { + 'Access-Control-Allow-Origin': '*', + 'Access-Control-Allow-Methods': 'GET, OPTIONS', + 'Access-Control-Allow-Headers': 'Content-Type', +}; + +export const dynamic = 'force-dynamic'; + +export async function GET(request: NextRequest) { + try { + const token = request.headers.get('Authorization')?.replace('Bearer ', ''); + + if (!token) { + return new NextResponse('Unauthorized', { + status: 401, + headers: { + ...CORS_HEADERS, + }, + }); + } + + const user = jwt.verify(token, process.env.SUPABASE_JWT_SECRET!) as { + sub: string; + address: string; + aud: string; + role: string; + iat: number; + exp: number; + }; + + const supabase = supabaseServiceRoleClient(); + + const { data, error } = await supabase + .from('users') + .select('id, requirements(id)') + .eq('id', user.sub) + .single(); + + if (error) { + return new NextResponse('Internal Server Error', { + status: 500, + headers: { + ...CORS_HEADERS, + }, + }); + } + + return NextResponse.json( + { + completed: data.requirements.map((r) => r.id), + }, + { status: 200 } + ); + } catch (error) { + if ((error as Error).message === 'jwt expired') { + return new NextResponse('Unauthorized', { + status: 401, + headers: { + ...CORS_HEADERS, + }, + }); + } + + console.error(error); + return new NextResponse('Internal Server Error', { + status: 500, + headers: { + ...CORS_HEADERS, + }, + }); + } +} + +export async function OPTIONS() { + return new NextResponse(null, { + status: 200, + headers: { + ...CORS_HEADERS, + }, + }); +} diff --git a/packages/dapp/src/app/api/encrypted-session/route.ts b/packages/dapp/src/app/api/encrypted-session/route.ts index 65795ec28..123442cd4 100644 --- a/packages/dapp/src/app/api/encrypted-session/route.ts +++ b/packages/dapp/src/app/api/encrypted-session/route.ts @@ -1,8 +1,7 @@ -import { createClient } from '@supabase/supabase-js'; import jwt from 'jsonwebtoken'; import { NextRequest, NextResponse } from 'next/server'; -import { Database } from '@/utils/supabase/database.types'; +import { supabaseServiceRoleClient } from '@/utils/supabase/supabaseServiceRoleClient'; const CORS_HEADERS = { 'Access-Control-Allow-Origin': '*', @@ -10,6 +9,8 @@ const CORS_HEADERS = { 'Access-Control-Allow-Headers': 'Content-Type', }; +export const dynamic = 'force-dynamic'; + export async function GET(request: NextRequest) { try { const token = request.headers.get('Authorization')?.replace('Bearer ', ''); @@ -32,13 +33,10 @@ export async function GET(request: NextRequest) { exp: number; }; - const supabase = createClient( - process.env.NEXT_PUBLIC_SUPABASE_URL!, - process.env.SUPABASE_SECRET_KEY! - ); + const supabase = supabaseServiceRoleClient(); const { data: selectData, error: selectError } = await supabase - .from('encrypted_sessions') + .from('sessions') .select('id') .eq('user_id', user.sub); @@ -54,7 +52,7 @@ export async function GET(request: NextRequest) { // If session is found delete it if (selectData.length !== 0) { const { error: deleteError } = await supabase - .from('encrypted_sessions') + .from('sessions') .delete() .eq('user_id', user.sub); @@ -70,7 +68,7 @@ export async function GET(request: NextRequest) { // Create a new session const { data: insertData, error: insertError } = await supabase - .from('encrypted_sessions') + .from('sessions') .insert({ user_id: user.sub, }) diff --git a/packages/dapp/src/app/api/share/presentation/[id]/route.ts b/packages/dapp/src/app/api/share/presentation/[id]/route.ts index 253b5d6b3..313b2bb97 100644 --- a/packages/dapp/src/app/api/share/presentation/[id]/route.ts +++ b/packages/dapp/src/app/api/share/presentation/[id]/route.ts @@ -1,11 +1,10 @@ -import { createClient } from '@supabase/supabase-js'; import { NextRequest, NextResponse } from 'next/server'; -import { Database } from '@/utils/supabase/database.types'; +import { supabaseServiceRoleClient } from '@/utils/supabase/supabaseServiceRoleClient'; const CORS_HEADERS = { 'Access-Control-Allow-Origin': '*', - 'Access-Control-Allow-Methods': 'GET OPTIONS', + 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Headers': 'Content-Type', }; @@ -14,10 +13,7 @@ export async function GET( { params: { id } }: { params: { id: string } } ) { try { - const supabase = createClient( - process.env.NEXT_PUBLIC_SUPABASE_URL!, - process.env.SUPABASE_SECRET_KEY! - ); + const supabase = supabaseServiceRoleClient(); const { data, error } = await supabase .from('presentations') diff --git a/packages/dapp/src/app/api/share/presentation/route.ts b/packages/dapp/src/app/api/share/presentation/route.ts index dadc40404..8507d3b9a 100644 --- a/packages/dapp/src/app/api/share/presentation/route.ts +++ b/packages/dapp/src/app/api/share/presentation/route.ts @@ -1,16 +1,17 @@ -import { createClient } from '@supabase/supabase-js'; import jwt from 'jsonwebtoken'; import { NextRequest, NextResponse } from 'next/server'; -import { Database } from '@/utils/supabase/database.types'; import { getAgent } from '../../veramoSetup'; +import { supabaseServiceRoleClient } from '@/utils/supabase/supabaseServiceRoleClient'; const CORS_HEADERS = { 'Access-Control-Allow-Origin': '*', - 'Access-Control-Allow-Methods': 'POST OPTIONS', + 'Access-Control-Allow-Methods': 'POST, OPTIONS', 'Access-Control-Allow-Headers': 'Content-Type', }; +export const dynamic = 'force-dynamic'; + export async function POST(request: NextRequest) { try { const token = request.headers.get('Authorization')?.replace('Bearer ', ''); @@ -67,10 +68,7 @@ export async function POST(request: NextRequest) { }); } - const supabase = createClient( - process.env.NEXT_PUBLIC_SUPABASE_URL!, - process.env.SUPABASE_SECRET_KEY! - ); + const supabase = supabaseServiceRoleClient(); const { data, error } = await supabase .from('presentations') diff --git a/packages/dapp/src/app/api/siwe/nonce/route.ts b/packages/dapp/src/app/api/siwe/nonce/route.ts index 1dfd8e3cf..edb292aa8 100644 --- a/packages/dapp/src/app/api/siwe/nonce/route.ts +++ b/packages/dapp/src/app/api/siwe/nonce/route.ts @@ -1,24 +1,20 @@ -import { createClient } from '@supabase/supabase-js'; import { add, format } from 'date-fns'; import { NextResponse } from 'next/server'; -import { Database } from '@/utils/supabase/database.types'; +import { supabaseServiceRoleClient } from '@/utils/supabase/supabaseServiceRoleClient'; const CORS_HEADERS = { 'Access-Control-Allow-Origin': '*', - 'Access-Control-Allow-Methods': 'GET OPTIONS', + 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Headers': 'Content-Type', }; export async function GET() { - const supabase = createClient( - process.env.NEXT_PUBLIC_SUPABASE_URL!, - process.env.SUPABASE_SECRET_KEY! - ); + const supabase = supabaseServiceRoleClient(); // Insert a new nonce and select 1 row const { data, error } = await supabase - .from('authorization') + .from('siwe') .insert({ // Expires in 5 minutes (ISO String) expires_at: format( diff --git a/packages/dapp/src/app/api/siwe/verify/route.ts b/packages/dapp/src/app/api/siwe/verify/route.ts index 6c3bed77c..f89708535 100644 --- a/packages/dapp/src/app/api/siwe/verify/route.ts +++ b/packages/dapp/src/app/api/siwe/verify/route.ts @@ -1,13 +1,12 @@ -import { createClient } from '@supabase/supabase-js'; import jwt from 'jsonwebtoken'; import { NextRequest, NextResponse } from 'next/server'; import { SiweMessage } from 'siwe'; -import { Database } from '@/utils/supabase/database.types'; +import { supabaseServiceRoleClient } from '@/utils/supabase/supabaseServiceRoleClient'; const CORS_HEADERS = { 'Access-Control-Allow-Origin': '*', - 'Access-Control-Allow-Methods': 'POST OPTIONS', + 'Access-Control-Allow-Methods': 'POST, OPTIONS', 'Access-Control-Allow-Headers': 'Content-Type', }; @@ -25,13 +24,10 @@ export async function POST(request: NextRequest) { }); } - const supabase = createClient( - process.env.NEXT_PUBLIC_SUPABASE_URL!, - process.env.SUPABASE_SECRET_KEY! - ); + const supabase = supabaseServiceRoleClient(); const { data: authorizationQueryData } = await supabase - .from('authorization') + .from('siwe') .select() .eq('id', sessionId) .limit(1); diff --git a/packages/dapp/src/app/api/supabase/verify/route.ts b/packages/dapp/src/app/api/supabase/verify/route.ts index 6825bdc49..1d895ae0d 100644 --- a/packages/dapp/src/app/api/supabase/verify/route.ts +++ b/packages/dapp/src/app/api/supabase/verify/route.ts @@ -3,7 +3,7 @@ import { NextRequest, NextResponse } from 'next/server'; const CORS_HEADERS = { 'Access-Control-Allow-Origin': '*', - 'Access-Control-Allow-Methods': 'GET OPTIONS', + 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Headers': 'Content-Type Authorization', }; diff --git a/packages/dapp/src/app/api/veramoSetup.ts b/packages/dapp/src/app/api/veramoSetup.ts index 509e7405c..b29e1d396 100644 --- a/packages/dapp/src/app/api/veramoSetup.ts +++ b/packages/dapp/src/app/api/veramoSetup.ts @@ -12,18 +12,46 @@ import { CredentialPlugin, type ICredentialIssuer, } from '@veramo/credential-w3c'; -import { getDidPkhResolver as didPkhResolver } from '@veramo/did-provider-pkh'; +import { + AbstractDIDStore, + DIDManager, + MemoryDIDStore, +} from '@veramo/did-manager'; +import { EthrDIDProvider } from '@veramo/did-provider-ethr'; +import { + getDidPkhResolver as didPkhResolver, + PkhDIDProvider, +} from '@veramo/did-provider-pkh'; import { DIDResolverPlugin } from '@veramo/did-resolver'; +import { + KeyManager, + MemoryKeyStore, + MemoryPrivateKeyStore, +} from '@veramo/key-manager'; +import { KeyManagementSystem } from '@veramo/kms-local'; import { Resolver } from 'did-resolver'; -import { getResolver as didEnsResolver } from 'ens-did-resolver'; +import { + ProviderConfiguration, + getResolver as didEnsResolver, +} from 'ens-did-resolver'; import { JsonRpcProvider } from 'ethers'; import { getResolver as didEthrResolver } from 'ethr-did-resolver'; export type Agent = TAgent< - IDIDManager & IKeyManager & IResolver & ICredentialVerifier + IDIDManager & + IKeyManager & + IResolver & + ICredentialVerifier & + ICredentialIssuer >; const networks = [ + { + name: '', + provider: new JsonRpcProvider( + process.env.MAINNET_RPC_URL || 'https://mainnet.infura.io/v3/' + ), + }, { name: 'mainnet', provider: new JsonRpcProvider( @@ -50,14 +78,33 @@ export const getAgent = async (): Promise => { plugins: [ new CredentialPlugin(), new CredentialIssuerEIP712(), - + new DIDManager({ + store: new MemoryDIDStore(), + defaultProvider: 'did:pkh', + providers: { + 'did:ethr': new EthrDIDProvider({ + defaultKms: 'local', + networks, + }), + 'did:pkh': new PkhDIDProvider({ + defaultKms: 'local', + chainId: '0x01', + }), + }, + }), + new KeyManager({ + store: new MemoryKeyStore(), + kms: { + local: new KeyManagementSystem(new MemoryPrivateKeyStore()), + }, + }), new DIDResolverPlugin({ resolver: new Resolver({ ...didEthrResolver({ networks }), ...didPkhResolver(), ...didKeyResolver(), ...didEnsResolver({ - rpcUrl: process.env.MAINNET_RPC_URL, + networks: networks as unknown as ProviderConfiguration[], }), }), }), diff --git a/packages/dapp/src/components/AppBottomBar/index.tsx b/packages/dapp/src/components/AppBottomBar/index.tsx index 281bfd1b8..72b5c42e9 100644 --- a/packages/dapp/src/components/AppBottomBar/index.tsx +++ b/packages/dapp/src/components/AppBottomBar/index.tsx @@ -14,13 +14,18 @@ const MAIN_LINKS = [ requiresConnection: false, }, { - name: 'settings', - href: '/app/settings', - requiresConnection: true, + name: 'campaigns', + href: '/app/campaigns', + requiresConnection: false, }, ]; const OTHER_LINKS = [ + { + name: 'settings', + href: '/app/settings', + requiresConnection: true, + }, { name: 'create-credential', href: '/app/create-credential', @@ -81,7 +86,7 @@ const AppBottomBar = () => {
    diff --git a/packages/dapp/src/components/AppNavbar/NavConnection.tsx b/packages/dapp/src/components/AppNavbar/NavConnection.tsx index f2034fb2b..bbaf8126d 100644 --- a/packages/dapp/src/components/AppNavbar/NavConnection.tsx +++ b/packages/dapp/src/components/AppNavbar/NavConnection.tsx @@ -9,7 +9,7 @@ import AddressPopover from '@/components/AddressPopover'; import ConnectButton from '@/components/ConnectButton'; import DropdownMenu from '@/components/DropdownMenu'; import MethodDropdownMenu from '@/components/MethodDropdownMenu'; -import { useGeneralStore, useMascaStore } from '@/stores'; +import { useMascaStore } from '@/stores'; import { NETWORKS, NETWORKS_BY_DID, @@ -23,14 +23,11 @@ export const NavConnection = () => { const [selectedNetwork, changeSelectedNetwork] = useState('Ethereum'); const { disconnect } = useDisconnect(); const { isConnected } = useAccount(); - const { did, currMethod, changeVcs } = useMascaStore((state) => ({ + const { did, currMethod, changeVcs, changeDid } = useMascaStore((state) => ({ did: state.currDID, currMethod: state.currDIDMethod, changeVcs: state.changeVcs, - })); - - const { changeDid } = useGeneralStore((state) => ({ - changeDid: state.changeDid, + changeDid: state.changeCurrDID, })); const getNetwork = (): string => { diff --git a/packages/dapp/src/components/AppNavbar/index.tsx b/packages/dapp/src/components/AppNavbar/index.tsx index 4d12494b3..349de074d 100644 --- a/packages/dapp/src/components/AppNavbar/index.tsx +++ b/packages/dapp/src/components/AppNavbar/index.tsx @@ -17,6 +17,11 @@ const MAIN_LINKS = [ href: '/app', requiresConnection: false, }, + { + name: 'campaigns', + href: '/app/campaigns', + requiresConnection: false, + }, { name: 'settings', href: '/app/settings', @@ -27,7 +32,7 @@ const MAIN_LINKS = [ export default function AppNavbar() { const t = useTranslations('AppNavbar'); const pathname = usePathname() ?? '/'; - const { isConnected, isConnecting } = useAccount(); + const { isConnected } = useAccount(); return (
    diff --git a/packages/dapp/src/components/Button/index.tsx b/packages/dapp/src/components/Button/index.tsx index 30f3eadf6..6f5c69148 100644 --- a/packages/dapp/src/components/Button/index.tsx +++ b/packages/dapp/src/components/Button/index.tsx @@ -14,7 +14,7 @@ interface ButtonProps { | 'white' | 'white-pink' | 'done'; - size?: 'popup' | 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'wd' | 'icon'; + size?: 'popup' | 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'wd' | 'icon' | '2xs'; shadow?: 'sm' | 'md' | 'lg' | 'xl' | '2xl' | 'none' | 'inner' | ''; onClick?: () => Promise | void; children: React.ReactNode; @@ -25,29 +25,30 @@ interface ButtonProps { const variants: Record = { primary: - 'bg-pink-500 dark:bg-orange-accent-dark dark:text-navy-blue-900 hover:opacity-80 active:opacity-50 text-white', + 'bg-pink-500 dark:bg-orange-accent-dark dark:text-navy-blue-900 enabled:hover:opacity-80 active:opacity-50 text-white', 'primary-active': - 'text-orange-500 border border-orange-500 bg-white hover:text-white hover:bg-orange-500', + 'text-orange-500 border border-orange-500 bg-white enabled:hover:text-white enabled:hover:bg-orange-500', secondary: - 'border-[0.225rem] border-pink-500 text-pink-500 hover:bg-pink-500/5 dark:hover:bg-orange-accent-dark/5 dark:border-orange-accent-dark dark:text-orange-accent-dark animated-transition', + 'border-[0.225rem] border-pink-500 text-pink-500 enabled:hover:bg-pink-500/5 dark:enabled:hover:bg-orange-accent-dark/5 dark:border-orange-accent-dark dark:text-orange-accent-dark animated-transition', 'secondary-active': - 'text-navy-blue-500 border border border-navy-blue-500 hover:text-white hover:bg-navy-blue-500', + 'text-navy-blue-500 border border border-navy-blue-500 enabled:hover:text-white enabled:hover:bg-navy-blue-500', connect: - 'bg-pink-200 hover:bg-pink-200/60 dark:hover:bg-pink-200/80 text-gray-700', - gray: 'bg-gray-200 text-gray-800 hover:opacity-80 active:opacity-50 dark:bg-navy-blue-700 dark:text-white', + 'bg-pink-200 enabled:hover:bg-pink-200/60 dark:enabled:hover:bg-pink-200/80 text-gray-700', + gray: 'bg-gray-200 text-gray-800 enabled:hover:opacity-80 active:opacity-50 dark:bg-navy-blue-700 dark:text-white', 'white-pink': - 'bg-white text-gray-800 hover:text-white hover:bg-pink-400 dark:bg-orange-accent-dark dark:text-gray-900 dark:hover:bg-orange-accent-dark/80', - white: 'bg-white text-gray-800 hover:opacity-80 active:opacity-50', - warning: 'bg-red-500 hover:bg-red-500/90 text-white justify-center', + 'bg-white text-gray-800 enabled:hover:text-white enabled:hover:bg-pink-400 dark:bg-orange-accent-dark dark:text-gray-900 dark:enabled:hover:bg-orange-accent-dark/80', + white: 'bg-white text-gray-800 enabled:hover:opacity-80 active:opacity-50', + warning: 'bg-red-500 enabled:hover:bg-red-500/90 text-white justify-center', cancel: - 'text-gray-700 dark:text-navy-blue-100 hover:opacity-80 active:opacity-50 underline underline-pink-500 dark:underline-orange-accent-dark underline-offset-4', + 'text-gray-700 dark:text-navy-blue-100 enabled:hover:opacity-80 active:opacity-50 underline underline-pink-500 dark:underline-orange-accent-dark underline-offset-4', 'cancel-red': - 'text-red-500 dark:text-red-500 hover:opacity-80 active:opacity-50 underline underline-red-500 underline-offset-4', - done: 'text-gray-600 dark:text-navy-blue-200 underline underline-gray-600 dark:underline-navy-blue-200 underline-offset-4 hover:opacity-80 active:opacity-50', + 'text-red-500 dark:text-red-500 enabled:hover:opacity-80 active:opacity-50 underline underline-red-500 underline-offset-4', + done: 'text-gray-600 dark:text-navy-blue-200 underline underline-gray-600 dark:underline-navy-blue-200 underline-offset-4 enabled:hover:opacity-80 active:opacity-50', }; const sizes: Record = { popup: 'md:text-sm py-2 px-3.5 text-xs', + '2xs': 'lg:text-xs lg:py-1.5 lg:px-2 text-xs py-1 px-2 border-[0.125rem]', xs: 'lg:text-sm lg:py-2.5 lg:px-4 text-xs py-1.5 px-3', sm: 'lg:text-h5 lg:py-2.5 lg:px-5 md:text-h5 md:py-2.5 md:px-4 text-sm py-2 px-3.5', md: 'lg:text-h4 lg:py-2.5 lg:px-7 md:text-h5 md:py-2.5 md:px-5 text-sm py-2.5 px-4', diff --git a/packages/dapp/src/components/CampaignsDisplay/CampaignDisplay.tsx b/packages/dapp/src/components/CampaignsDisplay/CampaignDisplay.tsx new file mode 100644 index 000000000..e2d990f42 --- /dev/null +++ b/packages/dapp/src/components/CampaignsDisplay/CampaignDisplay.tsx @@ -0,0 +1,157 @@ +import React, { useMemo } from 'react'; +import Image from 'next/image'; +import { isError } from '@blockchain-lab-um/masca-connector'; +import { useTranslations } from 'next-intl'; +import { shallow } from 'zustand/shallow'; + +import { useMascaStore, useToastStore, useAuthStore } from '@/stores'; +import Button from '../Button'; +import { RequirementDisplay } from './RequirementDisplay'; +import { + Campaigns, + useClaimCampaign, + useCompletedRequirements, + useSwitchChain, +} from '@/hooks'; +import { useAccount } from 'wagmi'; + +type CampaignProps = { + campaign: Campaigns[number]; +}; + +export const CampaignDisplay = ({ + campaign: { + id, + title, + description, + claimed, + total, + image_url: imageUrl, + requirements, + }, +}: CampaignProps) => { + const t = useTranslations('CampaignDisplay'); + + const { token, isSignedIn, changeIsSignInModalOpen } = useAuthStore( + (state) => ({ + token: state.token, + isSignedIn: state.isSignedIn, + changeIsSignInModalOpen: state.changeIsSignInModalOpen, + }), + shallow + ); + + const { api, didMethod, did, changeDID, changeCurrDIDMethod } = useMascaStore( + (state) => ({ + api: state.mascaApi, + didMethod: state.currDIDMethod, + did: state.currDID, + changeDID: state.changeCurrDID, + changeCurrDIDMethod: state.changeCurrDIDMethod, + }), + shallow + ); + + const { switchChain } = useSwitchChain(); + const { address } = useAccount(); + + const { mutate: claimCampaign, isPending: isClaiming } = useClaimCampaign( + id, + token + ); + + const { data: completedRequirementsData } = useCompletedRequirements(token); + + const completedRequirements = useMemo( + () => + completedRequirementsData + ? completedRequirementsData.completedRequirements + : [], + [completedRequirementsData] + ); + + const claimedString = useMemo( + () => + total === null + ? `${claimed} ${t('claimed')}` + : `${claimed}/${total} ${t('claimed')}`, + [claimed, total] + ); + + const handleClaim = async () => { + if (!api) return; + + // We only support mainnet for now + if (!(await switchChain(1))) return; + + let currentDid = did; + + // We only support did:pkh for now + if (didMethod !== 'did:pkh') { + const changeMethodResult = await api.switchDIDMethod('did:pkh'); + if (isError(changeMethodResult)) { + useToastStore.setState({ + open: true, + title: "Failed to change DID method to 'did:pkh'", + type: 'error', + loading: false, + link: null, + }); + return; + } + changeCurrDIDMethod('did:pkh'); + changeDID(changeMethodResult.data); + currentDid = changeMethodResult.data; + } + + claimCampaign({ did: currentDid }); + }; + + return ( +
    +
    +
    + campaign +
    +
    +
    +
    +

    + {title} +

    +

    + {description} +

    + {requirements.length > 0 && ( +
    + {t('requirements')} +
    + )} +
    +
    + {requirements.map((requirement) => ( + + ))} +
    +
    +

    {claimedString}

    + +
    +
    +
    + ); +}; diff --git a/packages/dapp/src/components/CampaignsDisplay/RequirementDisplay.tsx b/packages/dapp/src/components/CampaignsDisplay/RequirementDisplay.tsx new file mode 100644 index 000000000..e5f0a00fd --- /dev/null +++ b/packages/dapp/src/components/CampaignsDisplay/RequirementDisplay.tsx @@ -0,0 +1,133 @@ +import React, { useState } from 'react'; +import { + ArrowTopRightOnSquareIcon, + CheckIcon, +} from '@heroicons/react/24/solid'; +import { useTranslations } from 'next-intl'; + +import Button from '../Button'; +import { Tables } from '@/utils/supabase/database.types'; +import clsx from 'clsx'; +import { useSwitchChain, useVerifyRequirement } from '@/hooks'; +import { useAuthStore, useMascaStore, useToastStore } from '@/stores'; +import { isError } from '@blockchain-lab-um/masca-connector'; +import { shallow } from 'zustand/shallow'; + +type RequirementProps = { + requirement: Tables<'requirements'>; + completed: boolean; +}; + +export const RequirementDisplay = ({ + requirement: { id, name, action_link: actionLink }, + completed, +}: RequirementProps) => { + const t = useTranslations('RequirementDisplay'); + + const token = useAuthStore((state) => state.token); + + const { api, did, didMethod, changeDID, changeCurrDIDMethod } = useMascaStore( + (state) => ({ + api: state.mascaApi, + did: state.currDID, + didMethod: state.currDIDMethod, + changeCurrDIDMethod: state.changeCurrDIDMethod, + changeDID: state.changeCurrDID, + }), + shallow + ); + + const { switchChain } = useSwitchChain(); + const [startedVerifying, setStartedVerifying] = useState(false); + + const { mutateAsync: verifyRequirement, isPending: isVerifying } = + useVerifyRequirement(id, token); + + const handleVerify = async () => { + if (!api) return; + setStartedVerifying(true); + // We only support mainnet for now + if (!(await switchChain(1))) { + setStartedVerifying(false); + return; + } + + let currentDid = did; + + // We only support did:pkh for now + if (didMethod !== 'did:pkh') { + const changeMethodResult = await api.switchDIDMethod('did:pkh'); + if (isError(changeMethodResult)) { + useToastStore.setState({ + open: true, + title: "Failed to change DID method to 'did:pkh'", + type: 'error', + loading: false, + link: null, + }); + setStartedVerifying(false); + return; + } + changeCurrDIDMethod('did:pkh'); + changeDID(changeMethodResult.data); + currentDid = changeMethodResult.data; + } + + const queryCredentialsResult = await api.queryCredentials(); + + if (isError(queryCredentialsResult)) { + setStartedVerifying(false); + return; + } + + // Create a presentation from all the user's credentials + const createPresentationResult = await api.createPresentation({ + vcs: queryCredentialsResult.data.map((queryResult) => queryResult.data), + proofFormat: 'EthereumEip712Signature2021', + }); + + if (isError(createPresentationResult)) { + setStartedVerifying(false); + return; + } + setStartedVerifying(false); + await verifyRequirement({ + did: currentDid, + presentation: createPresentationResult.data, + }); + }; + + return ( +
    +

    +
    + {completed && } +
    + {name} + {actionLink && ( + + + + )} +

    + {!completed && ( +
    + +
    + )} +
    + ); +}; diff --git a/packages/dapp/src/components/CampaignsDisplay/index.tsx b/packages/dapp/src/components/CampaignsDisplay/index.tsx new file mode 100644 index 000000000..30e3ebb69 --- /dev/null +++ b/packages/dapp/src/components/CampaignsDisplay/index.tsx @@ -0,0 +1,34 @@ +'use client'; + +import React from 'react'; +import { CampaignDisplay } from './CampaignDisplay'; +import { useCampaigns } from '@/hooks'; +import { Spinner } from '@nextui-org/react'; +import { useTranslations } from 'next-intl'; + +export const CampaignsDisplay = () => { + const t = useTranslations('CampaignsDisplay'); + const { data, status } = useCampaigns(); + + if (status === 'pending') { + return ( +
    + +
    + ); + } + + const campaigns = data?.campaigns || []; + + if (campaigns.length === 0) { + return
    {t('no-campaigns')}
    ; + } + + return ( +
    + {campaigns.map((campaign) => ( + + ))} +
    + ); +}; diff --git a/packages/dapp/src/components/ConnectionModal/CreateConnectionModal.tsx b/packages/dapp/src/components/ConnectionModal/CreateConnectionModal.tsx index 655e287d1..f8b94be0d 100644 --- a/packages/dapp/src/components/ConnectionModal/CreateConnectionModal.tsx +++ b/packages/dapp/src/components/ConnectionModal/CreateConnectionModal.tsx @@ -11,8 +11,11 @@ import { useTranslations } from 'next-intl'; import { QRCodeSVG } from 'qrcode.react'; import { useEffect, useState } from 'react'; -import { useEncryptedSessionStore, useToastStore } from '@/stores'; -import { useAuthStore } from '@/stores/authStore'; +import { + useEncryptedSessionStore, + useToastStore, + useAuthStore, +} from '@/stores'; interface CreateConnectionModalProps { isOpen: boolean; diff --git a/packages/dapp/src/components/Controlbar/Controlbar.tsx b/packages/dapp/src/components/Controlbar/Controlbar.tsx index 53f64c466..4cb335a12 100644 --- a/packages/dapp/src/components/Controlbar/Controlbar.tsx +++ b/packages/dapp/src/components/Controlbar/Controlbar.tsx @@ -17,9 +17,13 @@ import { useAccount } from 'wagmi'; import GlobalFilter from '@/components/Controlbar/GlobalFilter'; import ViewTabs from '@/components/Controlbar/ViewTabs'; import ImportModal from '@/components/ImportModal'; -import { useMascaStore, useTableStore, useToastStore } from '@/stores'; -import { useAuthStore } from '@/stores/authStore'; -import { useShareModalStore } from '@/stores/shareModalStore'; +import { + useMascaStore, + useTableStore, + useToastStore, + useAuthStore, + useShareModalStore, +} from '@/stores'; import { removeCredentialSubjectFilterString, stringifyCredentialSubject, diff --git a/packages/dapp/src/components/Controlbar/FilterPopover/CredentialTypes.tsx b/packages/dapp/src/components/Controlbar/FilterPopover/CredentialTypes.tsx index 8e6389248..92c446347 100644 --- a/packages/dapp/src/components/Controlbar/FilterPopover/CredentialTypes.tsx +++ b/packages/dapp/src/components/Controlbar/FilterPopover/CredentialTypes.tsx @@ -69,7 +69,7 @@ export const CredentialTypes = () => { ))}
    {open && ( -
    +
    - Filters + {t('filters')} { const { cardView, setCardView } = useTableStore((state) => ({ @@ -30,11 +31,12 @@ const ViewTabs = () => { } ml-4 h-6 w-6 rounded-full md:h-7 md:w-7`} /> ); diff --git a/packages/dapp/src/components/CookiesProvider/index.tsx b/packages/dapp/src/components/CookiesProvider/index.tsx index fdd0eaac4..784518247 100644 --- a/packages/dapp/src/components/CookiesProvider/index.tsx +++ b/packages/dapp/src/components/CookiesProvider/index.tsx @@ -7,7 +7,9 @@ import { useAccount } from 'wagmi'; import { useAuthStore } from '@/stores/authStore'; import { verifyToken } from '@/utils/verifyToken'; -export const CookiesProvider = () => { +export const CookiesProvider = ({ + children, +}: { children: React.ReactNode }) => { const { changeToken, changeIsSignedIn } = useAuthStore((state) => ({ changeToken: state.changeToken, changeIsSignedIn: state.changeIsSignedIn, @@ -17,7 +19,11 @@ export const CookiesProvider = () => { useEffect(() => { // Return if user is not connected - if (!address) return; + if (!address) { + changeToken(''); + changeIsSignedIn(false); + return; + } const token = Cookies.get(`token-${address}`); if (!token) { @@ -44,5 +50,5 @@ export const CookiesProvider = () => { }); }, [address]); - return null; + return children; }; diff --git a/packages/dapp/src/components/CredentialDisplay/FormattedPanel.tsx b/packages/dapp/src/components/CredentialDisplay/FormattedPanel.tsx index b12089c44..6e6575d0b 100644 --- a/packages/dapp/src/components/CredentialDisplay/FormattedPanel.tsx +++ b/packages/dapp/src/components/CredentialDisplay/FormattedPanel.tsx @@ -5,6 +5,7 @@ import { DocumentDuplicateIcon, ExclamationCircleIcon, } from '@heroicons/react/24/outline'; +import { Image } from '@nextui-org/react'; import { Tooltip } from '@nextui-org/react'; import { VerifiableCredential } from '@veramo/core'; import clsx from 'clsx'; @@ -20,6 +21,7 @@ import { convertTypes, copyToClipboard, } from '@/utils/string'; +import { ImageLink } from '../ImageLink'; interface FormattedPanelProps { credential: VerifiableCredential; @@ -83,6 +85,8 @@ const CredentialSubject = ({ if (key === 'address' && isAddress(value)) { return ; } + if (key === 'image') return ; + if (!value || value === '' || value.length === 0) return null; const isObject = !( typeof value === 'string' || typeof value === 'number' @@ -100,7 +104,6 @@ const CredentialSubject = ({
    {isObject ? ( - // Small button, with outline, that opens a modal with the JSON data.
    - {types} + {types.includes('Masca Genesis Campaign Credential') && + vc.data.credentialSubject.title + ? vc.data.credentialSubject.title + : types}
    { diff --git a/packages/dapp/src/components/DashboardDisplay/CredentialTable/index.tsx b/packages/dapp/src/components/DashboardDisplay/CredentialTable/index.tsx index b99173e42..585012e28 100644 --- a/packages/dapp/src/components/DashboardDisplay/CredentialTable/index.tsx +++ b/packages/dapp/src/components/DashboardDisplay/CredentialTable/index.tsx @@ -25,9 +25,7 @@ import React, { useEffect, useMemo, useState } from 'react'; import DeleteModal from '@/components/DeleteModal'; import StoreIcon from '@/components/StoreIcon'; -import { useTableStore } from '@/stores'; -import { useAuthStore } from '@/stores/authStore'; -import { useShareModalStore } from '@/stores/shareModalStore'; +import { useTableStore, useAuthStore, useShareModalStore } from '@/stores'; import { removeCredentialSubjectFilterString } from '@/utils/format'; import { convertTypes } from '@/utils/string'; import { LastFetched } from '../LastFetched'; diff --git a/packages/dapp/src/components/DeleteSharedPresentationModal/index.tsx b/packages/dapp/src/components/DeleteSharedPresentationModal/index.tsx index 2295759e1..fee43178c 100644 --- a/packages/dapp/src/components/DeleteSharedPresentationModal/index.tsx +++ b/packages/dapp/src/components/DeleteSharedPresentationModal/index.tsx @@ -1,73 +1,29 @@ import { Modal, ModalBody, ModalContent, ModalHeader } from '@nextui-org/react'; import { useTranslations } from 'next-intl'; -import { Dispatch, SetStateAction } from 'react'; -import { useToastStore } from '@/stores'; -import { useAuthStore } from '@/stores/authStore'; -import { createClient } from '@/utils/supabase/client'; -import { Tables } from '@/utils/supabase/helper.types'; +import { useAuthStore } from '@/stores'; import Button from '../Button'; +import { useDeletePresentation } from '@/hooks'; interface DeleteSharedPresentationModalProps { isModalOpen: boolean; - setModalOpen: (isOpen: boolean) => void; - setPresentations: Dispatch[]>>; presentationId: string; + page: number; + setModalOpen: (isOpen: boolean) => void; } -const deletePresentation = async (token: string, id: string) => { - const supabase = createClient(token); - const { error } = await supabase.from('presentations').delete().match({ id }); - - if (error) throw new Error('Failed to delete presentation'); -}; - export const DeleteSharedPresentationModal = ({ isModalOpen, presentationId, + page, setModalOpen, - setPresentations, }: DeleteSharedPresentationModalProps) => { const t = useTranslations('DeleteSharedPresentationModal'); const token = useAuthStore((state) => state.token); - const handleDelete = async (id: string) => { - if (!token) return; - try { - await deletePresentation(token, id); - setPresentations((prev) => prev.filter((p) => p.id !== id)); - - useToastStore.setState({ - open: false, - }); - - setTimeout(() => { - useToastStore.setState({ - open: true, - title: t('delete-success'), - type: 'success', - loading: false, - link: null, - }); - }, 200); - } catch (error) { - console.error(error); - - useToastStore.setState({ - open: false, - }); - setTimeout(() => { - useToastStore.setState({ - open: true, - title: t('delete-error'), - type: 'error', - loading: false, - link: null, - }); - }, 200); - } - }; + const { mutate: deletePresentation, isPending } = + useDeletePresentation(token); return ( - handleDelete(presentationId).finally(() => - setModalOpen(false) - ) - } + disabled={isPending} + loading={isPending} + onClick={() => { + deletePresentation({ + id: presentationId, + page, + }); + setModalOpen(false); + }} > {t('delete')} diff --git a/packages/dapp/src/components/DropdownMenu/DropdownMenuItem.tsx b/packages/dapp/src/components/DropdownMenu/DropdownMenuItem.tsx index 59734b3d7..417072445 100644 --- a/packages/dapp/src/components/DropdownMenu/DropdownMenuItem.tsx +++ b/packages/dapp/src/components/DropdownMenu/DropdownMenuItem.tsx @@ -62,18 +62,14 @@ export const DropdownMenuItem = ({ handleBtn(children as string); }} className={clsx( - 'md:text-md block rounded-full py-2 text-sm', - active ? variants[variant] : '', + 'md:text-md block w-full rounded-full py-2 text-sm', + active ? variants[variant] : null, selected ? variantsSelected[variant] : variantsSelectedElse[variant] )} >
    - {selected ? ( - - ) : ( - '' - )} + {selected && } {children}
    diff --git a/packages/dapp/src/components/DropdownMenu/index.tsx b/packages/dapp/src/components/DropdownMenu/index.tsx index d48a328a5..8af3365c3 100644 --- a/packages/dapp/src/components/DropdownMenu/index.tsx +++ b/packages/dapp/src/components/DropdownMenu/index.tsx @@ -36,9 +36,9 @@ const variants: Record = { primary: 'bg-pink-500 dark:bg-orange-accent-dark hover:opacity-80 text-white dark:text-navy-blue-800 animated-transition ', secondary: - 'text-pink-500 border-[0.135rem] border-pink-500 dark:text-orange-accent-dark dark:border-orange-accent-dark animated-transition ', + 'text-pink-500 border-[0.135rem] border-pink-500 dark:text-orange-accent-dark dark:border-orange-accent-dark animated-transition ', 'primary-active': - 'text-pink-500 border-[0.135rem] border-pink-500 dark:text-orange-accent-dark dark:border-orange-accent-dark animated-transition ', + 'text-pink-500 border-[0.135rem] border-pink-500 dark:text-orange-accent-dark dark:border-orange-accent-dark animated-transition ', 'secondary-active': 'text-navy-blue-500 border border-1 border-navy-blue-300 animated-transition ', gray: 'bg-gray-200 text-gray-800 btn hover:opacity-80 animated-transition ', diff --git a/packages/dapp/src/components/EncryptedSessionDisplay/ConnectDeviceView.tsx b/packages/dapp/src/components/EncryptedSessionDisplay/ConnectDeviceView.tsx index 71a11f0cf..65ff3777b 100644 --- a/packages/dapp/src/components/EncryptedSessionDisplay/ConnectDeviceView.tsx +++ b/packages/dapp/src/components/EncryptedSessionDisplay/ConnectDeviceView.tsx @@ -6,8 +6,11 @@ import { useAccount } from 'wagmi'; import Button from '@/components/Button'; import CreateConnectionModal from '@/components/ConnectionModal/CreateConnectionModal'; import ScanQRCodeModal from '@/components/ScanQRCodeModal/ScanQRCodeModal'; -import { useEncryptedSessionStore, useToastStore } from '@/stores'; -import { useAuthStore } from '@/stores/authStore'; +import { + useEncryptedSessionStore, + useToastStore, + useAuthStore, +} from '@/stores'; import { Database } from '@/utils/supabase/database.types'; export const ConnectDeviceView = () => { @@ -75,7 +78,7 @@ export const ConnectDeviceView = () => { ); const { error } = await client - .from('encrypted_sessions') + .from('sessions') .update({ connected: true, }) diff --git a/packages/dapp/src/components/EncryptedSessionDisplay/CredentialView.tsx b/packages/dapp/src/components/EncryptedSessionDisplay/CredentialView.tsx index d69a9877c..4a9b0d783 100644 --- a/packages/dapp/src/components/EncryptedSessionDisplay/CredentialView.tsx +++ b/packages/dapp/src/components/EncryptedSessionDisplay/CredentialView.tsx @@ -46,7 +46,7 @@ export const CredentialView = ({ setTimeout(() => { useToastStore.setState({ open: true, - text: t('saving'), + title: t('saving'), type: 'normal', loading: true, link: null, @@ -64,7 +64,7 @@ export const CredentialView = ({ setTimeout(() => { useToastStore.setState({ open: true, - text: t('saving-error'), + title: t('saving-error'), type: 'error', loading: false, link: null, @@ -76,7 +76,7 @@ export const CredentialView = ({ setTimeout(() => { useToastStore.setState({ open: true, - text: t('saving-success'), + title: t('saving-success'), type: 'success', loading: false, link: null, diff --git a/packages/dapp/src/components/EncryptedSessionDisplay/ScanQRCodeView.tsx b/packages/dapp/src/components/EncryptedSessionDisplay/ScanQRCodeView.tsx index 1bc59200b..d75a6b820 100644 --- a/packages/dapp/src/components/EncryptedSessionDisplay/ScanQRCodeView.tsx +++ b/packages/dapp/src/components/EncryptedSessionDisplay/ScanQRCodeView.tsx @@ -8,9 +8,11 @@ import { useAccount } from 'wagmi'; import Button from '@/components/Button'; import ScanQRCodeModal from '@/components/ScanQRCodeModal/ScanQRCodeModal'; import UploadButton from '@/components/UploadButton'; -import { useToastStore } from '@/stores'; -import { useEncryptedSessionStore } from '@/stores/encryptedSessionStore'; -import { useQRCodeStore } from '@/stores/qrCodeStore'; +import { + useToastStore, + useEncryptedSessionStore, + useQRCodeStore, +} from '@/stores'; import { Database } from '@/utils/supabase/database.types'; interface ScanQRCodeViewProps { @@ -97,7 +99,7 @@ export const ScanQRCodeView = ({ onQRCodeScanned }: ScanQRCodeViewProps) => { ); const { error } = await client - .from('encrypted_sessions') + .from('sessions') .update({ data: uint8ArrayToHex(encryptedData), iv: uint8ArrayToHex(iv), diff --git a/packages/dapp/src/components/EncryptedSessionProvider/index.tsx b/packages/dapp/src/components/EncryptedSessionProvider/index.tsx index 6dea89f47..aaeb065e3 100644 --- a/packages/dapp/src/components/EncryptedSessionProvider/index.tsx +++ b/packages/dapp/src/components/EncryptedSessionProvider/index.tsx @@ -5,12 +5,19 @@ import { useTranslations } from 'next-intl'; import { useEffect, useMemo } from 'react'; import { useAccount } from 'wagmi'; -import { useMascaStore, useToastStore } from '@/stores'; -import { useAuthStore } from '@/stores/authStore'; -import { useEncryptedSessionStore } from '@/stores/encryptedSessionStore'; -import { createClient } from '@/utils/supabase/client'; - -export const EncryptedSessionProvider = () => { +import { + useMascaStore, + useToastStore, + useAuthStore, + useEncryptedSessionStore, +} from '@/stores'; +import { supabaseClient } from '@/utils/supabase/supabaseClient'; + +export const EncryptedSessionProvider = ({ + children, +}: { + children: React.ReactNode; +}) => { const t = useTranslations('EncryptedSessionProvider'); const token = useAuthStore((state) => state.token); @@ -36,7 +43,7 @@ export const EncryptedSessionProvider = () => { const api = useMascaStore((state) => state.mascaApi); - const client = useMemo(() => createClient(token ?? ''), [token]); + const client = supabaseClient(token); // Decrypt data const decryptData = async ({ @@ -138,13 +145,13 @@ export const EncryptedSessionProvider = () => { useEffect(() => { if (sessionId && deviceType === 'primary') { client - .channel('realtime encrypted_sessions') + .channel('realtime sessions') .on( 'postgres_changes', - { event: 'UPDATE', schema: 'public', table: 'encrypted_sessions' }, + { event: 'UPDATE', schema: 'public', table: 'sessions' }, async () => { const { data, error } = await client - .from('encrypted_sessions') + .from('sessions') .select() .eq('id', sessionId) .single(); @@ -198,5 +205,5 @@ export const EncryptedSessionProvider = () => { }); }, [address]); - return null; + return children; }; diff --git a/packages/dapp/src/components/ImageLink/index.tsx b/packages/dapp/src/components/ImageLink/index.tsx new file mode 100644 index 000000000..bc7d508d0 --- /dev/null +++ b/packages/dapp/src/components/ImageLink/index.tsx @@ -0,0 +1,25 @@ +import { useTranslations } from 'next-intl'; + +export const ImageLink = ({ value }: { value: string }) => { + const t = useTranslations('ImageLink'); + + return ( + + ); +}; diff --git a/packages/dapp/src/components/MascaProvider/index.tsx b/packages/dapp/src/components/MascaProvider/index.tsx index edbcce2d7..6c18a54a9 100644 --- a/packages/dapp/src/components/MascaProvider/index.tsx +++ b/packages/dapp/src/components/MascaProvider/index.tsx @@ -5,15 +5,14 @@ import { useTranslations } from 'next-intl'; import { useEffect } from 'react'; import { useAccount, useChainId, useSwitchChain } from 'wagmi'; -import { useMascaStore, useToastStore } from '@/stores'; -import { useAuthStore } from '@/stores/authStore'; +import { useMascaStore, useToastStore, useAuthStore } from '@/stores'; const snapId = process.env.USE_LOCAL === 'true' ? 'local:http://localhost:8081' : 'npm:@blockchain-lab-um/masca'; -const MascaProvider = () => { +const MascaProvider = ({ children }: { children: React.ReactNode }) => { const { address, isConnected } = useAccount(); const chainId = useChainId(); const { switchChainAsync } = useSwitchChain(); @@ -154,7 +153,7 @@ const MascaProvider = () => { } }, [isSignedIn, isConnected, api]); - return null; + return children; }; export default MascaProvider; diff --git a/packages/dapp/src/components/MetaMaskProvider/index.tsx b/packages/dapp/src/components/MetaMaskProvider/index.tsx index ae91afa0d..dde6bca95 100644 --- a/packages/dapp/src/components/MetaMaskProvider/index.tsx +++ b/packages/dapp/src/components/MetaMaskProvider/index.tsx @@ -35,7 +35,7 @@ const MetaMaskProvider = ({ children }: MetaMaskProviderProps) => {
    -

    +

    {t('metamask')}

    diff --git a/packages/dapp/src/components/Providers/index.tsx b/packages/dapp/src/components/Providers/index.tsx new file mode 100644 index 000000000..d7ed458a6 --- /dev/null +++ b/packages/dapp/src/components/Providers/index.tsx @@ -0,0 +1,31 @@ +'use client'; + +import { QueryClient, QueryClientProvider } from '@tanstack/react-query'; +import { WagmiProvider } from 'wagmi'; + +import { config } from '../../config/wagmiConfig'; +import { EncryptedSessionProvider } from '../EncryptedSessionProvider'; +import { CookiesProvider } from '../CookiesProvider'; +import MascaProvider from '../MascaProvider'; +import { ReactQueryDevtools } from '@tanstack/react-query-devtools'; + +const queryClient = new QueryClient(); + +export const Providers = ({ + children, +}: { + children: React.ReactNode; +}) => { + return ( + + + + + {children} + + + + + + ); +}; diff --git a/packages/dapp/src/components/ShareCredentialModal/index.tsx b/packages/dapp/src/components/ShareCredentialModal/index.tsx index bff841593..ee800dc3a 100644 --- a/packages/dapp/src/components/ShareCredentialModal/index.tsx +++ b/packages/dapp/src/components/ShareCredentialModal/index.tsx @@ -24,9 +24,12 @@ import { TwitterShareButton, } from 'react-share'; -import { useMascaStore, useToastStore } from '@/stores'; -import { useAuthStore } from '@/stores/authStore'; -import { useShareModalStore } from '@/stores/shareModalStore'; +import { + useMascaStore, + useToastStore, + useAuthStore, + useShareModalStore, +} from '@/stores'; import { selectProofFormat } from '@/utils/selectProofFormat'; import { convertTypes } from '@/utils/string'; import Button from '../Button'; diff --git a/packages/dapp/src/components/SignInModal/index.tsx b/packages/dapp/src/components/SignInModal/index.tsx index cb60ce133..0f44a3b73 100644 --- a/packages/dapp/src/components/SignInModal/index.tsx +++ b/packages/dapp/src/components/SignInModal/index.tsx @@ -7,8 +7,7 @@ import { useState } from 'react'; import { SiweMessage } from 'siwe'; import { useAccount, useSignMessage } from 'wagmi'; -import { useToastStore } from '@/stores'; -import { useAuthStore } from '@/stores/authStore'; +import { useToastStore, useAuthStore } from '@/stores'; import Button from '../Button'; export const SignInModal = () => { @@ -129,6 +128,8 @@ export const SignInModal = () => { isOpen={isSignInModalOpen} onClose={() => changeIsSignInModalOpen(false)} hideCloseButton={true} + isDismissable={false} + isKeyboardDismissDisabled={true} placement="center" className="main-bg mx-4 py-2" > diff --git a/packages/dapp/src/components/ThemeProvider/SupabaseProvider/index.tsx b/packages/dapp/src/components/ThemeProvider/SupabaseProvider/index.tsx deleted file mode 100644 index 572dc26b6..000000000 --- a/packages/dapp/src/components/ThemeProvider/SupabaseProvider/index.tsx +++ /dev/null @@ -1,23 +0,0 @@ -'use client'; - -import { useAuthStore } from '@/stores/authStore'; - -// import { SignInWithEthereum } from '@/components/SignInWithEthereum'; - -export const SupabaseProvider = ({ - children, -}: { - children: React.ReactNode; -}) => { - const isSignedIn = useAuthStore((state) => state.isSignedIn); - - if (!isSignedIn) { - return ( -
    - {/* */} -
    - ); - } - - return children; -}; diff --git a/packages/dapp/src/components/WagmiProvider/index.tsx b/packages/dapp/src/components/WagmiProvider/index.tsx deleted file mode 100644 index e75911b8d..000000000 --- a/packages/dapp/src/components/WagmiProvider/index.tsx +++ /dev/null @@ -1,20 +0,0 @@ -'use client'; - -import { QueryClient, QueryClientProvider } from '@tanstack/react-query'; -import { WagmiProvider } from 'wagmi'; - -import { config } from '../../config/wagmiConfig'; - -const queryClient = new QueryClient(); - -export default function WagmiProviderWrapper({ - children, -}: { - children: React.ReactNode; -}) { - return ( - - {children} - - ); -} diff --git a/packages/dapp/src/hooks/index.ts b/packages/dapp/src/hooks/index.ts new file mode 100644 index 000000000..cf7bce373 --- /dev/null +++ b/packages/dapp/src/hooks/index.ts @@ -0,0 +1,13 @@ +export * from './usePresentation'; +export * from './useUpdatePresentationViews'; +export * from './useTotalPresentations'; +export * from './usePresentations'; +export * from './useRequirements'; +export * from './useCampaigns'; +export * from './useCompletedRequirements'; +export * from './useVerifyRequirement'; +export * from './useClaimCampaign'; +export * from './useDeletePresentation'; +export * from './useSaveCredential'; +export * from './useQueryCredentials'; +export * from './useSwitchChain'; diff --git a/packages/dapp/src/hooks/useCampaigns.ts b/packages/dapp/src/hooks/useCampaigns.ts new file mode 100644 index 000000000..860195faf --- /dev/null +++ b/packages/dapp/src/hooks/useCampaigns.ts @@ -0,0 +1,28 @@ +import { Tables } from '@/utils/supabase/database.types'; +import { useQuery } from '@tanstack/react-query'; + +type AddUniqueProperty = { + [K in keyof T | P]: K extends keyof T ? T[K] : V; +}; + +export type Campaign = AddUniqueProperty< + Tables<'campaigns'>, + 'requirements', + Tables<'requirements'>[] +>; + +export type Campaigns = Campaign[]; + +export const useCampaigns = () => { + return useQuery({ + queryKey: ['campaigns'], + queryFn: async () => { + const res = await fetch('/api/campaigns', { cache: 'no-store' }); + const json = await res.json(); + + return { + campaigns: json.campaigns as Campaigns, + }; + }, + }); +}; diff --git a/packages/dapp/src/hooks/useClaimCampaign.ts b/packages/dapp/src/hooks/useClaimCampaign.ts new file mode 100644 index 000000000..4d4dbe452 --- /dev/null +++ b/packages/dapp/src/hooks/useClaimCampaign.ts @@ -0,0 +1,68 @@ +import { useMutation, useQueryClient } from '@tanstack/react-query'; +import { W3CVerifiableCredential } from '@veramo/core'; +import { useSaveCredential } from './useSaveCredential'; +import { useToastStore } from '@/stores'; + +type ClaimCampaignMutateProps = { + did: string; +}; + +export const useClaimCampaign = (id: string, token: string | null) => { + const queryClient = useQueryClient(); + const { mutateAsync: saveCredential } = useSaveCredential(); + + return useMutation({ + mutationKey: ['claim-campaign', { id, token }], + mutationFn: async ({ + did, + }: ClaimCampaignMutateProps): Promise<{ + credential: W3CVerifiableCredential; + }> => { + setTimeout(() => { + useToastStore.setState({ + open: true, + title: 'Claiming campaign', + type: 'normal', + loading: true, + link: null, + }); + }, 200); + + if (!token) throw new Error('No token'); + + const response = await fetch('/api/campaigns/issue', { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + Authorization: `Bearer ${token}`, + }, + body: JSON.stringify({ campaignId: id, did }), + }); + + if (!response.ok) { + throw new Error(await response.text()); + } + + const json = await response.json(); + + await saveCredential(json.credential); + + return { + credential: json.credential, + }; + }, + onError: (error) => { + console.error(error); + useToastStore.setState({ + open: true, + title: 'Error claiming campaign', + type: 'error', + loading: false, + link: null, + }); + }, + onSettled: () => { + queryClient.invalidateQueries({ queryKey: ['campaigns'] }); + }, + }); +}; diff --git a/packages/dapp/src/hooks/useCompletedRequirements.ts b/packages/dapp/src/hooks/useCompletedRequirements.ts new file mode 100644 index 000000000..3484ad077 --- /dev/null +++ b/packages/dapp/src/hooks/useCompletedRequirements.ts @@ -0,0 +1,27 @@ +import { useQuery } from '@tanstack/react-query'; + +export type CompletedRequirements = { id: string; completed_at: string }[]; + +export const useCompletedRequirements = (token: string | null) => { + return useQuery({ + queryKey: ['completed_requirements', { token }], + queryFn: async () => { + if (!token) return { completedRequirements: [] }; + + const res = await fetch('/api/campaigns/user/requirements', { + headers: new Headers({ + Authorization: `Bearer ${token}`, + }), + cache: 'no-store', + }); + + if (!res.ok) throw new Error(await res.text()); + + const json = await res.json(); + + return { + completedRequirements: json.completed as string[], + }; + }, + }); +}; diff --git a/packages/dapp/src/hooks/useDeletePresentation.ts b/packages/dapp/src/hooks/useDeletePresentation.ts new file mode 100644 index 000000000..d53f17565 --- /dev/null +++ b/packages/dapp/src/hooks/useDeletePresentation.ts @@ -0,0 +1,96 @@ +import { useToastStore } from '@/stores'; +import { supabaseClient } from '@/utils/supabase/supabaseClient'; +import { useMutation, useQueryClient } from '@tanstack/react-query'; +import { usePresentationsOptions } from './usePresentations'; +import { useTranslations } from 'next-intl'; + +export type DeletePresentationMuateProps = { + id: string; + page: number; +}; + +export const useDeletePresentation = (token: string | null) => { + const t = useTranslations('Hooks'); + const queryClient = useQueryClient(); + + return useMutation({ + mutationKey: ['deletePresentation', { token }], + mutationFn: async ({ id }: DeletePresentationMuateProps) => { + setTimeout(() => { + useToastStore.setState({ + open: true, + loading: true, + type: 'normal', + title: t('deleting-presentation'), + link: null, + }); + }, 200); + + if (!token) throw new Error('No token'); + + const supabase = supabaseClient(token); + + await supabase + .from('presentations') + .delete() + .match({ id }) + .throwOnError(); + }, + onMutate: async ({ id, page }) => { + const presentationsOptions = usePresentationsOptions(token, page); + + await queryClient.cancelQueries({ + queryKey: ['presentations', { token }], + }); + + const previousPresentations = queryClient.getQueryData( + presentationsOptions.queryKey + ); + + if (previousPresentations) { + queryClient.setQueryData(presentationsOptions.queryKey, (prev) => ({ + ...prev, + presentations: prev + ? prev.presentations.filter((p: any) => p.id !== id) + : [], + })); + } + + return { previousPresentations }; + }, + onError: (_, { page }, context) => { + if (context?.previousPresentations) { + queryClient.setQueryData( + ['presentations', { token, page }], + context.previousPresentations + ); + } + + setTimeout(() => { + useToastStore.setState({ + open: true, + title: t('failed-to-delete-presentation'), + type: 'error', + loading: false, + link: null, + }); + }, 200); + }, + onSuccess: () => { + setTimeout(() => { + useToastStore.setState({ + open: true, + title: t('presentation-deleted'), + type: 'success', + loading: false, + link: null, + }); + }, 200); + }, + onSettled: () => { + queryClient.invalidateQueries({ + queryKey: ['presentations', { token }], + }); + }, + }); +}; diff --git a/packages/dapp/src/hooks/usePresentation.ts b/packages/dapp/src/hooks/usePresentation.ts new file mode 100644 index 000000000..142abf5c5 --- /dev/null +++ b/packages/dapp/src/hooks/usePresentation.ts @@ -0,0 +1,28 @@ +import { supabaseServiceRoleClient } from '@/utils/supabase/supabaseServiceRoleClient'; +import { VerifiablePresentation } from '@veramo/core'; + +export const usePresentation = async (id: string) => { + const supabase = supabaseServiceRoleClient(); + + // Query the presentation + const { data, error } = await supabase + .from('presentations') + .select() + .eq('id', id) + .limit(1); + + if (!data || data.length === 0 || error) { + return { + data: null, + error, + }; + } + + return { + data: { + presentation: data[0].presentation as VerifiablePresentation, + title: data[0].title, + }, + error: null, + }; +}; diff --git a/packages/dapp/src/hooks/usePresentations.ts b/packages/dapp/src/hooks/usePresentations.ts new file mode 100644 index 000000000..98b9ae66d --- /dev/null +++ b/packages/dapp/src/hooks/usePresentations.ts @@ -0,0 +1,38 @@ +import { supabaseClient } from '@/utils/supabase/supabaseClient'; +import { queryOptions, useQuery } from '@tanstack/react-query'; + +export const ITEMS_PER_PAGE = 10; + +const getFromAndTo = (page: number) => { + const from = page === 0 ? 0 : (page - 1) * ITEMS_PER_PAGE; + const to = from + ITEMS_PER_PAGE - 1; + + return { from, to }; +}; + +export const usePresentationsOptions = (token: string | null, page: number) => + queryOptions({ + queryKey: ['presentations', { token, page }], + queryFn: async () => { + if (!token) return { presentations: [] }; + + const supabase = supabaseClient(token); + + const { from, to } = getFromAndTo(page); + + const { data } = await supabase + .from('presentations') + .select('*') + .range(from, to) + .throwOnError(); + + return { + presentations: data ?? [], + }; + }, + refetchInterval: 30000, + }); + +export const usePresentations = (token: string | null, page: number) => { + return useQuery(usePresentationsOptions(token, page)); +}; diff --git a/packages/dapp/src/hooks/useQueryCredentials.ts b/packages/dapp/src/hooks/useQueryCredentials.ts new file mode 100644 index 000000000..024da5d82 --- /dev/null +++ b/packages/dapp/src/hooks/useQueryCredentials.ts @@ -0,0 +1,44 @@ +import { useMascaStore, useToastStore } from '@/stores'; +import { isError } from '@blockchain-lab-um/masca-connector'; +import { useQuery } from '@tanstack/react-query'; +import { useTranslations } from 'next-intl'; + +export const useQueryCredentials = () => { + const t = useTranslations('Hooks'); + const api = useMascaStore((state) => state.mascaApi); + + return useQuery({ + queryKey: ['credentials'], + queryFn: async () => { + setTimeout(() => { + useToastStore.setState({ + open: true, + title: t('loading-credentials'), + type: 'normal', + loading: true, + link: null, + }); + }, 200); + + if (!api) throw new Error('No Masca API instance'); + + const credentials = await api.queryCredentials(); + + if (isError(credentials)) { + setTimeout(() => { + useToastStore.setState({ + open: true, + title: t('failed-to-load-credentials'), + type: 'error', + loading: false, + link: null, + }); + }, 200); + return []; + } + + return credentials.data; + }, + initialData: [], + }); +}; diff --git a/packages/dapp/src/hooks/useRequirements.ts b/packages/dapp/src/hooks/useRequirements.ts new file mode 100644 index 000000000..d93398cd5 --- /dev/null +++ b/packages/dapp/src/hooks/useRequirements.ts @@ -0,0 +1,21 @@ +import { Tables } from '@/utils/supabase/database.types'; +import { useQuery } from '@tanstack/react-query'; + +export type Requirements = Tables<'requirements'>[]; + +export const useRequirements = () => { + return useQuery({ + queryKey: ['requirements'], + queryFn: async () => { + const res = await fetch('/api/campaigns/requirements', { + cache: 'no-store', + }); + + const json = await res.json(); + + return { + requirements: json.requirements as Requirements, + }; + }, + }); +}; diff --git a/packages/dapp/src/hooks/useSaveCredential.ts b/packages/dapp/src/hooks/useSaveCredential.ts new file mode 100644 index 000000000..3f9677934 --- /dev/null +++ b/packages/dapp/src/hooks/useSaveCredential.ts @@ -0,0 +1,57 @@ +import { useMascaStore, useToastStore } from '@/stores'; +import { isError } from '@blockchain-lab-um/masca-connector'; +import { useMutation, useQueryClient } from '@tanstack/react-query'; +import { W3CVerifiableCredential } from '@veramo/core'; +import { useTranslations } from 'next-intl'; + +// TODO: Optimistic update +export const useSaveCredential = () => { + const t = useTranslations('Hooks'); + const queryClient = useQueryClient(); + const api = useMascaStore((state) => state.mascaApi); + + return useMutation({ + mutationKey: ['save-credential'], + mutationFn: async (credential: W3CVerifiableCredential) => { + setTimeout(() => { + useToastStore.setState({ + open: true, + title: t('saving-credential'), + type: 'normal', + loading: true, + link: null, + }); + }, 200); + + if (!api) throw new Error('No Masca API instance'); + + const saveCredentialResult = await api.saveCredential(credential); + + if (isError(saveCredentialResult)) { + throw new Error(saveCredentialResult.error); + } + }, + onError: (error) => { + console.error(error); + useToastStore.setState({ + open: true, + title: t('failed-to-save-credential'), + type: 'error', + loading: false, + link: null, + }); + }, + onSuccess: () => { + useToastStore.setState({ + open: true, + title: t('credential-saved'), + type: 'success', + loading: false, + link: null, + }); + }, + onSettled: () => { + queryClient.invalidateQueries({ queryKey: ['credentials'] }); + }, + }); +}; diff --git a/packages/dapp/src/hooks/useSwitchChain.ts b/packages/dapp/src/hooks/useSwitchChain.ts new file mode 100644 index 000000000..46df6e318 --- /dev/null +++ b/packages/dapp/src/hooks/useSwitchChain.ts @@ -0,0 +1,31 @@ +import { useToastStore } from '@/stores'; +import { useTranslations } from 'next-intl'; +import { useAccount, useSwitchChain as useSwitchChainWagmi } from 'wagmi'; + +export const useSwitchChain = () => { + const t = useTranslations('Hooks'); + const { chainId: currentChainId } = useAccount(); + const { switchChainAsync } = useSwitchChainWagmi(); + + const switchChain = async (chainId: number): Promise => { + if (chainId === currentChainId) return true; + + try { + await switchChainAsync({ chainId }); + return true; + } catch (error) { + setTimeout(() => { + useToastStore.setState({ + open: true, + title: `${t('failed-to-switch-chainId')}: ${chainId}`, + type: 'error', + loading: false, + link: null, + }); + }, 200); + return false; + } + }; + + return { switchChain }; +}; diff --git a/packages/dapp/src/hooks/useTotalPresentations.ts b/packages/dapp/src/hooks/useTotalPresentations.ts new file mode 100644 index 000000000..fd3ddd1b4 --- /dev/null +++ b/packages/dapp/src/hooks/useTotalPresentations.ts @@ -0,0 +1,25 @@ +import { supabaseClient } from '@/utils/supabase/supabaseClient'; +import { useQuery } from '@tanstack/react-query'; + +export const useTotalPresentations = (token: string) => { + return useQuery({ + queryKey: ['presentations', { token, total: true }], + queryFn: async () => { + const supabase = supabaseClient(token); + + const { count } = await supabase + .from('presentations') + .select('id', { + count: 'exact', + }) + .throwOnError(); + + return { + total: count ?? 1, + }; + }, + initialData: { + total: 1, + }, + }); +}; diff --git a/packages/dapp/src/hooks/useUpdatePresentationViews.ts b/packages/dapp/src/hooks/useUpdatePresentationViews.ts new file mode 100644 index 000000000..2d9d428e6 --- /dev/null +++ b/packages/dapp/src/hooks/useUpdatePresentationViews.ts @@ -0,0 +1,10 @@ +import { supabaseServiceRoleClient } from '@/utils/supabase/supabaseServiceRoleClient'; + +export const useUpdatePresentationViews = async (id: string) => { + const supabase = supabaseServiceRoleClient(); + + // Update views + await supabase.rpc('increment_presentation_views', { + presentation_id: id, + }); +}; diff --git a/packages/dapp/src/hooks/useVerifyRequirement.ts b/packages/dapp/src/hooks/useVerifyRequirement.ts new file mode 100644 index 000000000..4cc743c74 --- /dev/null +++ b/packages/dapp/src/hooks/useVerifyRequirement.ts @@ -0,0 +1,84 @@ +import { useToastStore } from '@/stores'; +import { useMutation, useQueryClient } from '@tanstack/react-query'; +import { VerifiablePresentation } from '@veramo/core'; +import { useTranslations } from 'next-intl'; + +export type VerifyRequirementMutateProps = { + did: string; + presentation: VerifiablePresentation; +}; + +export const useVerifyRequirement = (id: string, token: string | null) => { + const t = useTranslations('Hooks'); + const queryClient = useQueryClient(); + + return useMutation({ + mutationKey: ['verifyRequirement', { id, token }], + mutationFn: async ( + values: VerifyRequirementMutateProps + ): Promise<{ success: boolean }> => { + if (!token) throw new Error('No token'); + + const { presentation, did } = values; + + const res = await fetch(`/api/campaigns/requirements/verify/${id}`, { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + Authorization: `Bearer ${token}`, + }, + body: JSON.stringify({ + presentation, + did, + }), + }); + + if (!res.ok) throw new Error(await res.text()); + + const json = await res.json(); + + return { success: json.success }; + }, + onSuccess: async ({ success }) => { + if (success) { + setTimeout(() => { + useToastStore.setState({ + open: true, + title: t('verification-success'), + type: 'success', + loading: false, + link: null, + }); + }, 200); + + await queryClient.invalidateQueries({ + queryKey: ['completed_requirements', { token }], + }); + return; + } + + setTimeout(() => { + useToastStore.setState({ + open: true, + title: t('requirements-not-met'), + type: 'error', + loading: false, + link: null, + }); + }, 200); + }, + onError: (error) => { + console.error('Error verifying requirement', error); + + setTimeout(() => { + useToastStore.setState({ + open: true, + title: t('failed-to-verify-requirements'), + type: 'error', + loading: false, + link: null, + }); + }, 200); + }, + }); +}; diff --git a/packages/dapp/src/messages/en.json b/packages/dapp/src/messages/en.json index f8f580109..7152bd788 100644 --- a/packages/dapp/src/messages/en.json +++ b/packages/dapp/src/messages/en.json @@ -3,11 +3,15 @@ "title": "Address", "tooltip": "Open Address in Etherscan" }, + "ImageLink": { + "image": "Image" + }, "AppBottomBar": { "create-credential": "Create Credential", "credentials": "Credentials", "qr-scanner": "QR Code Scanner", "settings": "Settings", + "campaigns": "Campaigns", "verify-data": "Verify Data" }, "VerificationInfoModal": { @@ -60,7 +64,8 @@ "home": "Home", "other": "Other", "qr-code-session": "QR Scanner", - "settings": "Settings" + "settings": "Settings", + "campaigns": "Campaigns" } }, "NavConnection": { @@ -182,6 +187,20 @@ "polygonid": "Polygon ID VCs aren't supported yet. Please remove this credential to continue!" } }, + "CampaignsDisplay": { + "please-sign-in": "Please sign in to see completed campaigns", + "verification-error": "Failed to verify the campaign", + "no-credentials": "No credentials found", + "no-campaigns": "No campaigns currently available." + }, + "CampaignDisplay": { + "requirements": "Requirements", + "claim": "Claim", + "claimed": "Claimed" + }, + "RequirementDisplay": { + "verify": "Verify" + }, "CredentialCard": { "create-verifiable-presentation": "Create Presentation", "expires": "EXPIRES ON", @@ -344,9 +363,24 @@ "datastore": "Data Store", "ecosystem": "Ecosystem", "filter": "Filter", + "filters": "Filters", "title": "Filter Credentials", "type": "Type" }, + "Hooks": { + "deleting-presentation": "Deleting presentation", + "failed-to-delete-presentation": "Failed to delete presentation", + "presentation-deleted": "Presentation deleted", + "loading-credentials": "Loading credentials", + "failed-to-load-credentials": "Failed to load credentials", + "saving-credential": "Saving credential", + "failed-to-save-credential": "Failed to save credential", + "credential-saved": "Credential saved", + "failed-to-switch-chainId": "Failed to switch to chainId", + "verification-success": "Verification successful", + "requirements-not-met": "You do not meet the requirements", + "failed-to-verify-requirements": "Failed to verify requirements" + }, "FormattedPanel": { "dates": "DATES", "expiration-date": "Expiration Date", diff --git a/packages/dapp/src/stores/generalStore.ts b/packages/dapp/src/stores/generalStore.ts deleted file mode 100644 index 43142d857..000000000 --- a/packages/dapp/src/stores/generalStore.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { shallow } from 'zustand/shallow'; -import { createWithEqualityFn } from 'zustand/traditional'; - -interface GeneralStore { - did: string; - supportsSnaps: boolean; - - changeDid: (did: string) => void; - changeSupportsSnaps: (supportsSnaps: boolean) => void; -} - -export const generalStoreInitialState = { - did: '', - supportsSnaps: false, -}; - -export const useGeneralStore = createWithEqualityFn()( - (set) => ({ - ...generalStoreInitialState, - - changeDid: (did: string) => set({ did }), - changeSupportsSnaps: (supportsSnaps: boolean) => set({ supportsSnaps }), - }), - shallow -); diff --git a/packages/dapp/src/stores/index.ts b/packages/dapp/src/stores/index.ts index 06b1a1d82..37dd1370b 100644 --- a/packages/dapp/src/stores/index.ts +++ b/packages/dapp/src/stores/index.ts @@ -1,5 +1,7 @@ -export * from './generalStore'; +export * from './authStore'; export * from './snapStore'; export * from './tableStore'; export * from './toastStore'; +export * from './shareModalStore'; export * from './encryptedSessionStore'; +export * from './qrCodeStore'; diff --git a/packages/dapp/src/utils/supabase/client.ts b/packages/dapp/src/utils/supabase/client.ts deleted file mode 100644 index b5df67954..000000000 --- a/packages/dapp/src/utils/supabase/client.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { createClient as createSupbaseClient } from '@supabase/supabase-js'; - -import { Database } from './database.types'; - -export const createClient = (token: string) => - createSupbaseClient( - process.env.NEXT_PUBLIC_SUPABASE_URL!, - process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY!, - { - global: { - headers: { - Authorization: `Bearer ${token}`, - }, - }, - } - ); diff --git a/packages/dapp/src/utils/supabase/database.types.ts b/packages/dapp/src/utils/supabase/database.types.ts index fdeed0095..5f4c09228 100644 --- a/packages/dapp/src/utils/supabase/database.types.ts +++ b/packages/dapp/src/utils/supabase/database.types.ts @@ -41,59 +41,122 @@ export type Database = { }, ]; }; - authorization: { + campaigns: { Row: { + additional_constraints: Json[] | null; + claimed: number; created_at: string; - expires_at: string; + credential_subject: Json; + description: string | null; + end_date: string | null; id: string; - nonce: string; + image_url: string; + production: boolean; + schema_context_url: string | null; + schema_url: string | null; + start_date: string | null; + title: string | null; + total: number | null; + type: string; }; Insert: { + additional_constraints?: Json[] | null; + claimed?: number; created_at?: string; - expires_at: string; + credential_subject: Json; + description?: string | null; + end_date?: string | null; id?: string; - nonce?: string; + image_url: string; + production?: boolean; + schema_context_url?: string | null; + schema_url?: string | null; + start_date?: string | null; + title?: string | null; + total?: number | null; + type?: string; }; Update: { + additional_constraints?: Json[] | null; + claimed?: number; created_at?: string; - expires_at?: string; + credential_subject?: Json; + description?: string | null; + end_date?: string | null; id?: string; - nonce?: string; + image_url?: string; + production?: boolean; + schema_context_url?: string | null; + schema_url?: string | null; + start_date?: string | null; + title?: string | null; + total?: number | null; + type?: string; }; Relationships: []; }; - campaign_claims: { + campaigns_requirements: { + Row: { + campaign_id: string; + requirement_id: string; + }; + Insert: { + campaign_id: string; + requirement_id: string; + }; + Update: { + campaign_id?: string; + requirement_id?: string; + }; + Relationships: [ + { + foreignKeyName: 'public_campaigns_requirements_campaign_id_fkey'; + columns: ['campaign_id']; + isOneToOne: false; + referencedRelation: 'campaigns'; + referencedColumns: ['id']; + }, + { + foreignKeyName: 'public_campaigns_requirements_requirement_id_fkey'; + columns: ['requirement_id']; + isOneToOne: false; + referencedRelation: 'requirements'; + referencedColumns: ['id']; + }, + ]; + }; + claims: { Row: { campaign_id: string; - can_claim: boolean; - claimed_at: string | null; + claimed_at: string; + credential_id: number | null; id: number; user_id: string; }; Insert: { campaign_id: string; - can_claim?: boolean; - claimed_at?: string | null; + claimed_at?: string; + credential_id?: number | null; id?: number; user_id: string; }; Update: { campaign_id?: string; - can_claim?: boolean; - claimed_at?: string | null; + claimed_at?: string; + credential_id?: number | null; id?: number; user_id?: string; }; Relationships: [ { - foreignKeyName: 'public_campaign_claims_campaign_id_fkey'; + foreignKeyName: 'public_claims_campaign_id_fkey'; columns: ['campaign_id']; isOneToOne: false; referencedRelation: 'campaigns'; referencedColumns: ['id']; }, { - foreignKeyName: 'public_campaign_claims_user_id_fkey'; + foreignKeyName: 'public_claims_user_id_fkey'; columns: ['user_id']; isOneToOne: false; referencedRelation: 'users'; @@ -101,82 +164,72 @@ export type Database = { }, ]; }; - campaign_requirements: { + presentations: { Row: { - action_link: string | null; created_at: string; + expires_at: string | null; id: string; - issuer: string | null; - jsonld_schema_url: string | null; - name: string | null; - types: string[] | null; + presentation: Json; + title: string; + user_id: string; + views: number; }; Insert: { - action_link?: string | null; created_at?: string; + expires_at?: string | null; id?: string; - issuer?: string | null; - jsonld_schema_url?: string | null; - name?: string | null; - types?: string[] | null; + presentation: Json; + title: string; + user_id?: string; + views?: number; }; Update: { - action_link?: string | null; created_at?: string; + expires_at?: string | null; id?: string; - issuer?: string | null; - jsonld_schema_url?: string | null; - name?: string | null; - types?: string[] | null; + presentation?: Json; + title?: string; + user_id?: string; + views?: number; }; - Relationships: []; + Relationships: [ + { + foreignKeyName: 'public_presentations_user_id_fkey'; + columns: ['user_id']; + isOneToOne: false; + referencedRelation: 'users'; + referencedColumns: ['id']; + }, + ]; }; - campaigns: { + requirements: { Row: { - additional_constraints: Json[] | null; - claimed: number | null; + action_link: string | null; created_at: string; - description: string | null; - end_date: string | null; id: string; - image_url: string | null; - production: boolean; - schema_url: string | null; - start_date: string | null; - title: string | null; - total: number | null; + issuer: string | null; + name: string | null; + types: string[] | null; }; Insert: { - additional_constraints?: Json[] | null; - claimed?: number | null; + action_link?: string | null; created_at?: string; - description?: string | null; - end_date?: string | null; id?: string; - image_url?: string | null; - production?: boolean; - schema_url?: string | null; - start_date?: string | null; - title?: string | null; - total?: number | null; + issuer?: string | null; + name?: string | null; + types?: string[] | null; }; Update: { - additional_constraints?: Json[] | null; - claimed?: number | null; + action_link?: string | null; created_at?: string; - description?: string | null; - end_date?: string | null; id?: string; - image_url?: string | null; - production?: boolean; - schema_url?: string | null; - start_date?: string | null; - title?: string | null; - total?: number | null; + issuer?: string | null; + name?: string | null; + types?: string[] | null; }; Relationships: []; }; - encrypted_sessions: { + sessions: { Row: { connected: boolean; data: string | null; @@ -200,7 +253,7 @@ export type Database = { }; Relationships: [ { - foreignKeyName: 'public_encrypted-sessions_user_id_fkey'; + foreignKeyName: 'public_sessions_user_id_fkey'; columns: ['user_id']; isOneToOne: false; referencedRelation: 'users'; @@ -208,98 +261,93 @@ export type Database = { }, ]; }; - presentations: { + siwe: { Row: { created_at: string; - expires_at: string | null; + expires_at: string; id: string; - presentation: Json; - title: string; - user_id: string; - views: number; + nonce: string; }; Insert: { created_at?: string; - expires_at?: string | null; + expires_at: string; id?: string; - presentation: Json; - title: string; - user_id?: string; - views?: number; + nonce?: string; }; Update: { created_at?: string; - expires_at?: string | null; + expires_at?: string; id?: string; - presentation?: Json; - title?: string; - user_id?: string; - views?: number; + nonce?: string; }; - Relationships: [ - { - foreignKeyName: 'presentations_user_id_fkey'; - columns: ['user_id']; - isOneToOne: false; - referencedRelation: 'users'; - referencedColumns: ['id']; - }, - ]; + Relationships: []; }; - requirement_campaign_rel: { + users: { Row: { - campaign_id: string; - requirement_id: string; + address: string; + created_at: string; + id: string; }; Insert: { - campaign_id: string; + address: string; + created_at?: string; + id?: string; + }; + Update: { + address?: string; + created_at?: string; + id?: string; + }; + Relationships: []; + }; + users_requirements: { + Row: { + created_at: string; requirement_id: string; + user_id: string; + }; + Insert: { + created_at?: string; + requirement_id?: string; + user_id?: string; }; Update: { - campaign_id?: string; + created_at?: string; requirement_id?: string; + user_id?: string; }; Relationships: [ { - foreignKeyName: 'public_requirement_campaign_rel_campaign_id_fkey'; - columns: ['campaign_id']; + foreignKeyName: 'public_users_requirements_requirement_id_fkey'; + columns: ['requirement_id']; isOneToOne: false; - referencedRelation: 'campaigns'; + referencedRelation: 'requirements'; referencedColumns: ['id']; }, { - foreignKeyName: 'public_requirement_campaign_rel_requirement_id_fkey'; - columns: ['requirement_id']; + foreignKeyName: 'public_users_requirements_user_id_fkey'; + columns: ['user_id']; isOneToOne: false; - referencedRelation: 'campaign_requirements'; + referencedRelation: 'users'; referencedColumns: ['id']; }, ]; }; - users: { - Row: { - address: string; - created_at: string; - id: string; - }; - Insert: { - address: string; - created_at?: string; - id?: string; - }; - Update: { - address?: string; - created_at?: string; - id?: string; - }; - Relationships: []; - }; }; Views: { [_ in never]: never; }; Functions: { - [_ in never]: never; + increment_presentation_views: { + Args: { + presentation_id: string; + }; + Returns: undefined; + }; + requesting_user_id: { + Args: Record; + Returns: string; + }; }; Enums: { [_ in never]: never; @@ -310,9 +358,11 @@ export type Database = { }; }; +type PublicSchema = Database[Extract]; + export type Tables< PublicTableNameOrOptions extends - | keyof (Database['public']['Tables'] & Database['public']['Views']) + | keyof (PublicSchema['Tables'] & PublicSchema['Views']) | { schema: keyof Database }, TableName extends PublicTableNameOrOptions extends { schema: keyof Database } ? keyof (Database[PublicTableNameOrOptions['schema']]['Tables'] & @@ -325,10 +375,10 @@ export type Tables< } ? R : never - : PublicTableNameOrOptions extends keyof (Database['public']['Tables'] & - Database['public']['Views']) - ? (Database['public']['Tables'] & - Database['public']['Views'])[PublicTableNameOrOptions] extends { + : PublicTableNameOrOptions extends keyof (PublicSchema['Tables'] & + PublicSchema['Views']) + ? (PublicSchema['Tables'] & + PublicSchema['Views'])[PublicTableNameOrOptions] extends { Row: infer R; } ? R @@ -337,7 +387,7 @@ export type Tables< export type TablesInsert< PublicTableNameOrOptions extends - | keyof Database['public']['Tables'] + | keyof PublicSchema['Tables'] | { schema: keyof Database }, TableName extends PublicTableNameOrOptions extends { schema: keyof Database } ? keyof Database[PublicTableNameOrOptions['schema']]['Tables'] @@ -348,8 +398,8 @@ export type TablesInsert< } ? I : never - : PublicTableNameOrOptions extends keyof Database['public']['Tables'] - ? Database['public']['Tables'][PublicTableNameOrOptions] extends { + : PublicTableNameOrOptions extends keyof PublicSchema['Tables'] + ? PublicSchema['Tables'][PublicTableNameOrOptions] extends { Insert: infer I; } ? I @@ -358,7 +408,7 @@ export type TablesInsert< export type TablesUpdate< PublicTableNameOrOptions extends - | keyof Database['public']['Tables'] + | keyof PublicSchema['Tables'] | { schema: keyof Database }, TableName extends PublicTableNameOrOptions extends { schema: keyof Database } ? keyof Database[PublicTableNameOrOptions['schema']]['Tables'] @@ -369,8 +419,8 @@ export type TablesUpdate< } ? U : never - : PublicTableNameOrOptions extends keyof Database['public']['Tables'] - ? Database['public']['Tables'][PublicTableNameOrOptions] extends { + : PublicTableNameOrOptions extends keyof PublicSchema['Tables'] + ? PublicSchema['Tables'][PublicTableNameOrOptions] extends { Update: infer U; } ? U @@ -379,13 +429,13 @@ export type TablesUpdate< export type Enums< PublicEnumNameOrOptions extends - | keyof Database['public']['Enums'] + | keyof PublicSchema['Enums'] | { schema: keyof Database }, EnumName extends PublicEnumNameOrOptions extends { schema: keyof Database } ? keyof Database[PublicEnumNameOrOptions['schema']]['Enums'] : never = never, > = PublicEnumNameOrOptions extends { schema: keyof Database } ? Database[PublicEnumNameOrOptions['schema']]['Enums'][EnumName] - : PublicEnumNameOrOptions extends keyof Database['public']['Enums'] - ? Database['public']['Enums'][PublicEnumNameOrOptions] + : PublicEnumNameOrOptions extends keyof PublicSchema['Enums'] + ? PublicSchema['Enums'][PublicEnumNameOrOptions] : never; diff --git a/packages/dapp/src/utils/supabase/supabaseClient.ts b/packages/dapp/src/utils/supabase/supabaseClient.ts new file mode 100644 index 000000000..da9369fa9 --- /dev/null +++ b/packages/dapp/src/utils/supabase/supabaseClient.ts @@ -0,0 +1,26 @@ +import { createClient, SupabaseClient } from '@supabase/supabase-js'; +import { Database } from './database.types'; + +let client: SupabaseClient | null = null; +let token: string | null = null; + +export const supabaseClient = (accessToken?: string | null) => { + if (token !== accessToken) { + token = accessToken || null; + client = null; + } + + if (client === null) { + client = createClient( + process.env.NEXT_PUBLIC_SUPABASE_URL!, + process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY!, + { + ...(accessToken && { + global: { headers: { Authorization: `Bearer ${accessToken}` } }, + }), + } + ); + } + + return client; +}; diff --git a/packages/dapp/src/utils/supabase/supabaseServiceRoleClient.ts b/packages/dapp/src/utils/supabase/supabaseServiceRoleClient.ts new file mode 100644 index 000000000..346076747 --- /dev/null +++ b/packages/dapp/src/utils/supabase/supabaseServiceRoleClient.ts @@ -0,0 +1,18 @@ +import { + createClient as createSupbaseClient, + SupabaseClient, +} from '@supabase/supabase-js'; +import { Database } from './database.types'; + +let client: SupabaseClient | null = null; + +export const supabaseServiceRoleClient = () => { + if (!client) { + client = createSupbaseClient( + process.env.NEXT_PUBLIC_SUPABASE_URL!, + process.env.SUPABASE_SECRET_KEY! + ); + } + + return client; +}; diff --git a/packages/dapp/src/utils/verifyToken.ts b/packages/dapp/src/utils/verifyToken.ts index 1934a699b..235dbb450 100644 --- a/packages/dapp/src/utils/verifyToken.ts +++ b/packages/dapp/src/utils/verifyToken.ts @@ -1,15 +1,20 @@ export const verifyToken = async (token: string) => { - const response = await fetch('/api/supabase/verify', { - method: 'GET', - headers: { - 'Content-Type': 'application/json', - Authorization: `Bearer ${token}`, - }, - }); + try { + const response = await fetch('/api/supabase/verify', { + method: 'GET', + headers: { + 'Content-Type': 'application/json', + Authorization: `Bearer ${token}`, + }, + }); - if (response.status !== 204) { + if (response.status !== 204) { + return false; + } + + return true; + } catch (error) { + console.error(error); return false; } - - return true; }; diff --git a/packages/snap/src/veramo/Veramo.service.ts b/packages/snap/src/veramo/Veramo.service.ts index 3099abdb0..15ff46514 100644 --- a/packages/snap/src/veramo/Veramo.service.ts +++ b/packages/snap/src/veramo/Veramo.service.ts @@ -967,6 +967,10 @@ class VeramoService { await GeneralService.getEnabledCredentialStores(); const networks: any = [ + { + name: '', + provider: new BrowserProvider(ethereum as any), + }, { name: 'mainnet', provider: new BrowserProvider(ethereum as any), diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 278e2cd9f..998a3df33 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -43,7 +43,7 @@ importers: version: 0.5.0 '@commitlint/cli': specifier: ^19.0.3 - version: 19.0.3(@types/node@20.11.25)(typescript@5.3.3) + version: 19.0.3(@types/node@20.11.25)(typescript@5.4.2) '@commitlint/config-conventional': specifier: ^19.0.3 version: 19.0.3 @@ -52,7 +52,7 @@ importers: version: 18.0.7(nx@18.0.7) '@nx/jest': specifier: 18.0.7 - version: 18.0.7(@types/node@20.11.25)(nx@18.0.7)(ts-node@10.9.2)(typescript@5.3.3) + version: 18.0.7(@types/node@20.11.25)(nx@18.0.7)(ts-node@10.9.2)(typescript@5.4.2) '@types/jest': specifier: ^29.5.12 version: 29.5.12 @@ -91,10 +91,10 @@ importers: version: 5.0.5 ts-node: specifier: ^10.9.2 - version: 10.9.2(@types/node@20.11.25)(typescript@5.3.3) + version: 10.9.2(@types/node@20.11.25)(typescript@5.4.2) typescript: - specifier: ^5.3.3 - version: 5.3.3 + specifier: ^5.4.2 + version: 5.4.2 libs/did-provider-ebsi: dependencies: @@ -146,7 +146,7 @@ importers: version: 9.0.8 tsup: specifier: ^8.0.2 - version: 8.0.2(ts-node@10.9.2)(typescript@5.3.3) + version: 8.0.2(ts-node@10.9.2)(typescript@5.4.2) libs/did-provider-key: dependencies: @@ -183,10 +183,10 @@ importers: version: 5.6.1-next.57(encoding@0.1.13) '@veramo/key-manager': specifier: 5.6.1-next.57 - version: 5.6.1-next.57 + version: 5.6.1-next.57(encoding@0.1.13) '@veramo/kms-local': specifier: 5.6.1-next.57 - version: 5.6.1-next.57 + version: 5.6.1-next.57(encoding@0.1.13) '@vitest/coverage-v8': specifier: 1.3.1 version: 1.3.1(vitest@1.3.1) @@ -201,7 +201,7 @@ importers: version: 13.1.0 tsup: specifier: ^8.0.2 - version: 8.0.2(ts-node@10.9.2)(typescript@5.3.3) + version: 8.0.2(ts-node@10.9.2)(typescript@5.4.2) typeorm: specifier: ^0.3.20 version: 0.3.20(better-sqlite3@9.4.3)(ts-node@10.9.2) @@ -210,7 +210,7 @@ importers: version: 5.1.5(@types/node@20.11.25) vite-tsconfig-paths: specifier: ^4.3.1 - version: 4.3.1(typescript@5.3.3)(vite@5.1.5) + version: 4.3.1(typescript@5.4.2)(vite@5.1.5) vitest: specifier: 1.3.1 version: 1.3.1(@types/node@20.11.25) @@ -289,13 +289,13 @@ importers: version: 8.0.1 tsup: specifier: ^8.0.2 - version: 8.0.2(ts-node@10.9.2)(typescript@5.3.3) + version: 8.0.2(ts-node@10.9.2)(typescript@5.4.2) vite: specifier: ^5.1.5 version: 5.1.5(@types/node@20.11.25) vite-tsconfig-paths: specifier: ^4.3.1 - version: 4.3.1(typescript@5.3.3)(vite@5.1.5) + version: 4.3.1(typescript@5.4.2)(vite@5.1.5) vitest: specifier: 1.3.1 version: 1.3.1(@types/node@20.11.25) @@ -344,13 +344,13 @@ importers: version: 4.0.2 tsup: specifier: ^8.0.2 - version: 8.0.2(ts-node@10.9.2)(typescript@5.3.3) + version: 8.0.2(ts-node@10.9.2)(typescript@5.4.2) vite: specifier: ^5.1.5 version: 5.1.5(@types/node@20.11.25) vite-tsconfig-paths: specifier: ^4.3.1 - version: 4.3.1(typescript@5.3.3)(vite@5.1.5) + version: 4.3.1(typescript@5.4.2)(vite@5.1.5) vitest: specifier: 1.3.1 version: 1.3.1(@types/node@20.11.25) @@ -363,7 +363,7 @@ importers: devDependencies: tsup: specifier: ^8.0.2 - version: 8.0.2(ts-node@10.9.2)(typescript@5.3.3) + version: 8.0.2(ts-node@10.9.2)(typescript@5.4.2) libs/utils: dependencies: @@ -391,7 +391,7 @@ importers: version: 4.0.6 tsup: specifier: ^8.0.2 - version: 8.0.2(ts-node@10.9.2)(typescript@5.3.3) + version: 8.0.2(ts-node@10.9.2)(typescript@5.4.2) packages/connector: dependencies: @@ -415,17 +415,17 @@ importers: version: 0.1.6 mipd: specifier: ^0.0.5 - version: 0.0.5(typescript@5.3.3) + version: 0.0.5(typescript@5.4.2) viem: specifier: ^2.7.20 - version: 2.7.22(typescript@5.3.3) + version: 2.7.22(typescript@5.4.2) devDependencies: esbuild-loader: specifier: ^4.0.3 version: 4.1.0(webpack@5.90.3) tsup: specifier: ^8.0.2 - version: 8.0.2(ts-node@10.9.2)(typescript@5.3.3) + version: 8.0.2(ts-node@10.9.2)(typescript@5.4.2) webpack-cli: specifier: ^5.1.4 version: 5.1.4(webpack@5.90.3) @@ -460,8 +460,8 @@ importers: specifier: ^2.39.7 version: 2.39.7 '@tanstack/react-query': - specifier: ^5.25.0 - version: 5.25.0(react@18.2.0) + specifier: ^5.28.4 + version: 5.28.4(react@18.2.0) '@tanstack/react-table': specifier: ^8.13.2 version: 8.13.2(react-dom@18.2.0)(react@18.2.0) @@ -483,6 +483,9 @@ importers: '@veramo/credential-w3c': specifier: 5.6.1-next.57 version: 5.6.1-next.57(encoding@0.1.13)(expo-crypto@12.8.1)(expo@50.0.11)(msrcrypto@1.5.8)(react-native-securerandom@1.0.1)(react-native@0.73.5) + '@veramo/did-manager': + specifier: 5.6.1-next.57 + version: 5.6.1-next.57 '@veramo/did-provider-ethr': specifier: 5.6.1-next.57 version: 5.6.1-next.57 @@ -492,6 +495,12 @@ importers: '@veramo/did-resolver': specifier: 5.6.1-next.57 version: 5.6.1-next.57(encoding@0.1.13) + '@veramo/key-manager': + specifier: 5.6.1-next.57 + version: 5.6.1-next.57(encoding@0.1.13) + '@veramo/kms-local': + specifier: 5.6.1-next.57 + version: 5.6.1-next.57(encoding@0.1.13) '@veramo/utils': specifier: 5.6.1-next.57 version: 5.6.1-next.57(encoding@0.1.13) @@ -602,10 +611,10 @@ importers: version: 3.1.0(tailwindcss@3.4.1) viem: specifier: ^2.7.20 - version: 2.7.22(typescript@5.3.3) + version: 2.7.22(typescript@5.4.2) wagmi: specifier: ^2.5.7 - version: 2.5.7(@tanstack/react-query@5.25.0)(@types/react@18.2.64)(encoding@0.1.13)(react-dom@18.2.0)(react-native@0.73.5)(react@18.2.0)(typescript@5.3.3)(viem@2.7.22) + version: 2.5.7(@tanstack/react-query@5.28.4)(@types/react@18.2.64)(encoding@0.1.13)(react-dom@18.2.0)(react-native@0.73.5)(react@18.2.0)(typescript@5.4.2)(viem@2.7.22) zustand: specifier: ^4.5.2 version: 4.5.2(@types/react@18.2.64)(react@18.2.0) @@ -613,6 +622,9 @@ importers: '@svgr/webpack': specifier: ^8.1.0 version: 8.1.0 + '@tanstack/react-query-devtools': + specifier: ^5.28.4 + version: 5.28.4(@tanstack/react-query@5.28.4)(react@18.2.0) '@types/file-saver': specifier: ^2.0.7 version: 2.0.7 @@ -670,13 +682,13 @@ importers: version: 4.0.2 tsup: specifier: ^8.0.2 - version: 8.0.2(ts-node@10.9.2)(typescript@5.3.3) + version: 8.0.2(ts-node@10.9.2)(typescript@5.4.2) vite: specifier: ^5.1.5 version: 5.1.5(@types/node@20.11.25) vite-tsconfig-paths: specifier: ^4.3.1 - version: 4.3.1(typescript@5.3.3)(vite@5.1.5) + version: 4.3.1(typescript@5.4.2)(vite@5.1.5) vitest: specifier: 1.3.1 version: 1.3.1(@types/node@20.11.25) @@ -812,10 +824,10 @@ importers: version: 5.6.1-next.57(encoding@0.1.13) '@veramo/key-manager': specifier: 5.6.1-next.57 - version: 5.6.1-next.57 + version: 5.6.1-next.57(encoding@0.1.13) '@veramo/kms-local': specifier: 5.6.1-next.57 - version: 5.6.1-next.57 + version: 5.6.1-next.57(encoding@0.1.13) '@veramo/utils': specifier: 5.6.1-next.57 version: 5.6.1-next.57(encoding@0.1.13) @@ -860,7 +872,7 @@ importers: version: 6.11.2 viem: specifier: ^2.7.20 - version: 2.7.22(typescript@5.3.3) + version: 2.7.22(typescript@5.4.2) devDependencies: '@ceramicnetwork/streamid': specifier: 2.17.0 @@ -903,7 +915,7 @@ importers: version: 5.1.5(@types/node@20.11.25) vite-tsconfig-paths: specifier: ^4.3.1 - version: 4.3.1(typescript@5.3.3)(vite@5.1.5) + version: 4.3.1(typescript@5.4.2)(vite@5.1.5) vitest: specifier: 1.3.1 version: 1.3.1(@types/node@20.11.25) @@ -5450,14 +5462,14 @@ packages: requiresBuild: true optional: true - /@commitlint/cli@19.0.3(@types/node@20.11.25)(typescript@5.3.3): + /@commitlint/cli@19.0.3(@types/node@20.11.25)(typescript@5.4.2): resolution: {integrity: sha512-mGhh/aYPib4Vy4h+AGRloMY+CqkmtdeKPV9poMcZeImF5e3knQ5VYaSeAM0mEzps1dbKsHvABwaDpafLUuM96g==} engines: {node: '>=v18'} hasBin: true dependencies: '@commitlint/format': 19.0.3 '@commitlint/lint': 19.0.3 - '@commitlint/load': 19.0.3(@types/node@20.11.25)(typescript@5.3.3) + '@commitlint/load': 19.0.3(@types/node@20.11.25)(typescript@5.4.2) '@commitlint/read': 19.0.3 '@commitlint/types': 19.0.3 execa: 8.0.1 @@ -5526,7 +5538,7 @@ packages: '@commitlint/types': 19.0.3 dev: true - /@commitlint/load@19.0.3(@types/node@20.11.25)(typescript@5.3.3): + /@commitlint/load@19.0.3(@types/node@20.11.25)(typescript@5.4.2): resolution: {integrity: sha512-18Tk/ZcDFRKIoKfEcl7kC+bYkEQ055iyKmGsYDoYWpKf6FUvBrP9bIWapuy/MB+kYiltmP9ITiUx6UXtqC9IRw==} engines: {node: '>=v18'} dependencies: @@ -5535,8 +5547,8 @@ packages: '@commitlint/resolve-extends': 19.0.3 '@commitlint/types': 19.0.3 chalk: 5.3.0 - cosmiconfig: 8.3.6(typescript@5.3.3) - cosmiconfig-typescript-loader: 5.0.0(@types/node@20.11.25)(cosmiconfig@8.3.6)(typescript@5.3.3) + cosmiconfig: 8.3.6(typescript@5.4.2) + cosmiconfig-typescript-loader: 5.0.0(@types/node@20.11.25)(cosmiconfig@8.3.6)(typescript@5.4.2) lodash.isplainobject: 4.0.6 lodash.merge: 4.6.2 lodash.uniq: 4.5.0 @@ -10965,10 +10977,10 @@ packages: - nx dev: true - /@nrwl/jest@18.0.7(@types/node@20.11.25)(nx@18.0.7)(ts-node@10.9.2)(typescript@5.3.3): + /@nrwl/jest@18.0.7(@types/node@20.11.25)(nx@18.0.7)(ts-node@10.9.2)(typescript@5.4.2): resolution: {integrity: sha512-u+1wdfvRZ+MF5bn2mbj8TUGaxAyrRJZN1xaFEsupfYP5rCHTcAhmvVSWqviB9RxhusxoLm9W2Ne+t/wD1cUsyA==} dependencies: - '@nx/jest': 18.0.7(@types/node@20.11.25)(nx@18.0.7)(ts-node@10.9.2)(typescript@5.3.3) + '@nx/jest': 18.0.7(@types/node@20.11.25)(nx@18.0.7)(ts-node@10.9.2)(typescript@5.4.2) transitivePeerDependencies: - '@babel/traverse' - '@swc-node/register' @@ -10985,10 +10997,10 @@ packages: - verdaccio dev: true - /@nrwl/js@18.0.7(@types/node@20.11.25)(nx@18.0.7)(typescript@5.3.3): + /@nrwl/js@18.0.7(@types/node@20.11.25)(nx@18.0.7)(typescript@5.4.2): resolution: {integrity: sha512-YxoyvjeQeQ7zejdZfJyne/xQkov9ifb4czC0JKgWRpfCWyr9YbsOiqEQ+QJDwU2APCpVy3pRjOghHFAAl9QmlQ==} dependencies: - '@nx/js': 18.0.7(@types/node@20.11.25)(nx@18.0.7)(typescript@5.3.3) + '@nx/js': 18.0.7(@types/node@20.11.25)(nx@18.0.7)(typescript@5.4.2) transitivePeerDependencies: - '@babel/traverse' - '@swc-node/register' @@ -11048,15 +11060,15 @@ packages: yargs-parser: 21.1.1 dev: true - /@nx/jest@18.0.7(@types/node@20.11.25)(nx@18.0.7)(ts-node@10.9.2)(typescript@5.3.3): + /@nx/jest@18.0.7(@types/node@20.11.25)(nx@18.0.7)(ts-node@10.9.2)(typescript@5.4.2): resolution: {integrity: sha512-47O97zlQrRlCwLKVJgQsWSYcBoZCRnv1LdyBDyVemZ33UrvVhIEEbyyADXQ1vNXwuPfGpD7FxADUHMtTSikEuA==} dependencies: '@jest/reporters': 29.7.0 '@jest/test-result': 29.7.0 - '@nrwl/jest': 18.0.7(@types/node@20.11.25)(nx@18.0.7)(ts-node@10.9.2)(typescript@5.3.3) + '@nrwl/jest': 18.0.7(@types/node@20.11.25)(nx@18.0.7)(ts-node@10.9.2)(typescript@5.4.2) '@nx/devkit': 18.0.7(nx@18.0.7) - '@nx/js': 18.0.7(@types/node@20.11.25)(nx@18.0.7)(typescript@5.3.3) - '@phenomnomnominal/tsquery': 5.0.1(typescript@5.3.3) + '@nx/js': 18.0.7(@types/node@20.11.25)(nx@18.0.7)(typescript@5.4.2) + '@phenomnomnominal/tsquery': 5.0.1(typescript@5.4.2) chalk: 4.1.2 identity-obj-proxy: 3.0.0 jest-config: 29.7.0(@types/node@20.11.25)(ts-node@10.9.2) @@ -11081,7 +11093,7 @@ packages: - verdaccio dev: true - /@nx/js@18.0.7(@types/node@20.11.25)(nx@18.0.7)(typescript@5.3.3): + /@nx/js@18.0.7(@types/node@20.11.25)(nx@18.0.7)(typescript@5.4.2): resolution: {integrity: sha512-ZYtO4KA/2Jf4wGQo8fqmD8wrw2wGlgpDAb1c9e+R9U2gwElz4MxT/Zc5km5/w7gLMoEuxECmnY3Or/sJMe/BSA==} peerDependencies: verdaccio: ^5.0.4 @@ -11096,10 +11108,10 @@ packages: '@babel/preset-env': 7.23.2(@babel/core@7.23.2) '@babel/preset-typescript': 7.23.2(@babel/core@7.23.2) '@babel/runtime': 7.23.2 - '@nrwl/js': 18.0.7(@types/node@20.11.25)(nx@18.0.7)(typescript@5.3.3) + '@nrwl/js': 18.0.7(@types/node@20.11.25)(nx@18.0.7)(typescript@5.4.2) '@nx/devkit': 18.0.7(nx@18.0.7) '@nx/workspace': 18.0.7 - '@phenomnomnominal/tsquery': 5.0.1(typescript@5.3.3) + '@phenomnomnominal/tsquery': 5.0.1(typescript@5.4.2) babel-plugin-const-enum: 1.2.0(@babel/core@7.23.2) babel-plugin-macros: 2.8.0 babel-plugin-transform-typescript-metadata: 0.3.2(@babel/core@7.23.2) @@ -11116,7 +11128,7 @@ packages: ora: 5.3.0 semver: 7.5.4 source-map-support: 0.5.19 - ts-node: 10.9.1(@types/node@20.11.25)(typescript@5.3.3) + ts-node: 10.9.1(@types/node@20.11.25)(typescript@5.4.2) tsconfig-paths: 4.2.0 tslib: 2.6.2 transitivePeerDependencies: @@ -11402,13 +11414,13 @@ packages: tslib: 2.6.2 webcrypto-core: 1.7.7 - /@phenomnomnominal/tsquery@5.0.1(typescript@5.3.3): + /@phenomnomnominal/tsquery@5.0.1(typescript@5.4.2): resolution: {integrity: sha512-3nVv+e2FQwsW8Aw6qTU6f+1rfcJ3hrcnvH/mu9i8YhxO+9sqbOfpL8m6PbET5+xKOlz/VSbp0RoYWYCtIsnmuA==} peerDependencies: typescript: ^3 || ^4 || ^5 dependencies: esquery: 1.5.0 - typescript: 5.3.3 + typescript: 5.4.2 dev: true /@pkgjs/parseargs@0.11.0: @@ -13083,10 +13095,10 @@ packages: dev: true optional: true - /@safe-global/safe-apps-provider@0.18.1(typescript@5.3.3): + /@safe-global/safe-apps-provider@0.18.1(typescript@5.4.2): resolution: {integrity: sha512-V4a05A3EgJcriqtDoJklDz1BOinWhC6P0hjUSxshA4KOZM7rGPCTto/usXs09zr1vvL28evl/NldSTv97j2bmg==} dependencies: - '@safe-global/safe-apps-sdk': 8.1.0(typescript@5.3.3) + '@safe-global/safe-apps-sdk': 8.1.0(typescript@5.4.2) events: 3.3.0 transitivePeerDependencies: - bufferutil @@ -13095,11 +13107,11 @@ packages: - zod dev: false - /@safe-global/safe-apps-sdk@8.1.0(typescript@5.3.3): + /@safe-global/safe-apps-sdk@8.1.0(typescript@5.4.2): resolution: {integrity: sha512-XJbEPuaVc7b9n23MqlF6c+ToYIS3f7P2Sel8f3cSBQ9WORE4xrSuvhMpK9fDSFqJ7by/brc+rmJR/5HViRr0/w==} dependencies: '@safe-global/safe-gateway-typescript-sdk': 3.14.0 - viem: 1.21.4(typescript@5.3.3) + viem: 1.21.4(typescript@5.4.2) transitivePeerDependencies: - bufferutil - typescript @@ -13994,18 +14006,31 @@ packages: dependencies: defer-to-connect: 2.0.1 - /@tanstack/query-core@5.25.0: - resolution: {integrity: sha512-vlobHP64HTuSE68lWF1mEhwSRC5Q7gaT+a/m9S+ItuN+ruSOxe1rFnR9j0ACWQ314BPhBEVKfBQ6mHL0OWfdbQ==} - dev: false + /@tanstack/query-core@5.28.4: + resolution: {integrity: sha512-uQZqOFqLWUvXNIQZ63XdKzg22NtHzgCBUfDmjDHi3BoF+nUYeBNvMi/xFPtFrMhqRzG2Ir4mYaGsWZzmiEjXpA==} - /@tanstack/react-query@5.25.0(react@18.2.0): - resolution: {integrity: sha512-u+n5R7mLO7RmeiIonpaCRVXNRWtZEef/aVZ/XGWRPa7trBIvGtzlfo0Ah7ZtnTYfrKEVwnZ/tzRCBcoiqJ/tFw==} + /@tanstack/query-devtools@5.28.3: + resolution: {integrity: sha512-Kxch05PVnxLUAyRiz2gXYQhXATHfXbQQwvz858YPjYYQyi7yk8SyS9Z5hyw90bRb0pd3rjelXyGFCsNMWvEghw==} + dev: true + + /@tanstack/react-query-devtools@5.28.4(@tanstack/react-query@5.28.4)(react@18.2.0): + resolution: {integrity: sha512-oS+3INjCIX4Nkh0IAV6LH2mgLqJjkcd/DDxp8dwdWCGloLrz6IBj+bOuuI2wD0zb8r7l45wIAYIhl4Z6XyTupQ==} peerDependencies: + '@tanstack/react-query': ^5.28.4 react: ^18.0.0 dependencies: - '@tanstack/query-core': 5.25.0 + '@tanstack/query-devtools': 5.28.3 + '@tanstack/react-query': 5.28.4(react@18.2.0) + react: 18.2.0 + dev: true + + /@tanstack/react-query@5.28.4(react@18.2.0): + resolution: {integrity: sha512-BErcoB/QQG6YwLSUKnaGxF+lSc270RH2w3kMBpG0i4YzDCsFs2pdxPX1WVknQvFk9bNgukMb158hc2Zb4SdwSA==} + peerDependencies: + react: ^18.0.0 + dependencies: + '@tanstack/query-core': 5.28.4 react: 18.2.0 - dev: false /@tanstack/react-table@8.13.2(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-b6mR3mYkjRtJ443QZh9sc7CvGTce81J35F/XMr0OoWbx0KIM7TTTdyNP2XKObvkLpYnLpCrYDwI3CZnLezWvpg==} @@ -15009,7 +15034,7 @@ packages: '@veramo/core-types': 5.6.1-next.57 '@veramo/did-discovery': 5.6.1-unstable.36 '@veramo/did-manager': 5.6.1-next.57 - '@veramo/key-manager': 5.6.1-next.57 + '@veramo/key-manager': 5.6.1-next.57(encoding@0.1.13) '@veramo/utils': 5.6.1-next.57(encoding@0.1.13) debug: 4.3.4 did-jwt-vc: 4.0.0 @@ -15208,14 +15233,14 @@ packages: - utf-8-validate dev: true - /@veramo/key-manager@5.6.1-next.57: + /@veramo/key-manager@5.6.1-next.57(encoding@0.1.13): resolution: {integrity: sha512-JiM/Yupudao1y+foi3GTRJeEwpbyQvceeTdniAKGMgL/KYq2ozdgQX/2p0sBbhlDBN1mNSNM0tG3PtifUyGThA==} dependencies: - '@noble/curves': 1.2.0 + '@noble/curves': 1.3.0 '@veramo/core-types': 5.6.1-next.57 '@veramo/utils': 5.6.1-next.57(encoding@0.1.13) debug: 4.3.4 - did-jwt: 8.0.0 + did-jwt: 8.0.1 ethers: 6.11.1 uint8arrays: 4.0.6 uuid: 9.0.1 @@ -15244,17 +15269,17 @@ packages: - utf-8-validate dev: true - /@veramo/kms-local@5.6.1-next.57: + /@veramo/kms-local@5.6.1-next.57(encoding@0.1.13): resolution: {integrity: sha512-Pl6aTKhr1Lf8/jmJsQyeU1OBBCfGwa2AJ2q7Ad6UWOSH38dwi/AaUbWBdudQ7rUSE533S0a873VhtyyM7HT7Tw==} dependencies: - '@noble/curves': 1.2.0 + '@noble/curves': 1.3.0 '@stablelib/nacl': 1.0.4 '@stablelib/random': 1.0.2 '@veramo/core-types': 5.6.1-next.57 - '@veramo/key-manager': 5.6.1-next.57 + '@veramo/key-manager': 5.6.1-next.57(encoding@0.1.13) '@veramo/utils': 5.6.1-next.57(encoding@0.1.13) debug: 4.3.4 - did-jwt: 8.0.0 + did-jwt: 8.0.1 ethers: 6.11.1 transitivePeerDependencies: - bufferutil @@ -15410,7 +15435,7 @@ packages: pretty-format: 29.7.0 dev: true - /@wagmi/connectors@4.1.14(@types/react@18.2.64)(@wagmi/core@2.6.5)(encoding@0.1.13)(react-dom@18.2.0)(react-native@0.73.5)(react@18.2.0)(typescript@5.3.3)(viem@2.7.22): + /@wagmi/connectors@4.1.14(@types/react@18.2.64)(@wagmi/core@2.6.5)(encoding@0.1.13)(react-dom@18.2.0)(react-native@0.73.5)(react@18.2.0)(typescript@5.4.2)(viem@2.7.22): resolution: {integrity: sha512-e8I89FsNBtzhIilU3nqmgMR9xvSgCfmkWLz9iCKBTqyitbK5EJU7WTEtjjYFm1v2J//JeAwaA2XEKtG9BLR9jQ==} peerDependencies: '@wagmi/core': 2.6.5 @@ -15422,13 +15447,13 @@ packages: dependencies: '@coinbase/wallet-sdk': 3.9.1 '@metamask/sdk': 0.14.3(@types/react@18.2.64)(encoding@0.1.13)(react-dom@18.2.0)(react-native@0.73.5)(react@18.2.0) - '@safe-global/safe-apps-provider': 0.18.1(typescript@5.3.3) - '@safe-global/safe-apps-sdk': 8.1.0(typescript@5.3.3) - '@wagmi/core': 2.6.5(@types/react@18.2.64)(react@18.2.0)(typescript@5.3.3)(viem@2.7.22) + '@safe-global/safe-apps-provider': 0.18.1(typescript@5.4.2) + '@safe-global/safe-apps-sdk': 8.1.0(typescript@5.4.2) + '@wagmi/core': 2.6.5(@types/react@18.2.64)(react@18.2.0)(typescript@5.4.2)(viem@2.7.22) '@walletconnect/ethereum-provider': 2.11.1(@types/react@18.2.64)(encoding@0.1.13)(react@18.2.0) '@walletconnect/modal': 2.6.2(@types/react@18.2.64)(react@18.2.0) - typescript: 5.3.3 - viem: 2.7.22(typescript@5.3.3) + typescript: 5.4.2 + viem: 2.7.22(typescript@5.4.2) transitivePeerDependencies: - '@azure/app-configuration' - '@azure/cosmos' @@ -15454,7 +15479,7 @@ packages: - zod dev: false - /@wagmi/core@2.6.5(@types/react@18.2.64)(react@18.2.0)(typescript@5.3.3)(viem@2.7.22): + /@wagmi/core@2.6.5(@types/react@18.2.64)(react@18.2.0)(typescript@5.4.2)(viem@2.7.22): resolution: {integrity: sha512-DLyrc0o+dx05oIhBJuxnS7ekS5e6rB5mytlqPme+Km7aLdeBdcfYB4yJyYCyWoi93OLa7M5sbflTttz3o56bKw==} peerDependencies: '@tanstack/query-core': '>=5.0.0' @@ -15467,9 +15492,9 @@ packages: optional: true dependencies: eventemitter3: 5.0.1 - mipd: 0.0.5(typescript@5.3.3) - typescript: 5.3.3 - viem: 2.7.22(typescript@5.3.3) + mipd: 0.0.5(typescript@5.4.2) + typescript: 5.4.2 + viem: 2.7.22(typescript@5.4.2) zustand: 4.4.1(@types/react@18.2.64)(react@18.2.0) transitivePeerDependencies: - '@types/react' @@ -16022,7 +16047,7 @@ packages: through: 2.3.8 dev: true - /abitype@0.9.8(typescript@5.3.3): + /abitype@0.9.8(typescript@5.4.2): resolution: {integrity: sha512-puLifILdm+8sjyss4S+fsUN09obiT1g2YW6CtcQF+QDzxR0euzgEB29MZujC6zMk2a6SVmtttq1fc6+YFA7WYQ==} peerDependencies: typescript: '>=5.0.4' @@ -16033,10 +16058,10 @@ packages: zod: optional: true dependencies: - typescript: 5.3.3 + typescript: 5.4.2 dev: false - /abitype@1.0.0(typescript@5.3.3): + /abitype@1.0.0(typescript@5.4.2): resolution: {integrity: sha512-NMeMah//6bJ56H5XRj8QCV4AwuW6hB6zqz2LnhhLdcWVQOsXki6/Pn3APeqxCma62nXIcmZWdu1DlHWS74umVQ==} peerDependencies: typescript: '>=5.0.4' @@ -16047,7 +16072,7 @@ packages: zod: optional: true dependencies: - typescript: 5.3.3 + typescript: 5.4.2 dev: false /abort-controller@3.0.0: @@ -18341,7 +18366,7 @@ packages: /core-util-is@1.0.3: resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} - /cosmiconfig-typescript-loader@5.0.0(@types/node@20.11.25)(cosmiconfig@8.3.6)(typescript@5.3.3): + /cosmiconfig-typescript-loader@5.0.0(@types/node@20.11.25)(cosmiconfig@8.3.6)(typescript@5.4.2): resolution: {integrity: sha512-+8cK7jRAReYkMwMiG+bxhcNKiHJDM6bR9FD/nGBXOWdMLuYawjF5cGrtLilJ+LGd3ZjCXnJjR5DkfWPoIVlqJA==} engines: {node: '>=v16'} peerDependencies: @@ -18350,9 +18375,9 @@ packages: typescript: '>=4' dependencies: '@types/node': 20.11.25 - cosmiconfig: 8.3.6(typescript@5.3.3) + cosmiconfig: 8.3.6(typescript@5.4.2) jiti: 1.21.0 - typescript: 5.3.3 + typescript: 5.4.2 dev: true /cosmiconfig@5.2.1: @@ -18394,22 +18419,6 @@ packages: path-type: 4.0.0 dev: true - /cosmiconfig@8.3.6(typescript@5.3.3): - resolution: {integrity: sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==} - engines: {node: '>=14'} - peerDependencies: - typescript: '>=4.9.5' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - import-fresh: 3.3.0 - js-yaml: 4.1.0 - parse-json: 5.2.0 - path-type: 4.0.0 - typescript: 5.3.3 - dev: true - /cosmiconfig@8.3.6(typescript@5.4.2): resolution: {integrity: sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==} engines: {node: '>=14'} @@ -22917,7 +22926,7 @@ packages: pretty-format: 29.7.0 slash: 3.0.0 strip-json-comments: 3.1.1 - ts-node: 10.9.2(@types/node@20.11.25)(typescript@5.3.3) + ts-node: 10.9.2(@types/node@20.11.25)(typescript@5.4.2) transitivePeerDependencies: - babel-plugin-macros - supports-color @@ -25418,7 +25427,7 @@ packages: minipass: 3.3.6 yallist: 4.0.0 - /mipd@0.0.5(typescript@5.3.3): + /mipd@0.0.5(typescript@5.4.2): resolution: {integrity: sha512-gbKA784D2WKb5H/GtqEv+Ofd1S9Zj+Z/PGDIl1u1QAbswkxD28BQ5bSXQxkeBzPBABg1iDSbiwGG1XqlOxRspA==} peerDependencies: typescript: '>=5.0.4' @@ -25426,8 +25435,8 @@ packages: typescript: optional: true dependencies: - typescript: 5.3.3 - viem: 1.21.4(typescript@5.3.3) + typescript: 5.4.2 + viem: 1.21.4(typescript@5.4.2) transitivePeerDependencies: - bufferutil - utf-8-validate @@ -26837,7 +26846,7 @@ packages: dependencies: lilconfig: 2.1.0 postcss: 8.4.35 - ts-node: 10.9.2(@types/node@20.11.25)(typescript@5.3.3) + ts-node: 10.9.2(@types/node@20.11.25)(typescript@5.4.2) yaml: 2.3.3 /postcss-load-config@4.0.2(ts-node@10.9.2): @@ -26853,7 +26862,7 @@ packages: optional: true dependencies: lilconfig: 3.1.1 - ts-node: 10.9.2(@types/node@20.11.25)(typescript@5.3.3) + ts-node: 10.9.2(@types/node@20.11.25)(typescript@5.4.2) yaml: 2.4.1 dev: true @@ -30300,7 +30309,7 @@ packages: /ts-interface-checker@0.1.13: resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} - /ts-node@10.9.1(@types/node@20.11.25)(typescript@5.3.3): + /ts-node@10.9.1(@types/node@20.11.25)(typescript@5.4.2): resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} hasBin: true peerDependencies: @@ -30326,12 +30335,12 @@ packages: create-require: 1.1.1 diff: 4.0.2 make-error: 1.3.6 - typescript: 5.3.3 + typescript: 5.4.2 v8-compile-cache-lib: 3.0.1 yn: 3.1.1 dev: true - /ts-node@10.9.2(@types/node@20.11.25)(typescript@5.3.3): + /ts-node@10.9.2(@types/node@20.11.25)(typescript@5.4.2): resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} hasBin: true peerDependencies: @@ -30357,11 +30366,11 @@ packages: create-require: 1.1.1 diff: 4.0.2 make-error: 1.3.6 - typescript: 5.3.3 + typescript: 5.4.2 v8-compile-cache-lib: 3.0.1 yn: 3.1.1 - /tsconfck@3.0.3(typescript@5.3.3): + /tsconfck@3.0.3(typescript@5.4.2): resolution: {integrity: sha512-4t0noZX9t6GcPTfBAbIbbIU4pfpCwh0ueq3S4O/5qXI1VwK1outmxhe9dOiEWqMz3MW2LKgDTpqWV+37IWuVbA==} engines: {node: ^18 || >=20} hasBin: true @@ -30371,7 +30380,7 @@ packages: typescript: optional: true dependencies: - typescript: 5.3.3 + typescript: 5.4.2 dev: true /tsconfig-paths@4.2.0: @@ -30393,45 +30402,6 @@ packages: /tslib@2.6.2: resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} - /tsup@8.0.2(ts-node@10.9.2)(typescript@5.3.3): - resolution: {integrity: sha512-NY8xtQXdH7hDUAZwcQdY/Vzlw9johQsaqf7iwZ6g1DOUlFYQ5/AtVAjTvihhEyeRlGo4dLRVHtrRaL35M1daqQ==} - engines: {node: '>=18'} - hasBin: true - peerDependencies: - '@microsoft/api-extractor': ^7.36.0 - '@swc/core': ^1 - postcss: ^8.4.12 - typescript: '>=4.5.0' - peerDependenciesMeta: - '@microsoft/api-extractor': - optional: true - '@swc/core': - optional: true - postcss: - optional: true - typescript: - optional: true - dependencies: - bundle-require: 4.0.2(esbuild@0.19.12) - cac: 6.7.14 - chokidar: 3.6.0 - debug: 4.3.4 - esbuild: 0.19.12 - execa: 5.1.1 - globby: 11.1.0 - joycon: 3.1.1 - postcss-load-config: 4.0.2(ts-node@10.9.2) - resolve-from: 5.0.0 - rollup: 4.12.1 - source-map: 0.8.0-beta.0 - sucrase: 3.35.0 - tree-kill: 1.2.2 - typescript: 5.3.3 - transitivePeerDependencies: - - supports-color - - ts-node - dev: true - /tsup@8.0.2(ts-node@10.9.2)(typescript@5.4.2): resolution: {integrity: sha512-NY8xtQXdH7hDUAZwcQdY/Vzlw9johQsaqf7iwZ6g1DOUlFYQ5/AtVAjTvihhEyeRlGo4dLRVHtrRaL35M1daqQ==} engines: {node: '>=18'} @@ -30687,7 +30657,7 @@ packages: mkdirp: 2.1.6 reflect-metadata: 0.2.1 sha.js: 2.4.11 - ts-node: 10.9.2(@types/node@20.11.25)(typescript@5.3.3) + ts-node: 10.9.2(@types/node@20.11.25)(typescript@5.4.2) tslib: 2.6.2 uuid: 9.0.1 yargs: 17.7.2 @@ -30695,11 +30665,6 @@ packages: - supports-color dev: true - /typescript@5.3.3: - resolution: {integrity: sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==} - engines: {node: '>=14.17'} - hasBin: true - /typescript@5.4.2: resolution: {integrity: sha512-+2/g0Fds1ERlP6JsakQQDXjZdZMM+rqpamFZJEKh4kwTIn3iDkgKtby0CeNd5ATNZ4Ry1ax15TMx0W2V+miizQ==} engines: {node: '>=14.17'} @@ -31341,7 +31306,7 @@ packages: unist-util-stringify-position: 4.0.0 vfile-message: 4.0.2 - /viem@1.21.4(typescript@5.3.3): + /viem@1.21.4(typescript@5.4.2): resolution: {integrity: sha512-BNVYdSaUjeS2zKQgPs+49e5JKocfo60Ib2yiXOWBT6LuVxY1I/6fFX3waEtpXvL1Xn4qu+BVitVtMh9lyThyhQ==} peerDependencies: typescript: '>=5.0.4' @@ -31354,9 +31319,9 @@ packages: '@noble/hashes': 1.3.2 '@scure/bip32': 1.3.2 '@scure/bip39': 1.2.1 - abitype: 0.9.8(typescript@5.3.3) + abitype: 0.9.8(typescript@5.4.2) isows: 1.0.3(ws@8.13.0) - typescript: 5.3.3 + typescript: 5.4.2 ws: 8.13.0 transitivePeerDependencies: - bufferutil @@ -31364,7 +31329,7 @@ packages: - zod dev: false - /viem@2.7.22(typescript@5.3.3): + /viem@2.7.22(typescript@5.4.2): resolution: {integrity: sha512-R/d9AkWXkhiNF4Gk4/A389LSO5PGDdHUBFDKIUkhrdLTDpOhKzbNln6qDry3kYUcmH7lErx3C2eA6rajnc0s9A==} peerDependencies: typescript: '>=5.0.4' @@ -31377,9 +31342,9 @@ packages: '@noble/hashes': 1.3.2 '@scure/bip32': 1.3.2 '@scure/bip39': 1.2.1 - abitype: 1.0.0(typescript@5.3.3) + abitype: 1.0.0(typescript@5.4.2) isows: 1.0.3(ws@8.13.0) - typescript: 5.3.3 + typescript: 5.4.2 ws: 8.13.0 transitivePeerDependencies: - bufferutil @@ -31408,7 +31373,7 @@ packages: - terser dev: true - /vite-tsconfig-paths@4.3.1(typescript@5.3.3)(vite@5.1.5): + /vite-tsconfig-paths@4.3.1(typescript@5.4.2)(vite@5.1.5): resolution: {integrity: sha512-cfgJwcGOsIxXOLU/nELPny2/LUD/lcf1IbfyeKTv2bsupVbTH/xpFtdQlBmIP1GEK2CjjLxYhFfB+QODFAx5aw==} peerDependencies: vite: '*' @@ -31418,7 +31383,7 @@ packages: dependencies: debug: 4.3.4 globrex: 0.1.2 - tsconfck: 3.0.3(typescript@5.3.3) + tsconfck: 3.0.3(typescript@5.4.2) vite: 5.1.5(@types/node@20.11.25) transitivePeerDependencies: - supports-color @@ -31536,7 +31501,7 @@ packages: xml-name-validator: 5.0.0 dev: false - /wagmi@2.5.7(@tanstack/react-query@5.25.0)(@types/react@18.2.64)(encoding@0.1.13)(react-dom@18.2.0)(react-native@0.73.5)(react@18.2.0)(typescript@5.3.3)(viem@2.7.22): + /wagmi@2.5.7(@tanstack/react-query@5.28.4)(@types/react@18.2.64)(encoding@0.1.13)(react-dom@18.2.0)(react-native@0.73.5)(react@18.2.0)(typescript@5.4.2)(viem@2.7.22): resolution: {integrity: sha512-xSuteMXFKvra4xDddqZbZv/gQlcg3X+To5AoZW7WoAm0iVlF8/vEGpQzCWy6KZs2z1szxPrr0YnH3Zr1Qj4E/A==} peerDependencies: '@tanstack/react-query': '>=5.0.0' @@ -31547,13 +31512,13 @@ packages: typescript: optional: true dependencies: - '@tanstack/react-query': 5.25.0(react@18.2.0) - '@wagmi/connectors': 4.1.14(@types/react@18.2.64)(@wagmi/core@2.6.5)(encoding@0.1.13)(react-dom@18.2.0)(react-native@0.73.5)(react@18.2.0)(typescript@5.3.3)(viem@2.7.22) - '@wagmi/core': 2.6.5(@types/react@18.2.64)(react@18.2.0)(typescript@5.3.3)(viem@2.7.22) + '@tanstack/react-query': 5.28.4(react@18.2.0) + '@wagmi/connectors': 4.1.14(@types/react@18.2.64)(@wagmi/core@2.6.5)(encoding@0.1.13)(react-dom@18.2.0)(react-native@0.73.5)(react@18.2.0)(typescript@5.4.2)(viem@2.7.22) + '@wagmi/core': 2.6.5(@types/react@18.2.64)(react@18.2.0)(typescript@5.4.2)(viem@2.7.22) react: 18.2.0 - typescript: 5.3.3 + typescript: 5.4.2 use-sync-external-store: 1.2.0(react@18.2.0) - viem: 2.7.22(typescript@5.3.3) + viem: 2.7.22(typescript@5.4.2) transitivePeerDependencies: - '@azure/app-configuration' - '@azure/cosmos' From 6bb9bb71fb0ce76d1f9f11a914ab99b7dd47b6d8 Mon Sep 17 00:00:00 2001 From: bclabum <130082956+bclabum@users.noreply.github.com> Date: Wed, 20 Mar 2024 12:37:31 +0100 Subject: [PATCH 17/19] chore: version packages (beta) (#594) --- .changeset/pre.json | 3 +++ libs/extended-verification/CHANGELOG.md | 6 ++++++ libs/extended-verification/package.json | 2 +- packages/dapp/CHANGELOG.md | 6 ++++++ packages/dapp/package.json | 28 ++++++++++++++++++------- packages/snap/CHANGELOG.md | 6 ++++++ packages/snap/package.json | 2 +- packages/snap/snap.manifest.json | 4 ++-- 8 files changed, 46 insertions(+), 11 deletions(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index e6260e56a..c95f92f9f 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -16,7 +16,10 @@ "@blockchain-lab-um/masca-types": "1.3.0" }, "changesets": [ + "giant-bags-draw", "gorgeous-cougars-marry", + "late-needles-press", + "shiny-meals-talk", "strong-pens-thank", "warm-jeans-sit", "witty-apes-repair" diff --git a/libs/extended-verification/CHANGELOG.md b/libs/extended-verification/CHANGELOG.md index 140318fe1..1be2280b1 100644 --- a/libs/extended-verification/CHANGELOG.md +++ b/libs/extended-verification/CHANGELOG.md @@ -1,5 +1,11 @@ # @blockchain-lab-um/extended-verification +## 0.1.1-beta.2 + +### Patch Changes + +- [#553](https://github.com/blockchain-lab-um/masca/pull/553) [`1d11e8d`](https://github.com/blockchain-lab-um/masca/commit/1d11e8d73e9731410e6356b9aef24ad008446ab5) Thanks [@pseudobun](https://github.com/pseudobun)! - Adds public JSON RPC providers. + ## 0.1.1-beta.1 ### Patch Changes diff --git a/libs/extended-verification/package.json b/libs/extended-verification/package.json index f17aaf6b0..50c537ea9 100644 --- a/libs/extended-verification/package.json +++ b/libs/extended-verification/package.json @@ -1,6 +1,6 @@ { "name": "@blockchain-lab-um/extended-verification", - "version": "0.1.1-beta.1", + "version": "0.1.1-beta.2", "private": false, "description": "", "keywords": [], diff --git a/packages/dapp/CHANGELOG.md b/packages/dapp/CHANGELOG.md index 32a8a1da8..a6e2f8a4a 100644 --- a/packages/dapp/CHANGELOG.md +++ b/packages/dapp/CHANGELOG.md @@ -1,5 +1,11 @@ # @blockchain-lab-um/dapp +## 1.3.0-beta.2 + +### Minor Changes + +- [#553](https://github.com/blockchain-lab-um/masca/pull/553) [`1d11e8d`](https://github.com/blockchain-lab-um/masca/commit/1d11e8d73e9731410e6356b9aef24ad008446ab5) Thanks [@pseudobun](https://github.com/pseudobun)! - Adds campaigns feature. + ## 1.2.1-beta.1 ### Patch Changes diff --git a/packages/dapp/package.json b/packages/dapp/package.json index 767626c8d..3969d02aa 100644 --- a/packages/dapp/package.json +++ b/packages/dapp/package.json @@ -1,6 +1,6 @@ { "name": "@blockchain-lab-um/dapp", - "version": "1.2.1-beta.1", + "version": "1.3.0-beta.2", "private": true, "license": "(Apache-2.0 AND MIT)", "type": "commonjs", @@ -98,7 +98,9 @@ }, "nx": { "namedInputs": { - "default": ["{projectRoot}/**/*"], + "default": [ + "{projectRoot}/**/*" + ], "production": [ "default", "!{projectRoot}/sonar-project.properties", @@ -110,13 +112,25 @@ }, "targets": { "build": { - "inputs": ["production", "^production"], - "dependsOn": ["^build"], - "outputs": ["{projectRoot}/.next"] + "inputs": [ + "production", + "^production" + ], + "dependsOn": [ + "^build" + ], + "outputs": [ + "{projectRoot}/.next" + ] }, "start": { - "inputs": ["production", "^production"], - "dependsOn": ["build"], + "inputs": [ + "production", + "^production" + ], + "dependsOn": [ + "build" + ], "outputs": [] } } diff --git a/packages/snap/CHANGELOG.md b/packages/snap/CHANGELOG.md index 66900eb8e..7ac3d9577 100644 --- a/packages/snap/CHANGELOG.md +++ b/packages/snap/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## 1.2.1-beta.2 + +### Patch Changes + +- [#553](https://github.com/blockchain-lab-um/masca/pull/553) [`1d11e8d`](https://github.com/blockchain-lab-um/masca/commit/1d11e8d73e9731410e6356b9aef24ad008446ab5) Thanks [@pseudobun](https://github.com/pseudobun)! - Sets default network to mainnet. + ## 1.2.1-beta.1 ### Patch Changes diff --git a/packages/snap/package.json b/packages/snap/package.json index 35bdb420a..872dd8d82 100644 --- a/packages/snap/package.json +++ b/packages/snap/package.json @@ -1,6 +1,6 @@ { "name": "@blockchain-lab-um/masca", - "version": "1.2.1-beta.1", + "version": "1.2.1-beta.2", "description": "Snap for managing VCs and VPs in MetaMask", "keywords": [ "MetaMask", diff --git a/packages/snap/snap.manifest.json b/packages/snap/snap.manifest.json index 4d7fb48ab..9d5a5a376 100644 --- a/packages/snap/snap.manifest.json +++ b/packages/snap/snap.manifest.json @@ -1,5 +1,5 @@ { - "version": "1.2.1-beta.1", + "version": "1.2.1-beta.2", "description": "Snap for managing VCs and VPs in MetaMask", "proposedName": "Masca", "repository": { @@ -26,7 +26,7 @@ "./files/circuits/credentialAtomicQuerySigV2/circuit_final.zkey", "./files/circuits/credentialAtomicQuerySigV2/verification_key.json" ], - "shasum": "/c3Lib//0nRscH6ELFaE+sHmkrFg+sSn0VMZeA0Xw6s=" + "shasum": "wjdsUqRK+Su13uULfo70kSw0aWrZB+Qru/QNDV+LU2c=" }, "initialPermissions": { "endowment:ethereum-provider": {}, From 695790fe523f4a9b233b14ef742401be410e56e1 Mon Sep 17 00:00:00 2001 From: Urban Date: Wed, 20 Mar 2024 14:38:10 +0100 Subject: [PATCH 18/19] fix: handle image link on shared presentations (#595) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Urban Vidovič --- .../[id]/CredentialPanel.tsx | 3 +- .../[id]/credentialPanel.tsx | 262 ------------------ .../dapp/src/components/ImageLink/index.tsx | 6 +- 3 files changed, 5 insertions(+), 266 deletions(-) delete mode 100644 packages/dapp/src/app/[locale]/app/(public)/share-presentation/[id]/credentialPanel.tsx diff --git a/packages/dapp/src/app/[locale]/app/(public)/share-presentation/[id]/CredentialPanel.tsx b/packages/dapp/src/app/[locale]/app/(public)/share-presentation/[id]/CredentialPanel.tsx index 86f94a3c0..51597fbbc 100644 --- a/packages/dapp/src/app/[locale]/app/(public)/share-presentation/[id]/CredentialPanel.tsx +++ b/packages/dapp/src/app/[locale]/app/(public)/share-presentation/[id]/CredentialPanel.tsx @@ -16,6 +16,7 @@ import { DIDDisplay } from '@/components/DIDDisplay'; import JsonModal from '@/components/JsonModal'; import { getFirstWord } from '@/utils/format'; import { convertTypes, copyToClipboard } from '@/utils/string'; +import { ImageLink } from '@/components/ImageLink'; interface FormattedPanelProps { credential: VerifiableCredential; @@ -93,11 +94,11 @@ const CredentialSubject = ({ } if (key === 'address') return ; + if (key === 'image') return ; const isObject = !( typeof value === 'string' || typeof value === 'number' ); - // key is a string camel case, seperate it with spaces, e.g. CamelCase should be Camel Case key = key.replace(/([A-Z])/g, ' $1').trim(); return (
    { - const t = useTranslations('AddressDisplay'); - return ( -
    -

    - {t('title')}: -

    -
    - - - {`${address.slice(0, 8)}...${address.slice(-8)}`} - - - -
    -
    - ); -}; - -const DisplayDate = ({ text, date }: { text: string; date: string }) => ( -
    -

    - {text}: -

    -

    - {new Date(Date.parse(date)).toDateString()} -

    -
    -); - -const CredentialSubject = ({ - data, - viewJsonText, - selectJsonData, -}: { - data: Record; - viewJsonText: string; - selectJsonData: React.Dispatch>; -}) => ( - <> - {Object.entries(data).map(([key, value]: [string, any]) => { - if (value === null || value === '') return null; - return ( - - {(() => { - if (key === 'id') { - return ( - <> -
    -
    - -
    -
    - - ); - } - - if (key === 'address') return ; - - const isObject = !( - typeof value === 'string' || typeof value === 'number' - ); - // key is a string camel case, seperate it with spaces, e.g. CamelCase should be Camel Case - key = key.replace(/([A-Z])/g, ' $1').trim(); - return ( -
    -

    - {key}: -

    -
    - {isObject ? ( - - ) : ( - value - )} -
    -
    - ); - })()} -
    - ); - })} - -); - -const CredentialPanel = ({ credential }: FormattedPanelProps) => { - const t = useTranslations('CredentialPanel'); - - const pathname = usePathname(); - const router = useRouter(); - - // Local state - const types = useMemo(() => convertTypes(credential.type), [credential.type]); - const [jsonModalOpen, setJsonModalOpen] = useState(false); - const [selectedJsonData, setSelectedJsonData] = useState({}); - - const isValid = useMemo(() => { - if (!credential.expirationDate) return true; - return Date.parse(credential.expirationDate) > Date.now(); - }, [credential]); - - const selectJsonData = (data: any) => { - setSelectedJsonData(data); - setJsonModalOpen(true); - }; - - return ( - <> -
    -
    -
    -

    - {t('title')} -

    - -

    - {getFirstWord(types)} -

    -
    -
    -
    - - {isValid ? ( - - ) : ( - - )} - -
    -

    - {t('status')} -

    -

    - {isValid ? 'Valid' : 'Invalid'} -

    -
    -
    -
    -
    -
    -

    - {t('subject')} -

    - -
    -
    -
    -
    -

    - {t('issuer')} -

    -
    -
    - -
    -
    -
    -
    -

    - {t('dates')} -

    - - {credential.expirationDate && ( - - )} -
    -
    -
    -
    -
    { - const params = new URLSearchParams(window.location.search); - params.set('view', 'Json'); - router.replace(`${pathname}?${params.toString()}`); - }} - > - {t('view-json')} -
    -
    - - - ); -}; - -export default CredentialPanel; diff --git a/packages/dapp/src/components/ImageLink/index.tsx b/packages/dapp/src/components/ImageLink/index.tsx index bc7d508d0..8a371c101 100644 --- a/packages/dapp/src/components/ImageLink/index.tsx +++ b/packages/dapp/src/components/ImageLink/index.tsx @@ -10,9 +10,9 @@ export const ImageLink = ({ value }: { value: string }) => {

    -
    ISSUED
    +
    ACHIEVED