From f96b896c27e28a5d669ae45575e6da662ed4dbb9 Mon Sep 17 00:00:00 2001 From: Alex Stelea Date: Mon, 4 Sep 2023 16:48:36 +0200 Subject: [PATCH] chore: migrate rola implementations --- .github/workflows/main.yml | 185 +- .github/workflows/release.yml | 42 +- .husky/pre-push | 2 +- .nvmrc | 1 - README.md | 4 +- examples/index.ts | 3 - examples/public/.well-known/radix.json | 7 - examples/typescript-full-stack/.gitignore | 1 + examples/typescript-full-stack/.nvmrc | 1 + examples/typescript-full-stack/LICENSE | 209 + examples/typescript-full-stack/README.md | 178 + .../apps/client/.gitignore | 24 + .../apps/client}/index.html | 7 +- .../apps/client/package-lock.json | 1010 + .../apps/client/package.json | 18 + .../apps/client/public/radix-icon_128x128.png | Bin 0 -> 17909 bytes .../apps/client/src/main.ts | 63 + .../apps/client/src/style.css | 103 + .../apps/client/src/typescript.svg | 1 + .../apps/client/src/vite-env.d.ts | 1 + .../apps/client/tsconfig.json | 23 + .../apps/server/.gitignore | 3 + .../apps/server/.prettierrc | 6 + .../apps/server/nodemon.json | 7 + .../apps/server/package-lock.json | 2031 ++ .../apps/server/package.json | 28 + .../apps/server/src/index.ts | 82 + .../apps/server/src/rola/crypto/blake2b.ts | 25 + .../apps/server/src/rola/crypto/curve25519.ts | 3 + .../apps/server/src/rola/crypto/secp256k1.ts | 3 + .../server/src/rola/crypto/secure-random.ts | 4 + .../apps/server/src/rola/gateway.ts | 24 + .../rola/helpers/create-public-key-hash.ts | 12 + .../rola/helpers/create-signature-message.ts | 35 + .../helpers/derive-address-from-public-key.ts | 65 + .../server/src/rola/helpers/verify-proof.ts | 40 + .../apps/server/src/rola/rola.ts | 80 + .../apps/server/tsconfig.json | 19 + .../typescript-full-stack/docs/rola-flow.png | Bin 0 -> 157452 bytes .../docs/verification-flow.png | Bin 0 -> 610440 bytes .../typescript-full-stack/package-lock.json | 2635 +++ examples/typescript-full-stack/package.json | 16 + examples/typescript-full-stack/turbo.json | 9 + package-lock.json | 12053 ++--------- package.json | 58 +- release.config.js | 6 +- setup-tests.js | 0 src/rola.ts | 3 - .eslintrc.js => typescript/.eslintrc.js | 0 typescript/README.md | 55 + .../babel.config.cjs | 0 jest.config.ts => typescript/jest.config.ts | 0 typescript/package-lock.json | 17055 ++++++++++++++++ typescript/package.json | 96 + typescript/setup-tests.js | 4 + typescript/src/crypto/blake2b.ts | 26 + typescript/src/crypto/curve25519.ts | 4 + typescript/src/crypto/secp256k1.ts | 4 + typescript/src/crypto/secure-random.ts | 4 + typescript/src/gateway.ts | 41 + .../src/helpers/create-public-key-hash.ts | 12 + .../helpers/create-signature-message.spec.ts | 18 + .../src/helpers/create-signature-message.ts | 35 + .../derive-address-from-public-key.spec.ts | 44 + .../helpers/derive-address-from-public-key.ts | 69 + typescript/src/helpers/test-vectors.ts | 992 + typescript/src/helpers/typed-error.ts | 1 + typescript/src/helpers/verify-proof.ts | 41 + typescript/src/rola.spec.ts | 50 + typescript/src/rola.ts | 97 + tsconfig.json => typescript/tsconfig.json | 0 .../tsconfig.types.json | 0 vite.config.js => typescript/vite.config.js | 0 73 files changed, 27448 insertions(+), 10330 deletions(-) delete mode 100644 .nvmrc delete mode 100644 examples/index.ts delete mode 100644 examples/public/.well-known/radix.json create mode 100644 examples/typescript-full-stack/.gitignore create mode 100644 examples/typescript-full-stack/.nvmrc create mode 100644 examples/typescript-full-stack/LICENSE create mode 100644 examples/typescript-full-stack/README.md create mode 100644 examples/typescript-full-stack/apps/client/.gitignore rename examples/{ => typescript-full-stack/apps/client}/index.html (51%) create mode 100644 examples/typescript-full-stack/apps/client/package-lock.json create mode 100644 examples/typescript-full-stack/apps/client/package.json create mode 100644 examples/typescript-full-stack/apps/client/public/radix-icon_128x128.png create mode 100644 examples/typescript-full-stack/apps/client/src/main.ts create mode 100644 examples/typescript-full-stack/apps/client/src/style.css create mode 100644 examples/typescript-full-stack/apps/client/src/typescript.svg create mode 100644 examples/typescript-full-stack/apps/client/src/vite-env.d.ts create mode 100644 examples/typescript-full-stack/apps/client/tsconfig.json create mode 100644 examples/typescript-full-stack/apps/server/.gitignore create mode 100644 examples/typescript-full-stack/apps/server/.prettierrc create mode 100644 examples/typescript-full-stack/apps/server/nodemon.json create mode 100644 examples/typescript-full-stack/apps/server/package-lock.json create mode 100644 examples/typescript-full-stack/apps/server/package.json create mode 100644 examples/typescript-full-stack/apps/server/src/index.ts create mode 100644 examples/typescript-full-stack/apps/server/src/rola/crypto/blake2b.ts create mode 100644 examples/typescript-full-stack/apps/server/src/rola/crypto/curve25519.ts create mode 100644 examples/typescript-full-stack/apps/server/src/rola/crypto/secp256k1.ts create mode 100644 examples/typescript-full-stack/apps/server/src/rola/crypto/secure-random.ts create mode 100644 examples/typescript-full-stack/apps/server/src/rola/gateway.ts create mode 100644 examples/typescript-full-stack/apps/server/src/rola/helpers/create-public-key-hash.ts create mode 100644 examples/typescript-full-stack/apps/server/src/rola/helpers/create-signature-message.ts create mode 100644 examples/typescript-full-stack/apps/server/src/rola/helpers/derive-address-from-public-key.ts create mode 100644 examples/typescript-full-stack/apps/server/src/rola/helpers/verify-proof.ts create mode 100644 examples/typescript-full-stack/apps/server/src/rola/rola.ts create mode 100644 examples/typescript-full-stack/apps/server/tsconfig.json create mode 100644 examples/typescript-full-stack/docs/rola-flow.png create mode 100644 examples/typescript-full-stack/docs/verification-flow.png create mode 100644 examples/typescript-full-stack/package-lock.json create mode 100644 examples/typescript-full-stack/package.json create mode 100644 examples/typescript-full-stack/turbo.json delete mode 100644 setup-tests.js delete mode 100644 src/rola.ts rename .eslintrc.js => typescript/.eslintrc.js (100%) create mode 100644 typescript/README.md rename babel.config.js => typescript/babel.config.cjs (100%) rename jest.config.ts => typescript/jest.config.ts (100%) create mode 100644 typescript/package-lock.json create mode 100644 typescript/package.json create mode 100644 typescript/setup-tests.js create mode 100644 typescript/src/crypto/blake2b.ts create mode 100644 typescript/src/crypto/curve25519.ts create mode 100644 typescript/src/crypto/secp256k1.ts create mode 100644 typescript/src/crypto/secure-random.ts create mode 100644 typescript/src/gateway.ts create mode 100644 typescript/src/helpers/create-public-key-hash.ts create mode 100644 typescript/src/helpers/create-signature-message.spec.ts create mode 100644 typescript/src/helpers/create-signature-message.ts create mode 100644 typescript/src/helpers/derive-address-from-public-key.spec.ts create mode 100644 typescript/src/helpers/derive-address-from-public-key.ts create mode 100644 typescript/src/helpers/test-vectors.ts create mode 100644 typescript/src/helpers/typed-error.ts create mode 100644 typescript/src/helpers/verify-proof.ts create mode 100644 typescript/src/rola.spec.ts create mode 100644 typescript/src/rola.ts rename tsconfig.json => typescript/tsconfig.json (100%) rename tsconfig.types.json => typescript/tsconfig.types.json (100%) rename vite.config.js => typescript/vite.config.js (100%) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 1c69f81..324a489 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,4 +1,4 @@ -name: Build +name: Build typescript ROLA on: push: @@ -6,76 +6,79 @@ on: workflow_dispatch: jobs: - snyk_scan_deps_licences: - runs-on: ubuntu-latest - permissions: - id-token: write - pull-requests: read - contents: read - deployments: write - steps: - - uses: actions/checkout@755da8c3cf115ac066823e79a1e1788f8940201b - - uses: radixdlt/public-iac-resuable-artifacts/fetch-secrets@main - with: - role_name: ${{ secrets.AWS_ROLE_NAME_SNYK_SECRET }} - app_name: 'typescript-rola' - step_name: 'snyk-scan-deps-licenses' - secret_prefix: 'SNYK' - secret_name: ${{ secrets.AWS_SECRET_NAME_SNYK }} - parse_json: true - - name: Run Snyk to check for deps vulnerabilities - uses: snyk/actions/node@b98d498629f1c368650224d6d212bf7dfa89e4bf # v0.4.0 - with: - args: --all-projects --org=${{ env.SNYK_PROJECTS_ORG_ID }} --severity-threshold=critical + # snyk_scan_deps_licences: + # runs-on: ubuntu-latest + # permissions: + # id-token: write + # pull-requests: read + # contents: read + # deployments: write + # steps: + # - uses: actions/checkout@755da8c3cf115ac066823e79a1e1788f8940201b + # - uses: radixdlt/public-iac-resuable-artifacts/fetch-secrets@main + # with: + # role_name: ${{ secrets.AWS_ROLE_NAME_SNYK_SECRET }} + # app_name: 'typescript-rola' + # step_name: 'snyk-scan-deps-licenses' + # secret_prefix: 'SNYK' + # secret_name: ${{ secrets.AWS_SECRET_NAME_SNYK }} + # parse_json: true + # - name: Run Snyk to check for deps vulnerabilities + # uses: snyk/actions/node@b98d498629f1c368650224d6d212bf7dfa89e4bf # v0.4.0 + # with: + # args: --all-projects --org=${{ env.SNYK_PROJECTS_ORG_ID }} --severity-threshold=critical - snyk_scan_code: - runs-on: ubuntu-latest - permissions: - id-token: write - pull-requests: read - contents: read - deployments: write - steps: - - uses: actions/checkout@755da8c3cf115ac066823e79a1e1788f8940201b - - uses: radixdlt/public-iac-resuable-artifacts/fetch-secrets@main - with: - role_name: ${{ secrets.AWS_ROLE_NAME_SNYK_SECRET }} - app_name: 'typescript-rola' - step_name: 'snyk-scan-code' - secret_prefix: 'SNYK' - secret_name: ${{ secrets.AWS_SECRET_NAME_SNYK }} - parse_json: true - - name: Run Snyk to check for code vulnerabilities - uses: snyk/actions/node@b98d498629f1c368650224d6d212bf7dfa89e4bf # v0.4.0 - with: - args: --all-projects --org=${{ env.SNYK_PROJECTS_ORG_ID }} --severity-threshold=high - command: code test + # snyk_scan_code: + # runs-on: ubuntu-latest + # permissions: + # id-token: write + # pull-requests: read + # contents: read + # deployments: write + # steps: + # - uses: actions/checkout@755da8c3cf115ac066823e79a1e1788f8940201b + # - uses: radixdlt/public-iac-resuable-artifacts/fetch-secrets@main + # with: + # role_name: ${{ secrets.AWS_ROLE_NAME_SNYK_SECRET }} + # app_name: 'typescript-rola' + # step_name: 'snyk-scan-code' + # secret_prefix: 'SNYK' + # secret_name: ${{ secrets.AWS_SECRET_NAME_SNYK }} + # parse_json: true + # - name: Run Snyk to check for code vulnerabilities + # uses: snyk/actions/node@b98d498629f1c368650224d6d212bf7dfa89e4bf # v0.4.0 + # with: + # args: --all-projects --org=${{ env.SNYK_PROJECTS_ORG_ID }} --severity-threshold=high + # command: code test - snyk_sbom: - runs-on: ubuntu-latest - permissions: - id-token: write - pull-requests: read - contents: read - deployments: write - steps: - - uses: actions/checkout@755da8c3cf115ac066823e79a1e1788f8940201b - - uses: radixdlt/public-iac-resuable-artifacts/fetch-secrets@main - with: - role_name: ${{ secrets.AWS_ROLE_NAME_SNYK_SECRET }} - app_name: 'typescript-rola' - step_name: 'snyk-sbom' - secret_prefix: 'SNYK' - secret_name: ${{ secrets.AWS_SECRET_NAME_SNYK }} - parse_json: true - - name: Generate SBOM # check SBOM can be generated but nothing is done with it - uses: snyk/actions/node@b98d498629f1c368650224d6d212bf7dfa89e4bf # v0.4.0 - with: - args: --all-projects --org=${{ env.SNYK_PROJECTS_ORG_ID }} --format=cyclonedx1.4+json --json-file-output sbom.json - command: sbom + # snyk_sbom: + # runs-on: ubuntu-latest + # permissions: + # id-token: write + # pull-requests: read + # contents: read + # deployments: write + # steps: + # - uses: actions/checkout@755da8c3cf115ac066823e79a1e1788f8940201b + # - uses: radixdlt/public-iac-resuable-artifacts/fetch-secrets@main + # with: + # role_name: ${{ secrets.AWS_ROLE_NAME_SNYK_SECRET }} + # app_name: 'typescript-rola' + # step_name: 'snyk-sbom' + # secret_prefix: 'SNYK' + # secret_name: ${{ secrets.AWS_SECRET_NAME_SNYK }} + # parse_json: true + # - name: Generate SBOM # check SBOM can be generated but nothing is done with it + # uses: snyk/actions/node@b98d498629f1c368650224d6d212bf7dfa89e4bf # v0.4.0 + # with: + # args: --all-projects --org=${{ env.SNYK_PROJECTS_ORG_ID }} --format=cyclonedx1.4+json --json-file-output sbom.json + # command: sbom test_and_lint: runs-on: ubuntu-latest + defaults: + run: + working-directory: ./typescript steps: - uses: actions/checkout@v3 @@ -104,28 +107,28 @@ jobs: name: typescript-rola.${{ github.sha }} path: . - snyk_monitor: - runs-on: ubuntu-latest - if: github.event_name == 'push' && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/develop') - needs: - - test_and_lint - permissions: - id-token: write - pull-requests: read - contents: read - deployments: write - steps: - - uses: actions/checkout@755da8c3cf115ac066823e79a1e1788f8940201b - - uses: radixdlt/public-iac-resuable-artifacts/fetch-secrets@main - with: - role_name: ${{ secrets.AWS_ROLE_NAME_SNYK_SECRET }} - app_name: 'connector-extension' - step_name: 'snyk-monitor' - secret_prefix: 'SNYK' - secret_name: ${{ secrets.AWS_SECRET_NAME_SNYK }} - parse_json: true - - name: Enable Snyk online monitoring to check for vulnerabilities - uses: snyk/actions/node@b98d498629f1c368650224d6d212bf7dfa89e4bf # v0.4.0 - with: - args: --all-projects --org=${{ env.SNYK_PROJECTS_ORG_ID }} --target-reference=${{ github.ref_name }} - command: monitor + # snyk_monitor: + # runs-on: ubuntu-latest + # if: github.event_name == 'push' && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/develop') + # needs: + # - test_and_lint + # permissions: + # id-token: write + # pull-requests: read + # contents: read + # deployments: write + # steps: + # - uses: actions/checkout@755da8c3cf115ac066823e79a1e1788f8940201b + # - uses: radixdlt/public-iac-resuable-artifacts/fetch-secrets@main + # with: + # role_name: ${{ secrets.AWS_ROLE_NAME_SNYK_SECRET }} + # app_name: 'connector-extension' + # step_name: 'snyk-monitor' + # secret_prefix: 'SNYK' + # secret_name: ${{ secrets.AWS_SECRET_NAME_SNYK }} + # parse_json: true + # - name: Enable Snyk online monitoring to check for vulnerabilities + # uses: snyk/actions/node@b98d498629f1c368650224d6d212bf7dfa89e4bf # v0.4.0 + # with: + # args: --all-projects --org=${{ env.SNYK_PROJECTS_ORG_ID }} --target-reference=${{ github.ref_name }} + # command: monitor diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 285c2b9..3945b28 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -3,6 +3,7 @@ on: push: branches: - develop + - release/rcnet-v3 workflow_dispatch: jobs: @@ -10,6 +11,9 @@ jobs: name: Release runs-on: ubuntu-latest permissions: write-all + defaults: + run: + working-directory: ./typescript steps: - name: Checkout uses: actions/checkout@v2 @@ -32,22 +36,22 @@ jobs: echo "RELEASE_VERSION=$(grep 'Created tag ' out | awk -F 'Created tag ' '{print $2}')" >> $GITHUB_ENV # Snyk SBOM - - uses: radixdlt/public-iac-resuable-artifacts/fetch-secrets@main - with: - role_name: ${{ secrets.AWS_ROLE_NAME_SNYK_SECRET }} - app_name: 'typescript-rola' - step_name: 'snyk-sbom' - secret_prefix: 'SNYK' - secret_name: ${{ secrets.AWS_SECRET_NAME_SNYK }} - parse_json: true - - name: Generate SBOM - uses: snyk/actions/node@b98d498629f1c368650224d6d212bf7dfa89e4bf # v0.4.0 - with: - args: --all-projects --org=${{ env.SNYK_PROJECTS_ORG_ID }} --format=cyclonedx1.4+json --json-file-output sbom.json - command: sbom - - name: Upload SBOM - uses: AButler/upload-release-assets@c94805dc72e4b20745f543da0f62eaee7722df7a # v2.0.2 - with: - files: sbom.json - repo-token: ${{ secrets.GITHUB_TOKEN }} - release-tag: ${{ env.RELEASE_VERSION }} + # - uses: radixdlt/public-iac-resuable-artifacts/fetch-secrets@main + # with: + # role_name: ${{ secrets.AWS_ROLE_NAME_SNYK_SECRET }} + # app_name: 'typescript-rola' + # step_name: 'snyk-sbom' + # secret_prefix: 'SNYK' + # secret_name: ${{ secrets.AWS_SECRET_NAME_SNYK }} + # parse_json: true + # - name: Generate SBOM + # uses: snyk/actions/node@b98d498629f1c368650224d6d212bf7dfa89e4bf # v0.4.0 + # with: + # args: --all-projects --org=${{ env.SNYK_PROJECTS_ORG_ID }} --format=cyclonedx1.4+json --json-file-output sbom.json + # command: sbom + # - name: Upload SBOM + # uses: AButler/upload-release-assets@c94805dc72e4b20745f543da0f62eaee7722df7a # v2.0.2 + # with: + # files: sbom.json + # repo-token: ${{ secrets.GITHUB_TOKEN }} + # release-tag: ${{ env.RELEASE_VERSION }} diff --git a/.husky/pre-push b/.husky/pre-push index b4c0b12..d33b93f 100755 --- a/.husky/pre-push +++ b/.husky/pre-push @@ -1,4 +1,4 @@ #!/usr/bin/env sh . "$(dirname -- "$0")/_/husky.sh" -npm run pre-push +cd ./typescript && npm run pre-push diff --git a/.nvmrc b/.nvmrc deleted file mode 100644 index 25bf17f..0000000 --- a/.nvmrc +++ /dev/null @@ -1 +0,0 @@ -18 \ No newline at end of file diff --git a/README.md b/README.md index 71761bf..c84bbf3 100644 --- a/README.md +++ b/README.md @@ -1,3 +1 @@ -[![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) - -# Typescript ROLA \ No newline at end of file +# ROLA diff --git a/examples/index.ts b/examples/index.ts deleted file mode 100644 index 90be490..0000000 --- a/examples/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { ROLA } from '../src/rola' - -ROLA() diff --git a/examples/public/.well-known/radix.json b/examples/public/.well-known/radix.json deleted file mode 100644 index 2160308..0000000 --- a/examples/public/.well-known/radix.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "dApps": [ - { - "dAppDefinitionAddress": "account_tdx_a_1qd5svul20u30qnq408zhj2tw5evqrunq48eg0jsjf9qsx5t8qu" - } - ] -} diff --git a/examples/typescript-full-stack/.gitignore b/examples/typescript-full-stack/.gitignore new file mode 100644 index 0000000..b512c09 --- /dev/null +++ b/examples/typescript-full-stack/.gitignore @@ -0,0 +1 @@ +node_modules \ No newline at end of file diff --git a/examples/typescript-full-stack/.nvmrc b/examples/typescript-full-stack/.nvmrc new file mode 100644 index 0000000..8cf0e41 --- /dev/null +++ b/examples/typescript-full-stack/.nvmrc @@ -0,0 +1 @@ +18.12.0 \ No newline at end of file diff --git a/examples/typescript-full-stack/LICENSE b/examples/typescript-full-stack/LICENSE new file mode 100644 index 0000000..9eedb6e --- /dev/null +++ b/examples/typescript-full-stack/LICENSE @@ -0,0 +1,209 @@ + + MODIFIED Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ +MODIFIED Thursday, 16 February 2023 + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that + any reproduction or distribution of the Work or any part thereof + is on the same terms as this License and you meet the following conditions: + + (a) You give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You cause any modified files or parts of the Work to be identified and to carry prominent notices + stating that You changed the files and clearly identify which code, documentation and/or files originated with Licensor or other Contributors as compared to the code/documentation and/or files that you have originated; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices in relation to the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with +the conditions stated in this License and +that the terms of this License are included in and form part of the license under which you provide the Derivative Work or the Work. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file but never in respect of any Derivative Works. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. The Work is provided as a developmental or a reference tool. It is not intended to have any particular purpose other than to assist you in the creation of your own Derivate Works and no warranty is given as to its functionality, performance, intended output, accuracy or completeness of any output or its contents. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use, misuse or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, the loss of control over or impairment of any digital asset or cryptographic keys, or the failure to transmit instruction or to record any event, bugs, logic errors or faults or unauthorised use or misuse of tokens or keys, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages and including, without limitation, if the Work does not function as expected or does not give expected or accurate results. Each Contributor expressly excludes any duty of care and/or fiduciary duty owed to any user of the Work whether or not such Work is within or under the Contributor’s control. You have full responsibility for testing and checking the Work. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +10. This Licence and any dispute arising out of or in connection with the Licence, its subject matter or its formation including contractual and non-contractual (“Dispute”) shall be governed by English law and the English court shall have exclusive jurisdiction to determine the Dispute. The situs of the performance of this agreement and any crypto currency associated with the Work in any way shall be deemed to be England. All operation of conflict of laws is excluded. The Licensor shall have the right under the Contracts (Rights of Third Parties) Act 1999 to enforce any term of this Licence against any Contributor or user of any Work. + + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + diff --git a/examples/typescript-full-stack/README.md b/examples/typescript-full-stack/README.md new file mode 100644 index 0000000..90b6252 --- /dev/null +++ b/examples/typescript-full-stack/README.md @@ -0,0 +1,178 @@ +# Radix Off-Ledger Authentication (ROLA) example + +This is a simple end-to-end implementation of ROLA using a express server as backend and TypeScript dApp as client. + +ROLA is method of authenticating something claimed by the user connected to your dApp with the Radix Wallet. It uses the capabilities of the Radix Network to make this possible in a way that is decentralized and flexible for the user. + +ROLA is intended for use in the server backend portion of a [Full Stack dApp](https://docs-babylon.radixdlt.com/main/getting-started-developers/dapp-backend/building-a-full-stack-dapp.html). It runs "off-ledger" alongside backend business and user management logic, providing reliable authentication of claims of user control using "on-ledger" data from the Radix Network. + +## Getting started +This dApp shows how to use ROLA to prove control of an Identity component, which can be used for authenticating a user’s login using a Persona. +To run the example, you'll need a Connector Extension and the Android or iOS Wallet. Check our [Radix Wallet Installation and Usage](https://docs-babylon.radixdlt.com/main/getting-started-developers/wallet/wallet-and-connector-installation.html) to find out how to get them. + +Run `npm install` to install dependencies + +```bash +npm install +``` + +Run `npm run dev` to start the server and client + +```bash +npm run dev +>>> Server running on "http://localhost:3000" +>>> Client running on "http://localhost:4000" +``` + +Go to [Client](http://localhost:4000) and click ROLA button to trigger the flow. + +## ROLA verification flow + +Lets go through an end-to-end ROLA verification flow that includes sending a request to the wallet to sign a challenge and verifying that the signature was created by the owner. + +![ROLA Flow](docs/rola-flow.png "ROLA Flow") + +### 1) User enters a dApp and clicks connect in √ Connect Button + +This walkthrough will assume the user has already been onboarded to the Radix network, this means: + +- [The user has already installed the Radix Wallet.](https://docs-babylon.radixdlt.com/main/getting-started-developers/wallet/wallet-overview.html) +- Personas has already been setup. +- Connected to a Radix dApp via the [√ Connect Button](https://docs-babylon.radixdlt.com/main/getting-started-developers/wallet/wallet-overview.html). + +### 2-3) dApp backend creates a challenge + +The primary use for ROLA is to authenticate the user's Persona login with the user's control of account(s) on Radix. Let's say that Alice is subscribed to an online streaming service on the Radix network called Radflix, which requires a subscription badge to enter the website. Alice logs in with her Persona to Radflix and now needs to prove that she owns an account that contains a Radflix subscription badge. By using Rola we can verify that Alice is the owner of the account that contains the Radflix subscription badge. Once we have verified that Alice is the owner of the account, we can then use the account to check for the Radflix subscription badge and verify that Alice has a valid subscription. + +ROLA creates an challenge with a random 32 bytes hex encoded string that looks something like: `4ccb0555d6b4faad0d7f5ed40bf4e4f0665c8ba35929c638e232e09775d0fa0e`. The challenge is generated and stored in the dApp backend and return to the client. + +**Why do we need a challenge?** + +The challenge plays an important role in the authentication flow, namely preventing [replay attacks](https://www.educative.io/answers/what-is-a-replay-attack) from bad actors. The challenge ensures that an authentication request payload sent from the client can only be used once. After a challenge is claimed by a request, the subsequent requests can no longer be resolved successfully with the same payload. As a security best practice, a stored challenge should have a short expiration time. In this case, just enough time for a user to interact with the wallet. + +In our implementation, we are storing the challenges in in-memory, which is sufficient for development purposes. However, in a production environment where the dApp needs to handle more users and scale horizontally; a database should be used to allow claiming of challenges between instances of servers. + +### 4-5) Wallet creating a signature + +Once the user has connected to a dApp, the wallet now has everything it needs to create a signature. If a dApp requires proof of ownership from the user, the dApp sends that request through the √ Connect Button where the user will receive it in their wallet to sign the challenge. The wallet then sends back a response containing a signed challenge. + +```typescript +{ + type: "persona" | "account"; + challenge: string; + proof: { + publicKey: string; + signature: string; + curve: "curve25519" | "secp256k1"; + } + address: string; +} +``` + +The values in the wallet response are needed for the backend to verify that the user is the owner of the address. + +### 6-7) dApp backend verifies the proof using ROLA + +After the dApp frontend sends the signed challenge to the dApp backend, the ROLA verification flow starts shown in the diagram below: + +![ROLA Flow](docs/verification-flow.png "ROLA verification flow") + +**1. Claim challenge** + +The first step in the verification process is to check if the challenge provided in the request body is valid. The challenge should exist as an entry in the challenge store. In our example, the challenge store is a simple in-memory map that stores unclaimed challenges. If the challenge exists in the store, `get` and `delete` that challenge entry then proceed to the next step. + +```typescript +// A simple in-memory store for challenges. A database should be used in production. +const ChallengeStore = () => { + const challenges = new Map(); + + const create = () => { + const challenge = secureRandom(32); // 32 random bytes as hex string + const expires = Date.now() + 1000 * 60 * 5; // expires in 5 minutes + challenges.set(challenge, { expires }); // store challenge with expiration + + return challenge; + }; + + const verify = (input: string) => { + const challenge = challenges.get(input); + + if (!challenge) return false; + + challenges.delete(input); // remove challenge after it has been used + const isValid = challenge.expires > Date.now(); // check if challenge has expired + + return isValid; + }; + + return { create, verify }; +}; +``` + +**2. Check if challenge has expired** + +The challenge entry should have metadata regarding expiration. We proceed to check if the challenge is within expiration time. If valid, proceed to the next step. + +**3. Construct the signature message** + +In this step we are creating the signature message needed to verify the signature. + +**The signature message is composed of the following:** + +| | | +| ------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| **prefix** | "R" (as in ROLA) in ascii encoding | +| **challenge** | Challenge provided in request body | +| **length of dApp definition address** | String length of the dApp definition address | +| **dApp definition address** | The dApp definition address of the requesting dApp. Note that this value is not provided in the request body. On top of challenge, having this value in the signature adds an additional layer of security preventing bad actors to sign in into dApps using another proof. | +| **origin** | The origin of the dApp (e.g. `https://dashboard.radixdlt.com`). This is a value that is added to the wallet data request by the Connector extension. As with the dApp definition address, the dApp needs to be aware of its origin. | + +The message is then hashed using [blake2b]() algorithm and encoded as a hex string. + +**4. Check if the signature is valid** + +In this step we verify the signature using elliptic curve cryptography. + +```typescript +{ + publicKey: string; + signature: string; + curve: "curve25519" | "secp256k1"; +} +``` + +In the example we are using the [elliptic](https://www.npmjs.com/package/elliptic) library for elliptic curve cryptography. You are free to choose any tool that enables signature verification for `curve25519` and `secp256k1`. + +If the signature is valid, proceed to the next step. + +**5. Get the entity metadata from gateway** + +We query the ledger through the gateway API to get `metadata` for the address provided in the request body. + +In the `metadata` we are specifically looking for `owner_keys` field. + +The `owner_keys` value contains a list of blake2b hashed public keys in hex string encoding. + +There are two paths here: + +**A) `owner_keys` metadata set** + +If the `owner_keys` metadata value is set we need to hash the publicKey provided request body and check if it matches the value in `owner_keys`. + +```typescript +blake2b(Buffer.from(publicKey, "hex")) + .map((hash) => hash.subarray(-29)) + .map((hash) => Buffer.from(hash).toString("hex")); +``` + +If it matches, the user is authenticated + +**B) `owner_keys` metadata not set** + +In this case we use [TypeScript Radix Engine Toolkit (RET)](https://github.com/radixdlt/typescript-radix-engine-toolkit) to derive an address from the public key provided in the `request.body`. + +If the derived address matches the `address` provided `request.body.proof.publicKey`, the user is authenticated! + +### Keeping users authenticated + +ROLA is meant to be a secure and framework agnostic way to authenticate a user using public key cryptography enabled by the Radix Wallet. After a successful ROLA verification it is up to the dApp to establish a persistent authentication strategy that allows the client to stay authenticated between requests. diff --git a/examples/typescript-full-stack/apps/client/.gitignore b/examples/typescript-full-stack/apps/client/.gitignore new file mode 100644 index 0000000..a547bf3 --- /dev/null +++ b/examples/typescript-full-stack/apps/client/.gitignore @@ -0,0 +1,24 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +node_modules +dist +dist-ssr +*.local + +# Editor directories and files +.vscode/* +!.vscode/extensions.json +.idea +.DS_Store +*.suo +*.ntvs* +*.njsproj +*.sln +*.sw? diff --git a/examples/index.html b/examples/typescript-full-stack/apps/client/index.html similarity index 51% rename from examples/index.html rename to examples/typescript-full-stack/apps/client/index.html index a95c5d1..d6cce51 100644 --- a/examples/index.html +++ b/examples/typescript-full-stack/apps/client/index.html @@ -2,10 +2,13 @@ + - ROLA + Radix + TS - +
+ + diff --git a/examples/typescript-full-stack/apps/client/package-lock.json b/examples/typescript-full-stack/apps/client/package-lock.json new file mode 100644 index 0000000..7e3efbb --- /dev/null +++ b/examples/typescript-full-stack/apps/client/package-lock.json @@ -0,0 +1,1010 @@ +{ + "name": "client", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "client", + "version": "0.0.0", + "dependencies": { + "@radixdlt/radix-dapp-toolkit": "^0.3.0-dev-birch.5" + }, + "devDependencies": { + "typescript": "^5.0.2", + "vite": "^4.4.0" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.18.14", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.14.tgz", + "integrity": "sha512-blODaaL+lngG5bdK/t4qZcQvq2BBqrABmYwqPPcS5VRxrCSGHb9R/rA3fqxh7R18I7WU4KKv+NYkt22FDfalcg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.18.14", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.14.tgz", + "integrity": "sha512-rZ2v+Luba5/3D6l8kofWgTnqE+qsC/L5MleKIKFyllHTKHrNBMqeRCnZI1BtRx8B24xMYxeU32iIddRQqMsOsg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.18.14", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.14.tgz", + "integrity": "sha512-qSwh8y38QKl+1Iqg+YhvCVYlSk3dVLk9N88VO71U4FUjtiSFylMWK3Ugr8GC6eTkkP4Tc83dVppt2n8vIdlSGg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.18.14", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.14.tgz", + "integrity": "sha512-9Hl2D2PBeDYZiNbnRKRWuxwHa9v5ssWBBjisXFkVcSP5cZqzZRFBUWEQuqBHO4+PKx4q4wgHoWtfQ1S7rUqJ2Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.18.14", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.14.tgz", + "integrity": "sha512-ZnI3Dg4ElQ6tlv82qLc/UNHtFsgZSKZ7KjsUNAo1BF1SoYDjkGKHJyCrYyWjFecmXpvvG/KJ9A/oe0H12odPLQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.18.14", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.14.tgz", + "integrity": "sha512-h3OqR80Da4oQCIa37zl8tU5MwHQ7qgPV0oVScPfKJK21fSRZEhLE4IIVpmcOxfAVmqjU6NDxcxhYaM8aDIGRLw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.18.14", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.14.tgz", + "integrity": "sha512-ha4BX+S6CZG4BoH9tOZTrFIYC1DH13UTCRHzFc3GWX74nz3h/N6MPF3tuR3XlsNjMFUazGgm35MPW5tHkn2lzQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.18.14", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.14.tgz", + "integrity": "sha512-5+7vehI1iqru5WRtJyU2XvTOvTGURw3OZxe3YTdE9muNNIdmKAVmSHpB3Vw2LazJk2ifEdIMt/wTWnVe5V98Kg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.18.14", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.14.tgz", + "integrity": "sha512-IXORRe22In7U65NZCzjwAUc03nn8SDIzWCnfzJ6t/8AvGx5zBkcLfknI+0P+hhuftufJBmIXxdSTbzWc8X/V4w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.18.14", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.14.tgz", + "integrity": "sha512-BfHlMa0nibwpjG+VXbOoqJDmFde4UK2gnW351SQ2Zd4t1N3zNdmUEqRkw/srC1Sa1DRBE88Dbwg4JgWCbNz/FQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.18.14", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.14.tgz", + "integrity": "sha512-j2/Ex++DRUWIAaUDprXd3JevzGtZ4/d7VKz+AYDoHZ3HjJzCyYBub9CU1wwIXN+viOP0b4VR3RhGClsvyt/xSw==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.18.14", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.14.tgz", + "integrity": "sha512-qn2+nc+ZCrJmiicoAnJXJJkZWt8Nwswgu1crY7N+PBR8ChBHh89XRxj38UU6Dkthl2yCVO9jWuafZ24muzDC/A==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.18.14", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.14.tgz", + "integrity": "sha512-aGzXzd+djqeEC5IRkDKt3kWzvXoXC6K6GyYKxd+wsFJ2VQYnOWE954qV2tvy5/aaNrmgPTb52cSCHFE+Z7Z0yg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.18.14", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.14.tgz", + "integrity": "sha512-8C6vWbfr0ygbAiMFLS6OPz0BHvApkT2gCboOGV76YrYw+sD/MQJzyITNsjZWDXJwPu9tjrFQOVG7zijRzBCnLw==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.18.14", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.14.tgz", + "integrity": "sha512-G/Lf9iu8sRMM60OVGOh94ZW2nIStksEcITkXdkD09/T6QFD/o+g0+9WVyR/jajIb3A0LvBJ670tBnGe1GgXMgw==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.18.14", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.14.tgz", + "integrity": "sha512-TBgStYBQaa3EGhgqIDM+ECnkreb0wkcKqL7H6m+XPcGUoU4dO7dqewfbm0mWEQYH3kzFHrzjOFNpSAVzDZRSJw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.18.14", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.14.tgz", + "integrity": "sha512-stvCcjyCQR2lMTroqNhAbvROqRjxPEq0oQ380YdXxA81TaRJEucH/PzJ/qsEtsHgXlWFW6Ryr/X15vxQiyRXVg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.18.14", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.14.tgz", + "integrity": "sha512-apAOJF14CIsN5ht1PA57PboEMsNV70j3FUdxLmA2liZ20gEQnfTG5QU0FhENo5nwbTqCB2O3WDsXAihfODjHYw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.18.14", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.14.tgz", + "integrity": "sha512-fYRaaS8mDgZcGybPn2MQbn1ZNZx+UXFSUoS5Hd2oEnlsyUcr/l3c6RnXf1bLDRKKdLRSabTmyCy7VLQ7VhGdOQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.18.14", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.14.tgz", + "integrity": "sha512-1c44RcxKEJPrVj62XdmYhxXaU/V7auELCmnD+Ri+UCt+AGxTvzxl9uauQhrFso8gj6ZV1DaORV0sT9XSHOAk8Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.18.14", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.14.tgz", + "integrity": "sha512-EXAFttrdAxZkFQmpvcAQ2bywlWUsONp/9c2lcfvPUhu8vXBBenCXpoq9YkUvVP639ld3YGiYx0YUQ6/VQz3Maw==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.18.14", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.14.tgz", + "integrity": "sha512-K0QjGbcskx+gY+qp3v4/940qg8JitpXbdxFhRDA1aYoNaPff88+aEwoq45aqJ+ogpxQxmU0ZTjgnrQD/w8iiUg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@lit-labs/ssr-dom-shim": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@lit-labs/ssr-dom-shim/-/ssr-dom-shim-1.1.1.tgz", + "integrity": "sha512-kXOeFbfCm4fFf2A3WwVEeQj55tMZa8c8/f9AKHMobQMkzNUfUj+antR3fRPaZJawsa1aZiP/Da3ndpZrwEe4rQ==" + }, + "node_modules/@lit/reactive-element": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/@lit/reactive-element/-/reactive-element-1.6.2.tgz", + "integrity": "sha512-rDfl+QnCYjuIGf5xI2sVJWdYIi56CTCwWa+nidKYX6oIuBYwUbT/vX4qbUDlHiZKJ/3FRNQ/tWJui44p6/stSA==", + "dependencies": { + "@lit-labs/ssr-dom-shim": "^1.0.0" + } + }, + "node_modules/@noble/ed25519": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@noble/ed25519/-/ed25519-2.0.0.tgz", + "integrity": "sha512-/extjhkwFupyopDrt80OMWKdLgP429qLZj+z6sYJz90rF2Iz0gjZh2ArMKPImUl13Kx+0EXI2hN9T/KJV0/Zng==", + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ] + }, + "node_modules/@noble/hashes": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.0.tgz", + "integrity": "sha512-ilHEACi9DwqJB0pw7kv+Apvh50jiiSyR/cQ3y4W7lOR5mhvn/50FLUfsnfJz0BDZtl/RR16kXvptiv6q1msYZg==", + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ] + }, + "node_modules/@radixdlt/babylon-gateway-api-sdk": { + "version": "1.0.0-rc.2.2", + "resolved": "https://registry.npmjs.org/@radixdlt/babylon-gateway-api-sdk/-/babylon-gateway-api-sdk-1.0.0-rc.2.2.tgz", + "integrity": "sha512-fcLuAcW4/rJBLk9WGXhnNnJsV1Tt/mjh6S+weDUXUe1EI4wu7dtbHUNptS/wA0ykoLyAOfeMh4UPssrX5VRsyQ==" + }, + "node_modules/@radixdlt/connect-button": { + "version": "0.13.0-alpha.1", + "resolved": "https://registry.npmjs.org/@radixdlt/connect-button/-/connect-button-0.13.0-alpha.1.tgz", + "integrity": "sha512-vjKV6yEjABNn2SbC0X7jsFFnbkF6+0LUqbXBbGfzZcqmz57vwuinNVuHFImwU5YCLoRS7LuukOW9t2Vtsso1eQ==", + "dependencies": { + "lit": "^2.6.1", + "rxjs": "^7.8.0" + } + }, + "node_modules/@radixdlt/radix-dapp-toolkit": { + "version": "0.3.0-dev-birch.5", + "resolved": "https://registry.npmjs.org/@radixdlt/radix-dapp-toolkit/-/radix-dapp-toolkit-0.3.0-dev-birch.5.tgz", + "integrity": "sha512-88SI0W1sRVgRybflY/66tl/Y2Eq3anXrhJ1Xt61Wi8HkM1rHTismRPuJpnYnhxvX9A15VPueFlJYNDaJU55MMw==", + "dependencies": { + "@radixdlt/babylon-gateway-api-sdk": "^1.0.0-birch.1", + "@radixdlt/connect-button": "0.13.0-alpha.1", + "@radixdlt/radix-engine-toolkit": "^0.2.0-birch.2", + "@radixdlt/wallet-sdk": "0.9.0-alpha.10", + "lodash.isequal": "^4.5.0", + "neverthrow": "^6.0.0", + "rxjs": "^7.8.1", + "zod": "^3.21.4" + } + }, + "node_modules/@radixdlt/radix-engine-toolkit": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@radixdlt/radix-engine-toolkit/-/radix-engine-toolkit-0.2.1.tgz", + "integrity": "sha512-tjnW8O+5XzM02JSQdbR5Qiv+tX/YH8XcFlzkKbMYxHaDF9wME/2Kb0kjC1FhFoyCC2SwnWSbSEZnXXWvXBfb1w==", + "dependencies": { + "@noble/ed25519": "2.0.0", + "@noble/hashes": "1.3.0", + "@types/secp256k1": "4.0.3", + "@types/secure-random": "1.1.0", + "blakejs": "1.2.1", + "change-case": "4.1.2", + "class-transformer": "0.5.1", + "decimal.js": "10.4.3", + "reflect-metadata": "0.1.13", + "secp256k1": "5.0.0" + } + }, + "node_modules/@radixdlt/wallet-sdk": { + "version": "0.9.0-alpha.10", + "resolved": "https://registry.npmjs.org/@radixdlt/wallet-sdk/-/wallet-sdk-0.9.0-alpha.10.tgz", + "integrity": "sha512-V5qsrZpCQYJJ6/UrkPK2N9DcA3A7xInwt2Y9hBkHFz4sKL796stnrJId0fl8fyIfZeNJiWIhVX8DjBuqJu1ouA==", + "dependencies": { + "neverthrow": "^6.0.0", + "rxjs": "^7.8.1", + "tslog": "^4.8.2", + "zod": "^3.21.4" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@types/node": { + "version": "20.4.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.4.2.tgz", + "integrity": "sha512-Dd0BYtWgnWJKwO1jkmTrzofjK2QXXcai0dmtzvIBhcA+RsG5h8R3xlyta0kGOZRNfL9GuRtb1knmPEhQrePCEw==" + }, + "node_modules/@types/secp256k1": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@types/secp256k1/-/secp256k1-4.0.3.tgz", + "integrity": "sha512-Da66lEIFeIz9ltsdMZcpQvmrmmoqrfju8pm1BH8WbYjZSwUgCwXLb9C+9XYogwBITnbsSaMdVPb2ekf7TV+03w==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/secure-random": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@types/secure-random/-/secure-random-1.1.0.tgz", + "integrity": "sha512-FVkD9qNAeuc1m53VQfWhuUdn9IWjv6griflGfLcSoF3ZexyNv1ciPlZLyrucWYcdhNjKERgDb45IJwb8a/ZKDQ==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/trusted-types": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.3.tgz", + "integrity": "sha512-NfQ4gyz38SL8sDNrSixxU2Os1a5xcdFxipAFxYEuLUlvU2uDwS4NUpsImcf1//SlWItCVMMLiylsxbmNMToV/g==" + }, + "node_modules/blakejs": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/blakejs/-/blakejs-1.2.1.tgz", + "integrity": "sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==" + }, + "node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==" + }, + "node_modules/camel-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", + "dependencies": { + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" + } + }, + "node_modules/capital-case": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/capital-case/-/capital-case-1.0.4.tgz", + "integrity": "sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3", + "upper-case-first": "^2.0.2" + } + }, + "node_modules/change-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/change-case/-/change-case-4.1.2.tgz", + "integrity": "sha512-bSxY2ws9OtviILG1EiY5K7NNxkqg/JnRnFxLtKQ96JaviiIxi7djMrSd0ECT9AC+lttClmYwKw53BWpOMblo7A==", + "dependencies": { + "camel-case": "^4.1.2", + "capital-case": "^1.0.4", + "constant-case": "^3.0.4", + "dot-case": "^3.0.4", + "header-case": "^2.0.4", + "no-case": "^3.0.4", + "param-case": "^3.0.4", + "pascal-case": "^3.1.2", + "path-case": "^3.0.4", + "sentence-case": "^3.0.4", + "snake-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/class-transformer": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/class-transformer/-/class-transformer-0.5.1.tgz", + "integrity": "sha512-SQa1Ws6hUbfC98vKGxZH3KFY0Y1lm5Zm0SY8XX9zbK7FJCyVEac3ATW0RIpwzW+oOfmHE5PMPufDG9hCfoEOMw==" + }, + "node_modules/constant-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/constant-case/-/constant-case-3.0.4.tgz", + "integrity": "sha512-I2hSBi7Vvs7BEuJDr5dDHfzb/Ruj3FyvFyh7KLilAjNQw3Be+xgqUBA2W6scVEcL0hL1dwPRtIqEPVUCKkSsyQ==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3", + "upper-case": "^2.0.2" + } + }, + "node_modules/decimal.js": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==" + }, + "node_modules/dot-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "dependencies": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/esbuild": { + "version": "0.18.14", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.14.tgz", + "integrity": "sha512-uNPj5oHPYmj+ZhSQeYQVFZ+hAlJZbAGOmmILWIqrGvPVlNLbyOvU5Bu6Woi8G8nskcx0vwY0iFoMPrzT86Ko+w==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/android-arm": "0.18.14", + "@esbuild/android-arm64": "0.18.14", + "@esbuild/android-x64": "0.18.14", + "@esbuild/darwin-arm64": "0.18.14", + "@esbuild/darwin-x64": "0.18.14", + "@esbuild/freebsd-arm64": "0.18.14", + "@esbuild/freebsd-x64": "0.18.14", + "@esbuild/linux-arm": "0.18.14", + "@esbuild/linux-arm64": "0.18.14", + "@esbuild/linux-ia32": "0.18.14", + "@esbuild/linux-loong64": "0.18.14", + "@esbuild/linux-mips64el": "0.18.14", + "@esbuild/linux-ppc64": "0.18.14", + "@esbuild/linux-riscv64": "0.18.14", + "@esbuild/linux-s390x": "0.18.14", + "@esbuild/linux-x64": "0.18.14", + "@esbuild/netbsd-x64": "0.18.14", + "@esbuild/openbsd-x64": "0.18.14", + "@esbuild/sunos-x64": "0.18.14", + "@esbuild/win32-arm64": "0.18.14", + "@esbuild/win32-ia32": "0.18.14", + "@esbuild/win32-x64": "0.18.14" + } + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dependencies": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "node_modules/header-case": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/header-case/-/header-case-2.0.4.tgz", + "integrity": "sha512-H/vuk5TEEVZwrR0lp2zed9OCo1uAILMlx0JEMgC26rzyJJ3N1v6XkwHHXJQdR2doSjcGPM6OKPYoJgf0plJ11Q==", + "dependencies": { + "capital-case": "^1.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", + "dependencies": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/lit": { + "version": "2.7.6", + "resolved": "https://registry.npmjs.org/lit/-/lit-2.7.6.tgz", + "integrity": "sha512-1amFHA7t4VaaDe+vdQejSVBklwtH9svGoG6/dZi9JhxtJBBlqY5D1RV7iLUYY0trCqQc4NfhYYZilZiVHt7Hxg==", + "dependencies": { + "@lit/reactive-element": "^1.6.0", + "lit-element": "^3.3.0", + "lit-html": "^2.7.0" + } + }, + "node_modules/lit-element": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/lit-element/-/lit-element-3.3.2.tgz", + "integrity": "sha512-xXAeVWKGr4/njq0rGC9dethMnYCq5hpKYrgQZYTzawt9YQhMiXfD+T1RgrdY3NamOxwq2aXlb0vOI6e29CKgVQ==", + "dependencies": { + "@lit-labs/ssr-dom-shim": "^1.1.0", + "@lit/reactive-element": "^1.3.0", + "lit-html": "^2.7.0" + } + }, + "node_modules/lit-html": { + "version": "2.7.5", + "resolved": "https://registry.npmjs.org/lit-html/-/lit-html-2.7.5.tgz", + "integrity": "sha512-YqUzpisJodwKIlbMFCtyrp58oLloKGnnPLMJ1t23cbfIJjg/H9pvLWK4XS69YeubK5HUs1UE4ys9w5dP1zg6IA==", + "dependencies": { + "@types/trusted-types": "^2.0.2" + } + }, + "node_modules/lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==" + }, + "node_modules/lower-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, + "node_modules/minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==" + }, + "node_modules/nanoid": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", + "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/neverthrow": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/neverthrow/-/neverthrow-6.0.0.tgz", + "integrity": "sha512-kPZKRs4VkdloCGQXPoP84q4sT/1Z+lYM61AXyV8wWa2hnuo5KpPBF2S3crSFnMrOgUISmEBP8Vo/ngGZX60NhA==" + }, + "node_modules/no-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", + "dependencies": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + } + }, + "node_modules/node-addon-api": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz", + "integrity": "sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==" + }, + "node_modules/node-gyp-build": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.6.0.tgz", + "integrity": "sha512-NTZVKn9IylLwUzaKjkas1e4u2DLNcV4rdYagA4PWdPwW87Bi7z+BznyKSRwS/761tV/lzCGXplWsiaMjLqP2zQ==", + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" + } + }, + "node_modules/param-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", + "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/pascal-case": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", + "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/path-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/path-case/-/path-case-3.0.4.tgz", + "integrity": "sha512-qO4qCFjXqVTrcbPt/hQfhTQ+VhFsqNKOPtytgNKkKxSoEp3XPUQ8ObFuePylOIok5gjn69ry8XiULxCwot3Wfg==", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "node_modules/postcss": { + "version": "8.4.26", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.26.tgz", + "integrity": "sha512-jrXHFF8iTloAenySjM/ob3gSj7pCu0Ji49hnjqzsgSRa50hkWCKD0HQ+gMNJkW38jBI68MpAAg7ZWwHwX8NMMw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/reflect-metadata": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", + "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==" + }, + "node_modules/rollup": { + "version": "3.26.3", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.26.3.tgz", + "integrity": "sha512-7Tin0C8l86TkpcMtXvQu6saWH93nhG3dGQ1/+l5V2TDMceTxO7kDiK6GzbfLWNNxqJXm591PcEZUozZm51ogwQ==", + "dev": true, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=14.18.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/secp256k1": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-5.0.0.tgz", + "integrity": "sha512-TKWX8xvoGHrxVdqbYeZM9w+izTF4b9z3NhSaDkdn81btvuh+ivbIMGT/zQvDtTFWhRlThpoz6LEYTr7n8A5GcA==", + "hasInstallScript": true, + "dependencies": { + "elliptic": "^6.5.4", + "node-addon-api": "^5.0.0", + "node-gyp-build": "^4.2.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/sentence-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/sentence-case/-/sentence-case-3.0.4.tgz", + "integrity": "sha512-8LS0JInaQMCRoQ7YUytAo/xUu5W2XnQxV2HI/6uM6U7CITS1RqPElr30V6uIqyMKM9lJGRVFy5/4CuzcixNYSg==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3", + "upper-case-first": "^2.0.2" + } + }, + "node_modules/snake-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/snake-case/-/snake-case-3.0.4.tgz", + "integrity": "sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tslib": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.0.tgz", + "integrity": "sha512-7At1WUettjcSRHXCyYtTselblcHl9PJFFVKiCAy/bY97+BPZXSQ2wbq0P9s8tK2G7dFQfNnlJnPAiArVBVBsfA==" + }, + "node_modules/tslog": { + "version": "4.8.2", + "resolved": "https://registry.npmjs.org/tslog/-/tslog-4.8.2.tgz", + "integrity": "sha512-eAKIRjxfSKYLs06r1wT7oou6Uv9VN6NW9g0JPidBlqQwPBBl5+84dm7r8zSOPVq1kyfEw1P6B3/FLSpZCorAgA==", + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/fullstack-build/tslog?sponsor=1" + } + }, + "node_modules/typescript": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz", + "integrity": "sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/upper-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-2.0.2.tgz", + "integrity": "sha512-KgdgDGJt2TpuwBUIjgG6lzw2GWFRCW9Qkfkiv0DxqHHLYJHmtmdUIKcZd8rHgFSjopVTlw6ggzCm1b8MFQwikg==", + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/upper-case-first": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/upper-case-first/-/upper-case-first-2.0.2.tgz", + "integrity": "sha512-514ppYHBaKwfJRK/pNC6c/OxfGa0obSnAl106u97Ed0I625Nin96KAjttZF6ZL3e1XLtphxnqrOi9iWgm+u+bg==", + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/vite": { + "version": "4.4.4", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.4.4.tgz", + "integrity": "sha512-4mvsTxjkveWrKDJI70QmelfVqTm+ihFAb6+xf4sjEU2TmUCTlVX87tmg/QooPEMQb/lM9qGHT99ebqPziEd3wg==", + "dev": true, + "dependencies": { + "esbuild": "^0.18.10", + "postcss": "^8.4.25", + "rollup": "^3.25.2" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + }, + "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 + } + } + }, + "node_modules/zod": { + "version": "3.21.4", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.21.4.tgz", + "integrity": "sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==", + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + } + } +} diff --git a/examples/typescript-full-stack/apps/client/package.json b/examples/typescript-full-stack/apps/client/package.json new file mode 100644 index 0000000..4c2a600 --- /dev/null +++ b/examples/typescript-full-stack/apps/client/package.json @@ -0,0 +1,18 @@ +{ + "name": "client", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite --port 4000", + "build": "tsc && vite build", + "preview": "vite preview" + }, + "devDependencies": { + "typescript": "^5.0.2", + "vite": "^4.4.0" + }, + "dependencies": { + "@radixdlt/radix-dapp-toolkit": "0.6.1" + } +} diff --git a/examples/typescript-full-stack/apps/client/public/radix-icon_128x128.png b/examples/typescript-full-stack/apps/client/public/radix-icon_128x128.png new file mode 100644 index 0000000000000000000000000000000000000000..af4dd6aa3f523f2e9c50cf14fb6a1398f1e5a839 GIT binary patch literal 17909 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

d*Mr-u@NjmOHD3v}KG$wPz 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 literal 0 HcmV?d00001 diff --git a/examples/typescript-full-stack/apps/client/src/main.ts b/examples/typescript-full-stack/apps/client/src/main.ts new file mode 100644 index 0000000..239cd2b --- /dev/null +++ b/examples/typescript-full-stack/apps/client/src/main.ts @@ -0,0 +1,63 @@ +import "./style.css"; +import typescriptLogo from "./typescript.svg"; +import radixLogo from "/radix-icon_128x128.png"; +import { + DataRequestBuilder, + RadixDappToolkit, +} from "@radixdlt/radix-dapp-toolkit"; + +document.querySelector("#app")!.innerHTML = ` +

+ + + + + + +

Radix dApp Toolkit + TypeScript

+ +

+    

+ Click on the Radix and TypeScript logos to learn more +

+
+`; + +const radixDappToolkit = RadixDappToolkit({ + dAppDefinitionAddress: + "account_tdx_d_12xxwkx4fmz680e9wz8atdnyslr9vt7x9qvcfxhtqfnpfhxyjzwtyna", + networkId: 13, +}); + +// Clear the dApp state for example purposes +setTimeout(() => { + radixDappToolkit.disconnect(); +}); + +radixDappToolkit.walletApi.setRequestData( + DataRequestBuilder.persona().withProof(), + DataRequestBuilder.accounts().atLeast(1).withProof() +); + +const getChallenge: () => Promise = () => + fetch("http://localhost:3000/create-challenge") + .then((res) => res.json()) + .then((res) => res.challenge); + +radixDappToolkit.walletApi.provideChallengeGenerator(getChallenge); + +const rolaResultElement = document.getElementById("rola-result")!; + +radixDappToolkit.walletApi.dataRequestControl(async ({ proofs }) => { + const { valid } = await fetch("http://localhost:3000/verify", { + method: "POST", + body: JSON.stringify(proofs), + headers: { "content-type": "application/json" }, + }).then((res): Promise<{ valid: boolean }> => res.json()); + + rolaResultElement.innerHTML = JSON.stringify( + proofs.map((item) => ({ ...item, rolaVerified: valid })), + null, + 2 + ); +}); diff --git a/examples/typescript-full-stack/apps/client/src/style.css b/examples/typescript-full-stack/apps/client/src/style.css new file mode 100644 index 0000000..51a6ca1 --- /dev/null +++ b/examples/typescript-full-stack/apps/client/src/style.css @@ -0,0 +1,103 @@ +:root { + font-family: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif; + line-height: 1.5; + font-weight: 400; + + color-scheme: light dark; + color: rgba(255, 255, 255, 0.87); + background-color: #242424; + + font-synthesis: none; + text-rendering: optimizeLegibility; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + -webkit-text-size-adjust: 100%; +} + +a { + font-weight: 500; + color: #646cff; + text-decoration: inherit; +} +a:hover { + color: #535bf2; +} + +body { + margin: 0; + display: flex; + place-items: center; + min-width: 320px; + min-height: 100vh; +} + +h1 { + font-size: 3.2em; + line-height: 1.1; +} + +#app { + max-width: 1280px; + margin: 0 auto; + padding: 2rem; + text-align: center; +} + +.logo { + height: 6em; + padding: 1.5em; + will-change: filter; + transition: filter 300ms; +} +.logo:hover { + filter: drop-shadow(0 0 2em #646cffaa); +} +.logo.vanilla:hover { + filter: drop-shadow(0 0 2em #3178c6aa); +} + +.card { + padding: 2em; +} + +.read-the-docs { + color: #888; +} + +button { + border-radius: 8px; + border: 1px solid transparent; + padding: 0.6em 1.2em; + font-size: 1em; + font-weight: 500; + font-family: inherit; + background-color: #1a1a1a; + cursor: pointer; + transition: border-color 0.25s; +} +button:hover { + border-color: #646cff; +} +button:focus, +button:focus-visible { + outline: 4px auto -webkit-focus-ring-color; +} + +@media (prefers-color-scheme: light) { + :root { + color: #213547; + background-color: #ffffff; + } + a:hover { + color: #747bff; + } + button { + background-color: #f9f9f9; + } +} + +pre { + text-align: left; + background: black; + padding: 1rem; +} diff --git a/examples/typescript-full-stack/apps/client/src/typescript.svg b/examples/typescript-full-stack/apps/client/src/typescript.svg new file mode 100644 index 0000000..d91c910 --- /dev/null +++ b/examples/typescript-full-stack/apps/client/src/typescript.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/examples/typescript-full-stack/apps/client/src/vite-env.d.ts b/examples/typescript-full-stack/apps/client/src/vite-env.d.ts new file mode 100644 index 0000000..11f02fe --- /dev/null +++ b/examples/typescript-full-stack/apps/client/src/vite-env.d.ts @@ -0,0 +1 @@ +/// diff --git a/examples/typescript-full-stack/apps/client/tsconfig.json b/examples/typescript-full-stack/apps/client/tsconfig.json new file mode 100644 index 0000000..75abdef --- /dev/null +++ b/examples/typescript-full-stack/apps/client/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "target": "ES2020", + "useDefineForClassFields": true, + "module": "ESNext", + "lib": ["ES2020", "DOM", "DOM.Iterable"], + "skipLibCheck": true, + + /* Bundler mode */ + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "resolveJsonModule": true, + "isolatedModules": true, + "noEmit": true, + + /* Linting */ + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "noFallthroughCasesInSwitch": true + }, + "include": ["src"] +} diff --git a/examples/typescript-full-stack/apps/server/.gitignore b/examples/typescript-full-stack/apps/server/.gitignore new file mode 100644 index 0000000..0ca39c0 --- /dev/null +++ b/examples/typescript-full-stack/apps/server/.gitignore @@ -0,0 +1,3 @@ +node_modules +dist +.DS_Store diff --git a/examples/typescript-full-stack/apps/server/.prettierrc b/examples/typescript-full-stack/apps/server/.prettierrc new file mode 100644 index 0000000..096cc28 --- /dev/null +++ b/examples/typescript-full-stack/apps/server/.prettierrc @@ -0,0 +1,6 @@ +{ + "tabWidth": 2, + "useTabs": false, + "singleQuote": true, + "semi": false +} diff --git a/examples/typescript-full-stack/apps/server/nodemon.json b/examples/typescript-full-stack/apps/server/nodemon.json new file mode 100644 index 0000000..9e13b54 --- /dev/null +++ b/examples/typescript-full-stack/apps/server/nodemon.json @@ -0,0 +1,7 @@ +{ + "verbose": true, + "ignore": [], + "ext": "ts,json", + "exec": "node --experimental-specifier-resolution=node --loader ts-node/esm ./src/index.ts", + "watch": ["src/"] +} diff --git a/examples/typescript-full-stack/apps/server/package-lock.json b/examples/typescript-full-stack/apps/server/package-lock.json new file mode 100644 index 0000000..262a233 --- /dev/null +++ b/examples/typescript-full-stack/apps/server/package-lock.json @@ -0,0 +1,2031 @@ +{ + "name": "rola-example", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "rola-example", + "version": "0.0.0", + "license": "MIT", + "dependencies": { + "@radixdlt/radix-dapp-toolkit": "^0.3.0-dev-birch.5", + "@radixdlt/radix-engine-toolkit": "^0.2.0-ash.3", + "@types/cors": "^2.8.13", + "@types/elliptic": "^6.4.14", + "@types/express": "^4.17.17", + "cors": "^2.8.5", + "express": "^4.18.2", + "isomorphic-fetch": "^3.0.0", + "neverthrow": "^6.0.0", + "rxjs": "^7.8.1", + "zod": "^3.21.4" + }, + "devDependencies": { + "@swc/core": "^1.3.69", + "@types/isomorphic-fetch": "^0.0.36", + "@types/node": "^18.12.0", + "nodemon": "^3.0.1", + "ts-node": "^10.9.1", + "tslog": "^4.8.2", + "typescript": "^5.1.6" + }, + "engines": { + "node": ">=18.12.0" + } + }, + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "0.3.9" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", + "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "node_modules/@lit-labs/ssr-dom-shim": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@lit-labs/ssr-dom-shim/-/ssr-dom-shim-1.1.1.tgz", + "integrity": "sha512-kXOeFbfCm4fFf2A3WwVEeQj55tMZa8c8/f9AKHMobQMkzNUfUj+antR3fRPaZJawsa1aZiP/Da3ndpZrwEe4rQ==" + }, + "node_modules/@lit/reactive-element": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/@lit/reactive-element/-/reactive-element-1.6.2.tgz", + "integrity": "sha512-rDfl+QnCYjuIGf5xI2sVJWdYIi56CTCwWa+nidKYX6oIuBYwUbT/vX4qbUDlHiZKJ/3FRNQ/tWJui44p6/stSA==", + "dependencies": { + "@lit-labs/ssr-dom-shim": "^1.0.0" + } + }, + "node_modules/@noble/ed25519": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@noble/ed25519/-/ed25519-2.0.0.tgz", + "integrity": "sha512-/extjhkwFupyopDrt80OMWKdLgP429qLZj+z6sYJz90rF2Iz0gjZh2ArMKPImUl13Kx+0EXI2hN9T/KJV0/Zng==", + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ] + }, + "node_modules/@noble/hashes": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.0.tgz", + "integrity": "sha512-ilHEACi9DwqJB0pw7kv+Apvh50jiiSyR/cQ3y4W7lOR5mhvn/50FLUfsnfJz0BDZtl/RR16kXvptiv6q1msYZg==", + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ] + }, + "node_modules/@radixdlt/babylon-gateway-api-sdk": { + "version": "1.0.0-rc.2.2", + "resolved": "https://registry.npmjs.org/@radixdlt/babylon-gateway-api-sdk/-/babylon-gateway-api-sdk-1.0.0-rc.2.2.tgz", + "integrity": "sha512-fcLuAcW4/rJBLk9WGXhnNnJsV1Tt/mjh6S+weDUXUe1EI4wu7dtbHUNptS/wA0ykoLyAOfeMh4UPssrX5VRsyQ==" + }, + "node_modules/@radixdlt/connect-button": { + "version": "0.13.0-alpha.1", + "resolved": "https://registry.npmjs.org/@radixdlt/connect-button/-/connect-button-0.13.0-alpha.1.tgz", + "integrity": "sha512-vjKV6yEjABNn2SbC0X7jsFFnbkF6+0LUqbXBbGfzZcqmz57vwuinNVuHFImwU5YCLoRS7LuukOW9t2Vtsso1eQ==", + "dependencies": { + "lit": "^2.6.1", + "rxjs": "^7.8.0" + } + }, + "node_modules/@radixdlt/radix-dapp-toolkit": { + "version": "0.3.0-dev-birch.5", + "resolved": "https://registry.npmjs.org/@radixdlt/radix-dapp-toolkit/-/radix-dapp-toolkit-0.3.0-dev-birch.5.tgz", + "integrity": "sha512-88SI0W1sRVgRybflY/66tl/Y2Eq3anXrhJ1Xt61Wi8HkM1rHTismRPuJpnYnhxvX9A15VPueFlJYNDaJU55MMw==", + "dependencies": { + "@radixdlt/babylon-gateway-api-sdk": "^1.0.0-birch.1", + "@radixdlt/connect-button": "0.13.0-alpha.1", + "@radixdlt/radix-engine-toolkit": "^0.2.0-birch.2", + "@radixdlt/wallet-sdk": "0.9.0-alpha.10", + "lodash.isequal": "^4.5.0", + "neverthrow": "^6.0.0", + "rxjs": "^7.8.1", + "zod": "^3.21.4" + } + }, + "node_modules/@radixdlt/radix-engine-toolkit": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@radixdlt/radix-engine-toolkit/-/radix-engine-toolkit-0.2.1.tgz", + "integrity": "sha512-tjnW8O+5XzM02JSQdbR5Qiv+tX/YH8XcFlzkKbMYxHaDF9wME/2Kb0kjC1FhFoyCC2SwnWSbSEZnXXWvXBfb1w==", + "dependencies": { + "@noble/ed25519": "2.0.0", + "@noble/hashes": "1.3.0", + "@types/secp256k1": "4.0.3", + "@types/secure-random": "1.1.0", + "blakejs": "1.2.1", + "change-case": "4.1.2", + "class-transformer": "0.5.1", + "decimal.js": "10.4.3", + "reflect-metadata": "0.1.13", + "secp256k1": "5.0.0" + } + }, + "node_modules/@radixdlt/wallet-sdk": { + "version": "0.9.0-alpha.10", + "resolved": "https://registry.npmjs.org/@radixdlt/wallet-sdk/-/wallet-sdk-0.9.0-alpha.10.tgz", + "integrity": "sha512-V5qsrZpCQYJJ6/UrkPK2N9DcA3A7xInwt2Y9hBkHFz4sKL796stnrJId0fl8fyIfZeNJiWIhVX8DjBuqJu1ouA==", + "dependencies": { + "neverthrow": "^6.0.0", + "rxjs": "^7.8.1", + "tslog": "^4.8.2", + "zod": "^3.21.4" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@swc/core": { + "version": "1.3.69", + "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.3.69.tgz", + "integrity": "sha512-Khc/DE9D5+2tYTHgAIp5DZARbs8kldWg3b0Jp6l8FQLjelcLFmlQWSwKhVZrgv4oIbgZydIp8jInsvTalMHqnQ==", + "dev": true, + "hasInstallScript": true, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/swc" + }, + "optionalDependencies": { + "@swc/core-darwin-arm64": "1.3.69", + "@swc/core-darwin-x64": "1.3.69", + "@swc/core-linux-arm-gnueabihf": "1.3.69", + "@swc/core-linux-arm64-gnu": "1.3.69", + "@swc/core-linux-arm64-musl": "1.3.69", + "@swc/core-linux-x64-gnu": "1.3.69", + "@swc/core-linux-x64-musl": "1.3.69", + "@swc/core-win32-arm64-msvc": "1.3.69", + "@swc/core-win32-ia32-msvc": "1.3.69", + "@swc/core-win32-x64-msvc": "1.3.69" + }, + "peerDependencies": { + "@swc/helpers": "^0.5.0" + }, + "peerDependenciesMeta": { + "@swc/helpers": { + "optional": true + } + } + }, + "node_modules/@swc/core-darwin-arm64": { + "version": "1.3.69", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.69.tgz", + "integrity": "sha512-IjZTf12zIPWkV3D7toaLDoJPSkLhQ4fDH8G6/yCJUI27cBFOI3L8LXqptYmISoN5yYdrcnNpdqdapD09JPuNJg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-darwin-x64": { + "version": "1.3.69", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.3.69.tgz", + "integrity": "sha512-/wBO0Rn5oS5dJI/L9kJRkPAdksVwl5H9nleW/NM3A40N98VV8T7h/i1nO051mxIjq0R6qXVGOWFbBoLrPYucJg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm-gnueabihf": { + "version": "1.3.69", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.69.tgz", + "integrity": "sha512-NShCjMv6Xn8ckMKBRqmprXvUF14+jXY0TcNKXwjYErzoIUFOnG72M36HxT4QEeAtKZ4Eg4CZFE4zlJ27fDp1gg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm64-gnu": { + "version": "1.3.69", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.69.tgz", + "integrity": "sha512-VRPOJj4idopSHIj1bOVXX0SgaB18R8yZNunb7eXS5ZcjVxAcdvqyIz3RdQX1zaJFCGzcdPLzBRP32DZWWGE8Ng==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm64-musl": { + "version": "1.3.69", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.69.tgz", + "integrity": "sha512-QxeSiZqo5x1X8vq8oUWLibq+IZJcxl9vy0sLUmzdjF2b/Z+qxKP3gutxnb2tzJaHqPVBbEZaILERIGy1qWdumQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-x64-gnu": { + "version": "1.3.69", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.69.tgz", + "integrity": "sha512-b+DUlVxYox3BwD3PyTwhLvqtu6TYZtW+S6O0FnttH11o4skHN0XyJ/cUZSI0X2biSmfDsizRDUt1PWPFM+F7SA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-x64-musl": { + "version": "1.3.69", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.69.tgz", + "integrity": "sha512-QXjsI+f8n9XPZHUvmGgkABpzN4M9kdSbhqBOZmv3o0AsDGNCA4uVowQqgZoPFAqlJTpwHeDmrv5sQ13HN+LOGw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-arm64-msvc": { + "version": "1.3.69", + "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.69.tgz", + "integrity": "sha512-wn7A8Ws1fyviuCUB2Vg6IotiZeuqiO1Mz3d+YDae2EYyNpj1kNHvjBip8GHkfGzZG+jVrvG6NHsDo0KO/pGb8A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-ia32-msvc": { + "version": "1.3.69", + "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.69.tgz", + "integrity": "sha512-LsFBXtXqxEcVaaOGEZ9X3qdMzobVoJqKv8DnksuDsWcBk+9WCeTz2u/iB+7yZ2HGuPXkCqTRqhFo6FX9aC00kQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-x64-msvc": { + "version": "1.3.69", + "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.69.tgz", + "integrity": "sha512-ieBscU0gUgKjaseFI07tAaGqHvKyweNknPeSYEZOasVZUczhD6fK2GRnVREhv2RB2qdKC/VGFBsgRDMgzq1VLw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@tsconfig/node10": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", + "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", + "dev": true + }, + "node_modules/@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "dev": true + }, + "node_modules/@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "dev": true + }, + "node_modules/@tsconfig/node16": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", + "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", + "dev": true + }, + "node_modules/@types/bn.js": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.1.tgz", + "integrity": "sha512-qNrYbZqMx0uJAfKnKclPh+dTwK33KfLHYqtyODwd5HnXOjnkhc4qgn3BrK6RWyGZm5+sIFE7Q7Vz6QQtJB7w7g==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@types/connect": { + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", + "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/cors": { + "version": "2.8.13", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.13.tgz", + "integrity": "sha512-RG8AStHlUiV5ysZQKq97copd2UmVYw3/pRMLefISZ3S1hK104Cwm7iLQ3fTKx+lsUH2CE8FlLaYeEA2LSeqYUA==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/elliptic": { + "version": "6.4.14", + "resolved": "https://registry.npmjs.org/@types/elliptic/-/elliptic-6.4.14.tgz", + "integrity": "sha512-z4OBcDAU0GVwDTuwJzQCiL6188QvZMkvoERgcVjq0/mPM8jCfdwZ3x5zQEVoL9WCAru3aG5wl3Z5Ww5wBWn7ZQ==", + "dependencies": { + "@types/bn.js": "*" + } + }, + "node_modules/@types/express": { + "version": "4.17.17", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.17.tgz", + "integrity": "sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==", + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "node_modules/@types/express-serve-static-core": { + "version": "4.17.35", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.35.tgz", + "integrity": "sha512-wALWQwrgiB2AWTT91CB62b6Yt0sNHpznUXeZEcnPU3DRdlDIz74x8Qg1UUYKSVFi+va5vKOLYRBI1bRKiLLKIg==", + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" + } + }, + "node_modules/@types/http-errors": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.1.tgz", + "integrity": "sha512-/K3ds8TRAfBvi5vfjuz8y6+GiAYBZ0x4tXv1Av6CWBWn0IlADc+ZX9pMq7oU0fNQPnBwIZl3rmeLp6SBApbxSQ==" + }, + "node_modules/@types/isomorphic-fetch": { + "version": "0.0.36", + "resolved": "https://registry.npmjs.org/@types/isomorphic-fetch/-/isomorphic-fetch-0.0.36.tgz", + "integrity": "sha512-ulw4d+vW1HKn4oErSmNN2HYEcHGq0N1C5exlrMM0CRqX1UUpFhGb5lwiom5j9KN3LBJJDLRmYIZz1ghm7FIzZw==", + "dev": true + }, + "node_modules/@types/mime": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz", + "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==" + }, + "node_modules/@types/node": { + "version": "18.16.19", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.16.19.tgz", + "integrity": "sha512-IXl7o+R9iti9eBW4Wg2hx1xQDig183jj7YLn8F7udNceyfkbn1ZxmzZXuak20gR40D7pIkIY1kYGx5VIGbaHKA==" + }, + "node_modules/@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" + }, + "node_modules/@types/range-parser": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", + "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==" + }, + "node_modules/@types/secp256k1": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@types/secp256k1/-/secp256k1-4.0.3.tgz", + "integrity": "sha512-Da66lEIFeIz9ltsdMZcpQvmrmmoqrfju8pm1BH8WbYjZSwUgCwXLb9C+9XYogwBITnbsSaMdVPb2ekf7TV+03w==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/secure-random": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@types/secure-random/-/secure-random-1.1.0.tgz", + "integrity": "sha512-FVkD9qNAeuc1m53VQfWhuUdn9IWjv6griflGfLcSoF3ZexyNv1ciPlZLyrucWYcdhNjKERgDb45IJwb8a/ZKDQ==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/send": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.1.tgz", + "integrity": "sha512-Cwo8LE/0rnvX7kIIa3QHCkcuF21c05Ayb0ZfxPiv0W8VRiZiNW/WuRupHKpqqGVGf7SUA44QSOUKaEd9lIrd/Q==", + "dependencies": { + "@types/mime": "^1", + "@types/node": "*" + } + }, + "node_modules/@types/serve-static": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.2.tgz", + "integrity": "sha512-J2LqtvFYCzaj8pVYKw8klQXrLLk7TBZmQ4ShlcdkELFKGwGMfevMLneMMRkMgZxotOD9wg497LpC7O8PcvAmfw==", + "dependencies": { + "@types/http-errors": "*", + "@types/mime": "*", + "@types/node": "*" + } + }, + "node_modules/@types/trusted-types": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.3.tgz", + "integrity": "sha512-NfQ4gyz38SL8sDNrSixxU2Os1a5xcdFxipAFxYEuLUlvU2uDwS4NUpsImcf1//SlWItCVMMLiylsxbmNMToV/g==" + }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", + "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "dev": true + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/blakejs": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/blakejs/-/blakejs-1.2.1.tgz", + "integrity": "sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==" + }, + "node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/body-parser": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", + "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "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.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==" + }, + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/camel-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", + "dependencies": { + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" + } + }, + "node_modules/capital-case": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/capital-case/-/capital-case-1.0.4.tgz", + "integrity": "sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3", + "upper-case-first": "^2.0.2" + } + }, + "node_modules/change-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/change-case/-/change-case-4.1.2.tgz", + "integrity": "sha512-bSxY2ws9OtviILG1EiY5K7NNxkqg/JnRnFxLtKQ96JaviiIxi7djMrSd0ECT9AC+lttClmYwKw53BWpOMblo7A==", + "dependencies": { + "camel-case": "^4.1.2", + "capital-case": "^1.0.4", + "constant-case": "^3.0.4", + "dot-case": "^3.0.4", + "header-case": "^2.0.4", + "no-case": "^3.0.4", + "param-case": "^3.0.4", + "pascal-case": "^3.1.2", + "path-case": "^3.0.4", + "sentence-case": "^3.0.4", + "snake-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/class-transformer": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/class-transformer/-/class-transformer-0.5.1.tgz", + "integrity": "sha512-SQa1Ws6hUbfC98vKGxZH3KFY0Y1lm5Zm0SY8XX9zbK7FJCyVEac3ATW0RIpwzW+oOfmHE5PMPufDG9hCfoEOMw==" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/constant-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/constant-case/-/constant-case-3.0.4.tgz", + "integrity": "sha512-I2hSBi7Vvs7BEuJDr5dDHfzb/Ruj3FyvFyh7KLilAjNQw3Be+xgqUBA2W6scVEcL0hL1dwPRtIqEPVUCKkSsyQ==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3", + "upper-case": "^2.0.2" + } + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" + }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "dev": true + }, + "node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/decimal.js": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==" + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "dev": true, + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/dot-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" + }, + "node_modules/elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "dependencies": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/express": { + "version": "4.18.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", + "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.1", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.5.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "node_modules/get-intrinsic": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz", + "integrity": "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==", + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/has-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dependencies": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "node_modules/header-case": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/header-case/-/header-case-2.0.4.tgz", + "integrity": "sha512-H/vuk5TEEVZwrR0lp2zed9OCo1uAILMlx0JEMgC26rzyJJ3N1v6XkwHHXJQdR2doSjcGPM6OKPYoJgf0plJ11Q==", + "dependencies": { + "capital-case": "^1.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", + "dependencies": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ignore-by-default": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", + "integrity": "sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA==", + "dev": true + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/isomorphic-fetch": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-3.0.0.tgz", + "integrity": "sha512-qvUtwJ3j6qwsF3jLxkZ72qCgjMysPzDfeV240JHiGZsANBYd+EEuu35v7dfrJ9Up0Ak07D7GGSkGhCHTqg/5wA==", + "dependencies": { + "node-fetch": "^2.6.1", + "whatwg-fetch": "^3.4.1" + } + }, + "node_modules/lit": { + "version": "2.7.6", + "resolved": "https://registry.npmjs.org/lit/-/lit-2.7.6.tgz", + "integrity": "sha512-1amFHA7t4VaaDe+vdQejSVBklwtH9svGoG6/dZi9JhxtJBBlqY5D1RV7iLUYY0trCqQc4NfhYYZilZiVHt7Hxg==", + "dependencies": { + "@lit/reactive-element": "^1.6.0", + "lit-element": "^3.3.0", + "lit-html": "^2.7.0" + } + }, + "node_modules/lit-element": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/lit-element/-/lit-element-3.3.2.tgz", + "integrity": "sha512-xXAeVWKGr4/njq0rGC9dethMnYCq5hpKYrgQZYTzawt9YQhMiXfD+T1RgrdY3NamOxwq2aXlb0vOI6e29CKgVQ==", + "dependencies": { + "@lit-labs/ssr-dom-shim": "^1.1.0", + "@lit/reactive-element": "^1.3.0", + "lit-html": "^2.7.0" + } + }, + "node_modules/lit-html": { + "version": "2.7.5", + "resolved": "https://registry.npmjs.org/lit-html/-/lit-html-2.7.5.tgz", + "integrity": "sha512-YqUzpisJodwKIlbMFCtyrp58oLloKGnnPLMJ1t23cbfIJjg/H9pvLWK4XS69YeubK5HUs1UE4ys9w5dP1zg6IA==", + "dependencies": { + "@types/trusted-types": "^2.0.2" + } + }, + "node_modules/lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==" + }, + "node_modules/lower-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, + "node_modules/minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==" + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/neverthrow": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/neverthrow/-/neverthrow-6.0.0.tgz", + "integrity": "sha512-kPZKRs4VkdloCGQXPoP84q4sT/1Z+lYM61AXyV8wWa2hnuo5KpPBF2S3crSFnMrOgUISmEBP8Vo/ngGZX60NhA==" + }, + "node_modules/no-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", + "dependencies": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + } + }, + "node_modules/node-addon-api": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz", + "integrity": "sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==" + }, + "node_modules/node-fetch": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.12.tgz", + "integrity": "sha512-C/fGU2E8ToujUivIO0H+tpQ6HWo4eEmchoPIoXtxCrVghxdKq+QOHqEZW7tuP3KlV3bC8FRMO5nMCC7Zm1VP6g==", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/node-gyp-build": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.6.0.tgz", + "integrity": "sha512-NTZVKn9IylLwUzaKjkas1e4u2DLNcV4rdYagA4PWdPwW87Bi7z+BznyKSRwS/761tV/lzCGXplWsiaMjLqP2zQ==", + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" + } + }, + "node_modules/nodemon": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-3.0.1.tgz", + "integrity": "sha512-g9AZ7HmkhQkqXkRc20w+ZfQ73cHLbE8hnPbtaFbFtCumZsjyMhKk9LajQ07U5Ux28lvFjZ5X7HvWR1xzU8jHVw==", + "dev": true, + "dependencies": { + "chokidar": "^3.5.2", + "debug": "^3.2.7", + "ignore-by-default": "^1.0.1", + "minimatch": "^3.1.2", + "pstree.remy": "^1.1.8", + "semver": "^7.5.3", + "simple-update-notifier": "^2.0.0", + "supports-color": "^5.5.0", + "touch": "^3.1.0", + "undefsafe": "^2.0.5" + }, + "bin": { + "nodemon": "bin/nodemon.js" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/nodemon" + } + }, + "node_modules/nopt": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz", + "integrity": "sha512-NWmpvLSqUrgrAC9HCuxEvb+PSloHpqVu+FqcO4eeF2h5qYRhA7ev6KvelyQAKtegUbC6RypJnlEOhd8vloNKYg==", + "dev": true, + "dependencies": { + "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "*" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", + "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/param-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", + "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/pascal-case": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", + "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/path-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/path-case/-/path-case-3.0.4.tgz", + "integrity": "sha512-qO4qCFjXqVTrcbPt/hQfhTQ+VhFsqNKOPtytgNKkKxSoEp3XPUQ8ObFuePylOIok5gjn69ry8XiULxCwot3Wfg==", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/pstree.remy": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.8.tgz", + "integrity": "sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==", + "dev": true + }, + "node_modules/qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/reflect-metadata": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", + "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==" + }, + "node_modules/rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/secp256k1": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-5.0.0.tgz", + "integrity": "sha512-TKWX8xvoGHrxVdqbYeZM9w+izTF4b9z3NhSaDkdn81btvuh+ivbIMGT/zQvDtTFWhRlThpoz6LEYTr7n8A5GcA==", + "hasInstallScript": true, + "dependencies": { + "elliptic": "^6.5.4", + "node-addon-api": "^5.0.0", + "node-gyp-build": "^4.2.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/sentence-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/sentence-case/-/sentence-case-3.0.4.tgz", + "integrity": "sha512-8LS0JInaQMCRoQ7YUytAo/xUu5W2XnQxV2HI/6uM6U7CITS1RqPElr30V6uIqyMKM9lJGRVFy5/4CuzcixNYSg==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3", + "upper-case-first": "^2.0.2" + } + }, + "node_modules/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/simple-update-notifier": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/simple-update-notifier/-/simple-update-notifier-2.0.0.tgz", + "integrity": "sha512-a2B9Y0KlNXl9u/vsW6sTIu9vGEpfKu2wRV6l1H3XEas/0gUIzGzBoP/IouTcUQbm9JWZLH3COxyn03TYlFax6w==", + "dev": true, + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/snake-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/snake-case/-/snake-case-3.0.4.tgz", + "integrity": "sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/touch": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/touch/-/touch-3.1.0.tgz", + "integrity": "sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA==", + "dev": true, + "dependencies": { + "nopt": "~1.0.10" + }, + "bin": { + "nodetouch": "bin/nodetouch.js" + } + }, + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "node_modules/ts-node": { + "version": "10.9.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", + "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", + "dev": true, + "dependencies": { + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" + }, + "bin": { + "ts-node": "dist/bin.js", + "ts-node-cwd": "dist/bin-cwd.js", + "ts-node-esm": "dist/bin-esm.js", + "ts-node-script": "dist/bin-script.js", + "ts-node-transpile-only": "dist/bin-transpile.js", + "ts-script": "dist/bin-script-deprecated.js" + }, + "peerDependencies": { + "@swc/core": ">=1.2.50", + "@swc/wasm": ">=1.2.50", + "@types/node": "*", + "typescript": ">=2.7" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "@swc/wasm": { + "optional": true + } + } + }, + "node_modules/tslib": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.0.tgz", + "integrity": "sha512-7At1WUettjcSRHXCyYtTselblcHl9PJFFVKiCAy/bY97+BPZXSQ2wbq0P9s8tK2G7dFQfNnlJnPAiArVBVBsfA==" + }, + "node_modules/tslog": { + "version": "4.8.2", + "resolved": "https://registry.npmjs.org/tslog/-/tslog-4.8.2.tgz", + "integrity": "sha512-eAKIRjxfSKYLs06r1wT7oou6Uv9VN6NW9g0JPidBlqQwPBBl5+84dm7r8zSOPVq1kyfEw1P6B3/FLSpZCorAgA==", + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/fullstack-build/tslog?sponsor=1" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typescript": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz", + "integrity": "sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/undefsafe": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.5.tgz", + "integrity": "sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==", + "dev": true + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/upper-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-2.0.2.tgz", + "integrity": "sha512-KgdgDGJt2TpuwBUIjgG6lzw2GWFRCW9Qkfkiv0DxqHHLYJHmtmdUIKcZd8rHgFSjopVTlw6ggzCm1b8MFQwikg==", + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/upper-case-first": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/upper-case-first/-/upper-case-first-2.0.2.tgz", + "integrity": "sha512-514ppYHBaKwfJRK/pNC6c/OxfGa0obSnAl106u97Ed0I625Nin96KAjttZF6ZL3e1XLtphxnqrOi9iWgm+u+bg==", + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "dev": true + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "node_modules/whatwg-fetch": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz", + "integrity": "sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA==" + }, + "node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/zod": { + "version": "3.21.4", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.21.4.tgz", + "integrity": "sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==", + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + } + } +} diff --git a/examples/typescript-full-stack/apps/server/package.json b/examples/typescript-full-stack/apps/server/package.json new file mode 100644 index 0000000..0aedae8 --- /dev/null +++ b/examples/typescript-full-stack/apps/server/package.json @@ -0,0 +1,28 @@ +{ + "name": "server", + "version": "0.0.0", + "main": "index.js", + "type": "module", + "scripts": { + "dev": "nodemon", + "build": "tsc" + }, + "license": "MIT", + "dependencies": { + "@radixdlt/radix-dapp-toolkit": "0.6.1", + "@radixdlt/radix-engine-toolkit": "0.3.0", + "@types/cors": "^2.8.13", + "@types/elliptic": "^6.4.14", + "@types/express": "^4.17.17", + "cors": "^2.8.5", + "express": "^4.18.2", + "neverthrow": "^6.0.0" + }, + "devDependencies": { + "@swc/core": "^1.3.70", + "@types/node": "^18.12.0", + "nodemon": "^3.0.1", + "ts-node": "^10.9.1", + "typescript": "^5.1.6" + } +} diff --git a/examples/typescript-full-stack/apps/server/src/index.ts b/examples/typescript-full-stack/apps/server/src/index.ts new file mode 100644 index 0000000..349f20e --- /dev/null +++ b/examples/typescript-full-stack/apps/server/src/index.ts @@ -0,0 +1,82 @@ +import express from 'express' +import { secureRandom } from './rola/crypto/secure-random' +import { SignedChallenge } from '@radixdlt/radix-dapp-toolkit' +import { RolaFactory } from './rola/rola' +import cors from 'cors' +import { GatewayService } from './rola/gateway' +import { ResultAsync } from 'neverthrow' + +const app = express() +app.use(cors()) +app.use(express.json()) + +const port = 3000 + +// A simple in-memory store for challenges. A database should be used in production. +const ChallengeStore = () => { + const challenges = new Map() + + const create = () => { + const challenge = secureRandom(32) // 32 random bytes as hex string + const expires = Date.now() + 1000 * 60 * 5 // expires in 5 minutes + challenges.set(challenge, { expires }) // store challenge with expiration + + return challenge + } + + const verify = (input: string) => { + const challenge = challenges.get(input) + + if (!challenge) return false + + challenges.delete(input) // remove challenge after it has been used + const isValid = challenge.expires > Date.now() // check if challenge has expired + + return isValid + } + + return { create, verify } +} + +const challengeStore = ChallengeStore() + +const rola = RolaFactory({ + gatewayService: GatewayService('https://ansharnet-gateway.radixdlt.com'), // gateway service to query the ledger + dAppDefinitionAddress: + 'account_tdx_d_12xxwkx4fmz680e9wz8atdnyslr9vt7x9qvcfxhtqfnpfhxyjzwtyna', // address of the dApp definition + networkId: 13, // network id of the Radix network + expectedOrigin: 'http://localhost:4000', // origin of the client making the wallet request +}) + +app.get('/create-challenge', (req, res) => { + res.send({ challenge: challengeStore.create() }) +}) + +app.post<{}, { valid: boolean }, SignedChallenge[]>( + '/verify', + async (req, res) => { + const challenges = [ + ...req.body + .reduce((acc, curr) => acc.add(curr.challenge), new Set()) + .values(), + ] + const isChallengeValid = challenges.every((challenge) => + challengeStore.verify(challenge) + ) + + if (!isChallengeValid) return res.send({ valid: false }) + + const result = await ResultAsync.combine( + req.body.map((signedChallenge) => rola(signedChallenge)) + ) + + if (result.isErr()) return res.send({ valid: false }) + + // The signature is valid and the public key is owned by the user + res.send({ valid: true }) + } +) + +app.listen(port, () => { + console.log(`server listening on port http://localhost:${port}`) +}) diff --git a/examples/typescript-full-stack/apps/server/src/rola/crypto/blake2b.ts b/examples/typescript-full-stack/apps/server/src/rola/crypto/blake2b.ts new file mode 100644 index 0000000..692cc83 --- /dev/null +++ b/examples/typescript-full-stack/apps/server/src/rola/crypto/blake2b.ts @@ -0,0 +1,25 @@ +import { Result, err, ok } from 'neverthrow' +import blake from 'blakejs' +import { Buffer } from 'buffer' + +const toArrayBuffer = (buffer: Buffer): ArrayBuffer => { + const arrayBuffer = new ArrayBuffer(buffer.length) + const view = new Uint8Array(arrayBuffer) + for (let i = 0; i < buffer.length; ++i) { + view[i] = buffer[i] + } + return arrayBuffer +} + +const bufferToUnit8Array = (buffer: Buffer): Uint8Array => + new Uint8Array(toArrayBuffer(buffer)) + +export const blake2b = (input: Buffer): Result => { + try { + return ok(blake.blake2bHex(bufferToUnit8Array(input), undefined, 32)).map( + (hex) => Buffer.from(hex, 'hex') + ) + } catch (error) { + return err(error as Error) + } +} diff --git a/examples/typescript-full-stack/apps/server/src/rola/crypto/curve25519.ts b/examples/typescript-full-stack/apps/server/src/rola/crypto/curve25519.ts new file mode 100644 index 0000000..6fae341 --- /dev/null +++ b/examples/typescript-full-stack/apps/server/src/rola/crypto/curve25519.ts @@ -0,0 +1,3 @@ +import ec from 'elliptic' + +export const curve25519 = new ec.eddsa('ed25519') diff --git a/examples/typescript-full-stack/apps/server/src/rola/crypto/secp256k1.ts b/examples/typescript-full-stack/apps/server/src/rola/crypto/secp256k1.ts new file mode 100644 index 0000000..41cb5cf --- /dev/null +++ b/examples/typescript-full-stack/apps/server/src/rola/crypto/secp256k1.ts @@ -0,0 +1,3 @@ +import Elliptic from 'elliptic' + +export const secp256k1 = new Elliptic.ec('secp256k1') diff --git a/examples/typescript-full-stack/apps/server/src/rola/crypto/secure-random.ts b/examples/typescript-full-stack/apps/server/src/rola/crypto/secure-random.ts new file mode 100644 index 0000000..0dae9a5 --- /dev/null +++ b/examples/typescript-full-stack/apps/server/src/rola/crypto/secure-random.ts @@ -0,0 +1,4 @@ +import crypto from 'node:crypto' + +export const secureRandom = (byteCount: number): string => + crypto.randomBytes(byteCount).toString('hex') diff --git a/examples/typescript-full-stack/apps/server/src/rola/gateway.ts b/examples/typescript-full-stack/apps/server/src/rola/gateway.ts new file mode 100644 index 0000000..7275cff --- /dev/null +++ b/examples/typescript-full-stack/apps/server/src/rola/gateway.ts @@ -0,0 +1,24 @@ +export type GatewayService = ReturnType +import { GatewayApiClient } from '@radixdlt/babylon-gateway-api-sdk' +import { ResultAsync } from 'neverthrow' + +export const GatewayService = (basePath: string) => { + const { state } = GatewayApiClient.initialize({ + basePath, + }) + + const getEntityDetails = (address: string) => + ResultAsync.fromPromise( + state.getEntityDetailsVaultAggregated(address), + (e: unknown) => e as Error + ) + + return { + getEntityOwnerKeys: (address: string) => + getEntityDetails(address).map( + (response) => + response?.metadata?.items.find((item) => item.key === 'owner_keys') + ?.value.raw_hex ?? '' + ), + } +} diff --git a/examples/typescript-full-stack/apps/server/src/rola/helpers/create-public-key-hash.ts b/examples/typescript-full-stack/apps/server/src/rola/helpers/create-public-key-hash.ts new file mode 100644 index 0000000..4e40db6 --- /dev/null +++ b/examples/typescript-full-stack/apps/server/src/rola/helpers/create-public-key-hash.ts @@ -0,0 +1,12 @@ +import { Buffer } from 'buffer' +import { blake2b } from '../crypto/blake2b' +import { Result } from 'neverthrow' + +type HexEncodedPublicKeyHash = string + +export const createPublicKeyHash = ( + publicKey: string +): Result => + blake2b(Buffer.from(publicKey, 'hex')) + .map((hash) => hash.subarray(-29)) + .map((hash) => Buffer.from(hash).toString('hex')) diff --git a/examples/typescript-full-stack/apps/server/src/rola/helpers/create-signature-message.ts b/examples/typescript-full-stack/apps/server/src/rola/helpers/create-signature-message.ts new file mode 100644 index 0000000..29cfe87 --- /dev/null +++ b/examples/typescript-full-stack/apps/server/src/rola/helpers/create-signature-message.ts @@ -0,0 +1,35 @@ +import { Buffer } from 'buffer' +import type { Result } from 'neverthrow' +import { blake2b } from '../crypto/blake2b' + +export const createSignatureMessage = ({ + challenge, + dAppDefinitionAddress, + origin, +}: { + challenge: string + dAppDefinitionAddress: string + origin: string +}): Result => { + const prefix = Buffer.from('R', 'ascii') + const lengthOfDappDefAddress = dAppDefinitionAddress.length + const lengthOfDappDefAddressBuffer = Buffer.from( + lengthOfDappDefAddress.toString(16), + 'hex' + ) + const dappDefAddressBuffer = Buffer.from(dAppDefinitionAddress, 'utf-8') + const originBuffer = Buffer.from(origin, 'utf-8') + const challengeBuffer = Buffer.from(challenge, 'hex') + + const messageBuffer = Buffer.concat([ + prefix, + challengeBuffer, + lengthOfDappDefAddressBuffer, + dappDefAddressBuffer, + originBuffer, + ]) + + return blake2b(messageBuffer) + .map((hash) => Buffer.from(hash).toString('hex')) + .mapErr((jsError) => ({ reason: 'couldNotHashMessage', jsError })) +} diff --git a/examples/typescript-full-stack/apps/server/src/rola/helpers/derive-address-from-public-key.ts b/examples/typescript-full-stack/apps/server/src/rola/helpers/derive-address-from-public-key.ts new file mode 100644 index 0000000..d655453 --- /dev/null +++ b/examples/typescript-full-stack/apps/server/src/rola/helpers/derive-address-from-public-key.ts @@ -0,0 +1,65 @@ +import { SignedChallenge } from '@radixdlt/radix-dapp-toolkit' +import { ManifestAstValue, PublicKey } from '@radixdlt/radix-engine-toolkit' +import { ResultAsync, errAsync } from 'neverthrow' + +const deriveVirtualIdentityAddress = (publicKey: string, networkId: number) => + ResultAsync.fromPromise( + ManifestAstValue.Address.virtualIdentityAddress( + new PublicKey.Ed25519(publicKey), + networkId /* The ID of the network to derive the address for. */ + ), + (error: any): Error => error + ) + +const deriveVirtualEddsaEd25519AccountAddress = ( + publicKey: string, + networkId: number +) => + ResultAsync.fromPromise( + ManifestAstValue.Address.virtualAccountAddress( + new PublicKey.Ed25519(publicKey), + networkId /* The ID of the network to derive the address for. */ + ), + (error: any): Error => error + ) + +const deriveVirtualEcdsaSecp256k1AccountAddress = ( + publicKey: string, + networkId: number +) => + ResultAsync.fromPromise( + ManifestAstValue.Address.virtualAccountAddress( + new PublicKey.Secp256k1(publicKey), + networkId /* The ID of the network to derive the address for. */ + ), + (error: any): Error => error + ) + +export const deriveVirtualAddress = ( + signedChallenge: SignedChallenge, + networkId: number +) => { + if (signedChallenge.type === 'persona') + return deriveVirtualIdentityAddress( + signedChallenge.proof.publicKey, + networkId + ) + else if ( + signedChallenge.type === 'account' && + signedChallenge.proof.curve === 'curve25519' + ) + return deriveVirtualEddsaEd25519AccountAddress( + signedChallenge.proof.publicKey, + networkId + ) + else if ( + signedChallenge.type === 'account' && + signedChallenge.proof.curve === 'secp256k1' + ) + return deriveVirtualEcdsaSecp256k1AccountAddress( + signedChallenge.proof.publicKey, + networkId + ) + + return errAsync(new Error('Could not derive virtual address')) +} diff --git a/examples/typescript-full-stack/apps/server/src/rola/helpers/verify-proof.ts b/examples/typescript-full-stack/apps/server/src/rola/helpers/verify-proof.ts new file mode 100644 index 0000000..2142725 --- /dev/null +++ b/examples/typescript-full-stack/apps/server/src/rola/helpers/verify-proof.ts @@ -0,0 +1,40 @@ +import { Result, err, ok } from 'neverthrow' +import { curve25519 } from '../crypto/curve25519' +import { secp256k1 } from '../crypto/secp256k1' +import { SignedChallenge } from '@radixdlt/radix-dapp-toolkit' + +const supportedCurves = new Set(['curve25519', 'secp256k1']) + +export const verifyProofFactory = + (input: SignedChallenge) => + ( + signatureMessageHex: string + ): Result => { + const isSupportedCurve = supportedCurves.has(input.proof.curve) + if (!isSupportedCurve) return err({ reason: 'unsupportedCurve' }) + + try { + let isValid = false + + if (input.proof.curve === 'curve25519') { + const publicKey = curve25519.keyFromPublic( + input.proof.publicKey, + // @ts-ignore: incorrect type definition in EC lib + 'hex' + ) + isValid = publicKey.verify(signatureMessageHex, input.proof.signature) + } else { + const signature = Buffer.from(input.proof.signature, 'hex') + .toJSON() + .data.slice(1) + const r = signature.slice(0, 32) + const s = signature.slice(32, 64) + isValid = secp256k1 + .keyFromPublic(input.proof.publicKey, 'hex') + .verify(signatureMessageHex, { r, s }) + } + return isValid ? ok(undefined) : err({ reason: 'invalidSignature' }) + } catch (error: any) { + return err({ reason: 'invalidPublicKey', jsError: error }) + } + } diff --git a/examples/typescript-full-stack/apps/server/src/rola/rola.ts b/examples/typescript-full-stack/apps/server/src/rola/rola.ts new file mode 100644 index 0000000..90460ba --- /dev/null +++ b/examples/typescript-full-stack/apps/server/src/rola/rola.ts @@ -0,0 +1,80 @@ +import { ResultAsync, err, errAsync, ok } from 'neverthrow' +import { createSignatureMessage } from './helpers/create-signature-message' +import { verifyProofFactory } from './helpers/verify-proof' +import { deriveVirtualAddress } from './helpers/derive-address-from-public-key' +import { GatewayService } from './gateway' +import { createPublicKeyHash } from './helpers/create-public-key-hash' +import { SignedChallenge } from '@radixdlt/radix-dapp-toolkit' + +export type RolaError = { reason: string; jsError?: Error } + +export type VerifyOwnerKeyOnLedgerFn = ( + address: string, + publicKeyHex: string +) => ResultAsync + +export const RolaFactory = + ({ + gatewayService, + expectedOrigin, + dAppDefinitionAddress, + networkId, + }: { + gatewayService: GatewayService + expectedOrigin: string + dAppDefinitionAddress: string + networkId: number + }) => + (signedChallenge: SignedChallenge): ResultAsync => { + const result = createPublicKeyHash(signedChallenge.proof.publicKey) + + if (result.isErr()) return errAsync({ reason: 'couldNotHashPublicKey' }) + + const hashedPublicKey = result.value + + const verifyProof = verifyProofFactory(signedChallenge) + + const getDerivedAddress = () => + deriveVirtualAddress(signedChallenge, networkId) + .map(({ value }) => value) + .mapErr((jsError) => ({ + reason: 'couldNotDeriveAddressFromPublicKey', + jsError, + })) + + const queryLedger = () => + gatewayService + .getEntityOwnerKeys(signedChallenge.address) + .mapErr(() => ({ reason: 'couldNotVerifyPublicKeyOnLedger' })) + .map((ownerKeys) => ({ + ownerKeysMatchesProvidedPublicKey: ownerKeys + .toUpperCase() + .includes(hashedPublicKey.toUpperCase()), + ownerKeysSet: !!ownerKeys, + })) + + const deriveAddressFromPublicKeyAndQueryLedger = () => + ResultAsync.combine([getDerivedAddress(), queryLedger()]) + + return createSignatureMessage({ + dAppDefinitionAddress, + origin: expectedOrigin, + challenge: signedChallenge.challenge, + }) + .andThen(verifyProof) + .asyncAndThen(deriveAddressFromPublicKeyAndQueryLedger) + .andThen( + ([ + derivedAddress, + { ownerKeysMatchesProvidedPublicKey, ownerKeysSet }, + ]) => { + const derivedAddressMatchesPublicKey = + !ownerKeysSet && derivedAddress === signedChallenge.address + + return ownerKeysMatchesProvidedPublicKey || + derivedAddressMatchesPublicKey + ? ok(undefined) + : err({ reason: 'invalidPublicKey' }) + } + ) + } diff --git a/examples/typescript-full-stack/apps/server/tsconfig.json b/examples/typescript-full-stack/apps/server/tsconfig.json new file mode 100644 index 0000000..7a73d34 --- /dev/null +++ b/examples/typescript-full-stack/apps/server/tsconfig.json @@ -0,0 +1,19 @@ +{ + "extends": "ts-node/node16/tsconfig.json", + "ts-node": { + "swc": true, + "transpileOnly": true, + "files": true, + "esm": true + }, + "compilerOptions": { + "target": "ESNext", + "moduleResolution": "node", + "esModuleInterop": true, + "forceConsistentCasingInFileNames": true, + "strict": true, + "skipLibCheck": true, + "outDir": "dist", + "sourceMap": true + } +} diff --git a/examples/typescript-full-stack/docs/rola-flow.png b/examples/typescript-full-stack/docs/rola-flow.png new file mode 100644 index 0000000000000000000000000000000000000000..4ae248836a8a8350b951f24d7e1e491cc32eaf26 GIT binary patch literal 157452 zcmeFac{r49`v;zhvQ$JUDJ02cX_I7|REjKvk*uR6Wr@hnFh$y=gzTnlV-Lv|qeY9g zvSlY*_T6C2%fsWLQ@7SU+ZcXm7Z2TRBVW<}e&f*5b==qYokEm+yI0N1r-qP8 z+|{V#d{Rfp;Yyd+(yV-kk8;Xz<2?`Z?Bd*D^FmzNOnMFc8s$$2lAIDhf15%g}64u=P+ttC>5y+-rZ13lvP-mE!!ZKd25&xw$ zjIVQ{bJqM$Zs?o2?5xBK{j!JuKz2XBJFn5)BXH3&Y0ie`2&Ek z63?#w6KoinG}51PL-_FQ(&E$GPURwLa% zaY?%|-Lsoq`q^*y3AnL~Ht+nE4Kr4*R=1esszM(PdGan&|3FRH?~NaQ1Lb5PCVMu- z6Sw|@%^xhm^}V?BXjmE3qq4!ve1G7BQ5^`|wFXV=qcSK<9T#cc%7-@8tf8NxPD zyI3}kn5*r6p|Lq@skpe6VEp?ZmU}awS)Y+HTWs)VXHIhkj->Ck6muZ{P_)GF_iEve z4?~ExNpDpUpQnVC;l%lN8qHI_7QHzj@bLGVL=l3^a|!B_{<*W{oK@-vy`7e3hv?aL z_hOFy4i>7bJC2RzmIz0fEuUWzGf@7q?9FlDB& zlo(OMmjahs(cj~xLFAbff%}fK;VG;4^kq|~Fa!FGS&B|P?aVez+8=>I^qFmQmh~u? zhLLkI(cQh3#@M;MD=4d}rA+J;IEQo>?Hzw~4q^mu z_D+e!+*t`^DpMGI2yQOu)R5on5CR^AoziXBB}|SN?gL!SZyljy5am(XB z*t&%$-mJvchZ6bh;}IP+TR=81x@Bs_N45L}%4+EZ0r3atuMMAnq;mk~1+Js+Y0M>* z*wUOb0x54|Yxf5~--6h)2BVtOb`1HEDXeDIU2$S)4j1O=pUCXEi@<%86aUDiY#_xA z)h~f1ixNW8^WTa6{=h>ShSw@V%w4D};8Qw1An#u0^y{97xMYvCXN|n3OA+)wokz3({%690*m}y>L8?arJC(;8Z|Cz$8y`C9rGx(XS>2NR_o*a1?=5DGYNLWrN8R~DDFuP( z7uwE7sQ%Fj?RaHskg9#?iQlVVc&}f1xSz&m`w@Np7i;zT=;Wq!cH+8EtB?KA(J%BE z#m9xdTwJ>AC>ZYTc!o5G)-gEYQ=OjiE)uq&Shg-Jab#q#@99-j;{`KT+| zA2X(!HgAewDLIXr|vIgm4*@n#papPJbZR z5RfZ*0?+=7bNcZoEe=-V!4C6Be-P3%WrPX)eK;|{w?VE;#wb+M(0r8O@8z=a1ab{| z{gFee2S=+_(A@W9^S@9V1_-aH!7mhN( zdw-k4i^aju2`3L=KTjUDpwp<cm0f>UueAWz(9>6JK*R(=etNQsxi z`F=bh)4p6MUG&{6>Q48S~{qo#mllrc&MQh}RNx*&B59Q%QkU7ePkl>RWT=0-ozg z(agBlq3mK=LWuFZt>!NM16o9O?HO&OR3T@0krz6?Hi2&Y?_$#0Qnerj0MpqLQM{NIc((&p9SB7*+C2 zLp@zp>KEyVB?oKDJt^hRIe*N%yzL_z2&AQYi8c=+iCO=JC41VzoR^x{VWne4xeif# z4qy9@mX+OeEe=5;PjtmBKnEN^lA%p_*hI)eIaRfK_xH~U))S4dyS6dg@J({+%ev`| zfen0+;Tm_jQaqHr%`(^+Ao*WCP1i4rqs4OS!#~YHC8p8}SOc7V{ZC6UPx)0a(@q#5HV*My_9?zG9 zY2Skf_I=(`t%tH&qjji)hR6rf)S=NyzICxHrR}JsaLjqD=R1TGzi5cpz`dVZvF@^( z)=LJ$itADDM_Z=$Y#L4yW_(-BryVn#xLem)y3v7u?-9H{Mt zx8*pOZ0q{kP?bZ{^I0T69glrZ{xF;x?Y=x zzb5;_!JtmsZkP}*B23Uz6M~9ud@76Ll-uwIO*bDhqP~UG#fmBH$<84C{PI{g-=`%b zmSl`lput^!JtKq4krhA)gO1I%=aSvWg2GE|uK+nBvO%5V?WGbJS>hXg>~Rf5+Fb>C zd!cT6_N2<;G*TV{IY<7qj+Ep?}~KnmP*!Ea&9nBf$B977)K*c#`1l%KZl z{pw(P<3ODmcF9I2r^AJ3kO!I1oXyNRU0i?Ge=@Sh!|1qtC>ncGQ?E7}b9qaQWc-YlTT zi%xxVy2^GF8hDb64}|x=cdWdA`jptYp2G|lxB8Stqi=WNq8Dwc#iG(Rjtgxhm*`Yw zLYlGLYejJvTD=Hhc=fo7wMV|CudMJ=G@CYCd$zP25& zmRmPD(wi<~Ywkd23_5ukdzxxTfDLzbxVG7kX;0!mP0ioq=U6dLR zIyKcqp&3cg^X04|1o}BvKDspFUNzSt#$Wm@@TvaFZsb|t((smHj+L(^0HuJoYRSU?jWe>nn?*WplZBm9}6F=5$ z-Yc-xThgehn5jY`&o~y zyh;2!Qw4`kAm}9%VOM(7{Af*<3y?n3?dvjF8YQ0{js z>5C+3`mS~4)pK($wiS%?uw`XUd7INYnYO3IHXCQP9ALge)K#kqzvvDA_5y5_(2M6kH4*-I&Jcju^ z*}*w?Z}U9x2KmkU2LMfs5(3-3@24Tu=v2EAEs?@6kKBm<_{66A8?&O4)m->OT6|;X zO9mxeeH2K{xduWUg#H8niT-1Utu~}D4mrc$6{Lal;|}gL z7PEzxA@}Yn((o1PH*8kLwGP|5k3gJBic&dXGsu9!xE@WM`Y9OmH7j`9y6867bj1Xlf-b+=Y+=DuaWU=o#H zRILNtTy^%~MNME}@~nkWI2u$qNp_eSD~$vPVUf;w=J?zWf}R`wd?N?(t^abF4G31W zv6)R_G}l^2_eF{g7?V^@qv?P+(Ahw<^MPGJWr6@QHBYK$ViPC@E2#w_z2aq|{1b}C z;}aRy;xQqeI2~Pexq}Eec_5mBEj4r=os;32

aL3w`)}H?WF|tf+d`a%yxw9HWi` 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

  • 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�L9(Rhn#L0< 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

    UZisVxu+DB({3 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 literal 0 HcmV?d00001 diff --git a/examples/typescript-full-stack/package-lock.json b/examples/typescript-full-stack/package-lock.json new file mode 100644 index 0000000..ebbfec5 --- /dev/null +++ b/examples/typescript-full-stack/package-lock.json @@ -0,0 +1,2635 @@ +{ + "name": "rola-examples", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "workspaces": [ + "apps/**" + ], + "devDependencies": { + "turbo": "latest" + }, + "engines": { + "node": ">=18.12.0" + } + }, + "apps/client": { + "version": "0.0.0", + "dependencies": { + "@radixdlt/radix-dapp-toolkit": "0.6.1" + }, + "devDependencies": { + "typescript": "^5.0.2", + "vite": "^4.4.0" + } + }, + "apps/client/node_modules/@radixdlt/radix-dapp-toolkit": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/@radixdlt/radix-dapp-toolkit/-/radix-dapp-toolkit-0.6.1.tgz", + "integrity": "sha512-rVU71RYbF8ZkBMWtzN2Gr1PrcdSdAjxGUBeDBq/hB2aAo9hvOjURbvoQWTylEJznOQfINQM9IWVHNSfAUuCZ6g==", + "dependencies": { + "@radixdlt/babylon-gateway-api-sdk": "1.0.0-rc.3.2", + "@radixdlt/connect-button": "0.13.4", + "@radixdlt/wallet-sdk": "0.10.1-alpha.1", + "immer": "^10.0.2", + "lodash.isequal": "^4.5.0", + "neverthrow": "^6.0.0", + "rxjs": "^7.8.1", + "zod": "^3.21.4" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "apps/server": { + "version": "0.0.0", + "license": "MIT", + "dependencies": { + "@radixdlt/radix-dapp-toolkit": "0.6.1", + "@radixdlt/radix-engine-toolkit": "0.3.0", + "@types/cors": "^2.8.13", + "@types/elliptic": "^6.4.14", + "@types/express": "^4.17.17", + "cors": "^2.8.5", + "express": "^4.18.2", + "neverthrow": "^6.0.0" + }, + "devDependencies": { + "@swc/core": "^1.3.70", + "@types/node": "^18.12.0", + "nodemon": "^3.0.1", + "ts-node": "^10.9.1", + "typescript": "^5.1.6" + } + }, + "apps/server/node_modules/@radixdlt/radix-dapp-toolkit": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/@radixdlt/radix-dapp-toolkit/-/radix-dapp-toolkit-0.6.1.tgz", + "integrity": "sha512-rVU71RYbF8ZkBMWtzN2Gr1PrcdSdAjxGUBeDBq/hB2aAo9hvOjURbvoQWTylEJznOQfINQM9IWVHNSfAUuCZ6g==", + "dependencies": { + "@radixdlt/babylon-gateway-api-sdk": "1.0.0-rc.3.2", + "@radixdlt/connect-button": "0.13.4", + "@radixdlt/wallet-sdk": "0.10.1-alpha.1", + "immer": "^10.0.2", + "lodash.isequal": "^4.5.0", + "neverthrow": "^6.0.0", + "rxjs": "^7.8.1", + "zod": "^3.21.4" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "apps/server/node_modules/@radixdlt/radix-engine-toolkit": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@radixdlt/radix-engine-toolkit/-/radix-engine-toolkit-0.3.0.tgz", + "integrity": "sha512-bODSTuAICMW2MT2R6IcUvacIek8AHBfYh4bABFQliP+FXsjRk+3MNQbGACuEGLuU9jfWrandZUXADgKPs6Wniw==", + "dependencies": { + "@noble/ed25519": "2.0.0", + "@noble/hashes": "1.3.0", + "@types/secp256k1": "4.0.3", + "@types/secure-random": "1.1.0", + "blakejs": "1.2.1", + "change-case": "4.1.2", + "decimal.js": "10.4.3", + "reflect-metadata": "0.1.13", + "secp256k1": "5.0.0" + } + }, + "client": { + "version": "0.0.0", + "extraneous": true, + "dependencies": { + "@radixdlt/radix-dapp-toolkit": "^0.3.0-rcnet-v2.7" + }, + "devDependencies": { + "typescript": "^5.0.2", + "vite": "^4.4.0" + } + }, + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "0.3.9" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.18.16", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.16.tgz", + "integrity": "sha512-gCHjjQmA8L0soklKbLKA6pgsLk1byULuHe94lkZDzcO3/Ta+bbeewJioEn1Fr7kgy9NWNFy/C+MrBwC6I/WCug==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.18.16", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.16.tgz", + "integrity": "sha512-wsCqSPqLz+6Ov+OM4EthU43DyYVVyfn15S4j1bJzylDpc1r1jZFFfJQNfDuT8SlgwuqpmpJXK4uPlHGw6ve7eA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.18.16", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.16.tgz", + "integrity": "sha512-ldsTXolyA3eTQ1//4DS+E15xl0H/3DTRJaRL0/0PgkqDsI0fV/FlOtD+h0u/AUJr+eOTlZv4aC9gvfppo3C4sw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.18.16", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.16.tgz", + "integrity": "sha512-aBxruWCII+OtluORR/KvisEw0ALuw/qDQWvkoosA+c/ngC/Kwk0lLaZ+B++LLS481/VdydB2u6tYpWxUfnLAIw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.18.16", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.16.tgz", + "integrity": "sha512-6w4Dbue280+rp3LnkgmriS1icOUZDyPuZo/9VsuMUTns7SYEiOaJ7Ca1cbhu9KVObAWfmdjUl4gwy9TIgiO5eA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.18.16", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.16.tgz", + "integrity": "sha512-x35fCebhe9s979DGKbVAwXUOcTmCIE32AIqB9CB1GralMIvxdnMLAw5CnID17ipEw9/3MvDsusj/cspYt2ZLNQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.18.16", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.16.tgz", + "integrity": "sha512-YM98f+PeNXF3GbxIJlUsj+McUWG1irguBHkszCIwfr3BXtXZsXo0vqybjUDFfu9a8Wr7uUD/YSmHib+EeGAFlg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.18.16", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.16.tgz", + "integrity": "sha512-b5ABb+5Ha2C9JkeZXV+b+OruR1tJ33ePmv9ZwMeETSEKlmu/WJ45XTTG+l6a2KDsQtJJ66qo/hbSGBtk0XVLHw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.18.16", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.16.tgz", + "integrity": "sha512-XIqhNUxJiuy+zsR77+H5Z2f7s4YRlriSJKtvx99nJuG5ATuJPjmZ9n0ANgnGlPCpXGSReFpgcJ7O3SMtzIFeiQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.18.16", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.16.tgz", + "integrity": "sha512-no+pfEpwnRvIyH+txbBAWtjxPU9grslmTBfsmDndj7bnBmr55rOo/PfQmRfz7Qg9isswt1FP5hBbWb23fRWnow==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.18.16", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.16.tgz", + "integrity": "sha512-Zbnczs9ZXjmo0oZSS0zbNlJbcwKXa/fcNhYQjahDs4Xg18UumpXG/lwM2lcSvHS3mTrRyCYZvJbmzYc4laRI1g==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.18.16", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.16.tgz", + "integrity": "sha512-YMF7hih1HVR/hQVa/ot4UVffc5ZlrzEb3k2ip0nZr1w6fnYypll9td2qcoMLvd3o8j3y6EbJM3MyIcXIVzXvQQ==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.18.16", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.16.tgz", + "integrity": "sha512-Wkz++LZ29lDwUyTSEnzDaaP5OveOgTU69q9IyIw9WqLRxM4BjTBjz9un4G6TOvehWpf/J3gYVFN96TjGHrbcNQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.18.16", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.16.tgz", + "integrity": "sha512-LFMKZ30tk78/mUv1ygvIP+568bwf4oN6reG/uczXnz6SvFn4e2QUFpUpZY9iSJT6Qpgstrhef/nMykIXZtZWGQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.18.16", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.16.tgz", + "integrity": "sha512-3ZC0BgyYHYKfZo3AV2/66TD/I9tlSBaW7eWTEIkrQQKfJIifKMMttXl9FrAg+UT0SGYsCRLI35Gwdmm96vlOjg==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.18.16", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.16.tgz", + "integrity": "sha512-xu86B3647DihHJHv/wx3NCz2Dg1gjQ8bbf9cVYZzWKY+gsvxYmn/lnVlqDRazObc3UMwoHpUhNYaZset4X8IPA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.18.16", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.16.tgz", + "integrity": "sha512-uVAgpimx9Ffw3xowtg/7qQPwHFx94yCje+DoBx+LNm2ePDpQXHrzE+Sb0Si2VBObYz+LcRps15cq+95YM7gkUw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.18.16", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.16.tgz", + "integrity": "sha512-6OjCQM9wf7z8/MBi6BOWaTL2AS/SZudsZtBziXMtNI8r/U41AxS9x7jn0ATOwVy08OotwkPqGRMkpPR2wcTJXA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.18.16", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.16.tgz", + "integrity": "sha512-ZoNkruFYJp9d1LbUYCh8awgQDvB9uOMZqlQ+gGEZR7v6C+N6u7vPr86c+Chih8niBR81Q/bHOSKGBK3brJyvkQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.18.16", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.16.tgz", + "integrity": "sha512-+j4anzQ9hrs+iqO+/wa8UE6TVkKua1pXUb0XWFOx0FiAj6R9INJ+WE//1/Xo6FG1vB5EpH3ko+XcgwiDXTxcdw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.18.16", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.16.tgz", + "integrity": "sha512-5PFPmq3sSKTp9cT9dzvI67WNfRZGvEVctcZa1KGjDDu4n3H8k59Inbk0du1fz0KrAbKKNpJbdFXQMDUz7BG4rQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.18.16", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.16.tgz", + "integrity": "sha512-sCIVrrtcWN5Ua7jYXNG1xD199IalrbfV2+0k/2Zf2OyV2FtnQnMgdzgpRAbi4AWlKJj1jkX+M+fEGPQj6BQB4w==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", + "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "node_modules/@lit-labs/ssr-dom-shim": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@lit-labs/ssr-dom-shim/-/ssr-dom-shim-1.1.1.tgz", + "integrity": "sha512-kXOeFbfCm4fFf2A3WwVEeQj55tMZa8c8/f9AKHMobQMkzNUfUj+antR3fRPaZJawsa1aZiP/Da3ndpZrwEe4rQ==" + }, + "node_modules/@lit/reactive-element": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/@lit/reactive-element/-/reactive-element-1.6.3.tgz", + "integrity": "sha512-QuTgnG52Poic7uM1AN5yJ09QMe0O28e10XzSvWDz02TJiiKee4stsiownEIadWm8nYzyDAyT+gKzUoZmiWQtsQ==", + "dependencies": { + "@lit-labs/ssr-dom-shim": "^1.0.0" + } + }, + "node_modules/@noble/ed25519": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@noble/ed25519/-/ed25519-2.0.0.tgz", + "integrity": "sha512-/extjhkwFupyopDrt80OMWKdLgP429qLZj+z6sYJz90rF2Iz0gjZh2ArMKPImUl13Kx+0EXI2hN9T/KJV0/Zng==", + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ] + }, + "node_modules/@noble/hashes": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.0.tgz", + "integrity": "sha512-ilHEACi9DwqJB0pw7kv+Apvh50jiiSyR/cQ3y4W7lOR5mhvn/50FLUfsnfJz0BDZtl/RR16kXvptiv6q1msYZg==", + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ] + }, + "node_modules/@radixdlt/babylon-gateway-api-sdk": { + "version": "1.0.0-rc.3.2", + "resolved": "https://registry.npmjs.org/@radixdlt/babylon-gateway-api-sdk/-/babylon-gateway-api-sdk-1.0.0-rc.3.2.tgz", + "integrity": "sha512-7odQHQARzK1HIwpqjdH3ZHcYLpywHfZXdLRBw+1Lpx8cQ4X8nUeIwlEns3+g5XhX8+2dfOdQnumSsN/BcL41BA==" + }, + "node_modules/@radixdlt/connect-button": { + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/@radixdlt/connect-button/-/connect-button-0.13.4.tgz", + "integrity": "sha512-5jeiiFJLBnJzC3nimWY7sKzQgRgtHAb0rMRjxtBxdBusr/HjTIoedLmOHBv5Yc+kpJSKAdtBp/PovaVOcM06qQ==", + "dependencies": { + "lit": "^2.7.5" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@radixdlt/wallet-sdk": { + "version": "0.10.1-alpha.1", + "resolved": "https://registry.npmjs.org/@radixdlt/wallet-sdk/-/wallet-sdk-0.10.1-alpha.1.tgz", + "integrity": "sha512-kCmCLJ3Yi2VZhN7/B9nhnTi6JNuiy8+otQy3kh1JNb0pd9CV6o6YS/Vj85mVoGtePVog4UHmu6RKFbPR9TVrfg==", + "dependencies": { + "neverthrow": "^6.0.0", + "rxjs": "^7.8.1", + "tslog": "^4.8.2", + "zod": "^3.21.4" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@swc/core": { + "version": "1.3.70", + "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.3.70.tgz", + "integrity": "sha512-LWVWlEDLlOD25PvA2NEz41UzdwXnlDyBiZbe69s3zM0DfCPwZXLUm79uSqH9ItsOjTrXSL5/1+XUL6C/BZwChA==", + "dev": true, + "hasInstallScript": true, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/swc" + }, + "optionalDependencies": { + "@swc/core-darwin-arm64": "1.3.70", + "@swc/core-darwin-x64": "1.3.70", + "@swc/core-linux-arm-gnueabihf": "1.3.70", + "@swc/core-linux-arm64-gnu": "1.3.70", + "@swc/core-linux-arm64-musl": "1.3.70", + "@swc/core-linux-x64-gnu": "1.3.70", + "@swc/core-linux-x64-musl": "1.3.70", + "@swc/core-win32-arm64-msvc": "1.3.70", + "@swc/core-win32-ia32-msvc": "1.3.70", + "@swc/core-win32-x64-msvc": "1.3.70" + }, + "peerDependencies": { + "@swc/helpers": "^0.5.0" + }, + "peerDependenciesMeta": { + "@swc/helpers": { + "optional": true + } + } + }, + "node_modules/@swc/core-darwin-arm64": { + "version": "1.3.70", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.70.tgz", + "integrity": "sha512-31+mcl0dgdRHvZRjhLOK9V6B+qJ7nxDZYINr9pBlqGWxknz37Vld5KK19Kpr79r0dXUZvaaelLjCnJk9dA2PcQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-darwin-x64": { + "version": "1.3.70", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.3.70.tgz", + "integrity": "sha512-GMFJ65E18zQC80t0os+TZvI+8lbRuitncWVge/RXmXbVLPRcdykP4EJ87cqzcG5Ah0z18/E0T+ixD6jHRisrYQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm-gnueabihf": { + "version": "1.3.70", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.70.tgz", + "integrity": "sha512-wjhCwS8LCiAq2VedF1b4Bryyw68xZnfMED4pLRazAl8BaUlDFANfRBORNunxlfHQj4V3x39IaiLgCZRHMdzXBg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm64-gnu": { + "version": "1.3.70", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.70.tgz", + "integrity": "sha512-9D/Rx67cAOnMiexvCqARxvhj7coRajTp5HlJHuf+rfwMqI2hLhpO9/pBMQxBUAWxODO/ksQ/OF+GJRjmtWw/2A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm64-musl": { + "version": "1.3.70", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.70.tgz", + "integrity": "sha512-gkjxBio7XD+1GlQVVyPP/qeFkLu83VhRHXaUrkNYpr5UZG9zZurBERT9nkS6Y+ouYh+Q9xmw57aIyd2KvD2zqQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-x64-gnu": { + "version": "1.3.70", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.70.tgz", + "integrity": "sha512-/nCly+V4xfMVwfEUoLLAukxUSot/RcSzsf6GdsGTjFcrp5sZIntAjokYRytm3VT1c2TK321AfBorsi9R5w8Y7Q==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-x64-musl": { + "version": "1.3.70", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.70.tgz", + "integrity": "sha512-HoOsPJbt361KGKaivAK0qIiYARkhzlxeAfvF5NlnKxkIMOZpQ46Lwj3tR0VWohKbrhS+cYKFlVuDi5XnDkx0XA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-arm64-msvc": { + "version": "1.3.70", + "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.70.tgz", + "integrity": "sha512-hm4IBK/IaRil+aj1cWU6f0GyAdHpw/Jr5nyFYLM2c/tt7w2t5hgb8NjzM2iM84lOClrig1fG6edj2vCF1dFzNQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-ia32-msvc": { + "version": "1.3.70", + "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.70.tgz", + "integrity": "sha512-5cgKUKIT/9Fp5fCA+zIjYCQ4dSvjFYOeWGZR3QiTXGkC4bGa1Ji9SEPyeIAX0iruUnKjYaZB9RvHK2tNn7RLrQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-x64-msvc": { + "version": "1.3.70", + "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.70.tgz", + "integrity": "sha512-LE8lW46+TQBzVkn2mHBlk8DIElPIZ2dO5P8AbJiARNBAnlqQWu67l9gWM89UiZ2l33J2cI37pHzON3tKnT8f9g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@tsconfig/node10": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", + "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", + "dev": true + }, + "node_modules/@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "dev": true + }, + "node_modules/@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "dev": true + }, + "node_modules/@tsconfig/node16": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", + "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", + "dev": true + }, + "node_modules/@types/bn.js": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.1.tgz", + "integrity": "sha512-qNrYbZqMx0uJAfKnKclPh+dTwK33KfLHYqtyODwd5HnXOjnkhc4qgn3BrK6RWyGZm5+sIFE7Q7Vz6QQtJB7w7g==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@types/connect": { + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", + "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/cors": { + "version": "2.8.13", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.13.tgz", + "integrity": "sha512-RG8AStHlUiV5ysZQKq97copd2UmVYw3/pRMLefISZ3S1hK104Cwm7iLQ3fTKx+lsUH2CE8FlLaYeEA2LSeqYUA==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/elliptic": { + "version": "6.4.14", + "resolved": "https://registry.npmjs.org/@types/elliptic/-/elliptic-6.4.14.tgz", + "integrity": "sha512-z4OBcDAU0GVwDTuwJzQCiL6188QvZMkvoERgcVjq0/mPM8jCfdwZ3x5zQEVoL9WCAru3aG5wl3Z5Ww5wBWn7ZQ==", + "dependencies": { + "@types/bn.js": "*" + } + }, + "node_modules/@types/express": { + "version": "4.17.17", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.17.tgz", + "integrity": "sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==", + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "node_modules/@types/express-serve-static-core": { + "version": "4.17.35", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.35.tgz", + "integrity": "sha512-wALWQwrgiB2AWTT91CB62b6Yt0sNHpznUXeZEcnPU3DRdlDIz74x8Qg1UUYKSVFi+va5vKOLYRBI1bRKiLLKIg==", + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" + } + }, + "node_modules/@types/http-errors": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.1.tgz", + "integrity": "sha512-/K3ds8TRAfBvi5vfjuz8y6+GiAYBZ0x4tXv1Av6CWBWn0IlADc+ZX9pMq7oU0fNQPnBwIZl3rmeLp6SBApbxSQ==" + }, + "node_modules/@types/mime": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz", + "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==" + }, + "node_modules/@types/node": { + "version": "18.17.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.17.0.tgz", + "integrity": "sha512-GXZxEtOxYGFchyUzxvKI14iff9KZ2DI+A6a37o6EQevtg6uO9t+aUZKcaC1Te5Ng1OnLM7K9NVVj+FbecD9cJg==" + }, + "node_modules/@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" + }, + "node_modules/@types/range-parser": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", + "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==" + }, + "node_modules/@types/secp256k1": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@types/secp256k1/-/secp256k1-4.0.3.tgz", + "integrity": "sha512-Da66lEIFeIz9ltsdMZcpQvmrmmoqrfju8pm1BH8WbYjZSwUgCwXLb9C+9XYogwBITnbsSaMdVPb2ekf7TV+03w==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/secure-random": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@types/secure-random/-/secure-random-1.1.0.tgz", + "integrity": "sha512-FVkD9qNAeuc1m53VQfWhuUdn9IWjv6griflGfLcSoF3ZexyNv1ciPlZLyrucWYcdhNjKERgDb45IJwb8a/ZKDQ==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/send": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.1.tgz", + "integrity": "sha512-Cwo8LE/0rnvX7kIIa3QHCkcuF21c05Ayb0ZfxPiv0W8VRiZiNW/WuRupHKpqqGVGf7SUA44QSOUKaEd9lIrd/Q==", + "dependencies": { + "@types/mime": "^1", + "@types/node": "*" + } + }, + "node_modules/@types/serve-static": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.2.tgz", + "integrity": "sha512-J2LqtvFYCzaj8pVYKw8klQXrLLk7TBZmQ4ShlcdkELFKGwGMfevMLneMMRkMgZxotOD9wg497LpC7O8PcvAmfw==", + "dependencies": { + "@types/http-errors": "*", + "@types/mime": "*", + "@types/node": "*" + } + }, + "node_modules/@types/trusted-types": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.3.tgz", + "integrity": "sha512-NfQ4gyz38SL8sDNrSixxU2Os1a5xcdFxipAFxYEuLUlvU2uDwS4NUpsImcf1//SlWItCVMMLiylsxbmNMToV/g==" + }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", + "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "dev": true + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/blakejs": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/blakejs/-/blakejs-1.2.1.tgz", + "integrity": "sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==" + }, + "node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/body-parser": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", + "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "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.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==" + }, + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/camel-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", + "dependencies": { + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" + } + }, + "node_modules/capital-case": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/capital-case/-/capital-case-1.0.4.tgz", + "integrity": "sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3", + "upper-case-first": "^2.0.2" + } + }, + "node_modules/change-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/change-case/-/change-case-4.1.2.tgz", + "integrity": "sha512-bSxY2ws9OtviILG1EiY5K7NNxkqg/JnRnFxLtKQ96JaviiIxi7djMrSd0ECT9AC+lttClmYwKw53BWpOMblo7A==", + "dependencies": { + "camel-case": "^4.1.2", + "capital-case": "^1.0.4", + "constant-case": "^3.0.4", + "dot-case": "^3.0.4", + "header-case": "^2.0.4", + "no-case": "^3.0.4", + "param-case": "^3.0.4", + "pascal-case": "^3.1.2", + "path-case": "^3.0.4", + "sentence-case": "^3.0.4", + "snake-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/client": { + "resolved": "apps/client", + "link": true + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/constant-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/constant-case/-/constant-case-3.0.4.tgz", + "integrity": "sha512-I2hSBi7Vvs7BEuJDr5dDHfzb/Ruj3FyvFyh7KLilAjNQw3Be+xgqUBA2W6scVEcL0hL1dwPRtIqEPVUCKkSsyQ==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3", + "upper-case": "^2.0.2" + } + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" + }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "dev": true + }, + "node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/decimal.js": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==" + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "dev": true, + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/dot-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" + }, + "node_modules/elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "dependencies": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/esbuild": { + "version": "0.18.16", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.16.tgz", + "integrity": "sha512-1xLsOXrDqwdHxyXb/x/SOyg59jpf/SH7YMvU5RNSU7z3TInaASNJWNFJ6iRvLvLETZMasF3d1DdZLg7sgRimRQ==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/android-arm": "0.18.16", + "@esbuild/android-arm64": "0.18.16", + "@esbuild/android-x64": "0.18.16", + "@esbuild/darwin-arm64": "0.18.16", + "@esbuild/darwin-x64": "0.18.16", + "@esbuild/freebsd-arm64": "0.18.16", + "@esbuild/freebsd-x64": "0.18.16", + "@esbuild/linux-arm": "0.18.16", + "@esbuild/linux-arm64": "0.18.16", + "@esbuild/linux-ia32": "0.18.16", + "@esbuild/linux-loong64": "0.18.16", + "@esbuild/linux-mips64el": "0.18.16", + "@esbuild/linux-ppc64": "0.18.16", + "@esbuild/linux-riscv64": "0.18.16", + "@esbuild/linux-s390x": "0.18.16", + "@esbuild/linux-x64": "0.18.16", + "@esbuild/netbsd-x64": "0.18.16", + "@esbuild/openbsd-x64": "0.18.16", + "@esbuild/sunos-x64": "0.18.16", + "@esbuild/win32-arm64": "0.18.16", + "@esbuild/win32-ia32": "0.18.16", + "@esbuild/win32-x64": "0.18.16" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/express": { + "version": "4.18.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", + "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.1", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.5.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "node_modules/get-intrinsic": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz", + "integrity": "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==", + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/has-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dependencies": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "node_modules/header-case": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/header-case/-/header-case-2.0.4.tgz", + "integrity": "sha512-H/vuk5TEEVZwrR0lp2zed9OCo1uAILMlx0JEMgC26rzyJJ3N1v6XkwHHXJQdR2doSjcGPM6OKPYoJgf0plJ11Q==", + "dependencies": { + "capital-case": "^1.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", + "dependencies": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ignore-by-default": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", + "integrity": "sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA==", + "dev": true + }, + "node_modules/immer": { + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/immer/-/immer-10.0.2.tgz", + "integrity": "sha512-Rx3CqeqQ19sxUtYV9CU911Vhy8/721wRFnJv3REVGWUmoAcIwzifTsdmJte/MV+0/XpM35LZdQMBGkRIoLPwQA==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/immer" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/lit": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/lit/-/lit-2.8.0.tgz", + "integrity": "sha512-4Sc3OFX9QHOJaHbmTMk28SYgVxLN3ePDjg7hofEft2zWlehFL3LiAuapWc4U/kYwMYJSh2hTCPZ6/LIC7ii0MA==", + "dependencies": { + "@lit/reactive-element": "^1.6.0", + "lit-element": "^3.3.0", + "lit-html": "^2.8.0" + } + }, + "node_modules/lit-element": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/lit-element/-/lit-element-3.3.3.tgz", + "integrity": "sha512-XbeRxmTHubXENkV4h8RIPyr8lXc+Ff28rkcQzw3G6up2xg5E8Zu1IgOWIwBLEQsu3cOVFqdYwiVi0hv0SlpqUA==", + "dependencies": { + "@lit-labs/ssr-dom-shim": "^1.1.0", + "@lit/reactive-element": "^1.3.0", + "lit-html": "^2.8.0" + } + }, + "node_modules/lit-html": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/lit-html/-/lit-html-2.8.0.tgz", + "integrity": "sha512-o9t+MQM3P4y7M7yNzqAyjp7z+mQGa4NS4CxiyLqFPyFWyc4O+nodLrkrxSaCTrla6M5YOLaT3RpbbqjszB5g3Q==", + "dependencies": { + "@types/trusted-types": "^2.0.2" + } + }, + "node_modules/lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==" + }, + "node_modules/lower-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, + "node_modules/minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==" + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/nanoid": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", + "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/neverthrow": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/neverthrow/-/neverthrow-6.0.0.tgz", + "integrity": "sha512-kPZKRs4VkdloCGQXPoP84q4sT/1Z+lYM61AXyV8wWa2hnuo5KpPBF2S3crSFnMrOgUISmEBP8Vo/ngGZX60NhA==" + }, + "node_modules/no-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", + "dependencies": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + } + }, + "node_modules/node-addon-api": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz", + "integrity": "sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==" + }, + "node_modules/node-gyp-build": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.6.0.tgz", + "integrity": "sha512-NTZVKn9IylLwUzaKjkas1e4u2DLNcV4rdYagA4PWdPwW87Bi7z+BznyKSRwS/761tV/lzCGXplWsiaMjLqP2zQ==", + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" + } + }, + "node_modules/nodemon": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-3.0.1.tgz", + "integrity": "sha512-g9AZ7HmkhQkqXkRc20w+ZfQ73cHLbE8hnPbtaFbFtCumZsjyMhKk9LajQ07U5Ux28lvFjZ5X7HvWR1xzU8jHVw==", + "dev": true, + "dependencies": { + "chokidar": "^3.5.2", + "debug": "^3.2.7", + "ignore-by-default": "^1.0.1", + "minimatch": "^3.1.2", + "pstree.remy": "^1.1.8", + "semver": "^7.5.3", + "simple-update-notifier": "^2.0.0", + "supports-color": "^5.5.0", + "touch": "^3.1.0", + "undefsafe": "^2.0.5" + }, + "bin": { + "nodemon": "bin/nodemon.js" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/nodemon" + } + }, + "node_modules/nodemon/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/nodemon/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + }, + "node_modules/nopt": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz", + "integrity": "sha512-NWmpvLSqUrgrAC9HCuxEvb+PSloHpqVu+FqcO4eeF2h5qYRhA7ev6KvelyQAKtegUbC6RypJnlEOhd8vloNKYg==", + "dev": true, + "dependencies": { + "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "*" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", + "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/param-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", + "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/pascal-case": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", + "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/path-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/path-case/-/path-case-3.0.4.tgz", + "integrity": "sha512-qO4qCFjXqVTrcbPt/hQfhTQ+VhFsqNKOPtytgNKkKxSoEp3XPUQ8ObFuePylOIok5gjn69ry8XiULxCwot3Wfg==", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/postcss": { + "version": "8.4.27", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.27.tgz", + "integrity": "sha512-gY/ACJtJPSmUFPDCHtX78+01fHa64FaU4zaaWfuh1MhGJISufJAH4cun6k/8fwsHYeK4UQmENQK+tRLCFJE8JQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/pstree.remy": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.8.tgz", + "integrity": "sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==", + "dev": true + }, + "node_modules/qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/reflect-metadata": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", + "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==" + }, + "node_modules/rollup": { + "version": "3.26.3", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.26.3.tgz", + "integrity": "sha512-7Tin0C8l86TkpcMtXvQu6saWH93nhG3dGQ1/+l5V2TDMceTxO7kDiK6GzbfLWNNxqJXm591PcEZUozZm51ogwQ==", + "dev": true, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=14.18.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/secp256k1": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-5.0.0.tgz", + "integrity": "sha512-TKWX8xvoGHrxVdqbYeZM9w+izTF4b9z3NhSaDkdn81btvuh+ivbIMGT/zQvDtTFWhRlThpoz6LEYTr7n8A5GcA==", + "hasInstallScript": true, + "dependencies": { + "elliptic": "^6.5.4", + "node-addon-api": "^5.0.0", + "node-gyp-build": "^4.2.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/sentence-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/sentence-case/-/sentence-case-3.0.4.tgz", + "integrity": "sha512-8LS0JInaQMCRoQ7YUytAo/xUu5W2XnQxV2HI/6uM6U7CITS1RqPElr30V6uIqyMKM9lJGRVFy5/4CuzcixNYSg==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3", + "upper-case-first": "^2.0.2" + } + }, + "node_modules/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/server": { + "resolved": "apps/server", + "link": true + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/simple-update-notifier": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/simple-update-notifier/-/simple-update-notifier-2.0.0.tgz", + "integrity": "sha512-a2B9Y0KlNXl9u/vsW6sTIu9vGEpfKu2wRV6l1H3XEas/0gUIzGzBoP/IouTcUQbm9JWZLH3COxyn03TYlFax6w==", + "dev": true, + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/snake-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/snake-case/-/snake-case-3.0.4.tgz", + "integrity": "sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/touch": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/touch/-/touch-3.1.0.tgz", + "integrity": "sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA==", + "dev": true, + "dependencies": { + "nopt": "~1.0.10" + }, + "bin": { + "nodetouch": "bin/nodetouch.js" + } + }, + "node_modules/ts-node": { + "version": "10.9.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", + "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", + "dev": true, + "dependencies": { + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" + }, + "bin": { + "ts-node": "dist/bin.js", + "ts-node-cwd": "dist/bin-cwd.js", + "ts-node-esm": "dist/bin-esm.js", + "ts-node-script": "dist/bin-script.js", + "ts-node-transpile-only": "dist/bin-transpile.js", + "ts-script": "dist/bin-script-deprecated.js" + }, + "peerDependencies": { + "@swc/core": ">=1.2.50", + "@swc/wasm": ">=1.2.50", + "@types/node": "*", + "typescript": ">=2.7" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "@swc/wasm": { + "optional": true + } + } + }, + "node_modules/tslib": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.0.tgz", + "integrity": "sha512-7At1WUettjcSRHXCyYtTselblcHl9PJFFVKiCAy/bY97+BPZXSQ2wbq0P9s8tK2G7dFQfNnlJnPAiArVBVBsfA==" + }, + "node_modules/tslog": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/tslog/-/tslog-4.9.1.tgz", + "integrity": "sha512-N6SkH+ApNh65tyKV7CfXmcShfw7KTnoTASQkKr+nZbhM73iwi/3a9ZJeYKRRvboLxkx3UNnNViMo1s/hNdSZLg==", + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/fullstack-build/tslog?sponsor=1" + } + }, + "node_modules/turbo": { + "version": "1.10.8", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-1.10.8.tgz", + "integrity": "sha512-lmPKkeRMC/3gjTVxICt93A8zAzjGjbZINdekjzivn4g/rOjpHVNuOuVANU5L4H4R1bzQr8FFvZNQeQaElOjz/Q==", + "dev": true, + "hasInstallScript": true, + "bin": { + "turbo": "bin/turbo" + }, + "optionalDependencies": { + "turbo-darwin-64": "1.10.8", + "turbo-darwin-arm64": "1.10.8", + "turbo-linux-64": "1.10.8", + "turbo-linux-arm64": "1.10.8", + "turbo-windows-64": "1.10.8", + "turbo-windows-arm64": "1.10.8" + } + }, + "node_modules/turbo-darwin-64": { + "version": "1.10.8", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-1.10.8.tgz", + "integrity": "sha512-FOK3qrLZE2Yq7/2DkAnAzghisGQroZJs85Rui3IXM/2e7rTtBADmU9w36d4k0Yw7RHEiOo8U4eAYUl52OWRwJQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/turbo-darwin-arm64": { + "version": "1.10.8", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-1.10.8.tgz", + "integrity": "sha512-8mbgH8oBycusa8RnbHlvrpHxfZsgNrk6CXMu/KJECpajYT3nSOMK2Rrs+422HqLDTVUw4GAqmTr26nUx8yJoyA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/turbo-linux-64": { + "version": "1.10.8", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-1.10.8.tgz", + "integrity": "sha512-eJ1ND3LuILw28gd+9f3Ews7Eika9WOxp+/PxJI+EPHseTrbLMLYqSPAunmZdOx840Pq0Sk5j4Nik7NCzuCWXkg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/turbo-linux-arm64": { + "version": "1.10.8", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-1.10.8.tgz", + "integrity": "sha512-3+pVaOzGP/5GFvQakxuHDMsj43Y6bmaq5/84tvgGL0FgtKpsQvBfdaDs12HX5cb/zUnd2/jdQPNiGJwVeC/McA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/turbo-windows-64": { + "version": "1.10.8", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-1.10.8.tgz", + "integrity": "sha512-LdryI+ZQsVrW4hWZw5G5vJz0syjWxyc0tnieZRefy+d9Ti1du/qCYLP0KQRgL9Yuh1klbH/tzmx70upGARgWKQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/turbo-windows-arm64": { + "version": "1.10.8", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-1.10.8.tgz", + "integrity": "sha512-whHnhM84KIa2Ly/fcw2Ujw2Rr/9wh8ynAdZ9bdvZoZKAbOr3tXKft0tmy50jQ6IsNr6Cj0XD4cuSTKhvqoGtYA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typescript": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz", + "integrity": "sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/undefsafe": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.5.tgz", + "integrity": "sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==", + "dev": true + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/upper-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-2.0.2.tgz", + "integrity": "sha512-KgdgDGJt2TpuwBUIjgG6lzw2GWFRCW9Qkfkiv0DxqHHLYJHmtmdUIKcZd8rHgFSjopVTlw6ggzCm1b8MFQwikg==", + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/upper-case-first": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/upper-case-first/-/upper-case-first-2.0.2.tgz", + "integrity": "sha512-514ppYHBaKwfJRK/pNC6c/OxfGa0obSnAl106u97Ed0I625Nin96KAjttZF6ZL3e1XLtphxnqrOi9iWgm+u+bg==", + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "dev": true + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/vite": { + "version": "4.4.6", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.4.6.tgz", + "integrity": "sha512-EY6Mm8vJ++S3D4tNAckaZfw3JwG3wa794Vt70M6cNJ6NxT87yhq7EC8Rcap3ahyHdo8AhCmV9PTk+vG1HiYn1A==", + "dev": true, + "dependencies": { + "esbuild": "^0.18.10", + "postcss": "^8.4.26", + "rollup": "^3.25.2" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + }, + "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 + } + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/zod": { + "version": "3.21.4", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.21.4.tgz", + "integrity": "sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==", + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + }, + "server": { + "version": "0.0.0", + "extraneous": true, + "license": "MIT", + "dependencies": { + "@radixdlt/radix-dapp-toolkit": "^0.3.0-rcnet-v2.7", + "@radixdlt/radix-engine-toolkit": "0.2.1", + "@types/cors": "^2.8.13", + "@types/elliptic": "^6.4.14", + "@types/express": "^4.17.17", + "cors": "^2.8.5", + "express": "^4.18.2", + "neverthrow": "^6.0.0" + }, + "devDependencies": { + "@swc/core": "^1.3.70", + "@types/node": "^18.12.0", + "nodemon": "^3.0.1", + "ts-node": "^10.9.1", + "typescript": "^5.1.6" + } + } + } +} diff --git a/examples/typescript-full-stack/package.json b/examples/typescript-full-stack/package.json new file mode 100644 index 0000000..95e88f4 --- /dev/null +++ b/examples/typescript-full-stack/package.json @@ -0,0 +1,16 @@ +{ + "private": true, + "engines": { + "node": ">=18.12.0" + }, + "scripts": { + "dev": "turbo run dev" + }, + "devDependencies": { + "turbo": "latest" + }, + "packageManager": "npm@9.7.1", + "workspaces": [ + "apps/**" + ] +} diff --git a/examples/typescript-full-stack/turbo.json b/examples/typescript-full-stack/turbo.json new file mode 100644 index 0000000..48f9475 --- /dev/null +++ b/examples/typescript-full-stack/turbo.json @@ -0,0 +1,9 @@ +{ + "$schema": "https://turbo.build/schema.json", + "pipeline": { + "dev": { + "cache": false, + "persistent": true + } + } +} diff --git a/package-lock.json b/package-lock.json index bdc1087..0587d22 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,63 +1,22 @@ { - "name": "@radixdlt/rola", + "name": "@radixdlt/rola-monorepo", "version": "0.0.0", "lockfileVersion": 3, "requires": true, "packages": { "": { - "name": "@radixdlt/rola", + "name": "@radixdlt/rola-monorepo", "version": "0.0.0", "license": "Apache-2.0", "devDependencies": { - "@babel/preset-env": "^7.22.14", - "@babel/preset-typescript": "^7.22.11", "@commitlint/cli": "^17.7.1", "@commitlint/config-conventional": "^17.7.0", - "@types/jest": "^29.5.4", - "@typescript-eslint/eslint-plugin": "^6.5.0", - "@typescript-eslint/parser": "^6.5.0", - "babel-preset-vite": "^1.1.0", - "buffer": "^6.0.3", - "eslint": "^8.48.0", - "eslint-config-alloy": "^5.1.2", - "eslint-plugin-unused-imports": "^3.0.0", - "husky": "^8.0.3", - "jest": "^29.6.4", - "jest-environment-jsdom": "^29.6.4", - "prettier": "^3.0.3", - "semantic-release": "^21.1.1", - "ts-jest": "^29.1.1", - "ts-node": "^10.9.1", - "typescript": "^5.2.2", - "vite": "^4.4.9", - "vite-tsconfig-paths": "^4.2.0" + "semantic-release": "^21.1.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aashutoshrathi/word-wrap": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", - "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@ampproject/remapping": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", - "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", - "dev": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, "node_modules/@babel/code-frame": { "version": "7.22.13", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", @@ -71,7941 +30,1504 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/compat-data": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz", - "integrity": "sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.11.tgz", - "integrity": "sha512-lh7RJrtPdhibbxndr6/xx0w8+CVlY5FJZiaSz908Fpy+G0xkBFTvwLcKJFF4PJxVfGhVWNebikpWGnOoC71juQ==", + "node_modules/@babel/code-frame/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, "dependencies": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.22.10", - "@babel/generator": "^7.22.10", - "@babel/helper-compilation-targets": "^7.22.10", - "@babel/helper-module-transforms": "^7.22.9", - "@babel/helpers": "^7.22.11", - "@babel/parser": "^7.22.11", - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.11", - "@babel/types": "^7.22.11", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.3", - "semver": "^6.3.1" + "color-convert": "^1.9.0" }, "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" + "node": ">=4" } }, - "node_modules/@babel/generator": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.10.tgz", - "integrity": "sha512-79KIf7YiWjjdZ81JnLujDRApWtl7BxTqWD88+FFdQEIOG8LJ0etDOM7CXuIgGJa55sGOwZVwuEsaLEm0PJ5/+A==", + "node_modules/@babel/code-frame/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, "dependencies": { - "@babel/types": "^7.22.10", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", - "jsesc": "^2.5.1" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=4" } }, - "node_modules/@babel/helper-annotate-as-pure": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz", - "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==", + "node_modules/@babel/code-frame/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" + "color-name": "1.1.3" } }, - "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.10.tgz", - "integrity": "sha512-Av0qubwDQxC56DoUReVDeLfMEjYYSN1nZrTUrWkXd7hpU73ymRANkbuDm3yni9npkn+RXy9nNbEJZEzXr7xrfQ==", + "node_modules/@babel/code-frame/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/@babel/code-frame/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "dev": true, - "dependencies": { - "@babel/types": "^7.22.10" - }, "engines": { - "node": ">=6.9.0" + "node": ">=0.8.0" } }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.10.tgz", - "integrity": "sha512-JMSwHD4J7SLod0idLq5PKgI+6g/hLD/iuWBq08ZX49xE14VpVEojJ5rHWptpirV2j020MvypRLAXAO50igCJ5Q==", + "node_modules/@babel/code-frame/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "dev": true, - "dependencies": { - "@babel/compat-data": "^7.22.9", - "@babel/helper-validator-option": "^7.22.5", - "browserslist": "^4.21.9", - "lru-cache": "^5.1.1", - "semver": "^6.3.1" - }, "engines": { - "node": ">=6.9.0" + "node": ">=4" } }, - "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.11.tgz", - "integrity": "sha512-y1grdYL4WzmUDBRGK0pDbIoFd7UZKoDurDzWEoNMYoj1EL+foGRQNyPWDcC+YyegN5y1DUsFFmzjGijB3nSVAQ==", + "node_modules/@babel/code-frame/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "dependencies": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-function-name": "^7.22.5", - "@babel/helper-member-expression-to-functions": "^7.22.5", - "@babel/helper-optimise-call-expression": "^7.22.5", - "@babel/helper-replace-supers": "^7.22.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "semver": "^6.3.1" + "has-flag": "^3.0.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "node": ">=4" } }, - "node_modules/@babel/helper-create-regexp-features-plugin": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.9.tgz", - "integrity": "sha512-+svjVa/tFwsNSG4NEy1h85+HQ5imbT92Q5/bgtS7P0GTQlP8WuFdqsiABmQouhiFGyV66oGxZFpeYHza1rNsKw==", + "node_modules/@babel/helper-validator-identifier": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.15.tgz", + "integrity": "sha512-4E/F9IIEi8WR94324mbDUMo074YTheJmd7eZF5vITTeYchqAi6sYXRLHUVsmkdmY4QjfKTcB2jB7dVP3NaBElQ==", "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "regexpu-core": "^5.3.1", - "semver": "^6.3.1" - }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-define-polyfill-provider": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.2.tgz", - "integrity": "sha512-k0qnnOqHn5dK9pZpfD5XXZ9SojAITdCKRn2Lp6rnDGzIbaP0rHyMPk/4wsSxVBVz4RfN0q6VpXWP2pDGIoQ7hw==", + "node_modules/@babel/highlight": { + "version": "7.22.13", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.13.tgz", + "integrity": "sha512-C/BaXcnnvBCmHTpz/VGZ8jgtE2aYlW4hxDhseJAWZb7gqGM/qtCK6iZUb0TyKFf7BOUsBH7Q7fkRsDRhg1XklQ==", "dev": true, "dependencies": { - "@babel/helper-compilation-targets": "^7.22.6", - "@babel/helper-plugin-utils": "^7.22.5", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2" + "@babel/helper-validator-identifier": "^7.22.5", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0" }, - "peerDependencies": { - "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" - } - }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", - "integrity": "sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==", - "dev": true, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/helper-function-name": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz", - "integrity": "sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==", + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, "dependencies": { - "@babel/template": "^7.22.5", - "@babel/types": "^7.22.5" + "color-convert": "^1.9.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=4" } }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", - "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=4" } }, - "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.5.tgz", - "integrity": "sha512-aBiH1NKMG0H2cGZqspNvsaBe6wNGjbJjuLy29aU+eDZjSbbN53BaxlpB02xm9v34pLTZ1nIQPFYn2qMZoa5BQQ==", + "node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" + "color-name": "1.1.3" } }, - "node_modules/@babel/helper-module-imports": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz", - "integrity": "sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==", + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, "engines": { - "node": ">=6.9.0" + "node": ">=0.8.0" } }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz", - "integrity": "sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==", + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-module-imports": "^7.22.5", - "@babel/helper-simple-access": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/helper-validator-identifier": "^7.22.5" - }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "node": ">=4" } }, - "node_modules/@babel/helper-optimise-call-expression": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz", - "integrity": "sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==", + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "has-flag": "^3.0.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=4" } }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", - "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", + "node_modules/@colors/colors": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", "dev": true, + "optional": true, "engines": { - "node": ">=6.9.0" + "node": ">=0.1.90" } }, - "node_modules/@babel/helper-remap-async-to-generator": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.9.tgz", - "integrity": "sha512-8WWC4oR4Px+tr+Fp0X3RHDVfINGpF3ad1HIbrc8A77epiR6eMMc6jsgozkzT2uDiOOdoS9cLIQ+XD2XvI2WSmQ==", + "node_modules/@commitlint/cli": { + "version": "17.7.1", + "resolved": "https://registry.npmjs.org/@commitlint/cli/-/cli-17.7.1.tgz", + "integrity": "sha512-BCm/AT06SNCQtvFv921iNhudOHuY16LswT0R3OeolVGLk8oP+Rk9TfQfgjH7QPMjhvp76bNqGFEcpKojxUNW1g==", "dev": true, "dependencies": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-wrap-function": "^7.22.9" - }, - "engines": { - "node": ">=6.9.0" + "@commitlint/format": "^17.4.4", + "@commitlint/lint": "^17.7.0", + "@commitlint/load": "^17.7.1", + "@commitlint/read": "^17.5.1", + "@commitlint/types": "^17.4.4", + "execa": "^5.0.0", + "lodash.isfunction": "^3.0.9", + "resolve-from": "5.0.0", + "resolve-global": "1.0.0", + "yargs": "^17.0.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-replace-supers": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.9.tgz", - "integrity": "sha512-LJIKvvpgPOPUThdYqcX6IXRuIcTkcAub0IaDRGCZH0p5GPUp7PhRU9QVgFcDDd51BaPkk77ZjqFwh6DZTAEmGg==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-member-expression-to-functions": "^7.22.5", - "@babel/helper-optimise-call-expression": "^7.22.5" + "bin": { + "commitlint": "cli.js" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "node": ">=v14" } }, - "node_modules/@babel/helper-simple-access": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", - "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", + "node_modules/@commitlint/config-conventional": { + "version": "17.7.0", + "resolved": "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-17.7.0.tgz", + "integrity": "sha512-iicqh2o6et+9kWaqsQiEYZzfLbtoWv9uZl8kbI8EGfnc0HeGafQBF7AJ0ylN9D/2kj6txltsdyQs8+2fTMwWEw==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "conventional-changelog-conventionalcommits": "^6.1.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=v14" } }, - "node_modules/@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz", - "integrity": "sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==", + "node_modules/@commitlint/config-validator": { + "version": "17.6.7", + "resolved": "https://registry.npmjs.org/@commitlint/config-validator/-/config-validator-17.6.7.tgz", + "integrity": "sha512-vJSncmnzwMvpr3lIcm0I8YVVDJTzyjy7NZAeXbTXy+MPUdAr9pKyyg7Tx/ebOQ9kqzE6O9WT6jg2164br5UdsQ==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "@commitlint/types": "^17.4.4", + "ajv": "^8.11.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=v14" } }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", - "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "node_modules/@commitlint/ensure": { + "version": "17.6.7", + "resolved": "https://registry.npmjs.org/@commitlint/ensure/-/ensure-17.6.7.tgz", + "integrity": "sha512-mfDJOd1/O/eIb/h4qwXzUxkmskXDL9vNPnZ4AKYKiZALz4vHzwMxBSYtyL2mUIDeU9DRSpEUins8SeKtFkYHSw==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "@commitlint/types": "^17.4.4", + "lodash.camelcase": "^4.3.0", + "lodash.kebabcase": "^4.1.1", + "lodash.snakecase": "^4.1.1", + "lodash.startcase": "^4.4.0", + "lodash.upperfirst": "^4.3.1" }, "engines": { - "node": ">=6.9.0" + "node": ">=v14" } }, - "node_modules/@babel/helper-string-parser": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", - "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", + "node_modules/@commitlint/execute-rule": { + "version": "17.4.0", + "resolved": "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-17.4.0.tgz", + "integrity": "sha512-LIgYXuCSO5Gvtc0t9bebAMSwd68ewzmqLypqI2Kke1rqOqqDbMpYcYfoPfFlv9eyLIh4jocHWwCK5FS7z9icUA==", "dev": true, "engines": { - "node": ">=6.9.0" + "node": ">=v14" } }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", - "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==", + "node_modules/@commitlint/format": { + "version": "17.4.4", + "resolved": "https://registry.npmjs.org/@commitlint/format/-/format-17.4.4.tgz", + "integrity": "sha512-+IS7vpC4Gd/x+uyQPTAt3hXs5NxnkqAZ3aqrHd5Bx/R9skyCAWusNlNbw3InDbAK6j166D9asQM8fnmYIa+CXQ==", "dev": true, + "dependencies": { + "@commitlint/types": "^17.4.4", + "chalk": "^4.1.0" + }, "engines": { - "node": ">=6.9.0" + "node": ">=v14" } }, - "node_modules/@babel/helper-validator-option": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz", - "integrity": "sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==", + "node_modules/@commitlint/is-ignored": { + "version": "17.7.0", + "resolved": "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-17.7.0.tgz", + "integrity": "sha512-043rA7m45tyEfW7Zv2vZHF++176MLHH9h70fnPoYlB1slKBeKl8BwNIlnPg4xBdRBVNPaCqvXxWswx2GR4c9Hw==", "dev": true, + "dependencies": { + "@commitlint/types": "^17.4.4", + "semver": "7.5.4" + }, "engines": { - "node": ">=6.9.0" + "node": ">=v14" } }, - "node_modules/@babel/helper-wrap-function": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.10.tgz", - "integrity": "sha512-OnMhjWjuGYtdoO3FmsEFWvBStBAe2QOgwOLsLNDjN+aaiMD8InJk1/O3HSD8lkqTjCgg5YI34Tz15KNNA3p+nQ==", + "node_modules/@commitlint/lint": { + "version": "17.7.0", + "resolved": "https://registry.npmjs.org/@commitlint/lint/-/lint-17.7.0.tgz", + "integrity": "sha512-TCQihm7/uszA5z1Ux1vw+Nf3yHTgicus/+9HiUQk+kRSQawByxZNESeQoX9ujfVd3r4Sa+3fn0JQAguG4xvvbA==", "dev": true, "dependencies": { - "@babel/helper-function-name": "^7.22.5", - "@babel/template": "^7.22.5", - "@babel/types": "^7.22.10" + "@commitlint/is-ignored": "^17.7.0", + "@commitlint/parse": "^17.7.0", + "@commitlint/rules": "^17.7.0", + "@commitlint/types": "^17.4.4" }, "engines": { - "node": ">=6.9.0" + "node": ">=v14" } }, - "node_modules/@babel/helpers": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.11.tgz", - "integrity": "sha512-vyOXC8PBWaGc5h7GMsNx68OH33cypkEDJCHvYVVgVbbxJDROYVtexSk0gK5iCF1xNjRIN2s8ai7hwkWDq5szWg==", + "node_modules/@commitlint/load": { + "version": "17.7.1", + "resolved": "https://registry.npmjs.org/@commitlint/load/-/load-17.7.1.tgz", + "integrity": "sha512-S/QSOjE1ztdogYj61p6n3UbkUvweR17FQ0zDbNtoTLc+Hz7vvfS7ehoTMQ27hPSjVBpp7SzEcOQu081RLjKHJQ==", "dev": true, "dependencies": { - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.11", - "@babel/types": "^7.22.11" + "@commitlint/config-validator": "^17.6.7", + "@commitlint/execute-rule": "^17.4.0", + "@commitlint/resolve-extends": "^17.6.7", + "@commitlint/types": "^17.4.4", + "@types/node": "20.4.7", + "chalk": "^4.1.0", + "cosmiconfig": "^8.0.0", + "cosmiconfig-typescript-loader": "^4.0.0", + "lodash.isplainobject": "^4.0.6", + "lodash.merge": "^4.6.2", + "lodash.uniq": "^4.5.0", + "resolve-from": "^5.0.0", + "ts-node": "^10.8.1", + "typescript": "^4.6.4 || ^5.0.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=v14" } }, - "node_modules/@babel/highlight": { - "version": "7.22.13", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.13.tgz", - "integrity": "sha512-C/BaXcnnvBCmHTpz/VGZ8jgtE2aYlW4hxDhseJAWZb7gqGM/qtCK6iZUb0TyKFf7BOUsBH7Q7fkRsDRhg1XklQ==", + "node_modules/@commitlint/message": { + "version": "17.4.2", + "resolved": "https://registry.npmjs.org/@commitlint/message/-/message-17.4.2.tgz", + "integrity": "sha512-3XMNbzB+3bhKA1hSAWPCQA3lNxR4zaeQAQcHj0Hx5sVdO6ryXtgUBGGv+1ZCLMgAPRixuc6en+iNAzZ4NzAa8Q==", "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.22.5", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0" - }, "engines": { - "node": ">=6.9.0" + "node": ">=v14" } }, - "node_modules/@babel/parser": { - "version": "7.22.14", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.14.tgz", - "integrity": "sha512-1KucTHgOvaw/LzCVrEOAyXkr9rQlp0A1HiHRYnSUE9dmb8PvPW7o5sscg+5169r54n3vGlbx6GevTE/Iw/P3AQ==", + "node_modules/@commitlint/parse": { + "version": "17.7.0", + "resolved": "https://registry.npmjs.org/@commitlint/parse/-/parse-17.7.0.tgz", + "integrity": "sha512-dIvFNUMCUHqq5Abv80mIEjLVfw8QNuA4DS7OWip4pcK/3h5wggmjVnlwGCDvDChkw2TjK1K6O+tAEV78oxjxag==", "dev": true, - "bin": { - "parser": "bin/babel-parser.js" + "dependencies": { + "@commitlint/types": "^17.4.4", + "conventional-changelog-angular": "^6.0.0", + "conventional-commits-parser": "^4.0.0" }, "engines": { - "node": ">=6.0.0" + "node": ">=v14" } }, - "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.5.tgz", - "integrity": "sha512-NP1M5Rf+u2Gw9qfSO4ihjcTGW5zXTi36ITLd4/EoAcEhIZ0yjMqmftDNl3QC19CX7olhrjpyU454g/2W7X0jvQ==", + "node_modules/@commitlint/read": { + "version": "17.5.1", + "resolved": "https://registry.npmjs.org/@commitlint/read/-/read-17.5.1.tgz", + "integrity": "sha512-7IhfvEvB//p9aYW09YVclHbdf1u7g7QhxeYW9ZHSO8Huzp8Rz7m05aCO1mFG7G8M+7yfFnXB5xOmG18brqQIBg==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" + "@commitlint/top-level": "^17.4.0", + "@commitlint/types": "^17.4.4", + "fs-extra": "^11.0.0", + "git-raw-commits": "^2.0.11", + "minimist": "^1.2.6" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "node": ">=v14" } }, - "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.5.tgz", - "integrity": "sha512-31Bb65aZaUwqCbWMnZPduIZxCBngHFlzyN6Dq6KAJjtx+lx6ohKHubc61OomYi7XwVD4Ol0XCVz4h+pYFR048g==", + "node_modules/@commitlint/resolve-extends": { + "version": "17.6.7", + "resolved": "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-17.6.7.tgz", + "integrity": "sha512-PfeoAwLHtbOaC9bGn/FADN156CqkFz6ZKiVDMjuC2N5N0740Ke56rKU7Wxdwya8R8xzLK9vZzHgNbuGhaOVKIg==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", - "@babel/plugin-transform-optional-chaining": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" + "@commitlint/config-validator": "^17.6.7", + "@commitlint/types": "^17.4.4", + "import-fresh": "^3.0.0", + "lodash.mergewith": "^4.6.2", + "resolve-from": "^5.0.0", + "resolve-global": "^1.0.0" }, - "peerDependencies": { - "@babel/core": "^7.13.0" - } - }, - "node_modules/@babel/plugin-proposal-private-property-in-object": { - "version": "7.21.0-placeholder-for-preset-env.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", - "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", - "dev": true, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=v14" } }, - "node_modules/@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "node_modules/@commitlint/rules": { + "version": "17.7.0", + "resolved": "https://registry.npmjs.org/@commitlint/rules/-/rules-17.7.0.tgz", + "integrity": "sha512-J3qTh0+ilUE5folSaoK91ByOb8XeQjiGcdIdiB/8UT1/Rd1itKo0ju/eQVGyFzgTMYt8HrDJnGTmNWwcMR1rmA==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" + "@commitlint/ensure": "^17.6.7", + "@commitlint/message": "^17.4.2", + "@commitlint/to-lines": "^17.4.0", + "@commitlint/types": "^17.4.4", + "execa": "^5.0.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">=v14" } }, - "node_modules/@babel/plugin-syntax-bigint": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", - "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "node_modules/@commitlint/to-lines": { + "version": "17.4.0", + "resolved": "https://registry.npmjs.org/@commitlint/to-lines/-/to-lines-17.4.0.tgz", + "integrity": "sha512-LcIy/6ZZolsfwDUWfN1mJ+co09soSuNASfKEU5sCmgFCvX5iHwRYLiIuoqXzOVDYOy7E7IcHilr/KS0e5T+0Hg==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">=v14" } }, - "node_modules/@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "node_modules/@commitlint/top-level": { + "version": "17.4.0", + "resolved": "https://registry.npmjs.org/@commitlint/top-level/-/top-level-17.4.0.tgz", + "integrity": "sha512-/1loE/g+dTTQgHnjoCy0AexKAEFyHsR2zRB4NWrZ6lZSMIxAhBJnmCqwao7b4H8888PsfoTBCLBYIw8vGnej8g==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.12.13" + "find-up": "^5.0.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">=v14" } }, - "node_modules/@babel/plugin-syntax-class-static-block": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", - "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "node_modules/@commitlint/types": { + "version": "17.4.4", + "resolved": "https://registry.npmjs.org/@commitlint/types/-/types-17.4.4.tgz", + "integrity": "sha512-amRN8tRLYOsxRr6mTnGGGvB5EmW/4DDjLMgiwK3CCVEmN6Sr/6xePGEpWaspKkckILuUORCwe6VfDBw6uj4axQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "chalk": "^4.1.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=v14" } }, - "node_modules/@babel/plugin-syntax-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" + "@jridgewell/trace-mapping": "0.3.9" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">=12" } }, - "node_modules/@babel/plugin-syntax-export-namespace-from": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", - "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", + "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">=6.0.0" } }, - "node_modules/@babel/plugin-syntax-import-assertions": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.22.5.tgz", - "integrity": "sha512-rdV97N7KqsRzeNGoWUOK6yUsWarLjE5Su/Snk9IYPU9CwkWHs4t+rTGOvffTR8XGkJMTAdLfO0xVnXm8wugIJg==", + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" } }, - "node_modules/@babel/plugin-syntax-import-attributes": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.22.5.tgz", - "integrity": "sha512-KwvoWDeNKPETmozyFE0P2rOLqh39EoQHNjqizrI5B8Vt0ZNS7M56s7dAiAqbYfiAYOuIzIh96z3iR2ktgu3tEg==", + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">= 8" } }, - "node_modules/@babel/plugin-syntax-import-meta": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", - "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">= 8" } }, - "node_modules/@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">= 8" } }, - "node_modules/@babel/plugin-syntax-jsx": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz", - "integrity": "sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==", + "node_modules/@octokit/auth-token": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-4.0.0.tgz", + "integrity": "sha512-tY/msAuJo6ARbK6SPIxZrPBms3xPbfwBrulZe0Wtr/DIY9lje2HeV1uoebShn6mx7SjCHif6EjMvoREj+gZ+SA==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">= 18" } }, - "node_modules/@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "node_modules/@octokit/core": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@octokit/core/-/core-5.0.0.tgz", + "integrity": "sha512-YbAtMWIrbZ9FCXbLwT9wWB8TyLjq9mxpKdgB3dUNxQcIVTf9hJ70gRPwAcqGZdY6WdJPZ0I7jLaaNDCiloGN2A==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "@octokit/auth-token": "^4.0.0", + "@octokit/graphql": "^7.0.0", + "@octokit/request": "^8.0.2", + "@octokit/request-error": "^5.0.0", + "@octokit/types": "^11.0.0", + "before-after-hook": "^2.2.0", + "universal-user-agent": "^6.0.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">= 18" } }, - "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "node_modules/@octokit/endpoint": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-9.0.0.tgz", + "integrity": "sha512-szrQhiqJ88gghWY2Htt8MqUDO6++E/EIXqJ2ZEp5ma3uGS46o7LZAzSLt49myB7rT+Hfw5Y6gO3LmOxGzHijAQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" + "@octokit/types": "^11.0.0", + "is-plain-object": "^5.0.0", + "universal-user-agent": "^6.0.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">= 18" } }, - "node_modules/@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "node_modules/@octokit/graphql": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-7.0.1.tgz", + "integrity": "sha512-T5S3oZ1JOE58gom6MIcrgwZXzTaxRnxBso58xhozxHpOqSTgDS6YNeEUvZ/kRvXgPrRz/KHnZhtb7jUMRi9E6w==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "@octokit/request": "^8.0.1", + "@octokit/types": "^11.0.0", + "universal-user-agent": "^6.0.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">= 18" } }, - "node_modules/@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } + "node_modules/@octokit/openapi-types": { + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-18.0.0.tgz", + "integrity": "sha512-V8GImKs3TeQRxRtXFpG2wl19V7444NIOTDF24AWuIbmNaNYOQMWRbjcGDXV5B+0n887fgDcuMNOmlul+k+oJtw==", + "dev": true }, - "node_modules/@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "node_modules/@octokit/plugin-paginate-rest": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-8.0.0.tgz", + "integrity": "sha512-2xZ+baZWUg+qudVXnnvXz7qfrTmDeYPCzangBVq/1gXxii/OiS//4shJp9dnCCvj1x+JAm9ji1Egwm1BA47lPQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" + "@octokit/types": "^11.0.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" + "engines": { + "node": ">= 18" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@octokit/core": ">=5" } }, - "node_modules/@babel/plugin-syntax-private-property-in-object": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", - "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "node_modules/@octokit/plugin-retry": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@octokit/plugin-retry/-/plugin-retry-6.0.0.tgz", + "integrity": "sha512-a1/A4A+PB1QoAHQfLJxGHhLfSAT03bR1jJz3GgQJZvty2ozawFWs93MiBQXO7SL2YbO7CIq0Goj4qLOBj8JeMQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "@octokit/request-error": "^5.0.0", + "@octokit/types": "^11.0.0", + "bottleneck": "^2.15.3" }, "engines": { - "node": ">=6.9.0" + "node": ">= 18" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@octokit/core": ">=5" } }, - "node_modules/@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "node_modules/@octokit/plugin-throttling": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@octokit/plugin-throttling/-/plugin-throttling-7.0.0.tgz", + "integrity": "sha512-KL2k/d0uANc8XqP5S64YcNFCudR3F5AaKO39XWdUtlJIjT9Ni79ekWJ6Kj5xvAw87udkOMEPcVf9xEge2+ahew==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "@octokit/types": "^11.0.0", + "bottleneck": "^2.15.3" }, "engines": { - "node": ">=6.9.0" + "node": ">= 18" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@octokit/core": "^5.0.0" } }, - "node_modules/@babel/plugin-syntax-typescript": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.22.5.tgz", - "integrity": "sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==", + "node_modules/@octokit/request": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-8.1.1.tgz", + "integrity": "sha512-8N+tdUz4aCqQmXl8FpHYfKG9GelDFd7XGVzyN8rc6WxVlYcfpHECnuRkgquzz+WzvHTK62co5di8gSXnzASZPQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" + "@octokit/endpoint": "^9.0.0", + "@octokit/request-error": "^5.0.0", + "@octokit/types": "^11.1.0", + "is-plain-object": "^5.0.0", + "universal-user-agent": "^6.0.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">= 18" } }, - "node_modules/@babel/plugin-syntax-unicode-sets-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", - "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", + "node_modules/@octokit/request-error": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-5.0.0.tgz", + "integrity": "sha512-1ue0DH0Lif5iEqT52+Rf/hf0RmGO9NWFjrzmrkArpG9trFfDM/efx00BJHdLGuro4BR/gECxCU2Twf5OKrRFsQ==", "dev": true, "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "@octokit/types": "^11.0.0", + "deprecation": "^2.0.0", + "once": "^1.4.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "node": ">= 18" } }, - "node_modules/@babel/plugin-transform-arrow-functions": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.22.5.tgz", - "integrity": "sha512-26lTNXoVRdAnsaDXPpvCNUq+OVWEVC6bx7Vvz9rC53F2bagUWW4u4ii2+h8Fejfh7RYqPxn+libeFBBck9muEw==", + "node_modules/@octokit/types": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-11.1.0.tgz", + "integrity": "sha512-Fz0+7GyLm/bHt8fwEqgvRBWwIV1S6wRRyq+V6exRKLVWaKGsuy6H9QFYeBVDV7rK6fO3XwHgQOPxv+cLj2zpXQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@octokit/openapi-types": "^18.0.0" } }, - "node_modules/@babel/plugin-transform-async-generator-functions": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.11.tgz", - "integrity": "sha512-0pAlmeRJn6wU84zzZsEOx1JV1Jf8fqO9ok7wofIJwUnplYo247dcd24P+cMJht7ts9xkzdtB0EPHmOb7F+KzXw==", + "node_modules/@pnpm/config.env-replace": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@pnpm/config.env-replace/-/config.env-replace-1.1.0.tgz", + "integrity": "sha512-htyl8TWnKL7K/ESFa1oW2UB5lVDxuF5DpM7tBi6Hu2LNL3mWkIzNLG6N4zoCUP1lCKNxWy/3iu8mS8MvToGd6w==", "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-remap-async-to-generator": "^7.22.9", - "@babel/plugin-syntax-async-generators": "^7.8.4" - }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=12.22.0" } }, - "node_modules/@babel/plugin-transform-async-to-generator": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.22.5.tgz", - "integrity": "sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==", + "node_modules/@pnpm/network.ca-file": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@pnpm/network.ca-file/-/network.ca-file-1.0.2.tgz", + "integrity": "sha512-YcPQ8a0jwYU9bTdJDpXjMi7Brhkr1mXsXrUJvjqM2mQDgkRiz8jFaQGOdaLxgjtUfQgZhKy/O3cG/YwmgKaxLA==", "dev": true, "dependencies": { - "@babel/helper-module-imports": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-remap-async-to-generator": "^7.22.5" + "graceful-fs": "4.2.10" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=12.22.0" } }, - "node_modules/@babel/plugin-transform-block-scoped-functions": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.22.5.tgz", - "integrity": "sha512-tdXZ2UdknEKQWKJP1KMNmuF5Lx3MymtMN/pvA+p/VEkhK8jVcQ1fzSy8KM9qRYhAf2/lV33hoMPKI/xaI9sADA==", + "node_modules/@pnpm/network.ca-file/node_modules/graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", + "dev": true + }, + "node_modules/@pnpm/npm-conf": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@pnpm/npm-conf/-/npm-conf-2.2.2.tgz", + "integrity": "sha512-UA91GwWPhFExt3IizW6bOeY/pQ0BkuNwKjk9iQW9KqxluGCrg4VenZ0/L+2Y0+ZOtme72EVvg6v0zo3AMQRCeA==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" + "@pnpm/config.env-replace": "^1.1.0", + "@pnpm/network.ca-file": "^1.0.1", + "config-chain": "^1.1.11" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=12" } }, - "node_modules/@babel/plugin-transform-block-scoping": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.22.10.tgz", - "integrity": "sha512-1+kVpGAOOI1Albt6Vse7c8pHzcZQdQKW+wJH+g8mCaszOdDVwRXa/slHPqIw+oJAJANTKDMuM2cBdV0Dg618Vg==", + "node_modules/@semantic-release/commit-analyzer": { + "version": "10.0.4", + "resolved": "https://registry.npmjs.org/@semantic-release/commit-analyzer/-/commit-analyzer-10.0.4.tgz", + "integrity": "sha512-pFGn99fn8w4/MHE0otb2A/l5kxgOuxaaauIh4u30ncoTJuqWj4hXTgEJ03REqjS+w1R2vPftSsO26WC61yOcpw==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" + "conventional-changelog-angular": "^6.0.0", + "conventional-commits-filter": "^3.0.0", + "conventional-commits-parser": "^5.0.0", + "debug": "^4.0.0", + "import-from": "^4.0.0", + "lodash-es": "^4.17.21", + "micromatch": "^4.0.2" }, "engines": { - "node": ">=6.9.0" + "node": ">=18" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "semantic-release": ">=20.1.0" } }, - "node_modules/@babel/plugin-transform-class-properties": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.22.5.tgz", - "integrity": "sha512-nDkQ0NfkOhPTq8YCLiWNxp1+f9fCobEjCb0n8WdbNUBc4IB5V7P1QnX9IjpSoquKrXF5SKojHleVNs2vGeHCHQ==", + "node_modules/@semantic-release/commit-analyzer/node_modules/conventional-commits-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-5.0.0.tgz", + "integrity": "sha512-ZPMl0ZJbw74iS9LuX9YIAiW8pfM5p3yh2o/NbXHbkFuZzY5jvdi5jFycEOkmBW5H5I7nA+D6f3UcsCLP2vvSEA==", "dev": true, "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" + "is-text-path": "^2.0.0", + "JSONStream": "^1.3.5", + "meow": "^12.0.1", + "split2": "^4.0.0" }, - "engines": { - "node": ">=6.9.0" + "bin": { + "conventional-commits-parser": "cli.mjs" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">=16" } }, - "node_modules/@babel/plugin-transform-class-static-block": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.11.tgz", - "integrity": "sha512-GMM8gGmqI7guS/llMFk1bJDkKfn3v3C4KHK9Yg1ey5qcHcOlKb0QvcMrgzvxo+T03/4szNh5lghY+fEC98Kq9g==", + "node_modules/@semantic-release/commit-analyzer/node_modules/is-text-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-2.0.0.tgz", + "integrity": "sha512-+oDTluR6WEjdXEJMnC2z6A4FRwFoYuvShVVEGsS7ewc0UTi2QtAKMDJuL4BDEVt+5T7MjFo12RP8ghOM75oKJw==", "dev": true, "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.22.11", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-class-static-block": "^7.14.5" + "text-extensions": "^2.0.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.12.0" + "node": ">=8" } }, - "node_modules/@babel/plugin-transform-classes": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.6.tgz", - "integrity": "sha512-58EgM6nuPNG6Py4Z3zSuu0xWu2VfodiMi72Jt5Kj2FECmaYk1RrTXA45z6KBFsu9tRgwQDwIiY4FXTt+YsSFAQ==", + "node_modules/@semantic-release/commit-analyzer/node_modules/meow": { + "version": "12.1.1", + "resolved": "https://registry.npmjs.org/meow/-/meow-12.1.1.tgz", + "integrity": "sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==", "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-compilation-targets": "^7.22.6", - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-function-name": "^7.22.5", - "@babel/helper-optimise-call-expression": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-replace-supers": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "globals": "^11.1.0" - }, "engines": { - "node": ">=6.9.0" + "node": ">=16.10" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/plugin-transform-computed-properties": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.22.5.tgz", - "integrity": "sha512-4GHWBgRf0krxPX+AaPtgBAlTgTeZmqDynokHOX7aqqAB4tHs3U2Y02zH6ETFdLZGcg9UQSD1WCmkVrE9ErHeOg==", + "node_modules/@semantic-release/commit-analyzer/node_modules/split2": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", + "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/template": "^7.22.5" - }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">= 10.x" } }, - "node_modules/@babel/plugin-transform-destructuring": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.22.10.tgz", - "integrity": "sha512-dPJrL0VOyxqLM9sritNbMSGx/teueHF/htMKrPT7DNxccXxRDPYqlgPFFdr8u+F+qUZOkZoXue/6rL5O5GduEw==", + "node_modules/@semantic-release/commit-analyzer/node_modules/text-extensions": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-2.4.0.tgz", + "integrity": "sha512-te/NtwBwfiNRLf9Ijqx3T0nlqZiQ2XrrtBvu+cLL8ZRrGkO0NHTug8MYFKyoSrv/sHTaSKfilUkizV6XhxMJ3g==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, "engines": { - "node": ">=6.9.0" + "node": ">=8" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/plugin-transform-dotall-regex": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.22.5.tgz", - "integrity": "sha512-5/Yk9QxCQCl+sOIB1WelKnVRxTJDSAIxtJLL2/pqL14ZVlbH0fUQUZa/T5/UnQtBNgghR7mfB8ERBKyKPCi7Vw==", + "node_modules/@semantic-release/error": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@semantic-release/error/-/error-4.0.0.tgz", + "integrity": "sha512-mgdxrHTLOjOddRVYIYDo0fR3/v61GNN1YGkfbrjuIKg/uMgCd+Qzo3UAXJ+woLQQpos4pl5Esuw5A7AoNlzjUQ==", "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" - }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=18" } }, - "node_modules/@babel/plugin-transform-duplicate-keys": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.22.5.tgz", - "integrity": "sha512-dEnYD+9BBgld5VBXHnF/DbYGp3fqGMsyxKbtD1mDyIA7AkTSpKXFhCVuj/oQVOoALfBs77DudA0BE4d5mcpmqw==", + "node_modules/@semantic-release/github": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/@semantic-release/github/-/github-9.0.4.tgz", + "integrity": "sha512-kQCGFAsBErvCR6hzNuzu63cj4erQN2krm9zQlg8vl4j5X0mL0d/Ras0wmL5Gkr1TuSS2lweME7M4J5zvtDDDSA==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" + "@octokit/core": "^5.0.0", + "@octokit/plugin-paginate-rest": "^8.0.0", + "@octokit/plugin-retry": "^6.0.0", + "@octokit/plugin-throttling": "^7.0.0", + "@semantic-release/error": "^4.0.0", + "aggregate-error": "^4.0.1", + "debug": "^4.3.4", + "dir-glob": "^3.0.1", + "globby": "^13.1.4", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.0", + "issue-parser": "^6.0.0", + "lodash-es": "^4.17.21", + "mime": "^3.0.0", + "p-filter": "^3.0.0", + "url-join": "^5.0.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=18" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "semantic-release": ">=20.1.0" } }, - "node_modules/@babel/plugin-transform-dynamic-import": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.11.tgz", - "integrity": "sha512-g/21plo58sfteWjaO0ZNVb+uEOkJNjAaHhbejrnBmu011l/eNDScmkbjCC3l4FKb10ViaGU4aOkFznSu2zRHgA==", + "node_modules/@semantic-release/npm": { + "version": "10.0.5", + "resolved": "https://registry.npmjs.org/@semantic-release/npm/-/npm-10.0.5.tgz", + "integrity": "sha512-cJnQ2M5pxJRwZEkb0A/+U3TG4UNmjrrLwV2PxJKljn5OPT0yJB8GzGgWbbKACayvxrT06YdTa4Amtq/piJcOIA==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3" + "@semantic-release/error": "^4.0.0", + "aggregate-error": "^4.0.1", + "execa": "^8.0.0", + "fs-extra": "^11.0.0", + "lodash-es": "^4.17.21", + "nerf-dart": "^1.0.0", + "normalize-url": "^8.0.0", + "npm": "^9.5.0", + "rc": "^1.2.8", + "read-pkg": "^8.0.0", + "registry-auth-token": "^5.0.0", + "semver": "^7.1.2", + "tempy": "^3.0.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=18" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "semantic-release": ">=20.1.0" } }, - "node_modules/@babel/plugin-transform-exponentiation-operator": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.22.5.tgz", - "integrity": "sha512-vIpJFNM/FjZ4rh1myqIya9jXwrwwgFRHPjT3DkUA9ZLHuzox8jiXkOLvwm1H+PQIP3CqfC++WPKeuDi0Sjdj1g==", + "node_modules/@semantic-release/npm/node_modules/execa": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", + "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", "dev": true, "dependencies": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" + "cross-spawn": "^7.0.3", + "get-stream": "^8.0.1", + "human-signals": "^5.0.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^4.1.0", + "strip-final-newline": "^3.0.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=16.17" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/@babel/plugin-transform-export-namespace-from": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.11.tgz", - "integrity": "sha512-xa7aad7q7OiT8oNZ1mU7NrISjlSkVdMbNxn9IuLZyL9AJEhs1Apba3I+u5riX1dIkdptP5EKDG5XDPByWxtehw==", + "node_modules/@semantic-release/npm/node_modules/get-stream": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", + "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" - }, "engines": { - "node": ">=6.9.0" + "node": ">=16" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/plugin-transform-for-of": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.5.tgz", - "integrity": "sha512-3kxQjX1dU9uudwSshyLeEipvrLjBCVthCgeTp6CzE/9JYrlAIaeekVxRpCWsDDfYTfRZRoCeZatCQvwo+wvK8A==", + "node_modules/@semantic-release/npm/node_modules/hosted-git-info": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.0.tgz", + "integrity": "sha512-ICclEpTLhHj+zCuSb2/usoNXSVkxUSIopre+b1w8NDY9Dntp9LO4vLdHYI336TH8sAqwrRgnSfdkBG2/YpisHA==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" + "lru-cache": "^10.0.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@babel/plugin-transform-function-name": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.22.5.tgz", - "integrity": "sha512-UIzQNMS0p0HHiQm3oelztj+ECwFnj+ZRV4KnguvlsD2of1whUeM6o7wGNj6oLwcDoAXQ8gEqfgC24D+VdIcevg==", + "node_modules/@semantic-release/npm/node_modules/human-signals": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", + "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", "dev": true, - "dependencies": { - "@babel/helper-compilation-targets": "^7.22.5", - "@babel/helper-function-name": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" - }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=16.17.0" } }, - "node_modules/@babel/plugin-transform-json-strings": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.11.tgz", - "integrity": "sha512-CxT5tCqpA9/jXFlme9xIBCc5RPtdDq3JpkkhgHQqtDdiTnTI0jtZ0QzXhr5DILeYifDPp2wvY2ad+7+hLMW5Pw==", + "node_modules/@semantic-release/npm/node_modules/is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-json-strings": "^7.8.3" - }, "engines": { - "node": ">=6.9.0" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/plugin-transform-literals": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.22.5.tgz", - "integrity": "sha512-fTLj4D79M+mepcw3dgFBTIDYpbcB9Sm0bpm4ppXPaO+U+PKFFyV9MGRvS0gvGw62sd10kT5lRMKXAADb9pWy8g==", + "node_modules/@semantic-release/npm/node_modules/json-parse-even-better-errors": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.0.tgz", + "integrity": "sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/@babel/plugin-transform-logical-assignment-operators": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.11.tgz", - "integrity": "sha512-qQwRTP4+6xFCDV5k7gZBF3C31K34ut0tbEcTKxlX/0KXxm9GLcO14p570aWxFvVzx6QAfPgq7gaeIHXJC8LswQ==", + "node_modules/@semantic-release/npm/node_modules/lines-and-columns": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.3.tgz", + "integrity": "sha512-cNOjgCnLB+FnvWWtyRTzmB3POJ+cXxTA81LoW7u8JdmhfXzriropYwpjShnz1QLLWsQwY7nIxoDmcPTwphDK9w==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" - }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, - "node_modules/@babel/plugin-transform-member-expression-literals": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.22.5.tgz", - "integrity": "sha512-RZEdkNtzzYCFl9SE9ATaUMTj2hqMb4StarOJLrZRbqqU4HSBE7UlBw9WBWQiDzrJZJdUWiMTVDI6Gv/8DPvfew==", + "node_modules/@semantic-release/npm/node_modules/lru-cache": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": "14 || >=16.14" } }, - "node_modules/@babel/plugin-transform-modules-amd": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.22.5.tgz", - "integrity": "sha512-R+PTfLTcYEmb1+kK7FNkhQ1gP4KgjpSO6HfH9+f8/yfp2Nt3ggBjiVpRwmwTlfqZLafYKJACy36yDXlEmI9HjQ==", + "node_modules/@semantic-release/npm/node_modules/mimic-fn": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", "dev": true, - "dependencies": { - "@babel/helper-module-transforms": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" - }, "engines": { - "node": ">=6.9.0" + "node": ">=12" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.11.tgz", - "integrity": "sha512-o2+bg7GDS60cJMgz9jWqRUsWkMzLCxp+jFDeDUT5sjRlAxcJWZ2ylNdI7QQ2+CH5hWu7OnN+Cv3htt7AkSf96g==", + "node_modules/@semantic-release/npm/node_modules/normalize-package-data": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.0.tgz", + "integrity": "sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==", "dev": true, "dependencies": { - "@babel/helper-module-transforms": "^7.22.9", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-simple-access": "^7.22.5" + "hosted-git-info": "^7.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@babel/plugin-transform-modules-systemjs": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.11.tgz", - "integrity": "sha512-rIqHmHoMEOhI3VkVf5jQ15l539KrwhzqcBO6wdCNWPWc/JWt9ILNYNUssbRpeq0qWns8svuw8LnMNCvWBIJ8wA==", + "node_modules/@semantic-release/npm/node_modules/npm-run-path": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", + "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", "dev": true, "dependencies": { - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-module-transforms": "^7.22.9", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.5" + "path-key": "^4.0.0" }, "engines": { - "node": ">=6.9.0" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/plugin-transform-modules-umd": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.22.5.tgz", - "integrity": "sha512-+S6kzefN/E1vkSsKx8kmQuqeQsvCKCd1fraCM7zXm4SFoggI099Tr4G8U81+5gtMdUeMQ4ipdQffbKLX0/7dBQ==", + "node_modules/@semantic-release/npm/node_modules/onetime": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", "dev": true, "dependencies": { - "@babel/helper-module-transforms": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" + "mimic-fn": "^4.0.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=12" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz", - "integrity": "sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==", + "node_modules/@semantic-release/npm/node_modules/parse-json": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-7.1.0.tgz", + "integrity": "sha512-ihtdrgbqdONYD156Ap6qTcaGcGdkdAxodO1wLqQ/j7HP1u2sFYppINiq4jyC8F+Nm+4fVufylCV00QmkTHkSUg==", "dev": true, "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" + "@babel/code-frame": "^7.21.4", + "error-ex": "^1.3.2", + "json-parse-even-better-errors": "^3.0.0", + "lines-and-columns": "^2.0.3", + "type-fest": "^3.8.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=16" }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/plugin-transform-new-target": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.22.5.tgz", - "integrity": "sha512-AsF7K0Fx/cNKVyk3a+DW0JLo+Ua598/NxMRvxDnkpCIGFh43+h/v2xyhRUYf6oD8gE4QtL83C7zZVghMjHd+iw==", + "node_modules/@semantic-release/npm/node_modules/parse-json/node_modules/type-fest": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", + "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, "engines": { - "node": ">=6.9.0" + "node": ">=14.16" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.11.tgz", - "integrity": "sha512-YZWOw4HxXrotb5xsjMJUDlLgcDXSfO9eCmdl1bgW4+/lAGdkjaEvOnQ4p5WKKdUgSzO39dgPl0pTnfxm0OAXcg==", + "node_modules/@semantic-release/npm/node_modules/path-key": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" - }, "engines": { - "node": ">=6.9.0" + "node": ">=12" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/plugin-transform-numeric-separator": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.11.tgz", - "integrity": "sha512-3dzU4QGPsILdJbASKhF/V2TVP+gJya1PsueQCxIPCEcerqF21oEcrob4mzjsp2Py/1nLfF5m+xYNMDpmA8vffg==", + "node_modules/@semantic-release/npm/node_modules/read-pkg": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-8.1.0.tgz", + "integrity": "sha512-PORM8AgzXeskHO/WEv312k9U03B8K9JSiWF/8N9sUuFjBa+9SF2u6K7VClzXwDXab51jCd8Nd36CNM+zR97ScQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" + "@types/normalize-package-data": "^2.4.1", + "normalize-package-data": "^6.0.0", + "parse-json": "^7.0.0", + "type-fest": "^4.2.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=16" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/plugin-transform-object-rest-spread": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.11.tgz", - "integrity": "sha512-nX8cPFa6+UmbepISvlf5jhQyaC7ASs/7UxHmMkuJ/k5xSHvDPPaibMo+v3TXwU/Pjqhep/nFNpd3zn4YR59pnw==", + "node_modules/@semantic-release/npm/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", "dev": true, - "dependencies": { - "@babel/compat-data": "^7.22.9", - "@babel/helper-compilation-targets": "^7.22.10", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.22.5" - }, "engines": { - "node": ">=6.9.0" + "node": ">=14" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@babel/plugin-transform-object-super": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.22.5.tgz", - "integrity": "sha512-klXqyaT9trSjIUrcsYIfETAzmOEZL3cBYqOYLJxBHfMFFggmXOv+NYSX/Jbs9mzMVESw/WycLFPRx8ba/b2Ipw==", + "node_modules/@semantic-release/npm/node_modules/strip-final-newline": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-replace-supers": "^7.22.5" - }, "engines": { - "node": ">=6.9.0" + "node": ">=12" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/plugin-transform-optional-catch-binding": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.11.tgz", - "integrity": "sha512-rli0WxesXUeCJnMYhzAglEjLWVDF6ahb45HuprcmQuLidBJFWjNnOzssk2kuc6e33FlLaiZhG/kUIzUMWdBKaQ==", + "node_modules/@semantic-release/npm/node_modules/type-fest": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.3.1.tgz", + "integrity": "sha512-pphNW/msgOUSkJbH58x8sqpq8uQj6b0ZKGxEsLKMUnGorRcDjrUaLS+39+/ub41JNTwrrMyJcUB8+YZs3mbwqw==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" - }, "engines": { - "node": ">=6.9.0" + "node": ">=16" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/plugin-transform-optional-chaining": { - "version": "7.22.12", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.12.tgz", - "integrity": "sha512-7XXCVqZtyFWqjDsYDY4T45w4mlx1rf7aOgkc/Ww76xkgBiOlmjPkx36PBLHa1k1rwWvVgYMPsbuVnIamx2ZQJw==", + "node_modules/@semantic-release/release-notes-generator": { + "version": "11.0.7", + "resolved": "https://registry.npmjs.org/@semantic-release/release-notes-generator/-/release-notes-generator-11.0.7.tgz", + "integrity": "sha512-T09QB9ImmNx7Q6hY6YnnEbw/rEJ6a+22LBxfZq+pSAXg/OL/k0siwEm5cK4k1f9dE2Z2mPIjJKKohzUm0jbxcQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" + "conventional-changelog-angular": "^6.0.0", + "conventional-changelog-writer": "^6.0.0", + "conventional-commits-filter": "^4.0.0", + "conventional-commits-parser": "^5.0.0", + "debug": "^4.0.0", + "get-stream": "^7.0.0", + "import-from": "^4.0.0", + "into-stream": "^7.0.0", + "lodash-es": "^4.17.21", + "read-pkg-up": "^10.0.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=18" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "semantic-release": ">=20.1.0" } }, - "node_modules/@babel/plugin-transform-parameters": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.5.tgz", - "integrity": "sha512-AVkFUBurORBREOmHRKo06FjHYgjrabpdqRSwq6+C7R5iTCZOsM4QbcB27St0a4U6fffyAOqh3s/qEfybAhfivg==", + "node_modules/@semantic-release/release-notes-generator/node_modules/conventional-commits-filter": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-4.0.0.tgz", + "integrity": "sha512-rnpnibcSOdFcdclpFwWa+pPlZJhXE7l+XK04zxhbWrhgpR96h33QLz8hITTXbcYICxVr3HZFtbtUAQ+4LdBo9A==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=16" } }, - "node_modules/@babel/plugin-transform-private-methods": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.22.5.tgz", - "integrity": "sha512-PPjh4gyrQnGe97JTalgRGMuU4icsZFnWkzicB/fUtzlKUqvsWBKEpPPfr5a2JiyirZkHxnAqkQMO5Z5B2kK3fA==", + "node_modules/@semantic-release/release-notes-generator/node_modules/conventional-commits-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-5.0.0.tgz", + "integrity": "sha512-ZPMl0ZJbw74iS9LuX9YIAiW8pfM5p3yh2o/NbXHbkFuZzY5jvdi5jFycEOkmBW5H5I7nA+D6f3UcsCLP2vvSEA==", "dev": true, "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" + "is-text-path": "^2.0.0", + "JSONStream": "^1.3.5", + "meow": "^12.0.1", + "split2": "^4.0.0" }, - "engines": { - "node": ">=6.9.0" + "bin": { + "conventional-commits-parser": "cli.mjs" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">=16" } }, - "node_modules/@babel/plugin-transform-private-property-in-object": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.11.tgz", - "integrity": "sha512-sSCbqZDBKHetvjSwpyWzhuHkmW5RummxJBVbYLkGkaiTOWGxml7SXt0iWa03bzxFIx7wOj3g/ILRd0RcJKBeSQ==", + "node_modules/@semantic-release/release-notes-generator/node_modules/find-up": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", + "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", "dev": true, "dependencies": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-create-class-features-plugin": "^7.22.11", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + "locate-path": "^7.1.0", + "path-exists": "^5.0.0" }, "engines": { - "node": ">=6.9.0" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/plugin-transform-property-literals": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.22.5.tgz", - "integrity": "sha512-TiOArgddK3mK/x1Qwf5hay2pxI6wCZnvQqrFSqbtg1GLl2JcNMitVH/YnqjP+M31pLUeTfzY1HAXFDnUBV30rQ==", + "node_modules/@semantic-release/release-notes-generator/node_modules/get-stream": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-7.0.1.tgz", + "integrity": "sha512-3M8C1EOFN6r8AMUhwUAACIoXZJEOufDU5+0gFFN5uNs6XYOralD2Pqkl7m046va6x77FwposWXbAhPPIOus7mQ==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, "engines": { - "node": ">=6.9.0" + "node": ">=16" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/plugin-transform-regenerator": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.22.10.tgz", - "integrity": "sha512-F28b1mDt8KcT5bUyJc/U9nwzw6cV+UmTeRlXYIl2TNqMMJif0Jeey9/RQ3C4NOd2zp0/TRsDns9ttj2L523rsw==", + "node_modules/@semantic-release/release-notes-generator/node_modules/hosted-git-info": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.0.tgz", + "integrity": "sha512-ICclEpTLhHj+zCuSb2/usoNXSVkxUSIopre+b1w8NDY9Dntp9LO4vLdHYI336TH8sAqwrRgnSfdkBG2/YpisHA==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "regenerator-transform": "^0.15.2" + "lru-cache": "^10.0.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@babel/plugin-transform-reserved-words": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.22.5.tgz", - "integrity": "sha512-DTtGKFRQUDm8svigJzZHzb/2xatPc6TzNvAIJ5GqOKDsGFYgAskjRulbR/vGsPKq3OPqtexnz327qYpP57RFyA==", + "node_modules/@semantic-release/release-notes-generator/node_modules/is-text-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-2.0.0.tgz", + "integrity": "sha512-+oDTluR6WEjdXEJMnC2z6A4FRwFoYuvShVVEGsS7ewc0UTi2QtAKMDJuL4BDEVt+5T7MjFo12RP8ghOM75oKJw==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" + "text-extensions": "^2.0.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=8" } }, - "node_modules/@babel/plugin-transform-shorthand-properties": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.22.5.tgz", - "integrity": "sha512-vM4fq9IXHscXVKzDv5itkO1X52SmdFBFcMIBZ2FRn2nqVYqw6dBexUgMvAjHW+KXpPPViD/Yo3GrDEBaRC0QYA==", + "node_modules/@semantic-release/release-notes-generator/node_modules/json-parse-even-better-errors": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.0.tgz", + "integrity": "sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/@babel/plugin-transform-spread": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.22.5.tgz", - "integrity": "sha512-5ZzDQIGyvN4w8+dMmpohL6MBo+l2G7tfC/O2Dg7/hjpgeWvUx8FzfeOKxGog9IimPa4YekaQ9PlDqTLOljkcxg==", + "node_modules/@semantic-release/release-notes-generator/node_modules/lines-and-columns": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.3.tgz", + "integrity": "sha512-cNOjgCnLB+FnvWWtyRTzmB3POJ+cXxTA81LoW7u8JdmhfXzriropYwpjShnz1QLLWsQwY7nIxoDmcPTwphDK9w==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" - }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, - "node_modules/@babel/plugin-transform-sticky-regex": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.22.5.tgz", - "integrity": "sha512-zf7LuNpHG0iEeiyCNwX4j3gDg1jgt1k3ZdXBKbZSoA3BbGQGvMiSvfbZRR3Dr3aeJe3ooWFZxOOG3IRStYp2Bw==", + "node_modules/@semantic-release/release-notes-generator/node_modules/locate-path": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", + "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" + "p-locate": "^6.0.0" }, "engines": { - "node": ">=6.9.0" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/plugin-transform-template-literals": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.22.5.tgz", - "integrity": "sha512-5ciOehRNf+EyUeewo8NkbQiUs4d6ZxiHo6BcBcnFlgiJfu16q0bQUw9Jvo0b0gBKFG1SMhDSjeKXSYuJLeFSMA==", + "node_modules/@semantic-release/release-notes-generator/node_modules/lru-cache": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": "14 || >=16.14" } }, - "node_modules/@babel/plugin-transform-typeof-symbol": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.22.5.tgz", - "integrity": "sha512-bYkI5lMzL4kPii4HHEEChkD0rkc+nvnlR6+o/qdqR6zrm0Sv/nodmyLhlq2DO0YKLUNd2VePmPRjJXSBh9OIdA==", + "node_modules/@semantic-release/release-notes-generator/node_modules/meow": { + "version": "12.1.1", + "resolved": "https://registry.npmjs.org/meow/-/meow-12.1.1.tgz", + "integrity": "sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, "engines": { - "node": ">=6.9.0" + "node": ">=16.10" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/plugin-transform-typescript": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.11.tgz", - "integrity": "sha512-0E4/L+7gfvHub7wsbTv03oRtD69X31LByy44fGmFzbZScpupFByMcgCJ0VbBTkzyjSJKuRoGN8tcijOWKTmqOA==", + "node_modules/@semantic-release/release-notes-generator/node_modules/normalize-package-data": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.0.tgz", + "integrity": "sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==", "dev": true, "dependencies": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-create-class-features-plugin": "^7.22.11", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-typescript": "^7.22.5" + "hosted-git-info": "^7.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@babel/plugin-transform-unicode-escapes": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.22.10.tgz", - "integrity": "sha512-lRfaRKGZCBqDlRU3UIFovdp9c9mEvlylmpod0/OatICsSfuQ9YFthRo1tpTkGsklEefZdqlEFdY4A2dwTb6ohg==", + "node_modules/@semantic-release/release-notes-generator/node_modules/p-limit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" + "yocto-queue": "^1.0.0" }, "engines": { - "node": ">=6.9.0" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/plugin-transform-unicode-property-regex": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.22.5.tgz", - "integrity": "sha512-HCCIb+CbJIAE6sXn5CjFQXMwkCClcOfPCzTlilJ8cUatfzwHlWQkbtV0zD338u9dZskwvuOYTuuaMaA8J5EI5A==", + "node_modules/@semantic-release/release-notes-generator/node_modules/p-locate": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", + "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", "dev": true, "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" + "p-limit": "^4.0.0" }, "engines": { - "node": ">=6.9.0" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/plugin-transform-unicode-regex": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.22.5.tgz", - "integrity": "sha512-028laaOKptN5vHJf9/Arr/HiJekMd41hOEZYvNsrsXqJ7YPYuX2bQxh31fkZzGmq3YqHRJzYFFAVYvKfMPKqyg==", + "node_modules/@semantic-release/release-notes-generator/node_modules/parse-json": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-7.1.0.tgz", + "integrity": "sha512-ihtdrgbqdONYD156Ap6qTcaGcGdkdAxodO1wLqQ/j7HP1u2sFYppINiq4jyC8F+Nm+4fVufylCV00QmkTHkSUg==", "dev": true, "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" + "@babel/code-frame": "^7.21.4", + "error-ex": "^1.3.2", + "json-parse-even-better-errors": "^3.0.0", + "lines-and-columns": "^2.0.3", + "type-fest": "^3.8.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=16" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/plugin-transform-unicode-sets-regex": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.22.5.tgz", - "integrity": "sha512-lhMfi4FC15j13eKrh3DnYHjpGj6UKQHtNKTbtc1igvAhRy4+kLhV07OpLcsN0VgDEw/MjAvJO4BdMJsHwMhzCg==", + "node_modules/@semantic-release/release-notes-generator/node_modules/parse-json/node_modules/type-fest": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", + "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/preset-env": { - "version": "7.22.14", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.22.14.tgz", - "integrity": "sha512-daodMIoVo+ol/g+//c/AH+szBkFj4STQUikvBijRGL72Ph+w+AMTSh55DUETe8KJlPlDT1k/mp7NBfOuiWmoig==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.22.9", - "@babel/helper-compilation-targets": "^7.22.10", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-validator-option": "^7.22.5", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.22.5", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.22.5", - "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.14.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-import-assertions": "^7.22.5", - "@babel/plugin-syntax-import-attributes": "^7.22.5", - "@babel/plugin-syntax-import-meta": "^7.10.4", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", - "@babel/plugin-transform-arrow-functions": "^7.22.5", - "@babel/plugin-transform-async-generator-functions": "^7.22.11", - "@babel/plugin-transform-async-to-generator": "^7.22.5", - "@babel/plugin-transform-block-scoped-functions": "^7.22.5", - "@babel/plugin-transform-block-scoping": "^7.22.10", - "@babel/plugin-transform-class-properties": "^7.22.5", - "@babel/plugin-transform-class-static-block": "^7.22.11", - "@babel/plugin-transform-classes": "^7.22.6", - "@babel/plugin-transform-computed-properties": "^7.22.5", - "@babel/plugin-transform-destructuring": "^7.22.10", - "@babel/plugin-transform-dotall-regex": "^7.22.5", - "@babel/plugin-transform-duplicate-keys": "^7.22.5", - "@babel/plugin-transform-dynamic-import": "^7.22.11", - "@babel/plugin-transform-exponentiation-operator": "^7.22.5", - "@babel/plugin-transform-export-namespace-from": "^7.22.11", - "@babel/plugin-transform-for-of": "^7.22.5", - "@babel/plugin-transform-function-name": "^7.22.5", - "@babel/plugin-transform-json-strings": "^7.22.11", - "@babel/plugin-transform-literals": "^7.22.5", - "@babel/plugin-transform-logical-assignment-operators": "^7.22.11", - "@babel/plugin-transform-member-expression-literals": "^7.22.5", - "@babel/plugin-transform-modules-amd": "^7.22.5", - "@babel/plugin-transform-modules-commonjs": "^7.22.11", - "@babel/plugin-transform-modules-systemjs": "^7.22.11", - "@babel/plugin-transform-modules-umd": "^7.22.5", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.5", - "@babel/plugin-transform-new-target": "^7.22.5", - "@babel/plugin-transform-nullish-coalescing-operator": "^7.22.11", - "@babel/plugin-transform-numeric-separator": "^7.22.11", - "@babel/plugin-transform-object-rest-spread": "^7.22.11", - "@babel/plugin-transform-object-super": "^7.22.5", - "@babel/plugin-transform-optional-catch-binding": "^7.22.11", - "@babel/plugin-transform-optional-chaining": "^7.22.12", - "@babel/plugin-transform-parameters": "^7.22.5", - "@babel/plugin-transform-private-methods": "^7.22.5", - "@babel/plugin-transform-private-property-in-object": "^7.22.11", - "@babel/plugin-transform-property-literals": "^7.22.5", - "@babel/plugin-transform-regenerator": "^7.22.10", - "@babel/plugin-transform-reserved-words": "^7.22.5", - "@babel/plugin-transform-shorthand-properties": "^7.22.5", - "@babel/plugin-transform-spread": "^7.22.5", - "@babel/plugin-transform-sticky-regex": "^7.22.5", - "@babel/plugin-transform-template-literals": "^7.22.5", - "@babel/plugin-transform-typeof-symbol": "^7.22.5", - "@babel/plugin-transform-unicode-escapes": "^7.22.10", - "@babel/plugin-transform-unicode-property-regex": "^7.22.5", - "@babel/plugin-transform-unicode-regex": "^7.22.5", - "@babel/plugin-transform-unicode-sets-regex": "^7.22.5", - "@babel/preset-modules": "0.1.6-no-external-plugins", - "@babel/types": "^7.22.11", - "babel-plugin-polyfill-corejs2": "^0.4.5", - "babel-plugin-polyfill-corejs3": "^0.8.3", - "babel-plugin-polyfill-regenerator": "^0.5.2", - "core-js-compat": "^3.31.0", - "semver": "^6.3.1" - }, "engines": { - "node": ">=6.9.0" + "node": ">=14.16" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/preset-modules": { - "version": "0.1.6-no-external-plugins", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", - "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", + "node_modules/@semantic-release/release-notes-generator/node_modules/path-exists": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", + "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, - "node_modules/@babel/preset-typescript": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.22.11.tgz", - "integrity": "sha512-tWY5wyCZYBGY7IlalfKI1rLiGlIfnwsRHZqlky0HVv8qviwQ1Uo/05M6+s+TcTCVa6Bmoo2uJW5TMFX6Wa4qVg==", + "node_modules/@semantic-release/release-notes-generator/node_modules/read-pkg": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-8.1.0.tgz", + "integrity": "sha512-PORM8AgzXeskHO/WEv312k9U03B8K9JSiWF/8N9sUuFjBa+9SF2u6K7VClzXwDXab51jCd8Nd36CNM+zR97ScQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-validator-option": "^7.22.5", - "@babel/plugin-syntax-jsx": "^7.22.5", - "@babel/plugin-transform-modules-commonjs": "^7.22.11", - "@babel/plugin-transform-typescript": "^7.22.11" + "@types/normalize-package-data": "^2.4.1", + "normalize-package-data": "^6.0.0", + "parse-json": "^7.0.0", + "type-fest": "^4.2.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=16" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/regjsgen": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", - "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==", - "dev": true - }, - "node_modules/@babel/runtime": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.11.tgz", - "integrity": "sha512-ee7jVNlWN09+KftVOu9n7S8gQzD/Z6hN/I8VBRXW4P1+Xe7kJGXMwu8vds4aGIMHZnNbdpSWCfZZtinytpcAvA==", + "node_modules/@semantic-release/release-notes-generator/node_modules/read-pkg-up": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-10.1.0.tgz", + "integrity": "sha512-aNtBq4jR8NawpKJQldrQcSW9y/d+KWH4v24HWkHljOZ7H0av+YTGANBzRh9A5pw7v/bLVsLVPpOhJ7gHNVy8lA==", "dev": true, "dependencies": { - "regenerator-runtime": "^0.14.0" + "find-up": "^6.3.0", + "read-pkg": "^8.1.0", + "type-fest": "^4.2.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/template": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", - "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==", + "node_modules/@semantic-release/release-notes-generator/node_modules/split2": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", + "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==", "dev": true, - "dependencies": { - "@babel/code-frame": "^7.22.5", - "@babel/parser": "^7.22.5", - "@babel/types": "^7.22.5" - }, "engines": { - "node": ">=6.9.0" + "node": ">= 10.x" } }, - "node_modules/@babel/traverse": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.11.tgz", - "integrity": "sha512-mzAenteTfomcB7mfPtyi+4oe5BZ6MXxWcn4CX+h4IRJ+OOGXBrWU6jDQavkQI9Vuc5P+donFabBfFCcmWka9lQ==", + "node_modules/@semantic-release/release-notes-generator/node_modules/text-extensions": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-2.4.0.tgz", + "integrity": "sha512-te/NtwBwfiNRLf9Ijqx3T0nlqZiQ2XrrtBvu+cLL8ZRrGkO0NHTug8MYFKyoSrv/sHTaSKfilUkizV6XhxMJ3g==", "dev": true, - "dependencies": { - "@babel/code-frame": "^7.22.10", - "@babel/generator": "^7.22.10", - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-function-name": "^7.22.5", - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.22.11", - "@babel/types": "^7.22.11", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, "engines": { - "node": ">=6.9.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/types": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.11.tgz", - "integrity": "sha512-siazHiGuZRz9aB9NpHy9GOs9xiQPKnMzgdr493iI1M67vRXpnEq8ZOOKzezC5q7zwuQ6sDhdSp4SD9ixKSqKZg==", + "node_modules/@semantic-release/release-notes-generator/node_modules/type-fest": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.3.1.tgz", + "integrity": "sha512-pphNW/msgOUSkJbH58x8sqpq8uQj6b0ZKGxEsLKMUnGorRcDjrUaLS+39+/ub41JNTwrrMyJcUB8+YZs3mbwqw==", "dev": true, - "dependencies": { - "@babel/helper-string-parser": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.5", - "to-fast-properties": "^2.0.0" - }, "engines": { - "node": ">=6.9.0" + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@bcoe/v8-coverage": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", - "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", - "dev": true - }, - "node_modules/@colors/colors": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", - "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", + "node_modules/@semantic-release/release-notes-generator/node_modules/yocto-queue": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", + "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", "dev": true, - "optional": true, "engines": { - "node": ">=0.1.90" + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@commitlint/cli": { - "version": "17.7.1", - "resolved": "https://registry.npmjs.org/@commitlint/cli/-/cli-17.7.1.tgz", - "integrity": "sha512-BCm/AT06SNCQtvFv921iNhudOHuY16LswT0R3OeolVGLk8oP+Rk9TfQfgjH7QPMjhvp76bNqGFEcpKojxUNW1g==", + "node_modules/@tsconfig/node10": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", + "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", + "dev": true + }, + "node_modules/@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "dev": true + }, + "node_modules/@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "dev": true + }, + "node_modules/@tsconfig/node16": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", + "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", + "dev": true + }, + "node_modules/@types/minimist": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz", + "integrity": "sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==", + "dev": true + }, + "node_modules/@types/node": { + "version": "20.4.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.4.7.tgz", + "integrity": "sha512-bUBrPjEry2QUTsnuEjzjbS7voGWCc30W0qzgMf90GPeDGFRakvrz47ju+oqDAKCXLUCe39u57/ORMl/O/04/9g==", + "dev": true + }, + "node_modules/@types/normalize-package-data": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", + "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==", + "dev": true + }, + "node_modules/acorn": { + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", + "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", "dev": true, - "dependencies": { - "@commitlint/format": "^17.4.4", - "@commitlint/lint": "^17.7.0", - "@commitlint/load": "^17.7.1", - "@commitlint/read": "^17.5.1", - "@commitlint/types": "^17.4.4", - "execa": "^5.0.0", - "lodash.isfunction": "^3.0.9", - "resolve-from": "5.0.0", - "resolve-global": "1.0.0", - "yargs": "^17.0.0" - }, "bin": { - "commitlint": "cli.js" + "acorn": "bin/acorn" }, "engines": { - "node": ">=v14" + "node": ">=0.4.0" } }, - "node_modules/@commitlint/config-conventional": { - "version": "17.7.0", - "resolved": "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-17.7.0.tgz", - "integrity": "sha512-iicqh2o6et+9kWaqsQiEYZzfLbtoWv9uZl8kbI8EGfnc0HeGafQBF7AJ0ylN9D/2kj6txltsdyQs8+2fTMwWEw==", + "node_modules/acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", "dev": true, - "dependencies": { - "conventional-changelog-conventionalcommits": "^6.1.0" - }, "engines": { - "node": ">=v14" + "node": ">=0.4.0" } }, - "node_modules/@commitlint/config-validator": { - "version": "17.6.7", - "resolved": "https://registry.npmjs.org/@commitlint/config-validator/-/config-validator-17.6.7.tgz", - "integrity": "sha512-vJSncmnzwMvpr3lIcm0I8YVVDJTzyjy7NZAeXbTXy+MPUdAr9pKyyg7Tx/ebOQ9kqzE6O9WT6jg2164br5UdsQ==", + "node_modules/agent-base": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", + "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", "dev": true, "dependencies": { - "@commitlint/types": "^17.4.4", - "ajv": "^8.11.0" + "debug": "^4.3.4" }, "engines": { - "node": ">=v14" + "node": ">= 14" } }, - "node_modules/@commitlint/ensure": { - "version": "17.6.7", - "resolved": "https://registry.npmjs.org/@commitlint/ensure/-/ensure-17.6.7.tgz", - "integrity": "sha512-mfDJOd1/O/eIb/h4qwXzUxkmskXDL9vNPnZ4AKYKiZALz4vHzwMxBSYtyL2mUIDeU9DRSpEUins8SeKtFkYHSw==", - "dev": true, - "dependencies": { - "@commitlint/types": "^17.4.4", - "lodash.camelcase": "^4.3.0", - "lodash.kebabcase": "^4.1.1", - "lodash.snakecase": "^4.1.1", - "lodash.startcase": "^4.4.0", - "lodash.upperfirst": "^4.3.1" - }, - "engines": { - "node": ">=v14" - } - }, - "node_modules/@commitlint/execute-rule": { - "version": "17.4.0", - "resolved": "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-17.4.0.tgz", - "integrity": "sha512-LIgYXuCSO5Gvtc0t9bebAMSwd68ewzmqLypqI2Kke1rqOqqDbMpYcYfoPfFlv9eyLIh4jocHWwCK5FS7z9icUA==", - "dev": true, - "engines": { - "node": ">=v14" - } - }, - "node_modules/@commitlint/format": { - "version": "17.4.4", - "resolved": "https://registry.npmjs.org/@commitlint/format/-/format-17.4.4.tgz", - "integrity": "sha512-+IS7vpC4Gd/x+uyQPTAt3hXs5NxnkqAZ3aqrHd5Bx/R9skyCAWusNlNbw3InDbAK6j166D9asQM8fnmYIa+CXQ==", - "dev": true, - "dependencies": { - "@commitlint/types": "^17.4.4", - "chalk": "^4.1.0" - }, - "engines": { - "node": ">=v14" - } - }, - "node_modules/@commitlint/format/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@commitlint/format/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@commitlint/format/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@commitlint/format/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/@commitlint/format/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@commitlint/format/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@commitlint/is-ignored": { - "version": "17.7.0", - "resolved": "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-17.7.0.tgz", - "integrity": "sha512-043rA7m45tyEfW7Zv2vZHF++176MLHH9h70fnPoYlB1slKBeKl8BwNIlnPg4xBdRBVNPaCqvXxWswx2GR4c9Hw==", - "dev": true, - "dependencies": { - "@commitlint/types": "^17.4.4", - "semver": "7.5.4" - }, - "engines": { - "node": ">=v14" - } - }, - "node_modules/@commitlint/is-ignored/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@commitlint/is-ignored/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@commitlint/is-ignored/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/@commitlint/lint": { - "version": "17.7.0", - "resolved": "https://registry.npmjs.org/@commitlint/lint/-/lint-17.7.0.tgz", - "integrity": "sha512-TCQihm7/uszA5z1Ux1vw+Nf3yHTgicus/+9HiUQk+kRSQawByxZNESeQoX9ujfVd3r4Sa+3fn0JQAguG4xvvbA==", - "dev": true, - "dependencies": { - "@commitlint/is-ignored": "^17.7.0", - "@commitlint/parse": "^17.7.0", - "@commitlint/rules": "^17.7.0", - "@commitlint/types": "^17.4.4" - }, - "engines": { - "node": ">=v14" - } - }, - "node_modules/@commitlint/load": { - "version": "17.7.1", - "resolved": "https://registry.npmjs.org/@commitlint/load/-/load-17.7.1.tgz", - "integrity": "sha512-S/QSOjE1ztdogYj61p6n3UbkUvweR17FQ0zDbNtoTLc+Hz7vvfS7ehoTMQ27hPSjVBpp7SzEcOQu081RLjKHJQ==", - "dev": true, - "dependencies": { - "@commitlint/config-validator": "^17.6.7", - "@commitlint/execute-rule": "^17.4.0", - "@commitlint/resolve-extends": "^17.6.7", - "@commitlint/types": "^17.4.4", - "@types/node": "20.4.7", - "chalk": "^4.1.0", - "cosmiconfig": "^8.0.0", - "cosmiconfig-typescript-loader": "^4.0.0", - "lodash.isplainobject": "^4.0.6", - "lodash.merge": "^4.6.2", - "lodash.uniq": "^4.5.0", - "resolve-from": "^5.0.0", - "ts-node": "^10.8.1", - "typescript": "^4.6.4 || ^5.0.0" - }, - "engines": { - "node": ">=v14" - } - }, - "node_modules/@commitlint/load/node_modules/@types/node": { - "version": "20.4.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.4.7.tgz", - "integrity": "sha512-bUBrPjEry2QUTsnuEjzjbS7voGWCc30W0qzgMf90GPeDGFRakvrz47ju+oqDAKCXLUCe39u57/ORMl/O/04/9g==", - "dev": true - }, - "node_modules/@commitlint/load/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@commitlint/load/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@commitlint/load/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@commitlint/load/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/@commitlint/load/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@commitlint/load/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@commitlint/message": { - "version": "17.4.2", - "resolved": "https://registry.npmjs.org/@commitlint/message/-/message-17.4.2.tgz", - "integrity": "sha512-3XMNbzB+3bhKA1hSAWPCQA3lNxR4zaeQAQcHj0Hx5sVdO6ryXtgUBGGv+1ZCLMgAPRixuc6en+iNAzZ4NzAa8Q==", - "dev": true, - "engines": { - "node": ">=v14" - } - }, - "node_modules/@commitlint/parse": { - "version": "17.7.0", - "resolved": "https://registry.npmjs.org/@commitlint/parse/-/parse-17.7.0.tgz", - "integrity": "sha512-dIvFNUMCUHqq5Abv80mIEjLVfw8QNuA4DS7OWip4pcK/3h5wggmjVnlwGCDvDChkw2TjK1K6O+tAEV78oxjxag==", - "dev": true, - "dependencies": { - "@commitlint/types": "^17.4.4", - "conventional-changelog-angular": "^6.0.0", - "conventional-commits-parser": "^4.0.0" - }, - "engines": { - "node": ">=v14" - } - }, - "node_modules/@commitlint/read": { - "version": "17.5.1", - "resolved": "https://registry.npmjs.org/@commitlint/read/-/read-17.5.1.tgz", - "integrity": "sha512-7IhfvEvB//p9aYW09YVclHbdf1u7g7QhxeYW9ZHSO8Huzp8Rz7m05aCO1mFG7G8M+7yfFnXB5xOmG18brqQIBg==", - "dev": true, - "dependencies": { - "@commitlint/top-level": "^17.4.0", - "@commitlint/types": "^17.4.4", - "fs-extra": "^11.0.0", - "git-raw-commits": "^2.0.11", - "minimist": "^1.2.6" - }, - "engines": { - "node": ">=v14" - } - }, - "node_modules/@commitlint/resolve-extends": { - "version": "17.6.7", - "resolved": "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-17.6.7.tgz", - "integrity": "sha512-PfeoAwLHtbOaC9bGn/FADN156CqkFz6ZKiVDMjuC2N5N0740Ke56rKU7Wxdwya8R8xzLK9vZzHgNbuGhaOVKIg==", - "dev": true, - "dependencies": { - "@commitlint/config-validator": "^17.6.7", - "@commitlint/types": "^17.4.4", - "import-fresh": "^3.0.0", - "lodash.mergewith": "^4.6.2", - "resolve-from": "^5.0.0", - "resolve-global": "^1.0.0" - }, - "engines": { - "node": ">=v14" - } - }, - "node_modules/@commitlint/rules": { - "version": "17.7.0", - "resolved": "https://registry.npmjs.org/@commitlint/rules/-/rules-17.7.0.tgz", - "integrity": "sha512-J3qTh0+ilUE5folSaoK91ByOb8XeQjiGcdIdiB/8UT1/Rd1itKo0ju/eQVGyFzgTMYt8HrDJnGTmNWwcMR1rmA==", - "dev": true, - "dependencies": { - "@commitlint/ensure": "^17.6.7", - "@commitlint/message": "^17.4.2", - "@commitlint/to-lines": "^17.4.0", - "@commitlint/types": "^17.4.4", - "execa": "^5.0.0" - }, - "engines": { - "node": ">=v14" - } - }, - "node_modules/@commitlint/to-lines": { - "version": "17.4.0", - "resolved": "https://registry.npmjs.org/@commitlint/to-lines/-/to-lines-17.4.0.tgz", - "integrity": "sha512-LcIy/6ZZolsfwDUWfN1mJ+co09soSuNASfKEU5sCmgFCvX5iHwRYLiIuoqXzOVDYOy7E7IcHilr/KS0e5T+0Hg==", - "dev": true, - "engines": { - "node": ">=v14" - } - }, - "node_modules/@commitlint/top-level": { - "version": "17.4.0", - "resolved": "https://registry.npmjs.org/@commitlint/top-level/-/top-level-17.4.0.tgz", - "integrity": "sha512-/1loE/g+dTTQgHnjoCy0AexKAEFyHsR2zRB4NWrZ6lZSMIxAhBJnmCqwao7b4H8888PsfoTBCLBYIw8vGnej8g==", - "dev": true, - "dependencies": { - "find-up": "^5.0.0" - }, - "engines": { - "node": ">=v14" - } - }, - "node_modules/@commitlint/types": { - "version": "17.4.4", - "resolved": "https://registry.npmjs.org/@commitlint/types/-/types-17.4.4.tgz", - "integrity": "sha512-amRN8tRLYOsxRr6mTnGGGvB5EmW/4DDjLMgiwK3CCVEmN6Sr/6xePGEpWaspKkckILuUORCwe6VfDBw6uj4axQ==", - "dev": true, - "dependencies": { - "chalk": "^4.1.0" - }, - "engines": { - "node": ">=v14" - } - }, - "node_modules/@commitlint/types/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@commitlint/types/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@commitlint/types/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@commitlint/types/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/@commitlint/types/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@commitlint/types/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@cspotcode/source-map-support": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", - "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", - "dev": true, - "dependencies": { - "@jridgewell/trace-mapping": "0.3.9" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - "dev": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "node_modules/@esbuild/android-arm": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", - "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", - "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz", - "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", - "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/darwin-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", - "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/freebsd-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", - "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/freebsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", - "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-arm": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", - "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", - "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-ia32": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", - "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-loong64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", - "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", - "cpu": [ - "loong64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-mips64el": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", - "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", - "cpu": [ - "mips64el" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-ppc64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", - "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-riscv64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", - "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-s390x": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", - "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", - "cpu": [ - "s390x" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", - "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/netbsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", - "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/openbsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", - "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/sunos-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", - "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", - "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-ia32": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", - "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", - "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@eslint-community/eslint-utils": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", - "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", - "dev": true, - "dependencies": { - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" - } - }, - "node_modules/@eslint-community/regexpp": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.8.0.tgz", - "integrity": "sha512-JylOEEzDiOryeUnFbQz+oViCXS0KsvR1mvHkoMiu5+UiBvy+RYX7tzlIIIEstF/gVa2tj9AQXk3dgnxv6KxhFg==", - "dev": true, - "engines": { - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" - } - }, - "node_modules/@eslint/eslintrc": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", - "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", - "dev": true, - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.6.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@eslint/eslintrc/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.21.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", - "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", - "dev": true, - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@eslint/eslintrc/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/@eslint/eslintrc/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@eslint/js": { - "version": "8.48.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.48.0.tgz", - "integrity": "sha512-ZSjtmelB7IJfWD2Fvb7+Z+ChTIKWq6kjda95fLcQKNS5aheVHn4IkfgRQE3sIIzTcSLwLcLZUD9UBt+V7+h+Pw==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.11.11", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.11.tgz", - "integrity": "sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==", - "dev": true, - "dependencies": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", - "minimatch": "^3.0.5" - }, - "engines": { - "node": ">=10.10.0" - } - }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", - "dev": true, - "engines": { - "node": ">=12.22" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, - "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", - "dev": true - }, - "node_modules/@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", - "dev": true, - "dependencies": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/console": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.6.4.tgz", - "integrity": "sha512-wNK6gC0Ha9QeEPSkeJedQuTQqxZYnDPuDcDhVuVatRvMkL4D0VTvFVZj+Yuh6caG2aOfzkUZ36KtCmLNtR02hw==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^29.6.3", - "jest-util": "^29.6.3", - "slash": "^3.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/console/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@jest/console/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@jest/console/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@jest/console/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/@jest/console/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/console/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/core": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.6.4.tgz", - "integrity": "sha512-U/vq5ccNTSVgYH7mHnodHmCffGWHJnz/E1BEWlLuK5pM4FZmGfBn/nrJGLjUsSmyx3otCeqc1T31F4y08AMDLg==", - "dev": true, - "dependencies": { - "@jest/console": "^29.6.4", - "@jest/reporters": "^29.6.4", - "@jest/test-result": "^29.6.4", - "@jest/transform": "^29.6.4", - "@jest/types": "^29.6.3", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "jest-changed-files": "^29.6.3", - "jest-config": "^29.6.4", - "jest-haste-map": "^29.6.4", - "jest-message-util": "^29.6.3", - "jest-regex-util": "^29.6.3", - "jest-resolve": "^29.6.4", - "jest-resolve-dependencies": "^29.6.4", - "jest-runner": "^29.6.4", - "jest-runtime": "^29.6.4", - "jest-snapshot": "^29.6.4", - "jest-util": "^29.6.3", - "jest-validate": "^29.6.3", - "jest-watcher": "^29.6.4", - "micromatch": "^4.0.4", - "pretty-format": "^29.6.3", - "slash": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } - } - }, - "node_modules/@jest/core/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@jest/core/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@jest/core/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@jest/core/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/@jest/core/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/core/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/environment": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.6.4.tgz", - "integrity": "sha512-sQ0SULEjA1XUTHmkBRl7A1dyITM9yb1yb3ZNKPX3KlTd6IG7mWUe3e2yfExtC2Zz1Q+mMckOLHmL/qLiuQJrBQ==", - "dev": true, - "dependencies": { - "@jest/fake-timers": "^29.6.4", - "@jest/types": "^29.6.3", - "@types/node": "*", - "jest-mock": "^29.6.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/expect": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.6.4.tgz", - "integrity": "sha512-Warhsa7d23+3X5bLbrbYvaehcgX5TLYhI03JKoedTiI8uJU4IhqYBWF7OSSgUyz4IgLpUYPkK0AehA5/fRclAA==", - "dev": true, - "dependencies": { - "expect": "^29.6.4", - "jest-snapshot": "^29.6.4" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/expect-utils": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.6.4.tgz", - "integrity": "sha512-FEhkJhqtvBwgSpiTrocquJCdXPsyvNKcl/n7A3u7X4pVoF4bswm11c9d4AV+kfq2Gpv/mM8x7E7DsRvH+djkrg==", - "dev": true, - "dependencies": { - "jest-get-type": "^29.6.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/fake-timers": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.6.4.tgz", - "integrity": "sha512-6UkCwzoBK60edXIIWb0/KWkuj7R7Qq91vVInOe3De6DSpaEiqjKcJw4F7XUet24Wupahj9J6PlR09JqJ5ySDHw==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.3", - "@sinonjs/fake-timers": "^10.0.2", - "@types/node": "*", - "jest-message-util": "^29.6.3", - "jest-mock": "^29.6.3", - "jest-util": "^29.6.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/globals": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.6.4.tgz", - "integrity": "sha512-wVIn5bdtjlChhXAzVXavcY/3PEjf4VqM174BM3eGL5kMxLiZD5CLnbmkEyA1Dwh9q8XjP6E8RwjBsY/iCWrWsA==", - "dev": true, - "dependencies": { - "@jest/environment": "^29.6.4", - "@jest/expect": "^29.6.4", - "@jest/types": "^29.6.3", - "jest-mock": "^29.6.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/reporters": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.6.4.tgz", - "integrity": "sha512-sxUjWxm7QdchdrD3NfWKrL8FBsortZeibSJv4XLjESOOjSUOkjQcb0ZHJwfhEGIvBvTluTzfG2yZWZhkrXJu8g==", - "dev": true, - "dependencies": { - "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^29.6.4", - "@jest/test-result": "^29.6.4", - "@jest/transform": "^29.6.4", - "@jest/types": "^29.6.3", - "@jridgewell/trace-mapping": "^0.3.18", - "@types/node": "*", - "chalk": "^4.0.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^6.0.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.1.3", - "jest-message-util": "^29.6.3", - "jest-util": "^29.6.3", - "jest-worker": "^29.6.4", - "slash": "^3.0.0", - "string-length": "^4.0.1", - "strip-ansi": "^6.0.0", - "v8-to-istanbul": "^9.0.1" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } - } - }, - "node_modules/@jest/reporters/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@jest/reporters/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@jest/reporters/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@jest/reporters/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/@jest/reporters/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/reporters/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/schemas": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", - "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", - "dev": true, - "dependencies": { - "@sinclair/typebox": "^0.27.8" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/source-map": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz", - "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==", - "dev": true, - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.18", - "callsites": "^3.0.0", - "graceful-fs": "^4.2.9" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/test-result": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.6.4.tgz", - "integrity": "sha512-uQ1C0AUEN90/dsyEirgMLlouROgSY+Wc/JanVVk0OiUKa5UFh7sJpMEM3aoUBAz2BRNvUJ8j3d294WFuRxSyOQ==", - "dev": true, - "dependencies": { - "@jest/console": "^29.6.4", - "@jest/types": "^29.6.3", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/test-sequencer": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.6.4.tgz", - "integrity": "sha512-E84M6LbpcRq3fT4ckfKs9ryVanwkaIB0Ws9bw3/yP4seRLg/VaCZ/LgW0MCq5wwk4/iP/qnilD41aj2fsw2RMg==", - "dev": true, - "dependencies": { - "@jest/test-result": "^29.6.4", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.6.4", - "slash": "^3.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/transform": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.6.4.tgz", - "integrity": "sha512-8thgRSiXUqtr/pPGY/OsyHuMjGyhVnWrFAwoxmIemlBuiMyU1WFs0tXoNxzcr4A4uErs/ABre76SGmrr5ab/AA==", - "dev": true, - "dependencies": { - "@babel/core": "^7.11.6", - "@jest/types": "^29.6.3", - "@jridgewell/trace-mapping": "^0.3.18", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^2.0.0", - "fast-json-stable-stringify": "^2.1.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.6.4", - "jest-regex-util": "^29.6.3", - "jest-util": "^29.6.3", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "write-file-atomic": "^4.0.2" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/transform/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@jest/transform/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@jest/transform/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@jest/transform/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/@jest/transform/node_modules/convert-source-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", - "dev": true - }, - "node_modules/@jest/transform/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/transform/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/types": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", - "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.6.3", - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^17.0.8", - "chalk": "^4.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/types/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@jest/types/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@jest/types/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@jest/types/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/@jest/types/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/types/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", - "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", - "dev": true - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.19", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz", - "integrity": "sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==", - "dev": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@octokit/auth-token": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-4.0.0.tgz", - "integrity": "sha512-tY/msAuJo6ARbK6SPIxZrPBms3xPbfwBrulZe0Wtr/DIY9lje2HeV1uoebShn6mx7SjCHif6EjMvoREj+gZ+SA==", - "dev": true, - "engines": { - "node": ">= 18" - } - }, - "node_modules/@octokit/core": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@octokit/core/-/core-5.0.0.tgz", - "integrity": "sha512-YbAtMWIrbZ9FCXbLwT9wWB8TyLjq9mxpKdgB3dUNxQcIVTf9hJ70gRPwAcqGZdY6WdJPZ0I7jLaaNDCiloGN2A==", - "dev": true, - "dependencies": { - "@octokit/auth-token": "^4.0.0", - "@octokit/graphql": "^7.0.0", - "@octokit/request": "^8.0.2", - "@octokit/request-error": "^5.0.0", - "@octokit/types": "^11.0.0", - "before-after-hook": "^2.2.0", - "universal-user-agent": "^6.0.0" - }, - "engines": { - "node": ">= 18" - } - }, - "node_modules/@octokit/endpoint": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-9.0.0.tgz", - "integrity": "sha512-szrQhiqJ88gghWY2Htt8MqUDO6++E/EIXqJ2ZEp5ma3uGS46o7LZAzSLt49myB7rT+Hfw5Y6gO3LmOxGzHijAQ==", - "dev": true, - "dependencies": { - "@octokit/types": "^11.0.0", - "is-plain-object": "^5.0.0", - "universal-user-agent": "^6.0.0" - }, - "engines": { - "node": ">= 18" - } - }, - "node_modules/@octokit/graphql": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-7.0.1.tgz", - "integrity": "sha512-T5S3oZ1JOE58gom6MIcrgwZXzTaxRnxBso58xhozxHpOqSTgDS6YNeEUvZ/kRvXgPrRz/KHnZhtb7jUMRi9E6w==", - "dev": true, - "dependencies": { - "@octokit/request": "^8.0.1", - "@octokit/types": "^11.0.0", - "universal-user-agent": "^6.0.0" - }, - "engines": { - "node": ">= 18" - } - }, - "node_modules/@octokit/openapi-types": { - "version": "18.0.0", - "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-18.0.0.tgz", - "integrity": "sha512-V8GImKs3TeQRxRtXFpG2wl19V7444NIOTDF24AWuIbmNaNYOQMWRbjcGDXV5B+0n887fgDcuMNOmlul+k+oJtw==", - "dev": true - }, - "node_modules/@octokit/plugin-paginate-rest": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-8.0.0.tgz", - "integrity": "sha512-2xZ+baZWUg+qudVXnnvXz7qfrTmDeYPCzangBVq/1gXxii/OiS//4shJp9dnCCvj1x+JAm9ji1Egwm1BA47lPQ==", - "dev": true, - "dependencies": { - "@octokit/types": "^11.0.0" - }, - "engines": { - "node": ">= 18" - }, - "peerDependencies": { - "@octokit/core": ">=5" - } - }, - "node_modules/@octokit/plugin-retry": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@octokit/plugin-retry/-/plugin-retry-6.0.0.tgz", - "integrity": "sha512-a1/A4A+PB1QoAHQfLJxGHhLfSAT03bR1jJz3GgQJZvty2ozawFWs93MiBQXO7SL2YbO7CIq0Goj4qLOBj8JeMQ==", - "dev": true, - "dependencies": { - "@octokit/request-error": "^5.0.0", - "@octokit/types": "^11.0.0", - "bottleneck": "^2.15.3" - }, - "engines": { - "node": ">= 18" - }, - "peerDependencies": { - "@octokit/core": ">=5" - } - }, - "node_modules/@octokit/plugin-throttling": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@octokit/plugin-throttling/-/plugin-throttling-7.0.0.tgz", - "integrity": "sha512-KL2k/d0uANc8XqP5S64YcNFCudR3F5AaKO39XWdUtlJIjT9Ni79ekWJ6Kj5xvAw87udkOMEPcVf9xEge2+ahew==", - "dev": true, - "dependencies": { - "@octokit/types": "^11.0.0", - "bottleneck": "^2.15.3" - }, - "engines": { - "node": ">= 18" - }, - "peerDependencies": { - "@octokit/core": "^5.0.0" - } - }, - "node_modules/@octokit/request": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/@octokit/request/-/request-8.1.1.tgz", - "integrity": "sha512-8N+tdUz4aCqQmXl8FpHYfKG9GelDFd7XGVzyN8rc6WxVlYcfpHECnuRkgquzz+WzvHTK62co5di8gSXnzASZPQ==", - "dev": true, - "dependencies": { - "@octokit/endpoint": "^9.0.0", - "@octokit/request-error": "^5.0.0", - "@octokit/types": "^11.1.0", - "is-plain-object": "^5.0.0", - "universal-user-agent": "^6.0.0" - }, - "engines": { - "node": ">= 18" - } - }, - "node_modules/@octokit/request-error": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-5.0.0.tgz", - "integrity": "sha512-1ue0DH0Lif5iEqT52+Rf/hf0RmGO9NWFjrzmrkArpG9trFfDM/efx00BJHdLGuro4BR/gECxCU2Twf5OKrRFsQ==", - "dev": true, - "dependencies": { - "@octokit/types": "^11.0.0", - "deprecation": "^2.0.0", - "once": "^1.4.0" - }, - "engines": { - "node": ">= 18" - } - }, - "node_modules/@octokit/types": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-11.1.0.tgz", - "integrity": "sha512-Fz0+7GyLm/bHt8fwEqgvRBWwIV1S6wRRyq+V6exRKLVWaKGsuy6H9QFYeBVDV7rK6fO3XwHgQOPxv+cLj2zpXQ==", - "dev": true, - "dependencies": { - "@octokit/openapi-types": "^18.0.0" - } - }, - "node_modules/@pnpm/config.env-replace": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@pnpm/config.env-replace/-/config.env-replace-1.1.0.tgz", - "integrity": "sha512-htyl8TWnKL7K/ESFa1oW2UB5lVDxuF5DpM7tBi6Hu2LNL3mWkIzNLG6N4zoCUP1lCKNxWy/3iu8mS8MvToGd6w==", - "dev": true, - "engines": { - "node": ">=12.22.0" - } - }, - "node_modules/@pnpm/network.ca-file": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@pnpm/network.ca-file/-/network.ca-file-1.0.2.tgz", - "integrity": "sha512-YcPQ8a0jwYU9bTdJDpXjMi7Brhkr1mXsXrUJvjqM2mQDgkRiz8jFaQGOdaLxgjtUfQgZhKy/O3cG/YwmgKaxLA==", - "dev": true, - "dependencies": { - "graceful-fs": "4.2.10" - }, - "engines": { - "node": ">=12.22.0" - } - }, - "node_modules/@pnpm/network.ca-file/node_modules/graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "dev": true - }, - "node_modules/@pnpm/npm-conf": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/@pnpm/npm-conf/-/npm-conf-2.2.2.tgz", - "integrity": "sha512-UA91GwWPhFExt3IizW6bOeY/pQ0BkuNwKjk9iQW9KqxluGCrg4VenZ0/L+2Y0+ZOtme72EVvg6v0zo3AMQRCeA==", - "dev": true, - "dependencies": { - "@pnpm/config.env-replace": "^1.1.0", - "@pnpm/network.ca-file": "^1.0.1", - "config-chain": "^1.1.11" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@semantic-release/commit-analyzer": { - "version": "10.0.4", - "resolved": "https://registry.npmjs.org/@semantic-release/commit-analyzer/-/commit-analyzer-10.0.4.tgz", - "integrity": "sha512-pFGn99fn8w4/MHE0otb2A/l5kxgOuxaaauIh4u30ncoTJuqWj4hXTgEJ03REqjS+w1R2vPftSsO26WC61yOcpw==", - "dev": true, - "dependencies": { - "conventional-changelog-angular": "^6.0.0", - "conventional-commits-filter": "^3.0.0", - "conventional-commits-parser": "^5.0.0", - "debug": "^4.0.0", - "import-from": "^4.0.0", - "lodash-es": "^4.17.21", - "micromatch": "^4.0.2" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "semantic-release": ">=20.1.0" - } - }, - "node_modules/@semantic-release/commit-analyzer/node_modules/conventional-commits-parser": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-5.0.0.tgz", - "integrity": "sha512-ZPMl0ZJbw74iS9LuX9YIAiW8pfM5p3yh2o/NbXHbkFuZzY5jvdi5jFycEOkmBW5H5I7nA+D6f3UcsCLP2vvSEA==", - "dev": true, - "dependencies": { - "is-text-path": "^2.0.0", - "JSONStream": "^1.3.5", - "meow": "^12.0.1", - "split2": "^4.0.0" - }, - "bin": { - "conventional-commits-parser": "cli.mjs" - }, - "engines": { - "node": ">=16" - } - }, - "node_modules/@semantic-release/commit-analyzer/node_modules/is-text-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-2.0.0.tgz", - "integrity": "sha512-+oDTluR6WEjdXEJMnC2z6A4FRwFoYuvShVVEGsS7ewc0UTi2QtAKMDJuL4BDEVt+5T7MjFo12RP8ghOM75oKJw==", - "dev": true, - "dependencies": { - "text-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@semantic-release/commit-analyzer/node_modules/meow": { - "version": "12.1.1", - "resolved": "https://registry.npmjs.org/meow/-/meow-12.1.1.tgz", - "integrity": "sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==", - "dev": true, - "engines": { - "node": ">=16.10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@semantic-release/commit-analyzer/node_modules/split2": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", - "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==", - "dev": true, - "engines": { - "node": ">= 10.x" - } - }, - "node_modules/@semantic-release/commit-analyzer/node_modules/text-extensions": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-2.4.0.tgz", - "integrity": "sha512-te/NtwBwfiNRLf9Ijqx3T0nlqZiQ2XrrtBvu+cLL8ZRrGkO0NHTug8MYFKyoSrv/sHTaSKfilUkizV6XhxMJ3g==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@semantic-release/error": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@semantic-release/error/-/error-4.0.0.tgz", - "integrity": "sha512-mgdxrHTLOjOddRVYIYDo0fR3/v61GNN1YGkfbrjuIKg/uMgCd+Qzo3UAXJ+woLQQpos4pl5Esuw5A7AoNlzjUQ==", - "dev": true, - "engines": { - "node": ">=18" - } - }, - "node_modules/@semantic-release/github": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/@semantic-release/github/-/github-9.0.4.tgz", - "integrity": "sha512-kQCGFAsBErvCR6hzNuzu63cj4erQN2krm9zQlg8vl4j5X0mL0d/Ras0wmL5Gkr1TuSS2lweME7M4J5zvtDDDSA==", - "dev": true, - "dependencies": { - "@octokit/core": "^5.0.0", - "@octokit/plugin-paginate-rest": "^8.0.0", - "@octokit/plugin-retry": "^6.0.0", - "@octokit/plugin-throttling": "^7.0.0", - "@semantic-release/error": "^4.0.0", - "aggregate-error": "^4.0.1", - "debug": "^4.3.4", - "dir-glob": "^3.0.1", - "globby": "^13.1.4", - "http-proxy-agent": "^7.0.0", - "https-proxy-agent": "^7.0.0", - "issue-parser": "^6.0.0", - "lodash-es": "^4.17.21", - "mime": "^3.0.0", - "p-filter": "^3.0.0", - "url-join": "^5.0.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "semantic-release": ">=20.1.0" - } - }, - "node_modules/@semantic-release/github/node_modules/agent-base": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", - "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", - "dev": true, - "dependencies": { - "debug": "^4.3.4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/@semantic-release/github/node_modules/globby": { - "version": "13.2.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", - "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", - "dev": true, - "dependencies": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.3.0", - "ignore": "^5.2.4", - "merge2": "^1.4.1", - "slash": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@semantic-release/github/node_modules/http-proxy-agent": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz", - "integrity": "sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==", - "dev": true, - "dependencies": { - "agent-base": "^7.1.0", - "debug": "^4.3.4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/@semantic-release/github/node_modules/https-proxy-agent": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.1.tgz", - "integrity": "sha512-Eun8zV0kcYS1g19r78osiQLEFIRspRUDd9tIfBCTBPBeMieF/EsJNL8VI3xOIdYRDEkjQnqOYPsZ2DsWsVsFwQ==", - "dev": true, - "dependencies": { - "agent-base": "^7.0.2", - "debug": "4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/@semantic-release/github/node_modules/slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@semantic-release/npm": { - "version": "10.0.5", - "resolved": "https://registry.npmjs.org/@semantic-release/npm/-/npm-10.0.5.tgz", - "integrity": "sha512-cJnQ2M5pxJRwZEkb0A/+U3TG4UNmjrrLwV2PxJKljn5OPT0yJB8GzGgWbbKACayvxrT06YdTa4Amtq/piJcOIA==", - "dev": true, - "dependencies": { - "@semantic-release/error": "^4.0.0", - "aggregate-error": "^4.0.1", - "execa": "^8.0.0", - "fs-extra": "^11.0.0", - "lodash-es": "^4.17.21", - "nerf-dart": "^1.0.0", - "normalize-url": "^8.0.0", - "npm": "^9.5.0", - "rc": "^1.2.8", - "read-pkg": "^8.0.0", - "registry-auth-token": "^5.0.0", - "semver": "^7.1.2", - "tempy": "^3.0.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "semantic-release": ">=20.1.0" - } - }, - "node_modules/@semantic-release/npm/node_modules/execa": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", - "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^8.0.1", - "human-signals": "^5.0.0", - "is-stream": "^3.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^5.1.0", - "onetime": "^6.0.0", - "signal-exit": "^4.1.0", - "strip-final-newline": "^3.0.0" - }, - "engines": { - "node": ">=16.17" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/@semantic-release/npm/node_modules/get-stream": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", - "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", - "dev": true, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@semantic-release/npm/node_modules/hosted-git-info": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.0.tgz", - "integrity": "sha512-ICclEpTLhHj+zCuSb2/usoNXSVkxUSIopre+b1w8NDY9Dntp9LO4vLdHYI336TH8sAqwrRgnSfdkBG2/YpisHA==", - "dev": true, - "dependencies": { - "lru-cache": "^10.0.1" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/@semantic-release/npm/node_modules/human-signals": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", - "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", - "dev": true, - "engines": { - "node": ">=16.17.0" - } - }, - "node_modules/@semantic-release/npm/node_modules/is-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", - "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@semantic-release/npm/node_modules/json-parse-even-better-errors": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.0.tgz", - "integrity": "sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA==", - "dev": true, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@semantic-release/npm/node_modules/lines-and-columns": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.3.tgz", - "integrity": "sha512-cNOjgCnLB+FnvWWtyRTzmB3POJ+cXxTA81LoW7u8JdmhfXzriropYwpjShnz1QLLWsQwY7nIxoDmcPTwphDK9w==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - } - }, - "node_modules/@semantic-release/npm/node_modules/lru-cache": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", - "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", - "dev": true, - "engines": { - "node": "14 || >=16.14" - } - }, - "node_modules/@semantic-release/npm/node_modules/mimic-fn": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", - "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@semantic-release/npm/node_modules/normalize-package-data": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.0.tgz", - "integrity": "sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==", - "dev": true, - "dependencies": { - "hosted-git-info": "^7.0.0", - "is-core-module": "^2.8.1", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/@semantic-release/npm/node_modules/npm-run-path": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", - "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", - "dev": true, - "dependencies": { - "path-key": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@semantic-release/npm/node_modules/onetime": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", - "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", - "dev": true, - "dependencies": { - "mimic-fn": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@semantic-release/npm/node_modules/parse-json": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-7.1.0.tgz", - "integrity": "sha512-ihtdrgbqdONYD156Ap6qTcaGcGdkdAxodO1wLqQ/j7HP1u2sFYppINiq4jyC8F+Nm+4fVufylCV00QmkTHkSUg==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.21.4", - "error-ex": "^1.3.2", - "json-parse-even-better-errors": "^3.0.0", - "lines-and-columns": "^2.0.3", - "type-fest": "^3.8.0" - }, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@semantic-release/npm/node_modules/parse-json/node_modules/type-fest": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", - "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", - "dev": true, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@semantic-release/npm/node_modules/path-key": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", - "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@semantic-release/npm/node_modules/read-pkg": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-8.1.0.tgz", - "integrity": "sha512-PORM8AgzXeskHO/WEv312k9U03B8K9JSiWF/8N9sUuFjBa+9SF2u6K7VClzXwDXab51jCd8Nd36CNM+zR97ScQ==", - "dev": true, - "dependencies": { - "@types/normalize-package-data": "^2.4.1", - "normalize-package-data": "^6.0.0", - "parse-json": "^7.0.0", - "type-fest": "^4.2.0" - }, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@semantic-release/npm/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@semantic-release/npm/node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@semantic-release/npm/node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "dev": true, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@semantic-release/npm/node_modules/strip-final-newline": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", - "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@semantic-release/npm/node_modules/type-fest": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.3.1.tgz", - "integrity": "sha512-pphNW/msgOUSkJbH58x8sqpq8uQj6b0ZKGxEsLKMUnGorRcDjrUaLS+39+/ub41JNTwrrMyJcUB8+YZs3mbwqw==", - "dev": true, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@semantic-release/npm/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/@semantic-release/release-notes-generator": { - "version": "11.0.7", - "resolved": "https://registry.npmjs.org/@semantic-release/release-notes-generator/-/release-notes-generator-11.0.7.tgz", - "integrity": "sha512-T09QB9ImmNx7Q6hY6YnnEbw/rEJ6a+22LBxfZq+pSAXg/OL/k0siwEm5cK4k1f9dE2Z2mPIjJKKohzUm0jbxcQ==", - "dev": true, - "dependencies": { - "conventional-changelog-angular": "^6.0.0", - "conventional-changelog-writer": "^6.0.0", - "conventional-commits-filter": "^4.0.0", - "conventional-commits-parser": "^5.0.0", - "debug": "^4.0.0", - "get-stream": "^7.0.0", - "import-from": "^4.0.0", - "into-stream": "^7.0.0", - "lodash-es": "^4.17.21", - "read-pkg-up": "^10.0.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "semantic-release": ">=20.1.0" - } - }, - "node_modules/@semantic-release/release-notes-generator/node_modules/conventional-commits-filter": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-4.0.0.tgz", - "integrity": "sha512-rnpnibcSOdFcdclpFwWa+pPlZJhXE7l+XK04zxhbWrhgpR96h33QLz8hITTXbcYICxVr3HZFtbtUAQ+4LdBo9A==", - "dev": true, - "engines": { - "node": ">=16" - } - }, - "node_modules/@semantic-release/release-notes-generator/node_modules/conventional-commits-parser": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-5.0.0.tgz", - "integrity": "sha512-ZPMl0ZJbw74iS9LuX9YIAiW8pfM5p3yh2o/NbXHbkFuZzY5jvdi5jFycEOkmBW5H5I7nA+D6f3UcsCLP2vvSEA==", - "dev": true, - "dependencies": { - "is-text-path": "^2.0.0", - "JSONStream": "^1.3.5", - "meow": "^12.0.1", - "split2": "^4.0.0" - }, - "bin": { - "conventional-commits-parser": "cli.mjs" - }, - "engines": { - "node": ">=16" - } - }, - "node_modules/@semantic-release/release-notes-generator/node_modules/find-up": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", - "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", - "dev": true, - "dependencies": { - "locate-path": "^7.1.0", - "path-exists": "^5.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@semantic-release/release-notes-generator/node_modules/get-stream": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-7.0.1.tgz", - "integrity": "sha512-3M8C1EOFN6r8AMUhwUAACIoXZJEOufDU5+0gFFN5uNs6XYOralD2Pqkl7m046va6x77FwposWXbAhPPIOus7mQ==", - "dev": true, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@semantic-release/release-notes-generator/node_modules/hosted-git-info": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.0.tgz", - "integrity": "sha512-ICclEpTLhHj+zCuSb2/usoNXSVkxUSIopre+b1w8NDY9Dntp9LO4vLdHYI336TH8sAqwrRgnSfdkBG2/YpisHA==", - "dev": true, - "dependencies": { - "lru-cache": "^10.0.1" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/@semantic-release/release-notes-generator/node_modules/is-text-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-2.0.0.tgz", - "integrity": "sha512-+oDTluR6WEjdXEJMnC2z6A4FRwFoYuvShVVEGsS7ewc0UTi2QtAKMDJuL4BDEVt+5T7MjFo12RP8ghOM75oKJw==", - "dev": true, - "dependencies": { - "text-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@semantic-release/release-notes-generator/node_modules/json-parse-even-better-errors": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.0.tgz", - "integrity": "sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA==", - "dev": true, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@semantic-release/release-notes-generator/node_modules/lines-and-columns": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.3.tgz", - "integrity": "sha512-cNOjgCnLB+FnvWWtyRTzmB3POJ+cXxTA81LoW7u8JdmhfXzriropYwpjShnz1QLLWsQwY7nIxoDmcPTwphDK9w==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - } - }, - "node_modules/@semantic-release/release-notes-generator/node_modules/locate-path": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", - "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", - "dev": true, - "dependencies": { - "p-locate": "^6.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@semantic-release/release-notes-generator/node_modules/lru-cache": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", - "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", - "dev": true, - "engines": { - "node": "14 || >=16.14" - } - }, - "node_modules/@semantic-release/release-notes-generator/node_modules/meow": { - "version": "12.1.1", - "resolved": "https://registry.npmjs.org/meow/-/meow-12.1.1.tgz", - "integrity": "sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==", - "dev": true, - "engines": { - "node": ">=16.10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@semantic-release/release-notes-generator/node_modules/normalize-package-data": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.0.tgz", - "integrity": "sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==", - "dev": true, - "dependencies": { - "hosted-git-info": "^7.0.0", - "is-core-module": "^2.8.1", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/@semantic-release/release-notes-generator/node_modules/p-limit": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", - "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", - "dev": true, - "dependencies": { - "yocto-queue": "^1.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@semantic-release/release-notes-generator/node_modules/p-locate": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", - "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", - "dev": true, - "dependencies": { - "p-limit": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@semantic-release/release-notes-generator/node_modules/parse-json": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-7.1.0.tgz", - "integrity": "sha512-ihtdrgbqdONYD156Ap6qTcaGcGdkdAxodO1wLqQ/j7HP1u2sFYppINiq4jyC8F+Nm+4fVufylCV00QmkTHkSUg==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.21.4", - "error-ex": "^1.3.2", - "json-parse-even-better-errors": "^3.0.0", - "lines-and-columns": "^2.0.3", - "type-fest": "^3.8.0" - }, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@semantic-release/release-notes-generator/node_modules/parse-json/node_modules/type-fest": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", - "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", - "dev": true, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@semantic-release/release-notes-generator/node_modules/path-exists": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", - "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - } - }, - "node_modules/@semantic-release/release-notes-generator/node_modules/read-pkg": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-8.1.0.tgz", - "integrity": "sha512-PORM8AgzXeskHO/WEv312k9U03B8K9JSiWF/8N9sUuFjBa+9SF2u6K7VClzXwDXab51jCd8Nd36CNM+zR97ScQ==", - "dev": true, - "dependencies": { - "@types/normalize-package-data": "^2.4.1", - "normalize-package-data": "^6.0.0", - "parse-json": "^7.0.0", - "type-fest": "^4.2.0" - }, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@semantic-release/release-notes-generator/node_modules/read-pkg-up": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-10.1.0.tgz", - "integrity": "sha512-aNtBq4jR8NawpKJQldrQcSW9y/d+KWH4v24HWkHljOZ7H0av+YTGANBzRh9A5pw7v/bLVsLVPpOhJ7gHNVy8lA==", - "dev": true, - "dependencies": { - "find-up": "^6.3.0", - "read-pkg": "^8.1.0", - "type-fest": "^4.2.0" - }, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@semantic-release/release-notes-generator/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@semantic-release/release-notes-generator/node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@semantic-release/release-notes-generator/node_modules/split2": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", - "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==", - "dev": true, - "engines": { - "node": ">= 10.x" - } - }, - "node_modules/@semantic-release/release-notes-generator/node_modules/text-extensions": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-2.4.0.tgz", - "integrity": "sha512-te/NtwBwfiNRLf9Ijqx3T0nlqZiQ2XrrtBvu+cLL8ZRrGkO0NHTug8MYFKyoSrv/sHTaSKfilUkizV6XhxMJ3g==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@semantic-release/release-notes-generator/node_modules/type-fest": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.3.1.tgz", - "integrity": "sha512-pphNW/msgOUSkJbH58x8sqpq8uQj6b0ZKGxEsLKMUnGorRcDjrUaLS+39+/ub41JNTwrrMyJcUB8+YZs3mbwqw==", - "dev": true, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@semantic-release/release-notes-generator/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/@semantic-release/release-notes-generator/node_modules/yocto-queue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", - "dev": true, - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@sinclair/typebox": { - "version": "0.27.8", - "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", - "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", - "dev": true - }, - "node_modules/@sinonjs/commons": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.0.tgz", - "integrity": "sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA==", - "dev": true, - "dependencies": { - "type-detect": "4.0.8" - } - }, - "node_modules/@sinonjs/fake-timers": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", - "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", - "dev": true, - "dependencies": { - "@sinonjs/commons": "^3.0.0" - } - }, - "node_modules/@tootallnate/once": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", - "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/@tsconfig/node10": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", - "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", - "dev": true - }, - "node_modules/@tsconfig/node12": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", - "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", - "dev": true - }, - "node_modules/@tsconfig/node14": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", - "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", - "dev": true - }, - "node_modules/@tsconfig/node16": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", - "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", - "dev": true - }, - "node_modules/@types/babel__core": { - "version": "7.20.1", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.1.tgz", - "integrity": "sha512-aACu/U/omhdk15O4Nfb+fHgH/z3QsfQzpnvRZhYhThms83ZnAOZz7zZAWO7mn2yyNQaA4xTO8GLK3uqFU4bYYw==", - "dev": true, - "dependencies": { - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" - } - }, - "node_modules/@types/babel__generator": { - "version": "7.6.4", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", - "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.0.0" - } - }, - "node_modules/@types/babel__template": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", - "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", - "dev": true, - "dependencies": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "node_modules/@types/babel__traverse": { - "version": "7.20.1", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.1.tgz", - "integrity": "sha512-MitHFXnhtgwsGZWtT68URpOvLN4EREih1u3QtQiN4VdAxWKRVvGCSvw/Qth0M0Qq3pJpnGOu5JaM/ydK7OGbqg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.20.7" - } - }, - "node_modules/@types/graceful-fs": { - "version": "4.1.6", - "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz", - "integrity": "sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/istanbul-lib-coverage": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", - "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==", - "dev": true - }, - "node_modules/@types/istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", - "dev": true, - "dependencies": { - "@types/istanbul-lib-coverage": "*" - } - }, - "node_modules/@types/istanbul-reports": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", - "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", - "dev": true, - "dependencies": { - "@types/istanbul-lib-report": "*" - } - }, - "node_modules/@types/jest": { - "version": "29.5.4", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.4.tgz", - "integrity": "sha512-PhglGmhWeD46FYOVLt3X7TiWjzwuVGW9wG/4qocPevXMjCmrIc5b6db9WjeGE4QYVpUAWMDv3v0IiBwObY289A==", - "dev": true, - "dependencies": { - "expect": "^29.0.0", - "pretty-format": "^29.0.0" - } - }, - "node_modules/@types/jsdom": { - "version": "20.0.1", - "resolved": "https://registry.npmjs.org/@types/jsdom/-/jsdom-20.0.1.tgz", - "integrity": "sha512-d0r18sZPmMQr1eG35u12FZfhIXNrnsPU/g5wvRKCUf/tOGilKKwYMYGqh33BNR6ba+2gkHw1EUiHoN3mn7E5IQ==", - "dev": true, - "dependencies": { - "@types/node": "*", - "@types/tough-cookie": "*", - "parse5": "^7.0.0" - } - }, - "node_modules/@types/json-schema": { - "version": "7.0.12", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.12.tgz", - "integrity": "sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==", - "dev": true - }, - "node_modules/@types/minimist": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz", - "integrity": "sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==", - "dev": true - }, - "node_modules/@types/node": { - "version": "20.5.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.5.7.tgz", - "integrity": "sha512-dP7f3LdZIysZnmvP3ANJYTSwg+wLLl8p7RqniVlV7j+oXSXAbt9h0WIBFmJy5inWZoX9wZN6eXx+YXd9Rh3RBA==", - "dev": true - }, - "node_modules/@types/normalize-package-data": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", - "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==", - "dev": true - }, - "node_modules/@types/semver": { - "version": "7.5.1", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.1.tgz", - "integrity": "sha512-cJRQXpObxfNKkFAZbJl2yjWtJCqELQIdShsogr1d2MilP8dKD9TE/nEKHkJgUNHdGKCQaf9HbIynuV2csLGVLg==", - "dev": true - }, - "node_modules/@types/stack-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", - "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", - "dev": true - }, - "node_modules/@types/tough-cookie": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.2.tgz", - "integrity": "sha512-Q5vtl1W5ue16D+nIaW8JWebSSraJVlK+EthKn7e7UcD4KWsaSJ8BqGPXNaPghgtcn/fhvrN17Tv8ksUsQpiplw==", - "dev": true - }, - "node_modules/@types/yargs": { - "version": "17.0.24", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz", - "integrity": "sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==", - "dev": true, - "dependencies": { - "@types/yargs-parser": "*" - } - }, - "node_modules/@types/yargs-parser": { - "version": "21.0.0", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", - "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==", - "dev": true - }, - "node_modules/@typescript-eslint/eslint-plugin": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.5.0.tgz", - "integrity": "sha512-2pktILyjvMaScU6iK3925uvGU87E+N9rh372uGZgiMYwafaw9SXq86U04XPq3UH6tzRvNgBsub6x2DacHc33lw==", - "dev": true, - "dependencies": { - "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.5.0", - "@typescript-eslint/type-utils": "6.5.0", - "@typescript-eslint/utils": "6.5.0", - "@typescript-eslint/visitor-keys": "6.5.0", - "debug": "^4.3.4", - "graphemer": "^1.4.0", - "ignore": "^5.2.4", - "natural-compare": "^1.4.0", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/@typescript-eslint/parser": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.5.0.tgz", - "integrity": "sha512-LMAVtR5GN8nY0G0BadkG0XIe4AcNMeyEy3DyhKGAh9k4pLSMBO7rF29JvDBpZGCmp5Pgz5RLHP6eCpSYZJQDuQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/scope-manager": "6.5.0", - "@typescript-eslint/types": "6.5.0", - "@typescript-eslint/typescript-estree": "6.5.0", - "@typescript-eslint/visitor-keys": "6.5.0", - "debug": "^4.3.4" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.5.0.tgz", - "integrity": "sha512-A8hZ7OlxURricpycp5kdPTH3XnjG85UpJS6Fn4VzeoH4T388gQJ/PGP4ole5NfKt4WDVhmLaQ/dBLNDC4Xl/Kw==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "6.5.0", - "@typescript-eslint/visitor-keys": "6.5.0" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/type-utils": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.5.0.tgz", - "integrity": "sha512-f7OcZOkRivtujIBQ4yrJNIuwyCQO1OjocVqntl9dgSIZAdKqicj3xFDqDOzHDlGCZX990LqhLQXWRnQvsapq8A==", - "dev": true, - "dependencies": { - "@typescript-eslint/typescript-estree": "6.5.0", - "@typescript-eslint/utils": "6.5.0", - "debug": "^4.3.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/types": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.5.0.tgz", - "integrity": "sha512-eqLLOEF5/lU8jW3Bw+8auf4lZSbbljHR2saKnYqON12G/WsJrGeeDHWuQePoEf9ro22+JkbPfWQwKEC5WwLQ3w==", - "dev": true, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.5.0.tgz", - "integrity": "sha512-q0rGwSe9e5Kk/XzliB9h2LBc9tmXX25G0833r7kffbl5437FPWb2tbpIV9wAATebC/018pGa9fwPDuvGN+LxWQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "6.5.0", - "@typescript-eslint/visitor-keys": "6.5.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/@typescript-eslint/utils": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.5.0.tgz", - "integrity": "sha512-9nqtjkNykFzeVtt9Pj6lyR9WEdd8npPhhIPM992FWVkZuS6tmxHfGVnlUcjpUP2hv8r4w35nT33mlxd+Be1ACQ==", - "dev": true, - "dependencies": { - "@eslint-community/eslint-utils": "^4.4.0", - "@types/json-schema": "^7.0.12", - "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.5.0", - "@typescript-eslint/types": "6.5.0", - "@typescript-eslint/typescript-estree": "6.5.0", - "semver": "^7.5.4" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - } - }, - "node_modules/@typescript-eslint/utils/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/utils/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/utils/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.5.0.tgz", - "integrity": "sha512-yCB/2wkbv3hPsh02ZS8dFQnij9VVQXJMN/gbQsaaY+zxALkZnxa/wagvLEFsAWMPv7d7lxQmNsIzGU1w/T/WyA==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "6.5.0", - "eslint-visitor-keys": "^3.4.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/abab": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", - "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", - "dev": true - }, - "node_modules/acorn": { - "version": "8.10.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", - "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-globals": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-7.0.1.tgz", - "integrity": "sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q==", - "dev": true, - "dependencies": { - "acorn": "^8.1.0", - "acorn-walk": "^8.0.2" - } - }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/acorn-walk": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dev": true, - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/aggregate-error": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-4.0.1.tgz", - "integrity": "sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w==", - "dev": true, - "dependencies": { - "clean-stack": "^4.0.0", - "indent-string": "^5.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/aggregate-error/node_modules/indent-string": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", - "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", - "dev": true, - "dependencies": { - "type-fest": "^0.21.3" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/ansicolors": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/ansicolors/-/ansicolors-0.3.2.tgz", - "integrity": "sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg==", - "dev": true - }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", - "dev": true - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "node_modules/argv-formatter": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/argv-formatter/-/argv-formatter-1.0.0.tgz", - "integrity": "sha512-F2+Hkm9xFaRg+GkaNnbwXNDV5O6pnCFEmqyhvfC/Ic5LbgOWjJh3L+mN/s91rxVL3znE7DYVpW0GJFT+4YBgWw==", - "dev": true - }, - "node_modules/array-ify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz", - "integrity": "sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==", - "dev": true - }, - "node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", - "dev": true - }, - "node_modules/babel-jest": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.6.4.tgz", - "integrity": "sha512-meLj23UlSLddj6PC+YTOFRgDAtjnZom8w/ACsrx0gtPtv5cJZk0A5Unk5bV4wixD7XaPCN1fQvpww8czkZURmw==", - "dev": true, - "dependencies": { - "@jest/transform": "^29.6.4", - "@types/babel__core": "^7.1.14", - "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^29.6.3", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "slash": "^3.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.8.0" - } - }, - "node_modules/babel-jest/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/babel-jest/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/babel-jest/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/babel-jest/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/babel-jest/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-jest/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", - "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", - "dev": true, - "dependencies": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-plugin-jest-hoist": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", - "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", - "dev": true, - "dependencies": { - "@babel/template": "^7.3.3", - "@babel/types": "^7.3.3", - "@types/babel__core": "^7.1.14", - "@types/babel__traverse": "^7.0.6" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/babel-plugin-polyfill-corejs2": { - "version": "0.4.5", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.5.tgz", - "integrity": "sha512-19hwUH5FKl49JEsvyTcoHakh6BE0wgXLLptIyKZ3PijHc/Ci521wygORCUCCred+E/twuqRyAkE02BAWPmsHOg==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.22.6", - "@babel/helper-define-polyfill-provider": "^0.4.2", - "semver": "^6.3.1" - }, - "peerDependencies": { - "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" - } - }, - "node_modules/babel-plugin-polyfill-corejs3": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.3.tgz", - "integrity": "sha512-z41XaniZL26WLrvjy7soabMXrfPWARN25PZoriDEiLMxAp50AUW3t35BGQUMg5xK3UrpVTtagIDklxYa+MhiNA==", - "dev": true, - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.4.2", - "core-js-compat": "^3.31.0" - }, - "peerDependencies": { - "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" - } - }, - "node_modules/babel-plugin-polyfill-regenerator": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.2.tgz", - "integrity": "sha512-tAlOptU0Xj34V1Y2PNTL4Y0FOJMDB6bZmoW39FeCQIhigGLkqu3Fj6uiXpxIf6Ij274ENdYx64y6Au+ZKlb1IA==", - "dev": true, - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.4.2" - }, - "peerDependencies": { - "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" - } - }, - "node_modules/babel-plugin-transform-vite-meta-env": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-vite-meta-env/-/babel-plugin-transform-vite-meta-env-1.0.3.tgz", - "integrity": "sha512-eyfuDEXrMu667TQpmctHeTlJrZA6jXYHyEJFjcM0yEa60LS/LXlOg2PBbMb8DVS+V9CnTj/j9itdlDVMcY2zEg==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.13.9", - "@types/babel__core": "^7.1.12" - } - }, - "node_modules/babel-plugin-transform-vite-meta-glob": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-vite-meta-glob/-/babel-plugin-transform-vite-meta-glob-1.0.3.tgz", - "integrity": "sha512-JW3VnwUjJqpj0FM0vJFxrGdxSBcHOa0j5YMvvtXYPmFshroq53nbK9dqRETgjXlMrfIz0oU/6ki+u1GdVWdNHA==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.13.9", - "@types/babel__core": "^7.1.12", - "glob": "^7.1.6" - } - }, - "node_modules/babel-plugin-transform-vite-meta-hot": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-vite-meta-hot/-/babel-plugin-transform-vite-meta-hot-1.0.0.tgz", - "integrity": "sha512-qF7T46bDG5UPPOfy4MFgQJyd3mZvm1sGOR2gZ4lIHy6DEcxAVTIt39/adAn89il44CvwestshuEybKPMR+L/Tg==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.13.9", - "@types/babel__core": "^7.1.12" - } - }, - "node_modules/babel-preset-current-node-syntax": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", - "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", - "dev": true, - "dependencies": { - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-bigint": "^7.8.3", - "@babel/plugin-syntax-class-properties": "^7.8.3", - "@babel/plugin-syntax-import-meta": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.8.3", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-top-level-await": "^7.8.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/babel-preset-jest": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", - "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", - "dev": true, - "dependencies": { - "babel-plugin-jest-hoist": "^29.6.3", - "babel-preset-current-node-syntax": "^1.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/babel-preset-vite": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/babel-preset-vite/-/babel-preset-vite-1.1.0.tgz", - "integrity": "sha512-5OnV5RPD+Byi1KnhQpgzz2e1Bc2PFJ9i6wy1VDMPmYu0NjaxcyJuWy9piBoefCL4tMn1nm3VtvInPNitCHJnbQ==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.13.9", - "@types/babel__core": "^7.1.12", - "babel-plugin-transform-vite-meta-env": "1.0.3", - "babel-plugin-transform-vite-meta-glob": "1.0.3", - "babel-plugin-transform-vite-meta-hot": "1.0.0" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/before-after-hook": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz", - "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==", - "dev": true - }, - "node_modules/bottleneck": { - "version": "2.19.5", - "resolved": "https://registry.npmjs.org/bottleneck/-/bottleneck-2.19.5.tgz", - "integrity": "sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw==", - "dev": true - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/browserslist": { - "version": "4.21.10", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.10.tgz", - "integrity": "sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "caniuse-lite": "^1.0.30001517", - "electron-to-chromium": "^1.4.477", - "node-releases": "^2.0.13", - "update-browserslist-db": "^1.0.11" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/bs-logger": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", - "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", - "dev": true, - "dependencies": { - "fast-json-stable-stringify": "2.x" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/bser": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", - "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", - "dev": true, - "dependencies": { - "node-int64": "^0.4.0" - } - }, - "node_modules/buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/camelcase-keys": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", - "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", - "dev": true, - "dependencies": { - "camelcase": "^5.3.1", - "map-obj": "^4.0.0", - "quick-lru": "^4.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001525", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001525.tgz", - "integrity": "sha512-/3z+wB4icFt3r0USMwxujAqRvaD/B7rvGTsKhbhSQErVrJvkZCLhgNLJxU8MevahQVH6hCU9FsHdNUFbiwmE7Q==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ] - }, - "node_modules/cardinal": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/cardinal/-/cardinal-2.1.1.tgz", - "integrity": "sha512-JSr5eOgoEymtYHBjNWyjrMqet9Am2miJhlfKNdqLp6zoeAh0KN5dRAcxlecj5mAJrmQomgiOBj35xHLrFjqBpw==", - "dev": true, - "dependencies": { - "ansicolors": "~0.3.2", - "redeyed": "~2.1.0" - }, - "bin": { - "cdl": "bin/cdl.js" - } - }, - "node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/char-regex": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", - "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/ci-info": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz", - "integrity": "sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], - "engines": { - "node": ">=8" - } - }, - "node_modules/cjs-module-lexer": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz", - "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", - "dev": true - }, - "node_modules/clean-stack": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-4.2.0.tgz", - "integrity": "sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg==", - "dev": true, - "dependencies": { - "escape-string-regexp": "5.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/clean-stack/node_modules/escape-string-regexp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", - "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cli-table3": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.3.tgz", - "integrity": "sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0" - }, - "engines": { - "node": "10.* || >= 12.*" - }, - "optionalDependencies": { - "@colors/colors": "1.5.0" - } - }, - "node_modules/cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", - "dev": true, - "engines": { - "iojs": ">= 1.0.0", - "node": ">= 0.12.0" - } - }, - "node_modules/collect-v8-coverage": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", - "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", - "dev": true - }, - "node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "node_modules/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/compare-func": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/compare-func/-/compare-func-2.0.0.tgz", - "integrity": "sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==", - "dev": true, - "dependencies": { - "array-ify": "^1.0.0", - "dot-prop": "^5.1.0" - } - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "node_modules/config-chain": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz", - "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==", - "dev": true, - "dependencies": { - "ini": "^1.3.4", - "proto-list": "~1.2.1" - } - }, - "node_modules/conventional-changelog-angular": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-6.0.0.tgz", - "integrity": "sha512-6qLgrBF4gueoC7AFVHu51nHL9pF9FRjXrH+ceVf7WmAfH3gs+gEYOkvxhjMPjZu57I4AGUGoNTY8V7Hrgf1uqg==", - "dev": true, - "dependencies": { - "compare-func": "^2.0.0" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/conventional-changelog-conventionalcommits": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-6.1.0.tgz", - "integrity": "sha512-3cS3GEtR78zTfMzk0AizXKKIdN4OvSh7ibNz6/DPbhWWQu7LqE/8+/GqSodV+sywUR2gpJAdP/1JFf4XtN7Zpw==", - "dev": true, - "dependencies": { - "compare-func": "^2.0.0" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/conventional-changelog-writer": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-6.0.1.tgz", - "integrity": "sha512-359t9aHorPw+U+nHzUXHS5ZnPBOizRxfQsWT5ZDHBfvfxQOAik+yfuhKXG66CN5LEWPpMNnIMHUTCKeYNprvHQ==", - "dev": true, - "dependencies": { - "conventional-commits-filter": "^3.0.0", - "dateformat": "^3.0.3", - "handlebars": "^4.7.7", - "json-stringify-safe": "^5.0.1", - "meow": "^8.1.2", - "semver": "^7.0.0", - "split": "^1.0.1" - }, - "bin": { - "conventional-changelog-writer": "cli.js" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/conventional-changelog-writer/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/conventional-changelog-writer/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/conventional-changelog-writer/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/conventional-commits-filter": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-3.0.0.tgz", - "integrity": "sha512-1ymej8b5LouPx9Ox0Dw/qAO2dVdfpRFq28e5Y0jJEU8ZrLdy0vOSkkIInwmxErFGhg6SALro60ZrwYFVTUDo4Q==", - "dev": true, - "dependencies": { - "lodash.ismatch": "^4.4.0", - "modify-values": "^1.0.1" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/conventional-commits-parser": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-4.0.0.tgz", - "integrity": "sha512-WRv5j1FsVM5FISJkoYMR6tPk07fkKT0UodruX4je86V4owk451yjXAKzKAPOs9l7y59E2viHUS9eQ+dfUA9NSg==", - "dev": true, - "dependencies": { - "is-text-path": "^1.0.1", - "JSONStream": "^1.3.5", - "meow": "^8.1.2", - "split2": "^3.2.2" - }, - "bin": { - "conventional-commits-parser": "cli.js" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/convert-source-map": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", - "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", - "dev": true - }, - "node_modules/core-js-compat": { - "version": "3.32.1", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.32.1.tgz", - "integrity": "sha512-GSvKDv4wE0bPnQtjklV101juQ85g6H3rm5PDP20mqlS5j0kXF3pP97YvAu5hl+uFHqMictp3b2VxOHljWMAtuA==", - "dev": true, - "dependencies": { - "browserslist": "^4.21.10" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, - "node_modules/core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", - "dev": true - }, - "node_modules/cosmiconfig": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.2.0.tgz", - "integrity": "sha512-3rTMnFJA1tCOPwRxtgF4wd7Ab2qvDbL8jX+3smjIbS4HlZBagTlpERbdN7iAbWlrfxE3M8c27kTwTawQ7st+OQ==", - "dev": true, - "dependencies": { - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "parse-json": "^5.0.0", - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/d-fischer" - } - }, - "node_modules/cosmiconfig-typescript-loader": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-4.4.0.tgz", - "integrity": "sha512-BabizFdC3wBHhbI4kJh0VkQP9GkBfoHPydD0COMce1nJ1kJAB3F2TmJ/I7diULBKtmEWSwEbuN/KDtgnmUUVmw==", - "dev": true, - "engines": { - "node": ">=v14.21.3" - }, - "peerDependencies": { - "@types/node": "*", - "cosmiconfig": ">=7", - "ts-node": ">=10", - "typescript": ">=4" - } - }, - "node_modules/create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "dev": true - }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/crypto-random-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-4.0.0.tgz", - "integrity": "sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==", - "dev": true, - "dependencies": { - "type-fest": "^1.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/crypto-random-string/node_modules/type-fest": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", - "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cssom": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.5.0.tgz", - "integrity": "sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==", - "dev": true - }, - "node_modules/cssstyle": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", - "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", - "dev": true, - "dependencies": { - "cssom": "~0.3.6" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cssstyle/node_modules/cssom": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", - "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", - "dev": true - }, - "node_modules/dargs": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/dargs/-/dargs-7.0.0.tgz", - "integrity": "sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/data-urls": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-3.0.2.tgz", - "integrity": "sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==", - "dev": true, - "dependencies": { - "abab": "^2.0.6", - "whatwg-mimetype": "^3.0.0", - "whatwg-url": "^11.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/dateformat": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", - "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decamelize-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", - "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", - "dev": true, - "dependencies": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/decamelize-keys/node_modules/map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decimal.js": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", - "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", - "dev": true - }, - "node_modules/dedent": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.1.tgz", - "integrity": "sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg==", - "dev": true, - "peerDependencies": { - "babel-plugin-macros": "^3.1.0" - }, - "peerDependenciesMeta": { - "babel-plugin-macros": { - "optional": true - } - } - }, - "node_modules/deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true - }, - "node_modules/deepmerge": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", - "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/deprecation": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", - "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==", - "dev": true - }, - "node_modules/detect-newline": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", - "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", - "dev": true, - "engines": { - "node": ">=0.3.1" - } - }, - "node_modules/diff-sequences": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", - "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", - "dev": true, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "dependencies": { - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/domexception": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/domexception/-/domexception-4.0.0.tgz", - "integrity": "sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw==", - "dev": true, - "dependencies": { - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/dot-prop": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", - "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", - "dev": true, - "dependencies": { - "is-obj": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/duplexer2": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", - "integrity": "sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==", - "dev": true, - "dependencies": { - "readable-stream": "^2.0.2" - } - }, - "node_modules/electron-to-chromium": { - "version": "1.4.508", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.508.tgz", - "integrity": "sha512-FFa8QKjQK/A5QuFr2167myhMesGrhlOBD+3cYNxO9/S4XzHEXesyTD/1/xF644gC8buFPz3ca6G1LOQD0tZrrg==", - "dev": true - }, - "node_modules/emittery": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", - "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sindresorhus/emittery?sponsor=1" - } - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/entities": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", - "dev": true, - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/env-ci": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/env-ci/-/env-ci-9.1.1.tgz", - "integrity": "sha512-Im2yEWeF4b2RAMAaWvGioXk6m0UNaIjD8hj28j2ij5ldnIFrDQT0+pzDvpbRkcjurhXhf/AsBKv8P2rtmGi9Aw==", - "dev": true, - "dependencies": { - "execa": "^7.0.0", - "java-properties": "^1.0.2" - }, - "engines": { - "node": "^16.14 || >=18" - } - }, - "node_modules/env-ci/node_modules/execa": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz", - "integrity": "sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.1", - "human-signals": "^4.3.0", - "is-stream": "^3.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^5.1.0", - "onetime": "^6.0.0", - "signal-exit": "^3.0.7", - "strip-final-newline": "^3.0.0" - }, - "engines": { - "node": "^14.18.0 || ^16.14.0 || >=18.0.0" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/env-ci/node_modules/human-signals": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz", - "integrity": "sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==", - "dev": true, - "engines": { - "node": ">=14.18.0" - } - }, - "node_modules/env-ci/node_modules/is-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", - "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/env-ci/node_modules/mimic-fn": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", - "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/env-ci/node_modules/npm-run-path": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", - "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", - "dev": true, - "dependencies": { - "path-key": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/env-ci/node_modules/onetime": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", - "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", - "dev": true, - "dependencies": { - "mimic-fn": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/env-ci/node_modules/path-key": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", - "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/env-ci/node_modules/strip-final-newline": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", - "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "dependencies": { - "is-arrayish": "^0.2.1" - } - }, - "node_modules/esbuild": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", - "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", - "dev": true, - "hasInstallScript": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - }, - "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" - } - }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/escodegen": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", - "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", - "dev": true, - "dependencies": { - "esprima": "^4.0.1", - "estraverse": "^5.2.0", - "esutils": "^2.0.2" - }, - "bin": { - "escodegen": "bin/escodegen.js", - "esgenerate": "bin/esgenerate.js" - }, - "engines": { - "node": ">=6.0" - }, - "optionalDependencies": { - "source-map": "~0.6.1" - } - }, - "node_modules/escodegen/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/eslint": { - "version": "8.48.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.48.0.tgz", - "integrity": "sha512-sb6DLeIuRXxeM1YljSe1KEx9/YYeZFQWcV8Rq9HfigmdDEugjLEVEa1ozDjL6YDjBpQHPJxJzze+alxi4T3OLg==", - "dev": true, - "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.2", - "@eslint/js": "8.48.0", - "@humanwhocodes/config-array": "^0.11.10", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "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.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "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" - }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-config-alloy": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/eslint-config-alloy/-/eslint-config-alloy-5.1.2.tgz", - "integrity": "sha512-jppzCxNqlhvMYPgfUzvPq4f9fEu070+m3CRIjWdUx/GJLZ6dXHARzMIrIhFuIvzYI5Qo40ht1gunguLnRhIB7A==", - "dev": true, - "peerDependencies": { - "@babel/eslint-parser": "7.x", - "@babel/preset-react": "7.x", - "@typescript-eslint/eslint-plugin": ">=5.55.0", - "@typescript-eslint/parser": ">=5.0.0", - "eslint": ">=8.24.0", - "eslint-plugin-react": ">=7.31.8", - "eslint-plugin-vue": ">=9.5.1", - "typescript": "5.x", - "vue-eslint-parser": "9.x" - }, - "peerDependenciesMeta": { - "@babel/eslint-parser": { - "optional": true - }, - "@babel/preset-react": { - "optional": true - }, - "@typescript-eslint/eslint-plugin": { - "optional": true - }, - "@typescript-eslint/parser": { - "optional": true - }, - "eslint-plugin-react": { - "optional": true - }, - "eslint-plugin-vue": { - "optional": true - }, - "typescript": { - "optional": true - }, - "vue-eslint-parser": { - "optional": true - } - } - }, - "node_modules/eslint-plugin-unused-imports": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-unused-imports/-/eslint-plugin-unused-imports-3.0.0.tgz", - "integrity": "sha512-sduiswLJfZHeeBJ+MQaG+xYzSWdRXoSw61DpU13mzWumCkR0ufD0HmO4kdNokjrkluMHpj/7PJeN35pgbhW3kw==", - "dev": true, - "dependencies": { - "eslint-rule-composer": "^0.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "peerDependencies": { - "@typescript-eslint/eslint-plugin": "^6.0.0", - "eslint": "^8.0.0" - }, - "peerDependenciesMeta": { - "@typescript-eslint/eslint-plugin": { - "optional": true - } - } - }, - "node_modules/eslint-rule-composer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/eslint-rule-composer/-/eslint-rule-composer-0.3.0.tgz", - "integrity": "sha512-bt+Sh8CtDmn2OajxvNO+BX7Wn4CIWMpTRm3MaiKPCQcnnlm0CS2mhui6QaoeQugs+3Kj2ESKEEGJUdVafwhiCg==", - "dev": true, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/eslint/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/eslint/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/eslint/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/eslint/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/eslint/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", - "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", - "dev": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/eslint/node_modules/globals": { - "version": "13.21.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", - "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", - "dev": true, - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/eslint/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/espree": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", - "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", - "dev": true, - "dependencies": { - "acorn": "^8.9.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", - "dev": true, - "dependencies": { - "estraverse": "^5.1.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/esquery/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esrecurse/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/expect": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/expect/-/expect-29.6.4.tgz", - "integrity": "sha512-F2W2UyQ8XYyftHT57dtfg8Ue3X5qLgm2sSug0ivvLRH/VKNRL/pDxg/TH7zVzbQB0tu80clNFy6LU7OS/VSEKA==", - "dev": true, - "dependencies": { - "@jest/expect-utils": "^29.6.4", - "jest-get-type": "^29.6.3", - "jest-matcher-utils": "^29.6.4", - "jest-message-util": "^29.6.3", - "jest-util": "^29.6.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "node_modules/fast-glob": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", - "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "node_modules/fast-glob/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true - }, - "node_modules/fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", - "dev": true, - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/fb-watchman": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", - "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", - "dev": true, - "dependencies": { - "bser": "2.1.1" - } - }, - "node_modules/figures": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-5.0.0.tgz", - "integrity": "sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==", - "dev": true, - "dependencies": { - "escape-string-regexp": "^5.0.0", - "is-unicode-supported": "^1.2.0" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/figures/node_modules/escape-string-regexp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", - "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dev": true, - "dependencies": { - "flat-cache": "^3.0.4" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/find-versions": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-5.1.0.tgz", - "integrity": "sha512-+iwzCJ7C5v5KgcBuueqVoNiHVoQpwiUK5XFLjf0affFTep+Wcw93tPvmb8tqujDNmzhBDPddnWV/qgWSXgq+Hg==", - "dev": true, - "dependencies": { - "semver-regex": "^4.0.5" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/flat-cache": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.1.0.tgz", - "integrity": "sha512-OHx4Qwrrt0E4jEIcI5/Xb+f+QmJYNj2rrK8wiIdQOIrB9WrrJL8cjZvXdXuBTkkEwEqLycb5BeZDV1o2i9bTew==", - "dev": true, - "dependencies": { - "flatted": "^3.2.7", - "keyv": "^4.5.3", - "rimraf": "^3.0.2" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/flatted": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", - "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", - "dev": true - }, - "node_modules/form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", - "dev": true, - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/from2": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", - "integrity": "sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==", - "dev": true, - "dependencies": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.0" - } - }, - "node_modules/fs-extra": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.1.tgz", - "integrity": "sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=14.14" - } - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true - }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/get-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", - "dev": true, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/git-log-parser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/git-log-parser/-/git-log-parser-1.2.0.tgz", - "integrity": "sha512-rnCVNfkTL8tdNryFuaY0fYiBWEBcgF748O6ZI61rslBvr2o7U65c2/6npCRqH40vuAhtgtDiqLTJjBVdrejCzA==", - "dev": true, - "dependencies": { - "argv-formatter": "~1.0.0", - "spawn-error-forwarder": "~1.0.0", - "split2": "~1.0.0", - "stream-combiner2": "~1.1.1", - "through2": "~2.0.0", - "traverse": "~0.6.6" - } - }, - "node_modules/git-log-parser/node_modules/split2": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/split2/-/split2-1.0.0.tgz", - "integrity": "sha512-NKywug4u4pX/AZBB1FCPzZ6/7O+Xhz1qMVbzTvvKvikjO99oPN87SkK08mEY9P63/5lWjK+wgOOgApnTg5r6qg==", - "dev": true, - "dependencies": { - "through2": "~2.0.0" - } - }, - "node_modules/git-log-parser/node_modules/through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, - "dependencies": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - } - }, - "node_modules/git-raw-commits": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-2.0.11.tgz", - "integrity": "sha512-VnctFhw+xfj8Va1xtfEqCUD2XDrbAPSJx+hSrE5K7fGdjZruW7XV+QOrN7LF/RJyvspRiD2I0asWsxFp0ya26A==", - "dev": true, - "dependencies": { - "dargs": "^7.0.0", - "lodash": "^4.17.15", - "meow": "^8.0.0", - "split2": "^3.0.0", - "through2": "^4.0.0" - }, - "bin": { - "git-raw-commits": "cli.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/global-dirs": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", - "integrity": "sha512-NknMLn7F2J7aflwFOlGdNIuCDpN3VGoSoB+aap3KABFWbHVn1TCgFC+np23J8W2BiZbjfEw3BFBycSMv1AFblg==", - "dev": true, - "dependencies": { - "ini": "^1.3.4" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dev": true, - "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/globrex": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/globrex/-/globrex-0.1.2.tgz", - "integrity": "sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==", - "dev": true - }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "dev": true - }, - "node_modules/graphemer": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", - "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", - "dev": true - }, - "node_modules/handlebars": { - "version": "4.7.8", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.8.tgz", - "integrity": "sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==", - "dev": true, - "dependencies": { - "minimist": "^1.2.5", - "neo-async": "^2.6.2", - "source-map": "^0.6.1", - "wordwrap": "^1.0.0" - }, - "bin": { - "handlebars": "bin/handlebars" - }, - "engines": { - "node": ">=0.4.7" - }, - "optionalDependencies": { - "uglify-js": "^3.1.4" - } - }, - "node_modules/hard-rejection": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", - "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/hook-std": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hook-std/-/hook-std-3.0.0.tgz", - "integrity": "sha512-jHRQzjSDzMtFy34AGj1DN+vq54WVuhSvKgrHf0OMiFQTwDD4L/qqofVEWjLOBMTn5+lCD3fPg32W9yOfnEJTTw==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/hosted-git-info/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/hosted-git-info/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/html-encoding-sniffer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz", - "integrity": "sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA==", - "dev": true, - "dependencies": { - "whatwg-encoding": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "node_modules/http-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", - "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", - "dev": true, - "dependencies": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dev": true, - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true, - "engines": { - "node": ">=10.17.0" - } - }, - "node_modules/husky": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/husky/-/husky-8.0.3.tgz", - "integrity": "sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==", - "dev": true, - "bin": { - "husky": "lib/bin.js" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/typicode" - } - }, - "node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/ignore": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/import-fresh/node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/import-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/import-from/-/import-from-4.0.0.tgz", - "integrity": "sha512-P9J71vT5nLlDeV8FHs5nNxaLbrpfAV5cF5srvbZfpwpcJoM/xZR3hiv+q+SAnuSmuGbXMWud063iIMx/V/EWZQ==", - "dev": true, - "engines": { - "node": ">=12.2" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/import-local": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", - "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", - "dev": true, - "dependencies": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - }, - "bin": { - "import-local-fixture": "fixtures/cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true, - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "dev": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true - }, - "node_modules/into-stream": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/into-stream/-/into-stream-7.0.0.tgz", - "integrity": "sha512-2dYz766i9HprMBasCMvHMuazJ7u4WzhJwo5kb3iPSiW/iRYV6uPari3zHoqZlnuaR7V1bEiNMxikhp37rdBXbw==", - "dev": true, - "dependencies": { - "from2": "^2.3.0", - "p-is-promise": "^3.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "dev": true - }, - "node_modules/is-core-module": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz", - "integrity": "sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==", - "dev": true, - "dependencies": { - "has": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-generator-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", - "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "node_modules/aggregate-error": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-4.0.1.tgz", + "integrity": "sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w==", "dev": true, "dependencies": { - "is-extglob": "^2.1.1" + "clean-stack": "^4.0.0", + "indent-string": "^5.0.0" }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", - "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-potential-custom-element-name": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", - "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", - "dev": true - }, - "node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true, - "engines": { - "node": ">=8" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-text-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz", - "integrity": "sha512-xFuJpne9oFz5qDaodwmmG08e3CawH/2ZV8Qqza1Ko7Sk8POWbkRdwIoAWVhqvq0XeUzANEhKo2n0IXUGBm7A/w==", - "dev": true, - "dependencies": { - "text-extensions": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-unicode-supported": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz", - "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==", + "node_modules/aggregate-error/node_modules/indent-string": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", + "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", "dev": true, "engines": { "node": ">=12" @@ -8014,235 +1536,59 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "node_modules/issue-parser": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/issue-parser/-/issue-parser-6.0.0.tgz", - "integrity": "sha512-zKa/Dxq2lGsBIXQ7CUZWTHfvxPC2ej0KfO7fIPqLlHB9J2hJ7rGhZ5rilhuufylr4RXYPzJUeFjKxz305OsNlA==", - "dev": true, - "dependencies": { - "lodash.capitalize": "^4.2.1", - "lodash.escaperegexp": "^4.1.2", - "lodash.isplainobject": "^4.0.6", - "lodash.isstring": "^4.0.1", - "lodash.uniqby": "^4.7.0" - }, - "engines": { - "node": ">=10.13" - } - }, - "node_modules/istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.0.tgz", - "integrity": "sha512-x58orMzEVfzPUKqlbLd1hXCnySCxKdDKa6Rjg97CwuLLRI4g3FHTdnExu1OqffVFay6zeMW+T6/DowFLndWnIw==", - "dev": true, - "dependencies": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^7.5.4" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-lib-instrument/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-lib-instrument/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-lib-instrument/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/istanbul-lib-report": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", - "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", - "dev": true, - "dependencies": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^4.0.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-lib-report/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-report/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" }, - "engines": { - "node": ">=8" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/istanbul-lib-source-maps": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "node_modules/ansi-escapes": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-6.2.0.tgz", + "integrity": "sha512-kzRaCqXnpzWs+3z5ABPQiVke+iq0KXkHo8xiWV4RPTi5Yli0l97BEQuhXV1s7+aSU/fu1kUuxgS4MsQ0fRuygw==", "dev": true, "dependencies": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" + "type-fest": "^3.0.0" }, "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-reports": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz", - "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==", - "dev": true, - "dependencies": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" + "node": ">=14.16" }, - "engines": { - "node": ">=8" - } - }, - "node_modules/java-properties": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/java-properties/-/java-properties-1.0.2.tgz", - "integrity": "sha512-qjdpeo2yKlYTH7nFdK0vbZWuTCesk4o63v5iVOlhMQPfuIZQfW/HI35SjfhA+4qpg36rnFSvUK5b1m+ckIblQQ==", - "dev": true, - "engines": { - "node": ">= 0.6.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest/-/jest-29.6.4.tgz", - "integrity": "sha512-tEFhVQFF/bzoYV1YuGyzLPZ6vlPrdfvDmmAxudA1dLEuiztqg2Rkx20vkKY32xiDROcD2KXlgZ7Cu8RPeEHRKw==", + "node_modules/ansi-escapes/node_modules/type-fest": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", + "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", "dev": true, - "dependencies": { - "@jest/core": "^29.6.4", - "@jest/types": "^29.6.3", - "import-local": "^3.0.2", - "jest-cli": "^29.6.4" - }, - "bin": { - "jest": "bin/jest.js" - }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + "node": ">=14.16" }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-changed-files": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.6.3.tgz", - "integrity": "sha512-G5wDnElqLa4/c66ma5PG9eRjE342lIbF6SUnTJi26C3J28Fv2TVY2rOyKB9YGbSA5ogwevgmxc4j4aVjrEK6Yg==", + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true, - "dependencies": { - "execa": "^5.0.0", - "jest-util": "^29.6.3", - "p-limit": "^3.1.0" - }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=8" } }, - "node_modules/jest-circus": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.6.4.tgz", - "integrity": "sha512-YXNrRyntVUgDfZbjXWBMPslX1mQ8MrSG0oM/Y06j9EYubODIyHWP8hMUbjbZ19M3M+zamqEur7O80HODwACoJw==", - "dev": true, - "dependencies": { - "@jest/environment": "^29.6.4", - "@jest/expect": "^29.6.4", - "@jest/test-result": "^29.6.4", - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "dedent": "^1.0.0", - "is-generator-fn": "^2.0.0", - "jest-each": "^29.6.3", - "jest-matcher-utils": "^29.6.4", - "jest-message-util": "^29.6.3", - "jest-runtime": "^29.6.4", - "jest-snapshot": "^29.6.4", - "jest-util": "^29.6.3", - "p-limit": "^3.1.0", - "pretty-format": "^29.6.3", - "pure-rand": "^6.0.0", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-circus/node_modules/ansi-styles": { + "node_modules/ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", @@ -8257,111 +1603,118 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/jest-circus/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } + "node_modules/ansicolors": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/ansicolors/-/ansicolors-0.3.2.tgz", + "integrity": "sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg==", + "dev": true + }, + "node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "dev": true }, - "node_modules/jest-circus/node_modules/color-convert": { + "node_modules/argparse": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/argv-formatter": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/argv-formatter/-/argv-formatter-1.0.0.tgz", + "integrity": "sha512-F2+Hkm9xFaRg+GkaNnbwXNDV5O6pnCFEmqyhvfC/Ic5LbgOWjJh3L+mN/s91rxVL3znE7DYVpW0GJFT+4YBgWw==", + "dev": true + }, + "node_modules/array-ify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz", + "integrity": "sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==", + "dev": true + }, + "node_modules/arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, "engines": { - "node": ">=7.0.0" + "node": ">=0.10.0" } }, - "node_modules/jest-circus/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "node_modules/before-after-hook": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz", + "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==", "dev": true }, - "node_modules/jest-circus/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/bottleneck": { + "version": "2.19.5", + "resolved": "https://registry.npmjs.org/bottleneck/-/bottleneck-2.19.5.tgz", + "integrity": "sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw==", + "dev": true + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, "engines": { "node": ">=8" } }, - "node_modules/jest-circus/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, "engines": { - "node": ">=8" + "node": ">=6" } }, - "node_modules/jest-cli": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.6.4.tgz", - "integrity": "sha512-+uMCQ7oizMmh8ZwRfZzKIEszFY9ksjjEQnTEMTaL7fYiL3Kw4XhqT9bYh+A4DQKUb67hZn2KbtEnDuHvcgK4pQ==", + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", "dev": true, - "dependencies": { - "@jest/core": "^29.6.4", - "@jest/test-result": "^29.6.4", - "@jest/types": "^29.6.3", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "import-local": "^3.0.2", - "jest-config": "^29.6.4", - "jest-util": "^29.6.3", - "jest-validate": "^29.6.3", - "prompts": "^2.0.1", - "yargs": "^17.3.1" - }, - "bin": { - "jest": "bin/jest.js" - }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } + "node": ">=6" } }, - "node_modules/jest-cli/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/camelcase-keys": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", + "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" + "camelcase": "^5.3.1", + "map-obj": "^4.0.0", + "quick-lru": "^4.0.1" }, "engines": { "node": ">=8" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cardinal": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/cardinal/-/cardinal-2.1.1.tgz", + "integrity": "sha512-JSr5eOgoEymtYHBjNWyjrMqet9Am2miJhlfKNdqLp6zoeAh0KN5dRAcxlecj5mAJrmQomgiOBj35xHLrFjqBpw==", + "dev": true, + "dependencies": { + "ansicolors": "~0.3.2", + "redeyed": "~2.1.0" + }, + "bin": { + "cdl": "bin/cdl.js" } }, - "node_modules/jest-cli/node_modules/chalk": { + "node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", @@ -8377,122 +1730,51 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/jest-cli/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-cli/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-cli/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-cli/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/clean-stack": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-4.2.0.tgz", + "integrity": "sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-config": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.6.4.tgz", - "integrity": "sha512-JWohr3i9m2cVpBumQFv2akMEnFEPVOh+9L2xIBJhJ0zOaci2ZXuKJj0tgMKQCBZAKA09H049IR4HVS/43Qb19A==", - "dev": true, - "dependencies": { - "@babel/core": "^7.11.6", - "@jest/test-sequencer": "^29.6.4", - "@jest/types": "^29.6.3", - "babel-jest": "^29.6.4", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "deepmerge": "^4.2.2", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "jest-circus": "^29.6.4", - "jest-environment-node": "^29.6.4", - "jest-get-type": "^29.6.3", - "jest-regex-util": "^29.6.3", - "jest-resolve": "^29.6.4", - "jest-runner": "^29.6.4", - "jest-util": "^29.6.3", - "jest-validate": "^29.6.3", - "micromatch": "^4.0.4", - "parse-json": "^5.2.0", - "pretty-format": "^29.6.3", - "slash": "^3.0.0", - "strip-json-comments": "^3.1.1" + "escape-string-regexp": "5.0.0" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "@types/node": "*", - "ts-node": ">=9.0.0" + "node": ">=12" }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - }, - "ts-node": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-config/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/cli-table3": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.3.tgz", + "integrity": "sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" + "string-width": "^4.2.0" }, "engines": { - "node": ">=8" + "node": "10.* || >= 12.*" }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "optionalDependencies": { + "@colors/colors": "1.5.0" } }, - "node_modules/jest-config/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">=12" } }, - "node_modules/jest-config/node_modules/color-convert": { + "node_modules/color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", @@ -8504,911 +1786,808 @@ "node": ">=7.0.0" } }, - "node_modules/jest-config/node_modules/color-name": { + "node_modules/color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "node_modules/jest-config/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/compare-func": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/compare-func/-/compare-func-2.0.0.tgz", + "integrity": "sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==", + "dev": true, + "dependencies": { + "array-ify": "^1.0.0", + "dot-prop": "^5.1.0" + } + }, + "node_modules/config-chain": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz", + "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==", "dev": true, - "engines": { - "node": ">=8" + "dependencies": { + "ini": "^1.3.4", + "proto-list": "~1.2.1" } }, - "node_modules/jest-config/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/conventional-changelog-angular": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-6.0.0.tgz", + "integrity": "sha512-6qLgrBF4gueoC7AFVHu51nHL9pF9FRjXrH+ceVf7WmAfH3gs+gEYOkvxhjMPjZu57I4AGUGoNTY8V7Hrgf1uqg==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "compare-func": "^2.0.0" }, "engines": { - "node": ">=8" + "node": ">=14" } }, - "node_modules/jest-diff": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.6.4.tgz", - "integrity": "sha512-9F48UxR9e4XOEZvoUXEHSWY4qC4zERJaOfrbBg9JpbJOO43R1vN76REt/aMGZoY6GD5g84nnJiBIVlscegefpw==", + "node_modules/conventional-changelog-conventionalcommits": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-6.1.0.tgz", + "integrity": "sha512-3cS3GEtR78zTfMzk0AizXKKIdN4OvSh7ibNz6/DPbhWWQu7LqE/8+/GqSodV+sywUR2gpJAdP/1JFf4XtN7Zpw==", "dev": true, "dependencies": { - "chalk": "^4.0.0", - "diff-sequences": "^29.6.3", - "jest-get-type": "^29.6.3", - "pretty-format": "^29.6.3" + "compare-func": "^2.0.0" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=14" } }, - "node_modules/jest-diff/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/conventional-changelog-writer": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-6.0.1.tgz", + "integrity": "sha512-359t9aHorPw+U+nHzUXHS5ZnPBOizRxfQsWT5ZDHBfvfxQOAik+yfuhKXG66CN5LEWPpMNnIMHUTCKeYNprvHQ==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" + "conventional-commits-filter": "^3.0.0", + "dateformat": "^3.0.3", + "handlebars": "^4.7.7", + "json-stringify-safe": "^5.0.1", + "meow": "^8.1.2", + "semver": "^7.0.0", + "split": "^1.0.1" }, - "engines": { - "node": ">=8" + "bin": { + "conventional-changelog-writer": "cli.js" }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "engines": { + "node": ">=14" } }, - "node_modules/jest-diff/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/conventional-commits-filter": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-3.0.0.tgz", + "integrity": "sha512-1ymej8b5LouPx9Ox0Dw/qAO2dVdfpRFq28e5Y0jJEU8ZrLdy0vOSkkIInwmxErFGhg6SALro60ZrwYFVTUDo4Q==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "lodash.ismatch": "^4.4.0", + "modify-values": "^1.0.1" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">=14" } }, - "node_modules/jest-diff/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/conventional-commits-parser": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-4.0.0.tgz", + "integrity": "sha512-WRv5j1FsVM5FISJkoYMR6tPk07fkKT0UodruX4je86V4owk451yjXAKzKAPOs9l7y59E2viHUS9eQ+dfUA9NSg==", "dev": true, "dependencies": { - "color-name": "~1.1.4" + "is-text-path": "^1.0.1", + "JSONStream": "^1.3.5", + "meow": "^8.1.2", + "split2": "^3.2.2" + }, + "bin": { + "conventional-commits-parser": "cli.js" }, "engines": { - "node": ">=7.0.0" + "node": ">=14" } }, - "node_modules/jest-diff/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", "dev": true }, - "node_modules/jest-diff/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-diff/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/cosmiconfig": { + "version": "8.3.3", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.3.tgz", + "integrity": "sha512-/VY+0IvFoE47hwgKHu8feeBFIb1Z1mcJFiLrNwaJpLoLa9qwLVquMGMr2OUwQmhpJDtsSQSasg/TMv1imec9xA==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0", + "path-type": "^4.0.0" }, "engines": { - "node": ">=8" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/jest-docblock": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.6.3.tgz", - "integrity": "sha512-2+H+GOTQBEm2+qFSQ7Ma+BvyV+waiIFxmZF5LdpBsAEjWX8QYjSCa4FrkIYtbfXUJJJnFCYrOtt6TZ+IAiTjBQ==", + "node_modules/cosmiconfig-typescript-loader": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-4.4.0.tgz", + "integrity": "sha512-BabizFdC3wBHhbI4kJh0VkQP9GkBfoHPydD0COMce1nJ1kJAB3F2TmJ/I7diULBKtmEWSwEbuN/KDtgnmUUVmw==", "dev": true, - "dependencies": { - "detect-newline": "^3.0.0" - }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=v14.21.3" + }, + "peerDependencies": { + "@types/node": "*", + "cosmiconfig": ">=7", + "ts-node": ">=10", + "typescript": ">=4" } }, - "node_modules/jest-each": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.6.3.tgz", - "integrity": "sha512-KoXfJ42k8cqbkfshW7sSHcdfnv5agDdHCPA87ZBdmHP+zJstTJc0ttQaJ/x7zK6noAL76hOuTIJ6ZkQRS5dcyg==", + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "dev": true + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", "dev": true, "dependencies": { - "@jest/types": "^29.6.3", - "chalk": "^4.0.0", - "jest-get-type": "^29.6.3", - "jest-util": "^29.6.3", - "pretty-format": "^29.6.3" + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">= 8" } }, - "node_modules/jest-each/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/crypto-random-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-4.0.0.tgz", + "integrity": "sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" + "type-fest": "^1.0.1" }, "engines": { - "node": ">=8" + "node": ">=12" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-each/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/crypto-random-string/node_modules/type-fest": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-each/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-each/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-each/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/dargs": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/dargs/-/dargs-7.0.0.tgz", + "integrity": "sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg==", "dev": true, "engines": { "node": ">=8" } }, - "node_modules/jest-each/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/dateformat": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", + "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==", "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, "engines": { - "node": ">=8" + "node": "*" } }, - "node_modules/jest-environment-jsdom": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-29.6.4.tgz", - "integrity": "sha512-K6wfgUJ16DoMs02JYFid9lOsqfpoVtyJxpRlnTxUHzvZWBnnh2VNGRB9EC1Cro96TQdq5TtSjb3qUjNaJP9IyA==", + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", "dev": true, "dependencies": { - "@jest/environment": "^29.6.4", - "@jest/fake-timers": "^29.6.4", - "@jest/types": "^29.6.3", - "@types/jsdom": "^20.0.0", - "@types/node": "*", - "jest-mock": "^29.6.3", - "jest-util": "^29.6.3", - "jsdom": "^20.0.0" + "ms": "2.1.2" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "canvas": "^2.5.0" + "node": ">=6.0" }, "peerDependenciesMeta": { - "canvas": { + "supports-color": { "optional": true } } }, - "node_modules/jest-environment-node": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.6.4.tgz", - "integrity": "sha512-i7SbpH2dEIFGNmxGCpSc2w9cA4qVD+wfvg2ZnfQ7XVrKL0NA5uDVBIiGH8SR4F0dKEv/0qI5r+aDomDf04DpEQ==", + "node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", "dev": true, - "dependencies": { - "@jest/environment": "^29.6.4", - "@jest/fake-timers": "^29.6.4", - "@jest/types": "^29.6.3", - "@types/node": "*", - "jest-mock": "^29.6.3", - "jest-util": "^29.6.3" - }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=0.10.0" } }, - "node_modules/jest-get-type": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", - "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", + "node_modules/decamelize-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", + "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", "dev": true, + "dependencies": { + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" + }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=0.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-haste-map": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.6.4.tgz", - "integrity": "sha512-12Ad+VNTDHxKf7k+M65sviyynRoZYuL1/GTuhEVb8RYsNSNln71nANRb/faSyWvx0j+gHcivChXHIoMJrGYjog==", + "node_modules/decamelize-keys/node_modules/map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", "dev": true, - "dependencies": { - "@jest/types": "^29.6.3", - "@types/graceful-fs": "^4.1.3", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^29.6.3", - "jest-util": "^29.6.3", - "jest-worker": "^29.6.4", - "micromatch": "^4.0.4", - "walker": "^1.0.8" - }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "optionalDependencies": { - "fsevents": "^2.3.2" + "node": ">=0.10.0" } }, - "node_modules/jest-leak-detector": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.6.3.tgz", - "integrity": "sha512-0kfbESIHXYdhAdpLsW7xdwmYhLf1BRu4AA118/OxFm0Ho1b2RcTmO4oF6aAMaxpxdxnJ3zve2rgwzNBD4Zbm7Q==", + "node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", "dev": true, - "dependencies": { - "jest-get-type": "^29.6.3", - "pretty-format": "^29.6.3" - }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=4.0.0" } }, - "node_modules/jest-matcher-utils": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.6.4.tgz", - "integrity": "sha512-KSzwyzGvK4HcfnserYqJHYi7sZVqdREJ9DMPAKVbS98JsIAvumihaNUbjrWw0St7p9IY7A9UskCW5MYlGmBQFQ==", + "node_modules/deprecation": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", + "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==", + "dev": true + }, + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "jest-diff": "^29.6.4", - "jest-get-type": "^29.6.3", - "pretty-format": "^29.6.3" - }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=0.3.1" } }, - "node_modules/jest-matcher-utils/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" + "path-type": "^4.0.0" }, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/jest-matcher-utils/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "is-obj": "^2.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">=8" } }, - "node_modules/jest-matcher-utils/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/duplexer2": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", + "integrity": "sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==", "dev": true, "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" + "readable-stream": "^2.0.2" } }, - "node_modules/jest-matcher-utils/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "dev": true }, - "node_modules/jest-matcher-utils/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/env-ci": { + "version": "9.1.1", + "resolved": "https://registry.npmjs.org/env-ci/-/env-ci-9.1.1.tgz", + "integrity": "sha512-Im2yEWeF4b2RAMAaWvGioXk6m0UNaIjD8hj28j2ij5ldnIFrDQT0+pzDvpbRkcjurhXhf/AsBKv8P2rtmGi9Aw==", "dev": true, + "dependencies": { + "execa": "^7.0.0", + "java-properties": "^1.0.2" + }, "engines": { - "node": ">=8" + "node": "^16.14 || >=18" } }, - "node_modules/jest-matcher-utils/node_modules/supports-color": { + "node_modules/env-ci/node_modules/execa": { "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "resolved": "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz", + "integrity": "sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.1", + "human-signals": "^4.3.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^3.0.7", + "strip-final-newline": "^3.0.0" }, "engines": { - "node": ">=8" + "node": "^14.18.0 || ^16.14.0 || >=18.0.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/jest-message-util": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.6.3.tgz", - "integrity": "sha512-FtzaEEHzjDpQp51HX4UMkPZjy46ati4T5pEMyM6Ik48ztu4T9LQplZ6OsimHx7EuM9dfEh5HJa6D3trEftu3dA==", + "node_modules/env-ci/node_modules/human-signals": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz", + "integrity": "sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==", "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^29.6.3", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^29.6.3", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=14.18.0" } }, - "node_modules/jest-message-util/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/env-ci/node_modules/is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", "dev": true, - "dependencies": { - "color-convert": "^2.0.1" + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/env-ci/node_modules/mimic-fn": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "dev": true, "engines": { - "node": ">=8" + "node": ">=12" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-message-util/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/env-ci/node_modules/npm-run-path": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", + "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "path-key": "^4.0.0" }, "engines": { - "node": ">=10" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-message-util/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/env-ci/node_modules/onetime": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", "dev": true, "dependencies": { - "color-name": "~1.1.4" + "mimic-fn": "^4.0.0" }, "engines": { - "node": ">=7.0.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-message-util/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-message-util/node_modules/has-flag": { + "node_modules/env-ci/node_modules/path-key": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", "dev": true, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-message-util/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/env-ci/node_modules/strip-final-newline": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-mock": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.6.3.tgz", - "integrity": "sha512-Z7Gs/mOyTSR4yPsaZ72a/MtuK6RnC3JYqWONe48oLaoEcYwEDxqvbXz85G4SJrm2Z5Ar9zp6MiHF4AlFlRM4Pg==", + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, "dependencies": { - "@jest/types": "^29.6.3", - "@types/node": "*", - "jest-util": "^29.6.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "is-arrayish": "^0.2.1" } }, - "node_modules/jest-pnp-resolver": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", - "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", "dev": true, "engines": { "node": ">=6" - }, - "peerDependencies": { - "jest-resolve": "*" - }, - "peerDependenciesMeta": { - "jest-resolve": { - "optional": true - } } }, - "node_modules/jest-regex-util": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", - "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", + "node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", "dev": true, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-resolve": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.6.4.tgz", - "integrity": "sha512-fPRq+0vcxsuGlG0O3gyoqGTAxasagOxEuyoxHeyxaZbc9QNek0AmJWSkhjlMG+mTsj+8knc/mWb3fXlRNVih7Q==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.6.4", - "jest-pnp-resolver": "^1.2.2", - "jest-util": "^29.6.3", - "jest-validate": "^29.6.3", - "resolve": "^1.20.0", - "resolve.exports": "^2.0.0", - "slash": "^3.0.0" + "node": ">=12" }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-resolve-dependencies": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.6.4.tgz", - "integrity": "sha512-7+6eAmr1ZBF3vOAJVsfLj1QdqeXG+WYhidfLHBRZqGN24MFRIiKG20ItpLw2qRAsW/D2ZUUmCNf6irUr/v6KHA==", + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true, - "dependencies": { - "jest-regex-util": "^29.6.3", - "jest-snapshot": "^29.6.4" + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=4" } }, - "node_modules/jest-resolve/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/jest-resolve/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">=8.6.0" } }, - "node_modules/jest-resolve/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/fastq": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", "dev": true, "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" + "reusify": "^1.0.4" } }, - "node_modules/jest-resolve/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-resolve/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/figures": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-5.0.0.tgz", + "integrity": "sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==", "dev": true, + "dependencies": { + "escape-string-regexp": "^5.0.0", + "is-unicode-supported": "^1.2.0" + }, "engines": { - "node": ">=8" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-resolve/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "to-regex-range": "^5.0.1" }, "engines": { "node": ">=8" } }, - "node_modules/jest-runner": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.6.4.tgz", - "integrity": "sha512-SDaLrMmtVlQYDuG0iSPYLycG8P9jLI+fRm8AF/xPKhYDB2g6xDWjXBrR5M8gEWsK6KVFlebpZ4QsrxdyIX1Jaw==", - "dev": true, - "dependencies": { - "@jest/console": "^29.6.4", - "@jest/environment": "^29.6.4", - "@jest/test-result": "^29.6.4", - "@jest/transform": "^29.6.4", - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "emittery": "^0.13.1", - "graceful-fs": "^4.2.9", - "jest-docblock": "^29.6.3", - "jest-environment-node": "^29.6.4", - "jest-haste-map": "^29.6.4", - "jest-leak-detector": "^29.6.3", - "jest-message-util": "^29.6.3", - "jest-resolve": "^29.6.4", - "jest-runtime": "^29.6.4", - "jest-util": "^29.6.3", - "jest-watcher": "^29.6.4", - "jest-worker": "^29.6.4", - "p-limit": "^3.1.0", - "source-map-support": "0.5.13" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-runner/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-runner/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/find-versions": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-5.1.0.tgz", + "integrity": "sha512-+iwzCJ7C5v5KgcBuueqVoNiHVoQpwiUK5XFLjf0affFTep+Wcw93tPvmb8tqujDNmzhBDPddnWV/qgWSXgq+Hg==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "semver-regex": "^4.0.5" }, "engines": { - "node": ">=10" + "node": ">=12" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-runner/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/from2": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", + "integrity": "sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==", "dev": true, "dependencies": { - "color-name": "~1.1.4" + "inherits": "^2.0.1", + "readable-stream": "^2.0.0" + } + }, + "node_modules/fs-extra": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.1.tgz", + "integrity": "sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" }, "engines": { - "node": ">=7.0.0" + "node": ">=14.14" } }, - "node_modules/jest-runner/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", "dev": true }, - "node_modules/jest-runner/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true, "engines": { - "node": ">=8" + "node": "6.* || 8.* || >= 10.*" } }, - "node_modules/jest-runner/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-runtime": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.6.4.tgz", - "integrity": "sha512-s/QxMBLvmwLdchKEjcLfwzP7h+jsHvNEtxGP5P+Fl1FMaJX2jMiIqe4rJw4tFprzCwuSvVUo9bn0uj4gNRXsbA==", + "node_modules/git-log-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/git-log-parser/-/git-log-parser-1.2.0.tgz", + "integrity": "sha512-rnCVNfkTL8tdNryFuaY0fYiBWEBcgF748O6ZI61rslBvr2o7U65c2/6npCRqH40vuAhtgtDiqLTJjBVdrejCzA==", "dev": true, "dependencies": { - "@jest/environment": "^29.6.4", - "@jest/fake-timers": "^29.6.4", - "@jest/globals": "^29.6.4", - "@jest/source-map": "^29.6.3", - "@jest/test-result": "^29.6.4", - "@jest/transform": "^29.6.4", - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "cjs-module-lexer": "^1.0.0", - "collect-v8-coverage": "^1.0.0", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.6.4", - "jest-message-util": "^29.6.3", - "jest-mock": "^29.6.3", - "jest-regex-util": "^29.6.3", - "jest-resolve": "^29.6.4", - "jest-snapshot": "^29.6.4", - "jest-util": "^29.6.3", - "slash": "^3.0.0", - "strip-bom": "^4.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-runtime/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "argv-formatter": "~1.0.0", + "spawn-error-forwarder": "~1.0.0", + "split2": "~1.0.0", + "stream-combiner2": "~1.1.1", + "through2": "~2.0.0", + "traverse": "~0.6.6" + } + }, + "node_modules/git-log-parser/node_modules/split2": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/split2/-/split2-1.0.0.tgz", + "integrity": "sha512-NKywug4u4pX/AZBB1FCPzZ6/7O+Xhz1qMVbzTvvKvikjO99oPN87SkK08mEY9P63/5lWjK+wgOOgApnTg5r6qg==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "through2": "~2.0.0" } }, - "node_modules/jest-runtime/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/git-log-parser/node_modules/through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" } }, - "node_modules/jest-runtime/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/git-raw-commits": { + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-2.0.11.tgz", + "integrity": "sha512-VnctFhw+xfj8Va1xtfEqCUD2XDrbAPSJx+hSrE5K7fGdjZruW7XV+QOrN7LF/RJyvspRiD2I0asWsxFp0ya26A==", "dev": true, "dependencies": { - "color-name": "~1.1.4" + "dargs": "^7.0.0", + "lodash": "^4.17.15", + "meow": "^8.0.0", + "split2": "^3.0.0", + "through2": "^4.0.0" + }, + "bin": { + "git-raw-commits": "cli.js" }, "engines": { - "node": ">=7.0.0" + "node": ">=10" } }, - "node_modules/jest-runtime/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-runtime/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, "engines": { - "node": ">=8" + "node": ">= 6" } }, - "node_modules/jest-runtime/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/global-dirs": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", + "integrity": "sha512-NknMLn7F2J7aflwFOlGdNIuCDpN3VGoSoB+aap3KABFWbHVn1TCgFC+np23J8W2BiZbjfEw3BFBycSMv1AFblg==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "ini": "^1.3.4" }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/jest-snapshot": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.6.4.tgz", - "integrity": "sha512-VC1N8ED7+4uboUKGIDsbvNAZb6LakgIPgAF4RSpF13dN6YaMokfRqO+BaqK4zIh6X3JffgwbzuGqDEjHm/MrvA==", - "dev": true, - "dependencies": { - "@babel/core": "^7.11.6", - "@babel/generator": "^7.7.2", - "@babel/plugin-syntax-jsx": "^7.7.2", - "@babel/plugin-syntax-typescript": "^7.7.2", - "@babel/types": "^7.3.3", - "@jest/expect-utils": "^29.6.4", - "@jest/transform": "^29.6.4", - "@jest/types": "^29.6.3", - "babel-preset-current-node-syntax": "^1.0.0", - "chalk": "^4.0.0", - "expect": "^29.6.4", - "graceful-fs": "^4.2.9", - "jest-diff": "^29.6.4", - "jest-get-type": "^29.6.3", - "jest-matcher-utils": "^29.6.4", - "jest-message-util": "^29.6.3", - "jest-util": "^29.6.3", - "natural-compare": "^1.4.0", - "pretty-format": "^29.6.3", - "semver": "^7.5.3" + "node_modules/globby": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", + "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", + "dev": true, + "dependencies": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.3.0", + "ignore": "^5.2.4", + "merge2": "^1.4.1", + "slash": "^4.0.0" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-snapshot/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true + }, + "node_modules/handlebars": { + "version": "4.7.8", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.8.tgz", + "integrity": "sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" + "minimist": "^1.2.5", + "neo-async": "^2.6.2", + "source-map": "^0.6.1", + "wordwrap": "^1.0.0" + }, + "bin": { + "handlebars": "bin/handlebars" }, "engines": { - "node": ">=8" + "node": ">=0.4.7" }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "optionalDependencies": { + "uglify-js": "^3.1.4" } }, - "node_modules/jest-snapshot/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/hard-rejection": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", + "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">=6" } }, - "node_modules/jest-snapshot/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", "dev": true, "dependencies": { - "color-name": "~1.1.4" + "function-bind": "^1.1.1" }, "engines": { - "node": ">=7.0.0" + "node": ">= 0.4.0" } }, - "node_modules/jest-snapshot/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-snapshot/node_modules/has-flag": { + "node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", @@ -9417,363 +2596,303 @@ "node": ">=8" } }, - "node_modules/jest-snapshot/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/hook-std": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hook-std/-/hook-std-3.0.0.tgz", + "integrity": "sha512-jHRQzjSDzMtFy34AGj1DN+vq54WVuhSvKgrHf0OMiFQTwDD4L/qqofVEWjLOBMTn5+lCD3fPg32W9yOfnEJTTw==", "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, "engines": { - "node": ">=10" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-snapshot/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "node_modules/hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", "dev": true, "dependencies": { "lru-cache": "^6.0.0" }, - "bin": { - "semver": "bin/semver.js" - }, "engines": { "node": ">=10" } }, - "node_modules/jest-snapshot/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/http-proxy-agent": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz", + "integrity": "sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "agent-base": "^7.1.0", + "debug": "^4.3.4" }, "engines": { - "node": ">=8" + "node": ">= 14" } }, - "node_modules/jest-snapshot/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/jest-util": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.6.3.tgz", - "integrity": "sha512-QUjna/xSy4B32fzcKTSz1w7YYzgiHrjjJjevdRf61HYk998R5vVMMNmrHESYZVDS5DSWs+1srPLPKxXPkeSDOA==", + "node_modules/https-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.2.tgz", + "integrity": "sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==", "dev": true, "dependencies": { - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" + "agent-base": "^7.0.2", + "debug": "4" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">= 14" } }, - "node_modules/jest-util/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": ">=10.17.0" } }, - "node_modules/jest-util/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/ignore": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">= 4" } }, - "node_modules/jest-util/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "dev": true, "dependencies": { - "color-name": "~1.1.4" + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" }, "engines": { - "node": ">=7.0.0" + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-util/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-util/node_modules/has-flag": { + "node_modules/import-fresh/node_modules/resolve-from": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "dev": true, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/jest-util/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/import-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/import-from/-/import-from-4.0.0.tgz", + "integrity": "sha512-P9J71vT5nLlDeV8FHs5nNxaLbrpfAV5cF5srvbZfpwpcJoM/xZR3hiv+q+SAnuSmuGbXMWud063iIMx/V/EWZQ==", "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, "engines": { - "node": ">=8" - } - }, - "node_modules/jest-validate": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.6.3.tgz", - "integrity": "sha512-e7KWZcAIX+2W1o3cHfnqpGajdCs1jSM3DkXjGeLSNmCazv1EeI1ggTeK5wdZhF+7N+g44JI2Od3veojoaumlfg==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.3", - "camelcase": "^6.2.0", - "chalk": "^4.0.0", - "jest-get-type": "^29.6.3", - "leven": "^3.1.0", - "pretty-format": "^29.6.3" + "node": ">=12.2" }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-validate/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/jest-validate/node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true + }, + "node_modules/into-stream": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/into-stream/-/into-stream-7.0.0.tgz", + "integrity": "sha512-2dYz766i9HprMBasCMvHMuazJ7u4WzhJwo5kb3iPSiW/iRYV6uPari3zHoqZlnuaR7V1bEiNMxikhp37rdBXbw==", "dev": true, + "dependencies": { + "from2": "^2.3.0", + "p-is-promise": "^3.0.0" + }, "engines": { - "node": ">=10" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-validate/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true + }, + "node_modules/is-core-module": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz", + "integrity": "sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" + "has": "^1.0.3" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-validate/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, "engines": { - "node": ">=7.0.0" + "node": ">=0.10.0" } }, - "node_modules/jest-validate/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-validate/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true, "engines": { "node": ">=8" } }, - "node_modules/jest-validate/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "is-extglob": "^2.1.1" }, "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/jest-watcher": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.6.4.tgz", - "integrity": "sha512-oqUWvx6+On04ShsT00Ir9T4/FvBeEh2M9PTubgITPxDa739p4hoQweWPRGyYeaojgT0xTpZKF0Y/rSY1UgMxvQ==", + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "dev": true, - "dependencies": { - "@jest/test-result": "^29.6.4", - "@jest/types": "^29.6.3", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "emittery": "^0.13.1", - "jest-util": "^29.6.3", - "string-length": "^4.0.1" - }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=0.12.0" } }, - "node_modules/jest-watcher/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/jest-watcher/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">=0.10.0" } }, - "node_modules/jest-watcher/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, "engines": { - "node": ">=7.0.0" + "node": ">=0.10.0" } }, - "node_modules/jest-watcher/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-watcher/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", "dev": true, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-watcher/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/is-text-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz", + "integrity": "sha512-xFuJpne9oFz5qDaodwmmG08e3CawH/2ZV8Qqza1Ko7Sk8POWbkRdwIoAWVhqvq0XeUzANEhKo2n0IXUGBm7A/w==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "text-extensions": "^1.0.0" }, "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/jest-worker": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.6.4.tgz", - "integrity": "sha512-6dpvFV4WjcWbDVGgHTWo/aupl8/LbBx2NSKfiwqf79xC/yeJjKHT1+StcKy/2KTmW16hE68ccKVOtXf+WZGz7Q==", + "node_modules/is-unicode-supported": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz", + "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==", "dev": true, - "dependencies": { - "@types/node": "*", - "jest-util": "^29.6.3", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-worker/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/issue-parser": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/issue-parser/-/issue-parser-6.0.0.tgz", + "integrity": "sha512-zKa/Dxq2lGsBIXQ7CUZWTHfvxPC2ej0KfO7fIPqLlHB9J2hJ7rGhZ5rilhuufylr4RXYPzJUeFjKxz305OsNlA==", "dev": true, + "dependencies": { + "lodash.capitalize": "^4.2.1", + "lodash.escaperegexp": "^4.1.2", + "lodash.isplainobject": "^4.0.6", + "lodash.isstring": "^4.0.1", + "lodash.uniqby": "^4.7.0" + }, "engines": { - "node": ">=8" + "node": ">=10.13" } }, - "node_modules/jest-worker/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "node_modules/java-properties": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/java-properties/-/java-properties-1.0.2.tgz", + "integrity": "sha512-qjdpeo2yKlYTH7nFdK0vbZWuTCesk4o63v5iVOlhMQPfuIZQfW/HI35SjfhA+4qpg36rnFSvUK5b1m+ckIblQQ==", "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "node": ">= 0.6.0" } }, "node_modules/js-tokens": { @@ -9794,69 +2913,6 @@ "js-yaml": "bin/js-yaml.js" } }, - "node_modules/jsdom": { - "version": "20.0.3", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-20.0.3.tgz", - "integrity": "sha512-SYhBvTh89tTfCD/CRdSOm13mOBa42iTaTyfyEWBdKcGdPxPtLFBXuHR8XHb33YNYaP+lLbmSvBTsnoesCNJEsQ==", - "dev": true, - "dependencies": { - "abab": "^2.0.6", - "acorn": "^8.8.1", - "acorn-globals": "^7.0.0", - "cssom": "^0.5.0", - "cssstyle": "^2.3.0", - "data-urls": "^3.0.2", - "decimal.js": "^10.4.2", - "domexception": "^4.0.0", - "escodegen": "^2.0.0", - "form-data": "^4.0.0", - "html-encoding-sniffer": "^3.0.0", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.1", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.2", - "parse5": "^7.1.1", - "saxes": "^6.0.0", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.1.2", - "w3c-xmlserializer": "^4.0.0", - "webidl-conversions": "^7.0.0", - "whatwg-encoding": "^2.0.0", - "whatwg-mimetype": "^3.0.0", - "whatwg-url": "^11.0.0", - "ws": "^8.11.0", - "xml-name-validator": "^4.0.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "canvas": "^2.5.0" - }, - "peerDependenciesMeta": { - "canvas": { - "optional": true - } - } - }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/json-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", - "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", - "dev": true - }, "node_modules/json-parse-better-errors": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", @@ -9875,30 +2931,12 @@ "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", "dev": true }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "dev": true - }, "node_modules/json-stringify-safe": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", "dev": true }, - "node_modules/json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "dev": true, - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/jsonfile": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", @@ -9936,15 +2974,6 @@ "node": "*" } }, - "node_modules/keyv": { - "version": "4.5.3", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.3.tgz", - "integrity": "sha512-QCiSav9WaX1PgETJ+SpNnx2PRRapJ/oRSXM4VO5OGYGSjrxbKPVFVhB3l2OCbLCk329N8qyAtsJjSjvVBWzEug==", - "dev": true, - "dependencies": { - "json-buffer": "3.0.1" - } - }, "node_modules/kind-of": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", @@ -9954,37 +2983,6 @@ "node": ">=0.10.0" } }, - "node_modules/kleur": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/leven": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, - "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, "node_modules/lines-and-columns": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", @@ -10019,15 +3017,6 @@ "node": ">=4" } }, - "node_modules/load-json-file/node_modules/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/locate-path": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", @@ -10067,12 +3056,6 @@ "integrity": "sha512-kZzYOKspf8XVX5AvmQF94gQW0lejFVgb80G85bU4ZWzoJ6C03PQg3coYAUpSTpQWelrZELd3XWgHzw4Ck5kaIw==", "dev": true }, - "node_modules/lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", - "dev": true - }, "node_modules/lodash.escaperegexp": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/lodash.escaperegexp/-/lodash.escaperegexp-4.1.2.tgz", @@ -10109,12 +3092,6 @@ "integrity": "sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g==", "dev": true }, - "node_modules/lodash.memoize": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", - "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", - "dev": true - }, "node_modules/lodash.merge": { "version": "4.6.2", "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", @@ -10158,30 +3135,6 @@ "dev": true }, "node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "dependencies": { - "yallist": "^3.0.2" - } - }, - "node_modules/make-dir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", - "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", - "dev": true, - "dependencies": { - "semver": "^7.5.3" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/make-dir/node_modules/lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", @@ -10193,42 +3146,12 @@ "node": ">=10" } }, - "node_modules/make-dir/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/make-dir/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/make-error": { "version": "1.3.6", "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", "dev": true }, - "node_modules/makeerror": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", - "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", - "dev": true, - "dependencies": { - "tmpl": "1.0.5" - } - }, "node_modules/map-obj": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", @@ -10269,23 +3192,8 @@ "engines": { "node": ">=14.13.1 || >=16.0.0" }, - "peerDependencies": { - "marked": "^1.0.0 || ^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0" - } - }, - "node_modules/marked-terminal/node_modules/ansi-escapes": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-6.2.0.tgz", - "integrity": "sha512-kzRaCqXnpzWs+3z5ABPQiVke+iq0KXkHo8xiWV4RPTi5Yli0l97BEQuhXV1s7+aSU/fu1kUuxgS4MsQ0fRuygw==", - "dev": true, - "dependencies": { - "type-fest": "^3.0.0" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependencies": { + "marked": "^1.0.0 || ^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0" } }, "node_modules/marked-terminal/node_modules/chalk": { @@ -10300,18 +3208,6 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/marked-terminal/node_modules/type-fest": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", - "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", - "dev": true, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/meow": { "version": "8.1.2", "resolved": "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz", @@ -10337,18 +3233,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/meow/node_modules/type-fest": { - "version": "0.18.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", - "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/merge-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", @@ -10389,27 +3273,6 @@ "node": ">=10.0.0" } }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, "node_modules/mimic-fn": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", @@ -10428,18 +3291,6 @@ "node": ">=4" } }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, "node_modules/minimist": { "version": "1.2.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", @@ -10478,30 +3329,6 @@ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, - "node_modules/nanoid": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", - "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true - }, "node_modules/neo-async": { "version": "2.6.2", "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", @@ -10523,18 +3350,6 @@ "lodash": "^4.17.21" } }, - "node_modules/node-int64": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", - "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", - "dev": true - }, - "node_modules/node-releases": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", - "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", - "dev": true - }, "node_modules/normalize-package-data": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", @@ -10550,48 +3365,6 @@ "node": ">=10" } }, - "node_modules/normalize-package-data/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/normalize-package-data/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/normalize-package-data/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/normalize-url": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-8.0.0.tgz", @@ -13732,12 +6505,6 @@ "inBundle": true, "license": "ISC" }, - "node_modules/nwsapi": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.7.tgz", - "integrity": "sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ==", - "dev": true - }, "node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", @@ -13762,23 +6529,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/optionator": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", - "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", - "dev": true, - "dependencies": { - "@aashutoshrathi/word-wrap": "^1.2.3", - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, "node_modules/p-each-series": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-3.0.0.tgz", @@ -13873,12 +6623,12 @@ } }, "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==", "dev": true, "engines": { - "node": ">=6" + "node": ">=4" } }, "node_modules/parent-module": { @@ -13911,18 +6661,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/parse5": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", - "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", - "dev": true, - "dependencies": { - "entities": "^4.4.0" - }, - "funding": { - "url": "https://github.com/inikulin/parse5?sponsor=1" - } - }, "node_modules/path-exists": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", @@ -13932,15 +6670,6 @@ "node": ">=8" } }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/path-key": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", @@ -13965,12 +6694,6 @@ "node": ">=8" } }, - "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, "node_modules/picomatch": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", @@ -13992,15 +6715,6 @@ "node": ">=4" } }, - "node_modules/pirates": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", - "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, "node_modules/pkg-conf": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-2.1.0.tgz", @@ -14047,180 +6761,29 @@ "dependencies": { "p-try": "^1.0.0" }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-conf/node_modules/p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==", - "dev": true, - "dependencies": { - "p-limit": "^1.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-conf/node_modules/p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-conf/node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "dependencies": { - "find-up": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pkg-dir/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pkg-dir/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pkg-dir/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/pkg-dir/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/postcss": { - "version": "8.4.29", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.29.tgz", - "integrity": "sha512-cbI+jaqIeu/VGqXEarWkRCCffhjgXc0qjBtXpqJhTBohMUjUQnbBr0xqX3vEKudc4iviTewcJo5ajcec5+wdJw==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "nanoid": "^3.3.6", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/prettier": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.0.3.tgz", - "integrity": "sha512-L/4pUDMxcNa8R/EthV08Zt42WBO4h1rarVtK0K+QJG0X187OLo7l699jWw0GKuwzkPQ//jMFA/8Xm6Fh3J/DAg==", - "dev": true, - "bin": { - "prettier": "bin/prettier.cjs" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/prettier/prettier?sponsor=1" + "engines": { + "node": ">=4" } }, - "node_modules/pretty-format": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.6.3.tgz", - "integrity": "sha512-ZsBgjVhFAj5KeK+nHfF1305/By3lechHQSMWCTl8iHSbfOm2TN5nHEtFc/+W7fAyUeCs2n5iow72gld4gW0xDw==", + "node_modules/pkg-conf/node_modules/p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==", "dev": true, "dependencies": { - "@jest/schemas": "^29.6.3", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" + "p-limit": "^1.1.0" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=4" } }, - "node_modules/pretty-format/node_modules/ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "node_modules/pkg-conf/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", "dev": true, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": ">=4" } }, "node_modules/process-nextick-args": { @@ -14229,31 +6792,12 @@ "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", "dev": true }, - "node_modules/prompts": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", - "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", - "dev": true, - "dependencies": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.5" - }, - "engines": { - "node": ">= 6" - } - }, "node_modules/proto-list": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==", "dev": true }, - "node_modules/psl": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", - "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", - "dev": true - }, "node_modules/punycode": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", @@ -14263,28 +6807,6 @@ "node": ">=6" } }, - "node_modules/pure-rand": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.0.2.tgz", - "integrity": "sha512-6Yg0ekpKICSjPswYOuC5sku/TSWaRYlA0qsXqJgM/d/4pLPHPuTxK7Nbf7jFKzAeedUhR8C7K9Uv63FBsSo8xQ==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/dubzzz" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/fast-check" - } - ] - }, - "node_modules/querystringify": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", - "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", - "dev": true - }, "node_modules/queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", @@ -14329,21 +6851,6 @@ "rc": "cli.js" } }, - "node_modules/rc/node_modules/strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-is": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", - "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", - "dev": true - }, "node_modules/read-pkg": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", @@ -14428,6 +6935,15 @@ "node": ">=8" } }, + "node_modules/read-pkg-up/node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/read-pkg-up/node_modules/type-fest": { "version": "0.8.1", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", @@ -14510,56 +7026,6 @@ "esprima": "~4.0.0" } }, - "node_modules/regenerate": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", - "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", - "dev": true - }, - "node_modules/regenerate-unicode-properties": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", - "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", - "dev": true, - "dependencies": { - "regenerate": "^1.4.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/regenerator-runtime": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz", - "integrity": "sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==", - "dev": true - }, - "node_modules/regenerator-transform": { - "version": "0.15.2", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz", - "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.8.4" - } - }, - "node_modules/regexpu-core": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", - "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", - "dev": true, - "dependencies": { - "@babel/regjsgen": "^0.8.0", - "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.1.0", - "regjsparser": "^0.9.1", - "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.1.0" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/registry-auth-token": { "version": "5.0.2", "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-5.0.2.tgz", @@ -14572,27 +7038,6 @@ "node": ">=14" } }, - "node_modules/regjsparser": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", - "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", - "dev": true, - "dependencies": { - "jsesc": "~0.5.0" - }, - "bin": { - "regjsparser": "bin/parser" - } - }, - "node_modules/regjsparser/node_modules/jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - } - }, "node_modules/require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", @@ -14611,12 +7056,6 @@ "node": ">=0.10.0" } }, - "node_modules/requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", - "dev": true - }, "node_modules/resolve": { "version": "1.22.4", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", @@ -14634,18 +7073,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/resolve-cwd": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", - "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", - "dev": true, - "dependencies": { - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/resolve-from": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", @@ -14667,15 +7094,6 @@ "node": ">=8" } }, - "node_modules/resolve.exports": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz", - "integrity": "sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==", - "dev": true, - "engines": { - "node": ">=10" - } - }, "node_modules/reusify": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", @@ -14686,37 +7104,6 @@ "node": ">=0.10.0" } }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rollup": { - "version": "3.28.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.28.1.tgz", - "integrity": "sha512-R9OMQmIHJm9znrU3m3cpE8uhN0fGdXiawME7aZIpQqvpS/85+Vt1Hq1/yVIcYfOmaQiHjvXkQAoJukvLpau6Yw==", - "dev": true, - "bin": { - "rollup": "dist/bin/rollup" - }, - "engines": { - "node": ">=14.18.0", - "npm": ">=8.0.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, "node_modules/run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -14746,24 +7133,6 @@ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", "dev": true }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "node_modules/saxes": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz", - "integrity": "sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==", - "dev": true, - "dependencies": { - "xmlchars": "^2.2.0" - }, - "engines": { - "node": ">=v12.22.7" - } - }, "node_modules/semantic-release": { "version": "21.1.1", "resolved": "https://registry.npmjs.org/semantic-release/-/semantic-release-21.1.1.tgz", @@ -15106,33 +7475,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/semantic-release/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/semantic-release/node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/semantic-release/node_modules/signal-exit": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", @@ -15169,12 +7511,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/semantic-release/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/semantic-release/node_modules/yocto-queue": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", @@ -15188,12 +7524,18 @@ } }, "node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, "bin": { "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, "node_modules/semver-diff": { @@ -15211,90 +7553,107 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/semver-diff/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/semver-regex": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/semver-regex/-/semver-regex-4.0.5.tgz", + "integrity": "sha512-hunMQrEy1T6Jr2uEVjrAIqjwWcQTgOAcIM52C8MY1EZSD3DDNft04XzvYKPqjED65bNVVko0YI38nYeEHCX3yw==", "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, "engines": { - "node": ">=10" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/semver-diff/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "shebang-regex": "^3.0.0" }, "engines": { - "node": ">=10" + "node": ">=8" } }, - "node_modules/semver-diff/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", "dev": true }, - "node_modules/semver-regex": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/semver-regex/-/semver-regex-4.0.5.tgz", - "integrity": "sha512-hunMQrEy1T6Jr2uEVjrAIqjwWcQTgOAcIM52C8MY1EZSD3DDNft04XzvYKPqjED65bNVVko0YI38nYeEHCX3yw==", + "node_modules/signale": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/signale/-/signale-1.4.0.tgz", + "integrity": "sha512-iuh+gPf28RkltuJC7W5MRi6XAjTDCAPC/prJUpQoG4vIP3MJZ+GTydVnodXA7pwvTKb2cA0m9OFZW/cdWy/I/w==", "dev": true, + "dependencies": { + "chalk": "^2.3.2", + "figures": "^2.0.0", + "pkg-conf": "^2.1.0" + }, "engines": { - "node": ">=12" + "node": ">=6" + } + }, + "node_modules/signale/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=4" } }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "node_modules/signale/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, "dependencies": { - "shebang-regex": "^3.0.0" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "node_modules/signale/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dev": true, - "engines": { - "node": ">=8" + "dependencies": { + "color-name": "1.1.3" } }, - "node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "node_modules/signale/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", "dev": true }, - "node_modules/signale": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/signale/-/signale-1.4.0.tgz", - "integrity": "sha512-iuh+gPf28RkltuJC7W5MRi6XAjTDCAPC/prJUpQoG4vIP3MJZ+GTydVnodXA7pwvTKb2cA0m9OFZW/cdWy/I/w==", + "node_modules/signale/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "dev": true, - "dependencies": { - "chalk": "^2.3.2", - "figures": "^2.0.0", - "pkg-conf": "^2.1.0" - }, "engines": { - "node": ">=6" + "node": ">=0.8.0" } }, "node_modules/signale/node_modules/figures": { @@ -15309,47 +7668,46 @@ "node": ">=4" } }, - "node_modules/sisteransi": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", - "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", - "dev": true - }, - "node_modules/slash": { + "node_modules/signale/node_modules/has-flag": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "dev": true, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "node_modules/signale/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "node_modules/source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/source-map-support": { - "version": "0.5.13", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", - "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" + "engines": { + "node": ">=0.10.0" } }, "node_modules/spawn-error-forwarder": { @@ -15425,33 +7783,6 @@ "node": ">= 6" } }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true - }, - "node_modules/stack-utils": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", - "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", - "dev": true, - "dependencies": { - "escape-string-regexp": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/stack-utils/node_modules/escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/stream-combiner2": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz", @@ -15471,19 +7802,6 @@ "safe-buffer": "~5.1.0" } }, - "node_modules/string-length": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", - "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", - "dev": true, - "dependencies": { - "char-regex": "^1.0.2", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/string-width": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", @@ -15511,12 +7829,12 @@ } }, "node_modules/strip-bom": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", - "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", "dev": true, "engines": { - "node": ">=8" + "node": ">=4" } }, "node_modules/strip-final-newline": { @@ -15541,27 +7859,24 @@ } }, "node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", "dev": true, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.10.0" } }, "node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "dependencies": { - "has-flag": "^3.0.0" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=4" + "node": ">=8" } }, "node_modules/supports-hyperlinks": { @@ -15577,27 +7892,6 @@ "node": ">=8" } }, - "node_modules/supports-hyperlinks/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/supports-hyperlinks/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/supports-preserve-symlinks-flag": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", @@ -15610,12 +7904,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/symbol-tree": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", - "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", - "dev": true - }, "node_modules/temp-dir": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-3.0.0.tgz", @@ -15667,20 +7955,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "dev": true, - "dependencies": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/text-extensions": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-1.9.0.tgz", @@ -15690,12 +7964,6 @@ "node": ">=0.10" } }, - "node_modules/text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true - }, "node_modules/through": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", @@ -15725,182 +7993,34 @@ "node": ">= 6" } }, - "node_modules/tmpl": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", - "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", - "dev": true - }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dev": true, "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/tough-cookie": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz", - "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==", - "dev": true, - "dependencies": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.2.0", - "url-parse": "^1.5.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/tough-cookie/node_modules/universalify": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", - "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", - "dev": true, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/tr46": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", - "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", - "dev": true, - "dependencies": { - "punycode": "^2.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/traverse": { - "version": "0.6.7", - "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.6.7.tgz", - "integrity": "sha512-/y956gpUo9ZNCb99YjxG7OaslxZWHfCHAUUfshwqOXmxUIvqLjVO581BT+gM59+QV9tFe6/CGG53tsA1Y7RSdg==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/trim-newlines": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", - "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ts-api-utils": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.0.2.tgz", - "integrity": "sha512-Cbu4nIqnEdd+THNEsBdkolnOXhg0I8XteoHaEKgvsxpsbWda4IsUut2c187HxywQCvveojow0Dgw/amxtSKVkQ==", - "dev": true, - "engines": { - "node": ">=16.13.0" - }, - "peerDependencies": { - "typescript": ">=4.2.0" - } - }, - "node_modules/ts-jest": { - "version": "29.1.1", - "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.1.tgz", - "integrity": "sha512-D6xjnnbP17cC85nliwGiL+tpoKN0StpgE0TeOjXQTU6MVCfsB4v7aW05CgQ/1OywGb0x/oy9hHFnN+sczTiRaA==", - "dev": true, - "dependencies": { - "bs-logger": "0.x", - "fast-json-stable-stringify": "2.x", - "jest-util": "^29.0.0", - "json5": "^2.2.3", - "lodash.memoize": "4.x", - "make-error": "1.x", - "semver": "^7.5.3", - "yargs-parser": "^21.0.1" - }, - "bin": { - "ts-jest": "cli.js" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "@babel/core": ">=7.0.0-beta.0 <8", - "@jest/types": "^29.0.0", - "babel-jest": "^29.0.0", - "jest": "^29.0.0", - "typescript": ">=4.3 <6" - }, - "peerDependenciesMeta": { - "@babel/core": { - "optional": true - }, - "@jest/types": { - "optional": true - }, - "babel-jest": { - "optional": true - }, - "esbuild": { - "optional": true - } - } - }, - "node_modules/ts-jest/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ts-jest/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "is-number": "^7.0.0" }, "engines": { - "node": ">=10" + "node": ">=8.0" } }, - "node_modules/ts-jest/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "node_modules/traverse": { + "version": "0.6.7", + "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.6.7.tgz", + "integrity": "sha512-/y956gpUo9ZNCb99YjxG7OaslxZWHfCHAUUfshwqOXmxUIvqLjVO581BT+gM59+QV9tFe6/CGG53tsA1Y7RSdg==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "node_modules/ts-jest/node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "node_modules/trim-newlines": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", + "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", "dev": true, "engines": { - "node": ">=12" + "node": ">=8" } }, "node_modules/ts-node": { @@ -15946,51 +8066,10 @@ } } }, - "node_modules/tsconfck": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/tsconfck/-/tsconfck-2.1.2.tgz", - "integrity": "sha512-ghqN1b0puy3MhhviwO2kGF8SeMDNhEbnKxjK7h6+fvY9JAxqvXi8y5NAHSQv687OVboS2uZIByzGd45/YxrRHg==", - "dev": true, - "bin": { - "tsconfck": "bin/tsconfck.js" - }, - "engines": { - "node": "^14.13.1 || ^16 || >=18" - }, - "peerDependencies": { - "typescript": "^4.3.5 || ^5.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "dependencies": { - "prelude-ls": "^1.2.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "version": "0.18.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", + "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", "dev": true, "engines": { "node": ">=10" @@ -16025,46 +8104,6 @@ "node": ">=0.8.0" } }, - "node_modules/unicode-canonical-property-names-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", - "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", - "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", - "dev": true, - "dependencies": { - "unicode-canonical-property-names-ecmascript": "^2.0.0", - "unicode-property-aliases-ecmascript": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-value-ecmascript": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", - "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-property-aliases-ecmascript": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", - "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/unique-string": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-3.0.0.tgz", @@ -16095,36 +8134,6 @@ "node": ">= 10.0.0" } }, - "node_modules/update-browserslist-db": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", - "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - }, - "bin": { - "update-browserslist-db": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" - } - }, "node_modules/uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -16143,16 +8152,6 @@ "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, - "node_modules/url-parse": { - "version": "1.5.10", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", - "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", - "dev": true, - "dependencies": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" - } - }, "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", @@ -16165,20 +8164,6 @@ "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", "dev": true }, - "node_modules/v8-to-istanbul": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.1.0.tgz", - "integrity": "sha512-6z3GW9x8G1gd+JIIgQQQxXuiJtCXeAjp6RaPEPLv62mH3iPHPxV6W3robxtCzNErRo6ZwTmzWhsbNvjyEBKzKA==", - "dev": true, - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.12", - "@types/istanbul-lib-coverage": "^2.0.1", - "convert-source-map": "^1.6.0" - }, - "engines": { - "node": ">=10.12.0" - } - }, "node_modules/validate-npm-package-license": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", @@ -16189,144 +8174,6 @@ "spdx-expression-parse": "^3.0.0" } }, - "node_modules/vite": { - "version": "4.4.9", - "resolved": "https://registry.npmjs.org/vite/-/vite-4.4.9.tgz", - "integrity": "sha512-2mbUn2LlUmNASWwSCNSJ/EG2HuSRTnVNaydp6vMCm5VIqJsjMfbIWtbH2kDuwUVW5mMUKKZvGPX/rqeqVvv1XA==", - "dev": true, - "dependencies": { - "esbuild": "^0.18.10", - "postcss": "^8.4.27", - "rollup": "^3.27.1" - }, - "bin": { - "vite": "bin/vite.js" - }, - "engines": { - "node": "^14.18.0 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/vitejs/vite?sponsor=1" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - }, - "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 - } - } - }, - "node_modules/vite-tsconfig-paths": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/vite-tsconfig-paths/-/vite-tsconfig-paths-4.2.0.tgz", - "integrity": "sha512-jGpus0eUy5qbbMVGiTxCL1iB9ZGN6Bd37VGLJU39kTDD6ZfULTTb1bcc5IeTWqWJKiWV5YihCaibeASPiGi8kw==", - "dev": true, - "dependencies": { - "debug": "^4.1.1", - "globrex": "^0.1.2", - "tsconfck": "^2.1.0" - }, - "peerDependencies": { - "vite": "*" - }, - "peerDependenciesMeta": { - "vite": { - "optional": true - } - } - }, - "node_modules/w3c-xmlserializer": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-4.0.0.tgz", - "integrity": "sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw==", - "dev": true, - "dependencies": { - "xml-name-validator": "^4.0.0" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/walker": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", - "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", - "dev": true, - "dependencies": { - "makeerror": "1.0.12" - } - }, - "node_modules/webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/whatwg-encoding": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz", - "integrity": "sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==", - "dev": true, - "dependencies": { - "iconv-lite": "0.6.3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/whatwg-mimetype": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz", - "integrity": "sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/whatwg-url": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", - "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", - "dev": true, - "dependencies": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -16365,94 +8212,12 @@ "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/wrap-ansi/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", "dev": true }, - "node_modules/write-file-atomic": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", - "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", - "dev": true, - "dependencies": { - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.7" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/ws": { - "version": "8.13.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", - "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", - "dev": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/xml-name-validator": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-4.0.0.tgz", - "integrity": "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/xmlchars": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", - "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", - "dev": true - }, "node_modules/xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", @@ -16472,9 +8237,9 @@ } }, "node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true }, "node_modules/yargs": { diff --git a/package.json b/package.json index f708114..1df21a7 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { - "name": "@radixdlt/rola", + "name": "@radixdlt/rola-monorepo", "version": "0.0.0", - "description": "Radix TypeScript ROLA repository", + "description": "Collection of packages for implementing ROLA", "homepage": "https://developers.radixdlt.com", "keywords": [ "radix", @@ -21,70 +21,22 @@ "Alex Stelea ", "Dawid Sowa " ], - "bugs": "https://github.com/radixdlt/typescript-rola/issues", + "bugs": "https://github.com/radixdlt/rola/issues", "license": "Apache-2.0", "engines": { "node": ">=14.0.0" }, - "files": [ - "dist" - ], - "main": "./dist/rola.mjs", - "exports": { - ".": { - "import": { - "types": "./dist/rola.d.ts", - "default": "./dist/rola.mjs" - }, - "require": { - "types": "./dist/rola.d.ts", - "default": "./dist/rola.umd.js" - } - } - }, - "types": "./dist/rola.d.ts", "scripts": { - "dev": "vite serve examples", - "build": "vite build && npm run build:types", - "build:types": "tsc --project tsconfig.types.json --emitDeclarationOnly", - "prettier": "prettier --cache --check src", - "prettier:fix": "prettier --cache --write src", - "lint": "eslint --cache \"src/**/*.{ts,tsx}\"", - "lint:fix": "eslint --cache --fix \"src/**/*.{ts,tsx}\"", - "preview": "vite preview", - "pre-push": "npm run build && npm run lint && npm run prettier && npm run test", - "prepare": "npx husky install", - "test": "jest --passWithNoTests", - "test:watch": "jest --watch", "semantic-release": "semantic-release" }, "devDependencies": { - "@babel/preset-env": "^7.22.14", - "@babel/preset-typescript": "^7.22.11", "@commitlint/cli": "^17.7.1", "@commitlint/config-conventional": "^17.7.0", - "@types/jest": "^29.5.4", - "@typescript-eslint/eslint-plugin": "^6.5.0", - "@typescript-eslint/parser": "^6.5.0", - "babel-preset-vite": "^1.1.0", - "buffer": "^6.0.3", - "eslint": "^8.48.0", - "eslint-config-alloy": "^5.1.2", - "eslint-plugin-unused-imports": "^3.0.0", - "husky": "^8.0.3", - "jest": "^29.6.4", - "jest-environment-jsdom": "^29.6.4", - "prettier": "^3.0.3", - "semantic-release": "^21.1.1", - "ts-jest": "^29.1.1", - "ts-node": "^10.9.1", - "typescript": "^5.2.2", - "vite": "^4.4.9", - "vite-tsconfig-paths": "^4.2.0" + "semantic-release": "^21.1.1" }, "dependencies": {}, "repository": { "type": "git", - "url": "https://github.com/radixdlt/typescript-rola.git" + "url": "https://github.com/radixdlt/rola.git" } } diff --git a/release.config.js b/release.config.js index 929de9a..2cb1b39 100644 --- a/release.config.js +++ b/release.config.js @@ -3,9 +3,9 @@ module.exports = { 'main', 'next', { - name: 'develop', - channel: 'alpha', - prerelease: 'alpha', + name: 'release/rcnet-v3', + channel: 'rcnet-v3', + prerelease: 'rcnet-v3', }, ], plugins: [ diff --git a/setup-tests.js b/setup-tests.js deleted file mode 100644 index e69de29..0000000 diff --git a/src/rola.ts b/src/rola.ts deleted file mode 100644 index 837d8d4..0000000 --- a/src/rola.ts +++ /dev/null @@ -1,3 +0,0 @@ -export const ROLA = () => { - console.log('rola is here') -} diff --git a/.eslintrc.js b/typescript/.eslintrc.js similarity index 100% rename from .eslintrc.js rename to typescript/.eslintrc.js diff --git a/typescript/README.md b/typescript/README.md new file mode 100644 index 0000000..8bd729a --- /dev/null +++ b/typescript/README.md @@ -0,0 +1,55 @@ +[![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) + +# ROLA (Radix Off-Ledger Authentication) + +ROLA is a method of authenticating something claimed by the user connected to your dApp with the Radix Wallet. It uses the capabilities of the Radix Network to make this possible in a way that is decentralized and flexible for the user. + +ROLA is intended for use in the server backend portion of a Full Stack dApp. It runs "off-ledger" alongside backend business and user management logic, providing reliable authentication of claims of user control using "on-ledger" data from the Radix Network. + +## Resources + +[What is ROLA](https://docs-babylon.radixdlt.com/main/frontend/rola.html) + +## Getting started + +`npm install @radixdlt/rola isomorphic-fetch` + +## How to use + +```typescript +import 'isomorphic-fetch' +import { Rola, NetworkId, SignedChallenge } from '@radixdlt/rola' + +const { verifySignedChallenge } = Rola({ + networkId: NetworkId.RCNetV3, + applicationName: 'Gumball Club', + dAppDefinitionAddress: + 'account_tdx_e_128uml7z6mqqqtm035t83alawc3jkvap9sxavecs35ud3ct20jxxuhl', + expectedOrigin: + 'https://radix-dapp-toolkit-dev.rdx-works-main.extratools.works', +}) + +// signed challenge response returned from wallet +const signedChallenge = { + challenge: 'b519902dd21c9669b81bb5023687879d178e5c4991ba1d0ee9e131cee365bafa', + proof: { + publicKey: + '1456b4da4ee62da249459f2180b83e5ebd5db8bad2ed1d8f35f51e7ec2cc98ce', + signature: + '8335e38096b3f0ac943c04e4c0b286af8cb711cb5f603a023d1d387fdd0cfae1a0255bcdb5d75cd43690413798959bd4c05af9b86f30d6ff74561bb9c8869202', + curve: 'curve25519', + }, + address: + 'identity_tdx_e_122mta8gr4tnjwywlxp5pdt03wfrd68pckne5z3cg2ce4kl3lw48ucy', + type: 'persona', +} + +const result = await verifySignedChallenge(signedChallenge) + +// handle error response +if (result.isErr()) throw result.error +``` + +## Examples + +[Full stack example](https://github.com/radixdlt/rola-examples) diff --git a/babel.config.js b/typescript/babel.config.cjs similarity index 100% rename from babel.config.js rename to typescript/babel.config.cjs diff --git a/jest.config.ts b/typescript/jest.config.ts similarity index 100% rename from jest.config.ts rename to typescript/jest.config.ts diff --git a/typescript/package-lock.json b/typescript/package-lock.json new file mode 100644 index 0000000..a5c8197 --- /dev/null +++ b/typescript/package-lock.json @@ -0,0 +1,17055 @@ +{ + "name": "@radixdlt/rola", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "@radixdlt/rola", + "version": "0.0.0", + "license": "Apache-2.0", + "dependencies": { + "@radixdlt/radix-dapp-toolkit": "0.6.1", + "@radixdlt/radix-engine-toolkit": "0.3.0", + "elliptic": "^6.5.4", + "neverthrow": "^6.0.0" + }, + "devDependencies": { + "@babel/preset-env": "^7.22.14", + "@babel/preset-typescript": "^7.22.11", + "@commitlint/cli": "^17.7.1", + "@commitlint/config-conventional": "^17.7.0", + "@types/elliptic": "^6.4.14", + "@types/jest": "^29.5.4", + "@typescript-eslint/eslint-plugin": "^6.5.0", + "@typescript-eslint/parser": "^6.5.0", + "babel-preset-vite": "^1.1.0", + "buffer": "^6.0.3", + "eslint": "^8.48.0", + "eslint-config-alloy": "^5.1.2", + "eslint-plugin-unused-imports": "^3.0.0", + "husky": "^8.0.3", + "isomorphic-fetch": "^3.0.0", + "jest": "^29.6.4", + "jest-environment-jsdom": "^29.6.4", + "prettier": "^3.0.3", + "semantic-release": "^21.1.1", + "ts-jest": "^29.1.1", + "ts-node": "^10.9.1", + "typescript": "^5.2.2", + "vite": "^4.4.9", + "vite-tsconfig-paths": "^4.2.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aashutoshrathi/word-wrap": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", + "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", + "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.22.13", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", + "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.22.13", + "chalk": "^2.4.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz", + "integrity": "sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.11.tgz", + "integrity": "sha512-lh7RJrtPdhibbxndr6/xx0w8+CVlY5FJZiaSz908Fpy+G0xkBFTvwLcKJFF4PJxVfGhVWNebikpWGnOoC71juQ==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.22.10", + "@babel/generator": "^7.22.10", + "@babel/helper-compilation-targets": "^7.22.10", + "@babel/helper-module-transforms": "^7.22.9", + "@babel/helpers": "^7.22.11", + "@babel/parser": "^7.22.11", + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.11", + "@babel/types": "^7.22.11", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.10.tgz", + "integrity": "sha512-79KIf7YiWjjdZ81JnLujDRApWtl7BxTqWD88+FFdQEIOG8LJ0etDOM7CXuIgGJa55sGOwZVwuEsaLEm0PJ5/+A==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.10", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz", + "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.10.tgz", + "integrity": "sha512-Av0qubwDQxC56DoUReVDeLfMEjYYSN1nZrTUrWkXd7hpU73ymRANkbuDm3yni9npkn+RXy9nNbEJZEzXr7xrfQ==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.10" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.10.tgz", + "integrity": "sha512-JMSwHD4J7SLod0idLq5PKgI+6g/hLD/iuWBq08ZX49xE14VpVEojJ5rHWptpirV2j020MvypRLAXAO50igCJ5Q==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.22.9", + "@babel/helper-validator-option": "^7.22.5", + "browserslist": "^4.21.9", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.11.tgz", + "integrity": "sha512-y1grdYL4WzmUDBRGK0pDbIoFd7UZKoDurDzWEoNMYoj1EL+foGRQNyPWDcC+YyegN5y1DUsFFmzjGijB3nSVAQ==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-member-expression-to-functions": "^7.22.5", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.9.tgz", + "integrity": "sha512-+svjVa/tFwsNSG4NEy1h85+HQ5imbT92Q5/bgtS7P0GTQlP8WuFdqsiABmQouhiFGyV66oGxZFpeYHza1rNsKw==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "regexpu-core": "^5.3.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.2.tgz", + "integrity": "sha512-k0qnnOqHn5dK9pZpfD5XXZ9SojAITdCKRn2Lp6rnDGzIbaP0rHyMPk/4wsSxVBVz4RfN0q6VpXWP2pDGIoQ7hw==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", + "integrity": "sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz", + "integrity": "sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==", + "dev": true, + "dependencies": { + "@babel/template": "^7.22.5", + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", + "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.5.tgz", + "integrity": "sha512-aBiH1NKMG0H2cGZqspNvsaBe6wNGjbJjuLy29aU+eDZjSbbN53BaxlpB02xm9v34pLTZ1nIQPFYn2qMZoa5BQQ==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz", + "integrity": "sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz", + "integrity": "sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-simple-access": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/helper-validator-identifier": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz", + "integrity": "sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", + "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.9.tgz", + "integrity": "sha512-8WWC4oR4Px+tr+Fp0X3RHDVfINGpF3ad1HIbrc8A77epiR6eMMc6jsgozkzT2uDiOOdoS9cLIQ+XD2XvI2WSmQ==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-wrap-function": "^7.22.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.9.tgz", + "integrity": "sha512-LJIKvvpgPOPUThdYqcX6IXRuIcTkcAub0IaDRGCZH0p5GPUp7PhRU9QVgFcDDd51BaPkk77ZjqFwh6DZTAEmGg==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-member-expression-to-functions": "^7.22.5", + "@babel/helper-optimise-call-expression": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", + "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz", + "integrity": "sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", + "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", + "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", + "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz", + "integrity": "sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.10.tgz", + "integrity": "sha512-OnMhjWjuGYtdoO3FmsEFWvBStBAe2QOgwOLsLNDjN+aaiMD8InJk1/O3HSD8lkqTjCgg5YI34Tz15KNNA3p+nQ==", + "dev": true, + "dependencies": { + "@babel/helper-function-name": "^7.22.5", + "@babel/template": "^7.22.5", + "@babel/types": "^7.22.10" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.11.tgz", + "integrity": "sha512-vyOXC8PBWaGc5h7GMsNx68OH33cypkEDJCHvYVVgVbbxJDROYVtexSk0gK5iCF1xNjRIN2s8ai7hwkWDq5szWg==", + "dev": true, + "dependencies": { + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.11", + "@babel/types": "^7.22.11" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.22.13", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.13.tgz", + "integrity": "sha512-C/BaXcnnvBCmHTpz/VGZ8jgtE2aYlW4hxDhseJAWZb7gqGM/qtCK6iZUb0TyKFf7BOUsBH7Q7fkRsDRhg1XklQ==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.22.5", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.22.14", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.14.tgz", + "integrity": "sha512-1KucTHgOvaw/LzCVrEOAyXkr9rQlp0A1HiHRYnSUE9dmb8PvPW7o5sscg+5169r54n3vGlbx6GevTE/Iw/P3AQ==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.5.tgz", + "integrity": "sha512-NP1M5Rf+u2Gw9qfSO4ihjcTGW5zXTi36ITLd4/EoAcEhIZ0yjMqmftDNl3QC19CX7olhrjpyU454g/2W7X0jvQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.5.tgz", + "integrity": "sha512-31Bb65aZaUwqCbWMnZPduIZxCBngHFlzyN6Dq6KAJjtx+lx6ohKHubc61OomYi7XwVD4Ol0XCVz4h+pYFR048g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-transform-optional-chaining": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0-placeholder-for-preset-env.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", + "dev": true, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.22.5.tgz", + "integrity": "sha512-rdV97N7KqsRzeNGoWUOK6yUsWarLjE5Su/Snk9IYPU9CwkWHs4t+rTGOvffTR8XGkJMTAdLfO0xVnXm8wugIJg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.22.5.tgz", + "integrity": "sha512-KwvoWDeNKPETmozyFE0P2rOLqh39EoQHNjqizrI5B8Vt0ZNS7M56s7dAiAqbYfiAYOuIzIh96z3iR2ktgu3tEg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz", + "integrity": "sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.22.5.tgz", + "integrity": "sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-unicode-sets-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", + "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.22.5.tgz", + "integrity": "sha512-26lTNXoVRdAnsaDXPpvCNUq+OVWEVC6bx7Vvz9rC53F2bagUWW4u4ii2+h8Fejfh7RYqPxn+libeFBBck9muEw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-generator-functions": { + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.11.tgz", + "integrity": "sha512-0pAlmeRJn6wU84zzZsEOx1JV1Jf8fqO9ok7wofIJwUnplYo247dcd24P+cMJht7ts9xkzdtB0EPHmOb7F+KzXw==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-remap-async-to-generator": "^7.22.9", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.22.5.tgz", + "integrity": "sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-remap-async-to-generator": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.22.5.tgz", + "integrity": "sha512-tdXZ2UdknEKQWKJP1KMNmuF5Lx3MymtMN/pvA+p/VEkhK8jVcQ1fzSy8KM9qRYhAf2/lV33hoMPKI/xaI9sADA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.22.10.tgz", + "integrity": "sha512-1+kVpGAOOI1Albt6Vse7c8pHzcZQdQKW+wJH+g8mCaszOdDVwRXa/slHPqIw+oJAJANTKDMuM2cBdV0Dg618Vg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-properties": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.22.5.tgz", + "integrity": "sha512-nDkQ0NfkOhPTq8YCLiWNxp1+f9fCobEjCb0n8WdbNUBc4IB5V7P1QnX9IjpSoquKrXF5SKojHleVNs2vGeHCHQ==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-static-block": { + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.11.tgz", + "integrity": "sha512-GMM8gGmqI7guS/llMFk1bJDkKfn3v3C4KHK9Yg1ey5qcHcOlKb0QvcMrgzvxo+T03/4szNh5lghY+fEC98Kq9g==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.22.11", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.6.tgz", + "integrity": "sha512-58EgM6nuPNG6Py4Z3zSuu0xWu2VfodiMi72Jt5Kj2FECmaYk1RrTXA45z6KBFsu9tRgwQDwIiY4FXTt+YsSFAQ==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.22.5.tgz", + "integrity": "sha512-4GHWBgRf0krxPX+AaPtgBAlTgTeZmqDynokHOX7aqqAB4tHs3U2Y02zH6ETFdLZGcg9UQSD1WCmkVrE9ErHeOg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/template": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.22.10.tgz", + "integrity": "sha512-dPJrL0VOyxqLM9sritNbMSGx/teueHF/htMKrPT7DNxccXxRDPYqlgPFFdr8u+F+qUZOkZoXue/6rL5O5GduEw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.22.5.tgz", + "integrity": "sha512-5/Yk9QxCQCl+sOIB1WelKnVRxTJDSAIxtJLL2/pqL14ZVlbH0fUQUZa/T5/UnQtBNgghR7mfB8ERBKyKPCi7Vw==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.22.5.tgz", + "integrity": "sha512-dEnYD+9BBgld5VBXHnF/DbYGp3fqGMsyxKbtD1mDyIA7AkTSpKXFhCVuj/oQVOoALfBs77DudA0BE4d5mcpmqw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dynamic-import": { + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.11.tgz", + "integrity": "sha512-g/21plo58sfteWjaO0ZNVb+uEOkJNjAaHhbejrnBmu011l/eNDScmkbjCC3l4FKb10ViaGU4aOkFznSu2zRHgA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.22.5.tgz", + "integrity": "sha512-vIpJFNM/FjZ4rh1myqIya9jXwrwwgFRHPjT3DkUA9ZLHuzox8jiXkOLvwm1H+PQIP3CqfC++WPKeuDi0Sjdj1g==", + "dev": true, + "dependencies": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-export-namespace-from": { + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.11.tgz", + "integrity": "sha512-xa7aad7q7OiT8oNZ1mU7NrISjlSkVdMbNxn9IuLZyL9AJEhs1Apba3I+u5riX1dIkdptP5EKDG5XDPByWxtehw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.5.tgz", + "integrity": "sha512-3kxQjX1dU9uudwSshyLeEipvrLjBCVthCgeTp6CzE/9JYrlAIaeekVxRpCWsDDfYTfRZRoCeZatCQvwo+wvK8A==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.22.5.tgz", + "integrity": "sha512-UIzQNMS0p0HHiQm3oelztj+ECwFnj+ZRV4KnguvlsD2of1whUeM6o7wGNj6oLwcDoAXQ8gEqfgC24D+VdIcevg==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-json-strings": { + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.11.tgz", + "integrity": "sha512-CxT5tCqpA9/jXFlme9xIBCc5RPtdDq3JpkkhgHQqtDdiTnTI0jtZ0QzXhr5DILeYifDPp2wvY2ad+7+hLMW5Pw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-json-strings": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.22.5.tgz", + "integrity": "sha512-fTLj4D79M+mepcw3dgFBTIDYpbcB9Sm0bpm4ppXPaO+U+PKFFyV9MGRvS0gvGw62sd10kT5lRMKXAADb9pWy8g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-logical-assignment-operators": { + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.11.tgz", + "integrity": "sha512-qQwRTP4+6xFCDV5k7gZBF3C31K34ut0tbEcTKxlX/0KXxm9GLcO14p570aWxFvVzx6QAfPgq7gaeIHXJC8LswQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.22.5.tgz", + "integrity": "sha512-RZEdkNtzzYCFl9SE9ATaUMTj2hqMb4StarOJLrZRbqqU4HSBE7UlBw9WBWQiDzrJZJdUWiMTVDI6Gv/8DPvfew==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.22.5.tgz", + "integrity": "sha512-R+PTfLTcYEmb1+kK7FNkhQ1gP4KgjpSO6HfH9+f8/yfp2Nt3ggBjiVpRwmwTlfqZLafYKJACy36yDXlEmI9HjQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.11.tgz", + "integrity": "sha512-o2+bg7GDS60cJMgz9jWqRUsWkMzLCxp+jFDeDUT5sjRlAxcJWZ2ylNdI7QQ2+CH5hWu7OnN+Cv3htt7AkSf96g==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.22.9", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-simple-access": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.11.tgz", + "integrity": "sha512-rIqHmHoMEOhI3VkVf5jQ15l539KrwhzqcBO6wdCNWPWc/JWt9ILNYNUssbRpeq0qWns8svuw8LnMNCvWBIJ8wA==", + "dev": true, + "dependencies": { + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-module-transforms": "^7.22.9", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.22.5.tgz", + "integrity": "sha512-+S6kzefN/E1vkSsKx8kmQuqeQsvCKCd1fraCM7zXm4SFoggI099Tr4G8U81+5gtMdUeMQ4ipdQffbKLX0/7dBQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz", + "integrity": "sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.22.5.tgz", + "integrity": "sha512-AsF7K0Fx/cNKVyk3a+DW0JLo+Ua598/NxMRvxDnkpCIGFh43+h/v2xyhRUYf6oD8gE4QtL83C7zZVghMjHd+iw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.11.tgz", + "integrity": "sha512-YZWOw4HxXrotb5xsjMJUDlLgcDXSfO9eCmdl1bgW4+/lAGdkjaEvOnQ4p5WKKdUgSzO39dgPl0pTnfxm0OAXcg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-numeric-separator": { + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.11.tgz", + "integrity": "sha512-3dzU4QGPsILdJbASKhF/V2TVP+gJya1PsueQCxIPCEcerqF21oEcrob4mzjsp2Py/1nLfF5m+xYNMDpmA8vffg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-rest-spread": { + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.11.tgz", + "integrity": "sha512-nX8cPFa6+UmbepISvlf5jhQyaC7ASs/7UxHmMkuJ/k5xSHvDPPaibMo+v3TXwU/Pjqhep/nFNpd3zn4YR59pnw==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.22.9", + "@babel/helper-compilation-targets": "^7.22.10", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.22.5.tgz", + "integrity": "sha512-klXqyaT9trSjIUrcsYIfETAzmOEZL3cBYqOYLJxBHfMFFggmXOv+NYSX/Jbs9mzMVESw/WycLFPRx8ba/b2Ipw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-catch-binding": { + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.11.tgz", + "integrity": "sha512-rli0WxesXUeCJnMYhzAglEjLWVDF6ahb45HuprcmQuLidBJFWjNnOzssk2kuc6e33FlLaiZhG/kUIzUMWdBKaQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.22.12", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.12.tgz", + "integrity": "sha512-7XXCVqZtyFWqjDsYDY4T45w4mlx1rf7aOgkc/Ww76xkgBiOlmjPkx36PBLHa1k1rwWvVgYMPsbuVnIamx2ZQJw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.5.tgz", + "integrity": "sha512-AVkFUBurORBREOmHRKo06FjHYgjrabpdqRSwq6+C7R5iTCZOsM4QbcB27St0a4U6fffyAOqh3s/qEfybAhfivg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-methods": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.22.5.tgz", + "integrity": "sha512-PPjh4gyrQnGe97JTalgRGMuU4icsZFnWkzicB/fUtzlKUqvsWBKEpPPfr5a2JiyirZkHxnAqkQMO5Z5B2kK3fA==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-property-in-object": { + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.11.tgz", + "integrity": "sha512-sSCbqZDBKHetvjSwpyWzhuHkmW5RummxJBVbYLkGkaiTOWGxml7SXt0iWa03bzxFIx7wOj3g/ILRd0RcJKBeSQ==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.11", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.22.5.tgz", + "integrity": "sha512-TiOArgddK3mK/x1Qwf5hay2pxI6wCZnvQqrFSqbtg1GLl2JcNMitVH/YnqjP+M31pLUeTfzY1HAXFDnUBV30rQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.22.10.tgz", + "integrity": "sha512-F28b1mDt8KcT5bUyJc/U9nwzw6cV+UmTeRlXYIl2TNqMMJif0Jeey9/RQ3C4NOd2zp0/TRsDns9ttj2L523rsw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "regenerator-transform": "^0.15.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.22.5.tgz", + "integrity": "sha512-DTtGKFRQUDm8svigJzZHzb/2xatPc6TzNvAIJ5GqOKDsGFYgAskjRulbR/vGsPKq3OPqtexnz327qYpP57RFyA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.22.5.tgz", + "integrity": "sha512-vM4fq9IXHscXVKzDv5itkO1X52SmdFBFcMIBZ2FRn2nqVYqw6dBexUgMvAjHW+KXpPPViD/Yo3GrDEBaRC0QYA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.22.5.tgz", + "integrity": "sha512-5ZzDQIGyvN4w8+dMmpohL6MBo+l2G7tfC/O2Dg7/hjpgeWvUx8FzfeOKxGog9IimPa4YekaQ9PlDqTLOljkcxg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.22.5.tgz", + "integrity": "sha512-zf7LuNpHG0iEeiyCNwX4j3gDg1jgt1k3ZdXBKbZSoA3BbGQGvMiSvfbZRR3Dr3aeJe3ooWFZxOOG3IRStYp2Bw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.22.5.tgz", + "integrity": "sha512-5ciOehRNf+EyUeewo8NkbQiUs4d6ZxiHo6BcBcnFlgiJfu16q0bQUw9Jvo0b0gBKFG1SMhDSjeKXSYuJLeFSMA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.22.5.tgz", + "integrity": "sha512-bYkI5lMzL4kPii4HHEEChkD0rkc+nvnlR6+o/qdqR6zrm0Sv/nodmyLhlq2DO0YKLUNd2VePmPRjJXSBh9OIdA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typescript": { + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.11.tgz", + "integrity": "sha512-0E4/L+7gfvHub7wsbTv03oRtD69X31LByy44fGmFzbZScpupFByMcgCJ0VbBTkzyjSJKuRoGN8tcijOWKTmqOA==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.11", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-typescript": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.22.10.tgz", + "integrity": "sha512-lRfaRKGZCBqDlRU3UIFovdp9c9mEvlylmpod0/OatICsSfuQ9YFthRo1tpTkGsklEefZdqlEFdY4A2dwTb6ohg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-property-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.22.5.tgz", + "integrity": "sha512-HCCIb+CbJIAE6sXn5CjFQXMwkCClcOfPCzTlilJ8cUatfzwHlWQkbtV0zD338u9dZskwvuOYTuuaMaA8J5EI5A==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.22.5.tgz", + "integrity": "sha512-028laaOKptN5vHJf9/Arr/HiJekMd41hOEZYvNsrsXqJ7YPYuX2bQxh31fkZzGmq3YqHRJzYFFAVYvKfMPKqyg==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-sets-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.22.5.tgz", + "integrity": "sha512-lhMfi4FC15j13eKrh3DnYHjpGj6UKQHtNKTbtc1igvAhRy4+kLhV07OpLcsN0VgDEw/MjAvJO4BdMJsHwMhzCg==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.22.14", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.22.14.tgz", + "integrity": "sha512-daodMIoVo+ol/g+//c/AH+szBkFj4STQUikvBijRGL72Ph+w+AMTSh55DUETe8KJlPlDT1k/mp7NBfOuiWmoig==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.22.9", + "@babel/helper-compilation-targets": "^7.22.10", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.5", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.22.5", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.22.5", + "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.22.5", + "@babel/plugin-syntax-import-attributes": "^7.22.5", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.22.5", + "@babel/plugin-transform-async-generator-functions": "^7.22.11", + "@babel/plugin-transform-async-to-generator": "^7.22.5", + "@babel/plugin-transform-block-scoped-functions": "^7.22.5", + "@babel/plugin-transform-block-scoping": "^7.22.10", + "@babel/plugin-transform-class-properties": "^7.22.5", + "@babel/plugin-transform-class-static-block": "^7.22.11", + "@babel/plugin-transform-classes": "^7.22.6", + "@babel/plugin-transform-computed-properties": "^7.22.5", + "@babel/plugin-transform-destructuring": "^7.22.10", + "@babel/plugin-transform-dotall-regex": "^7.22.5", + "@babel/plugin-transform-duplicate-keys": "^7.22.5", + "@babel/plugin-transform-dynamic-import": "^7.22.11", + "@babel/plugin-transform-exponentiation-operator": "^7.22.5", + "@babel/plugin-transform-export-namespace-from": "^7.22.11", + "@babel/plugin-transform-for-of": "^7.22.5", + "@babel/plugin-transform-function-name": "^7.22.5", + "@babel/plugin-transform-json-strings": "^7.22.11", + "@babel/plugin-transform-literals": "^7.22.5", + "@babel/plugin-transform-logical-assignment-operators": "^7.22.11", + "@babel/plugin-transform-member-expression-literals": "^7.22.5", + "@babel/plugin-transform-modules-amd": "^7.22.5", + "@babel/plugin-transform-modules-commonjs": "^7.22.11", + "@babel/plugin-transform-modules-systemjs": "^7.22.11", + "@babel/plugin-transform-modules-umd": "^7.22.5", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.5", + "@babel/plugin-transform-new-target": "^7.22.5", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.22.11", + "@babel/plugin-transform-numeric-separator": "^7.22.11", + "@babel/plugin-transform-object-rest-spread": "^7.22.11", + "@babel/plugin-transform-object-super": "^7.22.5", + "@babel/plugin-transform-optional-catch-binding": "^7.22.11", + "@babel/plugin-transform-optional-chaining": "^7.22.12", + "@babel/plugin-transform-parameters": "^7.22.5", + "@babel/plugin-transform-private-methods": "^7.22.5", + "@babel/plugin-transform-private-property-in-object": "^7.22.11", + "@babel/plugin-transform-property-literals": "^7.22.5", + "@babel/plugin-transform-regenerator": "^7.22.10", + "@babel/plugin-transform-reserved-words": "^7.22.5", + "@babel/plugin-transform-shorthand-properties": "^7.22.5", + "@babel/plugin-transform-spread": "^7.22.5", + "@babel/plugin-transform-sticky-regex": "^7.22.5", + "@babel/plugin-transform-template-literals": "^7.22.5", + "@babel/plugin-transform-typeof-symbol": "^7.22.5", + "@babel/plugin-transform-unicode-escapes": "^7.22.10", + "@babel/plugin-transform-unicode-property-regex": "^7.22.5", + "@babel/plugin-transform-unicode-regex": "^7.22.5", + "@babel/plugin-transform-unicode-sets-regex": "^7.22.5", + "@babel/preset-modules": "0.1.6-no-external-plugins", + "@babel/types": "^7.22.11", + "babel-plugin-polyfill-corejs2": "^0.4.5", + "babel-plugin-polyfill-corejs3": "^0.8.3", + "babel-plugin-polyfill-regenerator": "^0.5.2", + "core-js-compat": "^3.31.0", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.6-no-external-plugins", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", + "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/preset-typescript": { + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.22.11.tgz", + "integrity": "sha512-tWY5wyCZYBGY7IlalfKI1rLiGlIfnwsRHZqlky0HVv8qviwQ1Uo/05M6+s+TcTCVa6Bmoo2uJW5TMFX6Wa4qVg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.5", + "@babel/plugin-syntax-jsx": "^7.22.5", + "@babel/plugin-transform-modules-commonjs": "^7.22.11", + "@babel/plugin-transform-typescript": "^7.22.11" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==", + "dev": true + }, + "node_modules/@babel/runtime": { + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.11.tgz", + "integrity": "sha512-ee7jVNlWN09+KftVOu9n7S8gQzD/Z6hN/I8VBRXW4P1+Xe7kJGXMwu8vds4aGIMHZnNbdpSWCfZZtinytpcAvA==", + "dev": true, + "dependencies": { + "regenerator-runtime": "^0.14.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", + "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.22.5", + "@babel/parser": "^7.22.5", + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.11.tgz", + "integrity": "sha512-mzAenteTfomcB7mfPtyi+4oe5BZ6MXxWcn4CX+h4IRJ+OOGXBrWU6jDQavkQI9Vuc5P+donFabBfFCcmWka9lQ==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.22.10", + "@babel/generator": "^7.22.10", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/parser": "^7.22.11", + "@babel/types": "^7.22.11", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.11.tgz", + "integrity": "sha512-siazHiGuZRz9aB9NpHy9GOs9xiQPKnMzgdr493iI1M67vRXpnEq8ZOOKzezC5q7zwuQ6sDhdSp4SD9ixKSqKZg==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.5", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true + }, + "node_modules/@colors/colors": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/@commitlint/cli": { + "version": "17.7.1", + "resolved": "https://registry.npmjs.org/@commitlint/cli/-/cli-17.7.1.tgz", + "integrity": "sha512-BCm/AT06SNCQtvFv921iNhudOHuY16LswT0R3OeolVGLk8oP+Rk9TfQfgjH7QPMjhvp76bNqGFEcpKojxUNW1g==", + "dev": true, + "dependencies": { + "@commitlint/format": "^17.4.4", + "@commitlint/lint": "^17.7.0", + "@commitlint/load": "^17.7.1", + "@commitlint/read": "^17.5.1", + "@commitlint/types": "^17.4.4", + "execa": "^5.0.0", + "lodash.isfunction": "^3.0.9", + "resolve-from": "5.0.0", + "resolve-global": "1.0.0", + "yargs": "^17.0.0" + }, + "bin": { + "commitlint": "cli.js" + }, + "engines": { + "node": ">=v14" + } + }, + "node_modules/@commitlint/config-conventional": { + "version": "17.7.0", + "resolved": "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-17.7.0.tgz", + "integrity": "sha512-iicqh2o6et+9kWaqsQiEYZzfLbtoWv9uZl8kbI8EGfnc0HeGafQBF7AJ0ylN9D/2kj6txltsdyQs8+2fTMwWEw==", + "dev": true, + "dependencies": { + "conventional-changelog-conventionalcommits": "^6.1.0" + }, + "engines": { + "node": ">=v14" + } + }, + "node_modules/@commitlint/config-validator": { + "version": "17.6.7", + "resolved": "https://registry.npmjs.org/@commitlint/config-validator/-/config-validator-17.6.7.tgz", + "integrity": "sha512-vJSncmnzwMvpr3lIcm0I8YVVDJTzyjy7NZAeXbTXy+MPUdAr9pKyyg7Tx/ebOQ9kqzE6O9WT6jg2164br5UdsQ==", + "dev": true, + "dependencies": { + "@commitlint/types": "^17.4.4", + "ajv": "^8.11.0" + }, + "engines": { + "node": ">=v14" + } + }, + "node_modules/@commitlint/ensure": { + "version": "17.6.7", + "resolved": "https://registry.npmjs.org/@commitlint/ensure/-/ensure-17.6.7.tgz", + "integrity": "sha512-mfDJOd1/O/eIb/h4qwXzUxkmskXDL9vNPnZ4AKYKiZALz4vHzwMxBSYtyL2mUIDeU9DRSpEUins8SeKtFkYHSw==", + "dev": true, + "dependencies": { + "@commitlint/types": "^17.4.4", + "lodash.camelcase": "^4.3.0", + "lodash.kebabcase": "^4.1.1", + "lodash.snakecase": "^4.1.1", + "lodash.startcase": "^4.4.0", + "lodash.upperfirst": "^4.3.1" + }, + "engines": { + "node": ">=v14" + } + }, + "node_modules/@commitlint/execute-rule": { + "version": "17.4.0", + "resolved": "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-17.4.0.tgz", + "integrity": "sha512-LIgYXuCSO5Gvtc0t9bebAMSwd68ewzmqLypqI2Kke1rqOqqDbMpYcYfoPfFlv9eyLIh4jocHWwCK5FS7z9icUA==", + "dev": true, + "engines": { + "node": ">=v14" + } + }, + "node_modules/@commitlint/format": { + "version": "17.4.4", + "resolved": "https://registry.npmjs.org/@commitlint/format/-/format-17.4.4.tgz", + "integrity": "sha512-+IS7vpC4Gd/x+uyQPTAt3hXs5NxnkqAZ3aqrHd5Bx/R9skyCAWusNlNbw3InDbAK6j166D9asQM8fnmYIa+CXQ==", + "dev": true, + "dependencies": { + "@commitlint/types": "^17.4.4", + "chalk": "^4.1.0" + }, + "engines": { + "node": ">=v14" + } + }, + "node_modules/@commitlint/format/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@commitlint/format/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@commitlint/format/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@commitlint/format/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@commitlint/format/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@commitlint/format/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@commitlint/is-ignored": { + "version": "17.7.0", + "resolved": "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-17.7.0.tgz", + "integrity": "sha512-043rA7m45tyEfW7Zv2vZHF++176MLHH9h70fnPoYlB1slKBeKl8BwNIlnPg4xBdRBVNPaCqvXxWswx2GR4c9Hw==", + "dev": true, + "dependencies": { + "@commitlint/types": "^17.4.4", + "semver": "7.5.4" + }, + "engines": { + "node": ">=v14" + } + }, + "node_modules/@commitlint/is-ignored/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@commitlint/is-ignored/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@commitlint/is-ignored/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/@commitlint/lint": { + "version": "17.7.0", + "resolved": "https://registry.npmjs.org/@commitlint/lint/-/lint-17.7.0.tgz", + "integrity": "sha512-TCQihm7/uszA5z1Ux1vw+Nf3yHTgicus/+9HiUQk+kRSQawByxZNESeQoX9ujfVd3r4Sa+3fn0JQAguG4xvvbA==", + "dev": true, + "dependencies": { + "@commitlint/is-ignored": "^17.7.0", + "@commitlint/parse": "^17.7.0", + "@commitlint/rules": "^17.7.0", + "@commitlint/types": "^17.4.4" + }, + "engines": { + "node": ">=v14" + } + }, + "node_modules/@commitlint/load": { + "version": "17.7.1", + "resolved": "https://registry.npmjs.org/@commitlint/load/-/load-17.7.1.tgz", + "integrity": "sha512-S/QSOjE1ztdogYj61p6n3UbkUvweR17FQ0zDbNtoTLc+Hz7vvfS7ehoTMQ27hPSjVBpp7SzEcOQu081RLjKHJQ==", + "dev": true, + "dependencies": { + "@commitlint/config-validator": "^17.6.7", + "@commitlint/execute-rule": "^17.4.0", + "@commitlint/resolve-extends": "^17.6.7", + "@commitlint/types": "^17.4.4", + "@types/node": "20.4.7", + "chalk": "^4.1.0", + "cosmiconfig": "^8.0.0", + "cosmiconfig-typescript-loader": "^4.0.0", + "lodash.isplainobject": "^4.0.6", + "lodash.merge": "^4.6.2", + "lodash.uniq": "^4.5.0", + "resolve-from": "^5.0.0", + "ts-node": "^10.8.1", + "typescript": "^4.6.4 || ^5.0.0" + }, + "engines": { + "node": ">=v14" + } + }, + "node_modules/@commitlint/load/node_modules/@types/node": { + "version": "20.4.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.4.7.tgz", + "integrity": "sha512-bUBrPjEry2QUTsnuEjzjbS7voGWCc30W0qzgMf90GPeDGFRakvrz47ju+oqDAKCXLUCe39u57/ORMl/O/04/9g==", + "dev": true + }, + "node_modules/@commitlint/load/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@commitlint/load/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@commitlint/load/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@commitlint/load/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@commitlint/load/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@commitlint/load/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@commitlint/message": { + "version": "17.4.2", + "resolved": "https://registry.npmjs.org/@commitlint/message/-/message-17.4.2.tgz", + "integrity": "sha512-3XMNbzB+3bhKA1hSAWPCQA3lNxR4zaeQAQcHj0Hx5sVdO6ryXtgUBGGv+1ZCLMgAPRixuc6en+iNAzZ4NzAa8Q==", + "dev": true, + "engines": { + "node": ">=v14" + } + }, + "node_modules/@commitlint/parse": { + "version": "17.7.0", + "resolved": "https://registry.npmjs.org/@commitlint/parse/-/parse-17.7.0.tgz", + "integrity": "sha512-dIvFNUMCUHqq5Abv80mIEjLVfw8QNuA4DS7OWip4pcK/3h5wggmjVnlwGCDvDChkw2TjK1K6O+tAEV78oxjxag==", + "dev": true, + "dependencies": { + "@commitlint/types": "^17.4.4", + "conventional-changelog-angular": "^6.0.0", + "conventional-commits-parser": "^4.0.0" + }, + "engines": { + "node": ">=v14" + } + }, + "node_modules/@commitlint/read": { + "version": "17.5.1", + "resolved": "https://registry.npmjs.org/@commitlint/read/-/read-17.5.1.tgz", + "integrity": "sha512-7IhfvEvB//p9aYW09YVclHbdf1u7g7QhxeYW9ZHSO8Huzp8Rz7m05aCO1mFG7G8M+7yfFnXB5xOmG18brqQIBg==", + "dev": true, + "dependencies": { + "@commitlint/top-level": "^17.4.0", + "@commitlint/types": "^17.4.4", + "fs-extra": "^11.0.0", + "git-raw-commits": "^2.0.11", + "minimist": "^1.2.6" + }, + "engines": { + "node": ">=v14" + } + }, + "node_modules/@commitlint/resolve-extends": { + "version": "17.6.7", + "resolved": "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-17.6.7.tgz", + "integrity": "sha512-PfeoAwLHtbOaC9bGn/FADN156CqkFz6ZKiVDMjuC2N5N0740Ke56rKU7Wxdwya8R8xzLK9vZzHgNbuGhaOVKIg==", + "dev": true, + "dependencies": { + "@commitlint/config-validator": "^17.6.7", + "@commitlint/types": "^17.4.4", + "import-fresh": "^3.0.0", + "lodash.mergewith": "^4.6.2", + "resolve-from": "^5.0.0", + "resolve-global": "^1.0.0" + }, + "engines": { + "node": ">=v14" + } + }, + "node_modules/@commitlint/rules": { + "version": "17.7.0", + "resolved": "https://registry.npmjs.org/@commitlint/rules/-/rules-17.7.0.tgz", + "integrity": "sha512-J3qTh0+ilUE5folSaoK91ByOb8XeQjiGcdIdiB/8UT1/Rd1itKo0ju/eQVGyFzgTMYt8HrDJnGTmNWwcMR1rmA==", + "dev": true, + "dependencies": { + "@commitlint/ensure": "^17.6.7", + "@commitlint/message": "^17.4.2", + "@commitlint/to-lines": "^17.4.0", + "@commitlint/types": "^17.4.4", + "execa": "^5.0.0" + }, + "engines": { + "node": ">=v14" + } + }, + "node_modules/@commitlint/to-lines": { + "version": "17.4.0", + "resolved": "https://registry.npmjs.org/@commitlint/to-lines/-/to-lines-17.4.0.tgz", + "integrity": "sha512-LcIy/6ZZolsfwDUWfN1mJ+co09soSuNASfKEU5sCmgFCvX5iHwRYLiIuoqXzOVDYOy7E7IcHilr/KS0e5T+0Hg==", + "dev": true, + "engines": { + "node": ">=v14" + } + }, + "node_modules/@commitlint/top-level": { + "version": "17.4.0", + "resolved": "https://registry.npmjs.org/@commitlint/top-level/-/top-level-17.4.0.tgz", + "integrity": "sha512-/1loE/g+dTTQgHnjoCy0AexKAEFyHsR2zRB4NWrZ6lZSMIxAhBJnmCqwao7b4H8888PsfoTBCLBYIw8vGnej8g==", + "dev": true, + "dependencies": { + "find-up": "^5.0.0" + }, + "engines": { + "node": ">=v14" + } + }, + "node_modules/@commitlint/types": { + "version": "17.4.4", + "resolved": "https://registry.npmjs.org/@commitlint/types/-/types-17.4.4.tgz", + "integrity": "sha512-amRN8tRLYOsxRr6mTnGGGvB5EmW/4DDjLMgiwK3CCVEmN6Sr/6xePGEpWaspKkckILuUORCwe6VfDBw6uj4axQ==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0" + }, + "engines": { + "node": ">=v14" + } + }, + "node_modules/@commitlint/types/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@commitlint/types/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@commitlint/types/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@commitlint/types/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@commitlint/types/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@commitlint/types/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "0.3.9" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", + "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", + "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz", + "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", + "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", + "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", + "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", + "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", + "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", + "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", + "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", + "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", + "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", + "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", + "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", + "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", + "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", + "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", + "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", + "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", + "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", + "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", + "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.8.0.tgz", + "integrity": "sha512-JylOEEzDiOryeUnFbQz+oViCXS0KsvR1mvHkoMiu5+UiBvy+RYX7tzlIIIEstF/gVa2tj9AQXk3dgnxv6KxhFg==", + "dev": true, + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", + "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", + "dev": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "13.21.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", + "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/eslintrc/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/@eslint/eslintrc/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/js": { + "version": "8.48.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.48.0.tgz", + "integrity": "sha512-ZSjtmelB7IJfWD2Fvb7+Z+ChTIKWq6kjda95fLcQKNS5aheVHn4IkfgRQE3sIIzTcSLwLcLZUD9UBt+V7+h+Pw==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.11", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.11.tgz", + "integrity": "sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==", + "dev": true, + "dependencies": { + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "dev": true + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.6.4.tgz", + "integrity": "sha512-wNK6gC0Ha9QeEPSkeJedQuTQqxZYnDPuDcDhVuVatRvMkL4D0VTvFVZj+Yuh6caG2aOfzkUZ36KtCmLNtR02hw==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^29.6.3", + "jest-util": "^29.6.3", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/console/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/console/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/console/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/console/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@jest/console/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.6.4.tgz", + "integrity": "sha512-U/vq5ccNTSVgYH7mHnodHmCffGWHJnz/E1BEWlLuK5pM4FZmGfBn/nrJGLjUsSmyx3otCeqc1T31F4y08AMDLg==", + "dev": true, + "dependencies": { + "@jest/console": "^29.6.4", + "@jest/reporters": "^29.6.4", + "@jest/test-result": "^29.6.4", + "@jest/transform": "^29.6.4", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^29.6.3", + "jest-config": "^29.6.4", + "jest-haste-map": "^29.6.4", + "jest-message-util": "^29.6.3", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.6.4", + "jest-resolve-dependencies": "^29.6.4", + "jest-runner": "^29.6.4", + "jest-runtime": "^29.6.4", + "jest-snapshot": "^29.6.4", + "jest-util": "^29.6.3", + "jest-validate": "^29.6.3", + "jest-watcher": "^29.6.4", + "micromatch": "^4.0.4", + "pretty-format": "^29.6.3", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/core/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/core/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/core/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/core/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@jest/core/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/environment": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.6.4.tgz", + "integrity": "sha512-sQ0SULEjA1XUTHmkBRl7A1dyITM9yb1yb3ZNKPX3KlTd6IG7mWUe3e2yfExtC2Zz1Q+mMckOLHmL/qLiuQJrBQ==", + "dev": true, + "dependencies": { + "@jest/fake-timers": "^29.6.4", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.6.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/expect": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.6.4.tgz", + "integrity": "sha512-Warhsa7d23+3X5bLbrbYvaehcgX5TLYhI03JKoedTiI8uJU4IhqYBWF7OSSgUyz4IgLpUYPkK0AehA5/fRclAA==", + "dev": true, + "dependencies": { + "expect": "^29.6.4", + "jest-snapshot": "^29.6.4" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/expect-utils": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.6.4.tgz", + "integrity": "sha512-FEhkJhqtvBwgSpiTrocquJCdXPsyvNKcl/n7A3u7X4pVoF4bswm11c9d4AV+kfq2Gpv/mM8x7E7DsRvH+djkrg==", + "dev": true, + "dependencies": { + "jest-get-type": "^29.6.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/fake-timers": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.6.4.tgz", + "integrity": "sha512-6UkCwzoBK60edXIIWb0/KWkuj7R7Qq91vVInOe3De6DSpaEiqjKcJw4F7XUet24Wupahj9J6PlR09JqJ5ySDHw==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "@sinonjs/fake-timers": "^10.0.2", + "@types/node": "*", + "jest-message-util": "^29.6.3", + "jest-mock": "^29.6.3", + "jest-util": "^29.6.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/globals": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.6.4.tgz", + "integrity": "sha512-wVIn5bdtjlChhXAzVXavcY/3PEjf4VqM174BM3eGL5kMxLiZD5CLnbmkEyA1Dwh9q8XjP6E8RwjBsY/iCWrWsA==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.6.4", + "@jest/expect": "^29.6.4", + "@jest/types": "^29.6.3", + "jest-mock": "^29.6.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/reporters": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.6.4.tgz", + "integrity": "sha512-sxUjWxm7QdchdrD3NfWKrL8FBsortZeibSJv4XLjESOOjSUOkjQcb0ZHJwfhEGIvBvTluTzfG2yZWZhkrXJu8g==", + "dev": true, + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^29.6.4", + "@jest/test-result": "^29.6.4", + "@jest/transform": "^29.6.4", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^6.0.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-message-util": "^29.6.3", + "jest-util": "^29.6.3", + "jest-worker": "^29.6.4", + "slash": "^3.0.0", + "string-length": "^4.0.1", + "strip-ansi": "^6.0.0", + "v8-to-istanbul": "^9.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/reporters/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/reporters/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/reporters/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/reporters/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@jest/reporters/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/reporters/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/schemas": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", + "dev": true, + "dependencies": { + "@sinclair/typebox": "^0.27.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/source-map": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz", + "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.18", + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/test-result": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.6.4.tgz", + "integrity": "sha512-uQ1C0AUEN90/dsyEirgMLlouROgSY+Wc/JanVVk0OiUKa5UFh7sJpMEM3aoUBAz2BRNvUJ8j3d294WFuRxSyOQ==", + "dev": true, + "dependencies": { + "@jest/console": "^29.6.4", + "@jest/types": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/test-sequencer": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.6.4.tgz", + "integrity": "sha512-E84M6LbpcRq3fT4ckfKs9ryVanwkaIB0Ws9bw3/yP4seRLg/VaCZ/LgW0MCq5wwk4/iP/qnilD41aj2fsw2RMg==", + "dev": true, + "dependencies": { + "@jest/test-result": "^29.6.4", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.6.4", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/transform": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.6.4.tgz", + "integrity": "sha512-8thgRSiXUqtr/pPGY/OsyHuMjGyhVnWrFAwoxmIemlBuiMyU1WFs0tXoNxzcr4A4uErs/ABre76SGmrr5ab/AA==", + "dev": true, + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^2.0.0", + "fast-json-stable-stringify": "^2.1.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.6.4", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.6.3", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "write-file-atomic": "^4.0.2" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/transform/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/transform/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/transform/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/transform/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@jest/transform/node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "node_modules/@jest/transform/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/transform/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/types": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", + "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/types/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/types/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/types/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/types/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@jest/types/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/types/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", + "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", + "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.19", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz", + "integrity": "sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@lit-labs/ssr-dom-shim": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@lit-labs/ssr-dom-shim/-/ssr-dom-shim-1.1.1.tgz", + "integrity": "sha512-kXOeFbfCm4fFf2A3WwVEeQj55tMZa8c8/f9AKHMobQMkzNUfUj+antR3fRPaZJawsa1aZiP/Da3ndpZrwEe4rQ==" + }, + "node_modules/@lit/reactive-element": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/@lit/reactive-element/-/reactive-element-1.6.3.tgz", + "integrity": "sha512-QuTgnG52Poic7uM1AN5yJ09QMe0O28e10XzSvWDz02TJiiKee4stsiownEIadWm8nYzyDAyT+gKzUoZmiWQtsQ==", + "dependencies": { + "@lit-labs/ssr-dom-shim": "^1.0.0" + } + }, + "node_modules/@noble/ed25519": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@noble/ed25519/-/ed25519-2.0.0.tgz", + "integrity": "sha512-/extjhkwFupyopDrt80OMWKdLgP429qLZj+z6sYJz90rF2Iz0gjZh2ArMKPImUl13Kx+0EXI2hN9T/KJV0/Zng==", + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ] + }, + "node_modules/@noble/hashes": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.0.tgz", + "integrity": "sha512-ilHEACi9DwqJB0pw7kv+Apvh50jiiSyR/cQ3y4W7lOR5mhvn/50FLUfsnfJz0BDZtl/RR16kXvptiv6q1msYZg==", + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ] + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@octokit/auth-token": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-4.0.0.tgz", + "integrity": "sha512-tY/msAuJo6ARbK6SPIxZrPBms3xPbfwBrulZe0Wtr/DIY9lje2HeV1uoebShn6mx7SjCHif6EjMvoREj+gZ+SA==", + "dev": true, + "engines": { + "node": ">= 18" + } + }, + "node_modules/@octokit/core": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@octokit/core/-/core-5.0.0.tgz", + "integrity": "sha512-YbAtMWIrbZ9FCXbLwT9wWB8TyLjq9mxpKdgB3dUNxQcIVTf9hJ70gRPwAcqGZdY6WdJPZ0I7jLaaNDCiloGN2A==", + "dev": true, + "dependencies": { + "@octokit/auth-token": "^4.0.0", + "@octokit/graphql": "^7.0.0", + "@octokit/request": "^8.0.2", + "@octokit/request-error": "^5.0.0", + "@octokit/types": "^11.0.0", + "before-after-hook": "^2.2.0", + "universal-user-agent": "^6.0.0" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/@octokit/endpoint": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-9.0.0.tgz", + "integrity": "sha512-szrQhiqJ88gghWY2Htt8MqUDO6++E/EIXqJ2ZEp5ma3uGS46o7LZAzSLt49myB7rT+Hfw5Y6gO3LmOxGzHijAQ==", + "dev": true, + "dependencies": { + "@octokit/types": "^11.0.0", + "is-plain-object": "^5.0.0", + "universal-user-agent": "^6.0.0" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/@octokit/graphql": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-7.0.1.tgz", + "integrity": "sha512-T5S3oZ1JOE58gom6MIcrgwZXzTaxRnxBso58xhozxHpOqSTgDS6YNeEUvZ/kRvXgPrRz/KHnZhtb7jUMRi9E6w==", + "dev": true, + "dependencies": { + "@octokit/request": "^8.0.1", + "@octokit/types": "^11.0.0", + "universal-user-agent": "^6.0.0" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/@octokit/openapi-types": { + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-18.0.0.tgz", + "integrity": "sha512-V8GImKs3TeQRxRtXFpG2wl19V7444NIOTDF24AWuIbmNaNYOQMWRbjcGDXV5B+0n887fgDcuMNOmlul+k+oJtw==", + "dev": true + }, + "node_modules/@octokit/plugin-paginate-rest": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-8.0.0.tgz", + "integrity": "sha512-2xZ+baZWUg+qudVXnnvXz7qfrTmDeYPCzangBVq/1gXxii/OiS//4shJp9dnCCvj1x+JAm9ji1Egwm1BA47lPQ==", + "dev": true, + "dependencies": { + "@octokit/types": "^11.0.0" + }, + "engines": { + "node": ">= 18" + }, + "peerDependencies": { + "@octokit/core": ">=5" + } + }, + "node_modules/@octokit/plugin-retry": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@octokit/plugin-retry/-/plugin-retry-6.0.0.tgz", + "integrity": "sha512-a1/A4A+PB1QoAHQfLJxGHhLfSAT03bR1jJz3GgQJZvty2ozawFWs93MiBQXO7SL2YbO7CIq0Goj4qLOBj8JeMQ==", + "dev": true, + "dependencies": { + "@octokit/request-error": "^5.0.0", + "@octokit/types": "^11.0.0", + "bottleneck": "^2.15.3" + }, + "engines": { + "node": ">= 18" + }, + "peerDependencies": { + "@octokit/core": ">=5" + } + }, + "node_modules/@octokit/plugin-throttling": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@octokit/plugin-throttling/-/plugin-throttling-7.0.0.tgz", + "integrity": "sha512-KL2k/d0uANc8XqP5S64YcNFCudR3F5AaKO39XWdUtlJIjT9Ni79ekWJ6Kj5xvAw87udkOMEPcVf9xEge2+ahew==", + "dev": true, + "dependencies": { + "@octokit/types": "^11.0.0", + "bottleneck": "^2.15.3" + }, + "engines": { + "node": ">= 18" + }, + "peerDependencies": { + "@octokit/core": "^5.0.0" + } + }, + "node_modules/@octokit/request": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-8.1.1.tgz", + "integrity": "sha512-8N+tdUz4aCqQmXl8FpHYfKG9GelDFd7XGVzyN8rc6WxVlYcfpHECnuRkgquzz+WzvHTK62co5di8gSXnzASZPQ==", + "dev": true, + "dependencies": { + "@octokit/endpoint": "^9.0.0", + "@octokit/request-error": "^5.0.0", + "@octokit/types": "^11.1.0", + "is-plain-object": "^5.0.0", + "universal-user-agent": "^6.0.0" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/@octokit/request-error": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-5.0.0.tgz", + "integrity": "sha512-1ue0DH0Lif5iEqT52+Rf/hf0RmGO9NWFjrzmrkArpG9trFfDM/efx00BJHdLGuro4BR/gECxCU2Twf5OKrRFsQ==", + "dev": true, + "dependencies": { + "@octokit/types": "^11.0.0", + "deprecation": "^2.0.0", + "once": "^1.4.0" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/@octokit/types": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-11.1.0.tgz", + "integrity": "sha512-Fz0+7GyLm/bHt8fwEqgvRBWwIV1S6wRRyq+V6exRKLVWaKGsuy6H9QFYeBVDV7rK6fO3XwHgQOPxv+cLj2zpXQ==", + "dev": true, + "dependencies": { + "@octokit/openapi-types": "^18.0.0" + } + }, + "node_modules/@pnpm/config.env-replace": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@pnpm/config.env-replace/-/config.env-replace-1.1.0.tgz", + "integrity": "sha512-htyl8TWnKL7K/ESFa1oW2UB5lVDxuF5DpM7tBi6Hu2LNL3mWkIzNLG6N4zoCUP1lCKNxWy/3iu8mS8MvToGd6w==", + "dev": true, + "engines": { + "node": ">=12.22.0" + } + }, + "node_modules/@pnpm/network.ca-file": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@pnpm/network.ca-file/-/network.ca-file-1.0.2.tgz", + "integrity": "sha512-YcPQ8a0jwYU9bTdJDpXjMi7Brhkr1mXsXrUJvjqM2mQDgkRiz8jFaQGOdaLxgjtUfQgZhKy/O3cG/YwmgKaxLA==", + "dev": true, + "dependencies": { + "graceful-fs": "4.2.10" + }, + "engines": { + "node": ">=12.22.0" + } + }, + "node_modules/@pnpm/network.ca-file/node_modules/graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", + "dev": true + }, + "node_modules/@pnpm/npm-conf": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@pnpm/npm-conf/-/npm-conf-2.2.2.tgz", + "integrity": "sha512-UA91GwWPhFExt3IizW6bOeY/pQ0BkuNwKjk9iQW9KqxluGCrg4VenZ0/L+2Y0+ZOtme72EVvg6v0zo3AMQRCeA==", + "dev": true, + "dependencies": { + "@pnpm/config.env-replace": "^1.1.0", + "@pnpm/network.ca-file": "^1.0.1", + "config-chain": "^1.1.11" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@radixdlt/babylon-gateway-api-sdk": { + "version": "1.0.0-rc.3.2", + "resolved": "https://registry.npmjs.org/@radixdlt/babylon-gateway-api-sdk/-/babylon-gateway-api-sdk-1.0.0-rc.3.2.tgz", + "integrity": "sha512-7odQHQARzK1HIwpqjdH3ZHcYLpywHfZXdLRBw+1Lpx8cQ4X8nUeIwlEns3+g5XhX8+2dfOdQnumSsN/BcL41BA==" + }, + "node_modules/@radixdlt/connect-button": { + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/@radixdlt/connect-button/-/connect-button-0.13.4.tgz", + "integrity": "sha512-5jeiiFJLBnJzC3nimWY7sKzQgRgtHAb0rMRjxtBxdBusr/HjTIoedLmOHBv5Yc+kpJSKAdtBp/PovaVOcM06qQ==", + "dependencies": { + "lit": "^2.7.5" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@radixdlt/radix-dapp-toolkit": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/@radixdlt/radix-dapp-toolkit/-/radix-dapp-toolkit-0.6.1.tgz", + "integrity": "sha512-rVU71RYbF8ZkBMWtzN2Gr1PrcdSdAjxGUBeDBq/hB2aAo9hvOjURbvoQWTylEJznOQfINQM9IWVHNSfAUuCZ6g==", + "dependencies": { + "@radixdlt/babylon-gateway-api-sdk": "1.0.0-rc.3.2", + "@radixdlt/connect-button": "0.13.4", + "@radixdlt/wallet-sdk": "0.10.1-alpha.1", + "immer": "^10.0.2", + "lodash.isequal": "^4.5.0", + "neverthrow": "^6.0.0", + "rxjs": "^7.8.1", + "zod": "^3.21.4" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@radixdlt/radix-engine-toolkit": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@radixdlt/radix-engine-toolkit/-/radix-engine-toolkit-0.3.0.tgz", + "integrity": "sha512-bODSTuAICMW2MT2R6IcUvacIek8AHBfYh4bABFQliP+FXsjRk+3MNQbGACuEGLuU9jfWrandZUXADgKPs6Wniw==", + "dependencies": { + "@noble/ed25519": "2.0.0", + "@noble/hashes": "1.3.0", + "@types/secp256k1": "4.0.3", + "@types/secure-random": "1.1.0", + "blakejs": "1.2.1", + "change-case": "4.1.2", + "decimal.js": "10.4.3", + "reflect-metadata": "0.1.13", + "secp256k1": "5.0.0" + } + }, + "node_modules/@radixdlt/wallet-sdk": { + "version": "0.10.1-alpha.1", + "resolved": "https://registry.npmjs.org/@radixdlt/wallet-sdk/-/wallet-sdk-0.10.1-alpha.1.tgz", + "integrity": "sha512-kCmCLJ3Yi2VZhN7/B9nhnTi6JNuiy8+otQy3kh1JNb0pd9CV6o6YS/Vj85mVoGtePVog4UHmu6RKFbPR9TVrfg==", + "dependencies": { + "neverthrow": "^6.0.0", + "rxjs": "^7.8.1", + "tslog": "^4.8.2", + "zod": "^3.21.4" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@semantic-release/commit-analyzer": { + "version": "10.0.4", + "resolved": "https://registry.npmjs.org/@semantic-release/commit-analyzer/-/commit-analyzer-10.0.4.tgz", + "integrity": "sha512-pFGn99fn8w4/MHE0otb2A/l5kxgOuxaaauIh4u30ncoTJuqWj4hXTgEJ03REqjS+w1R2vPftSsO26WC61yOcpw==", + "dev": true, + "dependencies": { + "conventional-changelog-angular": "^6.0.0", + "conventional-commits-filter": "^3.0.0", + "conventional-commits-parser": "^5.0.0", + "debug": "^4.0.0", + "import-from": "^4.0.0", + "lodash-es": "^4.17.21", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "semantic-release": ">=20.1.0" + } + }, + "node_modules/@semantic-release/commit-analyzer/node_modules/conventional-commits-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-5.0.0.tgz", + "integrity": "sha512-ZPMl0ZJbw74iS9LuX9YIAiW8pfM5p3yh2o/NbXHbkFuZzY5jvdi5jFycEOkmBW5H5I7nA+D6f3UcsCLP2vvSEA==", + "dev": true, + "dependencies": { + "is-text-path": "^2.0.0", + "JSONStream": "^1.3.5", + "meow": "^12.0.1", + "split2": "^4.0.0" + }, + "bin": { + "conventional-commits-parser": "cli.mjs" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/@semantic-release/commit-analyzer/node_modules/is-text-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-2.0.0.tgz", + "integrity": "sha512-+oDTluR6WEjdXEJMnC2z6A4FRwFoYuvShVVEGsS7ewc0UTi2QtAKMDJuL4BDEVt+5T7MjFo12RP8ghOM75oKJw==", + "dev": true, + "dependencies": { + "text-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@semantic-release/commit-analyzer/node_modules/meow": { + "version": "12.1.1", + "resolved": "https://registry.npmjs.org/meow/-/meow-12.1.1.tgz", + "integrity": "sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==", + "dev": true, + "engines": { + "node": ">=16.10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@semantic-release/commit-analyzer/node_modules/split2": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", + "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==", + "dev": true, + "engines": { + "node": ">= 10.x" + } + }, + "node_modules/@semantic-release/commit-analyzer/node_modules/text-extensions": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-2.4.0.tgz", + "integrity": "sha512-te/NtwBwfiNRLf9Ijqx3T0nlqZiQ2XrrtBvu+cLL8ZRrGkO0NHTug8MYFKyoSrv/sHTaSKfilUkizV6XhxMJ3g==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@semantic-release/error": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@semantic-release/error/-/error-4.0.0.tgz", + "integrity": "sha512-mgdxrHTLOjOddRVYIYDo0fR3/v61GNN1YGkfbrjuIKg/uMgCd+Qzo3UAXJ+woLQQpos4pl5Esuw5A7AoNlzjUQ==", + "dev": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/@semantic-release/github": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/@semantic-release/github/-/github-9.0.4.tgz", + "integrity": "sha512-kQCGFAsBErvCR6hzNuzu63cj4erQN2krm9zQlg8vl4j5X0mL0d/Ras0wmL5Gkr1TuSS2lweME7M4J5zvtDDDSA==", + "dev": true, + "dependencies": { + "@octokit/core": "^5.0.0", + "@octokit/plugin-paginate-rest": "^8.0.0", + "@octokit/plugin-retry": "^6.0.0", + "@octokit/plugin-throttling": "^7.0.0", + "@semantic-release/error": "^4.0.0", + "aggregate-error": "^4.0.1", + "debug": "^4.3.4", + "dir-glob": "^3.0.1", + "globby": "^13.1.4", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.0", + "issue-parser": "^6.0.0", + "lodash-es": "^4.17.21", + "mime": "^3.0.0", + "p-filter": "^3.0.0", + "url-join": "^5.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "semantic-release": ">=20.1.0" + } + }, + "node_modules/@semantic-release/github/node_modules/agent-base": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", + "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "dev": true, + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@semantic-release/github/node_modules/globby": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", + "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", + "dev": true, + "dependencies": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.3.0", + "ignore": "^5.2.4", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@semantic-release/github/node_modules/http-proxy-agent": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz", + "integrity": "sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==", + "dev": true, + "dependencies": { + "agent-base": "^7.1.0", + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@semantic-release/github/node_modules/https-proxy-agent": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.1.tgz", + "integrity": "sha512-Eun8zV0kcYS1g19r78osiQLEFIRspRUDd9tIfBCTBPBeMieF/EsJNL8VI3xOIdYRDEkjQnqOYPsZ2DsWsVsFwQ==", + "dev": true, + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@semantic-release/github/node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@semantic-release/npm": { + "version": "10.0.5", + "resolved": "https://registry.npmjs.org/@semantic-release/npm/-/npm-10.0.5.tgz", + "integrity": "sha512-cJnQ2M5pxJRwZEkb0A/+U3TG4UNmjrrLwV2PxJKljn5OPT0yJB8GzGgWbbKACayvxrT06YdTa4Amtq/piJcOIA==", + "dev": true, + "dependencies": { + "@semantic-release/error": "^4.0.0", + "aggregate-error": "^4.0.1", + "execa": "^8.0.0", + "fs-extra": "^11.0.0", + "lodash-es": "^4.17.21", + "nerf-dart": "^1.0.0", + "normalize-url": "^8.0.0", + "npm": "^9.5.0", + "rc": "^1.2.8", + "read-pkg": "^8.0.0", + "registry-auth-token": "^5.0.0", + "semver": "^7.1.2", + "tempy": "^3.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "semantic-release": ">=20.1.0" + } + }, + "node_modules/@semantic-release/npm/node_modules/execa": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", + "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^8.0.1", + "human-signals": "^5.0.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^4.1.0", + "strip-final-newline": "^3.0.0" + }, + "engines": { + "node": ">=16.17" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/@semantic-release/npm/node_modules/get-stream": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", + "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", + "dev": true, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@semantic-release/npm/node_modules/hosted-git-info": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.0.tgz", + "integrity": "sha512-ICclEpTLhHj+zCuSb2/usoNXSVkxUSIopre+b1w8NDY9Dntp9LO4vLdHYI336TH8sAqwrRgnSfdkBG2/YpisHA==", + "dev": true, + "dependencies": { + "lru-cache": "^10.0.1" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@semantic-release/npm/node_modules/human-signals": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", + "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", + "dev": true, + "engines": { + "node": ">=16.17.0" + } + }, + "node_modules/@semantic-release/npm/node_modules/is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@semantic-release/npm/node_modules/json-parse-even-better-errors": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.0.tgz", + "integrity": "sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@semantic-release/npm/node_modules/lines-and-columns": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.3.tgz", + "integrity": "sha512-cNOjgCnLB+FnvWWtyRTzmB3POJ+cXxTA81LoW7u8JdmhfXzriropYwpjShnz1QLLWsQwY7nIxoDmcPTwphDK9w==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/@semantic-release/npm/node_modules/lru-cache": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", + "dev": true, + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/@semantic-release/npm/node_modules/mimic-fn": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@semantic-release/npm/node_modules/normalize-package-data": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.0.tgz", + "integrity": "sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==", + "dev": true, + "dependencies": { + "hosted-git-info": "^7.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@semantic-release/npm/node_modules/npm-run-path": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", + "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", + "dev": true, + "dependencies": { + "path-key": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@semantic-release/npm/node_modules/onetime": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "dev": true, + "dependencies": { + "mimic-fn": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@semantic-release/npm/node_modules/parse-json": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-7.1.0.tgz", + "integrity": "sha512-ihtdrgbqdONYD156Ap6qTcaGcGdkdAxodO1wLqQ/j7HP1u2sFYppINiq4jyC8F+Nm+4fVufylCV00QmkTHkSUg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.21.4", + "error-ex": "^1.3.2", + "json-parse-even-better-errors": "^3.0.0", + "lines-and-columns": "^2.0.3", + "type-fest": "^3.8.0" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@semantic-release/npm/node_modules/parse-json/node_modules/type-fest": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", + "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", + "dev": true, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@semantic-release/npm/node_modules/path-key": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@semantic-release/npm/node_modules/read-pkg": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-8.1.0.tgz", + "integrity": "sha512-PORM8AgzXeskHO/WEv312k9U03B8K9JSiWF/8N9sUuFjBa+9SF2u6K7VClzXwDXab51jCd8Nd36CNM+zR97ScQ==", + "dev": true, + "dependencies": { + "@types/normalize-package-data": "^2.4.1", + "normalize-package-data": "^6.0.0", + "parse-json": "^7.0.0", + "type-fest": "^4.2.0" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@semantic-release/npm/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@semantic-release/npm/node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@semantic-release/npm/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@semantic-release/npm/node_modules/strip-final-newline": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@semantic-release/npm/node_modules/type-fest": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.3.1.tgz", + "integrity": "sha512-pphNW/msgOUSkJbH58x8sqpq8uQj6b0ZKGxEsLKMUnGorRcDjrUaLS+39+/ub41JNTwrrMyJcUB8+YZs3mbwqw==", + "dev": true, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@semantic-release/npm/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/@semantic-release/release-notes-generator": { + "version": "11.0.7", + "resolved": "https://registry.npmjs.org/@semantic-release/release-notes-generator/-/release-notes-generator-11.0.7.tgz", + "integrity": "sha512-T09QB9ImmNx7Q6hY6YnnEbw/rEJ6a+22LBxfZq+pSAXg/OL/k0siwEm5cK4k1f9dE2Z2mPIjJKKohzUm0jbxcQ==", + "dev": true, + "dependencies": { + "conventional-changelog-angular": "^6.0.0", + "conventional-changelog-writer": "^6.0.0", + "conventional-commits-filter": "^4.0.0", + "conventional-commits-parser": "^5.0.0", + "debug": "^4.0.0", + "get-stream": "^7.0.0", + "import-from": "^4.0.0", + "into-stream": "^7.0.0", + "lodash-es": "^4.17.21", + "read-pkg-up": "^10.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "semantic-release": ">=20.1.0" + } + }, + "node_modules/@semantic-release/release-notes-generator/node_modules/conventional-commits-filter": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-4.0.0.tgz", + "integrity": "sha512-rnpnibcSOdFcdclpFwWa+pPlZJhXE7l+XK04zxhbWrhgpR96h33QLz8hITTXbcYICxVr3HZFtbtUAQ+4LdBo9A==", + "dev": true, + "engines": { + "node": ">=16" + } + }, + "node_modules/@semantic-release/release-notes-generator/node_modules/conventional-commits-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-5.0.0.tgz", + "integrity": "sha512-ZPMl0ZJbw74iS9LuX9YIAiW8pfM5p3yh2o/NbXHbkFuZzY5jvdi5jFycEOkmBW5H5I7nA+D6f3UcsCLP2vvSEA==", + "dev": true, + "dependencies": { + "is-text-path": "^2.0.0", + "JSONStream": "^1.3.5", + "meow": "^12.0.1", + "split2": "^4.0.0" + }, + "bin": { + "conventional-commits-parser": "cli.mjs" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/@semantic-release/release-notes-generator/node_modules/find-up": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", + "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", + "dev": true, + "dependencies": { + "locate-path": "^7.1.0", + "path-exists": "^5.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@semantic-release/release-notes-generator/node_modules/get-stream": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-7.0.1.tgz", + "integrity": "sha512-3M8C1EOFN6r8AMUhwUAACIoXZJEOufDU5+0gFFN5uNs6XYOralD2Pqkl7m046va6x77FwposWXbAhPPIOus7mQ==", + "dev": true, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@semantic-release/release-notes-generator/node_modules/hosted-git-info": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.0.tgz", + "integrity": "sha512-ICclEpTLhHj+zCuSb2/usoNXSVkxUSIopre+b1w8NDY9Dntp9LO4vLdHYI336TH8sAqwrRgnSfdkBG2/YpisHA==", + "dev": true, + "dependencies": { + "lru-cache": "^10.0.1" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@semantic-release/release-notes-generator/node_modules/is-text-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-2.0.0.tgz", + "integrity": "sha512-+oDTluR6WEjdXEJMnC2z6A4FRwFoYuvShVVEGsS7ewc0UTi2QtAKMDJuL4BDEVt+5T7MjFo12RP8ghOM75oKJw==", + "dev": true, + "dependencies": { + "text-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@semantic-release/release-notes-generator/node_modules/json-parse-even-better-errors": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.0.tgz", + "integrity": "sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@semantic-release/release-notes-generator/node_modules/lines-and-columns": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.3.tgz", + "integrity": "sha512-cNOjgCnLB+FnvWWtyRTzmB3POJ+cXxTA81LoW7u8JdmhfXzriropYwpjShnz1QLLWsQwY7nIxoDmcPTwphDK9w==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/@semantic-release/release-notes-generator/node_modules/locate-path": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", + "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", + "dev": true, + "dependencies": { + "p-locate": "^6.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@semantic-release/release-notes-generator/node_modules/lru-cache": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", + "dev": true, + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/@semantic-release/release-notes-generator/node_modules/meow": { + "version": "12.1.1", + "resolved": "https://registry.npmjs.org/meow/-/meow-12.1.1.tgz", + "integrity": "sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==", + "dev": true, + "engines": { + "node": ">=16.10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@semantic-release/release-notes-generator/node_modules/normalize-package-data": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.0.tgz", + "integrity": "sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==", + "dev": true, + "dependencies": { + "hosted-git-info": "^7.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@semantic-release/release-notes-generator/node_modules/p-limit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^1.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@semantic-release/release-notes-generator/node_modules/p-locate": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", + "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", + "dev": true, + "dependencies": { + "p-limit": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@semantic-release/release-notes-generator/node_modules/parse-json": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-7.1.0.tgz", + "integrity": "sha512-ihtdrgbqdONYD156Ap6qTcaGcGdkdAxodO1wLqQ/j7HP1u2sFYppINiq4jyC8F+Nm+4fVufylCV00QmkTHkSUg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.21.4", + "error-ex": "^1.3.2", + "json-parse-even-better-errors": "^3.0.0", + "lines-and-columns": "^2.0.3", + "type-fest": "^3.8.0" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@semantic-release/release-notes-generator/node_modules/parse-json/node_modules/type-fest": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", + "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", + "dev": true, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@semantic-release/release-notes-generator/node_modules/path-exists": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", + "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/@semantic-release/release-notes-generator/node_modules/read-pkg": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-8.1.0.tgz", + "integrity": "sha512-PORM8AgzXeskHO/WEv312k9U03B8K9JSiWF/8N9sUuFjBa+9SF2u6K7VClzXwDXab51jCd8Nd36CNM+zR97ScQ==", + "dev": true, + "dependencies": { + "@types/normalize-package-data": "^2.4.1", + "normalize-package-data": "^6.0.0", + "parse-json": "^7.0.0", + "type-fest": "^4.2.0" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@semantic-release/release-notes-generator/node_modules/read-pkg-up": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-10.1.0.tgz", + "integrity": "sha512-aNtBq4jR8NawpKJQldrQcSW9y/d+KWH4v24HWkHljOZ7H0av+YTGANBzRh9A5pw7v/bLVsLVPpOhJ7gHNVy8lA==", + "dev": true, + "dependencies": { + "find-up": "^6.3.0", + "read-pkg": "^8.1.0", + "type-fest": "^4.2.0" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@semantic-release/release-notes-generator/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@semantic-release/release-notes-generator/node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@semantic-release/release-notes-generator/node_modules/split2": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", + "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==", + "dev": true, + "engines": { + "node": ">= 10.x" + } + }, + "node_modules/@semantic-release/release-notes-generator/node_modules/text-extensions": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-2.4.0.tgz", + "integrity": "sha512-te/NtwBwfiNRLf9Ijqx3T0nlqZiQ2XrrtBvu+cLL8ZRrGkO0NHTug8MYFKyoSrv/sHTaSKfilUkizV6XhxMJ3g==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@semantic-release/release-notes-generator/node_modules/type-fest": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.3.1.tgz", + "integrity": "sha512-pphNW/msgOUSkJbH58x8sqpq8uQj6b0ZKGxEsLKMUnGorRcDjrUaLS+39+/ub41JNTwrrMyJcUB8+YZs3mbwqw==", + "dev": true, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@semantic-release/release-notes-generator/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/@semantic-release/release-notes-generator/node_modules/yocto-queue": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", + "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "dev": true, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "dev": true + }, + "node_modules/@sinonjs/commons": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.0.tgz", + "integrity": "sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA==", + "dev": true, + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", + "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^3.0.0" + } + }, + "node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tsconfig/node10": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", + "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", + "dev": true + }, + "node_modules/@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "dev": true + }, + "node_modules/@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "dev": true + }, + "node_modules/@tsconfig/node16": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", + "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", + "dev": true + }, + "node_modules/@types/babel__core": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.1.tgz", + "integrity": "sha512-aACu/U/omhdk15O4Nfb+fHgH/z3QsfQzpnvRZhYhThms83ZnAOZz7zZAWO7mn2yyNQaA4xTO8GLK3uqFU4bYYw==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.6.4", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", + "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", + "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.1.tgz", + "integrity": "sha512-MitHFXnhtgwsGZWtT68URpOvLN4EREih1u3QtQiN4VdAxWKRVvGCSvw/Qth0M0Qq3pJpnGOu5JaM/ydK7OGbqg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.20.7" + } + }, + "node_modules/@types/bn.js": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.1.tgz", + "integrity": "sha512-qNrYbZqMx0uJAfKnKclPh+dTwK33KfLHYqtyODwd5HnXOjnkhc4qgn3BrK6RWyGZm5+sIFE7Q7Vz6QQtJB7w7g==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/elliptic": { + "version": "6.4.14", + "resolved": "https://registry.npmjs.org/@types/elliptic/-/elliptic-6.4.14.tgz", + "integrity": "sha512-z4OBcDAU0GVwDTuwJzQCiL6188QvZMkvoERgcVjq0/mPM8jCfdwZ3x5zQEVoL9WCAru3aG5wl3Z5Ww5wBWn7ZQ==", + "dev": true, + "dependencies": { + "@types/bn.js": "*" + } + }, + "node_modules/@types/graceful-fs": { + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz", + "integrity": "sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", + "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==", + "dev": true + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", + "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/jest": { + "version": "29.5.4", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.4.tgz", + "integrity": "sha512-PhglGmhWeD46FYOVLt3X7TiWjzwuVGW9wG/4qocPevXMjCmrIc5b6db9WjeGE4QYVpUAWMDv3v0IiBwObY289A==", + "dev": true, + "dependencies": { + "expect": "^29.0.0", + "pretty-format": "^29.0.0" + } + }, + "node_modules/@types/jsdom": { + "version": "20.0.1", + "resolved": "https://registry.npmjs.org/@types/jsdom/-/jsdom-20.0.1.tgz", + "integrity": "sha512-d0r18sZPmMQr1eG35u12FZfhIXNrnsPU/g5wvRKCUf/tOGilKKwYMYGqh33BNR6ba+2gkHw1EUiHoN3mn7E5IQ==", + "dev": true, + "dependencies": { + "@types/node": "*", + "@types/tough-cookie": "*", + "parse5": "^7.0.0" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.12", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.12.tgz", + "integrity": "sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==", + "dev": true + }, + "node_modules/@types/minimist": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz", + "integrity": "sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==", + "dev": true + }, + "node_modules/@types/node": { + "version": "20.5.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.5.7.tgz", + "integrity": "sha512-dP7f3LdZIysZnmvP3ANJYTSwg+wLLl8p7RqniVlV7j+oXSXAbt9h0WIBFmJy5inWZoX9wZN6eXx+YXd9Rh3RBA==" + }, + "node_modules/@types/normalize-package-data": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", + "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==", + "dev": true + }, + "node_modules/@types/secp256k1": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@types/secp256k1/-/secp256k1-4.0.3.tgz", + "integrity": "sha512-Da66lEIFeIz9ltsdMZcpQvmrmmoqrfju8pm1BH8WbYjZSwUgCwXLb9C+9XYogwBITnbsSaMdVPb2ekf7TV+03w==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/secure-random": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@types/secure-random/-/secure-random-1.1.0.tgz", + "integrity": "sha512-FVkD9qNAeuc1m53VQfWhuUdn9IWjv6griflGfLcSoF3ZexyNv1ciPlZLyrucWYcdhNjKERgDb45IJwb8a/ZKDQ==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/semver": { + "version": "7.5.1", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.1.tgz", + "integrity": "sha512-cJRQXpObxfNKkFAZbJl2yjWtJCqELQIdShsogr1d2MilP8dKD9TE/nEKHkJgUNHdGKCQaf9HbIynuV2csLGVLg==", + "dev": true + }, + "node_modules/@types/stack-utils": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", + "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", + "dev": true + }, + "node_modules/@types/tough-cookie": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.2.tgz", + "integrity": "sha512-Q5vtl1W5ue16D+nIaW8JWebSSraJVlK+EthKn7e7UcD4KWsaSJ8BqGPXNaPghgtcn/fhvrN17Tv8ksUsQpiplw==", + "dev": true + }, + "node_modules/@types/trusted-types": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.3.tgz", + "integrity": "sha512-NfQ4gyz38SL8sDNrSixxU2Os1a5xcdFxipAFxYEuLUlvU2uDwS4NUpsImcf1//SlWItCVMMLiylsxbmNMToV/g==" + }, + "node_modules/@types/yargs": { + "version": "17.0.24", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz", + "integrity": "sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", + "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==", + "dev": true + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.5.0.tgz", + "integrity": "sha512-2pktILyjvMaScU6iK3925uvGU87E+N9rh372uGZgiMYwafaw9SXq86U04XPq3UH6tzRvNgBsub6x2DacHc33lw==", + "dev": true, + "dependencies": { + "@eslint-community/regexpp": "^4.5.1", + "@typescript-eslint/scope-manager": "6.5.0", + "@typescript-eslint/type-utils": "6.5.0", + "@typescript-eslint/utils": "6.5.0", + "@typescript-eslint/visitor-keys": "6.5.0", + "debug": "^4.3.4", + "graphemer": "^1.4.0", + "ignore": "^5.2.4", + "natural-compare": "^1.4.0", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/@typescript-eslint/parser": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.5.0.tgz", + "integrity": "sha512-LMAVtR5GN8nY0G0BadkG0XIe4AcNMeyEy3DyhKGAh9k4pLSMBO7rF29JvDBpZGCmp5Pgz5RLHP6eCpSYZJQDuQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "6.5.0", + "@typescript-eslint/types": "6.5.0", + "@typescript-eslint/typescript-estree": "6.5.0", + "@typescript-eslint/visitor-keys": "6.5.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.5.0.tgz", + "integrity": "sha512-A8hZ7OlxURricpycp5kdPTH3XnjG85UpJS6Fn4VzeoH4T388gQJ/PGP4ole5NfKt4WDVhmLaQ/dBLNDC4Xl/Kw==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "6.5.0", + "@typescript-eslint/visitor-keys": "6.5.0" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.5.0.tgz", + "integrity": "sha512-f7OcZOkRivtujIBQ4yrJNIuwyCQO1OjocVqntl9dgSIZAdKqicj3xFDqDOzHDlGCZX990LqhLQXWRnQvsapq8A==", + "dev": true, + "dependencies": { + "@typescript-eslint/typescript-estree": "6.5.0", + "@typescript-eslint/utils": "6.5.0", + "debug": "^4.3.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/types": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.5.0.tgz", + "integrity": "sha512-eqLLOEF5/lU8jW3Bw+8auf4lZSbbljHR2saKnYqON12G/WsJrGeeDHWuQePoEf9ro22+JkbPfWQwKEC5WwLQ3w==", + "dev": true, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.5.0.tgz", + "integrity": "sha512-q0rGwSe9e5Kk/XzliB9h2LBc9tmXX25G0833r7kffbl5437FPWb2tbpIV9wAATebC/018pGa9fwPDuvGN+LxWQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "6.5.0", + "@typescript-eslint/visitor-keys": "6.5.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/@typescript-eslint/utils": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.5.0.tgz", + "integrity": "sha512-9nqtjkNykFzeVtt9Pj6lyR9WEdd8npPhhIPM992FWVkZuS6tmxHfGVnlUcjpUP2hv8r4w35nT33mlxd+Be1ACQ==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "@types/json-schema": "^7.0.12", + "@types/semver": "^7.5.0", + "@typescript-eslint/scope-manager": "6.5.0", + "@typescript-eslint/types": "6.5.0", + "@typescript-eslint/typescript-estree": "6.5.0", + "semver": "^7.5.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.5.0.tgz", + "integrity": "sha512-yCB/2wkbv3hPsh02ZS8dFQnij9VVQXJMN/gbQsaaY+zxALkZnxa/wagvLEFsAWMPv7d7lxQmNsIzGU1w/T/WyA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "6.5.0", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "dev": true + }, + "node_modules/acorn": { + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", + "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-globals": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-7.0.1.tgz", + "integrity": "sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q==", + "dev": true, + "dependencies": { + "acorn": "^8.1.0", + "acorn-walk": "^8.0.2" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/aggregate-error": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-4.0.1.tgz", + "integrity": "sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w==", + "dev": true, + "dependencies": { + "clean-stack": "^4.0.0", + "indent-string": "^5.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/aggregate-error/node_modules/indent-string": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", + "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ansicolors": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/ansicolors/-/ansicolors-0.3.2.tgz", + "integrity": "sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg==", + "dev": true + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "dev": true + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/argv-formatter": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/argv-formatter/-/argv-formatter-1.0.0.tgz", + "integrity": "sha512-F2+Hkm9xFaRg+GkaNnbwXNDV5O6pnCFEmqyhvfC/Ic5LbgOWjJh3L+mN/s91rxVL3znE7DYVpW0GJFT+4YBgWw==", + "dev": true + }, + "node_modules/array-ify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz", + "integrity": "sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==", + "dev": true + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "dev": true + }, + "node_modules/babel-jest": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.6.4.tgz", + "integrity": "sha512-meLj23UlSLddj6PC+YTOFRgDAtjnZom8w/ACsrx0gtPtv5cJZk0A5Unk5bV4wixD7XaPCN1fQvpww8czkZURmw==", + "dev": true, + "dependencies": { + "@jest/transform": "^29.6.4", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^29.6.3", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.8.0" + } + }, + "node_modules/babel-jest/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/babel-jest/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/babel-jest/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/babel-jest/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/babel-jest/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-jest/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dev": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-jest-hoist": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", + "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", + "dev": true, + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.1.14", + "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.4.5", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.5.tgz", + "integrity": "sha512-19hwUH5FKl49JEsvyTcoHakh6BE0wgXLLptIyKZ3PijHc/Ci521wygORCUCCred+E/twuqRyAkE02BAWPmsHOg==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.22.6", + "@babel/helper-define-polyfill-provider": "^0.4.2", + "semver": "^6.3.1" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.3.tgz", + "integrity": "sha512-z41XaniZL26WLrvjy7soabMXrfPWARN25PZoriDEiLMxAp50AUW3t35BGQUMg5xK3UrpVTtagIDklxYa+MhiNA==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.4.2", + "core-js-compat": "^3.31.0" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.2.tgz", + "integrity": "sha512-tAlOptU0Xj34V1Y2PNTL4Y0FOJMDB6bZmoW39FeCQIhigGLkqu3Fj6uiXpxIf6Ij274ENdYx64y6Au+ZKlb1IA==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.4.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-transform-vite-meta-env": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-vite-meta-env/-/babel-plugin-transform-vite-meta-env-1.0.3.tgz", + "integrity": "sha512-eyfuDEXrMu667TQpmctHeTlJrZA6jXYHyEJFjcM0yEa60LS/LXlOg2PBbMb8DVS+V9CnTj/j9itdlDVMcY2zEg==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.13.9", + "@types/babel__core": "^7.1.12" + } + }, + "node_modules/babel-plugin-transform-vite-meta-glob": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-vite-meta-glob/-/babel-plugin-transform-vite-meta-glob-1.0.3.tgz", + "integrity": "sha512-JW3VnwUjJqpj0FM0vJFxrGdxSBcHOa0j5YMvvtXYPmFshroq53nbK9dqRETgjXlMrfIz0oU/6ki+u1GdVWdNHA==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.13.9", + "@types/babel__core": "^7.1.12", + "glob": "^7.1.6" + } + }, + "node_modules/babel-plugin-transform-vite-meta-hot": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-vite-meta-hot/-/babel-plugin-transform-vite-meta-hot-1.0.0.tgz", + "integrity": "sha512-qF7T46bDG5UPPOfy4MFgQJyd3mZvm1sGOR2gZ4lIHy6DEcxAVTIt39/adAn89il44CvwestshuEybKPMR+L/Tg==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.13.9", + "@types/babel__core": "^7.1.12" + } + }, + "node_modules/babel-preset-current-node-syntax": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", + "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", + "dev": true, + "dependencies": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.8.3", + "@babel/plugin-syntax-import-meta": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-top-level-await": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-preset-jest": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", + "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", + "dev": true, + "dependencies": { + "babel-plugin-jest-hoist": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-preset-vite": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/babel-preset-vite/-/babel-preset-vite-1.1.0.tgz", + "integrity": "sha512-5OnV5RPD+Byi1KnhQpgzz2e1Bc2PFJ9i6wy1VDMPmYu0NjaxcyJuWy9piBoefCL4tMn1nm3VtvInPNitCHJnbQ==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.13.9", + "@types/babel__core": "^7.1.12", + "babel-plugin-transform-vite-meta-env": "1.0.3", + "babel-plugin-transform-vite-meta-glob": "1.0.3", + "babel-plugin-transform-vite-meta-hot": "1.0.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/before-after-hook": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz", + "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==", + "dev": true + }, + "node_modules/blakejs": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/blakejs/-/blakejs-1.2.1.tgz", + "integrity": "sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==" + }, + "node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/bottleneck": { + "version": "2.19.5", + "resolved": "https://registry.npmjs.org/bottleneck/-/bottleneck-2.19.5.tgz", + "integrity": "sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw==", + "dev": true + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==" + }, + "node_modules/browserslist": { + "version": "4.21.10", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.10.tgz", + "integrity": "sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001517", + "electron-to-chromium": "^1.4.477", + "node-releases": "^2.0.13", + "update-browserslist-db": "^1.0.11" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/bs-logger": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", + "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", + "dev": true, + "dependencies": { + "fast-json-stable-stringify": "2.x" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "dev": true, + "dependencies": { + "node-int64": "^0.4.0" + } + }, + "node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camel-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", + "dependencies": { + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase-keys": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", + "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", + "dev": true, + "dependencies": { + "camelcase": "^5.3.1", + "map-obj": "^4.0.0", + "quick-lru": "^4.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001525", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001525.tgz", + "integrity": "sha512-/3z+wB4icFt3r0USMwxujAqRvaD/B7rvGTsKhbhSQErVrJvkZCLhgNLJxU8MevahQVH6hCU9FsHdNUFbiwmE7Q==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] + }, + "node_modules/capital-case": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/capital-case/-/capital-case-1.0.4.tgz", + "integrity": "sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3", + "upper-case-first": "^2.0.2" + } + }, + "node_modules/cardinal": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/cardinal/-/cardinal-2.1.1.tgz", + "integrity": "sha512-JSr5eOgoEymtYHBjNWyjrMqet9Am2miJhlfKNdqLp6zoeAh0KN5dRAcxlecj5mAJrmQomgiOBj35xHLrFjqBpw==", + "dev": true, + "dependencies": { + "ansicolors": "~0.3.2", + "redeyed": "~2.1.0" + }, + "bin": { + "cdl": "bin/cdl.js" + } + }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/change-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/change-case/-/change-case-4.1.2.tgz", + "integrity": "sha512-bSxY2ws9OtviILG1EiY5K7NNxkqg/JnRnFxLtKQ96JaviiIxi7djMrSd0ECT9AC+lttClmYwKw53BWpOMblo7A==", + "dependencies": { + "camel-case": "^4.1.2", + "capital-case": "^1.0.4", + "constant-case": "^3.0.4", + "dot-case": "^3.0.4", + "header-case": "^2.0.4", + "no-case": "^3.0.4", + "param-case": "^3.0.4", + "pascal-case": "^3.1.2", + "path-case": "^3.0.4", + "sentence-case": "^3.0.4", + "snake-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/ci-info": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz", + "integrity": "sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "engines": { + "node": ">=8" + } + }, + "node_modules/cjs-module-lexer": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz", + "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", + "dev": true + }, + "node_modules/clean-stack": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-4.2.0.tgz", + "integrity": "sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg==", + "dev": true, + "dependencies": { + "escape-string-regexp": "5.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clean-stack/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-table3": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.3.tgz", + "integrity": "sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0" + }, + "engines": { + "node": "10.* || >= 12.*" + }, + "optionalDependencies": { + "@colors/colors": "1.5.0" + } + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "dev": true, + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/collect-v8-coverage": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", + "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", + "dev": true + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/compare-func": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/compare-func/-/compare-func-2.0.0.tgz", + "integrity": "sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==", + "dev": true, + "dependencies": { + "array-ify": "^1.0.0", + "dot-prop": "^5.1.0" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/config-chain": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz", + "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==", + "dev": true, + "dependencies": { + "ini": "^1.3.4", + "proto-list": "~1.2.1" + } + }, + "node_modules/constant-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/constant-case/-/constant-case-3.0.4.tgz", + "integrity": "sha512-I2hSBi7Vvs7BEuJDr5dDHfzb/Ruj3FyvFyh7KLilAjNQw3Be+xgqUBA2W6scVEcL0hL1dwPRtIqEPVUCKkSsyQ==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3", + "upper-case": "^2.0.2" + } + }, + "node_modules/conventional-changelog-angular": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-6.0.0.tgz", + "integrity": "sha512-6qLgrBF4gueoC7AFVHu51nHL9pF9FRjXrH+ceVf7WmAfH3gs+gEYOkvxhjMPjZu57I4AGUGoNTY8V7Hrgf1uqg==", + "dev": true, + "dependencies": { + "compare-func": "^2.0.0" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/conventional-changelog-conventionalcommits": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-6.1.0.tgz", + "integrity": "sha512-3cS3GEtR78zTfMzk0AizXKKIdN4OvSh7ibNz6/DPbhWWQu7LqE/8+/GqSodV+sywUR2gpJAdP/1JFf4XtN7Zpw==", + "dev": true, + "dependencies": { + "compare-func": "^2.0.0" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/conventional-changelog-writer": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-6.0.1.tgz", + "integrity": "sha512-359t9aHorPw+U+nHzUXHS5ZnPBOizRxfQsWT5ZDHBfvfxQOAik+yfuhKXG66CN5LEWPpMNnIMHUTCKeYNprvHQ==", + "dev": true, + "dependencies": { + "conventional-commits-filter": "^3.0.0", + "dateformat": "^3.0.3", + "handlebars": "^4.7.7", + "json-stringify-safe": "^5.0.1", + "meow": "^8.1.2", + "semver": "^7.0.0", + "split": "^1.0.1" + }, + "bin": { + "conventional-changelog-writer": "cli.js" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/conventional-changelog-writer/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-writer/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-writer/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/conventional-commits-filter": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-3.0.0.tgz", + "integrity": "sha512-1ymej8b5LouPx9Ox0Dw/qAO2dVdfpRFq28e5Y0jJEU8ZrLdy0vOSkkIInwmxErFGhg6SALro60ZrwYFVTUDo4Q==", + "dev": true, + "dependencies": { + "lodash.ismatch": "^4.4.0", + "modify-values": "^1.0.1" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/conventional-commits-parser": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-4.0.0.tgz", + "integrity": "sha512-WRv5j1FsVM5FISJkoYMR6tPk07fkKT0UodruX4je86V4owk451yjXAKzKAPOs9l7y59E2viHUS9eQ+dfUA9NSg==", + "dev": true, + "dependencies": { + "is-text-path": "^1.0.1", + "JSONStream": "^1.3.5", + "meow": "^8.1.2", + "split2": "^3.2.2" + }, + "bin": { + "conventional-commits-parser": "cli.js" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true + }, + "node_modules/core-js-compat": { + "version": "3.32.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.32.1.tgz", + "integrity": "sha512-GSvKDv4wE0bPnQtjklV101juQ85g6H3rm5PDP20mqlS5j0kXF3pP97YvAu5hl+uFHqMictp3b2VxOHljWMAtuA==", + "dev": true, + "dependencies": { + "browserslist": "^4.21.10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "dev": true + }, + "node_modules/cosmiconfig": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.2.0.tgz", + "integrity": "sha512-3rTMnFJA1tCOPwRxtgF4wd7Ab2qvDbL8jX+3smjIbS4HlZBagTlpERbdN7iAbWlrfxE3M8c27kTwTawQ7st+OQ==", + "dev": true, + "dependencies": { + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "parse-json": "^5.0.0", + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + } + }, + "node_modules/cosmiconfig-typescript-loader": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-4.4.0.tgz", + "integrity": "sha512-BabizFdC3wBHhbI4kJh0VkQP9GkBfoHPydD0COMce1nJ1kJAB3F2TmJ/I7diULBKtmEWSwEbuN/KDtgnmUUVmw==", + "dev": true, + "engines": { + "node": ">=v14.21.3" + }, + "peerDependencies": { + "@types/node": "*", + "cosmiconfig": ">=7", + "ts-node": ">=10", + "typescript": ">=4" + } + }, + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "dev": true + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/crypto-random-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-4.0.0.tgz", + "integrity": "sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==", + "dev": true, + "dependencies": { + "type-fest": "^1.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/crypto-random-string/node_modules/type-fest": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cssom": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.5.0.tgz", + "integrity": "sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==", + "dev": true + }, + "node_modules/cssstyle": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "dev": true, + "dependencies": { + "cssom": "~0.3.6" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cssstyle/node_modules/cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "dev": true + }, + "node_modules/dargs": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/dargs/-/dargs-7.0.0.tgz", + "integrity": "sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/data-urls": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-3.0.2.tgz", + "integrity": "sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==", + "dev": true, + "dependencies": { + "abab": "^2.0.6", + "whatwg-mimetype": "^3.0.0", + "whatwg-url": "^11.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/dateformat": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", + "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decamelize-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", + "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", + "dev": true, + "dependencies": { + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/decamelize-keys/node_modules/map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decimal.js": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==" + }, + "node_modules/dedent": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.1.tgz", + "integrity": "sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg==", + "dev": true, + "peerDependencies": { + "babel-plugin-macros": "^3.1.0" + }, + "peerDependenciesMeta": { + "babel-plugin-macros": { + "optional": true + } + } + }, + "node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "dev": true, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/deprecation": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", + "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==", + "dev": true + }, + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "dev": true, + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/diff-sequences": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", + "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/domexception": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-4.0.0.tgz", + "integrity": "sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw==", + "dev": true, + "dependencies": { + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/dot-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "dev": true, + "dependencies": { + "is-obj": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/duplexer2": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", + "integrity": "sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==", + "dev": true, + "dependencies": { + "readable-stream": "^2.0.2" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.4.508", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.508.tgz", + "integrity": "sha512-FFa8QKjQK/A5QuFr2167myhMesGrhlOBD+3cYNxO9/S4XzHEXesyTD/1/xF644gC8buFPz3ca6G1LOQD0tZrrg==", + "dev": true + }, + "node_modules/elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "dependencies": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/emittery": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", + "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true, + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/env-ci": { + "version": "9.1.1", + "resolved": "https://registry.npmjs.org/env-ci/-/env-ci-9.1.1.tgz", + "integrity": "sha512-Im2yEWeF4b2RAMAaWvGioXk6m0UNaIjD8hj28j2ij5ldnIFrDQT0+pzDvpbRkcjurhXhf/AsBKv8P2rtmGi9Aw==", + "dev": true, + "dependencies": { + "execa": "^7.0.0", + "java-properties": "^1.0.2" + }, + "engines": { + "node": "^16.14 || >=18" + } + }, + "node_modules/env-ci/node_modules/execa": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz", + "integrity": "sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.1", + "human-signals": "^4.3.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^3.0.7", + "strip-final-newline": "^3.0.0" + }, + "engines": { + "node": "^14.18.0 || ^16.14.0 || >=18.0.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/env-ci/node_modules/human-signals": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz", + "integrity": "sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==", + "dev": true, + "engines": { + "node": ">=14.18.0" + } + }, + "node_modules/env-ci/node_modules/is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/env-ci/node_modules/mimic-fn": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/env-ci/node_modules/npm-run-path": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", + "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", + "dev": true, + "dependencies": { + "path-key": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/env-ci/node_modules/onetime": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "dev": true, + "dependencies": { + "mimic-fn": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/env-ci/node_modules/path-key": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/env-ci/node_modules/strip-final-newline": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/esbuild": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", + "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "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" + } + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/escodegen": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", + "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", + "dev": true, + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/escodegen/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/eslint": { + "version": "8.48.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.48.0.tgz", + "integrity": "sha512-sb6DLeIuRXxeM1YljSe1KEx9/YYeZFQWcV8Rq9HfigmdDEugjLEVEa1ozDjL6YDjBpQHPJxJzze+alxi4T3OLg==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "8.48.0", + "@humanwhocodes/config-array": "^0.11.10", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "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.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "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" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-config-alloy": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/eslint-config-alloy/-/eslint-config-alloy-5.1.2.tgz", + "integrity": "sha512-jppzCxNqlhvMYPgfUzvPq4f9fEu070+m3CRIjWdUx/GJLZ6dXHARzMIrIhFuIvzYI5Qo40ht1gunguLnRhIB7A==", + "dev": true, + "peerDependencies": { + "@babel/eslint-parser": "7.x", + "@babel/preset-react": "7.x", + "@typescript-eslint/eslint-plugin": ">=5.55.0", + "@typescript-eslint/parser": ">=5.0.0", + "eslint": ">=8.24.0", + "eslint-plugin-react": ">=7.31.8", + "eslint-plugin-vue": ">=9.5.1", + "typescript": "5.x", + "vue-eslint-parser": "9.x" + }, + "peerDependenciesMeta": { + "@babel/eslint-parser": { + "optional": true + }, + "@babel/preset-react": { + "optional": true + }, + "@typescript-eslint/eslint-plugin": { + "optional": true + }, + "@typescript-eslint/parser": { + "optional": true + }, + "eslint-plugin-react": { + "optional": true + }, + "eslint-plugin-vue": { + "optional": true + }, + "typescript": { + "optional": true + }, + "vue-eslint-parser": { + "optional": true + } + } + }, + "node_modules/eslint-plugin-unused-imports": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-unused-imports/-/eslint-plugin-unused-imports-3.0.0.tgz", + "integrity": "sha512-sduiswLJfZHeeBJ+MQaG+xYzSWdRXoSw61DpU13mzWumCkR0ufD0HmO4kdNokjrkluMHpj/7PJeN35pgbhW3kw==", + "dev": true, + "dependencies": { + "eslint-rule-composer": "^0.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "@typescript-eslint/eslint-plugin": "^6.0.0", + "eslint": "^8.0.0" + }, + "peerDependenciesMeta": { + "@typescript-eslint/eslint-plugin": { + "optional": true + } + } + }, + "node_modules/eslint-rule-composer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/eslint-rule-composer/-/eslint-rule-composer-0.3.0.tgz", + "integrity": "sha512-bt+Sh8CtDmn2OajxvNO+BX7Wn4CIWMpTRm3MaiKPCQcnnlm0CS2mhui6QaoeQugs+3Kj2ESKEEGJUdVafwhiCg==", + "dev": true, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/eslint/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/eslint/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/eslint/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/eslint/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/eslint/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/eslint/node_modules/globals": { + "version": "13.21.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", + "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/eslint/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dev": true, + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esquery/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/expect": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.6.4.tgz", + "integrity": "sha512-F2W2UyQ8XYyftHT57dtfg8Ue3X5qLgm2sSug0ivvLRH/VKNRL/pDxg/TH7zVzbQB0tu80clNFy6LU7OS/VSEKA==", + "dev": true, + "dependencies": { + "@jest/expect-utils": "^29.6.4", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.6.4", + "jest-message-util": "^29.6.3", + "jest-util": "^29.6.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "node_modules/fastq": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "dev": true, + "dependencies": { + "bser": "2.1.1" + } + }, + "node_modules/figures": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-5.0.0.tgz", + "integrity": "sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^5.0.0", + "is-unicode-supported": "^1.2.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/figures/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/find-versions": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-5.1.0.tgz", + "integrity": "sha512-+iwzCJ7C5v5KgcBuueqVoNiHVoQpwiUK5XFLjf0affFTep+Wcw93tPvmb8tqujDNmzhBDPddnWV/qgWSXgq+Hg==", + "dev": true, + "dependencies": { + "semver-regex": "^4.0.5" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.1.0.tgz", + "integrity": "sha512-OHx4Qwrrt0E4jEIcI5/Xb+f+QmJYNj2rrK8wiIdQOIrB9WrrJL8cjZvXdXuBTkkEwEqLycb5BeZDV1o2i9bTew==", + "dev": true, + "dependencies": { + "flatted": "^3.2.7", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", + "dev": true + }, + "node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "dev": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/from2": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", + "integrity": "sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.0" + } + }, + "node_modules/fs-extra": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.1.tgz", + "integrity": "sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/git-log-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/git-log-parser/-/git-log-parser-1.2.0.tgz", + "integrity": "sha512-rnCVNfkTL8tdNryFuaY0fYiBWEBcgF748O6ZI61rslBvr2o7U65c2/6npCRqH40vuAhtgtDiqLTJjBVdrejCzA==", + "dev": true, + "dependencies": { + "argv-formatter": "~1.0.0", + "spawn-error-forwarder": "~1.0.0", + "split2": "~1.0.0", + "stream-combiner2": "~1.1.1", + "through2": "~2.0.0", + "traverse": "~0.6.6" + } + }, + "node_modules/git-log-parser/node_modules/split2": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/split2/-/split2-1.0.0.tgz", + "integrity": "sha512-NKywug4u4pX/AZBB1FCPzZ6/7O+Xhz1qMVbzTvvKvikjO99oPN87SkK08mEY9P63/5lWjK+wgOOgApnTg5r6qg==", + "dev": true, + "dependencies": { + "through2": "~2.0.0" + } + }, + "node_modules/git-log-parser/node_modules/through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dev": true, + "dependencies": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "node_modules/git-raw-commits": { + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-2.0.11.tgz", + "integrity": "sha512-VnctFhw+xfj8Va1xtfEqCUD2XDrbAPSJx+hSrE5K7fGdjZruW7XV+QOrN7LF/RJyvspRiD2I0asWsxFp0ya26A==", + "dev": true, + "dependencies": { + "dargs": "^7.0.0", + "lodash": "^4.17.15", + "meow": "^8.0.0", + "split2": "^3.0.0", + "through2": "^4.0.0" + }, + "bin": { + "git-raw-commits": "cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/global-dirs": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", + "integrity": "sha512-NknMLn7F2J7aflwFOlGdNIuCDpN3VGoSoB+aap3KABFWbHVn1TCgFC+np23J8W2BiZbjfEw3BFBycSMv1AFblg==", + "dev": true, + "dependencies": { + "ini": "^1.3.4" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globrex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/globrex/-/globrex-0.1.2.tgz", + "integrity": "sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==", + "dev": true + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true + }, + "node_modules/handlebars": { + "version": "4.7.8", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.8.tgz", + "integrity": "sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==", + "dev": true, + "dependencies": { + "minimist": "^1.2.5", + "neo-async": "^2.6.2", + "source-map": "^0.6.1", + "wordwrap": "^1.0.0" + }, + "bin": { + "handlebars": "bin/handlebars" + }, + "engines": { + "node": ">=0.4.7" + }, + "optionalDependencies": { + "uglify-js": "^3.1.4" + } + }, + "node_modules/hard-rejection": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", + "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dependencies": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "node_modules/header-case": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/header-case/-/header-case-2.0.4.tgz", + "integrity": "sha512-H/vuk5TEEVZwrR0lp2zed9OCo1uAILMlx0JEMgC26rzyJJ3N1v6XkwHHXJQdR2doSjcGPM6OKPYoJgf0plJ11Q==", + "dependencies": { + "capital-case": "^1.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", + "dependencies": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/hook-std": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hook-std/-/hook-std-3.0.0.tgz", + "integrity": "sha512-jHRQzjSDzMtFy34AGj1DN+vq54WVuhSvKgrHf0OMiFQTwDD4L/qqofVEWjLOBMTn5+lCD3fPg32W9yOfnEJTTw==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/hosted-git-info/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/hosted-git-info/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/html-encoding-sniffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz", + "integrity": "sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA==", + "dev": true, + "dependencies": { + "whatwg-encoding": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dev": true, + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/husky": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/husky/-/husky-8.0.3.tgz", + "integrity": "sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==", + "dev": true, + "bin": { + "husky": "lib/bin.js" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/typicode" + } + }, + "node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ignore": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/immer": { + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/immer/-/immer-10.0.2.tgz", + "integrity": "sha512-Rx3CqeqQ19sxUtYV9CU911Vhy8/721wRFnJv3REVGWUmoAcIwzifTsdmJte/MV+0/XpM35LZdQMBGkRIoLPwQA==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/immer" + } + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-fresh/node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/import-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/import-from/-/import-from-4.0.0.tgz", + "integrity": "sha512-P9J71vT5nLlDeV8FHs5nNxaLbrpfAV5cF5srvbZfpwpcJoM/xZR3hiv+q+SAnuSmuGbXMWud063iIMx/V/EWZQ==", + "dev": true, + "engines": { + "node": ">=12.2" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-local": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "dev": true, + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true + }, + "node_modules/into-stream": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/into-stream/-/into-stream-7.0.0.tgz", + "integrity": "sha512-2dYz766i9HprMBasCMvHMuazJ7u4WzhJwo5kb3iPSiW/iRYV6uPari3zHoqZlnuaR7V1bEiNMxikhp37rdBXbw==", + "dev": true, + "dependencies": { + "from2": "^2.3.0", + "p-is-promise": "^3.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true + }, + "node_modules/is-core-module": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz", + "integrity": "sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==", + "dev": true, + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-potential-custom-element-name": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", + "dev": true + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-text-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz", + "integrity": "sha512-xFuJpne9oFz5qDaodwmmG08e3CawH/2ZV8Qqza1Ko7Sk8POWbkRdwIoAWVhqvq0XeUzANEhKo2n0IXUGBm7A/w==", + "dev": true, + "dependencies": { + "text-extensions": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-unicode-supported": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz", + "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/isomorphic-fetch": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-3.0.0.tgz", + "integrity": "sha512-qvUtwJ3j6qwsF3jLxkZ72qCgjMysPzDfeV240JHiGZsANBYd+EEuu35v7dfrJ9Up0Ak07D7GGSkGhCHTqg/5wA==", + "dev": true, + "dependencies": { + "node-fetch": "^2.6.1", + "whatwg-fetch": "^3.4.1" + } + }, + "node_modules/issue-parser": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/issue-parser/-/issue-parser-6.0.0.tgz", + "integrity": "sha512-zKa/Dxq2lGsBIXQ7CUZWTHfvxPC2ej0KfO7fIPqLlHB9J2hJ7rGhZ5rilhuufylr4RXYPzJUeFjKxz305OsNlA==", + "dev": true, + "dependencies": { + "lodash.capitalize": "^4.2.1", + "lodash.escaperegexp": "^4.1.2", + "lodash.isplainobject": "^4.0.6", + "lodash.isstring": "^4.0.1", + "lodash.uniqby": "^4.7.0" + }, + "engines": { + "node": ">=10.13" + } + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", + "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.0.tgz", + "integrity": "sha512-x58orMzEVfzPUKqlbLd1hXCnySCxKdDKa6Rjg97CwuLLRI4g3FHTdnExu1OqffVFay6zeMW+T6/DowFLndWnIw==", + "dev": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^7.5.4" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz", + "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==", + "dev": true, + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/java-properties": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/java-properties/-/java-properties-1.0.2.tgz", + "integrity": "sha512-qjdpeo2yKlYTH7nFdK0vbZWuTCesk4o63v5iVOlhMQPfuIZQfW/HI35SjfhA+4qpg36rnFSvUK5b1m+ckIblQQ==", + "dev": true, + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/jest": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/jest/-/jest-29.6.4.tgz", + "integrity": "sha512-tEFhVQFF/bzoYV1YuGyzLPZ6vlPrdfvDmmAxudA1dLEuiztqg2Rkx20vkKY32xiDROcD2KXlgZ7Cu8RPeEHRKw==", + "dev": true, + "dependencies": { + "@jest/core": "^29.6.4", + "@jest/types": "^29.6.3", + "import-local": "^3.0.2", + "jest-cli": "^29.6.4" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-changed-files": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.6.3.tgz", + "integrity": "sha512-G5wDnElqLa4/c66ma5PG9eRjE342lIbF6SUnTJi26C3J28Fv2TVY2rOyKB9YGbSA5ogwevgmxc4j4aVjrEK6Yg==", + "dev": true, + "dependencies": { + "execa": "^5.0.0", + "jest-util": "^29.6.3", + "p-limit": "^3.1.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-circus": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.6.4.tgz", + "integrity": "sha512-YXNrRyntVUgDfZbjXWBMPslX1mQ8MrSG0oM/Y06j9EYubODIyHWP8hMUbjbZ19M3M+zamqEur7O80HODwACoJw==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.6.4", + "@jest/expect": "^29.6.4", + "@jest/test-result": "^29.6.4", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^1.0.0", + "is-generator-fn": "^2.0.0", + "jest-each": "^29.6.3", + "jest-matcher-utils": "^29.6.4", + "jest-message-util": "^29.6.3", + "jest-runtime": "^29.6.4", + "jest-snapshot": "^29.6.4", + "jest-util": "^29.6.3", + "p-limit": "^3.1.0", + "pretty-format": "^29.6.3", + "pure-rand": "^6.0.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-circus/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-circus/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-circus/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-circus/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-circus/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-cli": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.6.4.tgz", + "integrity": "sha512-+uMCQ7oizMmh8ZwRfZzKIEszFY9ksjjEQnTEMTaL7fYiL3Kw4XhqT9bYh+A4DQKUb67hZn2KbtEnDuHvcgK4pQ==", + "dev": true, + "dependencies": { + "@jest/core": "^29.6.4", + "@jest/test-result": "^29.6.4", + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "import-local": "^3.0.2", + "jest-config": "^29.6.4", + "jest-util": "^29.6.3", + "jest-validate": "^29.6.3", + "prompts": "^2.0.1", + "yargs": "^17.3.1" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-cli/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-cli/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-cli/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-cli/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-cli/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-cli/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.6.4.tgz", + "integrity": "sha512-JWohr3i9m2cVpBumQFv2akMEnFEPVOh+9L2xIBJhJ0zOaci2ZXuKJj0tgMKQCBZAKA09H049IR4HVS/43Qb19A==", + "dev": true, + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/test-sequencer": "^29.6.4", + "@jest/types": "^29.6.3", + "babel-jest": "^29.6.4", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-circus": "^29.6.4", + "jest-environment-node": "^29.6.4", + "jest-get-type": "^29.6.3", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.6.4", + "jest-runner": "^29.6.4", + "jest-util": "^29.6.3", + "jest-validate": "^29.6.3", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^29.6.3", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@types/node": "*", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/jest-config/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-config/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-config/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-config/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-config/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-diff": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.6.4.tgz", + "integrity": "sha512-9F48UxR9e4XOEZvoUXEHSWY4qC4zERJaOfrbBg9JpbJOO43R1vN76REt/aMGZoY6GD5g84nnJiBIVlscegefpw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^29.6.3", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.6.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-diff/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-diff/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-diff/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-diff/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-diff/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-diff/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-docblock": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.6.3.tgz", + "integrity": "sha512-2+H+GOTQBEm2+qFSQ7Ma+BvyV+waiIFxmZF5LdpBsAEjWX8QYjSCa4FrkIYtbfXUJJJnFCYrOtt6TZ+IAiTjBQ==", + "dev": true, + "dependencies": { + "detect-newline": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-each": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.6.3.tgz", + "integrity": "sha512-KoXfJ42k8cqbkfshW7sSHcdfnv5agDdHCPA87ZBdmHP+zJstTJc0ttQaJ/x7zK6noAL76hOuTIJ6ZkQRS5dcyg==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "jest-util": "^29.6.3", + "pretty-format": "^29.6.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-each/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-each/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-each/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-each/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-each/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-each/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-jsdom": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-29.6.4.tgz", + "integrity": "sha512-K6wfgUJ16DoMs02JYFid9lOsqfpoVtyJxpRlnTxUHzvZWBnnh2VNGRB9EC1Cro96TQdq5TtSjb3qUjNaJP9IyA==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.6.4", + "@jest/fake-timers": "^29.6.4", + "@jest/types": "^29.6.3", + "@types/jsdom": "^20.0.0", + "@types/node": "*", + "jest-mock": "^29.6.3", + "jest-util": "^29.6.3", + "jsdom": "^20.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/jest-environment-node": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.6.4.tgz", + "integrity": "sha512-i7SbpH2dEIFGNmxGCpSc2w9cA4qVD+wfvg2ZnfQ7XVrKL0NA5uDVBIiGH8SR4F0dKEv/0qI5r+aDomDf04DpEQ==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.6.4", + "@jest/fake-timers": "^29.6.4", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.6.3", + "jest-util": "^29.6.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-get-type": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", + "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-haste-map": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.6.4.tgz", + "integrity": "sha512-12Ad+VNTDHxKf7k+M65sviyynRoZYuL1/GTuhEVb8RYsNSNln71nANRb/faSyWvx0j+gHcivChXHIoMJrGYjog==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "@types/graceful-fs": "^4.1.3", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.6.3", + "jest-worker": "^29.6.4", + "micromatch": "^4.0.4", + "walker": "^1.0.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" + } + }, + "node_modules/jest-leak-detector": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.6.3.tgz", + "integrity": "sha512-0kfbESIHXYdhAdpLsW7xdwmYhLf1BRu4AA118/OxFm0Ho1b2RcTmO4oF6aAMaxpxdxnJ3zve2rgwzNBD4Zbm7Q==", + "dev": true, + "dependencies": { + "jest-get-type": "^29.6.3", + "pretty-format": "^29.6.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-matcher-utils": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.6.4.tgz", + "integrity": "sha512-KSzwyzGvK4HcfnserYqJHYi7sZVqdREJ9DMPAKVbS98JsIAvumihaNUbjrWw0St7p9IY7A9UskCW5MYlGmBQFQ==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^29.6.4", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.6.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-matcher-utils/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-matcher-utils/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-matcher-utils/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-matcher-utils/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.6.3.tgz", + "integrity": "sha512-FtzaEEHzjDpQp51HX4UMkPZjy46ati4T5pEMyM6Ik48ztu4T9LQplZ6OsimHx7EuM9dfEh5HJa6D3trEftu3dA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.6.3", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.6.3", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-message-util/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-message-util/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-message-util/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-message-util/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-message-util/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-mock": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.6.3.tgz", + "integrity": "sha512-Z7Gs/mOyTSR4yPsaZ72a/MtuK6RnC3JYqWONe48oLaoEcYwEDxqvbXz85G4SJrm2Z5Ar9zp6MiHF4AlFlRM4Pg==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-util": "^29.6.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "dev": true, + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } + }, + "node_modules/jest-regex-util": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", + "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.6.4.tgz", + "integrity": "sha512-fPRq+0vcxsuGlG0O3gyoqGTAxasagOxEuyoxHeyxaZbc9QNek0AmJWSkhjlMG+mTsj+8knc/mWb3fXlRNVih7Q==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.6.4", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^29.6.3", + "jest-validate": "^29.6.3", + "resolve": "^1.20.0", + "resolve.exports": "^2.0.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve-dependencies": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.6.4.tgz", + "integrity": "sha512-7+6eAmr1ZBF3vOAJVsfLj1QdqeXG+WYhidfLHBRZqGN24MFRIiKG20ItpLw2qRAsW/D2ZUUmCNf6irUr/v6KHA==", + "dev": true, + "dependencies": { + "jest-regex-util": "^29.6.3", + "jest-snapshot": "^29.6.4" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-resolve/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-resolve/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-resolve/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-resolve/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-resolve/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.6.4.tgz", + "integrity": "sha512-SDaLrMmtVlQYDuG0iSPYLycG8P9jLI+fRm8AF/xPKhYDB2g6xDWjXBrR5M8gEWsK6KVFlebpZ4QsrxdyIX1Jaw==", + "dev": true, + "dependencies": { + "@jest/console": "^29.6.4", + "@jest/environment": "^29.6.4", + "@jest/test-result": "^29.6.4", + "@jest/transform": "^29.6.4", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^29.6.3", + "jest-environment-node": "^29.6.4", + "jest-haste-map": "^29.6.4", + "jest-leak-detector": "^29.6.3", + "jest-message-util": "^29.6.3", + "jest-resolve": "^29.6.4", + "jest-runtime": "^29.6.4", + "jest-util": "^29.6.3", + "jest-watcher": "^29.6.4", + "jest-worker": "^29.6.4", + "p-limit": "^3.1.0", + "source-map-support": "0.5.13" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runner/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-runner/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-runner/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-runner/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-runner/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.6.4.tgz", + "integrity": "sha512-s/QxMBLvmwLdchKEjcLfwzP7h+jsHvNEtxGP5P+Fl1FMaJX2jMiIqe4rJw4tFprzCwuSvVUo9bn0uj4gNRXsbA==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.6.4", + "@jest/fake-timers": "^29.6.4", + "@jest/globals": "^29.6.4", + "@jest/source-map": "^29.6.3", + "@jest/test-result": "^29.6.4", + "@jest/transform": "^29.6.4", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.6.4", + "jest-message-util": "^29.6.3", + "jest-mock": "^29.6.3", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.6.4", + "jest-snapshot": "^29.6.4", + "jest-util": "^29.6.3", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runtime/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-runtime/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-runtime/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-runtime/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-runtime/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.6.4.tgz", + "integrity": "sha512-VC1N8ED7+4uboUKGIDsbvNAZb6LakgIPgAF4RSpF13dN6YaMokfRqO+BaqK4zIh6X3JffgwbzuGqDEjHm/MrvA==", + "dev": true, + "dependencies": { + "@babel/core": "^7.11.6", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-jsx": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/types": "^7.3.3", + "@jest/expect-utils": "^29.6.4", + "@jest/transform": "^29.6.4", + "@jest/types": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^29.6.4", + "graceful-fs": "^4.2.9", + "jest-diff": "^29.6.4", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.6.4", + "jest-message-util": "^29.6.3", + "jest-util": "^29.6.3", + "natural-compare": "^1.4.0", + "pretty-format": "^29.6.3", + "semver": "^7.5.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-snapshot/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-snapshot/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-snapshot/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-snapshot/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-snapshot/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/jest-util": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.6.3.tgz", + "integrity": "sha512-QUjna/xSy4B32fzcKTSz1w7YYzgiHrjjJjevdRf61HYk998R5vVMMNmrHESYZVDS5DSWs+1srPLPKxXPkeSDOA==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-util/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-util/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-util/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-util/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-util/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-util/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-validate": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.6.3.tgz", + "integrity": "sha512-e7KWZcAIX+2W1o3cHfnqpGajdCs1jSM3DkXjGeLSNmCazv1EeI1ggTeK5wdZhF+7N+g44JI2Od3veojoaumlfg==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "leven": "^3.1.0", + "pretty-format": "^29.6.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-validate/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-validate/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-validate/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-validate/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-validate/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watcher": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.6.4.tgz", + "integrity": "sha512-oqUWvx6+On04ShsT00Ir9T4/FvBeEh2M9PTubgITPxDa739p4hoQweWPRGyYeaojgT0xTpZKF0Y/rSY1UgMxvQ==", + "dev": true, + "dependencies": { + "@jest/test-result": "^29.6.4", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "jest-util": "^29.6.3", + "string-length": "^4.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-watcher/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-watcher/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-watcher/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-watcher/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-watcher/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watcher/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-worker": { + "version": "29.6.4", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.6.4.tgz", + "integrity": "sha512-6dpvFV4WjcWbDVGgHTWo/aupl8/LbBx2NSKfiwqf79xC/yeJjKHT1+StcKy/2KTmW16hE68ccKVOtXf+WZGz7Q==", + "dev": true, + "dependencies": { + "@types/node": "*", + "jest-util": "^29.6.3", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-worker/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsdom": { + "version": "20.0.3", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-20.0.3.tgz", + "integrity": "sha512-SYhBvTh89tTfCD/CRdSOm13mOBa42iTaTyfyEWBdKcGdPxPtLFBXuHR8XHb33YNYaP+lLbmSvBTsnoesCNJEsQ==", + "dev": true, + "dependencies": { + "abab": "^2.0.6", + "acorn": "^8.8.1", + "acorn-globals": "^7.0.0", + "cssom": "^0.5.0", + "cssstyle": "^2.3.0", + "data-urls": "^3.0.2", + "decimal.js": "^10.4.2", + "domexception": "^4.0.0", + "escodegen": "^2.0.0", + "form-data": "^4.0.0", + "html-encoding-sniffer": "^3.0.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.1", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.2", + "parse5": "^7.1.1", + "saxes": "^6.0.0", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.1.2", + "w3c-xmlserializer": "^4.0.0", + "webidl-conversions": "^7.0.0", + "whatwg-encoding": "^2.0.0", + "whatwg-mimetype": "^3.0.0", + "whatwg-url": "^11.0.0", + "ws": "^8.11.0", + "xml-name-validator": "^4.0.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true + }, + "node_modules/json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "dev": true + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "dev": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", + "dev": true, + "engines": [ + "node >= 0.2.0" + ] + }, + "node_modules/JSONStream": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", + "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", + "dev": true, + "dependencies": { + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" + }, + "bin": { + "JSONStream": "bin.js" + }, + "engines": { + "node": "*" + } + }, + "node_modules/keyv": { + "version": "4.5.3", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.3.tgz", + "integrity": "sha512-QCiSav9WaX1PgETJ+SpNnx2PRRapJ/oRSXM4VO5OGYGSjrxbKPVFVhB3l2OCbLCk329N8qyAtsJjSjvVBWzEug==", + "dev": true, + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, + "node_modules/lit": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/lit/-/lit-2.8.0.tgz", + "integrity": "sha512-4Sc3OFX9QHOJaHbmTMk28SYgVxLN3ePDjg7hofEft2zWlehFL3LiAuapWc4U/kYwMYJSh2hTCPZ6/LIC7ii0MA==", + "dependencies": { + "@lit/reactive-element": "^1.6.0", + "lit-element": "^3.3.0", + "lit-html": "^2.8.0" + } + }, + "node_modules/lit-element": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/lit-element/-/lit-element-3.3.3.tgz", + "integrity": "sha512-XbeRxmTHubXENkV4h8RIPyr8lXc+Ff28rkcQzw3G6up2xg5E8Zu1IgOWIwBLEQsu3cOVFqdYwiVi0hv0SlpqUA==", + "dependencies": { + "@lit-labs/ssr-dom-shim": "^1.1.0", + "@lit/reactive-element": "^1.3.0", + "lit-html": "^2.8.0" + } + }, + "node_modules/lit-html": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/lit-html/-/lit-html-2.8.0.tgz", + "integrity": "sha512-o9t+MQM3P4y7M7yNzqAyjp7z+mQGa4NS4CxiyLqFPyFWyc4O+nodLrkrxSaCTrla6M5YOLaT3RpbbqjszB5g3Q==", + "dependencies": { + "@types/trusted-types": "^2.0.2" + } + }, + "node_modules/load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/load-json-file/node_modules/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", + "dev": true, + "dependencies": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/load-json-file/node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/lodash-es": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", + "dev": true + }, + "node_modules/lodash.camelcase": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", + "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==", + "dev": true + }, + "node_modules/lodash.capitalize": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/lodash.capitalize/-/lodash.capitalize-4.2.1.tgz", + "integrity": "sha512-kZzYOKspf8XVX5AvmQF94gQW0lejFVgb80G85bU4ZWzoJ6C03PQg3coYAUpSTpQWelrZELd3XWgHzw4Ck5kaIw==", + "dev": true + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "dev": true + }, + "node_modules/lodash.escaperegexp": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.escaperegexp/-/lodash.escaperegexp-4.1.2.tgz", + "integrity": "sha512-TM9YBvyC84ZxE3rgfefxUWiQKLilstD6k7PTGt6wfbtXF8ixIJLOL3VYyV/z+ZiPLsVxAsKAFVwWlWeb2Y8Yyw==", + "dev": true + }, + "node_modules/lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==" + }, + "node_modules/lodash.isfunction": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/lodash.isfunction/-/lodash.isfunction-3.0.9.tgz", + "integrity": "sha512-AirXNj15uRIMMPihnkInB4i3NHeb4iBtNg9WRWuK2o31S+ePwwNmDPaTL3o7dTJ+VXNZim7rFs4rxN4YU1oUJw==", + "dev": true + }, + "node_modules/lodash.ismatch": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz", + "integrity": "sha512-fPMfXjGQEV9Xsq/8MTSgUf255gawYRbjwMyDbcvDhXgV7enSZA0hynz6vMPnpAb5iONEzBHBPsT+0zes5Z301g==", + "dev": true + }, + "node_modules/lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==", + "dev": true + }, + "node_modules/lodash.isstring": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", + "integrity": "sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==", + "dev": true + }, + "node_modules/lodash.kebabcase": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz", + "integrity": "sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g==", + "dev": true + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", + "dev": true + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "node_modules/lodash.mergewith": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.mergewith/-/lodash.mergewith-4.6.2.tgz", + "integrity": "sha512-GK3g5RPZWTRSeLSpgP8Xhra+pnjBC56q9FZYe1d5RN3TJ35dbkGy3YqBSMbyCrlbi+CM9Z3Jk5yTL7RCsqboyQ==", + "dev": true + }, + "node_modules/lodash.snakecase": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.snakecase/-/lodash.snakecase-4.1.1.tgz", + "integrity": "sha512-QZ1d4xoBHYUeuouhEq3lk3Uq7ldgyFXGBhg04+oRLnIz8o9T65Eh+8YdroUwn846zchkA9yDsDl5CVVaV2nqYw==", + "dev": true + }, + "node_modules/lodash.startcase": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.startcase/-/lodash.startcase-4.4.0.tgz", + "integrity": "sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==", + "dev": true + }, + "node_modules/lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==", + "dev": true + }, + "node_modules/lodash.uniqby": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/lodash.uniqby/-/lodash.uniqby-4.7.0.tgz", + "integrity": "sha512-e/zcLx6CSbmaEgFHCA7BnoQKyCtKMxnuWrJygbwPs/AIn+IMKl66L8/s+wBUn5LRw2pZx3bUHibiV1b6aTWIww==", + "dev": true + }, + "node_modules/lodash.upperfirst": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/lodash.upperfirst/-/lodash.upperfirst-4.3.1.tgz", + "integrity": "sha512-sReKOYJIJf74dhJONhU4e0/shzi1trVbSWDOhKYE5XV2O+H7Sb2Dihwuc7xWxVl+DgFPyTqIN3zMfT9cq5iWDg==", + "dev": true + }, + "node_modules/lower-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-dir/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true + }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dev": true, + "dependencies": { + "tmpl": "1.0.5" + } + }, + "node_modules/map-obj": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", + "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/marked": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/marked/-/marked-5.1.2.tgz", + "integrity": "sha512-ahRPGXJpjMjwSOlBoTMZAK7ATXkli5qCPxZ21TG44rx1KEo44bii4ekgTDQPNRQ4Kh7JMb9Ub1PVk1NxRSsorg==", + "dev": true, + "bin": { + "marked": "bin/marked.js" + }, + "engines": { + "node": ">= 16" + } + }, + "node_modules/marked-terminal": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/marked-terminal/-/marked-terminal-5.2.0.tgz", + "integrity": "sha512-Piv6yNwAQXGFjZSaiNljyNFw7jKDdGrw70FSbtxEyldLsyeuV5ZHm/1wW++kWbrOF1VPnUgYOhB2oLL0ZpnekA==", + "dev": true, + "dependencies": { + "ansi-escapes": "^6.2.0", + "cardinal": "^2.1.1", + "chalk": "^5.2.0", + "cli-table3": "^0.6.3", + "node-emoji": "^1.11.0", + "supports-hyperlinks": "^2.3.0" + }, + "engines": { + "node": ">=14.13.1 || >=16.0.0" + }, + "peerDependencies": { + "marked": "^1.0.0 || ^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0" + } + }, + "node_modules/marked-terminal/node_modules/ansi-escapes": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-6.2.0.tgz", + "integrity": "sha512-kzRaCqXnpzWs+3z5ABPQiVke+iq0KXkHo8xiWV4RPTi5Yli0l97BEQuhXV1s7+aSU/fu1kUuxgS4MsQ0fRuygw==", + "dev": true, + "dependencies": { + "type-fest": "^3.0.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/marked-terminal/node_modules/chalk": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", + "dev": true, + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/marked-terminal/node_modules/type-fest": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", + "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", + "dev": true, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow": { + "version": "8.1.2", + "resolved": "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz", + "integrity": "sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==", + "dev": true, + "dependencies": { + "@types/minimist": "^1.2.0", + "camelcase-keys": "^6.2.2", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "4.1.0", + "normalize-package-data": "^3.0.0", + "read-pkg-up": "^7.0.1", + "redent": "^3.0.0", + "trim-newlines": "^3.0.0", + "type-fest": "^0.18.0", + "yargs-parser": "^20.2.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/node_modules/type-fest": { + "version": "0.18.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", + "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz", + "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", + "dev": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, + "node_modules/minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==" + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minimist-options": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", + "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", + "dev": true, + "dependencies": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0", + "kind-of": "^6.0.3" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/modify-values": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz", + "integrity": "sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/nanoid": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", + "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true + }, + "node_modules/nerf-dart": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/nerf-dart/-/nerf-dart-1.0.0.tgz", + "integrity": "sha512-EZSPZB70jiVsivaBLYDCyntd5eH8NTSMOn3rB+HxwdmKThGELLdYv8qVIMWvZEFy9w8ZZpW9h9OB32l1rGtj7g==", + "dev": true + }, + "node_modules/neverthrow": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/neverthrow/-/neverthrow-6.0.0.tgz", + "integrity": "sha512-kPZKRs4VkdloCGQXPoP84q4sT/1Z+lYM61AXyV8wWa2hnuo5KpPBF2S3crSFnMrOgUISmEBP8Vo/ngGZX60NhA==" + }, + "node_modules/no-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", + "dependencies": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + } + }, + "node_modules/node-addon-api": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz", + "integrity": "sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==" + }, + "node_modules/node-emoji": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-1.11.0.tgz", + "integrity": "sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==", + "dev": true, + "dependencies": { + "lodash": "^4.17.21" + } + }, + "node_modules/node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "dev": true, + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/node-fetch/node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "dev": true + }, + "node_modules/node-fetch/node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "dev": true + }, + "node_modules/node-fetch/node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dev": true, + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "node_modules/node-gyp-build": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.6.1.tgz", + "integrity": "sha512-24vnklJmyRS8ViBNI8KbtK/r/DmXQMRiOMXTNz2nrTnAYUwjmEEbnnpB/+kt+yWRv73bPsSPRFddrcIbAxSiMQ==", + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" + } + }, + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true + }, + "node_modules/node-releases": { + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", + "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", + "dev": true + }, + "node_modules/normalize-package-data": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "dev": true, + "dependencies": { + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/normalize-package-data/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/normalize-package-data/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/normalize-package-data/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-url": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-8.0.0.tgz", + "integrity": "sha512-uVFpKhj5MheNBJRTiMZ9pE/7hD1QTeEvugSJW/OmLzAp78PB5O6adfMNTvmfKhXBkvCzC+rqifWcVYpGFwTjnw==", + "dev": true, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/npm": { + "version": "9.8.1", + "resolved": "https://registry.npmjs.org/npm/-/npm-9.8.1.tgz", + "integrity": "sha512-AfDvThQzsIXhYgk9zhbk5R+lh811lKkLAeQMMhSypf1BM7zUafeIIBzMzespeuVEJ0+LvY36oRQYf7IKLzU3rw==", + "bundleDependencies": [ + "@isaacs/string-locale-compare", + "@npmcli/arborist", + "@npmcli/config", + "@npmcli/fs", + "@npmcli/map-workspaces", + "@npmcli/package-json", + "@npmcli/promise-spawn", + "@npmcli/run-script", + "abbrev", + "archy", + "cacache", + "chalk", + "ci-info", + "cli-columns", + "cli-table3", + "columnify", + "fastest-levenshtein", + "fs-minipass", + "glob", + "graceful-fs", + "hosted-git-info", + "ini", + "init-package-json", + "is-cidr", + "json-parse-even-better-errors", + "libnpmaccess", + "libnpmdiff", + "libnpmexec", + "libnpmfund", + "libnpmhook", + "libnpmorg", + "libnpmpack", + "libnpmpublish", + "libnpmsearch", + "libnpmteam", + "libnpmversion", + "make-fetch-happen", + "minimatch", + "minipass", + "minipass-pipeline", + "ms", + "node-gyp", + "nopt", + "npm-audit-report", + "npm-install-checks", + "npm-package-arg", + "npm-pick-manifest", + "npm-profile", + "npm-registry-fetch", + "npm-user-validate", + "npmlog", + "p-map", + "pacote", + "parse-conflict-json", + "proc-log", + "qrcode-terminal", + "read", + "semver", + "sigstore", + "ssri", + "supports-color", + "tar", + "text-table", + "tiny-relative-date", + "treeverse", + "validate-npm-package-name", + "which", + "write-file-atomic" + ], + "dev": true, + "dependencies": { + "@isaacs/string-locale-compare": "^1.1.0", + "@npmcli/arborist": "^6.3.0", + "@npmcli/config": "^6.2.1", + "@npmcli/fs": "^3.1.0", + "@npmcli/map-workspaces": "^3.0.4", + "@npmcli/package-json": "^4.0.1", + "@npmcli/promise-spawn": "^6.0.2", + "@npmcli/run-script": "^6.0.2", + "abbrev": "^2.0.0", + "archy": "~1.0.0", + "cacache": "^17.1.3", + "chalk": "^5.3.0", + "ci-info": "^3.8.0", + "cli-columns": "^4.0.0", + "cli-table3": "^0.6.3", + "columnify": "^1.6.0", + "fastest-levenshtein": "^1.0.16", + "fs-minipass": "^3.0.2", + "glob": "^10.2.7", + "graceful-fs": "^4.2.11", + "hosted-git-info": "^6.1.1", + "ini": "^4.1.1", + "init-package-json": "^5.0.0", + "is-cidr": "^4.0.2", + "json-parse-even-better-errors": "^3.0.0", + "libnpmaccess": "^7.0.2", + "libnpmdiff": "^5.0.19", + "libnpmexec": "^6.0.3", + "libnpmfund": "^4.0.19", + "libnpmhook": "^9.0.3", + "libnpmorg": "^5.0.4", + "libnpmpack": "^5.0.19", + "libnpmpublish": "^7.5.0", + "libnpmsearch": "^6.0.2", + "libnpmteam": "^5.0.3", + "libnpmversion": "^4.0.2", + "make-fetch-happen": "^11.1.1", + "minimatch": "^9.0.3", + "minipass": "^5.0.0", + "minipass-pipeline": "^1.2.4", + "ms": "^2.1.2", + "node-gyp": "^9.4.0", + "nopt": "^7.2.0", + "npm-audit-report": "^5.0.0", + "npm-install-checks": "^6.1.1", + "npm-package-arg": "^10.1.0", + "npm-pick-manifest": "^8.0.1", + "npm-profile": "^7.0.1", + "npm-registry-fetch": "^14.0.5", + "npm-user-validate": "^2.0.0", + "npmlog": "^7.0.1", + "p-map": "^4.0.0", + "pacote": "^15.2.0", + "parse-conflict-json": "^3.0.1", + "proc-log": "^3.0.0", + "qrcode-terminal": "^0.12.0", + "read": "^2.1.0", + "semver": "^7.5.4", + "sigstore": "^1.7.0", + "ssri": "^10.0.4", + "supports-color": "^9.4.0", + "tar": "^6.1.15", + "text-table": "~0.2.0", + "tiny-relative-date": "^1.3.0", + "treeverse": "^3.0.0", + "validate-npm-package-name": "^5.0.0", + "which": "^3.0.1", + "write-file-atomic": "^5.0.1" + }, + "bin": { + "npm": "bin/npm-cli.js", + "npx": "bin/npx-cli.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/@colors/colors": { + "version": "1.5.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/npm/node_modules/@isaacs/cliui": { + "version": "8.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/npm/node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/npm/node_modules/@isaacs/cliui/node_modules/emoji-regex": { + "version": "9.2.2", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/npm/node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/npm/node_modules/@isaacs/string-locale-compare": { + "version": "1.1.0", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/@npmcli/arborist": { + "version": "6.3.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "@isaacs/string-locale-compare": "^1.1.0", + "@npmcli/fs": "^3.1.0", + "@npmcli/installed-package-contents": "^2.0.2", + "@npmcli/map-workspaces": "^3.0.2", + "@npmcli/metavuln-calculator": "^5.0.0", + "@npmcli/name-from-folder": "^2.0.0", + "@npmcli/node-gyp": "^3.0.0", + "@npmcli/package-json": "^4.0.0", + "@npmcli/query": "^3.0.0", + "@npmcli/run-script": "^6.0.0", + "bin-links": "^4.0.1", + "cacache": "^17.0.4", + "common-ancestor-path": "^1.0.1", + "hosted-git-info": "^6.1.1", + "json-parse-even-better-errors": "^3.0.0", + "json-stringify-nice": "^1.1.4", + "minimatch": "^9.0.0", + "nopt": "^7.0.0", + "npm-install-checks": "^6.0.0", + "npm-package-arg": "^10.1.0", + "npm-pick-manifest": "^8.0.1", + "npm-registry-fetch": "^14.0.3", + "npmlog": "^7.0.1", + "pacote": "^15.0.8", + "parse-conflict-json": "^3.0.0", + "proc-log": "^3.0.0", + "promise-all-reject-late": "^1.0.0", + "promise-call-limit": "^1.0.2", + "read-package-json-fast": "^3.0.2", + "semver": "^7.3.7", + "ssri": "^10.0.1", + "treeverse": "^3.0.0", + "walk-up-path": "^3.0.1" + }, + "bin": { + "arborist": "bin/index.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/@npmcli/config": { + "version": "6.2.1", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "@npmcli/map-workspaces": "^3.0.2", + "ci-info": "^3.8.0", + "ini": "^4.1.0", + "nopt": "^7.0.0", + "proc-log": "^3.0.0", + "read-package-json-fast": "^3.0.2", + "semver": "^7.3.5", + "walk-up-path": "^3.0.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/@npmcli/disparity-colors": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "ansi-styles": "^4.3.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/@npmcli/fs": { + "version": "3.1.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/@npmcli/git": { + "version": "4.1.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "@npmcli/promise-spawn": "^6.0.0", + "lru-cache": "^7.4.4", + "npm-pick-manifest": "^8.0.0", + "proc-log": "^3.0.0", + "promise-inflight": "^1.0.1", + "promise-retry": "^2.0.1", + "semver": "^7.3.5", + "which": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/@npmcli/installed-package-contents": { + "version": "2.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "npm-bundled": "^3.0.0", + "npm-normalize-package-bin": "^3.0.0" + }, + "bin": { + "installed-package-contents": "lib/index.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/@npmcli/map-workspaces": { + "version": "3.0.4", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "@npmcli/name-from-folder": "^2.0.0", + "glob": "^10.2.2", + "minimatch": "^9.0.0", + "read-package-json-fast": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/@npmcli/metavuln-calculator": { + "version": "5.0.1", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "cacache": "^17.0.0", + "json-parse-even-better-errors": "^3.0.0", + "pacote": "^15.0.0", + "semver": "^7.3.5" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/@npmcli/name-from-folder": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/@npmcli/node-gyp": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/@npmcli/package-json": { + "version": "4.0.1", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "@npmcli/git": "^4.1.0", + "glob": "^10.2.2", + "hosted-git-info": "^6.1.1", + "json-parse-even-better-errors": "^3.0.0", + "normalize-package-data": "^5.0.0", + "proc-log": "^3.0.0", + "semver": "^7.5.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/@npmcli/promise-spawn": { + "version": "6.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "which": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/@npmcli/query": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/@npmcli/run-script": { + "version": "6.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "@npmcli/node-gyp": "^3.0.0", + "@npmcli/promise-spawn": "^6.0.0", + "node-gyp": "^9.0.0", + "read-package-json-fast": "^3.0.0", + "which": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/npm/node_modules/@sigstore/protobuf-specs": { + "version": "0.1.0", + "dev": true, + "inBundle": true, + "license": "Apache-2.0", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/@sigstore/tuf": { + "version": "1.0.2", + "dev": true, + "inBundle": true, + "license": "Apache-2.0", + "dependencies": { + "@sigstore/protobuf-specs": "^0.1.0", + "tuf-js": "^1.1.7" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/@tootallnate/once": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">= 10" + } + }, + "node_modules/npm/node_modules/@tufjs/canonical-json": { + "version": "1.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/@tufjs/models": { + "version": "1.0.4", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@tufjs/canonical-json": "1.0.0", + "minimatch": "^9.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/abbrev": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/abort-controller": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "event-target-shim": "^5.0.0" + }, + "engines": { + "node": ">=6.5" + } + }, + "node_modules/npm/node_modules/agent-base": { + "version": "6.0.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/npm/node_modules/agentkeepalive": { + "version": "4.3.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "debug": "^4.1.0", + "depd": "^2.0.0", + "humanize-ms": "^1.2.1" + }, + "engines": { + "node": ">= 8.0.0" + } + }, + "node_modules/npm/node_modules/aggregate-error": { + "version": "3.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/ansi-regex": { + "version": "5.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/npm/node_modules/aproba": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/archy": { + "version": "1.0.0", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/are-we-there-yet": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^4.1.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/balanced-match": { + "version": "1.0.2", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/base64-js": { + "version": "1.5.1", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/bin-links": { + "version": "4.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "cmd-shim": "^6.0.0", + "npm-normalize-package-bin": "^3.0.0", + "read-cmd-shim": "^4.0.0", + "write-file-atomic": "^5.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/binary-extensions": { + "version": "2.2.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/brace-expansion": { + "version": "2.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/npm/node_modules/buffer": { + "version": "6.0.3", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "inBundle": true, + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/npm/node_modules/builtins": { + "version": "5.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "semver": "^7.0.0" + } + }, + "node_modules/npm/node_modules/cacache": { + "version": "17.1.3", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "@npmcli/fs": "^3.1.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^7.7.1", + "minipass": "^5.0.0", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^4.0.0", + "ssri": "^10.0.0", + "tar": "^6.1.11", + "unique-filename": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/chalk": { + "version": "5.3.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/npm/node_modules/chownr": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/ci-info": { + "version": "3.8.0", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/cidr-regex": { + "version": "3.1.1", + "dev": true, + "inBundle": true, + "license": "BSD-2-Clause", + "dependencies": { + "ip-regex": "^4.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/clean-stack": { + "version": "2.2.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/npm/node_modules/cli-columns": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/npm/node_modules/cli-table3": { + "version": "0.6.3", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "string-width": "^4.2.0" + }, + "engines": { + "node": "10.* || >= 12.*" + }, + "optionalDependencies": { + "@colors/colors": "1.5.0" + } + }, + "node_modules/npm/node_modules/clone": { + "version": "1.0.4", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/npm/node_modules/cmd-shim": { + "version": "6.0.1", + "dev": true, + "inBundle": true, + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/npm/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/color-support": { + "version": "1.1.3", + "dev": true, + "inBundle": true, + "license": "ISC", + "bin": { + "color-support": "bin.js" + } + }, + "node_modules/npm/node_modules/columnify": { + "version": "1.6.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "strip-ansi": "^6.0.1", + "wcwidth": "^1.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/npm/node_modules/common-ancestor-path": { + "version": "1.0.1", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/concat-map": { + "version": "0.0.1", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/console-control-strings": { + "version": "1.1.0", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/cross-spawn": { + "version": "7.0.3", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/npm/node_modules/cross-spawn/node_modules/which": { + "version": "2.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/npm/node_modules/cssesc": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm/node_modules/debug": { + "version": "4.3.4", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/npm/node_modules/debug/node_modules/ms": { + "version": "2.1.2", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/defaults": { + "version": "1.0.4", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "clone": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/npm/node_modules/delegates": { + "version": "1.0.0", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/depd": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/npm/node_modules/diff": { + "version": "5.1.0", + "dev": true, + "inBundle": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/npm/node_modules/eastasianwidth": { + "version": "0.2.0", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/emoji-regex": { + "version": "8.0.0", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/encoding": { + "version": "0.1.13", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/npm/node_modules/env-paths": { + "version": "2.2.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/npm/node_modules/err-code": { + "version": "2.0.3", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/event-target-shim": { + "version": "5.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/npm/node_modules/events": { + "version": "3.3.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/npm/node_modules/exponential-backoff": { + "version": "3.1.1", + "dev": true, + "inBundle": true, + "license": "Apache-2.0" + }, + "node_modules/npm/node_modules/fastest-levenshtein": { + "version": "1.0.16", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">= 4.9.1" + } + }, + "node_modules/npm/node_modules/foreground-child": { + "version": "3.1.1", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/npm/node_modules/fs-minipass": { + "version": "3.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "minipass": "^5.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/fs.realpath": { + "version": "1.0.0", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/function-bind": { + "version": "1.1.1", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/gauge": { + "version": "5.0.1", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^4.0.1", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/glob": { + "version": "10.2.7", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.0.3", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2", + "path-scurry": "^1.7.0" + }, + "bin": { + "glob": "dist/cjs/src/bin.js" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/npm/node_modules/graceful-fs": { + "version": "4.2.11", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/has": { + "version": "1.0.3", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/npm/node_modules/has-unicode": { + "version": "2.0.1", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/hosted-git-info": { + "version": "6.1.1", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^7.5.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/http-cache-semantics": { + "version": "4.1.1", + "dev": true, + "inBundle": true, + "license": "BSD-2-Clause" + }, + "node_modules/npm/node_modules/http-proxy-agent": { + "version": "5.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/npm/node_modules/https-proxy-agent": { + "version": "5.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/npm/node_modules/humanize-ms": { + "version": "1.2.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ms": "^2.0.0" + } + }, + "node_modules/npm/node_modules/iconv-lite": { + "version": "0.6.3", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm/node_modules/ieee754": { + "version": "1.2.1", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "inBundle": true, + "license": "BSD-3-Clause" + }, + "node_modules/npm/node_modules/ignore-walk": { + "version": "6.0.3", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "minimatch": "^9.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/imurmurhash": { + "version": "0.1.4", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/npm/node_modules/indent-string": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/inflight": { + "version": "1.0.6", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/npm/node_modules/inherits": { + "version": "2.0.4", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/ini": { + "version": "4.1.1", + "dev": true, + "inBundle": true, + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/init-package-json": { + "version": "5.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "npm-package-arg": "^10.0.0", + "promzard": "^1.0.0", + "read": "^2.0.0", + "read-package-json": "^6.0.0", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4", + "validate-npm-package-name": "^5.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/ip": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/ip-regex": { + "version": "4.3.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/is-cidr": { + "version": "4.0.2", + "dev": true, + "inBundle": true, + "license": "BSD-2-Clause", + "dependencies": { + "cidr-regex": "^3.1.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/is-core-module": { + "version": "2.12.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/npm/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/is-lambda": { + "version": "1.0.1", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/isexe": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/jackspeak": { + "version": "2.2.1", + "dev": true, + "inBundle": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/npm/node_modules/json-parse-even-better-errors": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/json-stringify-nice": { + "version": "1.1.4", + "dev": true, + "inBundle": true, + "license": "ISC", + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/npm/node_modules/jsonparse": { + "version": "1.3.1", + "dev": true, + "engines": [ + "node >= 0.2.0" + ], + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/just-diff": { + "version": "6.0.2", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/just-diff-apply": { + "version": "5.5.0", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/libnpmaccess": { + "version": "7.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "npm-package-arg": "^10.1.0", + "npm-registry-fetch": "^14.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/libnpmdiff": { + "version": "5.0.19", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "@npmcli/arborist": "^6.3.0", + "@npmcli/disparity-colors": "^3.0.0", + "@npmcli/installed-package-contents": "^2.0.2", + "binary-extensions": "^2.2.0", + "diff": "^5.1.0", + "minimatch": "^9.0.0", + "npm-package-arg": "^10.1.0", + "pacote": "^15.0.8", + "tar": "^6.1.13" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/libnpmexec": { + "version": "6.0.3", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "@npmcli/arborist": "^6.3.0", + "@npmcli/run-script": "^6.0.0", + "ci-info": "^3.7.1", + "npm-package-arg": "^10.1.0", + "npmlog": "^7.0.1", + "pacote": "^15.0.8", + "proc-log": "^3.0.0", + "read": "^2.0.0", + "read-package-json-fast": "^3.0.2", + "semver": "^7.3.7", + "walk-up-path": "^3.0.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/libnpmfund": { + "version": "4.0.19", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "@npmcli/arborist": "^6.3.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/libnpmhook": { + "version": "9.0.3", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "aproba": "^2.0.0", + "npm-registry-fetch": "^14.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/libnpmorg": { + "version": "5.0.4", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "aproba": "^2.0.0", + "npm-registry-fetch": "^14.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/libnpmpack": { + "version": "5.0.19", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "@npmcli/arborist": "^6.3.0", + "@npmcli/run-script": "^6.0.0", + "npm-package-arg": "^10.1.0", + "pacote": "^15.0.8" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/libnpmpublish": { + "version": "7.5.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "ci-info": "^3.6.1", + "normalize-package-data": "^5.0.0", + "npm-package-arg": "^10.1.0", + "npm-registry-fetch": "^14.0.3", + "proc-log": "^3.0.0", + "semver": "^7.3.7", + "sigstore": "^1.4.0", + "ssri": "^10.0.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/libnpmsearch": { + "version": "6.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "npm-registry-fetch": "^14.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/libnpmteam": { + "version": "5.0.3", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "aproba": "^2.0.0", + "npm-registry-fetch": "^14.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/libnpmversion": { + "version": "4.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "@npmcli/git": "^4.0.1", + "@npmcli/run-script": "^6.0.0", + "json-parse-even-better-errors": "^3.0.0", + "proc-log": "^3.0.0", + "semver": "^7.3.7" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/lru-cache": { + "version": "7.18.3", + "dev": true, + "inBundle": true, + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/npm/node_modules/make-fetch-happen": { + "version": "11.1.1", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^17.0.0", + "http-cache-semantics": "^4.1.1", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^5.0.0", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/minimatch": { + "version": "9.0.3", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/npm/node_modules/minipass": { + "version": "5.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/minipass-collect": { + "version": "1.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/npm/node_modules/minipass-collect/node_modules/minipass": { + "version": "3.3.6", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/minipass-fetch": { + "version": "3.0.3", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "minipass": "^5.0.0", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/npm/node_modules/minipass-flush": { + "version": "1.0.5", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/npm/node_modules/minipass-flush/node_modules/minipass": { + "version": "3.3.6", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/minipass-json-stream": { + "version": "1.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "jsonparse": "^1.3.1", + "minipass": "^3.0.0" + } + }, + "node_modules/npm/node_modules/minipass-json-stream/node_modules/minipass": { + "version": "3.3.6", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/minipass-pipeline": { + "version": "1.2.4", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/minipass-pipeline/node_modules/minipass": { + "version": "3.3.6", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/minipass-sized": { + "version": "1.0.3", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/minipass-sized/node_modules/minipass": { + "version": "3.3.6", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/minizlib": { + "version": "2.1.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/npm/node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/mkdirp": { + "version": "1.0.4", + "dev": true, + "inBundle": true, + "license": "MIT", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/ms": { + "version": "2.1.3", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/mute-stream": { + "version": "1.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/negotiator": { + "version": "0.6.3", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/npm/node_modules/node-gyp": { + "version": "9.4.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "env-paths": "^2.2.0", + "exponential-backoff": "^3.1.1", + "glob": "^7.1.4", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^11.0.3", + "nopt": "^6.0.0", + "npmlog": "^6.0.0", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^2.0.2" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" + }, + "engines": { + "node": "^12.13 || ^14.13 || >=16" + } + }, + "node_modules/npm/node_modules/node-gyp/node_modules/abbrev": { + "version": "1.1.1", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/node-gyp/node_modules/are-we-there-yet": { + "version": "3.0.1", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/npm/node_modules/node-gyp/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/npm/node_modules/node-gyp/node_modules/gauge": { + "version": "4.0.4", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/npm/node_modules/node-gyp/node_modules/glob": { + "version": "7.2.3", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/npm/node_modules/node-gyp/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/npm/node_modules/node-gyp/node_modules/nopt": { + "version": "6.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "abbrev": "^1.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/npm/node_modules/node-gyp/node_modules/npmlog": { + "version": "6.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "are-we-there-yet": "^3.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.3", + "set-blocking": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/npm/node_modules/node-gyp/node_modules/readable-stream": { + "version": "3.6.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/npm/node_modules/node-gyp/node_modules/signal-exit": { + "version": "3.0.7", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/node-gyp/node_modules/which": { + "version": "2.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/npm/node_modules/nopt": { + "version": "7.2.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "abbrev": "^2.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/normalize-package-data": { + "version": "5.0.0", + "dev": true, + "inBundle": true, + "license": "BSD-2-Clause", + "dependencies": { + "hosted-git-info": "^6.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/npm-audit-report": { + "version": "5.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/npm-bundled": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "npm-normalize-package-bin": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/npm-install-checks": { + "version": "6.1.1", + "dev": true, + "inBundle": true, + "license": "BSD-2-Clause", + "dependencies": { + "semver": "^7.1.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/npm-normalize-package-bin": { + "version": "3.0.1", + "dev": true, + "inBundle": true, + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/npm-package-arg": { + "version": "10.1.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "hosted-git-info": "^6.0.0", + "proc-log": "^3.0.0", + "semver": "^7.3.5", + "validate-npm-package-name": "^5.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/npm-packlist": { + "version": "7.0.4", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "ignore-walk": "^6.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/npm-pick-manifest": { + "version": "8.0.1", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "npm-install-checks": "^6.0.0", + "npm-normalize-package-bin": "^3.0.0", + "npm-package-arg": "^10.0.0", + "semver": "^7.3.5" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/npm-profile": { + "version": "7.0.1", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "npm-registry-fetch": "^14.0.0", + "proc-log": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/npm-registry-fetch": { + "version": "14.0.5", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "make-fetch-happen": "^11.0.0", + "minipass": "^5.0.0", + "minipass-fetch": "^3.0.0", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.1.2", + "npm-package-arg": "^10.0.0", + "proc-log": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/npm-user-validate": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "BSD-2-Clause", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/npmlog": { + "version": "7.0.1", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "are-we-there-yet": "^4.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^5.0.0", + "set-blocking": "^2.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/once": { + "version": "1.4.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/npm/node_modules/p-map": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/npm/node_modules/pacote": { + "version": "15.2.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "@npmcli/git": "^4.0.0", + "@npmcli/installed-package-contents": "^2.0.1", + "@npmcli/promise-spawn": "^6.0.1", + "@npmcli/run-script": "^6.0.0", + "cacache": "^17.0.0", + "fs-minipass": "^3.0.0", + "minipass": "^5.0.0", + "npm-package-arg": "^10.0.0", + "npm-packlist": "^7.0.0", + "npm-pick-manifest": "^8.0.0", + "npm-registry-fetch": "^14.0.0", + "proc-log": "^3.0.0", + "promise-retry": "^2.0.1", + "read-package-json": "^6.0.0", + "read-package-json-fast": "^3.0.0", + "sigstore": "^1.3.0", + "ssri": "^10.0.0", + "tar": "^6.1.11" + }, + "bin": { + "pacote": "lib/bin.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/parse-conflict-json": { + "version": "3.0.1", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "json-parse-even-better-errors": "^3.0.0", + "just-diff": "^6.0.0", + "just-diff-apply": "^5.2.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/path-is-absolute": { + "version": "1.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm/node_modules/path-key": { + "version": "3.1.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/path-scurry": { + "version": "1.9.2", + "dev": true, + "inBundle": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "lru-cache": "^9.1.1", + "minipass": "^5.0.0 || ^6.0.2" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/npm/node_modules/path-scurry/node_modules/lru-cache": { + "version": "9.1.1", + "dev": true, + "inBundle": true, + "license": "ISC", + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/npm/node_modules/postcss-selector-parser": { + "version": "6.0.13", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm/node_modules/proc-log": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/process": { + "version": "0.11.10", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/npm/node_modules/promise-all-reject-late": { + "version": "1.0.1", + "dev": true, + "inBundle": true, + "license": "ISC", + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/npm/node_modules/promise-call-limit": { + "version": "1.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/npm/node_modules/promise-inflight": { + "version": "1.0.1", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/promise-retry": { + "version": "2.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/promzard": { + "version": "1.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "read": "^2.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/qrcode-terminal": { + "version": "0.12.0", + "dev": true, + "inBundle": true, + "bin": { + "qrcode-terminal": "bin/qrcode-terminal.js" + } + }, + "node_modules/npm/node_modules/read": { + "version": "2.1.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "mute-stream": "~1.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/read-cmd-shim": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/read-package-json": { + "version": "6.0.4", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "glob": "^10.2.2", + "json-parse-even-better-errors": "^3.0.0", + "normalize-package-data": "^5.0.0", + "npm-normalize-package-bin": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/read-package-json-fast": { + "version": "3.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "json-parse-even-better-errors": "^3.0.0", + "npm-normalize-package-bin": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/readable-stream": { + "version": "4.4.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/npm/node_modules/retry": { + "version": "0.12.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/npm/node_modules/rimraf": { + "version": "3.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/npm/node_modules/rimraf/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/npm/node_modules/rimraf/node_modules/glob": { + "version": "7.2.3", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/npm/node_modules/rimraf/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/npm/node_modules/safe-buffer": { + "version": "5.2.1", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/safer-buffer": { + "version": "2.1.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true + }, + "node_modules/npm/node_modules/semver": { + "version": "7.5.4", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/set-blocking": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/shebang-command": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/shebang-regex": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/signal-exit": { + "version": "4.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/npm/node_modules/sigstore": { + "version": "1.7.0", + "dev": true, + "inBundle": true, + "license": "Apache-2.0", + "dependencies": { + "@sigstore/protobuf-specs": "^0.1.0", + "@sigstore/tuf": "^1.0.1", + "make-fetch-happen": "^11.0.1" + }, + "bin": { + "sigstore": "bin/sigstore.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/smart-buffer": { + "version": "4.2.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/npm/node_modules/socks": { + "version": "2.7.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ip": "^2.0.0", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.13.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/npm/node_modules/socks-proxy-agent": { + "version": "7.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "agent-base": "^6.0.2", + "debug": "^4.3.3", + "socks": "^2.6.2" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/npm/node_modules/spdx-correct": { + "version": "3.2.0", + "dev": true, + "inBundle": true, + "license": "Apache-2.0", + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/npm/node_modules/spdx-exceptions": { + "version": "2.3.0", + "dev": true, + "inBundle": true, + "license": "CC-BY-3.0" + }, + "node_modules/npm/node_modules/spdx-expression-parse": { + "version": "3.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/npm/node_modules/spdx-license-ids": { + "version": "3.0.13", + "dev": true, + "inBundle": true, + "license": "CC0-1.0" + }, + "node_modules/npm/node_modules/ssri": { + "version": "10.0.4", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "minipass": "^5.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/string_decoder": { + "version": "1.3.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/npm/node_modules/string-width": { + "version": "4.2.3", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/strip-ansi": { + "version": "6.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/supports-color": { + "version": "9.4.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/npm/node_modules/tar": { + "version": "6.1.15", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/tar/node_modules/fs-minipass": { + "version": "2.1.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/npm/node_modules/tar/node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/text-table": { + "version": "0.2.0", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/tiny-relative-date": { + "version": "1.3.0", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/treeverse": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/tuf-js": { + "version": "1.1.7", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@tufjs/models": "1.0.4", + "debug": "^4.3.4", + "make-fetch-happen": "^11.1.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/unique-filename": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "unique-slug": "^4.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/unique-slug": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/util-deprecate": { + "version": "1.0.2", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/validate-npm-package-license": { + "version": "3.0.4", + "dev": true, + "inBundle": true, + "license": "Apache-2.0", + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/npm/node_modules/validate-npm-package-name": { + "version": "5.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "builtins": "^5.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/walk-up-path": { + "version": "3.0.1", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/wcwidth": { + "version": "1.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "defaults": "^1.0.3" + } + }, + "node_modules/npm/node_modules/which": { + "version": "3.0.1", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/wide-align": { + "version": "1.1.5", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "node_modules/npm/node_modules/wrap-ansi": { + "version": "8.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/npm/node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/npm/node_modules/wrap-ansi/node_modules/ansi-regex": { + "version": "6.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/npm/node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "6.2.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/npm/node_modules/wrap-ansi/node_modules/emoji-regex": { + "version": "9.2.2", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/wrap-ansi/node_modules/string-width": { + "version": "5.1.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/npm/node_modules/wrap-ansi/node_modules/strip-ansi": { + "version": "7.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/npm/node_modules/wrappy": { + "version": "1.0.2", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/write-file-atomic": { + "version": "5.0.1", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/nwsapi": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.7.tgz", + "integrity": "sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ==", + "dev": true + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/optionator": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", + "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", + "dev": true, + "dependencies": { + "@aashutoshrathi/word-wrap": "^1.2.3", + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/p-each-series": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-3.0.0.tgz", + "integrity": "sha512-lastgtAdoH9YaLyDa5i5z64q+kzOcQHsQ5SsZJD3q0VEyI8mq872S3geuNbRUQLVAE9siMfgKrpj7MloKFHruw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-filter": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-filter/-/p-filter-3.0.0.tgz", + "integrity": "sha512-QtoWLjXAW++uTX67HZQz1dbTpqBfiidsB6VtQUC9iR85S120+s0T5sO6s+B5MLzFcZkrEd/DGMmCjR+f2Qpxwg==", + "dev": true, + "dependencies": { + "p-map": "^5.1.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-is-promise": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-3.0.0.tgz", + "integrity": "sha512-Wo8VsW4IRQSKVXsJCn7TomUaVtyfjVDn3nUP7kE967BQk0CwFpdbZs0X0uk5sW9mkBa9eNM7hCMaG93WUAwxYQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-map": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-5.5.0.tgz", + "integrity": "sha512-VFqfGDHlx87K66yZrNdI4YGtD70IRyd+zSvgks6mzHPRNkoKy+9EKP4SFC77/vTTQYmRmti7dvqC+m5jBrBAcg==", + "dev": true, + "dependencies": { + "aggregate-error": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-reduce": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-reduce/-/p-reduce-3.0.0.tgz", + "integrity": "sha512-xsrIUgI0Kn6iyDYm9StOpOeK29XM1aboGji26+QEortiFST1hGZaUQOLhtEbqHErPpGW/aSz6allwK2qcptp0Q==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/param-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", + "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "dev": true, + "dependencies": { + "entities": "^4.4.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/pascal-case": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", + "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/path-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/path-case/-/path-case-3.0.4.tgz", + "integrity": "sha512-qO4qCFjXqVTrcbPt/hQfhTQ+VhFsqNKOPtytgNKkKxSoEp3XPUQ8ObFuePylOIok5gjn69ry8XiULxCwot3Wfg==", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/pkg-conf": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-2.1.0.tgz", + "integrity": "sha512-C+VUP+8jis7EsQZIhDYmS5qlNtjv2yP4SNtjXK9AP1ZcTRlnSfuumaTnRfYZnYgUUYVIKqL0fRvmUGDV2fmp6g==", + "dev": true, + "dependencies": { + "find-up": "^2.0.0", + "load-json-file": "^4.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-conf/node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==", + "dev": true, + "dependencies": { + "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-conf/node_modules/locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==", + "dev": true, + "dependencies": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-conf/node_modules/p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "dependencies": { + "p-try": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-conf/node_modules/p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==", + "dev": true, + "dependencies": { + "p-limit": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-conf/node_modules/p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-conf/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/postcss": { + "version": "8.4.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.29.tgz", + "integrity": "sha512-cbI+jaqIeu/VGqXEarWkRCCffhjgXc0qjBtXpqJhTBohMUjUQnbBr0xqX3vEKudc4iviTewcJo5ajcec5+wdJw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prettier": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.0.3.tgz", + "integrity": "sha512-L/4pUDMxcNa8R/EthV08Zt42WBO4h1rarVtK0K+QJG0X187OLo7l699jWw0GKuwzkPQ//jMFA/8Xm6Fh3J/DAg==", + "dev": true, + "bin": { + "prettier": "bin/prettier.cjs" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/pretty-format": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.6.3.tgz", + "integrity": "sha512-ZsBgjVhFAj5KeK+nHfF1305/By3lechHQSMWCTl8iHSbfOm2TN5nHEtFc/+W7fAyUeCs2n5iow72gld4gW0xDw==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dev": true, + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/proto-list": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", + "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==", + "dev": true + }, + "node_modules/psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", + "dev": true + }, + "node_modules/punycode": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/pure-rand": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.0.2.tgz", + "integrity": "sha512-6Yg0ekpKICSjPswYOuC5sku/TSWaRYlA0qsXqJgM/d/4pLPHPuTxK7Nbf7jFKzAeedUhR8C7K9Uv63FBsSo8xQ==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/dubzzz" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fast-check" + } + ] + }, + "node_modules/querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", + "dev": true + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/quick-lru": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", + "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dev": true, + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" + } + }, + "node_modules/rc/node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "node_modules/read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "dev": true, + "dependencies": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "dev": true, + "dependencies": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-pkg-up/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-pkg-up/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up/node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg/node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "dev": true + }, + "node_modules/read-pkg/node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/read-pkg/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/read-pkg/node_modules/type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/redent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", + "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "dev": true, + "dependencies": { + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/redeyed": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/redeyed/-/redeyed-2.1.1.tgz", + "integrity": "sha512-FNpGGo1DycYAdnrKFxCMmKYgo/mILAqtRYbkdQD8Ep/Hk2PQ5+aEAEx+IU713RTDmuBaH0c8P5ZozurNu5ObRQ==", + "dev": true, + "dependencies": { + "esprima": "~4.0.0" + } + }, + "node_modules/reflect-metadata": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", + "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==" + }, + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", + "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", + "dev": true, + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz", + "integrity": "sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==", + "dev": true + }, + "node_modules/regenerator-transform": { + "version": "0.15.2", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz", + "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.8.4" + } + }, + "node_modules/regexpu-core": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", + "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", + "dev": true, + "dependencies": { + "@babel/regjsgen": "^0.8.0", + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/registry-auth-token": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-5.0.2.tgz", + "integrity": "sha512-o/3ikDxtXaA59BmZuZrJZDJv8NMDGSj+6j6XaeBmHw8eY1i1qd9+6H+LjVvQXx3HN6aRCGa1cUdJ9RaJZUugnQ==", + "dev": true, + "dependencies": { + "@pnpm/npm-conf": "^2.1.0" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/regjsparser": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", + "dev": true, + "dependencies": { + "jsesc": "~0.5.0" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "node_modules/regjsparser/node_modules/jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", + "dev": true + }, + "node_modules/resolve": { + "version": "1.22.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", + "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", + "dev": true, + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-global": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/resolve-global/-/resolve-global-1.0.0.tgz", + "integrity": "sha512-zFa12V4OLtT5XUX/Q4VLvTfBf+Ok0SPc1FNGM/z9ctUdiU618qwKpWnd0CHs3+RqROfyEg/DhuHbMWYqcgljEw==", + "dev": true, + "dependencies": { + "global-dirs": "^0.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve.exports": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz", + "integrity": "sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rollup": { + "version": "3.28.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.28.1.tgz", + "integrity": "sha512-R9OMQmIHJm9znrU3m3cpE8uhN0fGdXiawME7aZIpQqvpS/85+Vt1Hq1/yVIcYfOmaQiHjvXkQAoJukvLpau6Yw==", + "dev": true, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=14.18.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "node_modules/saxes": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz", + "integrity": "sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==", + "dev": true, + "dependencies": { + "xmlchars": "^2.2.0" + }, + "engines": { + "node": ">=v12.22.7" + } + }, + "node_modules/secp256k1": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-5.0.0.tgz", + "integrity": "sha512-TKWX8xvoGHrxVdqbYeZM9w+izTF4b9z3NhSaDkdn81btvuh+ivbIMGT/zQvDtTFWhRlThpoz6LEYTr7n8A5GcA==", + "hasInstallScript": true, + "dependencies": { + "elliptic": "^6.5.4", + "node-addon-api": "^5.0.0", + "node-gyp-build": "^4.2.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/semantic-release": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/semantic-release/-/semantic-release-21.1.1.tgz", + "integrity": "sha512-OCIazQnaCHdq1F6zfmKS0P7jZakYq0weiqW2mxUWo4H2CDnxelUoa/0Bs/dQatoHc6JFh6lG2HWpusdl93bFcw==", + "dev": true, + "dependencies": { + "@semantic-release/commit-analyzer": "^10.0.0", + "@semantic-release/error": "^4.0.0", + "@semantic-release/github": "^9.0.0", + "@semantic-release/npm": "^10.0.2", + "@semantic-release/release-notes-generator": "^11.0.0", + "aggregate-error": "^4.0.1", + "cosmiconfig": "^8.0.0", + "debug": "^4.0.0", + "env-ci": "^9.0.0", + "execa": "^8.0.0", + "figures": "^5.0.0", + "find-versions": "^5.1.0", + "get-stream": "^6.0.0", + "git-log-parser": "^1.2.0", + "hook-std": "^3.0.0", + "hosted-git-info": "^7.0.0", + "lodash-es": "^4.17.21", + "marked": "^5.0.0", + "marked-terminal": "^5.1.1", + "micromatch": "^4.0.2", + "p-each-series": "^3.0.0", + "p-reduce": "^3.0.0", + "read-pkg-up": "^10.0.0", + "resolve-from": "^5.0.0", + "semver": "^7.3.2", + "semver-diff": "^4.0.0", + "signale": "^1.2.1", + "yargs": "^17.5.1" + }, + "bin": { + "semantic-release": "bin/semantic-release.js" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/semantic-release/node_modules/execa": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", + "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^8.0.1", + "human-signals": "^5.0.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^4.1.0", + "strip-final-newline": "^3.0.0" + }, + "engines": { + "node": ">=16.17" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/semantic-release/node_modules/execa/node_modules/get-stream": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", + "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", + "dev": true, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/semantic-release/node_modules/find-up": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", + "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", + "dev": true, + "dependencies": { + "locate-path": "^7.1.0", + "path-exists": "^5.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/semantic-release/node_modules/hosted-git-info": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.0.tgz", + "integrity": "sha512-ICclEpTLhHj+zCuSb2/usoNXSVkxUSIopre+b1w8NDY9Dntp9LO4vLdHYI336TH8sAqwrRgnSfdkBG2/YpisHA==", + "dev": true, + "dependencies": { + "lru-cache": "^10.0.1" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/semantic-release/node_modules/human-signals": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", + "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", + "dev": true, + "engines": { + "node": ">=16.17.0" + } + }, + "node_modules/semantic-release/node_modules/is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/semantic-release/node_modules/json-parse-even-better-errors": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.0.tgz", + "integrity": "sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/semantic-release/node_modules/lines-and-columns": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.3.tgz", + "integrity": "sha512-cNOjgCnLB+FnvWWtyRTzmB3POJ+cXxTA81LoW7u8JdmhfXzriropYwpjShnz1QLLWsQwY7nIxoDmcPTwphDK9w==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/semantic-release/node_modules/locate-path": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", + "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", + "dev": true, + "dependencies": { + "p-locate": "^6.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/semantic-release/node_modules/lru-cache": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", + "dev": true, + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/semantic-release/node_modules/mimic-fn": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/semantic-release/node_modules/normalize-package-data": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.0.tgz", + "integrity": "sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==", + "dev": true, + "dependencies": { + "hosted-git-info": "^7.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/semantic-release/node_modules/npm-run-path": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", + "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", + "dev": true, + "dependencies": { + "path-key": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/semantic-release/node_modules/onetime": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "dev": true, + "dependencies": { + "mimic-fn": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/semantic-release/node_modules/p-limit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^1.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/semantic-release/node_modules/p-locate": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", + "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", + "dev": true, + "dependencies": { + "p-limit": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/semantic-release/node_modules/parse-json": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-7.1.0.tgz", + "integrity": "sha512-ihtdrgbqdONYD156Ap6qTcaGcGdkdAxodO1wLqQ/j7HP1u2sFYppINiq4jyC8F+Nm+4fVufylCV00QmkTHkSUg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.21.4", + "error-ex": "^1.3.2", + "json-parse-even-better-errors": "^3.0.0", + "lines-and-columns": "^2.0.3", + "type-fest": "^3.8.0" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/semantic-release/node_modules/parse-json/node_modules/type-fest": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", + "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", + "dev": true, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/semantic-release/node_modules/path-exists": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", + "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/semantic-release/node_modules/path-key": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/semantic-release/node_modules/read-pkg": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-8.1.0.tgz", + "integrity": "sha512-PORM8AgzXeskHO/WEv312k9U03B8K9JSiWF/8N9sUuFjBa+9SF2u6K7VClzXwDXab51jCd8Nd36CNM+zR97ScQ==", + "dev": true, + "dependencies": { + "@types/normalize-package-data": "^2.4.1", + "normalize-package-data": "^6.0.0", + "parse-json": "^7.0.0", + "type-fest": "^4.2.0" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/semantic-release/node_modules/read-pkg-up": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-10.1.0.tgz", + "integrity": "sha512-aNtBq4jR8NawpKJQldrQcSW9y/d+KWH4v24HWkHljOZ7H0av+YTGANBzRh9A5pw7v/bLVsLVPpOhJ7gHNVy8lA==", + "dev": true, + "dependencies": { + "find-up": "^6.3.0", + "read-pkg": "^8.1.0", + "type-fest": "^4.2.0" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/semantic-release/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semantic-release/node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semantic-release/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/semantic-release/node_modules/strip-final-newline": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/semantic-release/node_modules/type-fest": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.3.1.tgz", + "integrity": "sha512-pphNW/msgOUSkJbH58x8sqpq8uQj6b0ZKGxEsLKMUnGorRcDjrUaLS+39+/ub41JNTwrrMyJcUB8+YZs3mbwqw==", + "dev": true, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/semantic-release/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/semantic-release/node_modules/yocto-queue": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", + "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "dev": true, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/semver-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-4.0.0.tgz", + "integrity": "sha512-0Ju4+6A8iOnpL/Thra7dZsSlOHYAHIeMxfhWQRI1/VLcT3WDBZKKtQt/QkBOsiIN9ZpuvHE6cGZ0x4glCMmfiA==", + "dev": true, + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/semver-diff/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver-diff/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver-diff/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/semver-regex": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/semver-regex/-/semver-regex-4.0.5.tgz", + "integrity": "sha512-hunMQrEy1T6Jr2uEVjrAIqjwWcQTgOAcIM52C8MY1EZSD3DDNft04XzvYKPqjED65bNVVko0YI38nYeEHCX3yw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/sentence-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/sentence-case/-/sentence-case-3.0.4.tgz", + "integrity": "sha512-8LS0JInaQMCRoQ7YUytAo/xUu5W2XnQxV2HI/6uM6U7CITS1RqPElr30V6uIqyMKM9lJGRVFy5/4CuzcixNYSg==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3", + "upper-case-first": "^2.0.2" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, + "node_modules/signale": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/signale/-/signale-1.4.0.tgz", + "integrity": "sha512-iuh+gPf28RkltuJC7W5MRi6XAjTDCAPC/prJUpQoG4vIP3MJZ+GTydVnodXA7pwvTKb2cA0m9OFZW/cdWy/I/w==", + "dev": true, + "dependencies": { + "chalk": "^2.3.2", + "figures": "^2.0.0", + "pkg-conf": "^2.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/signale/node_modules/figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/snake-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/snake-case/-/snake-case-3.0.4.tgz", + "integrity": "sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/spawn-error-forwarder": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/spawn-error-forwarder/-/spawn-error-forwarder-1.0.0.tgz", + "integrity": "sha512-gRjMgK5uFjbCvdibeGJuy3I5OYz6VLoVdsOJdA6wV0WlfQVLFueoqMxwwYD9RODdgb6oUIvlRlsyFSiQkMKu0g==", + "dev": true + }, + "node_modules/spdx-correct": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", + "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", + "dev": true, + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "dev": true + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.13", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.13.tgz", + "integrity": "sha512-XkD+zwiqXHikFZm4AX/7JSCXA98U5Db4AFd5XUg/+9UNtnH75+Z9KxtpYiJZx36mUDVOwH83pl7yvCer6ewM3w==", + "dev": true + }, + "node_modules/split": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz", + "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==", + "dev": true, + "dependencies": { + "through": "2" + }, + "engines": { + "node": "*" + } + }, + "node_modules/split2": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz", + "integrity": "sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==", + "dev": true, + "dependencies": { + "readable-stream": "^3.0.0" + } + }, + "node_modules/split2/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/stream-combiner2": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz", + "integrity": "sha512-3PnJbYgS56AeWgtKF5jtJRT6uFJe56Z0Hc5Ngg/6sI6rIt8iiMBTa9cvdyFfpMQjaVHr8dusbNeFGIIonxOvKw==", + "dev": true, + "dependencies": { + "duplexer2": "~0.1.0", + "readable-stream": "^2.0.2" + } + }, + "node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "dev": true, + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-indent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", + "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "dev": true, + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/supports-hyperlinks": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", + "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0", + "supports-color": "^7.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-hyperlinks/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-hyperlinks/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "dev": true + }, + "node_modules/temp-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-3.0.0.tgz", + "integrity": "sha512-nHc6S/bwIilKHNRgK/3jlhDoIHcp45YgyiwcAk46Tr0LfEqGBVpmiAyuiuxeVE44m3mXnEeVhaipLOEWmH+Njw==", + "dev": true, + "engines": { + "node": ">=14.16" + } + }, + "node_modules/tempy": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/tempy/-/tempy-3.1.0.tgz", + "integrity": "sha512-7jDLIdD2Zp0bDe5r3D2qtkd1QOCacylBuL7oa4udvN6v2pqr4+LcCr67C8DR1zkpaZ8XosF5m1yQSabKAW6f2g==", + "dev": true, + "dependencies": { + "is-stream": "^3.0.0", + "temp-dir": "^3.0.0", + "type-fest": "^2.12.2", + "unique-string": "^3.0.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tempy/node_modules/is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tempy/node_modules/type-fest": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", + "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", + "dev": true, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/text-extensions": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-1.9.0.tgz", + "integrity": "sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ==", + "dev": true, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true + }, + "node_modules/through2": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", + "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", + "dev": true, + "dependencies": { + "readable-stream": "3" + } + }, + "node_modules/through2/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", + "dev": true + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/tough-cookie": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz", + "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==", + "dev": true, + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tough-cookie/node_modules/universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/tr46": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", + "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", + "dev": true, + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/traverse": { + "version": "0.6.7", + "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.6.7.tgz", + "integrity": "sha512-/y956gpUo9ZNCb99YjxG7OaslxZWHfCHAUUfshwqOXmxUIvqLjVO581BT+gM59+QV9tFe6/CGG53tsA1Y7RSdg==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/trim-newlines": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", + "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ts-api-utils": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.0.2.tgz", + "integrity": "sha512-Cbu4nIqnEdd+THNEsBdkolnOXhg0I8XteoHaEKgvsxpsbWda4IsUut2c187HxywQCvveojow0Dgw/amxtSKVkQ==", + "dev": true, + "engines": { + "node": ">=16.13.0" + }, + "peerDependencies": { + "typescript": ">=4.2.0" + } + }, + "node_modules/ts-jest": { + "version": "29.1.1", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.1.tgz", + "integrity": "sha512-D6xjnnbP17cC85nliwGiL+tpoKN0StpgE0TeOjXQTU6MVCfsB4v7aW05CgQ/1OywGb0x/oy9hHFnN+sczTiRaA==", + "dev": true, + "dependencies": { + "bs-logger": "0.x", + "fast-json-stable-stringify": "2.x", + "jest-util": "^29.0.0", + "json5": "^2.2.3", + "lodash.memoize": "4.x", + "make-error": "1.x", + "semver": "^7.5.3", + "yargs-parser": "^21.0.1" + }, + "bin": { + "ts-jest": "cli.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": ">=7.0.0-beta.0 <8", + "@jest/types": "^29.0.0", + "babel-jest": "^29.0.0", + "jest": "^29.0.0", + "typescript": ">=4.3 <6" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "@jest/types": { + "optional": true + }, + "babel-jest": { + "optional": true + }, + "esbuild": { + "optional": true + } + } + }, + "node_modules/ts-jest/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ts-jest/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ts-jest/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/ts-jest/node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/ts-node": { + "version": "10.9.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", + "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", + "dev": true, + "dependencies": { + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" + }, + "bin": { + "ts-node": "dist/bin.js", + "ts-node-cwd": "dist/bin-cwd.js", + "ts-node-esm": "dist/bin-esm.js", + "ts-node-script": "dist/bin-script.js", + "ts-node-transpile-only": "dist/bin-transpile.js", + "ts-script": "dist/bin-script-deprecated.js" + }, + "peerDependencies": { + "@swc/core": ">=1.2.50", + "@swc/wasm": ">=1.2.50", + "@types/node": "*", + "typescript": ">=2.7" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "@swc/wasm": { + "optional": true + } + } + }, + "node_modules/tsconfck": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/tsconfck/-/tsconfck-2.1.2.tgz", + "integrity": "sha512-ghqN1b0puy3MhhviwO2kGF8SeMDNhEbnKxjK7h6+fvY9JAxqvXi8y5NAHSQv687OVboS2uZIByzGd45/YxrRHg==", + "dev": true, + "bin": { + "tsconfck": "bin/tsconfck.js" + }, + "engines": { + "node": "^14.13.1 || ^16 || >=18" + }, + "peerDependencies": { + "typescript": "^4.3.5 || ^5.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/tslib": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" + }, + "node_modules/tslog": { + "version": "4.9.2", + "resolved": "https://registry.npmjs.org/tslog/-/tslog-4.9.2.tgz", + "integrity": "sha512-wBM+LRJoNl34Bdu8mYEFxpvmOUedpNUwMNQB/NcuPIZKwdDde6xLHUev3bBjXQU7gdurX++X/YE7gLH8eXYsiQ==", + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/fullstack-build/tslog?sponsor=1" + } + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typescript": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz", + "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/uglify-js": { + "version": "3.17.4", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.4.tgz", + "integrity": "sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==", + "dev": true, + "optional": true, + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dev": true, + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unique-string": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-3.0.0.tgz", + "integrity": "sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ==", + "dev": true, + "dependencies": { + "crypto-random-string": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/universal-user-agent": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz", + "integrity": "sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w==", + "dev": true + }, + "node_modules/universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "dev": true, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", + "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/upper-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-2.0.2.tgz", + "integrity": "sha512-KgdgDGJt2TpuwBUIjgG6lzw2GWFRCW9Qkfkiv0DxqHHLYJHmtmdUIKcZd8rHgFSjopVTlw6ggzCm1b8MFQwikg==", + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/upper-case-first": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/upper-case-first/-/upper-case-first-2.0.2.tgz", + "integrity": "sha512-514ppYHBaKwfJRK/pNC6c/OxfGa0obSnAl106u97Ed0I625Nin96KAjttZF6ZL3e1XLtphxnqrOi9iWgm+u+bg==", + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/url-join": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/url-join/-/url-join-5.0.0.tgz", + "integrity": "sha512-n2huDr9h9yzd6exQVnH/jU5mr+Pfx08LRXXZhkLLetAMESRj+anQsTAh940iMrIetKAmry9coFuZQ2jY8/p3WA==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "dev": true, + "dependencies": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "node_modules/v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "dev": true + }, + "node_modules/v8-to-istanbul": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.1.0.tgz", + "integrity": "sha512-6z3GW9x8G1gd+JIIgQQQxXuiJtCXeAjp6RaPEPLv62mH3iPHPxV6W3robxtCzNErRo6ZwTmzWhsbNvjyEBKzKA==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.12", + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/vite": { + "version": "4.4.9", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.4.9.tgz", + "integrity": "sha512-2mbUn2LlUmNASWwSCNSJ/EG2HuSRTnVNaydp6vMCm5VIqJsjMfbIWtbH2kDuwUVW5mMUKKZvGPX/rqeqVvv1XA==", + "dev": true, + "dependencies": { + "esbuild": "^0.18.10", + "postcss": "^8.4.27", + "rollup": "^3.27.1" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + }, + "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 + } + } + }, + "node_modules/vite-tsconfig-paths": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/vite-tsconfig-paths/-/vite-tsconfig-paths-4.2.0.tgz", + "integrity": "sha512-jGpus0eUy5qbbMVGiTxCL1iB9ZGN6Bd37VGLJU39kTDD6ZfULTTb1bcc5IeTWqWJKiWV5YihCaibeASPiGi8kw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "globrex": "^0.1.2", + "tsconfck": "^2.1.0" + }, + "peerDependencies": { + "vite": "*" + }, + "peerDependenciesMeta": { + "vite": { + "optional": true + } + } + }, + "node_modules/w3c-xmlserializer": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-4.0.0.tgz", + "integrity": "sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw==", + "dev": true, + "dependencies": { + "xml-name-validator": "^4.0.0" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "dev": true, + "dependencies": { + "makeerror": "1.0.12" + } + }, + "node_modules/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/whatwg-encoding": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz", + "integrity": "sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==", + "dev": true, + "dependencies": { + "iconv-lite": "0.6.3" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/whatwg-fetch": { + "version": "3.6.18", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.18.tgz", + "integrity": "sha512-ltN7j66EneWn5TFDO4L9inYC1D+Czsxlrw2SalgjMmEMkLfA5SIZxEFdE6QtHFiiM6Q7WL32c7AkI3w6yxM84Q==", + "dev": true + }, + "node_modules/whatwg-mimetype": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz", + "integrity": "sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/whatwg-url": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", + "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", + "dev": true, + "dependencies": { + "tr46": "^3.0.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==", + "dev": true + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "node_modules/write-file-atomic": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/ws": { + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", + "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xml-name-validator": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-4.0.0.tgz", + "integrity": "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", + "dev": true + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "dev": true, + "engines": { + "node": ">=0.4" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yargs/node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zod": { + "version": "3.22.2", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.22.2.tgz", + "integrity": "sha512-wvWkphh5WQsJbVk1tbx1l1Ly4yg+XecD+Mq280uBGt9wa5BKSWf4Mhp6GmrkPixhMxmabYY7RbzlwVP32pbGCg==", + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + } + } +} diff --git a/typescript/package.json b/typescript/package.json new file mode 100644 index 0000000..6eda717 --- /dev/null +++ b/typescript/package.json @@ -0,0 +1,96 @@ +{ + "name": "@radixdlt/rola", + "version": "0.0.0", + "description": "Radix TypeScript ROLA library", + "homepage": "https://developers.radixdlt.com", + "keywords": [ + "radix", + "ROLA", + "Radix Off-Ledger Authentication", + "ledger", + "authentication", + "passkey", + "passwordless", + "dlt", + "web3", + "dApp", + "crypto", + "DeFi" + ], + "authors": [ + "Alex Stelea ", + "Dawid Sowa " + ], + "bugs": "https://github.com/radixdlt/rola/issues", + "license": "Apache-2.0", + "engines": { + "node": ">=14.0.0" + }, + "files": [ + "dist" + ], + "main": "./dist/rola.mjs", + "exports": { + ".": { + "import": { + "types": "./dist/rola.d.ts", + "default": "./dist/rola.mjs" + }, + "require": { + "types": "./dist/rola.d.ts", + "default": "./dist/rola.umd.js" + } + } + }, + "types": "./dist/rola.d.ts", + "scripts": { + "build": "vite build && npm run build:types", + "build:types": "tsc --project tsconfig.types.json --emitDeclarationOnly", + "prettier": "prettier --cache --check src", + "prettier:fix": "prettier --cache --write src", + "lint": "eslint --cache \"src/**/*.{ts,tsx}\"", + "lint:fix": "eslint --cache --fix \"src/**/*.{ts,tsx}\"", + "preview": "vite preview", + "pre-push": "npm run build && npm run lint && npm run prettier && npm run test", + "prepare": "cd .. && npx husky install", + "test": "jest --passWithNoTests", + "test:watch": "jest --watch", + "semantic-release": "semantic-release" + }, + "devDependencies": { + "@babel/preset-env": "^7.22.14", + "@babel/preset-typescript": "^7.22.11", + "@commitlint/cli": "^17.7.1", + "@commitlint/config-conventional": "^17.7.0", + "@types/elliptic": "^6.4.14", + "@types/jest": "^29.5.4", + "@typescript-eslint/eslint-plugin": "^6.5.0", + "@typescript-eslint/parser": "^6.5.0", + "babel-preset-vite": "^1.1.0", + "buffer": "^6.0.3", + "eslint": "^8.48.0", + "eslint-config-alloy": "^5.1.2", + "eslint-plugin-unused-imports": "^3.0.0", + "husky": "^8.0.3", + "isomorphic-fetch": "^3.0.0", + "jest": "^29.6.4", + "jest-environment-jsdom": "^29.6.4", + "prettier": "^3.0.3", + "semantic-release": "^21.1.1", + "ts-jest": "^29.1.1", + "ts-node": "^10.9.1", + "typescript": "^5.2.2", + "vite": "^4.4.9", + "vite-tsconfig-paths": "^4.2.0" + }, + "dependencies": { + "@radixdlt/radix-dapp-toolkit": "0.6.1", + "@radixdlt/radix-engine-toolkit": "0.3.0", + "elliptic": "^6.5.4", + "neverthrow": "^6.0.0" + }, + "repository": { + "type": "git", + "url": "https://github.com/radixdlt/rola.git" + } +} diff --git a/typescript/setup-tests.js b/typescript/setup-tests.js new file mode 100644 index 0000000..e9c3ca2 --- /dev/null +++ b/typescript/setup-tests.js @@ -0,0 +1,4 @@ +import 'isomorphic-fetch' +import { TextEncoder, TextDecoder } from 'util' +global.TextEncoder = TextEncoder +global.TextDecoder = TextDecoder diff --git a/typescript/src/crypto/blake2b.ts b/typescript/src/crypto/blake2b.ts new file mode 100644 index 0000000..828906a --- /dev/null +++ b/typescript/src/crypto/blake2b.ts @@ -0,0 +1,26 @@ +import type { Result } from 'neverthrow' +import { err, ok } from 'neverthrow' +import blake from 'blakejs' +import { Buffer } from 'buffer' + +const toArrayBuffer = (buffer: Buffer): ArrayBuffer => { + const arrayBuffer = new ArrayBuffer(buffer.length) + const view = new Uint8Array(arrayBuffer) + for (let i = 0; i < buffer.length; ++i) { + view[i] = buffer[i] + } + return arrayBuffer +} + +const bufferToUnit8Array = (buffer: Buffer): Uint8Array => + new Uint8Array(toArrayBuffer(buffer)) + +export const blake2b = (input: Buffer): Result => { + try { + return ok(blake.blake2bHex(bufferToUnit8Array(input), undefined, 32)).map( + (hex) => Buffer.from(hex, 'hex'), + ) + } catch (error) { + return err(error as Error) + } +} diff --git a/typescript/src/crypto/curve25519.ts b/typescript/src/crypto/curve25519.ts new file mode 100644 index 0000000..ddfeab1 --- /dev/null +++ b/typescript/src/crypto/curve25519.ts @@ -0,0 +1,4 @@ +import ec from 'elliptic' + +// eslint-disable-next-line new-cap +export const curve25519 = new ec.eddsa('ed25519') diff --git a/typescript/src/crypto/secp256k1.ts b/typescript/src/crypto/secp256k1.ts new file mode 100644 index 0000000..81b297a --- /dev/null +++ b/typescript/src/crypto/secp256k1.ts @@ -0,0 +1,4 @@ +import Elliptic from 'elliptic' + +// eslint-disable-next-line new-cap +export const secp256k1 = new Elliptic.ec('secp256k1') diff --git a/typescript/src/crypto/secure-random.ts b/typescript/src/crypto/secure-random.ts new file mode 100644 index 0000000..0dae9a5 --- /dev/null +++ b/typescript/src/crypto/secure-random.ts @@ -0,0 +1,4 @@ +import crypto from 'node:crypto' + +export const secureRandom = (byteCount: number): string => + crypto.randomBytes(byteCount).toString('hex') diff --git a/typescript/src/gateway.ts b/typescript/src/gateway.ts new file mode 100644 index 0000000..a7a7272 --- /dev/null +++ b/typescript/src/gateway.ts @@ -0,0 +1,41 @@ +export type GatewayService = ReturnType +import { + GatewayApiClient, + RadixNetworkConfigById, +} from '@radixdlt/babylon-gateway-api-sdk' +import { ResultAsync } from 'neverthrow' +import { typedError } from './helpers/typed-error' + +export type GatewayServiceInput = { + networkId: number + applicationName: string + gatewayApiClient?: GatewayApiClient +} +export const GatewayService = (input: GatewayServiceInput) => { + const { networkId, applicationName } = input + const config = RadixNetworkConfigById[networkId] + + if (!config) throw new Error(`Network ${networkId} not found`) + + const { state } = + input.gatewayApiClient ?? + GatewayApiClient.initialize({ + basePath: config.gatewayUrl, + applicationName, + }) + + const getEntityDetails = (address: string) => + ResultAsync.fromPromise( + state.getEntityDetailsVaultAggregated(address), + typedError, + ) + + return { + getEntityOwnerKeys: (address: string) => + getEntityDetails(address).map( + (response) => + response?.metadata?.items.find((item) => item.key === 'owner_keys') + ?.value.raw_hex ?? '', + ), + } +} diff --git a/typescript/src/helpers/create-public-key-hash.ts b/typescript/src/helpers/create-public-key-hash.ts new file mode 100644 index 0000000..bcbece3 --- /dev/null +++ b/typescript/src/helpers/create-public-key-hash.ts @@ -0,0 +1,12 @@ +import { Buffer } from 'buffer' +import { blake2b } from '../crypto/blake2b' +import type { Result } from 'neverthrow' + +type HexEncodedPublicKeyHash = string + +export const createPublicKeyHash = ( + publicKey: string, +): Result => + blake2b(Buffer.from(publicKey, 'hex')) + .map((hash) => hash.subarray(-29)) + .map((hash) => Buffer.from(hash).toString('hex')) diff --git a/typescript/src/helpers/create-signature-message.spec.ts b/typescript/src/helpers/create-signature-message.spec.ts new file mode 100644 index 0000000..f4422b5 --- /dev/null +++ b/typescript/src/helpers/create-signature-message.spec.ts @@ -0,0 +1,18 @@ +import { createSignatureMessage } from './create-signature-message' +import { rolaTestVectors } from './test-vectors' + +describe('createSignatureMessage', () => { + it('should create a signature message', () => { + rolaTestVectors.forEach((vector) => { + const result = createSignatureMessage({ + dAppDefinitionAddress: vector.dAppDefinitionAddress, + origin: vector.origin, + challenge: vector.challenge, + }) + + if (result.isErr()) throw { ...result.error, vector } + + expect(result.value).toEqual(vector.blakeHashOfPayload) + }) + }) +}) diff --git a/typescript/src/helpers/create-signature-message.ts b/typescript/src/helpers/create-signature-message.ts new file mode 100644 index 0000000..ec508ea --- /dev/null +++ b/typescript/src/helpers/create-signature-message.ts @@ -0,0 +1,35 @@ +import { Buffer } from 'buffer' +import type { Result } from 'neverthrow' +import { blake2b } from '../crypto/blake2b' + +export const createSignatureMessage = ({ + challenge, + dAppDefinitionAddress, + origin, +}: { + challenge: string + dAppDefinitionAddress: string + origin: string +}): Result => { + const prefix = Buffer.from('R', 'ascii') + const lengthOfDappDefAddress = dAppDefinitionAddress.length + const lengthOfDappDefAddressBuffer = Buffer.from( + lengthOfDappDefAddress.toString(16), + 'hex', + ) + const dappDefAddressBuffer = Buffer.from(dAppDefinitionAddress, 'utf-8') + const originBuffer = Buffer.from(origin, 'utf-8') + const challengeBuffer = Buffer.from(challenge, 'hex') + + const messageBuffer = Buffer.concat([ + prefix, + challengeBuffer, + lengthOfDappDefAddressBuffer, + dappDefAddressBuffer, + originBuffer, + ]) + + return blake2b(messageBuffer) + .map((hash) => Buffer.from(hash).toString('hex')) + .mapErr((jsError) => ({ reason: 'couldNotHashMessage', jsError })) +} diff --git a/typescript/src/helpers/derive-address-from-public-key.spec.ts b/typescript/src/helpers/derive-address-from-public-key.spec.ts new file mode 100644 index 0000000..5b08a1e --- /dev/null +++ b/typescript/src/helpers/derive-address-from-public-key.spec.ts @@ -0,0 +1,44 @@ +import { RadixNetwork } from '@radixdlt/babylon-gateway-api-sdk' +import { + deriveVirtualEcdsaSecp256k1AccountAddress, + deriveVirtualEddsaEd25519AccountAddress, + deriveVirtualIdentityAddress, +} from './derive-address-from-public-key' + +describe('deriveAddressFromPublicKey', () => { + it('should derive virtual identity address', async () => { + const output = deriveVirtualIdentityAddress( + '59c02cc1c4cc1eddd90907bb848c44ac1808d844476c1621ecf234cf3ed49c57', + RadixNetwork.Enkinet, + ) + + const result = await output.unwrapOr(undefined) + expect(result).toEqual( + 'identity_tdx_21_12t5uwv48e5j7w368r7kjmcrw3wygfh0dtssz0u5n4hkq7qawrwrzyv', + ) + }) + + it('should derive ed25519 virtual account address', async () => { + const output = deriveVirtualEddsaEd25519AccountAddress( + '59c02cc1c4cc1eddd90907bb848c44ac1808d844476c1621ecf234cf3ed49c57', + RadixNetwork.Enkinet, + ) + + const result = await output.unwrapOr(undefined) + expect(result).toEqual( + 'account_tdx_21_1285uwv48e5j7w368r7kjmcrw3wygfh0dtssz0u5n4hkq7qawthf4kn', + ) + }) + + it('should derive secp256k1 virtual account address', async () => { + const output = deriveVirtualEcdsaSecp256k1AccountAddress( + '02807797adba8d61024c186f438b7bd9c7e1260b6306d615c35faeef9da052e5e4', + RadixNetwork.Enkinet, + ) + + const result = await output.unwrapOr(undefined) + expect(result).toEqual( + 'account_tdx_21_168razfxd603n87nals6us3nnzet2k9tjdk5dlyh2xdjkah3duuyyr3', + ) + }) +}) diff --git a/typescript/src/helpers/derive-address-from-public-key.ts b/typescript/src/helpers/derive-address-from-public-key.ts new file mode 100644 index 0000000..ff36bef --- /dev/null +++ b/typescript/src/helpers/derive-address-from-public-key.ts @@ -0,0 +1,69 @@ +import type { SignedChallenge } from '@radixdlt/radix-dapp-toolkit' +import { PublicKey, RadixEngineToolkit } from '@radixdlt/radix-engine-toolkit' +import { ResultAsync, errAsync } from 'neverthrow' +import { typedError } from './typed-error' + +export const deriveVirtualIdentityAddress = ( + publicKey: string, + networkId: number, +) => + ResultAsync.fromPromise( + RadixEngineToolkit.Derive.virtualIdentityAddressFromPublicKey( + new PublicKey.Ed25519(publicKey), + networkId, + ), + typedError, + ) + +export const deriveVirtualEddsaEd25519AccountAddress = ( + publicKey: string, + networkId: number, +) => + ResultAsync.fromPromise( + RadixEngineToolkit.Derive.virtualAccountAddressFromPublicKey( + new PublicKey.Ed25519(publicKey), + networkId, + ), + typedError, + ) + +export const deriveVirtualEcdsaSecp256k1AccountAddress = ( + publicKey: string, + networkId: number, +) => + ResultAsync.fromPromise( + RadixEngineToolkit.Derive.virtualAccountAddressFromPublicKey( + new PublicKey.Secp256k1(publicKey), + networkId, + ), + typedError, + ) + +export const deriveVirtualAddress = ( + signedChallenge: SignedChallenge, + networkId: number, +) => { + if (signedChallenge.type === 'persona') + return deriveVirtualIdentityAddress( + signedChallenge.proof.publicKey, + networkId, + ) + else if ( + signedChallenge.type === 'account' && + signedChallenge.proof.curve === 'curve25519' + ) + return deriveVirtualEddsaEd25519AccountAddress( + signedChallenge.proof.publicKey, + networkId, + ) + else if ( + signedChallenge.type === 'account' && + signedChallenge.proof.curve === 'secp256k1' + ) + return deriveVirtualEcdsaSecp256k1AccountAddress( + signedChallenge.proof.publicKey, + networkId, + ) + + return errAsync(new Error('Could not derive virtual address')) +} diff --git a/typescript/src/helpers/test-vectors.ts b/typescript/src/helpers/test-vectors.ts new file mode 100644 index 0000000..448f02b --- /dev/null +++ b/typescript/src/helpers/test-vectors.ts @@ -0,0 +1,992 @@ +export const rolaTestVectors = [ + { + payloadToHash: + '5217f3cb369f2632454f7f22c24e72b0adf7b95e36f2297467d3ff04010b2967e1416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + '36f177f7fd2d2e0318255376a27c618c570240da2a4b38fa49ec5022ef9142d1', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://dashboard.rdx.works', + challenge: + '17f3cb369f2632454f7f22c24e72b0adf7b95e36f2297467d3ff04010b2967e1', + }, + { + payloadToHash: + '5237b7300c583e963118f12efc80eda923216223931c038d332724178cc94040a1416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + '8214573ea2fbf8bbd54ed20a43808bc7e492cb199b4707028dd25d8a15f808fa', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://dashboard.rdx.works', + challenge: + '37b7300c583e963118f12efc80eda923216223931c038d332724178cc94040a1', + }, + { + payloadToHash: + '52a015a5435262f2431cca5726afedf8ac26249ccf702a9c041771f08a98160d37416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + '2bb0ee453accae9a2e05adf9b63d5684510a8bee63de6269ff68e888bf118f7f', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://dashboard.rdx.works', + challenge: + 'a015a5435262f2431cca5726afedf8ac26249ccf702a9c041771f08a98160d37', + }, + { + payloadToHash: + '52576dfb9cf4949bdb299ec1c2fc1402026dd7e187d3764b0b1f20fdbb77a972e1416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + '5b1beadf53a32aa76de40970f0ba16abc8d11f1571ecb2ce14e40c0b43c78d3a', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://dashboard.rdx.works', + challenge: + '576dfb9cf4949bdb299ec1c2fc1402026dd7e187d3764b0b1f20fdbb77a972e1', + }, + { + payloadToHash: + '52eda8df9dee6a4747b490ec06849a8b93e3d15e27a5ad1bd110af5d82ce02436a416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + 'f861330cab0c397a08cd90bdca77a75ea69dfda57930bb61e0468b0022c531ec', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://dashboard.rdx.works', + challenge: + 'eda8df9dee6a4747b490ec06849a8b93e3d15e27a5ad1bd110af5d82ce02436a', + }, + { + payloadToHash: + '5253b0f594191207aace4b0d96250216ae7ca1d4e61228f1ef609c08d3a454ce90416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + '2ce080a318b6340c925d9e5a50d37e6f96d7f5186271ef1e9fa911beab4c1766', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://dashboard.rdx.works', + challenge: + '53b0f594191207aace4b0d96250216ae7ca1d4e61228f1ef609c08d3a454ce90', + }, + { + payloadToHash: + '52549ef0d2231603b0bb58a1da9482bf1086a551b3ce74502d8a6ee7f639ce4ef8416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + '3c31847940de63a4afcac577b1f8acdb3d90a91d59d72168e4b5522dc5c541aa', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://dashboard.rdx.works', + challenge: + '549ef0d2231603b0bb58a1da9482bf1086a551b3ce74502d8a6ee7f639ce4ef8', + }, + { + payloadToHash: + '527aeb92d87c025470e0c25b87426221b8e259346bc12d18d93e9ae454044484ae416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + 'cf4efa7091e151b6317706e40de23ef1e03673a82b52c2030540bb2c9e9b4940', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://dashboard.rdx.works', + challenge: + '7aeb92d87c025470e0c25b87426221b8e259346bc12d18d93e9ae454044484ae', + }, + { + payloadToHash: + '52721253c07003ef0d92c0b01472d0e3a0bacbd44cc8a9f95f97ca16cfc0f14a9f416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + '541e91923e96fe06356a5f635026d762bbfc2b639676395564fe4411cc7e0bc8', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://dashboard.rdx.works', + challenge: + '721253c07003ef0d92c0b01472d0e3a0bacbd44cc8a9f95f97ca16cfc0f14a9f', + }, + { + payloadToHash: + '52ec5dcb3d1f75627be1021cb8890f0e8ce0c9fe7f2ff55cbdff096b38a32612c9416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + 'dc47fc69e9e45855addf579f398da0309c878092dd95352b9fe187a7e5a529e2', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://dashboard.rdx.works', + challenge: + 'ec5dcb3d1f75627be1021cb8890f0e8ce0c9fe7f2ff55cbdff096b38a32612c9', + }, + { + payloadToHash: + '52734437a1fe900d95a73c937d7c4be39a306e1490149848b287264ca622c743fb416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + 'eba397c8365b57fc3f4e5c98a4e4168c5ae2242dec1c43e377c8e7302b7b46c0', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://dashboard.rdx.works', + challenge: + '734437a1fe900d95a73c937d7c4be39a306e1490149848b287264ca622c743fb', + }, + { + payloadToHash: + '52100e0f4b7b8dba6da01f80eb9666a57e016223fd3271c85a0f55acb6f3e5a722416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + '279f0e355da4aab2f5c1d3293b8534f1bc08bc7d5dd663567d2dda17d6a4bf13', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://dashboard.rdx.works', + challenge: + '100e0f4b7b8dba6da01f80eb9666a57e016223fd3271c85a0f55acb6f3e5a722', + }, + { + payloadToHash: + '52e83b6b8b36fe24a713de5f8ce51c1efcb2e6bb396c33f06d9b61671d78ff02b9416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + '5e0f7f46a9f2c1a951f8382405aba698257d693c5ca462ce348256e7e4d35de3', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://dashboard.rdx.works', + challenge: + 'e83b6b8b36fe24a713de5f8ce51c1efcb2e6bb396c33f06d9b61671d78ff02b9', + }, + { + payloadToHash: + '529640e7aace384d8274cc8ffe83ffced164f3c72bac8c20df718611235b5c7dc9416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + 'b171a3fd4eb68c8d8e9d679478346b915e41f3219f276916e3f186473d8a07b8', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://dashboard.rdx.works', + challenge: + '9640e7aace384d8274cc8ffe83ffced164f3c72bac8c20df718611235b5c7dc9', + }, + { + payloadToHash: + '52ce85a5813069f7e391809bd58496881c91663033b2da33d59e982589e46309ec416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + '3c8645edd89f024d3c38e6d809804b6d71b96d977324e376dcedcdbbb0e32fa6', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://dashboard.rdx.works', + challenge: + 'ce85a5813069f7e391809bd58496881c91663033b2da33d59e982589e46309ec', + }, + { + payloadToHash: + '52279691b716926baf49a6997950b783bd7be340d6d3d34e28353ed877ac711a6f416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + '3e9ab4773adf8475febf7442d61c92f963bbf46caf3496aa8feb4380dea6e3f6', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://dashboard.rdx.works', + challenge: + '279691b716926baf49a6997950b783bd7be340d6d3d34e28353ed877ac711a6f', + }, + { + payloadToHash: + '52daf06ef4fc56486d8771227d5587ed3c37cb37d9b96acae6642f10fc628da8a0416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + '623442410b1e20e7bfc05c970d149e3df2879c602a4201032405563df5ceb29b', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://dashboard.rdx.works', + challenge: + 'daf06ef4fc56486d8771227d5587ed3c37cb37d9b96acae6642f10fc628da8a0', + }, + { + payloadToHash: + '528c4dcab505c339e029883dd91d8b103f57a64b6286b537678d5713c656e2b0f8416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + '263e1a35725dfe65671274f52948e9b64a49c117f9dafdf55d03e02aa2cc11f4', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://dashboard.rdx.works', + challenge: + '8c4dcab505c339e029883dd91d8b103f57a64b6286b537678d5713c656e2b0f8', + }, + { + payloadToHash: + '5255507554647ccd504aec7b262608bcf54342d0783c7a90d40b49d83277523fc0416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + '873df7951ccadb4e4ceb9798dc7f63d4ced29c8879dd99aef8ea4745b32c2a4d', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://dashboard.rdx.works', + challenge: + '55507554647ccd504aec7b262608bcf54342d0783c7a90d40b49d83277523fc0', + }, + { + payloadToHash: + '52d7fb740b9ff00657d710dcbeddb2d432e697fc0dd39c60feb7858b17ef0eff58416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + '866836f5b9c827ca38fd2bfef94f95ba21933f75a0291c85d3ecfc18b8aa5b2d', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://dashboard.rdx.works', + challenge: + 'd7fb740b9ff00657d710dcbeddb2d432e697fc0dd39c60feb7858b17ef0eff58', + }, + { + payloadToHash: + '529002d52ee0c59f2dc7d9fda2b2a8ef4fcb24d6f0ac13aa4b0ee15da61a222082416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + '34b0c93e0da584aef2c5dadb638b0d7df150d63530a4e7f48989af4225ad059b', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://dashboard.rdx.works', + challenge: + '9002d52ee0c59f2dc7d9fda2b2a8ef4fcb24d6f0ac13aa4b0ee15da61a222082', + }, + { + payloadToHash: + '52c8b612de4dd1cca5f8205d2d7d729954f32d5e790cda156212dd0fa775ce9d90416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + 'b826acb834a22ac312b32edc4a16dfd578f03da65c6532b5686fea6fe1b585a2', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://dashboard.rdx.works', + challenge: + 'c8b612de4dd1cca5f8205d2d7d729954f32d5e790cda156212dd0fa775ce9d90', + }, + { + payloadToHash: + '52c9fe61de53803e232ad375fa8c5d910239cd0449b78144add96cf1b92e4b6337416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + '835d820a371d1da0572dbffd6fa698b56723f59eda8ef0eccd376546ab320ddc', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://dashboard.rdx.works', + challenge: + 'c9fe61de53803e232ad375fa8c5d910239cd0449b78144add96cf1b92e4b6337', + }, + { + payloadToHash: + '52bc823ad8e0396e4f0b90961abd0ca26a107c974b2732464fd3447b1f160d0782416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + 'ff5189321c8def7fc6d0bbee5a0d0cd2e1792b19807899960ced1101b98b571a', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://dashboard.rdx.works', + challenge: + 'bc823ad8e0396e4f0b90961abd0ca26a107c974b2732464fd3447b1f160d0782', + }, + { + payloadToHash: + '52256846d59b3c3b2bc34f9a21dc5df45e67059843f90b2a1e781aacdb52a6ae2c416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + 'd815edb09507a45dbcf944b6c044b2733c9222d35f0a29fb92b9d8bdd2603c87', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://dashboard.rdx.works', + challenge: + '256846d59b3c3b2bc34f9a21dc5df45e67059843f90b2a1e781aacdb52a6ae2c', + }, + { + payloadToHash: + '52546a45467621a24d49cce1a6294ec6ca59a6b807b6acd82667df6ead4d582d7b416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + '4fbeb303a8f4044399d10b128554a1d0b64634361b08e11b98b398885c7554fb', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://dashboard.rdx.works', + challenge: + '546a45467621a24d49cce1a6294ec6ca59a6b807b6acd82667df6ead4d582d7b', + }, + { + payloadToHash: + '52b99d25fcc5981a2c82752d494630351bdb197b24fda150f2daeb05a09eda214c416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + 'bce5486683c6a239d4a9f11fb651bb123f2ee67c90896b41bcab61deff3e0fe8', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://dashboard.rdx.works', + challenge: + 'b99d25fcc5981a2c82752d494630351bdb197b24fda150f2daeb05a09eda214c', + }, + { + payloadToHash: + '524e6d5b1c00b508ba1ba5c7a4537de1075a056630b66f89c3d89425dba2347e42416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + '0b4c742c5dfbf6a253652ee12b34a2bd98504a2e1fa02b22f63dd145dc7aaa21', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://dashboard.rdx.works', + challenge: + '4e6d5b1c00b508ba1ba5c7a4537de1075a056630b66f89c3d89425dba2347e42', + }, + { + payloadToHash: + '52da30918252ee2233781e8fe8992374c4209ca3f3c68b074e8d25472d00c7f397416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + '564cf1dfb0ff9adc7ec55f7ee72481b2228da1abb67c74b45929fba0a989205e', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://dashboard.rdx.works', + challenge: + 'da30918252ee2233781e8fe8992374c4209ca3f3c68b074e8d25472d00c7f397', + }, + { + payloadToHash: + '524aaa2ec25c3fe215412b3f005e4c37d518af3a22b4728587cf6dbcf83341e8b3416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f64617368626f6172642e7264782e776f726b73', + blakeHashOfPayload: + '0f41aa92e8c978d7f920ca56daf123a0a0d975eea06ecfb57bec0a0560fb73e3', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://dashboard.rdx.works', + challenge: + '4aaa2ec25c3fe215412b3f005e4c37d518af3a22b4728587cf6dbcf83341e8b3', + }, + { + payloadToHash: + '5275800c580ea870480b61728fc377e1bcf661f5c1dce9e560833fb2a9af640161416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + '5f8c35720bb2af3cc8185353c020cf649481d9f403bff076392415e4d09275ea', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://stella.swap', + challenge: + '75800c580ea870480b61728fc377e1bcf661f5c1dce9e560833fb2a9af640161', + }, + { + payloadToHash: + '52412593f1c558715ca009226381bed5de229eed7124429a9419899ed40c441415416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + 'ef5034269fb7cb9582246c69abc906fda8168091bc401ccc33d0348f9148a9ec', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://stella.swap', + challenge: + '412593f1c558715ca009226381bed5de229eed7124429a9419899ed40c441415', + }, + { + payloadToHash: + '52cb4c6f8a16d4c6035487cdcd118a2d6805a560443f8c910dbe91a6ff0f0c00d8416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + '4fee868502259c190c1bb56b0ae6f39f3e06e829f6346d0937524290080e6d0d', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://stella.swap', + challenge: + 'cb4c6f8a16d4c6035487cdcd118a2d6805a560443f8c910dbe91a6ff0f0c00d8', + }, + { + payloadToHash: + '52fe133faa758347941724c7f3a329a06e8405c582800223c3192a7f2d15964123416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + '3b48c9779aaab8c6c5fe0115defe344e3002919bf5a8574b80612142e5b6c7ab', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://stella.swap', + challenge: + 'fe133faa758347941724c7f3a329a06e8405c582800223c3192a7f2d15964123', + }, + { + payloadToHash: + '52fb62c45b70be8c5b48e3da401b0636af2830acd83c30a142817de68a5ad277c7416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + '9cb5ac891057891929cd4cf5c5490b0e74fd9cb239d6c4da7ef64c2a722ee04a', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://stella.swap', + challenge: + 'fb62c45b70be8c5b48e3da401b0636af2830acd83c30a142817de68a5ad277c7', + }, + { + payloadToHash: + '5259aa96163adc1d67e961ee652d552028673da478aa72d4b25628797390f0c30a416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + 'e84eb03b50e0cb088a536777fe077b39ba7df175277cade89a4cfb9fb47902b1', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://stella.swap', + challenge: + '59aa96163adc1d67e961ee652d552028673da478aa72d4b25628797390f0c30a', + }, + { + payloadToHash: + '522bd1de4ca5ab21bf912412c19da66a44d52572fa84dd1ccd61a041d241f73e26416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + 'd67eefd073ef912eb4772f3e88014a844dd0f4ba41711cb0a9cdd336e9c97eac', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://stella.swap', + challenge: + '2bd1de4ca5ab21bf912412c19da66a44d52572fa84dd1ccd61a041d241f73e26', + }, + { + payloadToHash: + '527714ffebc820e7e21c958a95d3f1c42e9a11c46a9928e918667db152b0e92dfd416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + 'b1cd118f2a4bd8b1c93a6d039a3cf6186de3b03831580a365688f9abc8106104', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://stella.swap', + challenge: + '7714ffebc820e7e21c958a95d3f1c42e9a11c46a9928e918667db152b0e92dfd', + }, + { + payloadToHash: + '52652e2ddeb3a9d6fd6faec6b43611683ad6a90475e702dc93ac7b26b493719244416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + '9e5a4a05672fdf11fd96ee420f91068e383dbc2e9adf672fc6f734a6b9700b46', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://stella.swap', + challenge: + '652e2ddeb3a9d6fd6faec6b43611683ad6a90475e702dc93ac7b26b493719244', + }, + { + payloadToHash: + '52a10fad201666b4bcf7f707841d58b11740c290e03790b17ed0fec23b3f180e65416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + '9c8d2622cedb9dc4e53daea398dd178a2ec938d402eeaba41a2ac946b0f4dd57', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://stella.swap', + challenge: + 'a10fad201666b4bcf7f707841d58b11740c290e03790b17ed0fec23b3f180e65', + }, + { + payloadToHash: + '52231e1c9be95a914162221c3eaf52a674242e7922e0020a554b80f772792e9edc416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + '0c7a1aa3f568f91f40b79a10d53ecf35b3993dd649832ce5db5d710beefdb9e6', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://stella.swap', + challenge: + '231e1c9be95a914162221c3eaf52a674242e7922e0020a554b80f772792e9edc', + }, + { + payloadToHash: + '52954b237e92a6a5ab0baf9d139d1c65bf00e63363bbfbb107a3841714391d4ecf416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + 'cf45daaf3c7f78a74074acba446a901f611b52a7280e0b2ebc9db19343c114d5', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://stella.swap', + challenge: + '954b237e92a6a5ab0baf9d139d1c65bf00e63363bbfbb107a3841714391d4ecf', + }, + { + payloadToHash: + '52a0c9f3bf148c85203d2489436d66e1ce497ff0469ff6bc72997e5185279a33a5416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + 'e4defd6fe078ee7e0ef911cd93969af93a1f5b43e67c2a27192c558e9ca59356', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://stella.swap', + challenge: + 'a0c9f3bf148c85203d2489436d66e1ce497ff0469ff6bc72997e5185279a33a5', + }, + { + payloadToHash: + '5211966bd56cb16b72c67bc7d2ec167951d67f87670f686c2eff58cbccb67dc405416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + 'cfc2e20c52a4c7b5739aa1faa182aadedeea0e458eb4763ad9602821e509b540', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://stella.swap', + challenge: + '11966bd56cb16b72c67bc7d2ec167951d67f87670f686c2eff58cbccb67dc405', + }, + { + payloadToHash: + '522596d7afc6e5975e16804293facef830c17b08cc2cff5a6812297debd865d003416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + '0e3fc1f58b3d7d66d0c90a52cfd3e4844a57ed347abad614e032e45d00e02a6f', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://stella.swap', + challenge: + '2596d7afc6e5975e16804293facef830c17b08cc2cff5a6812297debd865d003', + }, + { + payloadToHash: + '52304c6bae5c78f9ec55012c7bedb342d9eec145f34b66392df6654bd9bff03d83416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + '2b48bb5068ece0140abf54f58b6b197778c46f68d06bc69e9f69da7bf4fb671a', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://stella.swap', + challenge: + '304c6bae5c78f9ec55012c7bedb342d9eec145f34b66392df6654bd9bff03d83', + }, + { + payloadToHash: + '52cf02ba2830d4b286ea7cba2343213ad26bea5555c663de179879c431c6b9734d416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + '9efaa8d4313777cc9af351528ad580be5a08c7886d8dfa36ffb0c8645a36df99', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://stella.swap', + challenge: + 'cf02ba2830d4b286ea7cba2343213ad26bea5555c663de179879c431c6b9734d', + }, + { + payloadToHash: + '52bce429efded3cb37e916bac43a3ccb21c1be5ade97709c69785ba45952e34d21416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + '2f7300716be9b7c925279d671aa410b1209603b4f57c5effed06a4fb504b7074', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://stella.swap', + challenge: + 'bce429efded3cb37e916bac43a3ccb21c1be5ade97709c69785ba45952e34d21', + }, + { + payloadToHash: + '52da78d83d7d41aac75fa18eb54252a36926cfa4862818b207fd5722a8f1707243416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + 'e77456617429519572d91968d4967bf230a8e32a5fac5939f3e54563344d39e2', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://stella.swap', + challenge: + 'da78d83d7d41aac75fa18eb54252a36926cfa4862818b207fd5722a8f1707243', + }, + { + payloadToHash: + '52718b0eb060a719492011910258a4b4119d8c95aef34eb9519c9fa7de25f7ac43416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + '2c07a4fc72341ae9160a8f9ddf2d0bb8fd9d795ed0d87059a9e5de8321513871', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://stella.swap', + challenge: + '718b0eb060a719492011910258a4b4119d8c95aef34eb9519c9fa7de25f7ac43', + }, + { + payloadToHash: + '525ed2a0ef6cc83e5b0763b3a65da16faf9eb6e8f7fcc7bef7c4785bf79f4e07c1416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + '1908a3808eadcd0d7ce738a16740d496f39e3784f0c1c216fbfdcd904094a66e', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://stella.swap', + challenge: + '5ed2a0ef6cc83e5b0763b3a65da16faf9eb6e8f7fcc7bef7c4785bf79f4e07c1', + }, + { + payloadToHash: + '52b9d77c98d7bb876d4f179f23537a824c8c1f6dc7eb3f0d38731e79c1873982c3416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + '10aa69ef58870be1e252493825a654934dff97c24ea30eca013a11522f6ff43a', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://stella.swap', + challenge: + 'b9d77c98d7bb876d4f179f23537a824c8c1f6dc7eb3f0d38731e79c1873982c3', + }, + { + payloadToHash: + '52251fad9df0c0aee813666db14e76ed99d2761c0880fa5490a0039e553056d118416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + '70e36c24af3aafa42379c3dc44a478c344c6a5b4f2a39d691147c03ddcd27b4a', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://stella.swap', + challenge: + '251fad9df0c0aee813666db14e76ed99d2761c0880fa5490a0039e553056d118', + }, + { + payloadToHash: + '52a5a0bd6c9471c462c6ffe70abc3d052ee5a80eb648416e8239e88e356d90eeb0416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + 'f48df9a5638b6bb7a26a43983fbd068e0748d610978d535ab2fad2cb7f1780f6', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://stella.swap', + challenge: + 'a5a0bd6c9471c462c6ffe70abc3d052ee5a80eb648416e8239e88e356d90eeb0', + }, + { + payloadToHash: + '5297cf6f4e62d1801e775ee36d3fcba5a3b1499ad91468107136a8aafb17baed39416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + '6a80a5b0a1490b0f00acc92ebd00f95a3dffeeb27e127fa104a3665688db6b51', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://stella.swap', + challenge: + '97cf6f4e62d1801e775ee36d3fcba5a3b1499ad91468107136a8aafb17baed39', + }, + { + payloadToHash: + '52685dda6453ed3263ccbb307c9467d0f98a8f18dd0fda37a0475ac9a47bed3be9416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + '6a1a8ab5f9d69e6e1fdb7331fe5eddad3c847884fbd30717e61bad229f8be1c4', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://stella.swap', + challenge: + '685dda6453ed3263ccbb307c9467d0f98a8f18dd0fda37a0475ac9a47bed3be9', + }, + { + payloadToHash: + '522277346c0fb011fb33b111a07b697d48c98fa35bfad5f9f063e7ce4627ba943f416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + '5b83b941922570e3e2fa67b1183d4a2e8fb63e5dbfaafc6da833c1f1e92c8f16', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://stella.swap', + challenge: + '2277346c0fb011fb33b111a07b697d48c98fa35bfad5f9f063e7ce4627ba943f', + }, + { + payloadToHash: + '520086f932f939a14759753ced40f45cd0101341f8612b51bafd3692c91777a54b416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + 'db8e63902accb4e6f9465e637758126b0d76997a8a29eea993e450d5da6dff60', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://stella.swap', + challenge: + '0086f932f939a14759753ced40f45cd0101341f8612b51bafd3692c91777a54b', + }, + { + payloadToHash: + '529bfbf59e71b41eed841732618a24b33907bf79f871c751978557f23567360921416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + 'a55ab2f9e95f87f2920f5aa37e6fbe42d9aa32671635bbd6a82c7bfdb450e774', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://stella.swap', + challenge: + '9bfbf59e71b41eed841732618a24b33907bf79f871c751978557f23567360921', + }, + { + payloadToHash: + '529a4f834aefdc455cb4601337227e1b7e74d60308327564ececf33456509964cd416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f7374656c6c612e73776170', + blakeHashOfPayload: + '306b2407e8b675bb22b630efa938249595433975276862e9bfa07f7f94ca84a8', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://stella.swap', + challenge: + '9a4f834aefdc455cb4601337227e1b7e74d60308327564ececf33456509964cd', + }, + { + payloadToHash: + '5244928b503ec3df91aacd39a9439563c2ad86af19ffa0f8b11a41c6376fa5f1b4416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + 'd8e7c42fc24fd2df272d1264b34bf6e792e773b163a5ed8b2086f076de7e487b', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://rola.xrd', + challenge: + '44928b503ec3df91aacd39a9439563c2ad86af19ffa0f8b11a41c6376fa5f1b4', + }, + { + payloadToHash: + '52627cbe65a0e69787c81e426d0cf2d8160df3b10e36744cd106d033b09b69eb54416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + '5e54d05d2706eeb1991ff3dc4613a0da717fc3713b172900b7597035600e8453', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://rola.xrd', + challenge: + '627cbe65a0e69787c81e426d0cf2d8160df3b10e36744cd106d033b09b69eb54', + }, + { + payloadToHash: + '523581aea035195fb55472172a0dfb49da85d55e3a0db68587b814807dce7049ea416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + '6ab1c193d95cf423154a743657e5341c57c45491260dd926beb5f6b23965545c', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://rola.xrd', + challenge: + '3581aea035195fb55472172a0dfb49da85d55e3a0db68587b814807dce7049ea', + }, + { + payloadToHash: + '522cb201ffe1c14e08b83fb08ab99eeb0d6d6912ef716acfd7681e597fe7c98a54416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + '5815e5309e57d8b88f1b0d6f81c867b9cbc28f2e853891a9d014b409a592778c', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://rola.xrd', + challenge: + '2cb201ffe1c14e08b83fb08ab99eeb0d6d6912ef716acfd7681e597fe7c98a54', + }, + { + payloadToHash: + '52d27e43ced50394cff53e8815ec632f7c1f7f8f5efd923ad7558d263cfe2066d1416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + 'd203fe140d62995befdfe5123213aed83886171668b2fa55d8fe4d54919288e3', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://rola.xrd', + challenge: + 'd27e43ced50394cff53e8815ec632f7c1f7f8f5efd923ad7558d263cfe2066d1', + }, + { + payloadToHash: + '5230eb2b49998b7dbfb64bd8524bfd8ca73fdbe5b8419d3e9430769cff08f73203416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + 'be4045a481a640d62cc09431b151119c8fd5dc218e462e9d26c6e2d10b1c613f', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://rola.xrd', + challenge: + '30eb2b49998b7dbfb64bd8524bfd8ca73fdbe5b8419d3e9430769cff08f73203', + }, + { + payloadToHash: + '527a7aad9fa65a2dbfccc9e44561b302572f260f65c73c6d1c5c87a8a8bdf6275c416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + 'a65b915496258a1a2d78cdda979830dc7359df8a62b8b419ee90e8babd1d15c5', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://rola.xrd', + challenge: + '7a7aad9fa65a2dbfccc9e44561b302572f260f65c73c6d1c5c87a8a8bdf6275c', + }, + { + payloadToHash: + '52d81619c7e5ab2298c419ea7eda9c89db0db3f1d84713c495c3ec93d811d945b4416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + '0f7b06cca4ce45dbf543bfc5973a8cab41b4b091e15c1f025e6674ce0218098c', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://rola.xrd', + challenge: + 'd81619c7e5ab2298c419ea7eda9c89db0db3f1d84713c495c3ec93d811d945b4', + }, + { + payloadToHash: + '5267524c29ad63ce51e4807ce154db895b1c0509d67725747b021b826c24be775a416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + '84d4856f3b8148648a462282e8d619c56aee73007bd6726bfc5df5410cac0f89', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://rola.xrd', + challenge: + '67524c29ad63ce51e4807ce154db895b1c0509d67725747b021b826c24be775a', + }, + { + payloadToHash: + '5200dca15875839ab1f549445a36c7b5c0dcf7aebfa7d48f945f2aa5cf4aa1a9a3416163636f756e745f7464785f625f317039646b6765643372707a79383630616d7074356a706d767633796c34793666357970707034746e736364736c767439763368747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + 'a14942b1dc361c7e153e4d4200f902da1dafa2bd54bc4c0387c779c22a1e454e', + dAppDefinitionAddress: + 'account_tdx_b_1p9dkged3rpzy860ampt5jpmvv3yl4y6f5yppp4tnscdslvt9v3', + origin: 'https://rola.xrd', + challenge: + '00dca15875839ab1f549445a36c7b5c0dcf7aebfa7d48f945f2aa5cf4aa1a9a3', + }, + { + payloadToHash: + '52f8e21638f1c1ecd622fcd2354bbbdcfd06c093f7682995c933915f5adefbed37416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + '780bd563acccac173a5510d36e184f5afe9ad6a776d1c2415f4a891a7c0c2b5c', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://rola.xrd', + challenge: + 'f8e21638f1c1ecd622fcd2354bbbdcfd06c093f7682995c933915f5adefbed37', + }, + { + payloadToHash: + '52d957ec97d74f3ef81c7c450aae7ae7a094b62bf68ab48cbde1c1d5d6882e2f36416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + '7e7596815de7fa5b0c86543625a2f8a201d1a2b8355292e4a5750de7c4cfe7c2', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://rola.xrd', + challenge: + 'd957ec97d74f3ef81c7c450aae7ae7a094b62bf68ab48cbde1c1d5d6882e2f36', + }, + { + payloadToHash: + '52aced965f5ff005bc7fcac7a4db026cb1c3b2dcf3499c2099ca2423a27d39dbd2416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + '43fc0442f5402fc18ae0f981ae5dde4aa26c8613aef04516a4af0c4783187bb5', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://rola.xrd', + challenge: + 'aced965f5ff005bc7fcac7a4db026cb1c3b2dcf3499c2099ca2423a27d39dbd2', + }, + { + payloadToHash: + '52cef66932a002c0e949cbbd4f7774e2d3082ea3ffc40d76f65537e15b97e840e1416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + 'd1fece19d5b9066aa78119402dd8f4f9ea84601328a7f05f492feea6a98d92bf', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://rola.xrd', + challenge: + 'cef66932a002c0e949cbbd4f7774e2d3082ea3ffc40d76f65537e15b97e840e1', + }, + { + payloadToHash: + '52b6ce0722f3943831e3cf04afed287e574bc0c5786662e4f9bc701f429a3f3a4c416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + '4cad16bf2088da5a23a19c38982745128ffb68c9b7473bc43fbbdad72f88498f', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://rola.xrd', + challenge: + 'b6ce0722f3943831e3cf04afed287e574bc0c5786662e4f9bc701f429a3f3a4c', + }, + { + payloadToHash: + '521e7a54fc94e53ba7d019ecbb2957a06fd47d088c69def20e0e439e4ae0429f28416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + 'bb2baab66f8f9d6127d79bf888f3f633cc03a015d9d7e5aed26641264313de4a', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://rola.xrd', + challenge: + '1e7a54fc94e53ba7d019ecbb2957a06fd47d088c69def20e0e439e4ae0429f28', + }, + { + payloadToHash: + '52aa7a87ec65d9d0f387572c1642498f8d0d9b38d5a4df5f87aad27f102a4d0d92416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + '162907c4c16063705f0b704d349fb454c2068512964c7955780a0375cb960152', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://rola.xrd', + challenge: + 'aa7a87ec65d9d0f387572c1642498f8d0d9b38d5a4df5f87aad27f102a4d0d92', + }, + { + payloadToHash: + '5252b8151a401f0176ebeca25593d23f6dcecc76c98829734e9c2381270f95bab4416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + 'ce94ee8acf43c3a668fbead3b37ae13f11491159071670dfb595e737ca82be2f', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://rola.xrd', + challenge: + '52b8151a401f0176ebeca25593d23f6dcecc76c98829734e9c2381270f95bab4', + }, + { + payloadToHash: + '52140100298edb9cadd80423c1e15e2521d44f51be8b6a7953c9f03d83a8220071416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + '3ef5c000c2535601f4a96a336b0bc52c217624c32bb1d4194eca25569929d56d', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://rola.xrd', + challenge: + '140100298edb9cadd80423c1e15e2521d44f51be8b6a7953c9f03d83a8220071', + }, + { + payloadToHash: + '520a510b2362c9ce19d11c538b2f6a15f62caab6528071eaad5ba8a563a02e01cb416163636f756e745f7464785f625f3170386168656e797a6e7271793277307479673030723832727775787973367a386b6d726868333763376d617170796478377068747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + '6a13329619caafdf4351d1c8b85b7f523ce2955873f003402be6e1e45cdce4ae', + dAppDefinitionAddress: + 'account_tdx_b_1p8ahenyznrqy2w0tyg00r82rwuxys6z8kmrhh37c7maqpydx7p', + origin: 'https://rola.xrd', + challenge: + '0a510b2362c9ce19d11c538b2f6a15f62caab6528071eaad5ba8a563a02e01cb', + }, + { + payloadToHash: + '5230c6300639a90f15f5f34290c0dbdc3b07bc36ba9f793ff55f36885860a32138416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + 'a0997bf77ecfe12f2262fdd5b50257f2a1231004ddd0fdea3b9fe2a0d7574afc', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://rola.xrd', + challenge: + '30c6300639a90f15f5f34290c0dbdc3b07bc36ba9f793ff55f36885860a32138', + }, + { + payloadToHash: + '5219cd952215ef89fd393b50460ddee05fd48d0b8543bc008670bd415f66ce945b416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + '6a0d7f13c86b8eec3236aa1d7ab269a9905fd8b77c2e3c1db4dfc81bef1dd16a', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://rola.xrd', + challenge: + '19cd952215ef89fd393b50460ddee05fd48d0b8543bc008670bd415f66ce945b', + }, + { + payloadToHash: + '523a826316cf8a0ac49b72baea22973d7ef5923854735c9e5d2297c2f9277c1d61416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + '61a22c8f917cb13dade646a1065cdc514f9b664cdcecb8dba951e7978d7b2687', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://rola.xrd', + challenge: + '3a826316cf8a0ac49b72baea22973d7ef5923854735c9e5d2297c2f9277c1d61', + }, + { + payloadToHash: + '52f2d555e74fb1d9ded5ce512307bb570f1add46239754ef770cb9e4c1fb7f222d416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + '6f3a7e19f74021c33fb0cb208e82b99a57c23dd9f983b92612fcba4dfc1d0fa9', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://rola.xrd', + challenge: + 'f2d555e74fb1d9ded5ce512307bb570f1add46239754ef770cb9e4c1fb7f222d', + }, + { + payloadToHash: + '520347e29e7c1a5daadbd52a7c29ab367cbc3eb394b06ec8489c26333c7a8947fe416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + '725c50ab1fcf3d2a3e4fdd7fa164e3a93bd4dd822686ae36ad839daab665a517', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://rola.xrd', + challenge: + '0347e29e7c1a5daadbd52a7c29ab367cbc3eb394b06ec8489c26333c7a8947fe', + }, + { + payloadToHash: + '52acd2d6cb47f9175e3c71d41dd9cd639740cd501a63911ef740bdc408377ab4e8416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + '94e8eaac996d142f57e81c943f30b93d4816c4fd9199c8c3dfdce5eca4cd2ec8', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://rola.xrd', + challenge: + 'acd2d6cb47f9175e3c71d41dd9cd639740cd501a63911ef740bdc408377ab4e8', + }, + { + payloadToHash: + '525599f54941f26cb1c228d4a0087e28406bd27302ecdc623c63dbf50007619ff1416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + 'f1c11d45f6981c905b97b5de905c40a9fcb849b5f17fbed1ec8ddfd3a98f619d', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://rola.xrd', + challenge: + '5599f54941f26cb1c228d4a0087e28406bd27302ecdc623c63dbf50007619ff1', + }, + { + payloadToHash: + '52b0407e154ebfc958cf0e532381f75fde65e36c79935c7eba9e063520f5a90c27416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + '74fc45f6f01726132c96b09dbcaa24b93a75055c374672bc93025801b133663e', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://rola.xrd', + challenge: + 'b0407e154ebfc958cf0e532381f75fde65e36c79935c7eba9e063520f5a90c27', + }, + { + payloadToHash: + '526e6ab02769d14cd0be62267919c1f8a7a671029c41ade1f4d88336e8438e78db416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + '2c215a0de5e2ed3008097bf354b67a95adad9a2b7d9e8410f94c4ba9850c8b0f', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://rola.xrd', + challenge: + '6e6ab02769d14cd0be62267919c1f8a7a671029c41ade1f4d88336e8438e78db', + }, + { + payloadToHash: + '5220619c1df905a28e7a76d431f2b59e99dd1a8f386842e1701862e765806a5c47416163636f756e745f7464785f625f317039356e616c306e6d7271796c357234706863737067386168776e616d6164757a6464336b616b6c7733767165617672776168747470733a2f2f726f6c612e787264', + blakeHashOfPayload: + 'f9ec8f328d9aeec55546d1cd78a13cc7967bd52aba3c8e305ed39f82465f395c', + dAppDefinitionAddress: + 'account_tdx_b_1p95nal0nmrqyl5r4phcspg8ahwnamaduzdd3kaklw3vqeavrwa', + origin: 'https://rola.xrd', + challenge: + '20619c1df905a28e7a76d431f2b59e99dd1a8f386842e1701862e765806a5c47', + }, +] diff --git a/typescript/src/helpers/typed-error.ts b/typescript/src/helpers/typed-error.ts new file mode 100644 index 0000000..44cf6e8 --- /dev/null +++ b/typescript/src/helpers/typed-error.ts @@ -0,0 +1 @@ +export const typedError = (error: unknown) => error as E diff --git a/typescript/src/helpers/verify-proof.ts b/typescript/src/helpers/verify-proof.ts new file mode 100644 index 0000000..758dcfc --- /dev/null +++ b/typescript/src/helpers/verify-proof.ts @@ -0,0 +1,41 @@ +import type { Result } from 'neverthrow' +import { err, ok } from 'neverthrow' +import { curve25519 } from '../crypto/curve25519' +import { secp256k1 } from '../crypto/secp256k1' +import type { SignedChallenge } from '@radixdlt/radix-dapp-toolkit' + +const supportedCurves = new Set(['curve25519', 'secp256k1']) + +export const verifyProofFactory = + (input: SignedChallenge) => + ( + signatureMessageHex: string, + ): Result => { + const isSupportedCurve = supportedCurves.has(input.proof.curve) + if (!isSupportedCurve) return err({ reason: 'unsupportedCurve' }) + + try { + let isValid = false + + if (input.proof.curve === 'curve25519') { + const publicKey = curve25519.keyFromPublic( + input.proof.publicKey, + // @ts-ignore: incorrect type definition in EC lib + 'hex', + ) + isValid = publicKey.verify(signatureMessageHex, input.proof.signature) + } else { + const signature = Buffer.from(input.proof.signature, 'hex') + .toJSON() + .data.slice(1) + const r = signature.slice(0, 32) + const s = signature.slice(32, 64) + isValid = secp256k1 + .keyFromPublic(input.proof.publicKey, 'hex') + .verify(signatureMessageHex, { r, s }) + } + return isValid ? ok(undefined) : err({ reason: 'invalidSignature' }) + } catch (error: any) { + return err({ reason: 'invalidPublicKey', jsError: error }) + } + } diff --git a/typescript/src/rola.spec.ts b/typescript/src/rola.spec.ts new file mode 100644 index 0000000..45e0c3d --- /dev/null +++ b/typescript/src/rola.spec.ts @@ -0,0 +1,50 @@ +import { NetworkId } from '@radixdlt/radix-engine-toolkit' +import { Rola } from './rola' +import type { SignedChallenge } from '@radixdlt/radix-dapp-toolkit' + +describe('Rola', () => { + const { verifySignedChallenge } = Rola({ + networkId: NetworkId.RCNetV3, + applicationName: 'test', + dAppDefinitionAddress: + 'account_tdx_e_128uml7z6mqqqtm035t83alawc3jkvap9sxavecs35ud3ct20jxxuhl', + expectedOrigin: + 'https://radix-dapp-toolkit-dev.rdx-works-main.extratools.works', + }) + + it('should verify signed challenge', async () => { + for (const proof of [ + { + challenge: + 'b519902dd21c9669b81bb5023687879d178e5c4991ba1d0ee9e131cee365bafa', + proof: { + publicKey: + '1456b4da4ee62da249459f2180b83e5ebd5db8bad2ed1d8f35f51e7ec2cc98ce', + signature: + '8335e38096b3f0ac943c04e4c0b286af8cb711cb5f603a023d1d387fdd0cfae1a0255bcdb5d75cd43690413798959bd4c05af9b86f30d6ff74561bb9c8869202', + curve: 'curve25519', + }, + address: + 'identity_tdx_e_122mta8gr4tnjwywlxp5pdt03wfrd68pckne5z3cg2ce4kl3lw48ucy', + type: 'persona', + }, + { + proof: { + publicKey: + '5bc0bb873ca3faeeb18c6c056abf50897fd224f4be3c646aaf77f8131b23f373', + signature: + '1e36fedc212ac607d13d8c7db4eb67e049230ff9e40b40d63a28147d285f1663a59d59dc3d8cec845b4512aab9bf6f08680c5885ec9dca41681b12c68e29c60d', + curve: 'curve25519', + }, + address: + 'account_tdx_e_12yna5ce4lcmkhadsealv4umqmzyftcrrnhvhyqk7n6yu6kuu5mwv9f', + challenge: + 'b519902dd21c9669b81bb5023687879d178e5c4991ba1d0ee9e131cee365bafa', + type: 'account', + }, + ] satisfies SignedChallenge[]) { + const result = await verifySignedChallenge(proof) + if (result.isErr()) throw result.error.jsError + } + }) +}) diff --git a/typescript/src/rola.ts b/typescript/src/rola.ts new file mode 100644 index 0000000..74edddc --- /dev/null +++ b/typescript/src/rola.ts @@ -0,0 +1,97 @@ +import { ResultAsync, err, errAsync, ok } from 'neverthrow' +import { createSignatureMessage } from './helpers/create-signature-message' +import { verifyProofFactory } from './helpers/verify-proof' +import { deriveVirtualAddress } from './helpers/derive-address-from-public-key' +import { createPublicKeyHash } from './helpers/create-public-key-hash' +import { GatewayService } from './gateway' +import type { + GatewayApiClient, + SignedChallenge, +} from '@radixdlt/radix-dapp-toolkit' + +export { NetworkId } from '@radixdlt/radix-engine-toolkit' + +export type { SignedChallenge } from '@radixdlt/radix-dapp-toolkit' +export type RolaError = { reason: string; jsError?: Error } + +export type VerifyOwnerKeyOnLedgerFn = ( + address: string, + publicKeyHex: string, +) => ResultAsync + +export type RolaInput = { + expectedOrigin: string + dAppDefinitionAddress: string + applicationName: string + networkId: number + gatewayApiClient?: GatewayApiClient +} +export const Rola = (input: RolaInput) => { + const { expectedOrigin, dAppDefinitionAddress, networkId, applicationName } = + input + + const gatewayService = GatewayService({ + networkId, + applicationName, + gatewayApiClient: input.gatewayApiClient, + }) + + const verifySignedChallenge = ( + signedChallenge: SignedChallenge, + ): ResultAsync => { + const result = createPublicKeyHash(signedChallenge.proof.publicKey) + + if (result.isErr()) return errAsync({ reason: 'couldNotHashPublicKey' }) + + const hashedPublicKey = result.value + + const verifyProof = verifyProofFactory(signedChallenge) + + const getDerivedAddress = () => + deriveVirtualAddress(signedChallenge, networkId).mapErr((jsError) => ({ + reason: 'couldNotDeriveAddressFromPublicKey', + jsError, + })) + + const queryLedger = () => + gatewayService + .getEntityOwnerKeys(signedChallenge.address) + .mapErr((jsError) => ({ + reason: 'couldNotVerifyPublicKeyOnLedger', + jsError, + })) + .map((ownerKeys) => ({ + ownerKeysMatchesProvidedPublicKey: ownerKeys + .toUpperCase() + .includes(hashedPublicKey.toUpperCase()), + ownerKeysSet: !!ownerKeys, + })) + + const deriveAddressFromPublicKeyAndQueryLedger = () => + ResultAsync.combine([getDerivedAddress(), queryLedger()]) + + return createSignatureMessage({ + dAppDefinitionAddress, + origin: expectedOrigin, + challenge: signedChallenge.challenge, + }) + .andThen(verifyProof) + .asyncAndThen(deriveAddressFromPublicKeyAndQueryLedger) + .andThen( + ([ + derivedAddress, + { ownerKeysMatchesProvidedPublicKey, ownerKeysSet }, + ]) => { + const derivedAddressMatchesPublicKey = + !ownerKeysSet && derivedAddress === signedChallenge.address + + return ownerKeysMatchesProvidedPublicKey || + derivedAddressMatchesPublicKey + ? ok(undefined) + : err({ reason: 'invalidPublicKey' }) + }, + ) + } + + return { verifySignedChallenge } +} diff --git a/tsconfig.json b/typescript/tsconfig.json similarity index 100% rename from tsconfig.json rename to typescript/tsconfig.json diff --git a/tsconfig.types.json b/typescript/tsconfig.types.json similarity index 100% rename from tsconfig.types.json rename to typescript/tsconfig.types.json diff --git a/vite.config.js b/typescript/vite.config.js similarity index 100% rename from vite.config.js rename to typescript/vite.config.js