From e63ff7c4d0939a59ae3dadfc8bc013a3722c5015 Mon Sep 17 00:00:00 2001 From: Nico <1622112+nicarq@users.noreply.github.com> Date: Sat, 9 Sep 2023 10:03:54 +0800 Subject: [PATCH] removes shinkai-app (#67) * removes shinkai-app * update workflows * add dockerfile back * wasm-pack is back * nvm back * add nvm back --- .github/Dockerfile | 23 - .github/Dockerfile.shinkai-app | 36 - .github/Dockerfile.wasm | 5 +- .github/run-app-unit-tests.sh | 11 - .github/workflows/main.yaml | 21 - Dockerfile.shinkai-app | 10 +- shinkai-app/.browserslistrc | 6 - shinkai-app/.eslintrc.js | 17 - shinkai-app/.gitignore | 29 - shinkai-app/.nvmrc | 1 - shinkai-app/.vscode/extensions.json | 5 - shinkai-app/README.md | 10 - shinkai-app/capacitor.config.ts | 12 - shinkai-app/cypress.config.ts | 10 - shinkai-app/cypress/e2e/test.cy.ts | 6 - shinkai-app/cypress/fixtures/example.json | 5 - shinkai-app/cypress/support/commands.ts | 37 - shinkai-app/cypress/support/e2e.ts | 20 - shinkai-app/index.html | 30 - shinkai-app/ionic.config.json | 7 - shinkai-app/package-lock.json | 12298 ---------------- shinkai-app/package.json | 82 - shinkai-app/postcss.config.js | 7 - shinkai-app/public/favicon.png | Bin 930 -> 0 bytes .../public/fonts/inter-var-latin.woff2 | Bin 36532 -> 0 bytes shinkai-app/public/fonts/newake.otf | Bin 68568 -> 0 bytes shinkai-app/public/manifest.json | 21 - shinkai-app/public/messaging.png | Bin 120225 -> 0 bytes shinkai-app/public/shinkai-logo-white.svg | 4 - shinkai-app/public/shinkai-logo.svg | 4 - shinkai-app/src/App.test.tsx | 31 - shinkai-app/src/App.tsx | 72 - shinkai-app/src/api/api_config.ts | 23 - shinkai-app/src/api/index.ts | 530 - shinkai-app/src/components/ChatMessages.tsx | 173 - .../src/components/ExploreContainer.css | 24 - .../src/components/ExploreContainer.tsx | 14 - shinkai-app/src/components/ui/Avatar.tsx | 25 - shinkai-app/src/components/ui/Button.css | 42 - shinkai-app/src/components/ui/Button.tsx | 33 - shinkai-app/src/components/ui/Input.css | 26 - shinkai-app/src/components/ui/Input.tsx | 37 - shinkai-app/src/components/ui/Layout.css | 19 - shinkai-app/src/components/ui/Layout.tsx | 53 - shinkai-app/src/features/chat/chatSlice.ts | 27 - shinkai-app/src/hooks/usetSetup.ts | 17 - .../src/lib/wasm/InboxNameWrapper.test.ts | 88 - shinkai-app/src/lib/wasm/InboxNameWrapper.ts | 51 - .../src/lib/wasm/JobCreationWrapper.test.ts | 45 - .../src/lib/wasm/JobCreationWrapper.ts | 38 - shinkai-app/src/lib/wasm/JobMessageWrapper.ts | 34 - shinkai-app/src/lib/wasm/JobScopeWrapper.ts | 34 - .../lib/wasm/SerializedAgentWrapper.test.ts | 75 - .../src/lib/wasm/SerializedAgentWrapper.ts | 97 - .../wasm/ShinkaiMessageBuilderWrapper.test.ts | 185 - .../lib/wasm/ShinkaiMessageBuilderWrapper.ts | 509 - .../lib/wasm/ShinkaiMessageWrapper.test.ts | 57 - .../src/lib/wasm/ShinkaiMessageWrapper.ts | 49 - .../src/lib/wasm/ShinkaiNameWrapper.test.ts | 49 - .../src/lib/wasm/ShinkaiNameWrapper.ts | 45 - shinkai-app/src/main.tsx | 11 - shinkai-app/src/models/QRSetupData.ts | 12 - shinkai-app/src/models/SchemaTypes.ts | 85 - shinkai-app/src/models/ShinkaiMessage.ts | 52 - shinkai-app/src/pages/AddAgent.tsx | 199 - shinkai-app/src/pages/AdminCommands.tsx | 183 - shinkai-app/src/pages/Chat.css | 38 - shinkai-app/src/pages/Chat.tsx | 278 - shinkai-app/src/pages/Connect.tsx | 398 - shinkai-app/src/pages/CreateChat.tsx | 123 - shinkai-app/src/pages/CreateJob.tsx | 176 - shinkai-app/src/pages/Home.css | 27 - shinkai-app/src/pages/Home.tsx | 211 - shinkai-app/src/pages/JobChat.tsx | 131 - shinkai-app/src/pages/Settings.tsx | 18 - shinkai-app/src/pkg/README.md | 16 - shinkai-app/src/pkg/package.json | 19 - shinkai-app/src/pkg/shinkai_message_wasm.d.ts | 540 - shinkai-app/src/pkg/shinkai_message_wasm.js | 4 - .../src/pkg/shinkai_message_wasm_bg.js | 2874 ---- .../src/pkg/shinkai_message_wasm_bg.wasm | Bin 1525823 -> 0 bytes .../src/pkg/shinkai_message_wasm_bg.wasm.d.ts | 106 - shinkai-app/src/setupTests.ts | 14 - shinkai-app/src/store/actions.ts | 105 - shinkai-app/src/store/index.ts | 34 - shinkai-app/src/store/reducers.ts | 12 - .../src/store/reducers/messagesReducer.ts | 218 - .../src/store/reducers/otherReducer.ts | 87 - .../src/store/reducers/setupDetailsReducer.ts | 57 - shinkai-app/src/store/types.ts | 20 - shinkai-app/src/theme/global.css | 28 - shinkai-app/src/theme/lib/utils.ts | 6 - shinkai-app/src/theme/variables.css | 236 - shinkai-app/src/types.d.ts | 12 - .../src/utils/inbox_name_handler.test.ts | 51 - shinkai-app/src/utils/inbox_name_handler.ts | 60 - .../src/utils/shinkai_message_handler.ts | 7 - shinkai-app/src/utils/validation.test.ts | 10 - shinkai-app/src/utils/validation.ts | 18 - shinkai-app/src/utils/wasm_helpers.test.ts | 51 - shinkai-app/src/utils/wasm_helpers.ts | 60 - shinkai-app/src/vite-env.d.ts | 1 - shinkai-app/tailwind.config.js | 35 - shinkai-app/tsconfig.json | 27 - shinkai-app/tsconfig.node.json | 9 - shinkai-app/vite.config.ts | 15 - 106 files changed, 2 insertions(+), 21891 deletions(-) delete mode 100644 .github/Dockerfile.shinkai-app delete mode 100644 .github/run-app-unit-tests.sh delete mode 100644 shinkai-app/.browserslistrc delete mode 100644 shinkai-app/.eslintrc.js delete mode 100644 shinkai-app/.gitignore delete mode 100644 shinkai-app/.nvmrc delete mode 100644 shinkai-app/.vscode/extensions.json delete mode 100644 shinkai-app/README.md delete mode 100644 shinkai-app/capacitor.config.ts delete mode 100644 shinkai-app/cypress.config.ts delete mode 100644 shinkai-app/cypress/e2e/test.cy.ts delete mode 100644 shinkai-app/cypress/fixtures/example.json delete mode 100644 shinkai-app/cypress/support/commands.ts delete mode 100644 shinkai-app/cypress/support/e2e.ts delete mode 100644 shinkai-app/index.html delete mode 100644 shinkai-app/ionic.config.json delete mode 100644 shinkai-app/package-lock.json delete mode 100644 shinkai-app/package.json delete mode 100644 shinkai-app/postcss.config.js delete mode 100644 shinkai-app/public/favicon.png delete mode 100644 shinkai-app/public/fonts/inter-var-latin.woff2 delete mode 100644 shinkai-app/public/fonts/newake.otf delete mode 100644 shinkai-app/public/manifest.json delete mode 100644 shinkai-app/public/messaging.png delete mode 100644 shinkai-app/public/shinkai-logo-white.svg delete mode 100644 shinkai-app/public/shinkai-logo.svg delete mode 100644 shinkai-app/src/App.test.tsx delete mode 100644 shinkai-app/src/App.tsx delete mode 100644 shinkai-app/src/api/api_config.ts delete mode 100644 shinkai-app/src/api/index.ts delete mode 100644 shinkai-app/src/components/ChatMessages.tsx delete mode 100644 shinkai-app/src/components/ExploreContainer.css delete mode 100644 shinkai-app/src/components/ExploreContainer.tsx delete mode 100644 shinkai-app/src/components/ui/Avatar.tsx delete mode 100644 shinkai-app/src/components/ui/Button.css delete mode 100644 shinkai-app/src/components/ui/Button.tsx delete mode 100644 shinkai-app/src/components/ui/Input.css delete mode 100644 shinkai-app/src/components/ui/Input.tsx delete mode 100644 shinkai-app/src/components/ui/Layout.css delete mode 100644 shinkai-app/src/components/ui/Layout.tsx delete mode 100644 shinkai-app/src/features/chat/chatSlice.ts delete mode 100644 shinkai-app/src/hooks/usetSetup.ts delete mode 100644 shinkai-app/src/lib/wasm/InboxNameWrapper.test.ts delete mode 100644 shinkai-app/src/lib/wasm/InboxNameWrapper.ts delete mode 100644 shinkai-app/src/lib/wasm/JobCreationWrapper.test.ts delete mode 100644 shinkai-app/src/lib/wasm/JobCreationWrapper.ts delete mode 100644 shinkai-app/src/lib/wasm/JobMessageWrapper.ts delete mode 100644 shinkai-app/src/lib/wasm/JobScopeWrapper.ts delete mode 100644 shinkai-app/src/lib/wasm/SerializedAgentWrapper.test.ts delete mode 100644 shinkai-app/src/lib/wasm/SerializedAgentWrapper.ts delete mode 100644 shinkai-app/src/lib/wasm/ShinkaiMessageBuilderWrapper.test.ts delete mode 100644 shinkai-app/src/lib/wasm/ShinkaiMessageBuilderWrapper.ts delete mode 100644 shinkai-app/src/lib/wasm/ShinkaiMessageWrapper.test.ts delete mode 100644 shinkai-app/src/lib/wasm/ShinkaiMessageWrapper.ts delete mode 100644 shinkai-app/src/lib/wasm/ShinkaiNameWrapper.test.ts delete mode 100644 shinkai-app/src/lib/wasm/ShinkaiNameWrapper.ts delete mode 100644 shinkai-app/src/main.tsx delete mode 100644 shinkai-app/src/models/QRSetupData.ts delete mode 100644 shinkai-app/src/models/SchemaTypes.ts delete mode 100644 shinkai-app/src/models/ShinkaiMessage.ts delete mode 100644 shinkai-app/src/pages/AddAgent.tsx delete mode 100644 shinkai-app/src/pages/AdminCommands.tsx delete mode 100644 shinkai-app/src/pages/Chat.css delete mode 100644 shinkai-app/src/pages/Chat.tsx delete mode 100644 shinkai-app/src/pages/Connect.tsx delete mode 100644 shinkai-app/src/pages/CreateChat.tsx delete mode 100644 shinkai-app/src/pages/CreateJob.tsx delete mode 100644 shinkai-app/src/pages/Home.css delete mode 100644 shinkai-app/src/pages/Home.tsx delete mode 100644 shinkai-app/src/pages/JobChat.tsx delete mode 100644 shinkai-app/src/pages/Settings.tsx delete mode 100644 shinkai-app/src/pkg/README.md delete mode 100644 shinkai-app/src/pkg/package.json delete mode 100644 shinkai-app/src/pkg/shinkai_message_wasm.d.ts delete mode 100644 shinkai-app/src/pkg/shinkai_message_wasm.js delete mode 100644 shinkai-app/src/pkg/shinkai_message_wasm_bg.js delete mode 100644 shinkai-app/src/pkg/shinkai_message_wasm_bg.wasm delete mode 100644 shinkai-app/src/pkg/shinkai_message_wasm_bg.wasm.d.ts delete mode 100644 shinkai-app/src/setupTests.ts delete mode 100644 shinkai-app/src/store/actions.ts delete mode 100644 shinkai-app/src/store/index.ts delete mode 100644 shinkai-app/src/store/reducers.ts delete mode 100644 shinkai-app/src/store/reducers/messagesReducer.ts delete mode 100644 shinkai-app/src/store/reducers/otherReducer.ts delete mode 100644 shinkai-app/src/store/reducers/setupDetailsReducer.ts delete mode 100644 shinkai-app/src/store/types.ts delete mode 100644 shinkai-app/src/theme/global.css delete mode 100644 shinkai-app/src/theme/lib/utils.ts delete mode 100644 shinkai-app/src/theme/variables.css delete mode 100644 shinkai-app/src/types.d.ts delete mode 100644 shinkai-app/src/utils/inbox_name_handler.test.ts delete mode 100644 shinkai-app/src/utils/inbox_name_handler.ts delete mode 100644 shinkai-app/src/utils/shinkai_message_handler.ts delete mode 100644 shinkai-app/src/utils/validation.test.ts delete mode 100644 shinkai-app/src/utils/validation.ts delete mode 100644 shinkai-app/src/utils/wasm_helpers.test.ts delete mode 100644 shinkai-app/src/utils/wasm_helpers.ts delete mode 100644 shinkai-app/src/vite-env.d.ts delete mode 100644 shinkai-app/tailwind.config.js delete mode 100644 shinkai-app/tsconfig.json delete mode 100644 shinkai-app/tsconfig.node.json delete mode 100644 shinkai-app/vite.config.ts diff --git a/.github/Dockerfile b/.github/Dockerfile index f6a3f1f34..9af10db3e 100644 --- a/.github/Dockerfile +++ b/.github/Dockerfile @@ -2,8 +2,6 @@ FROM rust:bookworm as builder RUN apt-get update && apt-get install -y libclang-dev cmake - - # Install nvm, npm and node RUN rm /bin/sh && ln -s /bin/bash /bin/sh ENV NVM_DIR /usr/local/nvm @@ -20,7 +18,6 @@ ENV NODE_PATH $NVM_DIR/v$NODE_VERSION/lib/node_modules ENV PATH $NVM_DIR/versions/node/$NODE_VERSION/bin:$PATH RUN node -v - # Create a new directory for your app WORKDIR /app @@ -30,29 +27,9 @@ COPY . . # Build the dependencies (cached) - - - RUN cargo clean RUN rustup component add rustfmt RUN CARGO_BUILD_RERUN_IF_CHANGED=1 cargo build COPY .github/run-main*.sh /entrypoints/ RUN chmod 755 /entrypoints/*.sh -#RUN cargo test -- --test-threads=1 - - -# Create a new stage for the runtime image -#FROM debian:bookworm-slim - -# Install any necessary system dependencies -#RUN apt-get update && apt-get install -y \ -# ca-certificates \ -# && rm -rf /var/lib/apt/lists/* - -# Copy the built binary from the builder stage to the runtime image -#COPY --from=builder /app/target/debug/shinkai_node /usr/local/bin/shinkai_node - -# Set the command to run your application when the container starts -#ENTRYPOINT ["/usr/local/bin/shinkai_node"] - diff --git a/.github/Dockerfile.shinkai-app b/.github/Dockerfile.shinkai-app deleted file mode 100644 index 8bc866a28..000000000 --- a/.github/Dockerfile.shinkai-app +++ /dev/null @@ -1,36 +0,0 @@ -FROM rust:bookworm - -# Install nvm -RUN rm /bin/sh && ln -s /bin/bash /bin/sh -ENV NVM_DIR /usr/local/nvm -ENV NODE_VERSION v16.20.1 -RUN mkdir $NVM_DIR - -RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.4/install.sh | bash -RUN source $NVM_DIR/nvm.sh \ - && nvm install $NODE_VERSION \ - && nvm alias default $NODE_VERSION \ - && nvm use default - -ENV NODE_PATH $NVM_DIR/v$NODE_VERSION/lib/node_modules -ENV PATH $NVM_DIR/versions/node/$NODE_VERSION/bin:$PATH -RUN node -v - -#Install wasm-pack -RUN curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh - -WORKDIR /app/ -COPY . . - -WORKDIR /app/shinkai-message-wasm -RUN wasm-pack build -RUN cp -R pkg/ ../shinkai-app/src - -WORKDIR /app/shinkai-app -RUN source $NVM_DIR/nvm.sh && nvm install $(cat .nvmrc) && nvm use -RUN npm install -COPY .github/run-app*.sh /entrypoints/ -RUN chmod 755 /entrypoints/*.sh -#RUN npm run test.unit - - diff --git a/.github/Dockerfile.wasm b/.github/Dockerfile.wasm index dea7b31d5..ff3afe27c 100644 --- a/.github/Dockerfile.wasm +++ b/.github/Dockerfile.wasm @@ -3,13 +3,9 @@ FROM rust:bookworm WORKDIR /app/shinkai-message-wasm COPY ./shinkai-message-wasm . - #RUN WASM tests RUN cargo build -#RUN cargo test -- --test-threads=1 - - # Install nvm RUN rm /bin/sh && ln -s /bin/bash /bin/sh ENV NVM_DIR /usr/local/nvm @@ -26,6 +22,7 @@ ENV NODE_PATH $NVM_DIR/v$NODE_VERSION/lib/node_modules ENV PATH $NVM_DIR/versions/node/$NODE_VERSION/bin:$PATH RUN node -v + #Install wasm-pack RUN curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh #RUN wasm-pack test --node diff --git a/.github/run-app-unit-tests.sh b/.github/run-app-unit-tests.sh deleted file mode 100644 index 8281b84bd..000000000 --- a/.github/run-app-unit-tests.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/bash - -NVM_DIR=/usr/local/nvm -NODE_VERSION=v16.20.1 - -PATH=$PATH:$NVM_DIR/versions/node/$NODE_VERSION/bin:$PATH -node -v - -cd /app/shinkai-app -source $NVM_DIR/nvm.sh && nvm use -npm run test.unit diff --git a/.github/workflows/main.yaml b/.github/workflows/main.yaml index cae6cb7b8..442e5c63a 100644 --- a/.github/workflows/main.yaml +++ b/.github/workflows/main.yaml @@ -47,24 +47,3 @@ jobs: - name: Remove image if: always() run: docker rmi testing_image_wasm:${SHORT_SHA} || true - - - test-shinkai-app: - runs-on: self-hosted - steps: - - name: Checkout - uses: actions/checkout@v3 - - - name: Add SHORT_SHA env property with commit short sha - run: echo "SHORT_SHA=`echo ${GITHUB_SHA} | cut -c1-8`" >> $GITHUB_ENV - - - name: Build testing image - shinkai-app - run: docker build -t testing_image_shinkai_app:${SHORT_SHA} -f .github/Dockerfile.shinkai-app . - - - name: Run tests shinkai-app unit tests - run: docker run --rm --entrypoint /entrypoints/run-app-unit-tests.sh testing_image_shinkai_app:${SHORT_SHA} - - - name: Remove image - if: always() - run: docker rmi testing_image_shinkai_app:${SHORT_SHA} || true - diff --git a/Dockerfile.shinkai-app b/Dockerfile.shinkai-app index fab311875..aa77cfeed 100644 --- a/Dockerfile.shinkai-app +++ b/Dockerfile.shinkai-app @@ -16,7 +16,7 @@ ENV NODE_PATH $NVM_DIR/v$NODE_VERSION/lib/node_modules ENV PATH $NVM_DIR/versions/node/$NODE_VERSION/bin:$PATH RUN node -v -#Install wasm-pack +# Install wasm-pack RUN curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh WORKDIR /app/ @@ -24,11 +24,3 @@ COPY . . WORKDIR /app/shinkai-message-wasm RUN wasm-pack build -RUN cp -R pkg/ ../shinkai-app/src - -WORKDIR /app/shinkai-app -RUN source $NVM_DIR/nvm.sh && nvm install $(cat .nvmrc) && nvm use -RUN npm install -RUN npm run test.unit - - diff --git a/shinkai-app/.browserslistrc b/shinkai-app/.browserslistrc deleted file mode 100644 index ade73929d..000000000 --- a/shinkai-app/.browserslistrc +++ /dev/null @@ -1,6 +0,0 @@ -Chrome >=79 -ChromeAndroid >=79 -Firefox >=70 -Edge >=79 -Safari >=14 -iOS >=14 \ No newline at end of file diff --git a/shinkai-app/.eslintrc.js b/shinkai-app/.eslintrc.js deleted file mode 100644 index af472a1f7..000000000 --- a/shinkai-app/.eslintrc.js +++ /dev/null @@ -1,17 +0,0 @@ -module.exports = { - root: true, - env: { - node: true - }, - 'extends': [ - 'plugin:react/recommended', - 'eslint:recommended' - ], - parserOptions: { - ecmaVersion: 2020 - }, - rules: { - 'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off', - 'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off', - } -} diff --git a/shinkai-app/.gitignore b/shinkai-app/.gitignore deleted file mode 100644 index 1dcf08b9f..000000000 --- a/shinkai-app/.gitignore +++ /dev/null @@ -1,29 +0,0 @@ -# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. - -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# production -/build - -# misc -.DS_Store -.env.local -.env.development.local -.env.test.local -.env.production.local -/.vscode/* -!/.vscode/extensions.json -.idea - -npm-debug.log* -yarn-debug.log* -yarn-error.log* - -# Optional eslint cache -.eslintcache diff --git a/shinkai-app/.nvmrc b/shinkai-app/.nvmrc deleted file mode 100644 index cbd89321d..000000000 --- a/shinkai-app/.nvmrc +++ /dev/null @@ -1 +0,0 @@ -v18.17.0 \ No newline at end of file diff --git a/shinkai-app/.vscode/extensions.json b/shinkai-app/.vscode/extensions.json deleted file mode 100644 index ffcebbeb2..000000000 --- a/shinkai-app/.vscode/extensions.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "recommendations": [ - "ionic.ionic" - ] -} diff --git a/shinkai-app/README.md b/shinkai-app/README.md deleted file mode 100644 index b988f6dea..000000000 --- a/shinkai-app/README.md +++ /dev/null @@ -1,10 +0,0 @@ -## Install - -`nvm use` -`npm install` - -Note: it requires the wasm `pkg` folder to be copied to the src directory of this project. - -## Tests - -`npm run test.unit` \ No newline at end of file diff --git a/shinkai-app/capacitor.config.ts b/shinkai-app/capacitor.config.ts deleted file mode 100644 index b8c5011f1..000000000 --- a/shinkai-app/capacitor.config.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { CapacitorConfig } from '@capacitor/cli'; - -const config: CapacitorConfig = { - appId: 'io.ionic.starter', - appName: 'ShinkaiApp', - webDir: 'dist', - server: { - androidScheme: 'https' - } -}; - -export default config; diff --git a/shinkai-app/cypress.config.ts b/shinkai-app/cypress.config.ts deleted file mode 100644 index 5d58e7ab1..000000000 --- a/shinkai-app/cypress.config.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { defineConfig } from "cypress"; - -export default defineConfig({ - e2e: { - baseUrl: "http://localhost:5173", - setupNodeEvents(on, config) { - // implement node event listeners here - }, - }, -}); \ No newline at end of file diff --git a/shinkai-app/cypress/e2e/test.cy.ts b/shinkai-app/cypress/e2e/test.cy.ts deleted file mode 100644 index 7b9a2e029..000000000 --- a/shinkai-app/cypress/e2e/test.cy.ts +++ /dev/null @@ -1,6 +0,0 @@ -describe('My First Test', () => { - it('Visits the app root url', () => { - cy.visit('/') - cy.contains('#container', 'Ready to create an app?') - }) -}) \ No newline at end of file diff --git a/shinkai-app/cypress/fixtures/example.json b/shinkai-app/cypress/fixtures/example.json deleted file mode 100644 index 02e425437..000000000 --- a/shinkai-app/cypress/fixtures/example.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "name": "Using fixtures to represent data", - "email": "hello@cypress.io", - "body": "Fixtures are a great way to mock data for responses to routes" -} diff --git a/shinkai-app/cypress/support/commands.ts b/shinkai-app/cypress/support/commands.ts deleted file mode 100644 index 698b01a42..000000000 --- a/shinkai-app/cypress/support/commands.ts +++ /dev/null @@ -1,37 +0,0 @@ -/// -// *********************************************** -// This example commands.ts shows you how to -// create various custom commands and overwrite -// existing commands. -// -// For more comprehensive examples of custom -// commands please read more here: -// https://on.cypress.io/custom-commands -// *********************************************** -// -// -// -- This is a parent command -- -// Cypress.Commands.add('login', (email, password) => { ... }) -// -// -// -- This is a child command -- -// Cypress.Commands.add('drag', { prevSubject: 'element'}, (subject, options) => { ... }) -// -// -// -- This is a dual command -- -// Cypress.Commands.add('dismiss', { prevSubject: 'optional'}, (subject, options) => { ... }) -// -// -// -- This will overwrite an existing command -- -// Cypress.Commands.overwrite('visit', (originalFn, url, options) => { ... }) -// -// declare global { -// namespace Cypress { -// interface Chainable { -// login(email: string, password: string): Chainable -// drag(subject: string, options?: Partial): Chainable -// dismiss(subject: string, options?: Partial): Chainable -// visit(originalFn: CommandOriginalFn, url: string, options: Partial): Chainable -// } -// } -// } \ No newline at end of file diff --git a/shinkai-app/cypress/support/e2e.ts b/shinkai-app/cypress/support/e2e.ts deleted file mode 100644 index f80f74f8e..000000000 --- a/shinkai-app/cypress/support/e2e.ts +++ /dev/null @@ -1,20 +0,0 @@ -// *********************************************************** -// This example support/e2e.ts is processed and -// loaded automatically before your test files. -// -// This is a great place to put global configuration and -// behavior that modifies Cypress. -// -// You can change the location of this file or turn off -// automatically serving support files with the -// 'supportFile' configuration option. -// -// You can read more here: -// https://on.cypress.io/configuration -// *********************************************************** - -// Import commands.js using ES2015 syntax: -import './commands' - -// Alternatively you can use CommonJS syntax: -// require('./commands') \ No newline at end of file diff --git a/shinkai-app/index.html b/shinkai-app/index.html deleted file mode 100644 index 6c233a8e6..000000000 --- a/shinkai-app/index.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - Ionic App - - - - - - - - - - - - - - - - - - -
- - - diff --git a/shinkai-app/ionic.config.json b/shinkai-app/ionic.config.json deleted file mode 100644 index 72ee5fb82..000000000 --- a/shinkai-app/ionic.config.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "name": "ShinkaiApp", - "integrations": { - "capacitor": {} - }, - "type": "react-vite" -} diff --git a/shinkai-app/package-lock.json b/shinkai-app/package-lock.json deleted file mode 100644 index 0f801bb68..000000000 --- a/shinkai-app/package-lock.json +++ /dev/null @@ -1,12298 +0,0 @@ -{ - "name": "ShinkaiApp", - "version": "0.0.1", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "name": "ShinkaiApp", - "version": "0.0.1", - "dependencies": { - "@capacitor-community/barcode-scanner": "^4.0.1", - "@capacitor/app": "5.0.6", - "@capacitor/camera": "^5.0.6", - "@capacitor/core": "5.2.2", - "@capacitor/haptics": "5.0.6", - "@capacitor/keyboard": "5.0.6", - "@capacitor/status-bar": "5.0.6", - "@ionic/react": "^7.0.0", - "@ionic/react-router": "^7.0.0", - "@noble/ed25519": "^2.0.0", - "@noble/hashes": "^1.3.1", - "@reduxjs/toolkit": "^1.9.5", - "@yudiel/react-qr-scanner": "^1.1.10", - "@zxing/browser": "^0.1.4", - "axios": "^1.4.0", - "class-variance-authority": "^0.7.0", - "clsx": "^2.0.0", - "curve25519-js": "^0.0.4", - "ionicons": "^7.0.0", - "jsbi": "^4.3.0", - "lucide-react": "^0.263.1", - "react": "^18.2.0", - "react-dom": "^18.2.0", - "react-redux": "^7.2.4", - "react-router": "^5.3.4", - "react-router-dom": "^5.3.4", - "react-toastify": "^9.1.3", - "redux": "^4.2.1", - "redux-persist": "^6.0.0", - "redux-thunk": "^2.4.2", - "tailwind-merge": "^1.14.0", - "tailwindcss-animate": "^1.0.6", - "vite-plugin-wasm": "^3.2.2" - }, - "devDependencies": { - "@babel/cli": "^7.22.10", - "@babel/core": "^7.22.10", - "@babel/plugin-syntax-bigint": "^7.8.3", - "@babel/preset-env": "^7.22.10", - "@capacitor/cli": "5.2.2", - "@peculiar/webcrypto": "^1.4.3", - "@testing-library/jest-dom": "^5.16.5", - "@testing-library/react": "^14.0.0", - "@testing-library/user-event": "^14.4.3", - "@types/react": "^18.0.27", - "@types/react-dom": "^18.0.10", - "@types/react-redux": "^7.1.25", - "@types/react-router": "^5.1.20", - "@types/react-router-dom": "^5.3.3", - "@vitejs/plugin-legacy": "^4.0.2", - "@vitejs/plugin-react": "^4.0.1", - "autoprefixer": "^10.4.15", - "babel-plugin-transform-bigint-to-jsbi": "^1.0.3", - "cypress": "^12.7.0", - "eslint": "^8.35.0", - "eslint-plugin-react": "^7.32.2", - "jest": "^29.6.2", - "jsdom": "^22.1.0", - "postcss": "^8.4.28", - "prettier": "^3.0.2", - "tailwindcss": "^3.3.3", - "typescript": "^5.1.6", - "vite": "^4.3.9", - "vitest": "^0.34.1" - } - }, - "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/@adobe/css-tools": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.2.0.tgz", - "integrity": "sha512-E09FiIft46CmH5Qnjb0wsW54/YQd69LsxeKUOWawmws1XWvyFGURnAChH0mlr7YPFR1ofwvUQfcL0J3lMxXqPA==", - "dev": true - }, - "node_modules/@alloc/quick-lru": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", - "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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/cli": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/cli/-/cli-7.22.10.tgz", - "integrity": "sha512-rM9ZMmaII630zGvtMtQ3P4GyHs28CHLYE9apLG7L8TgaSqcfoIGrlLSLsh4Q8kDTdZQQEXZm1M0nQtOvU/2heg==", - "dev": true, - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.17", - "commander": "^4.0.1", - "convert-source-map": "^1.1.0", - "fs-readdir-recursive": "^1.1.0", - "glob": "^7.2.0", - "make-dir": "^2.1.0", - "slash": "^2.0.0" - }, - "bin": { - "babel": "bin/babel.js", - "babel-external-helpers": "bin/babel-external-helpers.js" - }, - "engines": { - "node": ">=6.9.0" - }, - "optionalDependencies": { - "@nicolo-ribaudo/chokidar-2": "2.1.8-no-fsevents.3", - "chokidar": "^3.4.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/cli/node_modules/commander": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/@babel/cli/node_modules/make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "dependencies": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@babel/cli/node_modules/pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/@babel/cli/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/@babel/cli/node_modules/slash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", - "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/@babel/code-frame": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.10.tgz", - "integrity": "sha512-/KKIMG4UEL35WmI9OlvMhurwtytjvXoFcGNrOvyG9zIzA8YmPjVtIZUf7b05+TPO7G7/GEmLHDaoCgACHl9hhA==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.22.10", - "chalk": "^2.4.2" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "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": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "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": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "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": { - "color-name": "1.1.3" - } - }, - "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, - "engines": { - "node": ">=0.8.0" - } - }, - "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, - "engines": { - "node": ">=4" - } - }, - "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": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "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.10", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.10.tgz", - "integrity": "sha512-fTmqbbUBAwCcre6zPzNngvsI0aNrPZe77AeqvDxWM9Nm+04RrJ3CAmGHA9f7lJQY6ZMhRztNemy4uslDxTX4Qw==", - "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.10", - "@babel/parser": "^7.22.10", - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.10", - "@babel/types": "^7.22.10", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "node_modules/@babel/core/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/@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-compilation-targets/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/@babel/helper-create-class-features-plugin": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.10.tgz", - "integrity": "sha512-5IBb77txKYQPpOEdUdIhBx8VrZyDCQ+H82H0+5dX1TmuscP5vJKEE3cKurjtIw/vFwzbVH48VweE78kVDBrqjA==", - "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-class-features-plugin/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/@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-create-regexp-features-plugin/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/@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.10", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.10.tgz", - "integrity": "sha512-a41J4NW8HyZa1I1vAndrraTlPZ/eZoga2ZgS7fEr0tZJGVU4xqdE80CEm0CcNjha5EZ8fTBYLKHF0kqDUuAwQw==", - "dev": true, - "dependencies": { - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.10", - "@babel/types": "^7.22.10" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.10.tgz", - "integrity": "sha512-78aUtVcT7MUscr0K5mIEnkwxPE0MaxkR5RxRwuHaQ+JuU5AmTPhY+do2mdzVTnIJJpyBglql2pehuBIWHug+WQ==", - "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/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": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "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": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "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": { - "color-name": "1.1.3" - } - }, - "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, - "engines": { - "node": ">=0.8.0" - } - }, - "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, - "engines": { - "node": ">=4" - } - }, - "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": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/parser": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.10.tgz", - "integrity": "sha512-lNbdGsQb9ekfsnjFGhEiF4hfFqGgfOP3H3d27re3n+CGhNuTSUEQdfWk556sTLNTloczcdM5TYF2LhzmDQKyvQ==", - "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.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.10.tgz", - "integrity": "sha512-eueE8lvKVzq5wIObKK/7dvoeKJ+xc6TvRn6aysIjS6pSCeLy7S/eVi7pEQknZqyqvzaNKdDtem8nUNTBgDVR2g==", - "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.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.5.tgz", - "integrity": "sha512-SPToJ5eYZLxlnp1UzdARpOGeC2GbHvr9d/UV0EukuVx8atktg194oe+C5BqQ8jRTkgLRVOPYeXRSBg1IlMoVRA==", - "dev": true, - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.22.5", - "@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.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.5.tgz", - "integrity": "sha512-0MC3ppTB1AMxd8fXjSrbPa7LT9hrImt+/fcj+Pg5YMD7UQyWp/02+JWpdnCymmsXwIx5Z+sYn1bwCn4ZJNvhqQ==", - "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.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.5.tgz", - "integrity": "sha512-X4hhm7FRnPgd4nDA4b/5V280xCx6oL7Oob5+9qVS5C13Zq4bh1qq7LU0GgRU6b5dBWBvhGaXYVB4AcN6+ol6vg==", - "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.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.5.tgz", - "integrity": "sha512-DuCRB7fu8MyTLbEQd1ew3R85nx/88yMoqo2uPSjevMj3yoN7CDM8jkgrY0wmVxfJZyJ/B9fE1iq7EQppWQmR5A==", - "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.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.5.tgz", - "integrity": "sha512-MQQOUW1KL8X0cDWfbwYP+TbVbZm16QmQXJQ+vndPtH/BoO0lOKpVoEDMI7+PskYxH+IiE0tS8xZye0qr1lGzSA==", - "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.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.5.tgz", - "integrity": "sha512-B4pzOXj+ONRmuaQTg05b3y/4DuFz3WcCNAXPLb2Q0GT0TrGKGxNKV4jwsXts+StaM0LQczZbOpj8o1DLPDJIiA==", - "dev": true, - "dependencies": { - "@babel/helper-module-transforms": "^7.22.5", - "@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.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.5.tgz", - "integrity": "sha512-emtEpoaTMsOs6Tzz+nbmcePl6AKVtS1yC4YNAeMun9U8YCsgadPNxnOPQ8GhHFB2qdx+LZu9LgoC0Lthuu05DQ==", - "dev": true, - "dependencies": { - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-module-transforms": "^7.22.5", - "@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.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.5.tgz", - "integrity": "sha512-6CF8g6z1dNYZ/VXok5uYkkBBICHZPiGEl7oDnAx2Mt1hlHVHOSIKWJaXHjQJA5VB43KZnXZDIexMchY4y2PGdA==", - "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.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.5.tgz", - "integrity": "sha512-NbslED1/6M+sXiwwtcAB/nieypGw02Ejf4KtDeMkCEpP6gWFMX1wI9WKYua+4oBneCCEmulOkRpwywypVZzs/g==", - "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.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.5.tgz", - "integrity": "sha512-Kk3lyDmEslH9DnvCDA1s1kkd3YWQITiBOHngOtDL9Pt6BZjzqb6hiOlb8VfjiiQJ2unmegBqZu0rx5RxJb5vmQ==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.22.5", - "@babel/helper-compilation-targets": "^7.22.5", - "@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.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.5.tgz", - "integrity": "sha512-pH8orJahy+hzZje5b8e2QIlBWQvGpelS76C63Z+jhZKsmzfNaPQ+LaW6dcJ9bxTpo1mtXbgHwy765Ro3jftmUg==", - "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.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.10.tgz", - "integrity": "sha512-MMkQqZAZ+MGj+jGTG3OTuhKeBpNcO+0oCEbrGNEaOmiEn+1MzRyQlYsruGiU8RTK3zV6XwrVJTmwiDOyYK6J9g==", - "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.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.5.tgz", - "integrity": "sha512-/9xnaTTJcVoBtSSmrVyhtSvO3kbqS2ODoh2juEU72c3aYonNF0OMGiaz2gjukyKM2wBBYJP38S4JiE0Wfb5VMQ==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-create-class-features-plugin": "^7.22.5", - "@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-react-jsx-self": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.22.5.tgz", - "integrity": "sha512-nTh2ogNUtxbiSbxaT4Ds6aXnXEipHweN9YRgOX/oNXdf0cCrGn/+2LozFa3lnPV5D90MkjhgckCPBrsoSc1a7g==", - "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-react-jsx-source": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.22.5.tgz", - "integrity": "sha512-yIiRO6yobeEIaI0RTbIr8iAK9FcBHLtZq0S89ZPjDLQXBA4xvghaKqI0etp/tF3htTM0sazJKKLz9oEiGRtu7w==", - "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-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.10", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.22.10.tgz", - "integrity": "sha512-riHpLb1drNkpLlocmSyEg4oYJIQFeXAK/d7rI6mbD0XsvoTOOweXDmQPG/ErxsEhWk3rl3Q/3F6RFQlVFS8m0A==", - "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.10", - "@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.5", - "@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.5", - "@babel/plugin-transform-exponentiation-operator": "^7.22.5", - "@babel/plugin-transform-export-namespace-from": "^7.22.5", - "@babel/plugin-transform-for-of": "^7.22.5", - "@babel/plugin-transform-function-name": "^7.22.5", - "@babel/plugin-transform-json-strings": "^7.22.5", - "@babel/plugin-transform-literals": "^7.22.5", - "@babel/plugin-transform-logical-assignment-operators": "^7.22.5", - "@babel/plugin-transform-member-expression-literals": "^7.22.5", - "@babel/plugin-transform-modules-amd": "^7.22.5", - "@babel/plugin-transform-modules-commonjs": "^7.22.5", - "@babel/plugin-transform-modules-systemjs": "^7.22.5", - "@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.5", - "@babel/plugin-transform-numeric-separator": "^7.22.5", - "@babel/plugin-transform-object-rest-spread": "^7.22.5", - "@babel/plugin-transform-object-super": "^7.22.5", - "@babel/plugin-transform-optional-catch-binding": "^7.22.5", - "@babel/plugin-transform-optional-chaining": "^7.22.10", - "@babel/plugin-transform-parameters": "^7.22.5", - "@babel/plugin-transform-private-methods": "^7.22.5", - "@babel/plugin-transform-private-property-in-object": "^7.22.5", - "@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.10", - "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-env/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/@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/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.10", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.10.tgz", - "integrity": "sha512-21t/fkKLMZI4pqP2wlmsQAWnYW1PDyKyyUV4vCi+B25ydmdaYTKXPwCj0BzSUnZf4seIiYvSA3jcZ3gdsMFkLQ==", - "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.10", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.10.tgz", - "integrity": "sha512-Q/urqV4pRByiNNpb/f5OSv28ZlGJiFiiTh+GAHktbIrkPhPbl90+uW6SmpoLyZqutrg9AEaEf3Q/ZBRHBXgxig==", - "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.10", - "@babel/types": "^7.22.10", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/types": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.10.tgz", - "integrity": "sha512-obaoigiLrlDZ7TUQln/8m4mSqIW2QFeOrCQc9r+xsaHGNoplVNYlRVpsfE8Vj35GEm2ZH4ZhrNYogs/3fj85kg==", - "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/@capacitor-community/barcode-scanner": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@capacitor-community/barcode-scanner/-/barcode-scanner-4.0.1.tgz", - "integrity": "sha512-acuhDU2mqskSeCIQMc5TGNnDszXXs4IqEES+3C2JDiq+MkJMTr+B2Dhq4k55hlkRFMOumMhlnbr2R9G6qyFPhw==", - "dependencies": { - "@zxing/browser": "^0.1.3", - "@zxing/library": "^0.20.0" - }, - "peerDependencies": { - "@capacitor/core": "^5.0.0" - } - }, - "node_modules/@capacitor/app": { - "version": "5.0.6", - "resolved": "https://registry.npmjs.org/@capacitor/app/-/app-5.0.6.tgz", - "integrity": "sha512-6ZXVdnNmaYILasC/RjQw+yfTmq2ZO7Q3v5lFcDVfq3PFGnybyYQh+RstBrYri+376OmXOXxBD7E6UxBhrMzXGA==", - "peerDependencies": { - "@capacitor/core": "^5.0.0" - } - }, - "node_modules/@capacitor/camera": { - "version": "5.0.6", - "resolved": "https://registry.npmjs.org/@capacitor/camera/-/camera-5.0.6.tgz", - "integrity": "sha512-X9WhbFz3dGv58JyfoAFGk/KN0oacEA+ReZkRc+JMRef0GUDfzlqEhqY4kP0i9nKH2koOFNdq4Pmya/Wu3mQXMg==", - "peerDependencies": { - "@capacitor/core": "^5.0.0" - } - }, - "node_modules/@capacitor/cli": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/@capacitor/cli/-/cli-5.2.2.tgz", - "integrity": "sha512-h/cefX3sefLcmd4VI2h+fNIYKWH1QCUACWAH8bkdJ+aEL+x2xYbGlqeW6Belb3E2Uvu9OA+cz7YVDnNRcjyQyw==", - "dev": true, - "dependencies": { - "@ionic/cli-framework-output": "^2.2.5", - "@ionic/utils-fs": "^3.1.6", - "@ionic/utils-subprocess": "^2.1.11", - "@ionic/utils-terminal": "^2.3.3", - "commander": "^9.3.0", - "debug": "^4.3.4", - "env-paths": "^2.2.0", - "kleur": "^4.1.4", - "native-run": "^1.7.2", - "open": "^8.4.0", - "plist": "^3.0.5", - "prompts": "^2.4.2", - "rimraf": "^4.4.1", - "semver": "^7.3.7", - "tar": "^6.1.11", - "tslib": "^2.4.0", - "xml2js": "^0.5.0" - }, - "bin": { - "cap": "bin/capacitor", - "capacitor": "bin/capacitor" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@capacitor/core": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/@capacitor/core/-/core-5.2.2.tgz", - "integrity": "sha512-3jKECZC5+YD2rljMZm1e/K3AYyoxUmLDZCyofTPbRYPBSI0wJh5ZCkX+XIGzNM0o/Wokl3Voa1JB8xsLC0MPxA==", - "dependencies": { - "tslib": "^2.1.0" - } - }, - "node_modules/@capacitor/haptics": { - "version": "5.0.6", - "resolved": "https://registry.npmjs.org/@capacitor/haptics/-/haptics-5.0.6.tgz", - "integrity": "sha512-UrMcR7p2X10ql4VLlowUuH/VckTeu0lj+RQpekxox14uxDmu5AGIFDK/iDTi8W6QZkxTJRZK6sbCjgwYgNJ7Pw==", - "peerDependencies": { - "@capacitor/core": "^5.0.0" - } - }, - "node_modules/@capacitor/keyboard": { - "version": "5.0.6", - "resolved": "https://registry.npmjs.org/@capacitor/keyboard/-/keyboard-5.0.6.tgz", - "integrity": "sha512-9GewAa/y2Hwkdw/Be8MTdiAjrFZ7TPDKpR44M0Y/0QMnK+mBbgzcoZ/UkuumWv6e2F1IAI+VY5eYVQHDeZcRoA==", - "peerDependencies": { - "@capacitor/core": "^5.0.0" - } - }, - "node_modules/@capacitor/status-bar": { - "version": "5.0.6", - "resolved": "https://registry.npmjs.org/@capacitor/status-bar/-/status-bar-5.0.6.tgz", - "integrity": "sha512-7od8CxsBnot1XMK3IeOkproFL4hgoKoWAc3pwUvmDOkQsXoxwQm4SR9mLwQavv1XfxtHbFV9Ukd7FwMxOPSViw==", - "peerDependencies": { - "@capacitor/core": "^5.0.0" - } - }, - "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/@cypress/request": { - "version": "2.88.12", - "resolved": "https://registry.npmjs.org/@cypress/request/-/request-2.88.12.tgz", - "integrity": "sha512-tOn+0mDZxASFM+cuAP9szGUGPI1HwWVSvdzm7V4cCsPdFTx6qMj29CwaQmRAMIEhORIUBFBsYROYJcveK4uOjA==", - "dev": true, - "dependencies": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "http-signature": "~1.3.6", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "performance-now": "^2.1.0", - "qs": "~6.10.3", - "safe-buffer": "^5.1.2", - "tough-cookie": "^4.1.3", - "tunnel-agent": "^0.6.0", - "uuid": "^8.3.2" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/@cypress/request/node_modules/form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 0.12" - } - }, - "node_modules/@cypress/xvfb": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@cypress/xvfb/-/xvfb-1.2.4.tgz", - "integrity": "sha512-skbBzPggOVYCbnGgV+0dmBdW/s77ZkAOXIC1knS8NagwDjBrNC1LuXtQJeiN6l+m7lzmHtaoUw/ctJKdqkG57Q==", - "dev": true, - "dependencies": { - "debug": "^3.1.0", - "lodash.once": "^4.1.1" - } - }, - "node_modules/@cypress/xvfb/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/@esbuild/android-arm": { - "version": "0.18.19", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.19.tgz", - "integrity": "sha512-1uOoDurJYh5MNqPqpj3l/TQCI1V25BXgChEldCB7D6iryBYqYKrbZIhYO5AI9fulf66sM8UJpc3UcCly2Tv28w==", - "cpu": [ - "arm" - ], - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-arm64": { - "version": "0.18.19", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.19.tgz", - "integrity": "sha512-4+jkUFQxZkQfQOOxfGVZB38YUWHMJX2ihZwF+2nh8m7bHdWXpixiurgGRN3c/KMSwlltbYI0/i929jwBRMFzbA==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-x64": { - "version": "0.18.19", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.19.tgz", - "integrity": "sha512-ae5sHYiP/Ogj2YNrLZbWkBmyHIDOhPgpkGvFnke7XFGQldBDWvc/AyYwSLpNuKw9UNkgnLlB/jPpnBmlF3G9Bg==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/darwin-arm64": { - "version": "0.18.19", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.19.tgz", - "integrity": "sha512-HIpQvNQWFYROmWDANMRL+jZvvTQGOiTuwWBIuAsMaQrnStedM+nEKJBzKQ6bfT9RFKH2wZ+ej+DY7+9xHBTFPg==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/darwin-x64": { - "version": "0.18.19", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.19.tgz", - "integrity": "sha512-m6JdvXJQt0thNLIcWOeG079h2ivhYH4B5sVCgqb/B29zTcFd7EE8/J1nIUHhdtwGeItdUeqKaqqb4towwxvglQ==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/freebsd-arm64": { - "version": "0.18.19", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.19.tgz", - "integrity": "sha512-G0p4EFMPZhGn/xVNspUyMQbORH3nlKTV0bFNHPIwLraBuAkTeMyxNviTe0ZXUbIXQrR1lrwniFjNFU4s+x7veQ==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/freebsd-x64": { - "version": "0.18.19", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.19.tgz", - "integrity": "sha512-hBxgRlG42+W+j/1/cvlnSa+3+OBKeDCyO7OG2ICya1YJaSCYfSpuG30KfOnQHI7Ytgu4bRqCgrYXxQEzy0zM5Q==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-arm": { - "version": "0.18.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.19.tgz", - "integrity": "sha512-qtWyoQskfJlb9MD45mvzCEKeO4uCnDZ7lPFeNqbfaaJHqBiH9qA5Vu2EuckqYZuFMJWy1l4dxTf9NOulCVfUjg==", - "cpu": [ - "arm" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-arm64": { - "version": "0.18.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.19.tgz", - "integrity": "sha512-X8g33tczY0GsJq3lhyBrjnFtaKjWVpp1gMq5IlF9BQJ3TUfSK74nQnz9mRIEejmcV+OIYn6bkOJeUaU1Knrljg==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-ia32": { - "version": "0.18.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.19.tgz", - "integrity": "sha512-SAkRWJgb+KN+gOhmbiE6/wu23D6HRcGQi15cB13IVtBZZgXxygTV5GJlUAKLQ5Gcx0gtlmt+XIxEmSqA6sZTOw==", - "cpu": [ - "ia32" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-loong64": { - "version": "0.18.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.19.tgz", - "integrity": "sha512-YLAslaO8NsB9UOxBchos82AOMRDbIAWChwDKfjlGrHSzS3v1kxce7dGlSTsrb0PJwo1KYccypN3VNjQVLtz7LA==", - "cpu": [ - "loong64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-mips64el": { - "version": "0.18.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.19.tgz", - "integrity": "sha512-vSYFtlYds/oTI8aflEP65xo3MXChMwBOG1eWPGGKs/ev9zkTeXVvciU+nifq8J1JYMz+eQ4J9JDN0O2RKF8+1Q==", - "cpu": [ - "mips64el" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-ppc64": { - "version": "0.18.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.19.tgz", - "integrity": "sha512-tgG41lRVwlzqO9tv9l7aXYVw35BxKXLtPam1qALScwSqPivI8hjkZLNH0deaaSCYCFT9cBIdB+hUjWFlFFLL9A==", - "cpu": [ - "ppc64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-riscv64": { - "version": "0.18.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.19.tgz", - "integrity": "sha512-EgBZFLoN1S5RuB4cCJI31pBPsjE1nZ+3+fHRjguq9Ibrzo29bOLSBcH1KZJvRNh5qtd+fcYIGiIUia8Jw5r1lQ==", - "cpu": [ - "riscv64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-s390x": { - "version": "0.18.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.19.tgz", - "integrity": "sha512-q1V1rtHRojAzjSigZEqrcLkpfh5K09ShCoIsdTakozVBnM5rgV58PLFticqDp5UJ9uE0HScov9QNbbl8HBo6QQ==", - "cpu": [ - "s390x" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-x64": { - "version": "0.18.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.19.tgz", - "integrity": "sha512-D0IiYjpZRXxGZLQfsydeAD7ZWqdGyFLBj5f2UshJpy09WPs3qizDCsEr8zyzcym6Woj/UI9ZzMIXwvoXVtyt0A==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/netbsd-x64": { - "version": "0.18.19", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.19.tgz", - "integrity": "sha512-3tt3SOS8L3D54R8oER41UdDshlBIAjYhdWRPiZCTZ1E41+shIZBpTjaW5UaN/jD1ENE/Ok5lkeqhoNMbxstyxw==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/openbsd-x64": { - "version": "0.18.19", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.19.tgz", - "integrity": "sha512-MxbhcuAYQPlfln1EMc4T26OUoeg/YQc6wNoEV8xvktDKZhLtBxjkoeESSo9BbPaGKhAPzusXYj5n8n5A8iZSrA==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/sunos-x64": { - "version": "0.18.19", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.19.tgz", - "integrity": "sha512-m0/UOq1wj25JpWqOJxoWBRM9VWc3c32xiNzd+ERlYstUZ6uwx5SZsQUtkiFHaYmcaoj+f6+Tfcl7atuAz3idwQ==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-arm64": { - "version": "0.18.19", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.19.tgz", - "integrity": "sha512-L4vb6pcoB1cEcXUHU6EPnUhUc4+/tcz4OqlXTWPcSQWxegfmcOprhmIleKKwmMNQVc4wrx/+jB7tGkjjDmiupg==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-ia32": { - "version": "0.18.19", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.19.tgz", - "integrity": "sha512-rQng7LXSKdrDlNDb7/v0fujob6X0GAazoK/IPd9C3oShr642ri8uIBkgM37/l8B3Rd5sBQcqUXoDdEy75XC/jg==", - "cpu": [ - "ia32" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-x64": { - "version": "0.18.19", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.19.tgz", - "integrity": "sha512-z69jhyG20Gq4QL5JKPLqUT+eREuqnDAFItLbza4JCmpvUnIlY73YNjd5djlO7kBiiZnvTnJuAbOjIoZIOa1GjA==", - "cpu": [ - "x64" - ], - "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.6.2", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.6.2.tgz", - "integrity": "sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==", - "dev": true, - "engines": { - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" - } - }, - "node_modules/@eslint/eslintrc": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.1.tgz", - "integrity": "sha512-9t7ZA7NGGK8ckelF0PQCfcxIUzs1Md5rrO6U/c+FIQNanea5UZC0wqKXH4vHBccmu4ZJgZ2idtPeW7+Q2npOEA==", - "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/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", - "dev": true, - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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.46.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.46.0.tgz", - "integrity": "sha512-a8TLtmPi8xzPkCbp/OGFUo5yhRkHM2Ko9kOWP4znJr0WAhWyThaw3PnwX4vOTWOAMsV2uRt32PPDcEz63esSaA==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.10.tgz", - "integrity": "sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==", - "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/@ionic/cli-framework-output": { - "version": "2.2.6", - "resolved": "https://registry.npmjs.org/@ionic/cli-framework-output/-/cli-framework-output-2.2.6.tgz", - "integrity": "sha512-YLPRwnk5Lw0XQ9pKWG+p2KoR5HjMBigZ6yv+/XtL3TGOnCS1+oAz56ABbAORCjTWhSJQisr8APNFiELAecY6QA==", - "dev": true, - "dependencies": { - "@ionic/utils-terminal": "2.3.4", - "debug": "^4.0.0", - "tslib": "^2.0.1" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@ionic/core": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/@ionic/core/-/core-7.2.2.tgz", - "integrity": "sha512-KD+dZrrIpKs1BlE3Ffp05yrejSvurUhr0OWP2P/NRax5Dld8wSZj+ETOMkV8uiIPbOTOUbLaAQ7m5ZXduMCYhQ==", - "dependencies": { - "@stencil/core": "^3.4.0", - "ionicons": "7.1.0", - "tslib": "^2.1.0" - } - }, - "node_modules/@ionic/core/node_modules/ionicons": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/ionicons/-/ionicons-7.1.0.tgz", - "integrity": "sha512-iE4GuEdEHARJpp0sWL7WJZCzNCf5VxpNRhAjW0fLnZPnNL5qZOJUcfup2Z2Ty7Jk8Q5hacrHfGEB1lCwOdXqGg==", - "dependencies": { - "@stencil/core": "^2.18.0" - } - }, - "node_modules/@ionic/core/node_modules/ionicons/node_modules/@stencil/core": { - "version": "2.22.3", - "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.22.3.tgz", - "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==", - "bin": { - "stencil": "bin/stencil" - }, - "engines": { - "node": ">=12.10.0", - "npm": ">=6.0.0" - } - }, - "node_modules/@ionic/react": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/@ionic/react/-/react-7.2.2.tgz", - "integrity": "sha512-QFvLTCw/9/7aBFooRUZFD/pIOLgMO5E7AzW9DeJoyjenVp3TBbhKvlz275+2Z4Nmj82nXMZs2xWnmuzgweb2sQ==", - "dependencies": { - "@ionic/core": "7.2.2", - "ionicons": "^7.0.0", - "tslib": "*" - }, - "peerDependencies": { - "react": ">=16.8.6", - "react-dom": ">=16.8.6" - } - }, - "node_modules/@ionic/react-router": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/@ionic/react-router/-/react-router-7.2.2.tgz", - "integrity": "sha512-WSr5K1CUO4irE2TdXR8R818iuG1iEGveJeEZ0oPqjqBlKh2EiFzNjJWbu1r0lXGArUtXTTqJ0WLhxKTRyJCY/g==", - "dependencies": { - "@ionic/react": "7.2.2", - "tslib": "*" - }, - "peerDependencies": { - "react": ">=16.8.6", - "react-dom": ">=16.8.6", - "react-router": "^5.0.1", - "react-router-dom": "^5.0.1" - } - }, - "node_modules/@ionic/utils-array": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/@ionic/utils-array/-/utils-array-2.1.6.tgz", - "integrity": "sha512-0JZ1Zkp3wURnv8oq6Qt7fMPo5MpjbLoUoa9Bu2Q4PJuSDWM8H8gwF3dQO7VTeUj3/0o1IB1wGkFWZZYgUXZMUg==", - "dev": true, - "dependencies": { - "debug": "^4.0.0", - "tslib": "^2.0.1" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@ionic/utils-fs": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/@ionic/utils-fs/-/utils-fs-3.1.7.tgz", - "integrity": "sha512-2EknRvMVfhnyhL1VhFkSLa5gOcycK91VnjfrTB0kbqkTFCOXyXgVLI5whzq7SLrgD9t1aqos3lMMQyVzaQ5gVA==", - "dev": true, - "dependencies": { - "@types/fs-extra": "^8.0.0", - "debug": "^4.0.0", - "fs-extra": "^9.0.0", - "tslib": "^2.0.1" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@ionic/utils-object": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/@ionic/utils-object/-/utils-object-2.1.6.tgz", - "integrity": "sha512-vCl7sl6JjBHFw99CuAqHljYJpcE88YaH2ZW4ELiC/Zwxl5tiwn4kbdP/gxi2OT3MQb1vOtgAmSNRtusvgxI8ww==", - "dev": true, - "dependencies": { - "debug": "^4.0.0", - "tslib": "^2.0.1" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@ionic/utils-process": { - "version": "2.1.11", - "resolved": "https://registry.npmjs.org/@ionic/utils-process/-/utils-process-2.1.11.tgz", - "integrity": "sha512-Uavxn+x8j3rDlZEk1X7YnaN6wCgbCwYQOeIjv/m94i1dzslqWhqIHEqxEyeE8HsT5Negboagg7GtQiABy+BLbA==", - "dev": true, - "dependencies": { - "@ionic/utils-object": "2.1.6", - "@ionic/utils-terminal": "2.3.4", - "debug": "^4.0.0", - "signal-exit": "^3.0.3", - "tree-kill": "^1.2.2", - "tslib": "^2.0.1" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@ionic/utils-stream": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/@ionic/utils-stream/-/utils-stream-3.1.6.tgz", - "integrity": "sha512-4+Kitey1lTA1yGtnigeYNhV/0tggI3lWBMjC7tBs1K9GXa/q7q4CtOISppdh8QgtOhrhAXS2Igp8rbko/Cj+lA==", - "dev": true, - "dependencies": { - "debug": "^4.0.0", - "tslib": "^2.0.1" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@ionic/utils-subprocess": { - "version": "2.1.12", - "resolved": "https://registry.npmjs.org/@ionic/utils-subprocess/-/utils-subprocess-2.1.12.tgz", - "integrity": "sha512-N05Y+dIXBHofKWJTheCMzVqmgY9wFmZcRv/LdNnfXaaA/mxLTyGxQYeig8fvQXTtDafb/siZXcrTkmQ+y6n3Yg==", - "dev": true, - "dependencies": { - "@ionic/utils-array": "2.1.6", - "@ionic/utils-fs": "3.1.7", - "@ionic/utils-process": "2.1.11", - "@ionic/utils-stream": "3.1.6", - "@ionic/utils-terminal": "2.3.4", - "cross-spawn": "^7.0.3", - "debug": "^4.0.0", - "tslib": "^2.0.1" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@ionic/utils-terminal": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/@ionic/utils-terminal/-/utils-terminal-2.3.4.tgz", - "integrity": "sha512-cEiMFl3jklE0sW60r8JHH3ijFTwh/jkdEKWbylSyExQwZ8pPuwoXz7gpkWoJRLuoRHHSvg+wzNYyPJazIHfoJA==", - "dev": true, - "dependencies": { - "@types/slice-ansi": "^4.0.0", - "debug": "^4.0.0", - "signal-exit": "^3.0.3", - "slice-ansi": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "tslib": "^2.0.1", - "untildify": "^4.0.0", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "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/load-nyc-config/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/@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.2", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.6.2.tgz", - "integrity": "sha512-0N0yZof5hi44HAR2pPS+ikJ3nzKNoZdVu8FffRf3wy47I7Dm7etk/3KetMdRUqzVd16V4O2m2ISpNTbnIuqy1w==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.1", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^29.6.2", - "jest-util": "^29.6.2", - "slash": "^3.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/core": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.6.2.tgz", - "integrity": "sha512-Oj+5B+sDMiMWLhPFF+4/DvHOf+U10rgvCLGPHP8Xlsy/7QxS51aU/eBngudHlJXnaWD5EohAgJ4js+T6pa+zOg==", - "dev": true, - "dependencies": { - "@jest/console": "^29.6.2", - "@jest/reporters": "^29.6.2", - "@jest/test-result": "^29.6.2", - "@jest/transform": "^29.6.2", - "@jest/types": "^29.6.1", - "@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.5.0", - "jest-config": "^29.6.2", - "jest-haste-map": "^29.6.2", - "jest-message-util": "^29.6.2", - "jest-regex-util": "^29.4.3", - "jest-resolve": "^29.6.2", - "jest-resolve-dependencies": "^29.6.2", - "jest-runner": "^29.6.2", - "jest-runtime": "^29.6.2", - "jest-snapshot": "^29.6.2", - "jest-util": "^29.6.2", - "jest-validate": "^29.6.2", - "jest-watcher": "^29.6.2", - "micromatch": "^4.0.4", - "pretty-format": "^29.6.2", - "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": "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/@jest/core/node_modules/pretty-format": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.6.2.tgz", - "integrity": "sha512-1q0oC8eRveTg5nnBEWMXAU2qpv65Gnuf2eCQzSjxpWFkPaPARwqZZDGuNE0zPAZfTCHzIk3A8dIjwlQKKLphyg==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.6.0", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/core/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/@jest/environment": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.6.2.tgz", - "integrity": "sha512-AEcW43C7huGd/vogTddNNTDRpO6vQ2zaQNrttvWV18ArBx9Z56h7BIsXkNFJVOO4/kblWEQz30ckw0+L3izc+Q==", - "dev": true, - "dependencies": { - "@jest/fake-timers": "^29.6.2", - "@jest/types": "^29.6.1", - "@types/node": "*", - "jest-mock": "^29.6.2" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/expect": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.6.2.tgz", - "integrity": "sha512-m6DrEJxVKjkELTVAztTLyS/7C92Y2b0VYqmDROYKLLALHn8T/04yPs70NADUYPrV3ruI+H3J0iUIuhkjp7vkfg==", - "dev": true, - "dependencies": { - "expect": "^29.6.2", - "jest-snapshot": "^29.6.2" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/expect-utils": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.6.2.tgz", - "integrity": "sha512-6zIhM8go3RV2IG4aIZaZbxwpOzz3ZiM23oxAlkquOIole+G6TrbeXnykxWYlqF7kz2HlBjdKtca20x9atkEQYg==", - "dev": true, - "dependencies": { - "jest-get-type": "^29.4.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/fake-timers": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.6.2.tgz", - "integrity": "sha512-euZDmIlWjm1Z0lJ1D0f7a0/y5Kh/koLFMUBE5SUYWrmy8oNhJpbTBDAP6CxKnadcMLDoDf4waRYCe35cH6G6PA==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.1", - "@sinonjs/fake-timers": "^10.0.2", - "@types/node": "*", - "jest-message-util": "^29.6.2", - "jest-mock": "^29.6.2", - "jest-util": "^29.6.2" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/globals": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.6.2.tgz", - "integrity": "sha512-cjuJmNDjs6aMijCmSa1g2TNG4Lby/AeU7/02VtpW+SLcZXzOLK2GpN2nLqcFjmhy3B3AoPeQVx7BnyOf681bAw==", - "dev": true, - "dependencies": { - "@jest/environment": "^29.6.2", - "@jest/expect": "^29.6.2", - "@jest/types": "^29.6.1", - "jest-mock": "^29.6.2" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/reporters": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.6.2.tgz", - "integrity": "sha512-sWtijrvIav8LgfJZlrGCdN0nP2EWbakglJY49J1Y5QihcQLfy7ovyxxjJBRXMNltgt4uPtEcFmIMbVshEDfFWw==", - "dev": true, - "dependencies": { - "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^29.6.2", - "@jest/test-result": "^29.6.2", - "@jest/transform": "^29.6.2", - "@jest/types": "^29.6.1", - "@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": "^5.1.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.1.3", - "jest-message-util": "^29.6.2", - "jest-util": "^29.6.2", - "jest-worker": "^29.6.2", - "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/schemas": { - "version": "29.6.0", - "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.0.tgz", - "integrity": "sha512-rxLjXyJBTL4LQeJW3aKo0M/+GkCOXsO+8i9Iu7eDb6KwtP65ayoDsitrdPBtujxQ88k4wI2FNYfa6TOGwSn6cQ==", - "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.0", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.0.tgz", - "integrity": "sha512-oA+I2SHHQGxDCZpbrsCQSoMLb3Bz547JnM+jUr9qEbuw0vQlWZfpPS7CO9J7XiwKicEz9OFn/IYoLkkiUD7bzA==", - "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.2", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.6.2.tgz", - "integrity": "sha512-3VKFXzcV42EYhMCsJQURptSqnyjqCGbtLuX5Xxb6Pm6gUf1wIRIl+mandIRGJyWKgNKYF9cnstti6Ls5ekduqw==", - "dev": true, - "dependencies": { - "@jest/console": "^29.6.2", - "@jest/types": "^29.6.1", - "@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.2", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.6.2.tgz", - "integrity": "sha512-GVYi6PfPwVejO7slw6IDO0qKVum5jtrJ3KoLGbgBWyr2qr4GaxFV6su+ZAjdTX75Sr1DkMFRk09r2ZVa+wtCGw==", - "dev": true, - "dependencies": { - "@jest/test-result": "^29.6.2", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.6.2", - "slash": "^3.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/transform": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.6.2.tgz", - "integrity": "sha512-ZqCqEISr58Ce3U+buNFJYUktLJZOggfyvR+bZMaiV1e8B1SIvJbwZMrYz3gx/KAPn9EXmOmN+uB08yLCjWkQQg==", - "dev": true, - "dependencies": { - "@babel/core": "^7.11.6", - "@jest/types": "^29.6.1", - "@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.2", - "jest-regex-util": "^29.4.3", - "jest-util": "^29.6.2", - "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/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/types": { - "version": "29.6.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.1.tgz", - "integrity": "sha512-tPKQNMPuXgvdOn2/Lg9HNfUvjYVGolt04Hp03f5hAk878uwOLikN+JzeLY0HcVgKgFl9Hs3EIqpu3WX27XNhnw==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.6.0", - "@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/@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==", - "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==", - "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==", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/source-map": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.5.tgz", - "integrity": "sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==", - "devOptional": true, - "peer": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "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==" - }, - "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==", - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "node_modules/@nicolo-ribaudo/chokidar-2": { - "version": "2.1.8-no-fsevents.3", - "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/chokidar-2/-/chokidar-2-2.1.8-no-fsevents.3.tgz", - "integrity": "sha512-s88O1aVtXftvp5bCPB7WnmXc5IwOZZ7YPuwNPt+GtOOXpPvad1LfbmjYv+qII7zP6RU2QGnqve27dnLycEnyEQ==", - "dev": true, - "optional": true - }, - "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.1", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.1.tgz", - "integrity": "sha512-EbqwksQwz9xDRGfDST86whPBgM65E0OH/pCgqW0GBVzO22bNE+NuIbeTb714+IfSjU3aRk47EUvXIb5bTsenKA==", - "engines": { - "node": ">= 16" - }, - "funding": { - "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==", - "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==", - "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==", - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@peculiar/asn1-schema": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/@peculiar/asn1-schema/-/asn1-schema-2.3.6.tgz", - "integrity": "sha512-izNRxPoaeJeg/AyH8hER6s+H7p4itk+03QCa4sbxI3lNdseQYCuxzgsuNK8bTXChtLTjpJz6NmXKA73qLa3rCA==", - "dev": true, - "dependencies": { - "asn1js": "^3.0.5", - "pvtsutils": "^1.3.2", - "tslib": "^2.4.0" - } - }, - "node_modules/@peculiar/json-schema": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/@peculiar/json-schema/-/json-schema-1.1.12.tgz", - "integrity": "sha512-coUfuoMeIB7B8/NMekxaDzLhaYmp0HZNPEjYRm9goRou8UZIC3z21s0sL9AWoCw4EG876QyO3kYrc61WNF9B/w==", - "dev": true, - "dependencies": { - "tslib": "^2.0.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/@peculiar/webcrypto": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@peculiar/webcrypto/-/webcrypto-1.4.3.tgz", - "integrity": "sha512-VtaY4spKTdN5LjJ04im/d/joXuvLbQdgy5Z4DXF4MFZhQ+MTrejbNMkfZBp1Bs3O5+bFqnJgyGdPuZQflvIa5A==", - "dev": true, - "dependencies": { - "@peculiar/asn1-schema": "^2.3.6", - "@peculiar/json-schema": "^1.1.12", - "pvtsutils": "^1.3.2", - "tslib": "^2.5.0", - "webcrypto-core": "^1.7.7" - }, - "engines": { - "node": ">=10.12.0" - } - }, - "node_modules/@reduxjs/toolkit": { - "version": "1.9.5", - "resolved": "https://registry.npmjs.org/@reduxjs/toolkit/-/toolkit-1.9.5.tgz", - "integrity": "sha512-Rt97jHmfTeaxL4swLRNPD/zV4OxTes4la07Xc4hetpUW/vc75t5m1ANyxG6ymnEQ2FsLQsoMlYB2vV1sO3m8tQ==", - "dependencies": { - "immer": "^9.0.21", - "redux": "^4.2.1", - "redux-thunk": "^2.4.2", - "reselect": "^4.1.8" - }, - "peerDependencies": { - "react": "^16.9.0 || ^17.0.0 || ^18", - "react-redux": "^7.2.1 || ^8.0.2" - }, - "peerDependenciesMeta": { - "react": { - "optional": true - }, - "react-redux": { - "optional": true - } - } - }, - "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/@stencil/core": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/@stencil/core/-/core-3.4.2.tgz", - "integrity": "sha512-FAUhUVaakCy29nU2GwO/HQBRV1ihPRvncz3PUc8oR+UJLAxGabTmP8PLY7wvHfbw+Cvi4VXfJFTBvdfDu6iKPQ==", - "bin": { - "stencil": "bin/stencil" - }, - "engines": { - "node": ">=14.10.0", - "npm": ">=6.0.0" - } - }, - "node_modules/@testing-library/dom": { - "version": "9.3.1", - "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-9.3.1.tgz", - "integrity": "sha512-0DGPd9AR3+iDTjGoMpxIkAsUihHZ3Ai6CneU6bRRrffXMgzCdlNk43jTrD2/5LT6CBb3MWTP8v510JzYtahD2w==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/runtime": "^7.12.5", - "@types/aria-query": "^5.0.1", - "aria-query": "5.1.3", - "chalk": "^4.1.0", - "dom-accessibility-api": "^0.5.9", - "lz-string": "^1.5.0", - "pretty-format": "^27.0.2" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/@testing-library/jest-dom": { - "version": "5.17.0", - "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-5.17.0.tgz", - "integrity": "sha512-ynmNeT7asXyH3aSVv4vvX4Rb+0qjOhdNHnO/3vuZNqPmhDpV/+rCSGwQ7bLcmU2cJ4dvoheIO85LQj0IbJHEtg==", - "dev": true, - "dependencies": { - "@adobe/css-tools": "^4.0.1", - "@babel/runtime": "^7.9.2", - "@types/testing-library__jest-dom": "^5.9.1", - "aria-query": "^5.0.0", - "chalk": "^3.0.0", - "css.escape": "^1.5.1", - "dom-accessibility-api": "^0.5.6", - "lodash": "^4.17.15", - "redent": "^3.0.0" - }, - "engines": { - "node": ">=8", - "npm": ">=6", - "yarn": ">=1" - } - }, - "node_modules/@testing-library/jest-dom/node_modules/chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@testing-library/react": { - "version": "14.0.0", - "resolved": "https://registry.npmjs.org/@testing-library/react/-/react-14.0.0.tgz", - "integrity": "sha512-S04gSNJbYE30TlIMLTzv6QCTzt9AqIF5y6s6SzVFILNcNvbV/jU96GeiTPillGQo+Ny64M/5PV7klNYYgv5Dfg==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.12.5", - "@testing-library/dom": "^9.0.0", - "@types/react-dom": "^18.0.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "react": "^18.0.0", - "react-dom": "^18.0.0" - } - }, - "node_modules/@testing-library/user-event": { - "version": "14.4.3", - "resolved": "https://registry.npmjs.org/@testing-library/user-event/-/user-event-14.4.3.tgz", - "integrity": "sha512-kCUc5MEwaEMakkO5x7aoD+DLi02ehmEM2QCGWvNqAS1dV/fAvORWEjnjsEIvml59M7Y5kCkWN6fCCyPOe8OL6Q==", - "dev": true, - "engines": { - "node": ">=12", - "npm": ">=6" - }, - "peerDependencies": { - "@testing-library/dom": ">=7.21.4" - } - }, - "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/@types/aria-query": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.1.tgz", - "integrity": "sha512-XTIieEY+gvJ39ChLcB4If5zHtPxt3Syj5rgZR+e1ctpmK8NjPf0zFqsz4JpLJT0xla9GFDKjy8Cpu331nrmE1Q==", - "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/chai": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.5.tgz", - "integrity": "sha512-mEo1sAde+UCE6b2hxn332f1g1E8WfYRu6p5SvTKr2ZKC1f7gFJXk4h5PyGP9Dt6gCaG8y8XhwnXWC6Iy2cmBng==", - "dev": true - }, - "node_modules/@types/chai-subset": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@types/chai-subset/-/chai-subset-1.3.3.tgz", - "integrity": "sha512-frBecisrNGz+F4T6bcc+NLeolfiojh5FxW2klu669+8BARtyQv2C/GkNW6FUodVe4BroGMP/wER/YDGc7rEllw==", - "dev": true, - "dependencies": { - "@types/chai": "*" - } - }, - "node_modules/@types/fs-extra": { - "version": "8.1.2", - "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-8.1.2.tgz", - "integrity": "sha512-SvSrYXfWSc7R4eqnOzbQF4TZmfpNSM9FrSWLU3EUnWBuyZqNBOrv1B1JA3byUDPUl9z4Ab3jeZG2eDdySlgNMg==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "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/history": { - "version": "4.7.11", - "resolved": "https://registry.npmjs.org/@types/history/-/history-4.7.11.tgz", - "integrity": "sha512-qjDJRrmvBMiTx+jyLxvLfJU7UznFuokDv4f3WRuriHKERccVpFU+8XMQUAbDzoiJCsmexxRExQeMwwCdamSKDA==", - "dev": true - }, - "node_modules/@types/hoist-non-react-statics": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz", - "integrity": "sha512-iMIqiko6ooLrTh1joXodJK5X9xeEALT1kM5G3ZLhD3hszxBdIEd5C75U834D9mLcINgD4OyZf5uQXjkuYydWvA==", - "dependencies": { - "@types/react": "*", - "hoist-non-react-statics": "^3.3.0" - } - }, - "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.3", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.3.tgz", - "integrity": "sha512-1Nq7YrO/vJE/FYnqYyw0FS8LdrjExSgIiHyKg7xPpn+yi8Q4huZryKnkJatN1ZRH89Kw2v33/8ZMB7DuZeSLlA==", - "dev": true, - "dependencies": { - "expect": "^29.0.0", - "pretty-format": "^29.0.0" - } - }, - "node_modules/@types/jest/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/@types/jest/node_modules/pretty-format": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.6.2.tgz", - "integrity": "sha512-1q0oC8eRveTg5nnBEWMXAU2qpv65Gnuf2eCQzSjxpWFkPaPARwqZZDGuNE0zPAZfTCHzIk3A8dIjwlQKKLphyg==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.6.0", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@types/jest/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/@types/node": { - "version": "20.4.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.4.8.tgz", - "integrity": "sha512-0mHckf6D2DiIAzh8fM8f3HQCvMKDpK94YQ0DSVkfWTG9BZleYIWudw9cJxX8oCk9bM+vAkDyujDV6dmKHbvQpg==", - "devOptional": true - }, - "node_modules/@types/prop-types": { - "version": "15.7.5", - "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", - "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==" - }, - "node_modules/@types/react": { - "version": "18.2.18", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.18.tgz", - "integrity": "sha512-da4NTSeBv/P34xoZPhtcLkmZuJ+oYaCxHmyHzwaDQo9RQPBeXV+06gEk2FpqEcsX9XrnNLvRpVh6bdavDSjtiQ==", - "dependencies": { - "@types/prop-types": "*", - "@types/scheduler": "*", - "csstype": "^3.0.2" - } - }, - "node_modules/@types/react-dom": { - "version": "18.2.7", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.7.tgz", - "integrity": "sha512-GRaAEriuT4zp9N4p1i8BDBYmEyfo+xQ3yHjJU4eiK5NDa1RmUZG+unZABUTK4/Ox/M+GaHwb6Ow8rUITrtjszA==", - "dev": true, - "dependencies": { - "@types/react": "*" - } - }, - "node_modules/@types/react-redux": { - "version": "7.1.25", - "resolved": "https://registry.npmjs.org/@types/react-redux/-/react-redux-7.1.25.tgz", - "integrity": "sha512-bAGh4e+w5D8dajd6InASVIyCo4pZLJ66oLb80F9OBLO1gKESbZcRCJpTT6uLXX+HAB57zw1WTdwJdAsewuTweg==", - "dependencies": { - "@types/hoist-non-react-statics": "^3.3.0", - "@types/react": "*", - "hoist-non-react-statics": "^3.3.0", - "redux": "^4.0.0" - } - }, - "node_modules/@types/react-router": { - "version": "5.1.20", - "resolved": "https://registry.npmjs.org/@types/react-router/-/react-router-5.1.20.tgz", - "integrity": "sha512-jGjmu/ZqS7FjSH6owMcD5qpq19+1RS9DeVRqfl1FeBMxTDQAGwlMWOcs52NDoXaNKyG3d1cYQFMs9rCrb88o9Q==", - "dev": true, - "dependencies": { - "@types/history": "^4.7.11", - "@types/react": "*" - } - }, - "node_modules/@types/react-router-dom": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/@types/react-router-dom/-/react-router-dom-5.3.3.tgz", - "integrity": "sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw==", - "dev": true, - "dependencies": { - "@types/history": "^4.7.11", - "@types/react": "*", - "@types/react-router": "*" - } - }, - "node_modules/@types/scheduler": { - "version": "0.16.3", - "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.3.tgz", - "integrity": "sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ==" - }, - "node_modules/@types/sinonjs__fake-timers": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.1.tgz", - "integrity": "sha512-0kSuKjAS0TrGLJ0M/+8MaFkGsQhZpB6pxOmvS3K8FYI72K//YmdfoW9X2qPsAKh1mkwxGD5zib9s1FIFed6E8g==", - "dev": true - }, - "node_modules/@types/sizzle": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.3.tgz", - "integrity": "sha512-JYM8x9EGF163bEyhdJBpR2QX1R5naCJHC8ucJylJ3w9/CVBaskdQ8WqBf8MmQrd1kRvp/a4TS8HJ+bxzR7ZJYQ==", - "dev": true - }, - "node_modules/@types/slice-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-+OpjSaq85gvlZAYINyzKpLeiFkSC4EsC6IIiT6v6TLSU5k5U83fHGj9Lel8oKEXM0HqgrMVCjXPDPVICtxF7EQ==", - "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/testing-library__jest-dom": { - "version": "5.14.9", - "resolved": "https://registry.npmjs.org/@types/testing-library__jest-dom/-/testing-library__jest-dom-5.14.9.tgz", - "integrity": "sha512-FSYhIjFlfOpGSRyVoMBMuS3ws5ehFQODymf3vlI7U1K8c7PHwWwFY7VREfmsuzHSOnoKs/9/Y983ayOs7eRzqw==", - "dev": true, - "dependencies": { - "@types/jest": "*" - } - }, - "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/@types/yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==", - "dev": true, - "optional": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@vitejs/plugin-legacy": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-legacy/-/plugin-legacy-4.1.1.tgz", - "integrity": "sha512-um3gbVouD2Q/g19C0qpDfHwveXDCAHzs8OC3e9g6aXpKoD1H14himgs7wkMnhAynBJy7QqUoZNAXDuqN8zLR2g==", - "dev": true, - "dependencies": { - "@babel/core": "^7.22.9", - "@babel/preset-env": "^7.22.9", - "browserslist": "^4.21.9", - "core-js": "^3.31.1", - "magic-string": "^0.30.1", - "regenerator-runtime": "^0.13.11", - "systemjs": "^6.14.1" - }, - "engines": { - "node": "^14.18.0 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/vitejs/vite?sponsor=1" - }, - "peerDependencies": { - "terser": "^5.4.0", - "vite": "^4.0.0" - } - }, - "node_modules/@vitejs/plugin-legacy/node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", - "dev": true - }, - "node_modules/@vitejs/plugin-react": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.0.4.tgz", - "integrity": "sha512-7wU921ABnNYkETiMaZy7XqpueMnpu5VxvVps13MjmCo+utBdD79sZzrApHawHtVX66cCJQQTXFcjH0y9dSUK8g==", - "dev": true, - "dependencies": { - "@babel/core": "^7.22.9", - "@babel/plugin-transform-react-jsx-self": "^7.22.5", - "@babel/plugin-transform-react-jsx-source": "^7.22.5", - "react-refresh": "^0.14.0" - }, - "engines": { - "node": "^14.18.0 || >=16.0.0" - }, - "peerDependencies": { - "vite": "^4.2.0" - } - }, - "node_modules/@vitest/expect": { - "version": "0.34.1", - "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-0.34.1.tgz", - "integrity": "sha512-q2CD8+XIsQ+tHwypnoCk8Mnv5e6afLFvinVGCq3/BOT4kQdVQmY6rRfyKkwcg635lbliLPqbunXZr+L1ssUWiQ==", - "dev": true, - "dependencies": { - "@vitest/spy": "0.34.1", - "@vitest/utils": "0.34.1", - "chai": "^4.3.7" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/runner": { - "version": "0.34.1", - "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-0.34.1.tgz", - "integrity": "sha512-YfQMpYzDsYB7yqgmlxZ06NI4LurHWfrH7Wy3Pvf/z/vwUSgq1zLAb1lWcItCzQG+NVox+VvzlKQrYEXb47645g==", - "dev": true, - "dependencies": { - "@vitest/utils": "0.34.1", - "p-limit": "^4.0.0", - "pathe": "^1.1.1" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/runner/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/@vitest/runner/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/@vitest/snapshot": { - "version": "0.34.1", - "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-0.34.1.tgz", - "integrity": "sha512-0O9LfLU0114OqdF8lENlrLsnn024Tb1CsS9UwG0YMWY2oGTQfPtkW+B/7ieyv0X9R2Oijhi3caB1xgGgEgclSQ==", - "dev": true, - "dependencies": { - "magic-string": "^0.30.1", - "pathe": "^1.1.1", - "pretty-format": "^29.5.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/snapshot/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/@vitest/snapshot/node_modules/pretty-format": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.6.2.tgz", - "integrity": "sha512-1q0oC8eRveTg5nnBEWMXAU2qpv65Gnuf2eCQzSjxpWFkPaPARwqZZDGuNE0zPAZfTCHzIk3A8dIjwlQKKLphyg==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.6.0", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@vitest/snapshot/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/@vitest/spy": { - "version": "0.34.1", - "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-0.34.1.tgz", - "integrity": "sha512-UT4WcI3EAPUNO8n6y9QoEqynGGEPmmRxC+cLzneFFXpmacivjHZsNbiKD88KUScv5DCHVDgdBsLD7O7s1enFcQ==", - "dev": true, - "dependencies": { - "tinyspy": "^2.1.1" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/utils": { - "version": "0.34.1", - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-0.34.1.tgz", - "integrity": "sha512-/ql9dsFi4iuEbiNcjNHQWXBum7aL8pyhxvfnD9gNtbjR9fUKAjxhj4AA3yfLXg6gJpMGGecvtF8Au2G9y3q47Q==", - "dev": true, - "dependencies": { - "diff-sequences": "^29.4.3", - "loupe": "^2.3.6", - "pretty-format": "^29.5.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/utils/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/@vitest/utils/node_modules/pretty-format": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.6.2.tgz", - "integrity": "sha512-1q0oC8eRveTg5nnBEWMXAU2qpv65Gnuf2eCQzSjxpWFkPaPARwqZZDGuNE0zPAZfTCHzIk3A8dIjwlQKKLphyg==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.6.0", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@vitest/utils/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/@xmldom/xmldom": { - "version": "0.8.10", - "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz", - "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==", - "dev": true, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/@yudiel/react-qr-scanner": { - "version": "1.1.10", - "resolved": "https://registry.npmjs.org/@yudiel/react-qr-scanner/-/react-qr-scanner-1.1.10.tgz", - "integrity": "sha512-+YIHbnocynkkGgyMK8MMkn1NBnJRwJntdm4shQ+linm4NdGdSAavLYxJYwnk2PixZyVu/GZ3Uc2aM0XWlBq+Zw==", - "dependencies": { - "@zxing/library": "^0.20.0" - }, - "peerDependencies": { - "react": "^18.2.0", - "react-dom": "^18.2.0" - } - }, - "node_modules/@zxing/browser": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/@zxing/browser/-/browser-0.1.4.tgz", - "integrity": "sha512-WYjaav7St4sj/u/Km2llE4NU2Pq3JFIWnczr0tmyCC1KUlp08rV3qpu7iiEB4kOx/CgcCzrSebNnSmFt5B3IFg==", - "optionalDependencies": { - "@zxing/text-encoding": "^0.9.0" - }, - "peerDependencies": { - "@zxing/library": "^0.20.0" - } - }, - "node_modules/@zxing/library": { - "version": "0.20.0", - "resolved": "https://registry.npmjs.org/@zxing/library/-/library-0.20.0.tgz", - "integrity": "sha512-6Ev6rcqVjMakZFIDvbUf0dtpPGeZMTfyxYg4HkVWioWeN7cRcnUWT3bU6sdohc82O1nPXcjq6WiGfXX2Pnit6A==", - "dependencies": { - "ts-custom-error": "^3.2.1" - }, - "engines": { - "node": ">= 10.4.0" - }, - "optionalDependencies": { - "@zxing/text-encoding": "~0.9.0" - } - }, - "node_modules/@zxing/text-encoding": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/@zxing/text-encoding/-/text-encoding-0.9.0.tgz", - "integrity": "sha512-U/4aVJ2mxI0aDNI8Uq0wEhMgY+u4CNtEb0om3+y3+niDAsoTCOB33UF0sxpzqzdqXLqmvc+vZyAt4O8pPdfkwA==", - "optional": true - }, - "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==", - "devOptional": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "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": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "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/ansi-colors": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", - "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "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": "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/any-promise": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", - "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==" - }, - "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==", - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/arch": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", - "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", - "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/arg": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", - "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==" - }, - "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/aria-query": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.1.3.tgz", - "integrity": "sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==", - "dev": true, - "dependencies": { - "deep-equal": "^2.0.5" - } - }, - "node_modules/array-buffer-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", - "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "is-array-buffer": "^3.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array-includes": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.6.tgz", - "integrity": "sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "get-intrinsic": "^1.1.3", - "is-string": "^1.0.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flat": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz", - "integrity": "sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "es-shim-unscopables": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flatmap": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz", - "integrity": "sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "es-shim-unscopables": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.tosorted": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.1.tgz", - "integrity": "sha512-pZYPXPRl2PqWcsUs6LOMn+1f1532nEoPTYowBtqLwAW+W8vSVhkIGnmOX1t/UQjD6YGI0vcD2B1U7ZFGQH9jnQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "es-shim-unscopables": "^1.0.0", - "get-intrinsic": "^1.1.3" - } - }, - "node_modules/arraybuffer.prototype.slice": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.1.tgz", - "integrity": "sha512-09x0ZWFEjj4WD8PDbykUwo3t9arLn8NIzmmYEJFpYekOAQjpkGSyrQhNoRTcwwcFRu+ycWF78QZ63oWTqSjBcw==", - "dev": true, - "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "get-intrinsic": "^1.2.1", - "is-array-buffer": "^3.0.2", - "is-shared-array-buffer": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "dev": true, - "dependencies": { - "safer-buffer": "~2.1.0" - } - }, - "node_modules/asn1js": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/asn1js/-/asn1js-3.0.5.tgz", - "integrity": "sha512-FVnvrKJwpt9LP2lAMl8qZswRNm3T4q9CON+bxldk2iwk3FFpuwhx2FfinyitizWHsVYyaY+y5JzDR0rCMV5yTQ==", - "dev": true, - "dependencies": { - "pvtsutils": "^1.3.2", - "pvutils": "^1.1.3", - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", - "dev": true, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/assertion-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", - "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/astral-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/async": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", - "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", - "dev": true - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" - }, - "node_modules/at-least-node": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", - "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", - "dev": true, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/autoprefixer": { - "version": "10.4.15", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.15.tgz", - "integrity": "sha512-KCuPB8ZCIqFdA4HwKXsvz7j6gvSDNhDP7WnUjBleRkKjPdvCmHFuQ77ocavI8FT6NdvlBnE2UFr2H4Mycn8Vew==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/autoprefixer" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "browserslist": "^4.21.10", - "caniuse-lite": "^1.0.30001520", - "fraction.js": "^4.2.0", - "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", - "postcss-value-parser": "^4.2.0" - }, - "bin": { - "autoprefixer": "bin/autoprefixer" - }, - "engines": { - "node": "^10 || ^12 || >=14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/aws4": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.12.0.tgz", - "integrity": "sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==", - "dev": true - }, - "node_modules/axios": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.4.0.tgz", - "integrity": "sha512-S4XCWMEmzvo64T9GfvQDOXgYRDJ/wsSZc7Jvdgx5u1sd0JwsuPLqb3SYmusag+edF6ziyMensPVqLTSc1PiSEA==", - "dependencies": { - "follow-redirects": "^1.15.0", - "form-data": "^4.0.0", - "proxy-from-env": "^1.1.0" - } - }, - "node_modules/babel-jest": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.6.2.tgz", - "integrity": "sha512-BYCzImLos6J3BH/+HvUCHG1dTf2MzmAB4jaVxHV+29RZLjR29XuYTmsf2sdDwkrb+FczkGo3kOhE7ga6sI0P4A==", - "dev": true, - "dependencies": { - "@jest/transform": "^29.6.2", - "@types/babel__core": "^7.1.14", - "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^29.5.0", - "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-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-jest-hoist": { - "version": "29.5.0", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.5.0.tgz", - "integrity": "sha512-zSuuuAlTMT4mzLj2nPnUm6fsE6270vdOfnpbJ+RmruU75UhLFvL0N2NgI7xpeS7NaB6hGqmd5pVpGTDYvi4Q3w==", - "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-corejs2/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/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-bigint-to-jsbi": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-bigint-to-jsbi/-/babel-plugin-transform-bigint-to-jsbi-1.0.3.tgz", - "integrity": "sha512-6O9dFuJSJYUziMd4OE4o/11kW2HBCC5qmF/liddDs/+pmm6iEB5BIlNQgiowjGokOR5ne7ynSi9MZt6uGPmusg==", - "dev": true, - "peerDependencies": { - "@babel/core": "^7.17.2", - "@babel/plugin-syntax-bigint": "^7.8.3" - } - }, - "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.5.0", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.5.0.tgz", - "integrity": "sha512-JOMloxOqdiBSxMAzjRaH023/vvcaSaec49zvg+2LmNsktC7ei39LTJGw02J+9uUtTZUq6xbLyJ4dxe9sSmIuAg==", - "dev": true, - "dependencies": { - "babel-plugin-jest-hoist": "^29.5.0", - "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/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, - "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/bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", - "dev": true, - "dependencies": { - "tweetnacl": "^0.14.3" - } - }, - "node_modules/big-integer": { - "version": "1.6.51", - "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz", - "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==", - "dev": true, - "engines": { - "node": ">=0.6" - } - }, - "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==", - "engines": { - "node": ">=8" - } - }, - "node_modules/blob-util": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/blob-util/-/blob-util-2.0.2.tgz", - "integrity": "sha512-T7JQa+zsXXEa6/8ZhHcQEW1UFfVM49Ts65uBkFL6fz2QmrElqmbajIDJvuA0tEhRe5eIjpV9ZF+0RfZR9voJFQ==", - "dev": true - }, - "node_modules/bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", - "dev": true - }, - "node_modules/bplist-parser": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.3.2.tgz", - "integrity": "sha512-apC2+fspHGI3mMKj+dGevkGo/tCqVB8jMb6i+OX+E29p0Iposz07fABkRIfVUPNd5A5VbuOz1bZbnmkKLYF+wQ==", - "dev": true, - "dependencies": { - "big-integer": "1.6.x" - }, - "engines": { - "node": ">= 5.10.0" - } - }, - "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==", - "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==", - "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/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": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "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.1.13" - } - }, - "node_modules/buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "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==", - "devOptional": true - }, - "node_modules/cac": { - "version": "6.7.14", - "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", - "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/cachedir": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/cachedir/-/cachedir-2.4.0.tgz", - "integrity": "sha512-9EtFOZR8g22CL7BWjJ9BUx1+A/djkofnyW3aOXZORNW2kxoUpx2h+uN2cOqwPmFhnpVmxg+KW2OjOSgChTEvsQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "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==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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-css": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", - "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", - "engines": { - "node": ">= 6" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001522", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001522.tgz", - "integrity": "sha512-TKiyTVZxJGhsTszLuzb+6vUZSjVOAhClszBr2Ta2k9IwtNBT/4dzmL6aywt0HCgEZlmwJzXJd8yNiob6HgwTRg==", - "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/caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", - "dev": true - }, - "node_modules/chai": { - "version": "4.3.7", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.7.tgz", - "integrity": "sha512-HLnAzZ2iupm25PlN0xFreAlBA5zaBSv3og0DdeGA4Ar6h6rJ3A0rolRUKJhSF2V10GZKDgWF/VmAEsNWjCRB+A==", - "dev": true, - "dependencies": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.2", - "deep-eql": "^4.1.2", - "get-func-name": "^2.0.0", - "loupe": "^2.3.1", - "pathval": "^1.1.1", - "type-detect": "^4.0.5" - }, - "engines": { - "node": ">=4" - } - }, - "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/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/check-error": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", - "integrity": "sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/check-more-types": { - "version": "2.24.0", - "resolved": "https://registry.npmjs.org/check-more-types/-/check-more-types-2.24.0.tgz", - "integrity": "sha512-Pj779qHxV2tuapviy1bSZNEL1maXr13bPYpsvSDB68HlYcYuhlDrmGd63i0JHMCLKzc7rUSNIrpdJlhVlNwrxA==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "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/chokidar/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==", - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "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/class-variance-authority": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/class-variance-authority/-/class-variance-authority-0.7.0.tgz", - "integrity": "sha512-jFI8IQw4hczaL4ALINxqLEXQbWcNjoSkloa4IaufXCJr6QawJyw7tuRysRsrE8w2p/4gGaxKIt/hX3qz/IbD1A==", - "dependencies": { - "clsx": "2.0.0" - }, - "funding": { - "url": "https://joebell.co.uk" - } - }, - "node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, - "dependencies": { - "restore-cursor": "^3.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "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/cli-truncate": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", - "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", - "dev": true, - "dependencies": { - "slice-ansi": "^3.0.0", - "string-width": "^4.2.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cli-truncate/node_modules/slice-ansi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", - "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "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/clsx": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.0.0.tgz", - "integrity": "sha512-rQ1+kcj+ttHG0MKVGBUXwayCCF1oh39BF5COIpRzuCEv8Mwjv0XucrI2ExNTOn9IlLifGClWQcU9BrZORvtw6Q==", - "engines": { - "node": ">=6" - } - }, - "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": "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/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/colorette": { - "version": "2.0.20", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", - "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", - "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==", - "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/commander": { - "version": "9.5.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", - "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", - "dev": true, - "engines": { - "node": "^12.20.0 || >=14" - } - }, - "node_modules/common-tags": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz", - "integrity": "sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==", - "dev": true, - "engines": { - "node": ">=4.0.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==" - }, - "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": { - "version": "3.32.0", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.32.0.tgz", - "integrity": "sha512-rd4rYZNlF3WuoYuRIDEmbR/ga9CeuWX9U05umAvgrrZoHY4Z++cp/xwPQMvUpBB4Ag6J8KfD80G0zwCyaSxDww==", - "dev": true, - "hasInstallScript": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, - "node_modules/core-js-compat": { - "version": "3.32.0", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.32.0.tgz", - "integrity": "sha512-7a9a3D1k4UCVKnLhrgALyFcP7YCsLOQIxPd0dKjf/6GuPcgyiGP70ewWdCGrSK7evyhymi0qO4EqCmSJofDeYw==", - "dev": true, - "dependencies": { - "browserslist": "^4.21.9" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, - "node_modules/core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", - "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/css.escape": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz", - "integrity": "sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==", - "dev": true - }, - "node_modules/cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "bin": { - "cssesc": "bin/cssesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/cssstyle": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-3.0.0.tgz", - "integrity": "sha512-N4u2ABATi3Qplzf0hWbVCdjenim8F3ojEXpBDF5hBpjzW182MjNGLqfmQ0SkSPeQ+V86ZXgeH8aXj6kayd4jgg==", - "dev": true, - "dependencies": { - "rrweb-cssom": "^0.6.0" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/csstype": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz", - "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==" - }, - "node_modules/curve25519-js": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/curve25519-js/-/curve25519-js-0.0.4.tgz", - "integrity": "sha512-axn2UMEnkhyDUPWOwVKBMVIzSQy2ejH2xRGy1wq81dqRwApXfIzfbE3hIX0ZRFBIihf/KDqK158DLwESu4AK1w==" - }, - "node_modules/cypress": { - "version": "12.17.3", - "resolved": "https://registry.npmjs.org/cypress/-/cypress-12.17.3.tgz", - "integrity": "sha512-/R4+xdIDjUSLYkiQfwJd630S81KIgicmQOLXotFxVXkl+eTeVO+3bHXxdi5KBh/OgC33HWN33kHX+0tQR/ZWpg==", - "dev": true, - "hasInstallScript": true, - "dependencies": { - "@cypress/request": "^2.88.11", - "@cypress/xvfb": "^1.2.4", - "@types/node": "^16.18.39", - "@types/sinonjs__fake-timers": "8.1.1", - "@types/sizzle": "^2.3.2", - "arch": "^2.2.0", - "blob-util": "^2.0.2", - "bluebird": "^3.7.2", - "buffer": "^5.6.0", - "cachedir": "^2.3.0", - "chalk": "^4.1.0", - "check-more-types": "^2.24.0", - "cli-cursor": "^3.1.0", - "cli-table3": "~0.6.1", - "commander": "^6.2.1", - "common-tags": "^1.8.0", - "dayjs": "^1.10.4", - "debug": "^4.3.4", - "enquirer": "^2.3.6", - "eventemitter2": "6.4.7", - "execa": "4.1.0", - "executable": "^4.1.1", - "extract-zip": "2.0.1", - "figures": "^3.2.0", - "fs-extra": "^9.1.0", - "getos": "^3.2.1", - "is-ci": "^3.0.0", - "is-installed-globally": "~0.4.0", - "lazy-ass": "^1.6.0", - "listr2": "^3.8.3", - "lodash": "^4.17.21", - "log-symbols": "^4.0.0", - "minimist": "^1.2.8", - "ospath": "^1.2.2", - "pretty-bytes": "^5.6.0", - "proxy-from-env": "1.0.0", - "request-progress": "^3.0.0", - "semver": "^7.5.3", - "supports-color": "^8.1.1", - "tmp": "~0.2.1", - "untildify": "^4.0.0", - "yauzl": "^2.10.0" - }, - "bin": { - "cypress": "bin/cypress" - }, - "engines": { - "node": "^14.0.0 || ^16.0.0 || >=18.0.0" - } - }, - "node_modules/cypress/node_modules/@types/node": { - "version": "16.18.39", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.39.tgz", - "integrity": "sha512-8q9ZexmdYYyc5/cfujaXb4YOucpQxAV4RMG0himLyDUOEr8Mr79VrqsFI+cQ2M2h89YIuy95lbxuYjxT4Hk4kQ==", - "dev": true - }, - "node_modules/cypress/node_modules/commander": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", - "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/cypress/node_modules/proxy-from-env": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.0.0.tgz", - "integrity": "sha512-F2JHgJQ1iqwnHDcQjVBsq3n/uoaFL+iPW/eAeL7kVxy/2RrWaN4WroKjjvbsoRtv0ftelNyC01bjRhn/bhcf4A==", - "dev": true - }, - "node_modules/cypress/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/dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", - "dev": true, - "dependencies": { - "assert-plus": "^1.0.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/data-urls": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-4.0.0.tgz", - "integrity": "sha512-/mMTei/JXPqvFqQtfyTowxmJVwr2PVAeCcDxyFf6LhoOu/09TX2OX3kb2wzi4DMXcfj4OItwDOnhl5oziPnT6g==", - "dev": true, - "dependencies": { - "abab": "^2.0.6", - "whatwg-mimetype": "^3.0.0", - "whatwg-url": "^12.0.0" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/dayjs": { - "version": "1.11.9", - "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.9.tgz", - "integrity": "sha512-QvzAURSbQ0pKdIye2txOzNaHmxtUBXerpY0FJsFXUMKbIZeFm5ht1LS/jFsrncjnmtv8HsG0W2g6c0zUjZWmpA==", - "dev": true - }, - "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/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-eql": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.3.tgz", - "integrity": "sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==", - "dev": true, - "dependencies": { - "type-detect": "^4.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/deep-equal": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.2.tgz", - "integrity": "sha512-xjVyBf0w5vH0I42jdAZzOKVldmPgSulmiyPRywoyq7HXC9qdgo17kxJE+rdnif5Tz6+pIrpJI8dCpMNLIGkUiA==", - "dev": true, - "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "call-bind": "^1.0.2", - "es-get-iterator": "^1.1.3", - "get-intrinsic": "^1.2.1", - "is-arguments": "^1.1.1", - "is-array-buffer": "^3.0.2", - "is-date-object": "^1.0.5", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "isarray": "^2.0.5", - "object-is": "^1.1.5", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.5.0", - "side-channel": "^1.0.4", - "which-boxed-primitive": "^1.0.2", - "which-collection": "^1.0.1", - "which-typed-array": "^1.1.9" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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/define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/define-properties": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", - "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", - "dev": true, - "dependencies": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", - "engines": { - "node": ">=0.4.0" - } - }, - "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/didyoumean": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", - "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==" - }, - "node_modules/diff-sequences": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.4.3.tgz", - "integrity": "sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA==", - "dev": true, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/dlv": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", - "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==" - }, - "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/dom-accessibility-api": { - "version": "0.5.16", - "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz", - "integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==", - "dev": true - }, - "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/ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", - "dev": true, - "dependencies": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "node_modules/electron-to-chromium": { - "version": "1.4.486", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.486.tgz", - "integrity": "sha512-9zn9/2lbMGY/mFhoUymD9ODYdLY3zjUW/IW9ihU/sJVeIlD70m2aAb86S35aRGF+iwqLuQP25epruayZjKNjBw==", - "dev": true - }, - "node_modules/elementtree": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/elementtree/-/elementtree-0.1.7.tgz", - "integrity": "sha512-wkgGT6kugeQk/P6VZ/f4T+4HB41BVgNBq5CDIZVbQ02nvTVqAiVTbskxxu3eA/X96lMlfYOwnLQpN2v5E1zDEg==", - "dev": true, - "dependencies": { - "sax": "1.1.4" - }, - "engines": { - "node": ">= 0.4.0" - } - }, - "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/end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "dependencies": { - "once": "^1.4.0" - } - }, - "node_modules/enquirer": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.4.1.tgz", - "integrity": "sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==", - "dev": true, - "dependencies": { - "ansi-colors": "^4.1.1", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "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-paths": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", - "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "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/es-abstract": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.1.tgz", - "integrity": "sha512-ioRRcXMO6OFyRpyzV3kE1IIBd4WG5/kltnzdxSCqoP8CMGs/Li+M1uF5o7lOkZVFjDs+NLesthnF66Pg/0q0Lw==", - "dev": true, - "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "arraybuffer.prototype.slice": "^1.0.1", - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-set-tostringtag": "^2.0.1", - "es-to-primitive": "^1.2.1", - "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.2.1", - "get-symbol-description": "^1.0.0", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.5", - "is-array-buffer": "^3.0.2", - "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.10", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.3", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.5.0", - "safe-array-concat": "^1.0.0", - "safe-regex-test": "^1.0.0", - "string.prototype.trim": "^1.2.7", - "string.prototype.trimend": "^1.0.6", - "string.prototype.trimstart": "^1.0.6", - "typed-array-buffer": "^1.0.0", - "typed-array-byte-length": "^1.0.0", - "typed-array-byte-offset": "^1.0.0", - "typed-array-length": "^1.0.4", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.10" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/es-get-iterator": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", - "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "has-symbols": "^1.0.3", - "is-arguments": "^1.1.1", - "is-map": "^2.0.2", - "is-set": "^2.0.2", - "is-string": "^1.0.7", - "isarray": "^2.0.5", - "stop-iteration-iterator": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/es-set-tostringtag": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", - "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-shim-unscopables": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", - "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", - "dev": true, - "dependencies": { - "has": "^1.0.3" - } - }, - "node_modules/es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "dev": true, - "dependencies": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/esbuild": { - "version": "0.18.19", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.19.tgz", - "integrity": "sha512-ra3CaIKCzJp5bU5BDfrCc0FRqKj71fQi+gbld0aj6lN0ifuX2fWJYPgLVLGwPfA+ruKna+OWwOvf/yHj6n+i0g==", - "hasInstallScript": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - }, - "optionalDependencies": { - "@esbuild/android-arm": "0.18.19", - "@esbuild/android-arm64": "0.18.19", - "@esbuild/android-x64": "0.18.19", - "@esbuild/darwin-arm64": "0.18.19", - "@esbuild/darwin-x64": "0.18.19", - "@esbuild/freebsd-arm64": "0.18.19", - "@esbuild/freebsd-x64": "0.18.19", - "@esbuild/linux-arm": "0.18.19", - "@esbuild/linux-arm64": "0.18.19", - "@esbuild/linux-ia32": "0.18.19", - "@esbuild/linux-loong64": "0.18.19", - "@esbuild/linux-mips64el": "0.18.19", - "@esbuild/linux-ppc64": "0.18.19", - "@esbuild/linux-riscv64": "0.18.19", - "@esbuild/linux-s390x": "0.18.19", - "@esbuild/linux-x64": "0.18.19", - "@esbuild/netbsd-x64": "0.18.19", - "@esbuild/openbsd-x64": "0.18.19", - "@esbuild/sunos-x64": "0.18.19", - "@esbuild/win32-arm64": "0.18.19", - "@esbuild/win32-ia32": "0.18.19", - "@esbuild/win32-x64": "0.18.19" - } - }, - "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": "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": { - "version": "8.46.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.46.0.tgz", - "integrity": "sha512-cIO74PvbW0qU8e0mIvk5IV3ToWdCq5FYG6gWPHHkx6gNdjlbAYvtfHmlCMXxjcoVaIdwy/IAt3+mDkZkfvb2Dg==", - "dev": true, - "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.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.2", - "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-plugin-react": { - "version": "7.33.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.33.1.tgz", - "integrity": "sha512-L093k0WAMvr6VhNwReB8VgOq5s2LesZmrpPdKz/kZElQDzqS7G7+DnKoqT+w4JwuiGeAhAvHO0fvy0Eyk4ejDA==", - "dev": true, - "dependencies": { - "array-includes": "^3.1.6", - "array.prototype.flatmap": "^1.3.1", - "array.prototype.tosorted": "^1.1.1", - "doctrine": "^2.1.0", - "estraverse": "^5.3.0", - "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "minimatch": "^3.1.2", - "object.entries": "^1.1.6", - "object.fromentries": "^2.0.6", - "object.hasown": "^1.1.2", - "object.values": "^1.1.6", - "prop-types": "^15.8.1", - "resolve": "^2.0.0-next.4", - "semver": "^6.3.1", - "string.prototype.matchall": "^4.0.8" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" - } - }, - "node_modules/eslint-plugin-react/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eslint-plugin-react/node_modules/resolve": { - "version": "2.0.0-next.4", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.4.tgz", - "integrity": "sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==", - "dev": true, - "dependencies": { - "is-core-module": "^2.9.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/eslint-plugin-react/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/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-visitor-keys": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.2.tgz", - "integrity": "sha512-8drBzUEyZ2llkpCA67iYrgEssKDUu68V8ChqqOfFupIaG/LCVPUT+CoGJpT77zJprs4T/W7p07LP7zAIMuweVw==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint/node_modules/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", - "dev": true, - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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/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/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/eventemitter2": { - "version": "6.4.7", - "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-6.4.7.tgz", - "integrity": "sha512-tYUSVOGeQPKt/eC1ABfhHy5Xd96N3oIijJvN3O9+TsC28T5V9yX9oEfEK5faP0EFSNVOG97qtAS68GBrQB2hDg==", - "dev": true - }, - "node_modules/execa": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", - "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/executable": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/executable/-/executable-4.1.1.tgz", - "integrity": "sha512-8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg==", - "dev": true, - "dependencies": { - "pify": "^2.2.0" - }, - "engines": { - "node": ">=4" - } - }, - "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.2", - "resolved": "https://registry.npmjs.org/expect/-/expect-29.6.2.tgz", - "integrity": "sha512-iAErsLxJ8C+S02QbLAwgSGSezLQK+XXRDt8IuFXFpwCNw2ECmzZSmjKcCaFVp5VRMk+WAvz6h6jokzEzBFZEuA==", - "dev": true, - "dependencies": { - "@jest/expect-utils": "^29.6.2", - "@types/node": "*", - "jest-get-type": "^29.4.3", - "jest-matcher-utils": "^29.6.2", - "jest-message-util": "^29.6.2", - "jest-util": "^29.6.2" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "node_modules/extract-zip": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", - "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", - "dev": true, - "dependencies": { - "debug": "^4.1.1", - "get-stream": "^5.1.0", - "yauzl": "^2.10.0" - }, - "bin": { - "extract-zip": "cli.js" - }, - "engines": { - "node": ">= 10.17.0" - }, - "optionalDependencies": { - "@types/yauzl": "^2.9.1" - } - }, - "node_modules/extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", - "dev": true, - "engines": [ - "node >=0.6.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==", - "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==", - "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==", - "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/fd-slicer": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", - "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", - "dev": true, - "dependencies": { - "pend": "~1.2.0" - } - }, - "node_modules/figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, - "dependencies": { - "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/figures/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/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==", - "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/flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", - "dev": true, - "dependencies": { - "flatted": "^3.1.0", - "rimraf": "^3.0.2" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/flat-cache/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/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/follow-redirects": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", - "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], - "engines": { - "node": ">=4.0" - }, - "peerDependenciesMeta": { - "debug": { - "optional": true - } - } - }, - "node_modules/for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", - "dev": true, - "dependencies": { - "is-callable": "^1.1.3" - } - }, - "node_modules/forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", - "dev": true, - "engines": { - "node": "*" - } - }, - "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==", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/fraction.js": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.1.tgz", - "integrity": "sha512-/KxoyCnPM0GwYI4NN0Iag38Tqt+od3/mLuguepLgCAKPn0ZhC544nssAW0tG2/00zXEYl9W+7hwAIpLHo6Oc7Q==", - "dev": true, - "engines": { - "node": "*" - }, - "funding": { - "type": "patreon", - "url": "https://www.patreon.com/infusion" - } - }, - "node_modules/fs-extra": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", - "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", - "dev": true, - "dependencies": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/fs-minipass/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/fs-minipass/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/fs-readdir-recursive": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz", - "integrity": "sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==", - "dev": true - }, - "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==" - }, - "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "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/function.prototype.name": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", - "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.0", - "functions-have-names": "^1.2.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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-func-name": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", - "integrity": "sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig==", - "dev": true, - "engines": { - "node": "*" - } - }, - "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==", - "dev": true, - "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/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": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "dev": true, - "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/getos": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/getos/-/getos-3.2.1.tgz", - "integrity": "sha512-U56CfOK17OKgTVqozZjUKNdkfEv6jk5WISBJ8SHoagjE6L69zOwl3Z+O8myjY9MEW3i2HPWQBt/LTbCgcC973Q==", - "dev": true, - "dependencies": { - "async": "^3.2.0" - } - }, - "node_modules/getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", - "dev": true, - "dependencies": { - "assert-plus": "^1.0.0" - } - }, - "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==", - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/global-dirs": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz", - "integrity": "sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==", - "dev": true, - "dependencies": { - "ini": "2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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/globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", - "dev": true, - "dependencies": { - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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/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-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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/has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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==", - "dev": true, - "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==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", - "dev": true, - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/history": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/history/-/history-4.10.1.tgz", - "integrity": "sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==", - "dependencies": { - "@babel/runtime": "^7.1.2", - "loose-envify": "^1.2.0", - "resolve-pathname": "^3.0.0", - "tiny-invariant": "^1.0.2", - "tiny-warning": "^1.0.0", - "value-equal": "^1.0.1" - } - }, - "node_modules/hoist-non-react-statics": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", - "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", - "dependencies": { - "react-is": "^16.7.0" - } - }, - "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/http-signature": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.3.6.tgz", - "integrity": "sha512-3adrsD6zqo4GsTqtO7FyrejHNv+NgiIfAfv68+jVlFmSr9OGy7zrxONceFRLKvnnZA5jbxQBX1u9PpB6Wi32Gw==", - "dev": true, - "dependencies": { - "assert-plus": "^1.0.0", - "jsprim": "^2.0.2", - "sshpk": "^1.14.1" - }, - "engines": { - "node": ">=0.10" - } - }, - "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": "1.1.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", - "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", - "dev": true, - "engines": { - "node": ">=8.12.0" - } - }, - "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": "9.0.21", - "resolved": "https://registry.npmjs.org/immer/-/immer-9.0.21.tgz", - "integrity": "sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA==", - "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-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==", - "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": "2.0.0", - "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", - "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/internal-slot": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz", - "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.2.0", - "has": "^1.0.3", - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/ionicons": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/ionicons/-/ionicons-7.1.2.tgz", - "integrity": "sha512-zZ4njAqSP39H8RRvZhJvkHsv7cBjYE/VfInH218Osf2UVxJITSOutTTd25MW+tAXKN5fheYzclUXUsF55JHUDg==", - "dependencies": { - "@stencil/core": "^2.18.0" - } - }, - "node_modules/ionicons/node_modules/@stencil/core": { - "version": "2.22.3", - "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.22.3.tgz", - "integrity": "sha512-kmVA0M/HojwsfkeHsifvHVIYe4l5tin7J5+DLgtl8h6WWfiMClND5K3ifCXXI2ETDNKiEk21p6jql3Fx9o2rng==", - "bin": { - "stencil": "bin/stencil" - }, - "engines": { - "node": ">=12.10.0", - "npm": ">=6.0.0" - } - }, - "node_modules/is-arguments": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", - "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-array-buffer": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", - "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "is-typed-array": "^1.1.10" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", - "dev": true, - "dependencies": { - "has-bigints": "^1.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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==", - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-ci": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz", - "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==", - "dev": true, - "dependencies": { - "ci-info": "^3.2.0" - }, - "bin": { - "is-ci": "bin.js" - } - }, - "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==", - "dependencies": { - "has": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true, - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "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==", - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-installed-globally": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", - "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", - "dev": true, - "dependencies": { - "global-dirs": "^3.0.0", - "is-path-inside": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-map": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", - "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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==", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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-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-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-set": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", - "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", - "dev": true, - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-typed-array": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz", - "integrity": "sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==", - "dev": true, - "dependencies": { - "which-typed-array": "^1.1.11" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", - "dev": true - }, - "node_modules/is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-weakmap": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", - "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakset": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz", - "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, - "dependencies": { - "is-docker": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "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/isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", - "dev": true - }, - "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": "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/istanbul-lib-instrument/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/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-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/jest": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest/-/jest-29.6.2.tgz", - "integrity": "sha512-8eQg2mqFbaP7CwfsTpCxQ+sHzw1WuNWL5UUvjnWP4hx2riGz9fPSzYOaU5q8/GqWn1TfgZIVTqYJygbGbWAANg==", - "dev": true, - "dependencies": { - "@jest/core": "^29.6.2", - "@jest/types": "^29.6.1", - "import-local": "^3.0.2", - "jest-cli": "^29.6.2" - }, - "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.5.0", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.5.0.tgz", - "integrity": "sha512-IFG34IUMUaNBIxjQXF/iu7g6EcdMrGRRxaUSw92I/2g2YC6vCdTltl4nHvt7Ci5nSJwXIkCu8Ka1DKF+X7Z1Ag==", - "dev": true, - "dependencies": { - "execa": "^5.0.0", - "p-limit": "^3.1.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-changed-files/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/jest-changed-files/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/jest-changed-files/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/jest-circus": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.6.2.tgz", - "integrity": "sha512-G9mN+KOYIUe2sB9kpJkO9Bk18J4dTDArNFPwoZ7WKHKel55eKIS/u2bLthxgojwlf9NLCVQfgzM/WsOVvoC6Fw==", - "dev": true, - "dependencies": { - "@jest/environment": "^29.6.2", - "@jest/expect": "^29.6.2", - "@jest/test-result": "^29.6.2", - "@jest/types": "^29.6.1", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "dedent": "^1.0.0", - "is-generator-fn": "^2.0.0", - "jest-each": "^29.6.2", - "jest-matcher-utils": "^29.6.2", - "jest-message-util": "^29.6.2", - "jest-runtime": "^29.6.2", - "jest-snapshot": "^29.6.2", - "jest-util": "^29.6.2", - "p-limit": "^3.1.0", - "pretty-format": "^29.6.2", - "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": "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/jest-circus/node_modules/pretty-format": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.6.2.tgz", - "integrity": "sha512-1q0oC8eRveTg5nnBEWMXAU2qpv65Gnuf2eCQzSjxpWFkPaPARwqZZDGuNE0zPAZfTCHzIk3A8dIjwlQKKLphyg==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.6.0", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-circus/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/jest-cli": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.6.2.tgz", - "integrity": "sha512-TT6O247v6dCEX2UGHGyflMpxhnrL0DNqP2fRTKYm3nJJpCTfXX3GCMQPGFjXDoj0i5/Blp3jriKXFgdfmbYB6Q==", - "dev": true, - "dependencies": { - "@jest/core": "^29.6.2", - "@jest/test-result": "^29.6.2", - "@jest/types": "^29.6.1", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "import-local": "^3.0.2", - "jest-config": "^29.6.2", - "jest-util": "^29.6.2", - "jest-validate": "^29.6.2", - "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-config": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.6.2.tgz", - "integrity": "sha512-VxwFOC8gkiJbuodG9CPtMRjBUNZEHxwfQXmIudSTzFWxaci3Qub1ddTRbFNQlD/zUeaifLndh/eDccFX4wCMQw==", - "dev": true, - "dependencies": { - "@babel/core": "^7.11.6", - "@jest/test-sequencer": "^29.6.2", - "@jest/types": "^29.6.1", - "babel-jest": "^29.6.2", - "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.2", - "jest-environment-node": "^29.6.2", - "jest-get-type": "^29.4.3", - "jest-regex-util": "^29.4.3", - "jest-resolve": "^29.6.2", - "jest-runner": "^29.6.2", - "jest-util": "^29.6.2", - "jest-validate": "^29.6.2", - "micromatch": "^4.0.4", - "parse-json": "^5.2.0", - "pretty-format": "^29.6.2", - "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": "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/jest-config/node_modules/pretty-format": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.6.2.tgz", - "integrity": "sha512-1q0oC8eRveTg5nnBEWMXAU2qpv65Gnuf2eCQzSjxpWFkPaPARwqZZDGuNE0zPAZfTCHzIk3A8dIjwlQKKLphyg==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.6.0", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-config/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/jest-diff": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.6.2.tgz", - "integrity": "sha512-t+ST7CB9GX5F2xKwhwCf0TAR17uNDiaPTZnVymP9lw0lssa9vG+AFyDZoeIHStU3WowFFwT+ky+er0WVl2yGhA==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "diff-sequences": "^29.4.3", - "jest-get-type": "^29.4.3", - "pretty-format": "^29.6.2" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-diff/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/jest-diff/node_modules/pretty-format": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.6.2.tgz", - "integrity": "sha512-1q0oC8eRveTg5nnBEWMXAU2qpv65Gnuf2eCQzSjxpWFkPaPARwqZZDGuNE0zPAZfTCHzIk3A8dIjwlQKKLphyg==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.6.0", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-diff/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/jest-docblock": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.4.3.tgz", - "integrity": "sha512-fzdTftThczeSD9nZ3fzA/4KkHtnmllawWrXO69vtI+L9WjEIuXWs4AmyME7lN5hU7dB0sHhuPfcKofRsUb/2Fg==", - "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.2", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.6.2.tgz", - "integrity": "sha512-MsrsqA0Ia99cIpABBc3izS1ZYoYfhIy0NNWqPSE0YXbQjwchyt6B1HD2khzyPe1WiJA7hbxXy77ZoUQxn8UlSw==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.1", - "chalk": "^4.0.0", - "jest-get-type": "^29.4.3", - "jest-util": "^29.6.2", - "pretty-format": "^29.6.2" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-each/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/jest-each/node_modules/pretty-format": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.6.2.tgz", - "integrity": "sha512-1q0oC8eRveTg5nnBEWMXAU2qpv65Gnuf2eCQzSjxpWFkPaPARwqZZDGuNE0zPAZfTCHzIk3A8dIjwlQKKLphyg==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.6.0", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-each/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/jest-environment-node": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.6.2.tgz", - "integrity": "sha512-YGdFeZ3T9a+/612c5mTQIllvWkddPbYcN2v95ZH24oWMbGA4GGS2XdIF92QMhUhvrjjuQWYgUGW2zawOyH63MQ==", - "dev": true, - "dependencies": { - "@jest/environment": "^29.6.2", - "@jest/fake-timers": "^29.6.2", - "@jest/types": "^29.6.1", - "@types/node": "*", - "jest-mock": "^29.6.2", - "jest-util": "^29.6.2" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-get-type": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.4.3.tgz", - "integrity": "sha512-J5Xez4nRRMjk8emnTpWrlkyb9pfRQQanDrvWHhsR1+VUfbwxi30eVcZFlcdGInRibU4G5LwHXpI7IRHU0CY+gg==", - "dev": true, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-haste-map": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.6.2.tgz", - "integrity": "sha512-+51XleTDAAysvU8rT6AnS1ZJ+WHVNqhj1k6nTvN2PYP+HjU3kqlaKQ1Lnw3NYW3bm2r8vq82X0Z1nDDHZMzHVA==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.1", - "@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.4.3", - "jest-util": "^29.6.2", - "jest-worker": "^29.6.2", - "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.2", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.6.2.tgz", - "integrity": "sha512-aNqYhfp5uYEO3tdWMb2bfWv6f0b4I0LOxVRpnRLAeque2uqOVVMLh6khnTcE2qJ5wAKop0HcreM1btoysD6bPQ==", - "dev": true, - "dependencies": { - "jest-get-type": "^29.4.3", - "pretty-format": "^29.6.2" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-leak-detector/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/jest-leak-detector/node_modules/pretty-format": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.6.2.tgz", - "integrity": "sha512-1q0oC8eRveTg5nnBEWMXAU2qpv65Gnuf2eCQzSjxpWFkPaPARwqZZDGuNE0zPAZfTCHzIk3A8dIjwlQKKLphyg==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.6.0", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-leak-detector/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/jest-matcher-utils": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.6.2.tgz", - "integrity": "sha512-4LiAk3hSSobtomeIAzFTe+N8kL6z0JtF3n6I4fg29iIW7tt99R7ZcIFW34QkX+DuVrf+CUe6wuVOpm7ZKFJzZQ==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "jest-diff": "^29.6.2", - "jest-get-type": "^29.4.3", - "pretty-format": "^29.6.2" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-matcher-utils/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/jest-matcher-utils/node_modules/pretty-format": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.6.2.tgz", - "integrity": "sha512-1q0oC8eRveTg5nnBEWMXAU2qpv65Gnuf2eCQzSjxpWFkPaPARwqZZDGuNE0zPAZfTCHzIk3A8dIjwlQKKLphyg==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.6.0", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-matcher-utils/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/jest-message-util": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.6.2.tgz", - "integrity": "sha512-vnIGYEjoPSuRqV8W9t+Wow95SDp6KPX2Uf7EoeG9G99J2OVh7OSwpS4B6J0NfpEIpfkBNHlBZpA2rblEuEFhZQ==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^29.6.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^29.6.2", - "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": "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/jest-message-util/node_modules/pretty-format": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.6.2.tgz", - "integrity": "sha512-1q0oC8eRveTg5nnBEWMXAU2qpv65Gnuf2eCQzSjxpWFkPaPARwqZZDGuNE0zPAZfTCHzIk3A8dIjwlQKKLphyg==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.6.0", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-message-util/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/jest-mock": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.6.2.tgz", - "integrity": "sha512-hoSv3lb3byzdKfwqCuT6uTscan471GUECqgNYykg6ob0yiAw3zYc7OrPnI9Qv8Wwoa4lC7AZ9hyS4AiIx5U2zg==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.1", - "@types/node": "*", - "jest-util": "^29.6.2" - }, - "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.4.3", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.4.3.tgz", - "integrity": "sha512-O4FglZaMmWXbGHSQInfXewIsd1LMn9p3ZXB/6r4FOkyhX2/iP/soMG98jGvk/A3HAN78+5VWcBGO0BJAPRh4kg==", - "dev": true, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-resolve": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.6.2.tgz", - "integrity": "sha512-G/iQUvZWI5e3SMFssc4ug4dH0aZiZpsDq9o1PtXTV1210Ztyb2+w+ZgQkB3iOiC5SmAEzJBOHWz6Hvrd+QnNPw==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.6.2", - "jest-pnp-resolver": "^1.2.2", - "jest-util": "^29.6.2", - "jest-validate": "^29.6.2", - "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.2", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.6.2.tgz", - "integrity": "sha512-LGqjDWxg2fuQQm7ypDxduLu/m4+4Lb4gczc13v51VMZbVP5tSBILqVx8qfWcsdP8f0G7aIqByIALDB0R93yL+w==", - "dev": true, - "dependencies": { - "jest-regex-util": "^29.4.3", - "jest-snapshot": "^29.6.2" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-runner": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.6.2.tgz", - "integrity": "sha512-wXOT/a0EspYgfMiYHxwGLPCZfC0c38MivAlb2lMEAlwHINKemrttu1uSbcGbfDV31sFaPWnWJPmb2qXM8pqZ4w==", - "dev": true, - "dependencies": { - "@jest/console": "^29.6.2", - "@jest/environment": "^29.6.2", - "@jest/test-result": "^29.6.2", - "@jest/transform": "^29.6.2", - "@jest/types": "^29.6.1", - "@types/node": "*", - "chalk": "^4.0.0", - "emittery": "^0.13.1", - "graceful-fs": "^4.2.9", - "jest-docblock": "^29.4.3", - "jest-environment-node": "^29.6.2", - "jest-haste-map": "^29.6.2", - "jest-leak-detector": "^29.6.2", - "jest-message-util": "^29.6.2", - "jest-resolve": "^29.6.2", - "jest-runtime": "^29.6.2", - "jest-util": "^29.6.2", - "jest-watcher": "^29.6.2", - "jest-worker": "^29.6.2", - "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-runtime": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.6.2.tgz", - "integrity": "sha512-2X9dqK768KufGJyIeLmIzToDmsN0m7Iek8QNxRSI/2+iPFYHF0jTwlO3ftn7gdKd98G/VQw9XJCk77rbTGZnJg==", - "dev": true, - "dependencies": { - "@jest/environment": "^29.6.2", - "@jest/fake-timers": "^29.6.2", - "@jest/globals": "^29.6.2", - "@jest/source-map": "^29.6.0", - "@jest/test-result": "^29.6.2", - "@jest/transform": "^29.6.2", - "@jest/types": "^29.6.1", - "@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.2", - "jest-message-util": "^29.6.2", - "jest-mock": "^29.6.2", - "jest-regex-util": "^29.4.3", - "jest-resolve": "^29.6.2", - "jest-snapshot": "^29.6.2", - "jest-util": "^29.6.2", - "slash": "^3.0.0", - "strip-bom": "^4.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-snapshot": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.6.2.tgz", - "integrity": "sha512-1OdjqvqmRdGNvWXr/YZHuyhh5DeaLp1p/F8Tht/MrMw4Kr1Uu/j4lRG+iKl1DAqUJDWxtQBMk41Lnf/JETYBRA==", - "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.2", - "@jest/transform": "^29.6.2", - "@jest/types": "^29.6.1", - "babel-preset-current-node-syntax": "^1.0.0", - "chalk": "^4.0.0", - "expect": "^29.6.2", - "graceful-fs": "^4.2.9", - "jest-diff": "^29.6.2", - "jest-get-type": "^29.4.3", - "jest-matcher-utils": "^29.6.2", - "jest-message-util": "^29.6.2", - "jest-util": "^29.6.2", - "natural-compare": "^1.4.0", - "pretty-format": "^29.6.2", - "semver": "^7.5.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-snapshot/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/jest-snapshot/node_modules/pretty-format": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.6.2.tgz", - "integrity": "sha512-1q0oC8eRveTg5nnBEWMXAU2qpv65Gnuf2eCQzSjxpWFkPaPARwqZZDGuNE0zPAZfTCHzIk3A8dIjwlQKKLphyg==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.6.0", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-snapshot/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/jest-util": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.6.2.tgz", - "integrity": "sha512-3eX1qb6L88lJNCFlEADKOkjpXJQyZRiavX1INZ4tRnrBVr2COd3RgcTLyUiEXMNBlDU/cgYq6taUS0fExrWW4w==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.1", - "@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-validate": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.6.2.tgz", - "integrity": "sha512-vGz0yMN5fUFRRbpJDPwxMpgSXW1LDKROHfBopAvDcmD6s+B/s8WJrwi+4bfH4SdInBA5C3P3BI19dBtKzx1Arg==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.1", - "camelcase": "^6.2.0", - "chalk": "^4.0.0", - "jest-get-type": "^29.4.3", - "leven": "^3.1.0", - "pretty-format": "^29.6.2" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-validate/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/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/pretty-format": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.6.2.tgz", - "integrity": "sha512-1q0oC8eRveTg5nnBEWMXAU2qpv65Gnuf2eCQzSjxpWFkPaPARwqZZDGuNE0zPAZfTCHzIk3A8dIjwlQKKLphyg==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.6.0", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-validate/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/jest-watcher": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.6.2.tgz", - "integrity": "sha512-GZitlqkMkhkefjfN/p3SJjrDaxPflqxEAv3/ik10OirZqJGYH5rPiIsgVcfof0Tdqg3shQGdEIxDBx+B4tuLzA==", - "dev": true, - "dependencies": { - "@jest/test-result": "^29.6.2", - "@jest/types": "^29.6.1", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "emittery": "^0.13.1", - "jest-util": "^29.6.2", - "string-length": "^4.0.1" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-worker": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.6.2.tgz", - "integrity": "sha512-l3ccBOabTdkng8I/ORCkADz4eSMKejTYv1vB/Z83UiubqhC1oQ5Li6dWCyqOIvSifGjUBxuvxvlm6KGK2DtuAQ==", - "dev": true, - "dependencies": { - "@types/node": "*", - "jest-util": "^29.6.2", - "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/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/jiti": { - "version": "1.19.3", - "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.19.3.tgz", - "integrity": "sha512-5eEbBDQT/jF1xg6l36P+mWGGoH9Spuy0PCdSr2dtWRDGC6ph/w9ZCL4lmESW8f8F7MwT3XKescfP0wnZWAKL9w==", - "bin": { - "jiti": "bin/jiti.js" - } - }, - "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==" - }, - "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/jsbi": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/jsbi/-/jsbi-4.3.0.tgz", - "integrity": "sha512-SnZNcinB4RIcnEyZqFPdGPVgrg2AcnykiBy0sHVJQKHYeaLUvi3Exj+iaPpLnFVkDPZIV4U0yvgC9/R4uEAZ9g==" - }, - "node_modules/jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", - "dev": true - }, - "node_modules/jsdom": { - "version": "22.1.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-22.1.0.tgz", - "integrity": "sha512-/9AVW7xNbsBv6GfWho4TTNjEo9fe6Zhf9O7s0Fhhr3u+awPwAJMKwAMXnkk5vBxflqLW9hTHX/0cs+P3gW+cQw==", - "dev": true, - "dependencies": { - "abab": "^2.0.6", - "cssstyle": "^3.0.0", - "data-urls": "^4.0.0", - "decimal.js": "^10.4.3", - "domexception": "^4.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.4", - "parse5": "^7.1.2", - "rrweb-cssom": "^0.6.0", - "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": "^12.0.1", - "ws": "^8.13.0", - "xml-name-validator": "^4.0.0" - }, - "engines": { - "node": ">=16" - }, - "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-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": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", - "dev": true - }, - "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/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/jsonc-parser": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", - "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", - "dev": true - }, - "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/jsprim": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-2.0.2.tgz", - "integrity": "sha512-gqXddjPqQ6G40VdnI6T6yObEC+pDNvyP95wdQhkWkg7crHH3km5qP1FsOXEkzEQwnz6gz5qGTn1c2Y52wP3OyQ==", - "dev": true, - "engines": [ - "node >=0.6.0" - ], - "dependencies": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" - } - }, - "node_modules/jsx-ast-utils": { - "version": "3.3.5", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", - "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", - "dev": true, - "dependencies": { - "array-includes": "^3.1.6", - "array.prototype.flat": "^1.3.1", - "object.assign": "^4.1.4", - "object.values": "^1.1.6" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/kleur": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", - "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/lazy-ass": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/lazy-ass/-/lazy-ass-1.6.0.tgz", - "integrity": "sha512-cc8oEVoctTvsFZ/Oje/kGnHbpWHYBe8IAJe4C0QNc3t8uM/0Y8+erSz/7Y1ALuXTEZTMvxXwO6YbX1ey3ujiZw==", - "dev": true, - "engines": { - "node": "> 0.8" - } - }, - "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/lilconfig": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", - "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", - "engines": { - "node": ">=10" - } - }, - "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==" - }, - "node_modules/listr2": { - "version": "3.14.0", - "resolved": "https://registry.npmjs.org/listr2/-/listr2-3.14.0.tgz", - "integrity": "sha512-TyWI8G99GX9GjE54cJ+RrNMcIFBfwMPxc3XTFiAYGN4s10hWROGtOg7+O6u6LE3mNkyld7RSLE6nrKBvTfcs3g==", - "dev": true, - "dependencies": { - "cli-truncate": "^2.1.0", - "colorette": "^2.0.16", - "log-update": "^4.0.0", - "p-map": "^4.0.0", - "rfdc": "^1.3.0", - "rxjs": "^7.5.1", - "through": "^2.3.8", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "enquirer": ">= 2.3.0 < 3" - }, - "peerDependenciesMeta": { - "enquirer": { - "optional": true - } - } - }, - "node_modules/local-pkg": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.4.3.tgz", - "integrity": "sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==", - "dev": true, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "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.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.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.once": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", - "integrity": "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==", - "dev": true - }, - "node_modules/log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "dependencies": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/log-update": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz", - "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", - "dev": true, - "dependencies": { - "ansi-escapes": "^4.3.0", - "cli-cursor": "^3.1.0", - "slice-ansi": "^4.0.0", - "wrap-ansi": "^6.2.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/log-update/node_modules/wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "dependencies": { - "js-tokens": "^3.0.0 || ^4.0.0" - }, - "bin": { - "loose-envify": "cli.js" - } - }, - "node_modules/loupe": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.6.tgz", - "integrity": "sha512-RaPMZKiMy8/JruncMU5Bt6na1eftNoo++R4Y+N2FrxkDVTrGvcyzFTsaGif4QTeKESheMGegbhw6iUAq+5A8zA==", - "dev": true, - "dependencies": { - "get-func-name": "^2.0.0" - } - }, - "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/lucide-react": { - "version": "0.263.1", - "resolved": "https://registry.npmjs.org/lucide-react/-/lucide-react-0.263.1.tgz", - "integrity": "sha512-keqxAx97PlaEN89PXZ6ki1N8nRjGWtDa4021GFYLNj0RgruM5odbpl8GHTExj0hhPq3sF6Up0gnxt6TSHu+ovw==", - "peerDependencies": { - "react": "^16.5.1 || ^17.0.0 || ^18.0.0" - } - }, - "node_modules/lz-string": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.5.0.tgz", - "integrity": "sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==", - "dev": true, - "bin": { - "lz-string": "bin/bin.js" - } - }, - "node_modules/magic-string": { - "version": "0.30.2", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.2.tgz", - "integrity": "sha512-lNZdu7pewtq/ZvWUp9Wpf/x7WzMTsR26TWV03BRZrXFsv+BI6dy8RAiKgm1uM/kyR0rCfUcqvOlXKG66KhIGug==", - "dev": true, - "dependencies": { - "@jridgewell/sourcemap-codec": "^1.4.15" - }, - "engines": { - "node": ">=12" - } - }, - "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/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/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==", - "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==", - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "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/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/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "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/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/minizlib/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minizlib/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/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true, - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/mlly": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.4.0.tgz", - "integrity": "sha512-ua8PAThnTwpprIaU47EPeZ/bPUVp2QYBbWMphUQpVdBI3Lgqzm5KZQ45Agm3YJedHXaIHl6pBGabaLSUPPSptg==", - "dev": true, - "dependencies": { - "acorn": "^8.9.0", - "pathe": "^1.1.1", - "pkg-types": "^1.0.3", - "ufo": "^1.1.2" - } - }, - "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/mz": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", - "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", - "dependencies": { - "any-promise": "^1.0.0", - "object-assign": "^4.0.1", - "thenify-all": "^1.0.0" - } - }, - "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==", - "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/native-run": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/native-run/-/native-run-1.7.2.tgz", - "integrity": "sha512-2aahC8iXIO8BcvEukVMrYwL5sXurkuIGyQgfSGBto832W6ejV+cB5Ww+2/CRxmyozhbxARJ2OMpEGPV8sTqsrQ==", - "dev": true, - "dependencies": { - "@ionic/utils-fs": "^3.1.6", - "@ionic/utils-terminal": "^2.3.3", - "bplist-parser": "^0.3.2", - "debug": "^4.3.4", - "elementtree": "^0.1.7", - "ini": "^3.0.1", - "plist": "^3.0.6", - "split2": "^4.1.0", - "through2": "^4.0.2", - "tslib": "^2.4.0", - "yauzl": "^2.10.0" - }, - "bin": { - "native-run": "bin/native-run" - }, - "engines": { - "node": ">=12.13.0" - } - }, - "node_modules/native-run/node_modules/ini": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ini/-/ini-3.0.1.tgz", - "integrity": "sha512-it4HyVAUTKBc6m8e1iXWvXSTdndF7HbdN713+kvLrymxTaU4AUBWrJ4vEooP+V7fexnVD3LKcBshjGGPefSMUQ==", - "dev": true, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "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/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-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", - "dev": true, - "engines": { - "node": ">=0.10.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/nwsapi": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.7.tgz", - "integrity": "sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ==", - "dev": true - }, - "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-hash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", - "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", - "engines": { - "node": ">= 6" - } - }, - "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==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-is": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", - "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.entries": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.6.tgz", - "integrity": "sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.fromentries": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.6.tgz", - "integrity": "sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.hasown": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.2.tgz", - "integrity": "sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==", - "dev": true, - "dependencies": { - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.values": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz", - "integrity": "sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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==", - "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/open": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", - "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", - "dev": true, - "dependencies": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - }, - "engines": { - "node": ">=12" - }, - "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/ospath": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/ospath/-/ospath-1.2.2.tgz", - "integrity": "sha512-o6E5qJV5zkAbIDNhGSIlyOhScKXgQrSRMilfph0clDfM0nEnBOlKlH4sWDmG95BW/CvwNz0vmm7dJVtU2KlMiA==", - "dev": true - }, - "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": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "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/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/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==", - "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==" - }, - "node_modules/path-scurry": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", - "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", - "dev": true, - "dependencies": { - "lru-cache": "^9.1.1 || ^10.0.0", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/path-scurry/node_modules/lru-cache": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.0.tgz", - "integrity": "sha512-svTf/fzsKHffP42sujkO/Rjs37BCIsQVRCeNYIm9WN8rgT7ffoUnRtZCqU+6BqcSBdv8gwJeTz8knJpgACeQMw==", - "dev": true, - "engines": { - "node": "14 || >=16.14" - } - }, - "node_modules/path-to-regexp": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", - "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", - "dependencies": { - "isarray": "0.0.1" - } - }, - "node_modules/path-to-regexp/node_modules/isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==" - }, - "node_modules/pathe": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.1.tgz", - "integrity": "sha512-d+RQGp0MAYTIaDBIMmOfMwz3E+LOZnxx1HZd5R18mmCZY0QBlK0LDZfPc8FW8Ed2DlvsuE6PRjroDY+wg4+j/Q==", - "dev": true - }, - "node_modules/pathval": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", - "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/pend": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", - "dev": true - }, - "node_modules/performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", - "dev": true - }, - "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "engines": { - "node": ">=0.10.0" - } - }, - "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==", - "engines": { - "node": ">= 6" - } - }, - "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/pkg-types": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.0.3.tgz", - "integrity": "sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==", - "dev": true, - "dependencies": { - "jsonc-parser": "^3.2.0", - "mlly": "^1.2.0", - "pathe": "^1.1.0" - } - }, - "node_modules/plist": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/plist/-/plist-3.1.0.tgz", - "integrity": "sha512-uysumyrvkUX0rX/dEVqt8gC3sTBzd4zoWfLeS29nb53imdaXVvLINYXTI2GNqzaMuvacNx4uJQ8+b3zXR0pkgQ==", - "dev": true, - "dependencies": { - "@xmldom/xmldom": "^0.8.8", - "base64-js": "^1.5.1", - "xmlbuilder": "^15.1.1" - }, - "engines": { - "node": ">=10.4.0" - } - }, - "node_modules/postcss": { - "version": "8.4.28", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.28.tgz", - "integrity": "sha512-Z7V5j0cq8oEKyejIKfpD8b4eBy9cwW2JWPk0+fB1HOAMsfHbnAXLLS+PfVWlzMSLQaWttKDt607I0XHmpE67Vw==", - "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/postcss-import": { - "version": "15.1.0", - "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz", - "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==", - "dependencies": { - "postcss-value-parser": "^4.0.0", - "read-cache": "^1.0.0", - "resolve": "^1.1.7" - }, - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "postcss": "^8.0.0" - } - }, - "node_modules/postcss-js": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz", - "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==", - "dependencies": { - "camelcase-css": "^2.0.1" - }, - "engines": { - "node": "^12 || ^14 || >= 16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - "peerDependencies": { - "postcss": "^8.4.21" - } - }, - "node_modules/postcss-load-config": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.1.tgz", - "integrity": "sha512-vEJIc8RdiBRu3oRAI0ymerOn+7rPuMvRXslTvZUKZonDHFIczxztIyJ1urxM1x9JXEikvpWWTUUqal5j/8QgvA==", - "dependencies": { - "lilconfig": "^2.0.5", - "yaml": "^2.1.1" - }, - "engines": { - "node": ">= 14" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - "peerDependencies": { - "postcss": ">=8.0.9", - "ts-node": ">=9.0.0" - }, - "peerDependenciesMeta": { - "postcss": { - "optional": true - }, - "ts-node": { - "optional": true - } - } - }, - "node_modules/postcss-nested": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.1.tgz", - "integrity": "sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==", - "dependencies": { - "postcss-selector-parser": "^6.0.11" - }, - "engines": { - "node": ">=12.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - "peerDependencies": { - "postcss": "^8.2.14" - } - }, - "node_modules/postcss-selector-parser": { - "version": "6.0.13", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz", - "integrity": "sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==", - "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" - }, - "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.2", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.0.2.tgz", - "integrity": "sha512-o2YR9qtniXvwEZlOKbveKfDQVyqxbEIWn48Z8m3ZJjBjcCmUy3xZGIv+7AkaeuaTr6yPXJjwv07ZWlsWbEy1rQ==", - "dev": true, - "bin": { - "prettier": "bin/prettier.cjs" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/prettier/prettier?sponsor=1" - } - }, - "node_modules/pretty-bytes": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", - "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", - "dev": true, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/pretty-format": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", - "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1", - "ansi-styles": "^5.0.0", - "react-is": "^17.0.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.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/pretty-format/node_modules/react-is": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", - "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", - "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/prompts/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/prop-types": { - "version": "15.8.1", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", - "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", - "dependencies": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.13.1" - } - }, - "node_modules/proxy-from-env": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", - "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" - }, - "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/pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, - "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "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/pvtsutils": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/pvtsutils/-/pvtsutils-1.3.3.tgz", - "integrity": "sha512-6sAOMlXyrJ+8tRN5IAaYfuYZRp1C2uJ0SyDynEFxL+VY8kCRib9Lpj/+KPaNFpaQWr/iRik5nrzz6iaNlxgEGA==", - "dev": true, - "dependencies": { - "tslib": "^2.6.1" - } - }, - "node_modules/pvutils": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/pvutils/-/pvutils-1.1.3.tgz", - "integrity": "sha512-pMpnA0qRdFp32b1sJl1wOJNxZLQ2cbQx+k6tjNtZ8CpvVhNqEPRgivZ2WOUev2YMajecdH7ctUPDvEe87nariQ==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/qs": { - "version": "6.10.4", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.4.tgz", - "integrity": "sha512-OQiU+C+Ds5qiH91qh/mg0w+8nwQuLjM4F4M/PbmhDOoYehPh+Fb0bDjtR1sOvy7YKxvj28Y/M0PhP5uVX0kB+g==", - "dev": true, - "dependencies": { - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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==", - "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/react": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", - "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", - "dependencies": { - "loose-envify": "^1.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-dom": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", - "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", - "dependencies": { - "loose-envify": "^1.1.0", - "scheduler": "^0.23.0" - }, - "peerDependencies": { - "react": "^18.2.0" - } - }, - "node_modules/react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" - }, - "node_modules/react-redux": { - "version": "7.2.9", - "resolved": "https://registry.npmjs.org/react-redux/-/react-redux-7.2.9.tgz", - "integrity": "sha512-Gx4L3uM182jEEayZfRbI/G11ZpYdNAnBs70lFVMNdHJI76XYtR+7m0MN+eAs7UHBPhWXcnFPaS+9owSCJQHNpQ==", - "dependencies": { - "@babel/runtime": "^7.15.4", - "@types/react-redux": "^7.1.20", - "hoist-non-react-statics": "^3.3.2", - "loose-envify": "^1.4.0", - "prop-types": "^15.7.2", - "react-is": "^17.0.2" - }, - "peerDependencies": { - "react": "^16.8.3 || ^17 || ^18" - }, - "peerDependenciesMeta": { - "react-dom": { - "optional": true - }, - "react-native": { - "optional": true - } - } - }, - "node_modules/react-redux/node_modules/react-is": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", - "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" - }, - "node_modules/react-refresh": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.0.tgz", - "integrity": "sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-router": { - "version": "5.3.4", - "resolved": "https://registry.npmjs.org/react-router/-/react-router-5.3.4.tgz", - "integrity": "sha512-Ys9K+ppnJah3QuaRiLxk+jDWOR1MekYQrlytiXxC1RyfbdsZkS5pvKAzCCr031xHixZwpnsYNT5xysdFHQaYsA==", - "dependencies": { - "@babel/runtime": "^7.12.13", - "history": "^4.9.0", - "hoist-non-react-statics": "^3.1.0", - "loose-envify": "^1.3.1", - "path-to-regexp": "^1.7.0", - "prop-types": "^15.6.2", - "react-is": "^16.6.0", - "tiny-invariant": "^1.0.2", - "tiny-warning": "^1.0.0" - }, - "peerDependencies": { - "react": ">=15" - } - }, - "node_modules/react-router-dom": { - "version": "5.3.4", - "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-5.3.4.tgz", - "integrity": "sha512-m4EqFMHv/Ih4kpcBCONHbkT68KoAeHN4p3lAGoNryfHi0dMy0kCzEZakiKRsvg5wHZ/JLrLW8o8KomWiz/qbYQ==", - "dependencies": { - "@babel/runtime": "^7.12.13", - "history": "^4.9.0", - "loose-envify": "^1.3.1", - "prop-types": "^15.6.2", - "react-router": "5.3.4", - "tiny-invariant": "^1.0.2", - "tiny-warning": "^1.0.0" - }, - "peerDependencies": { - "react": ">=15" - } - }, - "node_modules/react-toastify": { - "version": "9.1.3", - "resolved": "https://registry.npmjs.org/react-toastify/-/react-toastify-9.1.3.tgz", - "integrity": "sha512-fPfb8ghtn/XMxw3LkxQBk3IyagNpF/LIKjOBflbexr2AWxAH1MJgvnESwEwBn9liLFXgTKWgBSdZpw9m4OTHTg==", - "dependencies": { - "clsx": "^1.1.1" - }, - "peerDependencies": { - "react": ">=16", - "react-dom": ">=16" - } - }, - "node_modules/react-toastify/node_modules/clsx": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", - "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==", - "engines": { - "node": ">=6" - } - }, - "node_modules/read-cache": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", - "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", - "dependencies": { - "pify": "^2.3.0" - } - }, - "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/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "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/redux": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/redux/-/redux-4.2.1.tgz", - "integrity": "sha512-LAUYz4lc+Do8/g7aeRa8JkyDErK6ekstQaqWQrNRW//MY1TvCEpMtpTWvlQ+FPbWCx+Xixu/6SHt5N0HR+SB4w==", - "dependencies": { - "@babel/runtime": "^7.9.2" - } - }, - "node_modules/redux-persist": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/redux-persist/-/redux-persist-6.0.0.tgz", - "integrity": "sha512-71LLMbUq2r02ng2We9S215LtPu3fY0KgaGE0k8WRgl6RkqxtGfl7HUozz1Dftwsb0D/5mZ8dwAaPbtnzfvbEwQ==", - "peerDependencies": { - "redux": ">4.0.0" - } - }, - "node_modules/redux-thunk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/redux-thunk/-/redux-thunk-2.4.2.tgz", - "integrity": "sha512-+P3TjtnP0k/FEjcBL5FZpoovtvrTNT/UXd4/sluaSyrURlSlhLSzEdfsTBW7WsKB6yPvgd7q/iZPICFjW4o57Q==", - "peerDependencies": { - "redux": "^4" - } - }, - "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==" - }, - "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/regexp.prototype.flags": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz", - "integrity": "sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "functions-have-names": "^1.2.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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/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/request-progress": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/request-progress/-/request-progress-3.0.0.tgz", - "integrity": "sha512-MnWzEHHaxHO2iWiQuHrUPBi/1WeBf5PkxQqNyNvLl9VAYSdXkP8tQ3pBSeCPD+yw0v0Aq1zosWLz0BdeXpWwZg==", - "dev": true, - "dependencies": { - "throttleit": "^1.0.0" - } - }, - "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/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/reselect": { - "version": "4.1.8", - "resolved": "https://registry.npmjs.org/reselect/-/reselect-4.1.8.tgz", - "integrity": "sha512-ab9EmR80F/zQTMNeneUr4cv+jSwPJgIlvEmVwLerwrWVbpLlBuls9XHzIeTFy4cegU2NHBp3va0LKOzU5qFEYQ==" - }, - "node_modules/resolve": { - "version": "1.22.4", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", - "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", - "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-cwd/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-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/resolve-pathname": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-3.0.0.tgz", - "integrity": "sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==" - }, - "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/restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dev": true, - "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/rfdc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", - "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", - "dev": true - }, - "node_modules/rimraf": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.4.1.tgz", - "integrity": "sha512-Gk8NlF062+T9CqNGn6h4tls3k6T1+/nXdOcSZVikNVtlRdYpA7wRJJMoXmuvOnLW844rPjdQ7JgXCYM6PPC/og==", - "dev": true, - "dependencies": { - "glob": "^9.2.0" - }, - "bin": { - "rimraf": "dist/cjs/src/bin.js" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/rimraf/node_modules/glob": { - "version": "9.3.5", - "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz", - "integrity": "sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "minimatch": "^8.0.2", - "minipass": "^4.2.4", - "path-scurry": "^1.6.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/node_modules/minimatch": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz", - "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/node_modules/minipass": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz", - "integrity": "sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/rollup": { - "version": "3.27.2", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.27.2.tgz", - "integrity": "sha512-YGwmHf7h2oUHkVBT248x0yt6vZkYQ3/rvE5iQuVBh3WO8GcJ6BNeOkpoX1yMHIiBm18EMLjBPIoUDkhgnyxGOQ==", - "bin": { - "rollup": "dist/bin/rollup" - }, - "engines": { - "node": ">=14.18.0", - "npm": ">=8.0.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/rrweb-cssom": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.6.0.tgz", - "integrity": "sha512-APM0Gt1KoXBz0iIkkdB/kfvGOwC4UuJFeG/c+yV7wSc7q96cG/kJ0HiYCnzivD9SB53cLV1MlHFNfOuPaadYSw==", - "dev": true - }, - "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==", - "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==", - "dev": true, - "dependencies": { - "tslib": "^2.1.0" - } - }, - "node_modules/safe-array-concat": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.0.0.tgz", - "integrity": "sha512-9dVEFruWIsnie89yym+xWTAYASdpw3CJV7Li/6zBewGf9z2i1j31rP6jnY0pHEO4QZh6N0K11bFjWmdR8UGdPQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "has-symbols": "^1.0.3", - "isarray": "^2.0.5" - }, - "engines": { - "node": ">=0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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==", - "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/safe-regex-test": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", - "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-regex": "^1.1.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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/sax": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.1.4.tgz", - "integrity": "sha512-5f3k2PbGGp+YtKJjOItpg3P99IMD84E4HOvcfleTb5joCHNXYLsR9yWFPOYGgaeMPDubQILTCMdsFb2OMeOjtg==", - "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/scheduler": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", - "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==", - "dependencies": { - "loose-envify": "^1.1.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/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/semver/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/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/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dev": true, - "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/siginfo": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/siginfo/-/siginfo-2.0.0.tgz", - "integrity": "sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==", - "dev": true - }, - "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/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/slice-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/slice-ansi?sponsor=1" - } - }, - "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==", - "devOptional": 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==", - "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/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/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/sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "dev": true, - "dependencies": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - }, - "bin": { - "sshpk-conv": "bin/sshpk-conv", - "sshpk-sign": "bin/sshpk-sign", - "sshpk-verify": "bin/sshpk-verify" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "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/stackback": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/stackback/-/stackback-0.0.2.tgz", - "integrity": "sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==", - "dev": true - }, - "node_modules/std-env": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.3.3.tgz", - "integrity": "sha512-Rz6yejtVyWnVjC1RFvNmYL10kgjC49EOghxWn0RFqlCHGFpQx+Xe7yW3I4ceK1SGrWIGMjD5Kbue8W/udkbMJg==", - "dev": true - }, - "node_modules/stop-iteration-iterator": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", - "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", - "dev": true, - "dependencies": { - "internal-slot": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.2.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/string.prototype.matchall": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz", - "integrity": "sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "get-intrinsic": "^1.1.3", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.3", - "regexp.prototype.flags": "^1.4.3", - "side-channel": "^1.0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trim": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.7.tgz", - "integrity": "sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimend": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", - "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimstart": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", - "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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/strip-literal": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/strip-literal/-/strip-literal-1.3.0.tgz", - "integrity": "sha512-PugKzOsyXpArk0yWmUwqOZecSO0GH0bPoctLcqNDH9J04pVW3lflYE0ujElBGTloevcxF5MofAOZ7C5l2b+wLg==", - "dev": true, - "dependencies": { - "acorn": "^8.10.0" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/sucrase": { - "version": "3.34.0", - "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.34.0.tgz", - "integrity": "sha512-70/LQEZ07TEcxiU2dz51FKaE6hCTWC6vr7FOk3Gr0U60C3shtAN+H+BFr9XlYe5xqf3RA8nrc+VIwzCfnxuXJw==", - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.2", - "commander": "^4.0.0", - "glob": "7.1.6", - "lines-and-columns": "^1.1.6", - "mz": "^2.7.0", - "pirates": "^4.0.1", - "ts-interface-checker": "^0.1.9" - }, - "bin": { - "sucrase": "bin/sucrase", - "sucrase-node": "bin/sucrase-node" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/sucrase/node_modules/commander": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", - "engines": { - "node": ">= 6" - } - }, - "node_modules/sucrase/node_modules/glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "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==", - "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/systemjs": { - "version": "6.14.1", - "resolved": "https://registry.npmjs.org/systemjs/-/systemjs-6.14.1.tgz", - "integrity": "sha512-8ftwWd+XnQtZ/aGbatrN4QFNGrKJzmbtixW+ODpci7pyoTajg4sonPP8aFLESAcuVxaC1FyDESt+SpfFCH9rZQ==", - "dev": true - }, - "node_modules/tailwind-merge": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/tailwind-merge/-/tailwind-merge-1.14.0.tgz", - "integrity": "sha512-3mFKyCo/MBcgyOTlrY8T7odzZFx+w+qKSMAmdFzRvqBfLlSigU6TZnlFHK0lkMwj9Bj8OYU+9yW9lmGuS0QEnQ==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/dcastil" - } - }, - "node_modules/tailwindcss": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.3.tgz", - "integrity": "sha512-A0KgSkef7eE4Mf+nKJ83i75TMyq8HqY3qmFIJSWy8bNt0v1lG7jUcpGpoTFxAwYcWOphcTBLPPJg+bDfhDf52w==", - "dependencies": { - "@alloc/quick-lru": "^5.2.0", - "arg": "^5.0.2", - "chokidar": "^3.5.3", - "didyoumean": "^1.2.2", - "dlv": "^1.1.3", - "fast-glob": "^3.2.12", - "glob-parent": "^6.0.2", - "is-glob": "^4.0.3", - "jiti": "^1.18.2", - "lilconfig": "^2.1.0", - "micromatch": "^4.0.5", - "normalize-path": "^3.0.0", - "object-hash": "^3.0.0", - "picocolors": "^1.0.0", - "postcss": "^8.4.23", - "postcss-import": "^15.1.0", - "postcss-js": "^4.0.1", - "postcss-load-config": "^4.0.1", - "postcss-nested": "^6.0.1", - "postcss-selector-parser": "^6.0.11", - "resolve": "^1.22.2", - "sucrase": "^3.32.0" - }, - "bin": { - "tailwind": "lib/cli.js", - "tailwindcss": "lib/cli.js" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/tailwindcss-animate": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/tailwindcss-animate/-/tailwindcss-animate-1.0.6.tgz", - "integrity": "sha512-4WigSGMvbl3gCCact62ZvOngA+PRqhAn7si3TQ3/ZuPuQZcIEtVap+ENSXbzWhpojKB8CpvnIsrwBu8/RnHtuw==", - "peerDependencies": { - "tailwindcss": ">=3.0.0 || insiders" - } - }, - "node_modules/tar": { - "version": "6.1.15", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.15.tgz", - "integrity": "sha512-/zKt9UyngnxIT/EAGYuxaMYgOIJiP81ab9ZfkILq4oNLPFX50qyYmu7jRj9qeXoxmJHjGlbH0+cm2uy1WCs10A==", - "dev": true, - "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/tar/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/terser": { - "version": "5.19.2", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.19.2.tgz", - "integrity": "sha512-qC5+dmecKJA4cpYxRa5aVkKehYsQKc+AHeKl0Oe62aYjBL8ZA33tTljktDHJSaxxMnbI5ZYw+o/S2DxxLu8OfA==", - "devOptional": true, - "peer": true, - "dependencies": { - "@jridgewell/source-map": "^0.3.3", - "acorn": "^8.8.2", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - }, - "bin": { - "terser": "bin/terser" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/terser/node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "devOptional": true, - "peer": true - }, - "node_modules/terser/node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "devOptional": true, - "peer": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "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-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/thenify": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", - "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", - "dependencies": { - "any-promise": "^1.0.0" - } - }, - "node_modules/thenify-all": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", - "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", - "dependencies": { - "thenify": ">= 3.1.0 < 4" - }, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/throttleit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz", - "integrity": "sha512-rkTVqu6IjfQ/6+uNuuc3sZek4CEYxTJom3IktzgdSxcZqdARuebbA/f4QmAxMQIxqq9ZLEUkSYqvuk1I6VKq4g==", - "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/tiny-invariant": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.1.tgz", - "integrity": "sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==" - }, - "node_modules/tiny-warning": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz", - "integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==" - }, - "node_modules/tinybench": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.5.0.tgz", - "integrity": "sha512-kRwSG8Zx4tjF9ZiyH4bhaebu+EDz1BOx9hOigYHlUW4xxI/wKIUQUqo018UlU4ar6ATPBsaMrdbKZ+tmPdohFA==", - "dev": true - }, - "node_modules/tinypool": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-0.7.0.tgz", - "integrity": "sha512-zSYNUlYSMhJ6Zdou4cJwo/p7w5nmAH17GRfU/ui3ctvjXFErXXkruT4MWW6poDeXgCaIBlGLrfU6TbTXxyGMww==", - "dev": true, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/tinyspy": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-2.1.1.tgz", - "integrity": "sha512-XPJL2uSzcOyBMky6OFrusqWlzfFrXtE0hPuMgW8A2HmaqrPo4ZQHRN/V0QXN3FSjKxpsbRrFc5LI7KOwBsT1/w==", - "dev": true, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "dependencies": { - "rimraf": "^3.0.0" - }, - "engines": { - "node": ">=8.17.0" - } - }, - "node_modules/tmp/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/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==", - "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": "4.1.1", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-4.1.1.tgz", - "integrity": "sha512-2lv/66T7e5yNyhAAC4NaKe5nVavzuGJQVVtRYLyQ2OI8tsJ61PMLlelehb0wi2Hx6+hT/OJUWZcw8MjlSRnxvw==", - "dev": true, - "dependencies": { - "punycode": "^2.3.0" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/tree-kill": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", - "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", - "dev": true, - "bin": { - "tree-kill": "cli.js" - } - }, - "node_modules/ts-custom-error": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/ts-custom-error/-/ts-custom-error-3.3.1.tgz", - "integrity": "sha512-5OX1tzOjxWEgsr/YEUWSuPrQ00deKLh6D7OTWcvNHm12/7QPyRh8SYpyWvA4IZv8H/+GQWQEh/kwo95Q9OVW1A==", - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/ts-interface-checker": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", - "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==" - }, - "node_modules/tslib": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.1.tgz", - "integrity": "sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig==" - }, - "node_modules/tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", - "dev": true, - "dependencies": { - "safe-buffer": "^5.0.1" - }, - "engines": { - "node": "*" - } - }, - "node_modules/tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", - "dev": 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==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/typed-array-buffer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz", - "integrity": "sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1", - "is-typed-array": "^1.1.10" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/typed-array-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.0.tgz", - "integrity": "sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typed-array-byte-offset": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.0.tgz", - "integrity": "sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==", - "dev": true, - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typed-array-length": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", - "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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/ufo": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.2.0.tgz", - "integrity": "sha512-RsPyTbqORDNDxqAdQPQBpgqhWle1VcTSou/FraClYlHf6TZnQcGslpLcAphNR+sQW4q5lLWLbOsRlh9j24baQg==", - "dev": true - }, - "node_modules/unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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/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/untildify": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", - "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "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", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "dependencies": { - "punycode": "^2.1.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==" - }, - "node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "dev": true, - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "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/value-equal": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/value-equal/-/value-equal-1.0.1.tgz", - "integrity": "sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==" - }, - "node_modules/verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", - "dev": true, - "engines": [ - "node >=0.6.0" - ], - "dependencies": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "node_modules/vite": { - "version": "4.4.9", - "resolved": "https://registry.npmjs.org/vite/-/vite-4.4.9.tgz", - "integrity": "sha512-2mbUn2LlUmNASWwSCNSJ/EG2HuSRTnVNaydp6vMCm5VIqJsjMfbIWtbH2kDuwUVW5mMUKKZvGPX/rqeqVvv1XA==", - "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-node": { - "version": "0.34.1", - "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-0.34.1.tgz", - "integrity": "sha512-odAZAL9xFMuAg8aWd7nSPT+hU8u2r9gU3LRm9QKjxBEF2rRdWpMuqkrkjvyVQEdNFiBctqr2Gg4uJYizm5Le6w==", - "dev": true, - "dependencies": { - "cac": "^6.7.14", - "debug": "^4.3.4", - "mlly": "^1.4.0", - "pathe": "^1.1.1", - "picocolors": "^1.0.0", - "vite": "^3.0.0 || ^4.0.0" - }, - "bin": { - "vite-node": "vite-node.mjs" - }, - "engines": { - "node": ">=v14.18.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/vite-plugin-wasm": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/vite-plugin-wasm/-/vite-plugin-wasm-3.2.2.tgz", - "integrity": "sha512-cdbBUNR850AEoMd5nvLmnyeq63CSfoP1ctD/L2vLk/5+wsgAPlAVAzUK5nGKWO/jtehNlrSSHLteN+gFQw7VOA==", - "peerDependencies": { - "vite": "^2 || ^3 || ^4" - } - }, - "node_modules/vitest": { - "version": "0.34.1", - "resolved": "https://registry.npmjs.org/vitest/-/vitest-0.34.1.tgz", - "integrity": "sha512-G1PzuBEq9A75XSU88yO5G4vPT20UovbC/2osB2KEuV/FisSIIsw7m5y2xMdB7RsAGHAfg2lPmp2qKr3KWliVlQ==", - "dev": true, - "dependencies": { - "@types/chai": "^4.3.5", - "@types/chai-subset": "^1.3.3", - "@types/node": "*", - "@vitest/expect": "0.34.1", - "@vitest/runner": "0.34.1", - "@vitest/snapshot": "0.34.1", - "@vitest/spy": "0.34.1", - "@vitest/utils": "0.34.1", - "acorn": "^8.9.0", - "acorn-walk": "^8.2.0", - "cac": "^6.7.14", - "chai": "^4.3.7", - "debug": "^4.3.4", - "local-pkg": "^0.4.3", - "magic-string": "^0.30.1", - "pathe": "^1.1.1", - "picocolors": "^1.0.0", - "std-env": "^3.3.3", - "strip-literal": "^1.0.1", - "tinybench": "^2.5.0", - "tinypool": "^0.7.0", - "vite": "^3.0.0 || ^4.0.0", - "vite-node": "0.34.1", - "why-is-node-running": "^2.2.2" - }, - "bin": { - "vitest": "vitest.mjs" - }, - "engines": { - "node": ">=v14.18.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" - }, - "peerDependencies": { - "@edge-runtime/vm": "*", - "@vitest/browser": "*", - "@vitest/ui": "*", - "happy-dom": "*", - "jsdom": "*", - "playwright": "*", - "safaridriver": "*", - "webdriverio": "*" - }, - "peerDependenciesMeta": { - "@edge-runtime/vm": { - "optional": true - }, - "@vitest/browser": { - "optional": true - }, - "@vitest/ui": { - "optional": true - }, - "happy-dom": { - "optional": true - }, - "jsdom": { - "optional": true - }, - "playwright": { - "optional": true - }, - "safaridriver": { - "optional": true - }, - "webdriverio": { - "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/webcrypto-core": { - "version": "1.7.7", - "resolved": "https://registry.npmjs.org/webcrypto-core/-/webcrypto-core-1.7.7.tgz", - "integrity": "sha512-7FjigXNsBfopEj+5DV2nhNpfic2vumtjjgPmeDKk45z+MJwXKKfhPB7118Pfzrmh4jqOMST6Ch37iPAHoImg5g==", - "dev": true, - "dependencies": { - "@peculiar/asn1-schema": "^2.3.6", - "@peculiar/json-schema": "^1.1.12", - "asn1js": "^3.0.1", - "pvtsutils": "^1.3.2", - "tslib": "^2.4.0" - } - }, - "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": "12.0.1", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-12.0.1.tgz", - "integrity": "sha512-Ed/LrqB8EPlGxjS+TrsXcpUond1mhccS3pchLhzSgPCnTimUCKj3IZE75pAs5m6heB2U2TMerKFUXheyHY+VDQ==", - "dev": true, - "dependencies": { - "tr46": "^4.1.1", - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=14" - } - }, - "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/which-boxed-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", - "dev": true, - "dependencies": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-collection": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", - "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", - "dev": true, - "dependencies": { - "is-map": "^2.0.1", - "is-set": "^2.0.1", - "is-weakmap": "^2.0.1", - "is-weakset": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-typed-array": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.11.tgz", - "integrity": "sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==", - "dev": true, - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/why-is-node-running": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/why-is-node-running/-/why-is-node-running-2.2.2.tgz", - "integrity": "sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA==", - "dev": true, - "dependencies": { - "siginfo": "^2.0.0", - "stackback": "0.0.2" - }, - "bin": { - "why-is-node-running": "cli.js" - }, - "engines": { - "node": ">=8" - } - }, - "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/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" - }, - "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/xml2js": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.5.0.tgz", - "integrity": "sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==", - "dev": true, - "dependencies": { - "sax": ">=0.6.0", - "xmlbuilder": "~11.0.0" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/xml2js/node_modules/xmlbuilder": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", - "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/xmlbuilder": { - "version": "15.1.1", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz", - "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==", - "dev": true, - "engines": { - "node": ">=8.0" - } - }, - "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/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/yaml": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.1.tgz", - "integrity": "sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ==", - "engines": { - "node": ">= 14" - } - }, - "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": "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/yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", - "dev": true, - "dependencies": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" - } - }, - "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" - } - } - } -} diff --git a/shinkai-app/package.json b/shinkai-app/package.json deleted file mode 100644 index 04aeb7f91..000000000 --- a/shinkai-app/package.json +++ /dev/null @@ -1,82 +0,0 @@ -{ - "name": "ShinkaiApp", - "private": true, - "version": "0.0.1", - "type": "module", - "scripts": { - "transpile-noble": "./transpile-noble.sh", - "dev": "vite", - "build": "npm run transpile-noble && tsc && vite build", - "preview": "vite preview", - "test.e2e": "cypress run", - "test.unit": "vitest", - "lint": "eslint" - }, - "dependencies": { - "@capacitor-community/barcode-scanner": "^4.0.1", - "@capacitor/app": "5.0.6", - "@capacitor/camera": "^5.0.6", - "@capacitor/core": "5.2.2", - "@capacitor/haptics": "5.0.6", - "@capacitor/keyboard": "5.0.6", - "@capacitor/status-bar": "5.0.6", - "@ionic/react": "^7.0.0", - "@ionic/react-router": "^7.0.0", - "@noble/ed25519": "^2.0.0", - "@noble/hashes": "^1.3.1", - "@reduxjs/toolkit": "^1.9.5", - "@yudiel/react-qr-scanner": "^1.1.10", - "@zxing/browser": "^0.1.4", - "axios": "^1.4.0", - "class-variance-authority": "^0.7.0", - "clsx": "^2.0.0", - "curve25519-js": "^0.0.4", - "ionicons": "^7.0.0", - "jsbi": "^4.3.0", - "lucide-react": "^0.263.1", - "react": "^18.2.0", - "react-dom": "^18.2.0", - "react-redux": "^7.2.4", - "react-router": "^5.3.4", - "react-router-dom": "^5.3.4", - "react-toastify": "^9.1.3", - "redux": "^4.2.1", - "redux-persist": "^6.0.0", - "redux-thunk": "^2.4.2", - "tailwind-merge": "^1.14.0", - "tailwindcss-animate": "^1.0.6", - "vite-plugin-wasm": "^3.2.2" - }, - "devDependencies": { - "@babel/cli": "^7.22.10", - "@babel/core": "^7.22.10", - "@babel/plugin-syntax-bigint": "^7.8.3", - "@babel/preset-env": "^7.22.10", - "@capacitor/cli": "5.2.2", - "@peculiar/webcrypto": "^1.4.3", - "@testing-library/jest-dom": "^5.16.5", - "@testing-library/react": "^14.0.0", - "@testing-library/user-event": "^14.4.3", - "@types/react": "^18.0.27", - "@types/react-dom": "^18.0.10", - "@types/react-redux": "^7.1.25", - "@types/react-router": "^5.1.20", - "@types/react-router-dom": "^5.3.3", - "@vitejs/plugin-legacy": "^4.0.2", - "@vitejs/plugin-react": "^4.0.1", - "autoprefixer": "^10.4.15", - "babel-plugin-transform-bigint-to-jsbi": "^1.0.3", - "cypress": "^12.7.0", - "eslint": "^8.35.0", - "eslint-plugin-react": "^7.32.2", - "jest": "^29.6.2", - "jsdom": "^22.1.0", - "postcss": "^8.4.28", - "prettier": "^3.0.2", - "tailwindcss": "^3.3.3", - "typescript": "^5.1.6", - "vite": "^4.3.9", - "vitest": "^0.34.1" - }, - "description": "Shinkai Multiplatform App" -} diff --git a/shinkai-app/postcss.config.js b/shinkai-app/postcss.config.js deleted file mode 100644 index f78038278..000000000 --- a/shinkai-app/postcss.config.js +++ /dev/null @@ -1,7 +0,0 @@ -export default { - plugins: { - "tailwindcss/nesting": {}, - tailwindcss: {}, - autoprefixer: {}, - }, -}; diff --git a/shinkai-app/public/favicon.png b/shinkai-app/public/favicon.png deleted file mode 100644 index 51888a7bbdb59f04c29c548523eb2638c1c954f5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 930 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 diff --git a/shinkai-app/public/manifest.json b/shinkai-app/public/manifest.json deleted file mode 100644 index 580870547..000000000 --- a/shinkai-app/public/manifest.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "short_name": "Ionic App", - "name": "My Ionic App", - "icons": [ - { - "src": "assets/icon/favicon.png", - "sizes": "64x64 32x32 24x24 16x16", - "type": "image/x-icon" - }, - { - "src": "assets/icon/icon.png", - "type": "image/png", - "sizes": "512x512", - "purpose": "maskable" - } - ], - "start_url": ".", - "display": "standalone", - "theme_color": "#ffffff", - "background_color": "#ffffff" -} diff --git a/shinkai-app/public/messaging.png b/shinkai-app/public/messaging.png deleted file mode 100644 index 21591f6432e7c8db1f2860b9418b1083d29e28fc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 120225 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�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 - - - diff --git a/shinkai-app/public/shinkai-logo.svg b/shinkai-app/public/shinkai-logo.svg deleted file mode 100644 index 7ffc86d17..000000000 --- a/shinkai-app/public/shinkai-logo.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/shinkai-app/src/App.test.tsx b/shinkai-app/src/App.test.tsx deleted file mode 100644 index 4d57a1d7f..000000000 --- a/shinkai-app/src/App.test.tsx +++ /dev/null @@ -1,31 +0,0 @@ -import React from "react"; -import { act } from 'react-dom/test-utils'; -import { render } from "@testing-library/react"; -import App from "./App"; -import { sha512 } from "@noble/hashes/sha512"; -import * as ed from "@noble/ed25519"; -import { vi } from 'vitest' - -// Enable synchronous methods -ed.etc.sha512Sync = (...m) => sha512(ed.etc.concatBytes(...m)); - -const { Crypto } = require("@peculiar/webcrypto"); -const crypto = new Crypto(); -globalThis.crypto = crypto; - -// Mock getUserMedia -Object.defineProperty(window.navigator, 'mediaDevices', { - value: { - getUserMedia: vi.fn(), - }, - writable: true, -}); - -HTMLMediaElement.prototype.play = () => Promise.resolve(); - -test("renders without crashing", async () => { - await act(async () => { // wrap the render function in act - const { baseElement } = render(); - expect(baseElement).toBeDefined(); - }); -}); diff --git a/shinkai-app/src/App.tsx b/shinkai-app/src/App.tsx deleted file mode 100644 index a293b272e..000000000 --- a/shinkai-app/src/App.tsx +++ /dev/null @@ -1,72 +0,0 @@ -import { Redirect, Route } from "react-router-dom"; -import { IonApp, IonRouterOutlet, setupIonicReact } from "@ionic/react"; -import { IonReactRouter } from "@ionic/react-router"; -import Home from "./pages/Home"; -import Chat from "./pages/Chat"; -import Settings from "./pages/Settings"; -import Connect from "./pages/Connect"; -import CreateChat from "./pages/CreateChat"; -import AddAgent from "./pages/AddAgent"; -import CreateJob from "./pages/CreateJob"; -import AdminCommands from "./pages/AdminCommands"; -import { Provider } from "react-redux"; -import { PersistGate } from "redux-persist/integration/react"; -import { store, persistor } from "./store"; - -import "./theme/global.css"; - -/* Core CSS required for Ionic components to work properly */ -import "@ionic/react/css/core.css"; - -/* Basic CSS for apps built with Ionic */ -import "@ionic/react/css/normalize.css"; -import "@ionic/react/css/structure.css"; -import "@ionic/react/css/typography.css"; - -/* Optional CSS utils that can be commented out */ -import "@ionic/react/css/padding.css"; -import "@ionic/react/css/float-elements.css"; -import "@ionic/react/css/text-alignment.css"; -import "@ionic/react/css/text-transformation.css"; -import "@ionic/react/css/flex-utils.css"; -import "@ionic/react/css/display.css"; - -/* Theme variables */ -import "./theme/variables.css"; -import JobChat from "./pages/JobChat"; - -setupIonicReact(); - -const App: React.FC = () => { - const setupComplete = localStorage.getItem("setupComplete") === "true"; - console.log(`Setup complete: ${setupComplete}`); - - return ( - - - - - - - - - - - - - - - {!setupComplete ? ( - - ) : ( - - )} - - - - - - ); -}; - -export default App; diff --git a/shinkai-app/src/api/api_config.ts b/shinkai-app/src/api/api_config.ts deleted file mode 100644 index 3e65d8e63..000000000 --- a/shinkai-app/src/api/api_config.ts +++ /dev/null @@ -1,23 +0,0 @@ -export class ApiConfig { - private static instance: ApiConfig; - private API_ENDPOINT: string; - - private constructor() { - this.API_ENDPOINT = ""; - } - - public static getInstance(): ApiConfig { - if (!ApiConfig.instance) { - ApiConfig.instance = new ApiConfig(); - } - return ApiConfig.instance; - } - - public setEndpoint(endpoint: string) { - this.API_ENDPOINT = endpoint; - } - - public getEndpoint() { - return this.API_ENDPOINT; - } - } \ No newline at end of file diff --git a/shinkai-app/src/api/index.ts b/shinkai-app/src/api/index.ts deleted file mode 100644 index 7e8b5b429..000000000 --- a/shinkai-app/src/api/index.ts +++ /dev/null @@ -1,530 +0,0 @@ -import axios from "axios"; -import { AppDispatch } from "../store/index"; -import { - getPublicKey, - useRegistrationCode, - pingAll, - createRegistrationCode, - registrationError, - receiveLastMessagesFromInbox, - addMessageToInbox, - receiveAllInboxesForProfile, - receiveLoadMoreMessagesFromInbox, - addAgents, - receiveUnreadMessagesFromInbox, -} from "../store/actions"; -import { AppThunk } from "../types"; -import { ShinkaiMessageBuilderWrapper } from "../lib/wasm/ShinkaiMessageBuilderWrapper"; -import { MergedSetupType } from "../pages/Connect"; -import { ApiConfig } from "./api_config"; -import { ShinkaiMessage } from "../models/ShinkaiMessage"; -import { ShinkaiNameWrapper } from "../lib/wasm/ShinkaiNameWrapper"; -import { InboxNameWrapper } from "../pkg/shinkai_message_wasm"; -import { SerializedAgent } from "../models/SchemaTypes"; -import { SerializedAgentWrapper } from "../lib/wasm/SerializedAgentWrapper"; -import { SetupDetailsState } from "../store/reducers/setupDetailsReducer"; - -// Helper function to handle HTTP errors -export const handleHttpError = (response: any) => { - if (response.status < 200 || response.status >= 300) { - const error = response.data; - throw new Error( - `HTTP error: ${error.code}, ${error.error}, ${error.message}` - ); - } -}; - -export const fetchPublicKey = () => async (dispatch: AppDispatch) => { - const apiEndpoint = ApiConfig.getInstance().getEndpoint(); - try { - const response = await axios.get(`${apiEndpoint}/get_public_key`); - dispatch(getPublicKey(response.data)); - } catch (error) { - console.error("Error fetching public key:", error); - } -}; - -export const createChatWithMessage = - ( - sender: string, - sender_subidentity: string, - receiver: string, - receiver_subidentity: string, - text_message: string, - setupDetailsState: SetupDetailsState - ) => - async (dispatch: AppDispatch) => { - const senderShinkaiName = new ShinkaiNameWrapper( - sender + "/" + sender_subidentity - ); - const receiverShinkaiName = new ShinkaiNameWrapper( - receiver + "/" + receiver_subidentity - ); - - const senderProfile = senderShinkaiName.extract_profile(); - const receiverProfile = receiverShinkaiName.extract_profile(); - - let inbox = InboxNameWrapper.get_regular_inbox_name_from_params( - senderProfile.get_node_name, - senderProfile.get_profile_name, - receiverProfile.get_node_name, - receiverProfile.get_profile_name, - true - ); - - try { - const messageStr = ShinkaiMessageBuilderWrapper.create_chat_with_message( - setupDetailsState.my_device_encryption_sk, - setupDetailsState.my_device_identity_sk, - setupDetailsState.node_encryption_pk, - sender, - sender_subidentity, - receiver, - receiver_subidentity, - text_message, - inbox.get_value - ); - - const message: ShinkaiMessage = JSON.parse(messageStr); - // console.log("Message:", message); - - const apiEndpoint = ApiConfig.getInstance().getEndpoint(); - const response = await axios.post(`${apiEndpoint}/v1/send`, message); - - handleHttpError(response); - if (message.body && "unencrypted" in message.body) { - const inboxId = message.body.unencrypted.internal_metadata.inbox; - dispatch(addMessageToInbox(inboxId, message)); - return inboxId; - } else { - console.error("Error: message body is null or encrypted"); - } - } catch (error) { - console.error("Error sending text message:", error); - } - }; - -export const sendTextMessageWithInbox = - ( - sender: string, - sender_subidentity: string, - receiver: string, - text_message: string, - inbox_name: string, - setupDetailsState: SetupDetailsState - ) => - async (dispatch: AppDispatch) => { - try { - const messageStr = - ShinkaiMessageBuilderWrapper.send_text_message_with_inbox( - setupDetailsState.my_device_encryption_sk, - setupDetailsState.my_device_identity_sk, - setupDetailsState.node_encryption_pk, - sender, - sender_subidentity, - receiver, - "", - inbox_name, - text_message - ); - - const message: ShinkaiMessage = JSON.parse(messageStr); - console.log("Message:", message); - - const apiEndpoint = ApiConfig.getInstance().getEndpoint(); - const response = await axios.post(`${apiEndpoint}/v1/send`, message); - - handleHttpError(response); - if (message.body && "unencrypted" in message.body) { - const inboxId = message.body.unencrypted.internal_metadata.inbox; - dispatch(addMessageToInbox(inboxId, message)); - return inboxId; - } else { - console.error("Error: message body is null or encrypted"); - } - } catch (error) { - console.error("Error sending text message:", error); - } - }; - -export const getAllInboxesForProfile = - ( - sender: string, - sender_subidentity: string, - receiver: string, - target_shinkai_name_profile: string, - setupDetailsState: SetupDetailsState - ) => - async (dispatch: AppDispatch) => { - try { - const messageStr = - ShinkaiMessageBuilderWrapper.get_all_inboxes_for_profile( - setupDetailsState.my_device_encryption_sk, - setupDetailsState.my_device_identity_sk, - setupDetailsState.node_encryption_pk, - sender, - sender_subidentity, - receiver, - target_shinkai_name_profile - ); - - const message = JSON.parse(messageStr); - console.log("Message:", message); - - const apiEndpoint = ApiConfig.getInstance().getEndpoint(); - const response = await axios.post( - `${apiEndpoint}/v1/get_all_inboxes_for_profile`, - message - ); - - handleHttpError(response); - console.log("GetAllInboxesForProfile Response:", response.data); - dispatch(receiveAllInboxesForProfile(response.data)); - } catch (error) { - console.error("Error getting all inboxes for profile:", error); - } - }; - -export const getLastMessagesFromInbox = - ( - inbox: string, - count: number, - lastKey: string | undefined, - setupDetailsState: SetupDetailsState, - previous: boolean = false - ) => - async (dispatch: AppDispatch) => { - try { - console.log("lastKey: ", lastKey); - let sender = - setupDetailsState.shinkai_identity + "/" + setupDetailsState.profile; - - const messageStr = - ShinkaiMessageBuilderWrapper.get_last_messages_from_inbox( - setupDetailsState.profile_encryption_sk, - setupDetailsState.profile_identity_sk, - setupDetailsState.node_encryption_pk, - inbox, - count, - lastKey, - sender, - "", - setupDetailsState.shinkai_identity - ); - - const message = JSON.parse(messageStr); - console.log("Message:", message); - - const apiEndpoint = ApiConfig.getInstance().getEndpoint(); - const response = await axios.post( - `${apiEndpoint}/v1/last_messages_from_inbox`, - message - ); - - handleHttpError(response); - let results = response.data; - if (previous) { - console.log("receiveLoadMoreMessagesFromInbox Response:", results); - dispatch(receiveLoadMoreMessagesFromInbox(inbox, results)); - } else { - console.log("receiveLastMessagesFromInbox Response:", results); - dispatch(receiveLastMessagesFromInbox(inbox, results)); - } - } catch (error) { - console.error("Error getting last messages from inbox:", error); - } - }; - -export const getLastUnreadMessagesFromInbox = - ( - inbox: string, - count: number, - fromKey: string | undefined, - setupDetailsState: SetupDetailsState - ) => - async (dispatch: AppDispatch) => { - try { - console.log("fromKey: ", fromKey); - let sender = - setupDetailsState.shinkai_identity + "/" + setupDetailsState.profile; - - const messageStr = - ShinkaiMessageBuilderWrapper.get_last_messages_from_inbox( - setupDetailsState.profile_encryption_sk, - setupDetailsState.profile_identity_sk, - setupDetailsState.node_encryption_pk, - inbox, - count, - fromKey, - sender, - "", - setupDetailsState.shinkai_identity - ); - - const message = JSON.parse(messageStr); - console.log("Message:", message); - - const apiEndpoint = ApiConfig.getInstance().getEndpoint(); - const response = await axios.post( - `${apiEndpoint}/v1/last_unread_messages_from_inbox`, - message - ); - - handleHttpError(response); - let results = response.data; - - console.log("getLastUnreadMessagesFromInbox Response:", results); - dispatch(receiveUnreadMessagesFromInbox(inbox, results)); - } catch (error) { - console.error("Error getting last messages from inbox:", error); - } - }; - -export const submitRequestRegistrationCode = - ( - identity_permissions: string, - code_type = "profile", - setupDetailsState: SetupDetailsState - ) => - async (dispatch: AppDispatch) => { - try { - // TODO: refactor the profile name to be a constant - // maybe we should add ShinkaiName and InboxName to the wasm library (just ADDED them this needs refactor) - let sender_profile_name = - setupDetailsState.profile + - "/device/" + - setupDetailsState.registration_name; - console.log("sender_profile_name:", sender_profile_name); - console.log("identity_permissions:", identity_permissions); - console.log("code_type:", code_type); - - const messageStr = ShinkaiMessageBuilderWrapper.request_code_registration( - setupDetailsState.my_device_encryption_sk, - setupDetailsState.my_device_identity_sk, - setupDetailsState.node_encryption_pk, - identity_permissions, - code_type, - sender_profile_name, - setupDetailsState.shinkai_identity - ); - - const message = JSON.parse(messageStr); - console.log("Message:", message); - - const apiEndpoint = ApiConfig.getInstance().getEndpoint(); - const response = await axios.post( - `${apiEndpoint}/v1/create_registration_code`, - message - ); - - handleHttpError(response); - dispatch(createRegistrationCode(response.data.code)); - } catch (error) { - console.error("Error creating registration code:", error); - } - }; - -export const submitRegistrationCode = - (setupData: MergedSetupType): AppThunk => - async (dispatch: AppDispatch) => { - try { - const messageStr = - ShinkaiMessageBuilderWrapper.use_code_registration_for_device( - setupData.my_device_encryption_sk, - setupData.my_device_identity_sk, - setupData.profile_encryption_sk, - setupData.profile_identity_sk, - setupData.node_encryption_pk, - setupData.registration_code, - setupData.identity_type, - setupData.permission_type, - setupData.registration_name, - "", // sender_profile_name: it doesn't exist yet in the Node - setupData.shinkai_identity - ); - - const message = JSON.parse(messageStr); - console.log( - "submitRegistrationCode registration_name: ", - setupData.registration_name - ); - console.log( - "submitRegistrationCode identity_type: ", - setupData.identity_type - ); - console.log( - "submitRegistrationCode permission_type: ", - setupData.permission_type - ); - console.log("submitRegistrationCode Message:", message); - - // Use node_address from setupData for API endpoint - let response = await axios.post( - `${setupData.node_address}/v1/use_registration_code`, - message - ); - - handleHttpError(response); - - // Update the API_ENDPOINT after successful registration - ApiConfig.getInstance().setEndpoint(setupData.node_address); - - dispatch(useRegistrationCode(setupData)); - - return true; - } catch (error) { - console.log("Error using registration code:", error); - if (error instanceof Error) { - dispatch(registrationError(error.message)); - } - return false; - } - }; - -export const pingAllNodes = () => async (dispatch: AppDispatch) => { - const apiEndpoint = ApiConfig.getInstance().getEndpoint(); - try { - const response = await axios.post(`${apiEndpoint}/ping_all`); - handleHttpError(response); - dispatch(pingAll(response.data.result)); - } catch (error) { - console.error("Error pinging all nodes:", error); - } -}; - -export const createJob = async ( - scope: any, - sender: string, - receiver: string, - receiver_subidentity: string, - setupDetailsState: SetupDetailsState -) => { - try { - const messageStr = ShinkaiMessageBuilderWrapper.job_creation( - setupDetailsState.profile_encryption_sk, - setupDetailsState.profile_identity_sk, - setupDetailsState.node_encryption_pk, - scope, - sender, - receiver, - receiver_subidentity - ); - - const message = JSON.parse(messageStr); - - const apiEndpoint = ApiConfig.getInstance().getEndpoint(); - const response = await axios.post(`${apiEndpoint}/v1/create_job`, message); - handleHttpError(response); - console.log("createJob Response:", response.data); - const jobId = response.data; - return jobId; - } catch (error) { - console.error("Error creating job:", error); - } -}; - -export const sendMessageToJob = - ( - jobId: string, - content: string, - sender: string, - receiver: string, - receiver_subidentity: string, - setupDetailsState: SetupDetailsState - ) => - async (dispatch: AppDispatch) => { - try { - const messageStr = ShinkaiMessageBuilderWrapper.job_message( - jobId, - content, - setupDetailsState.profile_encryption_sk, - setupDetailsState.profile_identity_sk, - setupDetailsState.node_encryption_pk, - sender, - receiver, - receiver_subidentity - ); - - const message = JSON.parse(messageStr); - // console.log("Message:", message); - - const apiEndpoint = ApiConfig.getInstance().getEndpoint(); - const response = await axios.post( - `${apiEndpoint}/v1/job_message`, - message - ); - - handleHttpError(response); - dispatch({ type: "SEND_MESSAGE_SUCCESS", payload: response.data }); - } catch (error) { - console.error("Error sending message to job:", error); - } - }; - -export const getProfileAgents = - ( - sender: string, - sender_subidentity: string, - receiver: string, - setupDetailsState: SetupDetailsState - ) => - async (dispatch: AppDispatch) => { - try { - const messageStr = ShinkaiMessageBuilderWrapper.get_profile_agents( - setupDetailsState.my_device_encryption_sk, - setupDetailsState.my_device_identity_sk, - setupDetailsState.node_encryption_pk, - sender, - sender_subidentity, - receiver - ); - - const message = JSON.parse(messageStr); - // console.log("Message:", message); - - const apiEndpoint = ApiConfig.getInstance().getEndpoint(); - const response = await axios.post( - `${apiEndpoint}/v1/available_agents`, - message - ); - - console.log("getProfileAgents Response:", response.data); - handleHttpError(response); - dispatch(addAgents(response.data)); - return response.data; - } catch (error) { - console.error("Error sending message to job:", error); - } - }; - -export const addAgent = async ( - sender_subidentity: string, - node_name: string, - agent: SerializedAgent, - setupDetailsState: SetupDetailsState -) => { - try { - let agent_wrapped = SerializedAgentWrapper.fromSerializedAgent(agent); - const messageStr = ShinkaiMessageBuilderWrapper.request_add_agent( - setupDetailsState.profile_encryption_sk, - setupDetailsState.profile_identity_sk, - setupDetailsState.node_encryption_pk, - node_name + "/" + sender_subidentity, - "", - node_name, - agent_wrapped - ); - - const message = JSON.parse(messageStr); - // console.log("Message:", message); - - const apiEndpoint = ApiConfig.getInstance().getEndpoint(); - const response = await axios.post(`${apiEndpoint}/v1/add_agent`, message); - - console.log("addAgent Response:", response.data); - handleHttpError(response); - return response.data; - } catch (error) { - console.error("Error sending message to add agent:", error); - } -}; diff --git a/shinkai-app/src/components/ChatMessages.tsx b/shinkai-app/src/components/ChatMessages.tsx deleted file mode 100644 index c159c5a90..000000000 --- a/shinkai-app/src/components/ChatMessages.tsx +++ /dev/null @@ -1,173 +0,0 @@ -import React, { useEffect, useState } from "react"; -import { useSelector, useDispatch } from "react-redux"; -import { getLastMessagesFromInbox, getLastUnreadMessagesFromInbox } from "../api/index"; -import { ShinkaiMessage } from "../models/ShinkaiMessage"; -import { IonList, IonItem, IonButton } from "@ionic/react"; -import Avatar from "../components/ui/Avatar"; -import { cn } from "../theme/lib/utils"; -import { IonContentCustom } from "./ui/Layout"; -import { calculateMessageHash } from "../utils/shinkai_message_handler"; -import { RootState } from "../store"; - -interface ChatMessagesProps { - deserializedId: string; -} - -const ChatMessages: React.FC = ({ deserializedId }) => { - console.log("Loading ChatMessages.tsx"); - const dispatch = useDispatch(); - const setupDetailsState = useSelector( - (state: RootState) => state.setupDetails - ); - const reduxMessages = useSelector( - (state: RootState) => state.messages.inboxes[deserializedId] - ); - - const [lastKey, setLastKey] = useState(undefined); - const [mostRecentKey, setMostRecentKey] = useState(undefined); - const [prevMessagesLength, setPrevMessagesLength] = useState(0); - const [hasMoreMessages, setHasMoreMessages] = useState(true); - const [messages, setMessages] = useState([]); - - useEffect(() => { - console.log("deserializedId:", deserializedId); - dispatch( - getLastMessagesFromInbox(deserializedId, 10, lastKey, setupDetailsState) - ); - }, [dispatch, setupDetailsState]); - - useEffect(() => { - const interval = setInterval(() => { - const lastMessage = reduxMessages[reduxMessages.length - 1]; - const hashKey = calculateMessageHash(lastMessage); - dispatch( - getLastUnreadMessagesFromInbox(deserializedId, 10, mostRecentKey, setupDetailsState) - ); - }, 5000); // 2000 milliseconds = 2 seconds - return () => clearInterval(interval); - }, [dispatch, deserializedId, mostRecentKey, setupDetailsState, reduxMessages]); - - useEffect(() => { - if (reduxMessages && reduxMessages.length > 0) { - // console.log("Redux Messages:", reduxMessages); - const lastMessage = reduxMessages[reduxMessages.length - 1]; - console.log("Last Message:", lastMessage); - const timeKey = lastMessage.external_metadata.scheduled_time; - const hashKey = calculateMessageHash(lastMessage); - const lastMessageKey = `${timeKey}:::${hashKey}`; - setLastKey(lastMessageKey); - - const mostRecentMessage = reduxMessages[0]; - const mostRecentTimeKey = mostRecentMessage.external_metadata.scheduled_time; - const mostRecentHashKey = calculateMessageHash(mostRecentMessage); - const mostRecentMessageKey = `${mostRecentTimeKey}:::${mostRecentHashKey}`; - setMostRecentKey(mostRecentMessageKey); - - setMessages(reduxMessages); - - if (reduxMessages.length - prevMessagesLength < 10) { - setHasMoreMessages(false); - } - setPrevMessagesLength(reduxMessages.length); - } - }, [reduxMessages]); - - const extractContent = (messageBody: any) => { - // TODO: extend it so it can be re-used by JobChat or normal Chat - if (messageBody && "unencrypted" in messageBody) { - if ("unencrypted" in messageBody.unencrypted.message_data) { - return JSON.parse( - messageBody.unencrypted.message_data.unencrypted.message_raw_content - ).content; - } else { - return JSON.parse( - messageBody.unencrypted.message_data.encrypted.content - ).content; - } - } else if (messageBody?.encrypted) { - return JSON.parse(messageBody.encrypted.content).content; - } - return ""; - }; - - return ( - -

- {hasMoreMessages && ( - - dispatch( - getLastMessagesFromInbox( - deserializedId, - 10, - lastKey, - setupDetailsState, - true - ) - ) - } - > - Load More - - )} - - {messages && - messages - .slice() - .map((message, index) => { - const { shinkai_identity, profile, registration_name } = - setupDetailsState; - - const localIdentity = `${profile}/device/${registration_name}`; - // console.log("Message:", message); - let isLocalMessage = false; - if (message.body && "unencrypted" in message.body) { - isLocalMessage = - message.body.unencrypted.internal_metadata - .sender_subidentity === localIdentity; - } - - return ( - -
- - -

{extractContent(message.body)}

- {message?.external_metadata?.scheduled_time && ( - - {new Date( - message.external_metadata.scheduled_time - ).toLocaleString(undefined, { - year: "numeric", - month: "long", - day: "numeric", - hour: "2-digit", - minute: "2-digit", - })} - - )} -
-
- ); - })} -
-
- - ); -}; - -export default ChatMessages; diff --git a/shinkai-app/src/components/ExploreContainer.css b/shinkai-app/src/components/ExploreContainer.css deleted file mode 100644 index c2c47cfa2..000000000 --- a/shinkai-app/src/components/ExploreContainer.css +++ /dev/null @@ -1,24 +0,0 @@ -#container { - text-align: center; - position: absolute; - left: 0; - right: 0; - top: 50%; - transform: translateY(-50%); -} - -#container strong { - font-size: 20px; - line-height: 26px; -} - -#container p { - font-size: 16px; - line-height: 22px; - color: #8c8c8c; - margin: 0; -} - -#container a { - text-decoration: none; -} \ No newline at end of file diff --git a/shinkai-app/src/components/ExploreContainer.tsx b/shinkai-app/src/components/ExploreContainer.tsx deleted file mode 100644 index 1b68a3c19..000000000 --- a/shinkai-app/src/components/ExploreContainer.tsx +++ /dev/null @@ -1,14 +0,0 @@ -import './ExploreContainer.css'; - -interface ContainerProps { } - -const ExploreContainer: React.FC = () => { - return ( - - ); -}; - -export default ExploreContainer; diff --git a/shinkai-app/src/components/ui/Avatar.tsx b/shinkai-app/src/components/ui/Avatar.tsx deleted file mode 100644 index 762f27127..000000000 --- a/shinkai-app/src/components/ui/Avatar.tsx +++ /dev/null @@ -1,25 +0,0 @@ -import { IonAvatar } from "@ionic/react"; -import { cn } from "../../theme/lib/utils"; - -export default function Avatar({ - url, - className, -}: { - url?: string; - className?: string; -}) { - return ( - - - - ); -} diff --git a/shinkai-app/src/components/ui/Button.css b/shinkai-app/src/components/ui/Button.css deleted file mode 100644 index 15f4106ab..000000000 --- a/shinkai-app/src/components/ui/Button.css +++ /dev/null @@ -1,42 +0,0 @@ -.ion-button-custom { - @apply h-[50px] capitalize font-bold; - - &.variant-primary { - --box-shadow: none; - --background: theme("colors.brand.400"); - --color: white; - --ripple-color: theme("colors.brand.600"); - @media (prefers-color-scheme: dark) { - --color: theme("colors.white"); - } - } - &.variant-secondary { - --box-shadow: none; - --background: transparent; - --background-hover: theme("colors.slate.400"); - --background-activated: theme("colors.slate.50"); - --background-focused: theme("colors.slate.50"); - --color: theme("colors.slate.800"); - --border-color: theme("colors.slate.300"); - --border-style: solid; - --border-width: 1px; - --ripple-color: theme("colors.slate.200/50"); - @media (prefers-color-scheme: dark) { - --background-hover: theme("colors.slate.50"); - --color: theme("colors.white"); - --ripple-color: theme("colors.white/50"); - } - } - &.variant-tertiary { - --box-shadow: none; - --background: transparent; - --background-hover: theme("colors.slate.50"); - --background-activated: theme("colors.slate.50"); - --background-focused: theme("colors.slate.50"); - --color: theme("colors.slate.800"); - --ripple-color: theme("colors.white/50"); - @media (prefers-color-scheme: dark) { - --color: theme("colors.white"); - } - } -} diff --git a/shinkai-app/src/components/ui/Button.tsx b/shinkai-app/src/components/ui/Button.tsx deleted file mode 100644 index 48f1b9a7b..000000000 --- a/shinkai-app/src/components/ui/Button.tsx +++ /dev/null @@ -1,33 +0,0 @@ -import React from "react"; -import { IonButton } from "@ionic/react"; -import { cn } from "../../theme/lib/utils"; -import "./Button.css"; - -export default function Button({ - onClick, - disabled, - children, - className, - variant = "primary", -}: { - onClick: () => void; - disabled?: boolean; - children: React.ReactNode; - className?: string; - variant?: "primary" | "secondary" | "tertiary"; -}) { - return ( - - {children} - - ); -} diff --git a/shinkai-app/src/components/ui/Input.css b/shinkai-app/src/components/ui/Input.css deleted file mode 100644 index 122390e96..000000000 --- a/shinkai-app/src/components/ui/Input.css +++ /dev/null @@ -1,26 +0,0 @@ -.ion-input-item-custom { - @apply h-[44px]; - --background: theme("colors.slate.100"); - --color: theme("colors.slate.900"); - --border-color: theme("colors.slate.100"); - --background-focused: transparent; - --border-width: 1px; - @media (prefers-color-scheme: dark) { - --background: theme("colors.slate.900"); - --color: theme("colors.slate.800"); - --border-color: theme("colors.slate.900"); - } - &::part(native) { - height: 100%; - } -} -.native-input { - --highlight-color-focused: theme("colors.slate.900"); - --placeholder-color: theme("colors.slate.800"); - --color: theme("colors.slate.900"); - @media (prefers-color-scheme: dark) { - --highlight-color-focused: theme("colors.white"); - --placeholder-color: theme("colors.slate.300"); - --color: theme("colors.white"); - } -} diff --git a/shinkai-app/src/components/ui/Input.tsx b/shinkai-app/src/components/ui/Input.tsx deleted file mode 100644 index 7b6337526..000000000 --- a/shinkai-app/src/components/ui/Input.tsx +++ /dev/null @@ -1,37 +0,0 @@ -import { InputCustomEvent } from "@ionic/core/dist/types/components/input/input-interface"; -import { InputChangeEventDetail, IonInput, IonItem } from "@ionic/react"; -import { cn } from "../../theme/lib/utils"; -import React from "react"; -import "./Input.css"; - -export default function Input({ - onChange, - value, - label, - className, -}: { - onChange: (event: InputCustomEvent) => void; - value: string; - label: string; - className?: string; -}) { - return ( - - - - ); -} diff --git a/shinkai-app/src/components/ui/Layout.css b/shinkai-app/src/components/ui/Layout.css deleted file mode 100644 index bfab83ed6..000000000 --- a/shinkai-app/src/components/ui/Layout.css +++ /dev/null @@ -1,19 +0,0 @@ -.ion-header-custom { - --background: theme("colors.slate.900"); - --color: white; - @apply min-h-[60px] md:min-h-[100px]; - @apply flex items-center; - @media (prefers-color-scheme: dark) { - --color: theme("colors.slate.200"); - } -} - -.ion-content-custom { - --background: theme("colors.slate.900"); -} -.ion-toolbar-custom { - --background: theme("colors.white"); - @media (prefers-color-scheme: dark) { - --background: theme("colors.slate.900"); - } -} diff --git a/shinkai-app/src/components/ui/Layout.tsx b/shinkai-app/src/components/ui/Layout.tsx deleted file mode 100644 index 91942de65..000000000 --- a/shinkai-app/src/components/ui/Layout.tsx +++ /dev/null @@ -1,53 +0,0 @@ -import React from "react"; -import { - IonBackButton, - IonButtons, - IonContent, - IonFooter, - IonHeader, - IonTitle, - IonToolbar, -} from "@ionic/react"; -import "./Layout.css"; - -export const IonHeaderCustom = ({ - children, -}: { - children: React.ReactNode; -}) => { - return ( - - - {children} - - - ); -}; -export const IonContentCustom = ({ - children, -}: { - children: React.ReactNode; -}) => { - return ( - -
{children}
-
- ); -}; - -export const IonFooterCustom = ({ - children, -}: { - children: React.ReactNode; -}) => { - return ( - - - {children} - - - ); -}; diff --git a/shinkai-app/src/features/chat/chatSlice.ts b/shinkai-app/src/features/chat/chatSlice.ts deleted file mode 100644 index 5f860122e..000000000 --- a/shinkai-app/src/features/chat/chatSlice.ts +++ /dev/null @@ -1,27 +0,0 @@ -// src/features/chat/chatSlice.ts -import { createSlice, PayloadAction } from '@reduxjs/toolkit'; -import { RootState } from '../../store/main'; - -interface ChatState { - messages: any[]; // Replace any with the type of your messages -} - -const initialState: ChatState = { - messages: [], -}; - -export const chatSlice = createSlice({ - name: 'chat', - initialState, - reducers: { - addMessage: (state, action: PayloadAction) => { // Replace any with the type of your messages - state.messages.push(action.payload); - }, - }, -}); - -export const { addMessage } = chatSlice.actions; - -export const selectMessages = (state: RootState) => state.chat.messages; - -export default chatSlice.reducer; diff --git a/shinkai-app/src/hooks/usetSetup.ts b/shinkai-app/src/hooks/usetSetup.ts deleted file mode 100644 index fcd31e21e..000000000 --- a/shinkai-app/src/hooks/usetSetup.ts +++ /dev/null @@ -1,17 +0,0 @@ -// hooks/useSetup.ts -import { useEffect } from "react"; -import { shallowEqual, useSelector } from "react-redux"; -import { RootState } from "../store"; -import { ApiConfig } from "../api/api_config"; - -export const useSetup = () => { - const setupDetails = useSelector( - (state: RootState) => state.setupDetails, - shallowEqual - ); - - useEffect(() => { - console.log("Redux State:", setupDetails); - ApiConfig.getInstance().setEndpoint(setupDetails.node_address); - }, [setupDetails]); -}; \ No newline at end of file diff --git a/shinkai-app/src/lib/wasm/InboxNameWrapper.test.ts b/shinkai-app/src/lib/wasm/InboxNameWrapper.test.ts deleted file mode 100644 index a9e9fb966..000000000 --- a/shinkai-app/src/lib/wasm/InboxNameWrapper.test.ts +++ /dev/null @@ -1,88 +0,0 @@ -import { InboxNameWrapper } from "./InboxNameWrapper"; -import { test } from "vitest"; - -test("InboxNameWrapper", () => { - const validNames = [ - "inbox::@@node.shinkai::true", - "inbox::@@node1.shinkai/subidentity::false", - "inbox::@@alice.shinkai/profileName/agent/myChatGPTAgent::true", - "inbox::@@alice.shinkai/profileName/device/myPhone::true", - "inbox::@@node1.shinkai/subidentity::@@node2.shinkai/subidentity2::false", - "inbox::@@node1.shinkai/subidentity::@@node2.shinkai/subidentity::@@node3.shinkai/subidentity2::false", - ]; - - const invalidNames = [ - "@@node1.shinkai::false", - "inbox::@@node1.shinkai::falsee", - "@@node1.shinkai", - "inbox::@@node1.shinkai", - "inbox::node1::false", - "inbox::node1.shinkai::false", - "inbox::@@node1::false", - "inbox::@@node1.shinkai//subidentity::@@node2.shinkai::false", - "inbox::@@node1/subidentity::false", - ]; - - for (const name of validNames) { - const wrapper = new InboxNameWrapper(name); - expect(wrapper.get_value).toBe(name.toLowerCase()); - } - - for (const name of invalidNames) { - expect(() => new InboxNameWrapper(name)).toThrow(); - } -}); - -test("InboxNameWrapper get_identities", () => { - const namesWithIdentities = [ - { - name: "inbox::@@alice.shinkai/profileName::true", - identity: "@@alice.shinkai/profileName", - }, - { - name: "inbox::@@alice.shinkai/profileName/agent/myChatGPTAgent::true", - identity: "@@alice.shinkai/profilename/agent/mychatgptagent", - }, - { - name: "inbox::@@alice.shinkai/profileName/device/myPhone::true", - identity: "@@alice.shinkai/profilename/device/myphone", - }, - ]; - - for (const { name, identity } of namesWithIdentities) { - const wrapper = new InboxNameWrapper(name); - expect(wrapper.get_identities).toStrictEqual([identity.toLowerCase()]); - } -}); - -test("InboxNameWrapper get_regular_inbox_name_from_params", () => { - const params = [ - { - sender: "@@alice.shinkai", - sender_subidentity: "profileName", - recipient: "@@bob.shinkai", - recipient_subidentity: "profileName", - is_e2e: true, - expected: "inbox::@@alice.shinkai/profilename::@@bob.shinkai/profilename::true", - }, - ]; - - for (const { sender, sender_subidentity, recipient, recipient_subidentity, is_e2e, expected } of params) { - const wrapper = InboxNameWrapper.get_regular_inbox_name_from_params(sender, sender_subidentity, recipient, recipient_subidentity, is_e2e); - expect(wrapper.get_value).toBe(expected.toLowerCase()); - } -}); - -test("InboxNameWrapper get_job_inbox_name_from_params", () => { - const params = [ - { - unique_id: "123", - expected: "job_inbox::123::false", - }, - ]; - - for (const { unique_id, expected } of params) { - const wrapper = InboxNameWrapper.get_job_inbox_name_from_params(unique_id); - expect(wrapper.get_value).toBe(expected.toLowerCase()); - } -}); \ No newline at end of file diff --git a/shinkai-app/src/lib/wasm/InboxNameWrapper.ts b/shinkai-app/src/lib/wasm/InboxNameWrapper.ts deleted file mode 100644 index 46a10c18a..000000000 --- a/shinkai-app/src/lib/wasm/InboxNameWrapper.ts +++ /dev/null @@ -1,51 +0,0 @@ -import { InboxNameWrapper as InboxNameWrapperWASM } from "../../pkg/shinkai_message_wasm.js"; - -export class InboxNameWrapper { - private wasmWrapper: InboxNameWrapperWASM; - - constructor(inbox_name_js: any) { - this.wasmWrapper = new InboxNameWrapperWASM(inbox_name_js); - } - - free(): void { - this.wasmWrapper.free(); - } - - to_jsvalue(): any { - return this.wasmWrapper.to_jsvalue(); - } - - to_json_str(): string { - return this.wasmWrapper.to_json_str(); - } - - static get_regular_inbox_name_from_params(sender: string, sender_subidentity: string, recipient: string, recipient_subidentity: string, is_e2e: boolean): InboxNameWrapper { - const wasmWrapper = InboxNameWrapperWASM.get_regular_inbox_name_from_params(sender, sender_subidentity, recipient, recipient_subidentity, is_e2e); - return new InboxNameWrapper(wasmWrapper.get_value); - } - - static get_job_inbox_name_from_params(unique_id: string): InboxNameWrapper { - const wasmWrapper = InboxNameWrapperWASM.get_job_inbox_name_from_params(unique_id); - return new InboxNameWrapper(wasmWrapper.get_value); - } - - get get_identities(): any { - return this.wasmWrapper.get_identities; - } - - get get_is_e2e(): boolean { - return this.wasmWrapper.get_is_e2e; - } - - get get_unique_id(): any { - return this.wasmWrapper.get_unique_id; - } - - get get_value(): any { - return this.wasmWrapper.get_value; - } - - get to_string(): any { - return this.wasmWrapper.to_string; - } -} \ No newline at end of file diff --git a/shinkai-app/src/lib/wasm/JobCreationWrapper.test.ts b/shinkai-app/src/lib/wasm/JobCreationWrapper.test.ts deleted file mode 100644 index 0e407c373..000000000 --- a/shinkai-app/src/lib/wasm/JobCreationWrapper.test.ts +++ /dev/null @@ -1,45 +0,0 @@ -import { JobCreationWrapper } from './JobCreationWrapper'; - -const jobCreationJson = `{ - "scope": { - "buckets": ["inbox::@@node.shinkai::true", "job_inbox::my_job::false"], - "documents": ["doc1", "doc2"] - } -}`; - -describe('JobCreationWrapper', () => { -// it('should correctly convert from and to JSON string', () => { -// const wrapper = JobCreationWrapper.from_json_str(jobCreationJson); -// const jsonString = wrapper.to_json_str(); - -// expect(JSON.parse(jsonString)).toEqual(JSON.parse(jobCreationJson)); -// }); - -// it('should correctly convert from and to JsValue string', () => { -// let jobCreation = JSON.parse(jobCreationJson); -// const wrapper = JobCreationWrapper.from_jsvalue(jobCreation); -// const jsonString = wrapper.to_json_str(); - -// expect(JSON.parse(jsonString)).toEqual(JSON.parse(jobCreationJson)); -// }); - -// it('should correctly instantiate it from a JobCreation Typescript object', () => { -// let jobCreation: any = JSON.parse(jobCreationJson); -// const wrapper = JobCreationWrapper.from_jsvalue(jobCreation); -// const jsonString = wrapper.to_json_str(); - -// expect(JSON.parse(jsonString)).toEqual(JSON.parse(jobCreationJson)); -// }); - - it('should correctly instantiate an empty JobCreationWrapper', () => { - const wrapper = JobCreationWrapper.empty(); - const jsonString = wrapper.to_json_str(); - - expect(JSON.parse(jsonString)).toEqual({ - scope: { - buckets: [], - documents: [] - } - }); - }); -}); \ No newline at end of file diff --git a/shinkai-app/src/lib/wasm/JobCreationWrapper.ts b/shinkai-app/src/lib/wasm/JobCreationWrapper.ts deleted file mode 100644 index 8ae099f07..000000000 --- a/shinkai-app/src/lib/wasm/JobCreationWrapper.ts +++ /dev/null @@ -1,38 +0,0 @@ -import { JobCreationWrapper as JobCreationWrapperWASM } from "../../pkg/shinkai_message_wasm.js"; - -export class JobCreationWrapper { - private wasmWrapper: JobCreationWrapperWASM; - - constructor(scope_js: any) { - this.wasmWrapper = new JobCreationWrapperWASM(scope_js); - } - - to_jsvalue(): any { - return this.wasmWrapper.to_jsvalue(); - } - - to_json_str(): string { - return this.wasmWrapper.to_json_str(); - } - - static from_json_str(s: string): JobCreationWrapper { - let js_value = JSON.parse(s); - return new JobCreationWrapper(js_value.scope); - } - - static from_jsvalue(js_value: any): JobCreationWrapper { - return new JobCreationWrapper(js_value.scope); - } - - static empty(): JobCreationWrapper { - return new JobCreationWrapper(JobCreationWrapperWASM.empty().get_scope); - } - - free(): void { - this.wasmWrapper.free(); - } - - get get_scope(): any { - return this.wasmWrapper.get_scope; - } -} \ No newline at end of file diff --git a/shinkai-app/src/lib/wasm/JobMessageWrapper.ts b/shinkai-app/src/lib/wasm/JobMessageWrapper.ts deleted file mode 100644 index c599a2ec1..000000000 --- a/shinkai-app/src/lib/wasm/JobMessageWrapper.ts +++ /dev/null @@ -1,34 +0,0 @@ -import { JobMessageWrapper as JobMessageWrapperWASM } from "../../pkg/shinkai_message_wasm.js"; - -export class JobMessageWrapper { - private wasmWrapper: JobMessageWrapperWASM; - - constructor(job_id_js: any, content_js: any) { - this.wasmWrapper = new JobMessageWrapperWASM(job_id_js, content_js); - } - - to_jsvalue(): any { - return this.wasmWrapper.to_jsvalue(); - } - - to_json_str(): string { - return this.wasmWrapper.to_json_str(); - } - - static from_json_str(s: string): JobMessageWrapper { - let js_value = JSON.parse(s); - return new JobMessageWrapper(js_value.job_id_js, js_value.content_js); - } - - static from_jsvalue(js_value: any): JobMessageWrapper { - return new JobMessageWrapper(js_value.job_id_js, js_value.content_js); - } - - static fromStrings(job_id: string, content: string): JobMessageWrapper { - return new JobMessageWrapper(job_id, content); - } - - free(): void { - this.wasmWrapper.free(); - } -} diff --git a/shinkai-app/src/lib/wasm/JobScopeWrapper.ts b/shinkai-app/src/lib/wasm/JobScopeWrapper.ts deleted file mode 100644 index 71fa5fbbd..000000000 --- a/shinkai-app/src/lib/wasm/JobScopeWrapper.ts +++ /dev/null @@ -1,34 +0,0 @@ -import { JobScopeWrapper as JobScopeWrapperWASM } from "../../pkg/shinkai_message_wasm.js"; - -export class JobScopeWrapper { - private wasmWrapper: JobScopeWrapperWASM; - - constructor(buckets_js: any, documents_js: any) { - this.wasmWrapper = new JobScopeWrapperWASM(buckets_js, documents_js); - } - - to_jsvalue(): any { - return this.wasmWrapper.to_jsvalue(); - } - - to_json_str(): string { - return this.wasmWrapper.to_json_str(); - } - - static from_json_str(s: string): JobScopeWrapper { - let js_value = JSON.parse(s); - return new JobScopeWrapper(js_value.buckets_js, js_value.documents_js); - } - - static from_jsvalue(js_value: any): JobScopeWrapper { - return new JobScopeWrapper(js_value.buckets_js, js_value.documents_js); - } - - static empty(): JobScopeWrapper { - return new JobScopeWrapper({}, {}); - } - - free(): void { - this.wasmWrapper.free(); - } -} \ No newline at end of file diff --git a/shinkai-app/src/lib/wasm/SerializedAgentWrapper.test.ts b/shinkai-app/src/lib/wasm/SerializedAgentWrapper.test.ts deleted file mode 100644 index 4ade796e1..000000000 --- a/shinkai-app/src/lib/wasm/SerializedAgentWrapper.test.ts +++ /dev/null @@ -1,75 +0,0 @@ -import { test } from "vitest"; -import { SerializedAgentWrapper } from "./SerializedAgentWrapper"; -import { ShinkaiNameWrapper } from "./ShinkaiNameWrapper"; -import { SerializedAgent } from "../../models/SchemaTypes"; - -test("SerializedAgentWrapper conversion", async () => { - // Create a SerializedAgentWrapper using fromStrings - const serializedAgentWrapper = SerializedAgentWrapper.fromStrings( - "test_agent", - "@@node.shinkai/main/agent/test_agent", - "false", - "http://example.com", - "123456", - "openai:chatgpt3-turbo", - "permission1,permission2", - "bucket1,bucket2", - "sender1,sender2" - ); - - // Get the inner SerializedAgent - const agent = serializedAgentWrapper.inner; - - // Create a ShinkaiNameWrapper from the full_identity_name - const fullIdentityNameWrapper = new ShinkaiNameWrapper( - agent.full_identity_name.full_name - ); - - // Check that the fields are correctly converted - expect(agent.id).toBe("test_agent"); - expect(fullIdentityNameWrapper.get_full_name).toBe("@@node.shinkai/main/agent/test_agent") - expect(agent.perform_locally).toBe(false); - expect(agent.external_url).toBe("http://example.com"); - expect(agent.api_key).toBe("123456"); - expect(agent.model.openai.model_type).toBe("chatgpt3-turbo"); - expect(agent.toolkit_permissions).toEqual(["permission1", "permission2"]); - expect(agent.storage_bucket_permissions).toEqual(["bucket1", "bucket2"]); - expect(agent.allowed_message_senders).toEqual(["sender1", "sender2"]); -}); - -test("SerializedAgent to SerializedAgentWrapper conversion", async () => { - // Create a SerializedAgent - const serializedAgent: SerializedAgent = { - id: "test_agent", - full_identity_name: "@@node.shinkai/main/agent/test_agent", - perform_locally: false, - external_url: "http://example.com", - api_key: "123456", - model: { OpenAI: { model_type: "chatgpt3-turbo" } }, - toolkit_permissions: ["permission1", "permission2"], - storage_bucket_permissions: ["bucket1", "bucket2"], - allowed_message_senders: ["sender1", "sender2"] - }; - - // Convert the SerializedAgent to a SerializedAgentWrapper - const serializedAgentWrapper = SerializedAgentWrapper.fromSerializedAgent(serializedAgent); - - // Get the inner SerializedAgent - const agent = serializedAgentWrapper.inner; - - // Create a ShinkaiNameWrapper from the full_identity_name - const fullIdentityNameWrapper = new ShinkaiNameWrapper( - agent.full_identity_name.full_name - ); - - // Check that the fields are correctly converted - expect(agent.id).toBe("test_agent"); - expect(fullIdentityNameWrapper.get_full_name).toBe("@@node.shinkai/main/agent/test_agent") - expect(agent.perform_locally).toBe(false); - expect(agent.external_url).toBe("http://example.com"); - expect(agent.api_key).toBe("123456"); - expect(agent.model.openai.model_type).toBe("chatgpt3-turbo"); - expect(agent.toolkit_permissions).toEqual(["permission1", "permission2"]); - expect(agent.storage_bucket_permissions).toEqual(["bucket1", "bucket2"]); - expect(agent.allowed_message_senders).toEqual(["sender1", "sender2"]); -}); \ No newline at end of file diff --git a/shinkai-app/src/lib/wasm/SerializedAgentWrapper.ts b/shinkai-app/src/lib/wasm/SerializedAgentWrapper.ts deleted file mode 100644 index d8fbfa8ec..000000000 --- a/shinkai-app/src/lib/wasm/SerializedAgentWrapper.ts +++ /dev/null @@ -1,97 +0,0 @@ -import { SerializedAgent } from "../../models/SchemaTypes.js"; -import { SerializedAgentWrapper as SerializedAgentWrapperWASM } from "../../pkg/shinkai_message_wasm.js"; - -export class SerializedAgentWrapper { - private wasmWrapper: SerializedAgentWrapperWASM; - - constructor(serialized_agent_js: any) { - this.wasmWrapper = new SerializedAgentWrapperWASM(serialized_agent_js); - } - - free(): void { - this.wasmWrapper.free(); - } - - to_jsvalue(): any { - return this.wasmWrapper.to_jsvalue(); - } - - to_json_str(): string { - return this.wasmWrapper.to_json_str(); - } - - static fromSerializedAgent(agent: SerializedAgent): SerializedAgentWrapper { - let modelStr = ""; - if (agent.model && agent.model.OpenAI && agent.model.OpenAI.model_type) { - modelStr = "openai:" + agent.model.OpenAI.model_type; - } else if (agent.model && agent.model.SleepAPI) { - modelStr = "sleep"; - } else { - throw new Error("Invalid model: " + JSON.stringify(agent.model)); - } - const toolkitPermissionsStr = - agent.toolkit_permissions.length > 0 - ? agent.toolkit_permissions.join(",") - : ""; - const storageBucketPermissionsStr = - agent.storage_bucket_permissions.length > 0 - ? agent.storage_bucket_permissions.join(",") - : ""; - const allowedMessageSendersStr = - agent.allowed_message_senders.length > 0 - ? agent.allowed_message_senders.join(",") - : ""; - - const wasmWrapper = SerializedAgentWrapperWASM.fromStrings( - agent.id, - agent.full_identity_name, - agent.perform_locally.toString(), - agent.external_url || "", - agent.api_key || "", - modelStr, - toolkitPermissionsStr, - storageBucketPermissionsStr, - allowedMessageSendersStr - ); - return new SerializedAgentWrapper(wasmWrapper.to_jsvalue()); - } - - static fromStrings( - id: string, - full_identity_name: string, - perform_locally: string, - external_url: string, - api_key: string, - model: string, - toolkit_permissions: string, - storage_bucket_permissions: string, - allowed_message_senders: string - ): SerializedAgentWrapper { - const wasmWrapper = SerializedAgentWrapperWASM.fromStrings( - id, - full_identity_name, - perform_locally, - external_url, - api_key, - model, - toolkit_permissions, - storage_bucket_permissions, - allowed_message_senders - ); - return new SerializedAgentWrapper(wasmWrapper.to_jsvalue()); - } - - static fromJsValue(j: any): SerializedAgentWrapper { - const wasmWrapper = SerializedAgentWrapperWASM.fromJsValue(j); - return new SerializedAgentWrapper(wasmWrapper.to_jsvalue()); - } - - static from_json_str(s: string): SerializedAgentWrapper { - const wasmWrapper = SerializedAgentWrapperWASM.from_json_str(s); - return new SerializedAgentWrapper(wasmWrapper.to_jsvalue()); - } - - get inner(): any { - return this.wasmWrapper.inner; - } -} diff --git a/shinkai-app/src/lib/wasm/ShinkaiMessageBuilderWrapper.test.ts b/shinkai-app/src/lib/wasm/ShinkaiMessageBuilderWrapper.test.ts deleted file mode 100644 index 5825787c3..000000000 --- a/shinkai-app/src/lib/wasm/ShinkaiMessageBuilderWrapper.test.ts +++ /dev/null @@ -1,185 +0,0 @@ -import { test } from "vitest"; -import { ShinkaiMessageBuilderWrapper } from "./ShinkaiMessageBuilderWrapper"; -import { sha512 } from "@noble/hashes/sha512"; -import { generateKeyPair } from "curve25519-js"; -import * as ed from "@noble/ed25519"; -import { - EncryptionMethod, - MessageSchemaType, -} from "../../models/SchemaTypes"; -import { toHexString } from "../../utils/wasm_helpers"; - -// Enable synchronous methods -ed.etc.sha512Sync = (...m) => sha512(ed.etc.concatBytes(...m)); - -const { Crypto } = require("@peculiar/webcrypto"); -const crypto = new Crypto(); -globalThis.crypto = crypto; - -const generateKeys = async () => { - const seed = new Uint8Array(32); - let encryptionKeys = generateKeyPair(seed); - let my_encryption_sk_string = toHexString( - new Uint8Array(encryptionKeys.private) - ); - let my_encryption_pk_string = toHexString( - new Uint8Array(encryptionKeys.public) - ); - - const privKey = ed.utils.randomPrivateKey(); // Secure random private key - const pubKey = await ed.getPublicKeyAsync(privKey); - - let my_identity_sk_string = toHexString(new Uint8Array(privKey)); - let my_identity_pk_string = toHexString(new Uint8Array(pubKey)); - - let receiver_public_key_string = my_encryption_pk_string; - - return { - my_encryption_sk_string, - my_encryption_pk_string, - my_identity_sk_string, - my_identity_pk_string, - receiver_public_key_string, - }; -}; - -test("ShinkaiMessageBuilderWrapper should construct correctly and create a new ack message", async () => { - const keys = await generateKeys(); - - const messageBuilder = new ShinkaiMessageBuilderWrapper( - keys.my_encryption_sk_string, - keys.my_identity_sk_string, - keys.receiver_public_key_string - ); - - expect(messageBuilder).toBeTruthy(); - expect(messageBuilder).toBeInstanceOf(ShinkaiMessageBuilderWrapper); - - const sender = "@@sender_node.shinkai"; - const receiver = "@@receiver_node.shinkai"; - - const ackMessage = ShinkaiMessageBuilderWrapper.ack_message( - keys.my_encryption_sk_string, - keys.my_identity_sk_string, - keys.receiver_public_key_string, - sender, - receiver - ); - - expect(ackMessage).toBeTruthy(); - expect(typeof ackMessage).toBe("string"); -}); - -test("ShinkaiMessageBuilderWrapper should set body content correctly", async () => { - const keys = await generateKeys(); - - const messageBuilder = new ShinkaiMessageBuilderWrapper( - keys.my_encryption_sk_string, - keys.my_identity_sk_string, - keys.receiver_public_key_string - ); - - // Pass the enum value directly - await messageBuilder.message_raw_content("Hello world!"); - await messageBuilder.body_encryption(EncryptionMethod.None); - await messageBuilder.message_schema_type(MessageSchemaType.TextContent); - await messageBuilder.internal_metadata( - "sender_user2", - "recipient_user1", - "", - "None" - ); - await messageBuilder.external_metadata_with_schedule( - "@@other_node.shinkai", - "@@my_node.shinkai", - "2023-07-02T20:53:34Z" - ); - - const message = messageBuilder.build_to_string(); - - expect(message).toContain("Hello world!"); -}); - -test("ShinkaiMessageBuilderWrapper should create a use code registration message", async () => { - const device_keys = await generateKeys(); - const profile_keys = await generateKeys(); - - const registrationCode = "sample_registration_code"; - const identityType = "profile"; - const permissionType = "admin"; - const registrationName = "sample_registration_name"; - const shinkaiIdentity = "@@my_node.shinkai"; - - const codeRegistrationMessage = - ShinkaiMessageBuilderWrapper.use_code_registration_for_device( - device_keys.my_encryption_sk_string, - device_keys.my_identity_sk_string, - profile_keys.my_encryption_sk_string, - profile_keys.my_identity_sk_string, - device_keys.receiver_public_key_string, - registrationCode, - identityType, - permissionType, - registrationName, - "", // sender_profile_name: it doesn't exist yet in the Node - shinkaiIdentity - ); - - expect(codeRegistrationMessage).toBeTruthy(); - expect(typeof codeRegistrationMessage).toBe("string"); -}); - -test("ShinkaiMessageBuilderWrapper should create a new request code registration message", async () => { - const keys = await generateKeys(); - - const messageBuilder = new ShinkaiMessageBuilderWrapper( - keys.my_encryption_sk_string, - keys.my_identity_sk_string, - keys.receiver_public_key_string - ); - - const permissionType = "admin"; - const codeType = "profile"; - const senderProfileName = "sample_sender_profile_name"; - const shinkaiIdentity = "@@my_node.shinkai"; - - const requestCodeRegistrationMessage = - ShinkaiMessageBuilderWrapper.request_code_registration( - keys.my_encryption_sk_string, - keys.my_identity_sk_string, - keys.receiver_public_key_string, - permissionType, - codeType, - senderProfileName, - shinkaiIdentity - ); - - expect(requestCodeRegistrationMessage).toBeTruthy(); - expect(typeof requestCodeRegistrationMessage).toBe("string"); -}); - -test("ShinkaiMessageBuilderWrapper should get last messages from inbox", async () => { - const keys = await generateKeys(); - - const inbox = "inbox::@@node.shinkai::true"; - const count = 10; - const offset = "offset_string"; - const senderProfileName = "sample_sender_profile_name"; - const shinkaiIdentity = "@@my_node.shinkai"; - - const lastMessages = - ShinkaiMessageBuilderWrapper.get_last_messages_from_inbox( - keys.my_encryption_sk_string, - keys.my_identity_sk_string, - keys.receiver_public_key_string, - inbox, - count, - offset, - shinkaiIdentity, - senderProfileName, - shinkaiIdentity - ); - - expect(lastMessages).toBeTruthy(); - expect(typeof lastMessages).toBe("string"); -}); diff --git a/shinkai-app/src/lib/wasm/ShinkaiMessageBuilderWrapper.ts b/shinkai-app/src/lib/wasm/ShinkaiMessageBuilderWrapper.ts deleted file mode 100644 index 96a95bc7d..000000000 --- a/shinkai-app/src/lib/wasm/ShinkaiMessageBuilderWrapper.ts +++ /dev/null @@ -1,509 +0,0 @@ -import { - EncryptionMethod, - ShinkaiMessageBuilderWrapper as ShinkaiMessageBuilderWrapperWASM, - ShinkaiMessageWrapper, -} from "../../pkg/shinkai_message_wasm.js"; -import { - MessageSchemaType, - SerializedAgent, - EncryptionMethod as TSEncryptionMethod, -} from "../../models/SchemaTypes.js"; -import { SerializedAgentWrapper } from "./SerializedAgentWrapper.js"; - -export class ShinkaiMessageBuilderWrapper { - private wasmBuilder: ShinkaiMessageBuilderWrapperWASM; - - constructor( - my_encryption_secret_key: string, - my_signature_secret_key: string, - receiver_public_key: string - ) { - this.wasmBuilder = new ShinkaiMessageBuilderWrapperWASM( - my_encryption_secret_key, - my_signature_secret_key, - receiver_public_key - ); - } - - body_encryption(encryption: TSEncryptionMethod): void { - this.wasmBuilder.body_encryption(encryption); - } - - no_body_encryption(): void { - this.wasmBuilder.no_body_encryption(); - } - - message_raw_content(content: string): void { - this.wasmBuilder.message_raw_content(content); - } - - message_schema_type(content: any): void { - this.wasmBuilder.message_schema_type(content); - } - - internal_metadata( - sender_subidentity: string, - recipient_subidentity: string, - inbox: string, - encryption: any - ): void { - this.wasmBuilder.internal_metadata( - sender_subidentity, - recipient_subidentity, - encryption - ); - } - - internal_metadata_with_schema( - sender_subidentity: string, - recipient_subidentity: string, - inbox: string, - message_schema: any, - encryption: any - ): void { - this.wasmBuilder.internal_metadata_with_schema( - sender_subidentity, - recipient_subidentity, - inbox, - message_schema, - encryption - ); - } - - empty_encrypted_internal_metadata(): void { - this.wasmBuilder.empty_encrypted_internal_metadata(); - } - - empty_non_encrypted_internal_metadata(): void { - this.wasmBuilder.empty_non_encrypted_internal_metadata(); - } - - external_metadata(recipient: string, sender: string): void { - this.wasmBuilder.external_metadata(recipient, sender); - } - - external_metadata_with_other( - recipient: string, - sender: string, - other: string - ): void { - this.wasmBuilder.external_metadata_with_other(recipient, sender, other); - } - - external_metadata_with_schedule( - recipient: string, - sender: string, - scheduled_time: string - ): void { - this.wasmBuilder.external_metadata_with_schedule( - recipient, - sender, - scheduled_time - ); - } - - build(): ShinkaiMessageWrapper { - const wasmWrapper = this.wasmBuilder.build(); - return ShinkaiMessageWrapper.fromJsValue(wasmWrapper.to_jsvalue()); - } - - build_to_jsvalue(): any { - return this.wasmBuilder.build_to_jsvalue(); - } - - build_to_string(): string { - return this.wasmBuilder.build_to_string(); - } - - static ack_message( - my_encryption_secret_key: string, - my_signature_secret_key: string, - receiver_public_key: string, - sender: string, - receiver: string - ): string { - return ShinkaiMessageBuilderWrapperWASM.ack_message( - my_encryption_secret_key, - my_signature_secret_key, - receiver_public_key, - sender, - receiver - ); - } - - static use_code_registration_for_profile( - profile_encryption_sk: string, - profile_signature_sk: string, - receiver_public_key: string, - code: string, - identity_type: string, - permission_type: string, - registration_name: string, - sender_profile_name: string, - receiver: string - ): string { - return ShinkaiMessageBuilderWrapperWASM.use_code_registration_for_profile( - profile_encryption_sk, - profile_signature_sk, - receiver_public_key, - code, - identity_type, - permission_type, - registration_name, - receiver, - sender_profile_name, - receiver, - "" - ); - } - - static use_code_registration_for_device( - my_device_encryption_sk: string, - my_device_signature_sk: string, - profile_encryption_sk: string, - profile_signature_sk: string, - receiver_public_key: string, - code: string, - identity_type: string, - permission_type: string, - registration_name: string, - sender_profile_name: string, - node_name: string - ): string { - return ShinkaiMessageBuilderWrapperWASM.use_code_registration_for_device( - my_device_encryption_sk, - my_device_signature_sk, - profile_encryption_sk, - profile_signature_sk, - receiver_public_key, - code, - identity_type, - permission_type, - registration_name, - node_name, - sender_profile_name, - node_name, - "" - ); - } - - static request_code_registration( - my_subidentity_encryption_sk: string, - my_subidentity_signature_sk: string, - receiver_public_key: string, - permission_type: string, - code_type: string, - sender_profile_name: string, - receiver: string - ): string { - return ShinkaiMessageBuilderWrapperWASM.request_code_registration( - my_subidentity_encryption_sk, - my_subidentity_signature_sk, - receiver_public_key, - permission_type, - code_type, - receiver, - sender_profile_name, - receiver, - "" - ); - } - - static ping_pong_message( - message: string, - my_encryption_secret_key: string, - my_signature_secret_key: string, - receiver_public_key: string, - sender: string, - receiver: string - ): string { - return ShinkaiMessageBuilderWrapperWASM.ping_pong_message( - message, - my_encryption_secret_key, - my_signature_secret_key, - receiver_public_key, - sender, - receiver - ); - } - - static get_all_inboxes_for_profile( - my_encryption_sk: string, - my_signature_sk: string, - receiver_public_key: string, - sender: string, - sender_subidentity: string, - receiver: string, - target_shinkai_name_profile: string - ): string { - const builder = new ShinkaiMessageBuilderWrapperWASM( - my_encryption_sk, - my_signature_sk, - receiver_public_key - ); - - builder.message_raw_content(target_shinkai_name_profile); - builder.message_schema_type(MessageSchemaType.TextContent.toString()); - builder.internal_metadata( - sender_subidentity, - "", - EncryptionMethod.None.toString() - ); - builder.external_metadata(receiver, sender); - builder.body_encryption( - EncryptionMethod.DiffieHellmanChaChaPoly1305.toString() - ); - - const message = builder.build_to_string(); - - return message; - } - - static get_last_messages_from_inbox( - my_subidentity_encryption_sk: string, - my_subidentity_signature_sk: string, - receiver_public_key: string, - inbox: string, - count: number, - until_offset: string | undefined, - sender: string, - sender_profile_name: string, - receiver: string - ): string { - return ShinkaiMessageBuilderWrapperWASM.get_last_messages_from_inbox( - my_subidentity_encryption_sk, - my_subidentity_signature_sk, - receiver_public_key, - inbox, - count, - until_offset, - sender, - sender_profile_name, - receiver, - "" - ); - } - - static get_last_unread_messages_from_inbox( - my_subidentity_encryption_sk: string, - my_subidentity_signature_sk: string, - receiver_public_key: string, - inbox: string, - count: number, - from_offset: string | undefined, - sender: string, - sender_profile_name: string, - receiver: string - ): string { - return ShinkaiMessageBuilderWrapperWASM.get_last_unread_messages_from_inbox( - my_subidentity_encryption_sk, - my_subidentity_signature_sk, - receiver_public_key, - inbox, - count, - from_offset, - sender, - sender_profile_name, - receiver, - "" - ); - } - - static job_creation( - my_encryption_secret_key: string, - my_signature_secret_key: string, - receiver_public_key: string, - scope: any, - sender: string, - receiver: string, - receiver_subidentity: string - ): string { - return ShinkaiMessageBuilderWrapperWASM.job_creation( - my_encryption_secret_key, - my_signature_secret_key, - receiver_public_key, - scope, - sender, - receiver, - receiver_subidentity - ); - } - - static job_message( - job_id: string, - content: string, - my_encryption_secret_key: string, - my_signature_secret_key: string, - receiver_public_key: string, - sender: string, - receiver: string, - receiver_subidentity: string - ): string { - return ShinkaiMessageBuilderWrapperWASM.job_message( - job_id, - content, - my_encryption_secret_key, - my_signature_secret_key, - receiver_public_key, - sender, - receiver, - receiver_subidentity - ); - } - - static terminate_message( - my_encryption_secret_key: string, - my_signature_secret_key: string, - receiver_public_key: string, - sender: string, - receiver: string - ): string { - return ShinkaiMessageBuilderWrapperWASM.terminate_message( - my_encryption_secret_key, - my_signature_secret_key, - receiver_public_key, - sender, - receiver - ); - } - - static error_message( - my_encryption_secret_key: string, - my_signature_secret_key: string, - receiver_public_key: string, - sender: string, - receiver: string, - error_msg: string - ): string { - return ShinkaiMessageBuilderWrapperWASM.error_message( - my_encryption_secret_key, - my_signature_secret_key, - receiver_public_key, - sender, - receiver, - error_msg - ); - } - - static request_add_agent( - my_encryption_secret_key: string, - my_signature_secret_key: string, - receiver_public_key: string, - sender: string, - sender_subidentity: string, - recipient: string, - agent: SerializedAgentWrapper - ): string { - let agentJson = agent.to_json_str(); - return ShinkaiMessageBuilderWrapperWASM.request_add_agent( - my_encryption_secret_key, - my_signature_secret_key, - receiver_public_key, - agentJson, - sender, - sender_subidentity, - recipient, - "" - ); - } - - - static get_profile_agents( - my_encryption_secret_key: string, - my_signature_secret_key: string, - receiver_public_key: string, - sender: string, - sender_subidentity: string, - receiver: string, - ): string { - const builder = new ShinkaiMessageBuilderWrapperWASM( - my_encryption_secret_key, - my_signature_secret_key, - receiver_public_key - ); - - builder.message_raw_content(""); - builder.message_schema_type(MessageSchemaType.Empty.toString()); - builder.internal_metadata( - sender_subidentity, - "", - EncryptionMethod.None.toString() - ); - builder.external_metadata(receiver, sender); - builder.body_encryption( - EncryptionMethod.DiffieHellmanChaChaPoly1305.toString() - ); - const message = builder.build_to_string(); - return message; - } - - static create_chat_with_message( - my_encryption_secret_key: string, - my_signature_secret_key: string, - receiver_public_key: string, - sender: string, - sender_subidentity: string, - receiver: string, - receiver_subidentity: string, - text_message: string, - inbox: string - ): string { - const builder = new ShinkaiMessageBuilderWrapperWASM( - my_encryption_secret_key, - my_signature_secret_key, - receiver_public_key - ); - - builder.message_raw_content(text_message); - builder.message_schema_type(MessageSchemaType.TextContent.toString()); - builder.internal_metadata_with_inbox( - sender_subidentity, - receiver_subidentity, - inbox, - EncryptionMethod.None.toString() - ); - builder.external_metadata(receiver, sender); - builder.body_encryption( - EncryptionMethod.DiffieHellmanChaChaPoly1305.toString() - ); - - const message = builder.build_to_string(); - - return message; - } - - static send_text_message_with_inbox( - my_encryption_secret_key: string, - my_signature_secret_key: string, - receiver_public_key: string, - sender: string, - sender_subidentity: string, - receiver: string, - receiver_subidentity: string, - inbox: string, - text_message: string - ): string { - const builder = new ShinkaiMessageBuilderWrapperWASM( - my_encryption_secret_key, - my_signature_secret_key, - receiver_public_key - ); - - builder.message_raw_content(text_message); - builder.message_schema_type(MessageSchemaType.TextContent.toString()); - builder.internal_metadata_with_inbox( - sender_subidentity, - receiver_subidentity, - inbox, - EncryptionMethod.None.toString() - ); - builder.external_metadata(receiver, sender); - builder.body_encryption( - EncryptionMethod.DiffieHellmanChaChaPoly1305.toString() - ); - - const message = builder.build_to_string(); - - return message; - } -} diff --git a/shinkai-app/src/lib/wasm/ShinkaiMessageWrapper.test.ts b/shinkai-app/src/lib/wasm/ShinkaiMessageWrapper.test.ts deleted file mode 100644 index e6b304aa4..000000000 --- a/shinkai-app/src/lib/wasm/ShinkaiMessageWrapper.test.ts +++ /dev/null @@ -1,57 +0,0 @@ -import { ShinkaiMessage } from '../../models/ShinkaiMessage'; -import { ShinkaiMessageWrapper } from './ShinkaiMessageWrapper'; - -const messageJson = `{ - "body": { - "unencrypted": { - "message_data": { - "unencrypted": { - "message_raw_content": "hey!", - "message_content_schema": "TextContent" - } - }, - "internal_metadata": { - "sender_subidentity": "main/device/main_device", - "recipient_subidentity": "", - "inbox": "inbox::@@node1.shinkai/main/device/main_device::@@node2.shinkai::false", - "signature": "", - "encryption": "None" - } - } - }, - "external_metadata": { - "sender": "@@node1.shinkai", - "recipient": "@@node2.shinkai", - "scheduled_time": "2023-08-25T22:44:01.132Z", - "signature": "c6d0115c0878fbf2279f98aab67c0e9cb1af63825f49dca48d6e4420eba0ceb973e00488ba0905c9afd09254f0dac48c468fdcb1d6c5ab5ca4c5dd70a440b903", - "other": "" - }, - "encryption": "DiffieHellmanChaChaPoly1305", - "version": "V1_0" - }`; - - -describe('ShinkaiMessageWrapper', () => { - it('should correctly convert from and to JSON string', () => { - const wrapper = ShinkaiMessageWrapper.from_json_str(messageJson); - const jsonString = wrapper.to_json_str(); - - expect(JSON.parse(jsonString)).toEqual(JSON.parse(messageJson)); - }); - - it('should correctly convert from and to JsValue string', () => { - let message = JSON.parse(messageJson); - const wrapper = ShinkaiMessageWrapper.fromJsValue(message); - const jsonString = wrapper.to_json_str(); - - expect(JSON.parse(jsonString)).toEqual(JSON.parse(messageJson)); - }); - - it('should correctly instatiate it from a ShinkaiMessage Typescript object', () => { - let message: ShinkaiMessage = JSON.parse(messageJson); - const wrapper = ShinkaiMessageWrapper.fromJsValue(message); - const jsonString = wrapper.to_json_str(); - - expect(JSON.parse(jsonString)).toEqual(JSON.parse(messageJson)); - }); -}); \ No newline at end of file diff --git a/shinkai-app/src/lib/wasm/ShinkaiMessageWrapper.ts b/shinkai-app/src/lib/wasm/ShinkaiMessageWrapper.ts deleted file mode 100644 index f48522f10..000000000 --- a/shinkai-app/src/lib/wasm/ShinkaiMessageWrapper.ts +++ /dev/null @@ -1,49 +0,0 @@ -import { EncryptionMethod, ShinkaiMessageBuilderWrapper, ShinkaiMessageWrapper as ShinkaiMessageWrapperWASM } from '../../pkg/shinkai_message_wasm.js'; -import { ExternalMetadata, ShinkaiMessage } from '../../models/ShinkaiMessage'; -import { mapEncryptionMethod } from '../../utils/wasm_helpers.js'; - -export class ShinkaiMessageWrapper { - private wasmWrapper: ShinkaiMessageWrapperWASM; - - constructor(message: ShinkaiMessage) { - this.wasmWrapper = ShinkaiMessageWrapperWASM.fromJsValue(message); - } - - static fromJsValue(j: any): ShinkaiMessageWrapper { - const message: ShinkaiMessage = j; - return new ShinkaiMessageWrapper(message); - } - - to_jsvalue(): any { - return this.wasmWrapper.to_jsvalue(); - } - - to_json_str(): string { - return this.wasmWrapper.to_json_str(); - } - - calculate_hash(): string { - return this.wasmWrapper.calculate_hash(); - } - - static time_now(): string { - return ShinkaiMessageWrapperWASM.generate_time_now(); - } - - static from_json_str(s: string): ShinkaiMessageWrapper { - const message: ShinkaiMessage = JSON.parse(s); - return new ShinkaiMessageWrapper(message); - } - - get body(): Body { - return this.wasmWrapper.message_body; - } - - get encryption(): string { - return this.wasmWrapper.encryption; - } - - get external_metadata(): ExternalMetadata { - return this.wasmWrapper.external_metadata; - } -} diff --git a/shinkai-app/src/lib/wasm/ShinkaiNameWrapper.test.ts b/shinkai-app/src/lib/wasm/ShinkaiNameWrapper.test.ts deleted file mode 100644 index 09f942df8..000000000 --- a/shinkai-app/src/lib/wasm/ShinkaiNameWrapper.test.ts +++ /dev/null @@ -1,49 +0,0 @@ -import { ShinkaiNameWrapper } from "./ShinkaiNameWrapper"; -import { test } from "vitest"; - -test("ShinkaiNameWrapper", () => { - const validNames = [ - "@@alice.shinkai", - "@@alice.shinkai/profileName", - "@@alice.shinkai/profileName/agent/myChatGPTAgent", - "@@alice.shinkai/profileName/device/myPhone", - ]; - - const invalidNames = [ - "@@alice.shinkai/profileName/myPhone", - "@@al!ce.shinkai", - "@@alice.shinkai//", - "@@node1.shinkai/profile_1.shinkai", - ]; - - for (const name of validNames) { - const wrapper = new ShinkaiNameWrapper(name); - expect(wrapper.get_full_name).toBe(name.toLowerCase()); - } - - for (const name of invalidNames) { - expect(() => new ShinkaiNameWrapper(name)).toThrow(); - } -}); - -test("ShinkaiNameWrapper get_profile_name", () => { - const namesWithProfiles = [ - { - name: "@@alice.shinkai/profileName", - profile: "@@alice.shinkai/profileName", - }, - { - name: "@@alice.shinkai/profileName/agent/myChatGPTAgent", - profile: "@@alice.shinkai/profileName", - }, - { - name: "@@alice.shinkai/profileName/device/myPhone", - profile: "@@alice.shinkai/profileName", - }, - ]; - - for (const { name, profile } of namesWithProfiles) { - const wrapper = new ShinkaiNameWrapper(name); - expect(wrapper.extract_profile().get_full_name).toBe(profile.toLowerCase()); - } -}); diff --git a/shinkai-app/src/lib/wasm/ShinkaiNameWrapper.ts b/shinkai-app/src/lib/wasm/ShinkaiNameWrapper.ts deleted file mode 100644 index ef25f499a..000000000 --- a/shinkai-app/src/lib/wasm/ShinkaiNameWrapper.ts +++ /dev/null @@ -1,45 +0,0 @@ -import { ShinkaiNameWrapper as ShinkaiNameWrapperWASM } from "../../pkg/shinkai_message_wasm.js"; - -export class ShinkaiNameWrapper { - private wasmWrapper: ShinkaiNameWrapperWASM; - - constructor(shinkai_name_js: any) { - this.wasmWrapper = new ShinkaiNameWrapperWASM(shinkai_name_js); - } - - to_jsvalue(): any { - return this.wasmWrapper.to_jsvalue(); - } - - to_json_str(): string { - return this.wasmWrapper.to_json_str(); - } - - get get_full_name(): string { - return this.wasmWrapper.get_full_name; - } - - get get_node_name(): string { - return this.wasmWrapper.get_node_name; - } - - get get_profile_name(): string { - return this.wasmWrapper.get_profile_name; - } - - get get_subidentity_name(): string { - return this.wasmWrapper.get_subidentity_name; - } - - get get_subidentity_type(): string { - return this.wasmWrapper.get_subidentity_type; - } - - extract_profile(): ShinkaiNameWrapper { - return new ShinkaiNameWrapper(this.wasmWrapper.extract_profile().get_full_name); - } - - extract_node(): ShinkaiNameWrapper { - return new ShinkaiNameWrapper(this.wasmWrapper.extract_node().get_full_name); - } -} \ No newline at end of file diff --git a/shinkai-app/src/main.tsx b/shinkai-app/src/main.tsx deleted file mode 100644 index fbff6c812..000000000 --- a/shinkai-app/src/main.tsx +++ /dev/null @@ -1,11 +0,0 @@ -import React from 'react'; -import { createRoot } from 'react-dom/client'; -import App from './App'; - -const container = document.getElementById('root'); -const root = createRoot(container!); -root.render( - - - -); \ No newline at end of file diff --git a/shinkai-app/src/models/QRSetupData.ts b/shinkai-app/src/models/QRSetupData.ts deleted file mode 100644 index 735f9f737..000000000 --- a/shinkai-app/src/models/QRSetupData.ts +++ /dev/null @@ -1,12 +0,0 @@ -export type Base58String = string; - -export interface QRSetupData { - registration_code: string; - profile: string; - identity_type: string; - permission_type: string; - node_address: string; - shinkai_identity: string; - node_encryption_pk: Base58String; - node_signature_pk: Base58String; -} \ No newline at end of file diff --git a/shinkai-app/src/models/SchemaTypes.ts b/shinkai-app/src/models/SchemaTypes.ts deleted file mode 100644 index 32f9d4ca2..000000000 --- a/shinkai-app/src/models/SchemaTypes.ts +++ /dev/null @@ -1,85 +0,0 @@ -export enum EncryptionMethod { - DiffieHellmanChaChaPoly1305 = "DiffieHellmanChaChaPoly1305", - None = "None", -} - -export enum MessageSchemaType { - JobCreationSchema = "JobCreationSchema", - JobMessageSchema = "JobMessageSchema", - PreMessageSchema = "PreMessageSchema", - CreateRegistrationCode = "CreateRegistrationCode", - UseRegistrationCode = "UseRegistrationCode", - APIGetMessagesFromInboxRequest = "APIGetMessagesFromInboxRequest", - APIReadUpToTimeRequest = "APIReadUpToTimeRequest", - APIAddAgentRequest = "APIAddAgentRequest", - TextContent = "TextContent", - Empty = "", -} - -export interface JobScope { - buckets: string[]; - documents: string[]; -} - -export interface JobCreation { - scope: JobScope; -} - -export interface JobMessage { - job_id: string; - content: string; -} - -export interface JobToolCall { - tool_id: string; - inputs: Record; -} - -export enum JobRecipient { - SelfNode = "SelfNode", - User = "User", - ExternalIdentity = "ExternalIdentity", -} - -export interface JobPreMessage { - tool_calls: JobToolCall[]; - content: string; - recipient: JobRecipient; -} - -export interface APIGetMessagesFromInboxRequest { - inbox: string; - count: number; - offset?: string; -} - -export interface APIReadUpToTimeRequest { - inbox_name: string; - up_to_time: string; -} - -export interface SerializedAgent { - id: string; - full_identity_name: string; // ShinkaiName - perform_locally: boolean; - external_url?: string; - api_key?: string; - model: AgentAPIModel; - toolkit_permissions: string[]; - storage_bucket_permissions: string[]; - allowed_message_senders: string[]; -} -export interface AgentAPIModel { - OpenAI?: OpenAI; - SleepAPI?: SleepAPI; -} - -export interface OpenAI { - model_type: string; -} - -export interface SleepAPI {} - -export interface APIAddAgentRequest { - agent: SerializedAgent; -} diff --git a/shinkai-app/src/models/ShinkaiMessage.ts b/shinkai-app/src/models/ShinkaiMessage.ts deleted file mode 100644 index 8ba500b5c..000000000 --- a/shinkai-app/src/models/ShinkaiMessage.ts +++ /dev/null @@ -1,52 +0,0 @@ -import { EncryptionMethod, MessageSchemaType } from "./SchemaTypes"; - -export interface InternalMetadata { - sender_subidentity: string; - recipient_subidentity: string; - inbox: string; - encryption: EncryptionMethod; -} - -export interface ExternalMetadata { - sender: string; - recipient: string; - scheduled_time: string; - signature: string; - other: string; -} - -export interface EncryptedShinkaiData { - content: string; -} - -export interface ShinkaiData { - message_raw_content: string; - message_content_schema: MessageSchemaType; -} - -export type MessageData = { encrypted: EncryptedShinkaiData } | { unencrypted: ShinkaiData }; - -export interface EncryptedShinkaiBody { - content: string; -} - -export interface ShinkaiBody { - message_data: MessageData; - internal_metadata: InternalMetadata; -} - -export type MessageBody = { encrypted: EncryptedShinkaiBody } | { unencrypted: ShinkaiBody }; - -export interface ShinkaiMessage { - body: MessageBody | null; - external_metadata: ExternalMetadata | null; - encryption: EncryptionMethod; -} - -export interface RegistrationCode { - code: string; - profileName: string; - identityPk: string; - encryptionPk: string; - permissionType: string; -} diff --git a/shinkai-app/src/pages/AddAgent.tsx b/shinkai-app/src/pages/AddAgent.tsx deleted file mode 100644 index 5ee71dc06..000000000 --- a/shinkai-app/src/pages/AddAgent.tsx +++ /dev/null @@ -1,199 +0,0 @@ -// pages/AddAgent.tsx -import { - IonPage, - IonHeader, - IonToolbar, - IonTitle, - IonContent, - IonButton, - IonInput, - IonLabel, - IonItem, - IonGrid, - IonRow, - IonCol, - IonButtons, - IonBackButton, - IonSelect, - IonSelectOption, - IonTextarea, - InputChangeEventDetail, - IonCheckbox, -} from "@ionic/react"; -import { useEffect, useState } from "react"; -import { IonContentCustom, IonHeaderCustom } from "../components/ui/Layout"; -import Button from "../components/ui/Button"; -import { useDispatch, useSelector } from "react-redux"; -import { RootState } from "../store"; -import { SerializedAgent, AgentAPIModel } from "../models/SchemaTypes"; -import { addAgent } from "../api"; -import { useSetup } from "../hooks/usetSetup"; -import { useHistory } from 'react-router-dom'; - - -const AddAgent: React.FC = () => { - useSetup(); - const dispatch = useDispatch(); - const setupDetailsState = useSelector( - (state: RootState) => state.setupDetails - ); - const [agent, setAgent] = useState>({ - perform_locally: false, - toolkit_permissions: [], - storage_bucket_permissions: [], - allowed_message_senders: [], - }); - const [openaiModelType, setOpenaiModelType] = - useState("gpt-3.5-turbo"); - - const handleInputChange = (event: CustomEvent) => { - const inputElement = event.target as HTMLInputElement; - const { name } = inputElement; - const { value } = event.detail; - // const { shinkai_identity, profile } = setupDetailsState; - // const node_name = shinkai_identity; - // const base = node_name + "/" + profile; - // setAgent({ ...agent, full_identity_name: `${base}/${value}` }); - setAgent((prevState) => ({ - ...prevState, - [name]: value, - })); - }; - - const handleAgentNameChange = ( - event: CustomEvent - ) => { - const base = `${setupDetailsState.shinkai_identity}/${setupDetailsState.profile}/agent`; - setAgent({ - ...agent, - full_identity_name: `${base}/${event.detail.value}`, - id: event.detail.value ?? "", - }); - }; - - const handleSubmit = async () => { - const { shinkai_identity, profile } = setupDetailsState; - let node_name = shinkai_identity; - - if (agent.model?.OpenAI) { - setAgent({ - ...agent, - model: { OpenAI: { model_type: openaiModelType } }, - }); - } - - console.log("Submitting agent:", agent); - const resp = await addAgent(profile, node_name, agent as SerializedAgent, setupDetailsState); - if (resp) { - // TODO: show a success toast - history.back(); - } - }; - - return ( - - - - - - Add Agent - - - - - -

- New Agent Details -

- - - Agent Name - - - - - Perform Locally - - setAgent((prevState) => ({ - ...prevState, - perform_locally: e.detail.checked, - })) - } - /> - - - - External URL - - - - - API Key - - - - - Model - - setAgent((prevState) => ({ - ...prevState, - model: e.detail.value as AgentAPIModel, - })) - } - > - - OpenAI - - - SleepAPI - - - - {agent.model?.OpenAI && ( - - OpenAI Model Type - setOpenaiModelType(e.detail.value!)} - /> - - )} - -
- -
-
-
-
-
-
- ); -}; - -export default AddAgent; diff --git a/shinkai-app/src/pages/AdminCommands.tsx b/shinkai-app/src/pages/AdminCommands.tsx deleted file mode 100644 index a3d66293b..000000000 --- a/shinkai-app/src/pages/AdminCommands.tsx +++ /dev/null @@ -1,183 +0,0 @@ -import { - IonModal, - IonButton, - IonPage, - IonHeader, - IonToolbar, - IonTitle, - IonContent, - IonList, - IonItem, - IonLabel, - IonButtons, - IonBackButton, - IonActionSheet, - IonToast, -} from "@ionic/react"; -import React, { useState } from "react"; -import { useDispatch, useSelector } from "react-redux"; -import { submitRequestRegistrationCode } from "../api"; -import { RootState } from "../store"; -import { clearRegistrationCode } from "../store/actions"; -import { useSetup } from "../hooks/usetSetup"; - -const AdminCommands: React.FC = () => { - useSetup(); - const setupDetailsState = useSelector( - (state: RootState) => state.setupDetails - ); - const [showCodeRegistrationActionSheet, setShowCodeRegistrationActionSheet] = - useState(false); - const [showCodeRegistrationModal, setCodeRegistrationShowModal] = - useState(false); - const [showIdentityTypeActionSheet, setShowIdentityTypeActionSheet] = - useState(false); - const [identityType, setIdentityType] = useState(""); - const [profileName, setProfileName] = useState(""); - const dispatch = useDispatch(); - const registrationCode = useSelector( - (state: RootState) => state.other.registrationCode - ); - const commands = [ - "Get Peers", - "Ping All", - "Connect To", - "Get Last Messages", - "Create Registration Code", - "Get All Subidentities", - ]; - - const handleCommandClick = (command: string) => { - console.log(`Command selected: ${command}`); - - if (command === "Create Registration Code") { - setShowIdentityTypeActionSheet(true); - } - }; - - const copyToClipboard = () => { - navigator.clipboard.writeText(registrationCode); - }; - - const handleIdentityTypeClick = (type: string) => { - setIdentityType(type); - setShowIdentityTypeActionSheet(false); - if (type === "device") { - // Prompt the user to enter a profile name when "Device" is selected - const profile = prompt("Please enter a profile name"); - setProfileName(profile || ""); - } - if (type !== "Cancel") { - setShowCodeRegistrationActionSheet(true); - } - }; - - const handleIdentityClick = async (permissionsType: string) => { - let finalCodeType = identityType; - if (identityType === "device") { - // Serialize permissionsType as "device:PROFILE_NAME" when "Device" is selected - finalCodeType = `device:${profileName}`; - } - await dispatch(submitRequestRegistrationCode(permissionsType, finalCodeType, setupDetailsState)); - setCodeRegistrationShowModal(true); - return true; - }; - - return ( - <> - setShowIdentityTypeActionSheet(false)} - buttons={[ - { - text: "Profile", - handler: () => handleIdentityTypeClick("profile"), - }, - { - text: "Device", - handler: () => handleIdentityTypeClick("device"), - }, - { - text: "Cancel", - role: "cancel", - handler: () => handleIdentityTypeClick("Cancel"), - }, - ]} - /> - setShowCodeRegistrationActionSheet(false)} - buttons={[ - { - text: "Admin", - handler: () => handleIdentityClick("admin"), - }, - { - text: "Standard", - handler: () => handleIdentityClick("standard"), - }, - { - text: "None", - handler: () => handleIdentityClick("none"), - }, - { - text: "Cancel", - role: "cancel", - }, - ]} - /> - - - - Code Registration Successful - - - - Code: {registrationCode} -
- - Copy - - setCodeRegistrationShowModal(false)}> - Dismiss - -
-
-
- - - - - - - Admin Commands - - - - - {commands.map((command) => ( - handleCommandClick(command)} - > - {command} - - ))} - - - - - ); -}; - -export default AdminCommands; diff --git a/shinkai-app/src/pages/Chat.css b/shinkai-app/src/pages/Chat.css deleted file mode 100644 index 568147509..000000000 --- a/shinkai-app/src/pages/Chat.css +++ /dev/null @@ -1,38 +0,0 @@ -.ion-item-chat, -.ion-list-chat { - --ion-item-background: theme("colors.slate.100"); - --background: theme("colors.slate.100"); - @media (prefers-color-scheme: dark) { - --ion-item-background: theme("colors.slate.800"); - --background: theme("colors.slate.800"); - } - &.isLocalMessage { - --ion-item-background: theme("colors.white"); - --background: theme("colors.white"); - @media (prefers-color-scheme: dark) { - --ion-item-background: theme("colors.slate.900"); - --background: theme("colors.slate.900"); - } - } -} - -.ion-textarea-chat { - --border-radius: 4px; - --padding-top: 16px; - --padding-bottom: 16px; - --padding-left: 16px; - --border-width: 0; - --border-color: theme("colors.slate.300/20"); - --background: theme("colors.slate.100"); - --highlight-color: theme("colors.slate.400"); - --highlight-color-focused: theme("colors.gray.300"); - --color: theme("colors.slate.800"); - --placeholder-color: theme("colors.slate.800"); - @media (prefers-color-scheme: dark) { - --background: theme("colors.slate.800"); - --color: theme("colors.slate.200"); - --border-color: theme("colors.slate.800/20"); - --placeholder-color: theme("colors.slate.300"); - --highlight-color: theme("colors.gray.300"); - } -} diff --git a/shinkai-app/src/pages/Chat.tsx b/shinkai-app/src/pages/Chat.tsx deleted file mode 100644 index 6317af4cc..000000000 --- a/shinkai-app/src/pages/Chat.tsx +++ /dev/null @@ -1,278 +0,0 @@ -import { - IonBackButton, - IonButton, - IonButtons, - IonContent, - IonFooter, - IonHeader, - IonIcon, - IonInput, - IonItem, - IonLabel, - IonList, - IonPage, - IonText, - IonTextarea, - IonTitle, - IonToolbar, -} from "@ionic/react"; -import { useParams } from "react-router-dom"; -import React, { useEffect, useRef, useState } from "react"; -import { useDispatch, useSelector } from "react-redux"; -import { - getLastMessagesFromInbox, - createChatWithMessage, - sendTextMessageWithInbox, -} from "../api/index"; -import { RootState } from "../store"; -import { useSetup } from "../hooks/usetSetup"; -import { - extractReceiverShinkaiName, - getOtherPersonIdentity, -} from "../utils/inbox_name_handler"; -import { ShinkaiMessage } from "../models/ShinkaiMessage"; -import { calculateMessageHash } from "../utils/shinkai_message_handler"; -import Avatar from "../components/ui/Avatar"; -import { cn } from "../theme/lib/utils"; -import { send } from "ionicons/icons"; -import "./Chat.css"; -import { - IonContentCustom, - IonFooterCustom, - IonHeaderCustom, -} from "../components/ui/Layout"; - -const parseDate = (dateString: string) => { - return new Date(dateString); -}; - -const Chat: React.FC = () => { - console.log("Loading Chat.tsx"); - useSetup(); - - const dispatch = useDispatch(); - const setupDetailsState = useSelector( - (state: RootState) => state.setupDetails - ); - - const { id } = useParams<{ id: string }>(); - const bottomChatRef = useRef(null); - const deserializedId = decodeURIComponent(id).replace(/~/g, "."); - const [lastKey, setLastKey] = useState(undefined); - const [hasMoreMessages, setHasMoreMessages] = useState(true); - const [prevMessagesLength, setPrevMessagesLength] = useState(0); - - const reduxMessages = useSelector( - (state: RootState) => state.messages.inboxes[deserializedId] - ); - - const [messages, setMessages] = useState([]); - const [inputMessage, setInputMessage] = useState(""); - const otherPersonIdentity = getOtherPersonIdentity( - deserializedId, - setupDetailsState.shinkai_identity - ); - - useEffect(() => { - console.log("deserializedId:", deserializedId); - dispatch( - getLastMessagesFromInbox(deserializedId, 10, lastKey, setupDetailsState) - ); - }, [id, dispatch, setupDetailsState]); - - useEffect(() => { - if (reduxMessages && reduxMessages.length > 0) { - console.log("Redux Messages:", reduxMessages); - const lastMessage = reduxMessages[reduxMessages.length - 1]; - console.log("Last Message:", lastMessage); - const timeKey = lastMessage.external_metadata.scheduled_time; - const hashKey = calculateMessageHash(lastMessage); - const lastMessageKey = `${timeKey}:${hashKey}`; - setLastKey(lastMessageKey); - setMessages(reduxMessages); - - if (reduxMessages.length - prevMessagesLength < 10) { - setHasMoreMessages(false); - } - setPrevMessagesLength(reduxMessages.length); - } - }, [reduxMessages]); - - useEffect(() => { - // Check if the user is at the bottom of the chat - const isUserAtBottom = - bottomChatRef.current && - bottomChatRef.current.getBoundingClientRect().bottom <= - window.innerHeight; - - // If the user is at the bottom, scroll to the bottom - if (isUserAtBottom) { - bottomChatRef.current?.scrollIntoView({ behavior: "smooth" }); - } - }, [messages]); - - const sendMessage = () => { - console.log("Sending message: ", inputMessage); - - // Local Identity - const { shinkai_identity, profile, registration_name } = setupDetailsState; - // let sender = shinkai_identity; - let sender = `${shinkai_identity}/${profile}/device/${registration_name}`; - - console.log("Sender:", sender); - - const receiver = extractReceiverShinkaiName(deserializedId, sender); - console.log("Receiver:", receiver); - - dispatch( - sendTextMessageWithInbox( - sender, - "", - receiver, - inputMessage, - deserializedId, - setupDetailsState - ) - ); - setInputMessage(""); - }; - - return ( - - - - - -
- - {otherPersonIdentity} - - {/**/} -
-
- - -
- {hasMoreMessages && ( - - dispatch( - getLastMessagesFromInbox( - deserializedId, - 10, - lastKey, - setupDetailsState, - true - ) - ) - } - > - Load More - - )} - - {messages && - messages - .slice() - .reverse() - .map((message, index) => { - const { shinkai_identity, profile, registration_name } = - setupDetailsState; - - const localIdentity = `${profile}/device/${registration_name}`; - // console.log("Message:", message); - let isLocalMessage = false; - if (message.body && "unencrypted" in message.body) { - isLocalMessage = - message.body.unencrypted.internal_metadata - .sender_subidentity === localIdentity; - } - - return ( - -
- - -

- {message.body && "unencrypted" in message.body - ? "unencrypted" in - message.body.unencrypted.message_data - ? message.body.unencrypted.message_data - .unencrypted.message_raw_content - : message.body.unencrypted.message_data.encrypted - .content - : message.body?.encrypted.content} -

- {message?.external_metadata?.scheduled_time && ( - - {parseDate( - message.external_metadata.scheduled_time - ).toLocaleTimeString()} - - )} -
-
- ); - })} -
-
-
- - -
{ - e.preventDefault(); - if (inputMessage.trim() !== "") { - sendMessage(); - } - }} - > -
- setInputMessage(e.detail.value!)} - placeholder="Type a message" - > - - -
-
-
- - ); -}; - -export default Chat; diff --git a/shinkai-app/src/pages/Connect.tsx b/shinkai-app/src/pages/Connect.tsx deleted file mode 100644 index a49a93877..000000000 --- a/shinkai-app/src/pages/Connect.tsx +++ /dev/null @@ -1,398 +0,0 @@ -import React, { useEffect, useState } from "react"; -import { useDispatch, useSelector } from "react-redux"; -import { - IonContent, - IonHeader, - IonPage, - IonTitle, - IonToolbar, - IonButton, - IonInput, - IonLabel, - IonItem, - IonToast, - InputChangeEventDetail, - IonIcon, - IonSpinner, -} from "@ionic/react"; -import { submitRegistrationCode } from "../api"; -import { BrowserQRCodeReader } from "@zxing/browser"; -import { Camera, CameraResultType, CameraSource } from "@capacitor/camera"; -import { useHistory } from "react-router-dom"; -import { toast } from "react-toastify"; -import type { AppDispatch } from "../store"; -import { QrScanner, QrScannerProps } from "@yudiel/react-qr-scanner"; -import { BarcodeScanner } from "@capacitor-community/barcode-scanner"; -import { isPlatform } from "@ionic/react"; -import { - generateEncryptionKeys, - generateSignatureKeys, -} from "../utils/wasm_helpers"; -import { QRSetupData } from "../models/QRSetupData"; -import { InputCustomEvent } from "@ionic/core/dist/types/components/input/input-interface"; -import { cn } from "../theme/lib/utils"; -import Button from "../components/ui/Button"; -import { IonHeaderCustom } from "../components/ui/Layout"; -import Input from "../components/ui/Input"; -import { scan, cloudUpload, checkmarkSharp } from "ionicons/icons"; -import { SetupDetailsState } from "../store/reducers/setupDetailsReducer"; -import { RootState } from "../store/main"; - -export type MergedSetupType = SetupDetailsState & QRSetupData; - -const Connect: React.FC = () => { - const [setupData, setSetupData] = useState({ - registration_code: "", - profile: "main", - registration_name: "main_device", - identity_type: "device", - permission_type: "admin", - node_address: "", - shinkai_identity: "", - node_encryption_pk: "", - node_signature_pk: "", - profile_encryption_sk: "", - profile_encryption_pk: "", - profile_identity_sk: "", - profile_identity_pk: "", - my_device_encryption_sk: "", - my_device_encryption_pk: "", - my_device_identity_sk: "", - my_device_identity_pk: "", - }); - const [status, setStatus] = useState< - "idle" | "loading" | "error" | "success" - >("idle"); - const [error, setError] = useState(null); - const dispatch = useDispatch(); - const history = useHistory(); - const errorFromState = useSelector((state: RootState) => state.other.error); - - // Generate keys when the component mounts - useEffect(() => { - // Assuming the seed is a random 32 bytes array. - // Device Keys - let seed = crypto.getRandomValues(new Uint8Array(32)); - generateEncryptionKeys(seed).then( - ({ my_encryption_sk_string, my_encryption_pk_string }) => - setSetupData((prevState) => ({ - ...prevState, - my_device_encryption_pk: my_encryption_pk_string, - my_device_encryption_sk: my_encryption_sk_string, - })) - ); - generateSignatureKeys().then( - ({ my_identity_pk_string, my_identity_sk_string }) => - setSetupData((prevState) => ({ - ...prevState, - my_device_identity_pk: my_identity_pk_string, - my_device_identity_sk: my_identity_sk_string, - })) - ); - - // Profile Keys - seed = crypto.getRandomValues(new Uint8Array(32)); - generateEncryptionKeys(seed).then( - ({ my_encryption_sk_string, my_encryption_pk_string }) => - setSetupData((prevState) => ({ - ...prevState, - profile_encryption_pk: my_encryption_pk_string, - profile_encryption_sk: my_encryption_sk_string, - })) - ); - generateSignatureKeys().then( - ({ my_identity_pk_string, my_identity_sk_string }) => - setSetupData((prevState) => ({ - ...prevState, - profile_identity_pk: my_identity_pk_string, - profile_identity_sk: my_identity_sk_string, - })) - ); - }, []); - - const updateSetupData = (data: Partial) => { - setSetupData((prevState) => ({ ...prevState, ...data })); - }; - - const handleScan = async (data: any) => { - if (data) { - const result = JSON.parse(data); - console.log("Prev. QR Code Data:", setupData); - updateSetupData(result); - console.log("New QR Code Data:", setupData); - } - }; - console.log(isPlatform("desktop")); - const handleImageUpload = async () => { - try { - const image = await Camera.getPhoto({ - quality: 90, - allowEditing: true, - resultType: CameraResultType.DataUrl, - source: isPlatform("desktop") - ? CameraSource.Photos - : CameraSource.Prompt, - }); - const codeReader = new BrowserQRCodeReader(); - const resultImage = await codeReader.decodeFromImageUrl(image.dataUrl); - const json_string = resultImage.getText(); - const parsedData: QRSetupData = JSON.parse(json_string); - updateSetupData(parsedData); - } catch (error) { - console.error("Error uploading image:", error); - } - }; - - const handleError = (err: Error) => { - console.error(err); - }; - - const handleQRScan = async () => { - if (isPlatform("capacitor")) { - const result = await BarcodeScanner.startScan(); - if (result.hasContent) { - handleScan(result.content); - } - } - }; - - const finishSetup = async () => { - setStatus("loading"); - const success = await dispatch(submitRegistrationCode(setupData)); - - if (success) { - setStatus("success"); - localStorage.setItem("setupComplete", "true"); - history.push("/home"); - } else { - setStatus("error"); - - console.log("Error from state:", errorFromState); - toast.error(errorFromState); - } - }; - - return ( - - {/**/} - {/* */} - {/* Connect*/} - {/* */} - {/**/} - - - {error && } -
-
-
-
- AI AGENT OS THAT UNLOCKS THE POTENTIAL OF LLMS -
-
- For devices, identities, and digital money -
-
-
- -
-
-
-
- - - - -
- - {isPlatform("capacitor") ? ( - - ) : ( - - )} -
-
-
- - updateSetupData({ registration_code: e.detail.value! }) - } - label="Registration Code" - /> - - updateSetupData({ registration_name: e.detail.value! }) - } - label="Registration Name (Your choice)" - /> - - updateSetupData({ node_address: e.detail.value! }) - } - label="Node Address (IP:PORT)" - /> - - updateSetupData({ shinkai_identity: e.detail.value! }) - } - label="Shinkai Identity (@@IDENTITY.shinkai)" - /> - - updateSetupData({ node_encryption_pk: e.detail.value! }) - } - label="Node Encryption Public Key" - /> - - updateSetupData({ node_signature_pk: e.detail.value! }) - } - label="Node Signature Public Key" - /> - - updateSetupData({ - profile_encryption_pk: e.detail.value!, - }) - } - label="Profile Encryption Public Key" - /> - - updateSetupData({ profile_identity_pk: e.detail.value! }) - } - label="Profile Signature Public Key" - /> - - updateSetupData({ - my_device_encryption_pk: e.detail.value!, - }) - } - label="My Encryption Public Key" - /> - - updateSetupData({ my_device_identity_pk: e.detail.value! }) - } - label="My Signature Public Key" - /> - {status === "error" && ( -

- Something went wrong. Please check your inputs and try again -

- )} - -
-
-
-
-
-
- ); -}; - -export default Connect; - -function CustomQrScanner({ - onError, - onDecode, - scanDelay, - containerStyle, -}: { - onError: QrScannerProps["onError"]; - onDecode: QrScannerProps["onDecode"]; - containerStyle: React.CSSProperties; - scanDelay: number; -}) { - const [showScanner, setShowScanner] = useState(false); - const [status, setStatus] = useState< - "idle" | "loading" | "error" | "success" - >("idle"); - - return showScanner ? ( -
- { - setStatus("success"); - setShowScanner(false); - }} - /> - - -
- ) : ( - - ); -} diff --git a/shinkai-app/src/pages/CreateChat.tsx b/shinkai-app/src/pages/CreateChat.tsx deleted file mode 100644 index 42c40a544..000000000 --- a/shinkai-app/src/pages/CreateChat.tsx +++ /dev/null @@ -1,123 +0,0 @@ -// pages/CreateChat.tsx -import { - IonPage, - IonHeader, - IonToolbar, - IonTitle, - IonContent, - IonButton, - IonInput, - IonLabel, - IonItem, - IonGrid, - IonRow, - IonCol, - IonButtons, - IonBackButton, - IonTextarea, -} from "@ionic/react"; -import { useState } from "react"; -import { useDispatch, useSelector } from "react-redux"; -import { createChatWithMessage } from "../api"; -import { useSetup } from "../hooks/usetSetup"; -import { useHistory } from "react-router-dom"; -import { History } from "history"; -import { IonContentCustom, IonHeaderCustom } from "../components/ui/Layout"; -import Input from "../components/ui/Input"; -import Button from "../components/ui/Button"; -import { RootState } from "../store"; - -const CreateChat: React.FC = () => { - useSetup(); - const setupDetailsState = useSelector( - (state: RootState) => state.setupDetails, - ); - const [shinkaiIdentity, setShinkaiIdentity] = useState(""); - const [messageText, setMessageText] = useState(""); - const dispatch = useDispatch(); - const history: History = useHistory(); - - const handleCreateChat = async () => { - // Perform your API request here - console.log("Creating chat with Shinkai Identity:", shinkaiIdentity); - - // Split shinkaiIdentity into sender and the rest - let [receiver, ...rest] = shinkaiIdentity.split("/"); - - // Join the rest back together to form sender_subidentity - let receiver_subidentity = rest.join("/"); - - // Local Identity - const { shinkai_identity, profile, registration_name } = setupDetailsState; - - let sender = shinkai_identity; - let sender_subidentity = `${profile}/device/${registration_name}`; - // console.log("Sender:", shinkai_identity); - // console.log("Sender Subidentity:", `${profile}/device/${registration_name}`); - - // Send a message to someone - let inboxId = await dispatch( - createChatWithMessage( - sender, - sender_subidentity, - receiver, - receiver_subidentity, - messageText, - setupDetailsState, - ), - ); - - if (inboxId) { - // Hacky solution because react-router can't handle dots in the URL - const encodedInboxId = inboxId.toString().replace(/\./g, "~"); - history.push(`/chat/${encodeURIComponent(encodedInboxId)}`); - } - }; - - return ( - - - - - - Create Chat - - - - - -

- New Chat Details -

-
- setShinkaiIdentity(e.detail.value!)} - /> - - setMessageText(e.detail.value!)} - /> -
- -
- -
-
-
-
-
-
- ); -}; - -export default CreateChat; diff --git a/shinkai-app/src/pages/CreateJob.tsx b/shinkai-app/src/pages/CreateJob.tsx deleted file mode 100644 index d33031fd1..000000000 --- a/shinkai-app/src/pages/CreateJob.tsx +++ /dev/null @@ -1,176 +0,0 @@ -// pages/CreateJob.tsx -import { - IonPage, - IonHeader, - IonToolbar, - IonTitle, - IonContent, - IonButton, - IonInput, - IonLabel, - IonItem, - IonGrid, - IonRow, - IonCol, - IonButtons, - IonBackButton, - IonSelect, - IonSelectOption, - IonTextarea, -} from "@ionic/react"; -import { useEffect, useState } from "react"; -import { IonContentCustom, IonHeaderCustom } from "../components/ui/Layout"; -import Button from "../components/ui/Button"; -import Input from "../components/ui/Input"; -import { createJob, getProfileAgents, sendMessageToJob } from "../api"; -import { useSetup } from "../hooks/usetSetup"; -import { useDispatch, useSelector } from "react-redux"; -import { RootState } from "../store"; -import { History } from "history"; -import { useHistory } from "react-router-dom"; -import { SerializedAgent } from "../models/SchemaTypes"; -import { JobScopeWrapper } from "../lib/wasm/JobScopeWrapper"; -import { - InboxNameWrapper, - JobCreationWrapper, -} from "../pkg/shinkai_message_wasm"; - -const CreateJob: React.FC = () => { - useSetup(); - const dispatch = useDispatch(); - const setupDetailsState = useSelector( - (state: RootState) => state.setupDetails - ); - const [jobContent, setJobContent] = useState(""); - const [selectedAgent, setSelectedAgent] = useState( - null - ); - const agents = useSelector((state: RootState) => state.other.agents); - const history: History = useHistory(); - - useEffect(() => { - const fetchAgents = async () => { - const { shinkai_identity, profile, registration_name } = - setupDetailsState; - let node_name = shinkai_identity; - let sender_subidentity = `${profile}/device/${registration_name}`; - - await getProfileAgents( - node_name, - sender_subidentity, - node_name, - setupDetailsState - )(dispatch); - }; - - fetchAgents(); - }, [dispatch, setupDetailsState]); - - const handleCreateJob = async () => { - console.log("Creating job with content:", jobContent); - - const { shinkai_identity, profile } = setupDetailsState; - let sender = shinkai_identity + "/" + profile; - - const job_creation = JobCreationWrapper.empty().get_scope; - console.log("buckets: ", job_creation.buckets); - console.log("scope:", job_creation); - - const scope = new JobScopeWrapper( - job_creation.buckets, - job_creation.documents - ); - console.log("scope:", scope.to_jsvalue()); - - console.log("Selected agent:", selectedAgent); - - const receiver = shinkai_identity; - const receiver_subidentity = `${profile}/agent/${selectedAgent?.id}`; - - // Call createJob - const jobId = await createJob( - scope.to_jsvalue(), - sender, - receiver, - receiver_subidentity, - setupDetailsState - ); - console.log("Job created with id:", jobId); - - if (jobId) { - // Now message job - const _ = await dispatch( - sendMessageToJob( - jobId.toString(), - jobContent, - sender, - receiver, - receiver_subidentity, - setupDetailsState - ) - ); - - // Hacky solution because react-router can't handle dots in the URL - const jobInboxName = InboxNameWrapper.get_job_inbox_name_from_params( - jobId.toString() - ); - const encodedJobId = jobInboxName.get_value.replace(/\./g, "~"); - history.push(`/job-chat/${encodeURIComponent(encodedJobId)}`); - } - }; - - return ( - - - - - - Create Job - - - - - -

- New Job Details -

- - - Select Agent - setSelectedAgent(e.detail.value)} - > - {Object.values(agents).map((agent, index) => ( - - {agent.id} - - ))} - - - - - Tell me the job to do - setJobContent(e.detail.value!)} - /> - - -
- -
-
-
-
-
-
- ); -}; - -export default CreateJob; diff --git a/shinkai-app/src/pages/Home.css b/shinkai-app/src/pages/Home.css deleted file mode 100644 index f2b4db7c0..000000000 --- a/shinkai-app/src/pages/Home.css +++ /dev/null @@ -1,27 +0,0 @@ -.ion-item-home { - --ion-item-background: theme("colors.slate.100"); - --background: theme("colors.slate.100"); - --box-shadow: none; - --inner-border-width: 0; - @apply rounded-lg; - &::part(native) { - @apply h-[60px] md:h-[80px]; - } - @media (prefers-color-scheme: dark) { - --ion-item-background: theme("colors.slate.900"); - --background: theme("colors.slate.900"); - --background-hover: theme("colors.slate.800"); - } -} - -.ion-actionSheet-custom { - --max-width: 100%; - @apply md:rounded-[1.5rem]; - --button-background: theme("colors.white"); - @media (prefers-color-scheme: dark) { - --button-background: theme("colors.slate.800"); - } - .action-sheet-container { - @apply bg-white rounded-t-[1.25rem] py-6 pb-2 dark:bg-slate-800; - } -} diff --git a/shinkai-app/src/pages/Home.tsx b/shinkai-app/src/pages/Home.tsx deleted file mode 100644 index 51e98cec9..000000000 --- a/shinkai-app/src/pages/Home.tsx +++ /dev/null @@ -1,211 +0,0 @@ -import { - IonActionSheet, - IonAlert, - IonAvatar, - IonButton, - IonButtons, - IonContent, - IonHeader, - IonIcon, - IonItem, - IonList, - IonPage, - IonText, - IonTitle, - IonToolbar, -} from "@ionic/react"; -import { addOutline, arrowForward, cloudUpload } from "ionicons/icons"; -import "./Home.css"; -import { useHistory } from "react-router-dom"; -import { useDispatch, useSelector } from "react-redux"; -import React, { useEffect, useState } from "react"; -import { ApiConfig } from "../api/api_config"; -import { clearStore } from "../store/actions"; -import { getAllInboxesForProfile } from "../api"; -import Avatar from "../components/ui/Avatar"; -import { IonContentCustom, IonHeaderCustom } from "../components/ui/Layout"; -import { RootState } from "../store"; - -const Home: React.FC = () => { - const setupDetails = useSelector((state: RootState) => state.setupDetails); - const history = useHistory(); - const dispatch = useDispatch(); - - const { shinkai_identity, profile, registration_name, permission_type } = - setupDetails; - const displayString = ( - <> - {`${shinkai_identity}/${profile}/device/${registration_name}`}{" "} - (Device) - - ); - const [showActionSheet, setShowActionSheet] = useState(false); - const [showLogoutAlert, setShowLogoutAlert] = useState(false); - const inboxes = useSelector((state: RootState) => state.other.just_inboxes); - console.log("Inboxes:", inboxes); - - useEffect(() => { - console.log("Redux State:", setupDetails); - ApiConfig.getInstance().setEndpoint(setupDetails.node_address); - }, []); - - useEffect(() => { - console.log("Redux State:", setupDetails); - ApiConfig.getInstance().setEndpoint(setupDetails.node_address); - - // Local Identity - const { shinkai_identity, profile, registration_name } = setupDetails; - let sender = shinkai_identity; - let sender_subidentity = `${profile}/device/${registration_name}`; - - // Assuming receiver and target_shinkai_name_profile are the same as sender - let receiver = sender; - let target_shinkai_name_profile = `${sender}/${profile}`; - - dispatch( - getAllInboxesForProfile( - sender, - sender_subidentity, - receiver, - target_shinkai_name_profile, - setupDetails, - ), - ); - }, []); - - return ( - - - - {displayString} - - - {" "} - {/* Add the "+" button to the right side of the toolbar */} - setShowActionSheet(true)}> - - - - - - - - {displayString} - - - {/* */} - - -
-
- {inboxes && inboxes.map((inbox_name) => ( - { - const encodedInboxId = inbox_name.toString().replace(/\./g, "~"); - if (encodedInboxId.startsWith("inbox")) { - history.push(`/chat/${encodeURIComponent(encodedInboxId)}`); - } else if (encodedInboxId.startsWith("job_inbox")) { - history.push(`/job-chat/${encodeURIComponent(encodedInboxId)}`); - } - }} - > - - - {JSON.stringify(inbox_name)} - - - - ))} -
-
-
-
- {/* Action Sheet (popup) */} - setShowActionSheet(false)} - buttons={[ - { - text: "Admin Commands", - role: permission_type !== "admin" ? "destructive" : undefined, - handler: () => { - if (permission_type === "admin") { - history.push("/admin-commands"); - } else { - console.log("Not authorized for Admin Commands"); - } - }, - }, - { - text: "Create Job", - handler: () => { - history.push("/create-job"); - }, - }, - { - text: "Create Chat", - handler: () => { - history.push("/create-chat"); - }, - }, - { - text: "Add Agent", - handler: () => { - history.push("/add-agent"); - }, - }, - { - text: "Logout", - role: "destructive", - handler: () => { - setShowLogoutAlert(true); - }, - }, - { - text: "Cancel", - role: "cancel", - handler: () => { - console.log("Cancel clicked"); - }, - }, - ]} - > - setShowLogoutAlert(false)} - header={"Confirm"} - message={ - "Are you sure you want to logout? This will clear all your data." - } - buttons={[ - { - text: "Cancel", - role: "cancel", - handler: () => { - console.log("Cancel clicked"); - }, - }, - { - text: "Yes", - handler: () => { - dispatch(clearStore()); - history.push("/connect"); - }, - }, - ]} - /> -
- ); -}; - -export default Home; diff --git a/shinkai-app/src/pages/JobChat.tsx b/shinkai-app/src/pages/JobChat.tsx deleted file mode 100644 index c8bb061d1..000000000 --- a/shinkai-app/src/pages/JobChat.tsx +++ /dev/null @@ -1,131 +0,0 @@ -import { - IonBackButton, - IonButtons, - IonIcon, - IonPage, - IonTextarea, - IonTitle, -} from "@ionic/react"; -import { useParams } from "react-router-dom"; -import React, { useCallback, useEffect, useRef, useState } from "react"; -import { shallowEqual, useDispatch, useSelector } from "react-redux"; -import { - sendMessageToJob, -} from "../api/index"; -import { useSetup } from "../hooks/usetSetup"; -import { - extractJobIdFromInbox, - getOtherPersonIdentity, -} from "../utils/inbox_name_handler"; -import { cn } from "../theme/lib/utils"; -import { send } from "ionicons/icons"; -import "./Chat.css"; -import { - IonFooterCustom, - IonHeaderCustom, -} from "../components/ui/Layout"; -import ChatMessages from "../components/ChatMessages"; -import { RootState } from "../store"; - -const JobChat: React.FC = () => { - console.log("Loading JobChat.tsx"); - useSetup(); - - const dispatch = useDispatch(); - const setupDetailsState = useSelector( - (state: RootState) => state.setupDetails, - shallowEqual - ); - const { shinkai_identity, profile } = setupDetailsState; - - const { id } = useParams<{ id: string }>(); - const deserializedId = decodeURIComponent(id).replace(/~/g, "."); - const [inputMessage, setInputMessage] = useState(""); - const otherPersonIdentity = getOtherPersonIdentity( - deserializedId, - setupDetailsState.shinkai_identity - ); - - const sendMessage = useCallback(async () => { - let sender = `${shinkai_identity}/${profile}`; - console.log("Sending message: ", inputMessage); - console.log("Sender:", sender); - - let message_to_send = inputMessage; - setInputMessage(""); - const result = await dispatch( - sendMessageToJob( - extractJobIdFromInbox(deserializedId.toString()), - message_to_send, - sender, - shinkai_identity, - "", - setupDetailsState - ) - ); - - }, [inputMessage, dispatch, setupDetailsState, shinkai_identity, deserializedId]); - - return ( - - - - - -
- - {otherPersonIdentity} - - {/**/} -
-
- - -
{ - e.preventDefault(); - if (inputMessage.trim() !== "") { - sendMessage(); - } - }} - > -
- { - const newMessage = e.detail.value!; - setInputMessage(newMessage); - }} - placeholder="Type a message" - > - - -
-
-
-
- ); -}; - -export default JobChat; diff --git a/shinkai-app/src/pages/Settings.tsx b/shinkai-app/src/pages/Settings.tsx deleted file mode 100644 index de86ee563..000000000 --- a/shinkai-app/src/pages/Settings.tsx +++ /dev/null @@ -1,18 +0,0 @@ -import { IonContent, IonHeader, IonPage, IonTitle, IonToolbar } from '@ionic/react'; - -const Settings: React.FC = () => { - return ( - - - - Settings - - - - {/* Your settings UI goes here */} - - - ); -}; - -export default Settings; diff --git a/shinkai-app/src/pkg/README.md b/shinkai-app/src/pkg/README.md deleted file mode 100644 index d1acebccb..000000000 --- a/shinkai-app/src/pkg/README.md +++ /dev/null @@ -1,16 +0,0 @@ -## Compile WASM bundle -Run the following command: - -`wasm-pack build` - -a folder called `pkg` will be generated under the root directory of shinkai-message-wasm. You should copy the entire folder to the required typescript project. - -## How To Run The Tests - -For Rust tests: - -`cargo test -- --test-threads=1` - -For WASM tests: - -`wasm-pack test --node` \ No newline at end of file diff --git a/shinkai-app/src/pkg/package.json b/shinkai-app/src/pkg/package.json deleted file mode 100644 index 230ecae2d..000000000 --- a/shinkai-app/src/pkg/package.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "name": "shinkai_message_wasm", - "collaborators": [ - "Nico Arqueros " - ], - "version": "0.1.0", - "files": [ - "shinkai_message_wasm_bg.wasm", - "shinkai_message_wasm.js", - "shinkai_message_wasm_bg.js", - "shinkai_message_wasm.d.ts" - ], - "module": "shinkai_message_wasm.js", - "types": "shinkai_message_wasm.d.ts", - "sideEffects": [ - "./shinkai_message_wasm.js", - "./snippets/*" - ] -} \ No newline at end of file diff --git a/shinkai-app/src/pkg/shinkai_message_wasm.d.ts b/shinkai-app/src/pkg/shinkai_message_wasm.d.ts deleted file mode 100644 index f707fbb4b..000000000 --- a/shinkai-app/src/pkg/shinkai_message_wasm.d.ts +++ /dev/null @@ -1,540 +0,0 @@ -/* tslint:disable */ -/* eslint-disable */ -/** -* @param {string} encryption_sk -* @returns {string} -*/ -export function convert_encryption_sk_string_to_encryption_pk_string(encryption_sk: string): string; -/** -*/ -export enum EncryptionMethod { - DiffieHellmanChaChaPoly1305 = 0, - None = 1, -} -/** -*/ -export class InboxNameWrapper { - free(): void; -/** -* @param {any} inbox_name_js -*/ - constructor(inbox_name_js: any); -/** -* @returns {any} -*/ - to_jsvalue(): any; -/** -* @returns {string} -*/ - to_json_str(): string; -/** -* @param {string} sender -* @param {string} sender_subidentity -* @param {string} recipient -* @param {string} recipient_subidentity -* @param {boolean} is_e2e -* @returns {InboxNameWrapper} -*/ - static get_regular_inbox_name_from_params(sender: string, sender_subidentity: string, recipient: string, recipient_subidentity: string, is_e2e: boolean): InboxNameWrapper; -/** -* @param {string} unique_id -* @returns {InboxNameWrapper} -*/ - static get_job_inbox_name_from_params(unique_id: string): InboxNameWrapper; -/** -* @returns {any} -*/ - get_inner(): any; -/** -*/ - readonly get_identities: any; -/** -*/ - readonly get_is_e2e: boolean; -/** -*/ - readonly get_unique_id: any; -/** -*/ - readonly get_value: any; -/** -*/ - readonly to_string: any; -} -/** -*/ -export class JobCreationWrapper { - free(): void; -/** -* @param {any} scope_js -*/ - constructor(scope_js: any); -/** -* @returns {any} -*/ - to_jsvalue(): any; -/** -* @returns {string} -*/ - to_json_str(): string; -/** -* @param {string} s -* @returns {JobCreationWrapper} -*/ - static from_json_str(s: string): JobCreationWrapper; -/** -* @param {any} js_value -* @returns {JobCreationWrapper} -*/ - static from_jsvalue(js_value: any): JobCreationWrapper; -/** -* @returns {JobCreationWrapper} -*/ - static empty(): JobCreationWrapper; -/** -*/ - readonly get_scope: any; -} -/** -*/ -export class JobMessageWrapper { - free(): void; -/** -* @param {any} job_id_js -* @param {any} content_js -*/ - constructor(job_id_js: any, content_js: any); -/** -* @returns {any} -*/ - to_jsvalue(): any; -/** -* @returns {string} -*/ - to_json_str(): string; -/** -* @param {string} s -* @returns {JobMessageWrapper} -*/ - static from_json_str(s: string): JobMessageWrapper; -/** -* @param {any} js_value -* @returns {JobMessageWrapper} -*/ - static from_jsvalue(js_value: any): JobMessageWrapper; -/** -* @param {string} job_id -* @param {string} content -* @returns {JobMessageWrapper} -*/ - static fromStrings(job_id: string, content: string): JobMessageWrapper; -} -/** -*/ -export class JobScopeWrapper { - free(): void; -/** -* @param {any} buckets_js -* @param {any} documents_js -*/ - constructor(buckets_js: any, documents_js: any); -/** -* @returns {any} -*/ - to_jsvalue(): any; -/** -* @returns {string} -*/ - to_json_str(): string; -} -/** -*/ -export class SerializedAgentWrapper { - free(): void; -/** -* @param {any} serialized_agent_js -*/ - constructor(serialized_agent_js: any); -/** -* @param {string} id -* @param {string} full_identity_name -* @param {string} perform_locally -* @param {string} external_url -* @param {string} api_key -* @param {string} model -* @param {string} toolkit_permissions -* @param {string} storage_bucket_permissions -* @param {string} allowed_message_senders -* @returns {SerializedAgentWrapper} -*/ - static fromStrings(id: string, full_identity_name: string, perform_locally: string, external_url: string, api_key: string, model: string, toolkit_permissions: string, storage_bucket_permissions: string, allowed_message_senders: string): SerializedAgentWrapper; -/** -* @returns {any} -*/ - to_jsvalue(): any; -/** -* @param {any} j -* @returns {SerializedAgentWrapper} -*/ - static fromJsValue(j: any): SerializedAgentWrapper; -/** -* @returns {string} -*/ - to_json_str(): string; -/** -* @param {string} s -* @returns {SerializedAgentWrapper} -*/ - static from_json_str(s: string): SerializedAgentWrapper; -/** -*/ - readonly inner: any; -} -/** -*/ -export class ShinkaiMessageBuilderWrapper { - free(): void; -/** -* @param {string} my_encryption_secret_key -* @param {string} my_signature_secret_key -* @param {string} receiver_public_key -*/ - constructor(my_encryption_secret_key: string, my_signature_secret_key: string, receiver_public_key: string); -/** -* @param {any} encryption -*/ - body_encryption(encryption: any): void; -/** -*/ - no_body_encryption(): void; -/** -* @param {string} message_raw_content -*/ - message_raw_content(message_raw_content: string): void; -/** -* @param {any} content -*/ - message_schema_type(content: any): void; -/** -* @param {string} sender_subidentity -* @param {string} recipient_subidentity -* @param {any} encryption -*/ - internal_metadata(sender_subidentity: string, recipient_subidentity: string, encryption: any): void; -/** -* @param {string} sender_subidentity -* @param {string} recipient_subidentity -* @param {string} inbox -* @param {any} encryption -*/ - internal_metadata_with_inbox(sender_subidentity: string, recipient_subidentity: string, inbox: string, encryption: any): void; -/** -* @param {string} sender_subidentity -* @param {string} recipient_subidentity -* @param {string} inbox -* @param {any} message_schema -* @param {any} encryption -*/ - internal_metadata_with_schema(sender_subidentity: string, recipient_subidentity: string, inbox: string, message_schema: any, encryption: any): void; -/** -*/ - empty_encrypted_internal_metadata(): void; -/** -*/ - empty_non_encrypted_internal_metadata(): void; -/** -* @param {string} recipient -* @param {string} sender -*/ - external_metadata(recipient: string, sender: string): void; -/** -* @param {string} recipient -* @param {string} sender -* @param {string} other -*/ - external_metadata_with_other(recipient: string, sender: string, other: string): void; -/** -* @param {string} recipient -* @param {string} sender -* @param {string} scheduled_time -*/ - external_metadata_with_schedule(recipient: string, sender: string, scheduled_time: string): void; -/** -* @returns {ShinkaiMessageWrapper} -*/ - build(): ShinkaiMessageWrapper; -/** -* @returns {any} -*/ - build_to_jsvalue(): any; -/** -* @returns {string} -*/ - build_to_string(): string; -/** -* @param {string} my_encryption_secret_key -* @param {string} my_signature_secret_key -* @param {string} receiver_public_key -* @param {string} sender -* @param {string} receiver -* @returns {string} -*/ - static ack_message(my_encryption_secret_key: string, my_signature_secret_key: string, receiver_public_key: string, sender: string, receiver: string): string; -/** -* @param {string} my_subidentity_encryption_sk -* @param {string} my_subidentity_signature_sk -* @param {string} receiver_public_key -* @param {string} permissions -* @param {string} code_type -* @param {string} sender -* @param {string} sender_subidentity -* @param {string} recipient -* @param {string} recipient_subidentity -* @returns {string} -*/ - static request_code_registration(my_subidentity_encryption_sk: string, my_subidentity_signature_sk: string, receiver_public_key: string, permissions: string, code_type: string, sender: string, sender_subidentity: string, recipient: string, recipient_subidentity: string): string; -/** -* @param {string} profile_encryption_sk -* @param {string} profile_signature_sk -* @param {string} receiver_public_key -* @param {string} code -* @param {string} identity_type -* @param {string} permission_type -* @param {string} registration_name -* @param {string} sender -* @param {string} sender_subidentity -* @param {string} recipient -* @param {string} recipient_subidentity -* @returns {string} -*/ - static use_code_registration_for_profile(profile_encryption_sk: string, profile_signature_sk: string, receiver_public_key: string, code: string, identity_type: string, permission_type: string, registration_name: string, sender: string, sender_subidentity: string, recipient: string, recipient_subidentity: string): string; -/** -* @param {string} my_device_encryption_sk -* @param {string} my_device_signature_sk -* @param {string} profile_encryption_sk -* @param {string} profile_signature_sk -* @param {string} receiver_public_key -* @param {string} code -* @param {string} identity_type -* @param {string} permission_type -* @param {string} registration_name -* @param {string} sender -* @param {string} sender_subidentity -* @param {string} recipient -* @param {string} recipient_subidentity -* @returns {string} -*/ - static use_code_registration_for_device(my_device_encryption_sk: string, my_device_signature_sk: string, profile_encryption_sk: string, profile_signature_sk: string, receiver_public_key: string, code: string, identity_type: string, permission_type: string, registration_name: string, sender: string, sender_subidentity: string, recipient: string, recipient_subidentity: string): string; -/** -* @param {string} my_subidentity_encryption_sk -* @param {string} my_subidentity_signature_sk -* @param {string} receiver_public_key -* @param {string} inbox -* @param {number} count -* @param {string | undefined} offset -* @param {string} sender -* @param {string} sender_subidentity -* @param {string} recipient -* @param {string} recipient_subidentity -* @returns {string} -*/ - static get_last_messages_from_inbox(my_subidentity_encryption_sk: string, my_subidentity_signature_sk: string, receiver_public_key: string, inbox: string, count: number, offset: string | undefined, sender: string, sender_subidentity: string, recipient: string, recipient_subidentity: string): string; -/** -* @param {string} my_subidentity_encryption_sk -* @param {string} my_subidentity_signature_sk -* @param {string} receiver_public_key -* @param {string} inbox -* @param {number} count -* @param {string | undefined} offset -* @param {string} sender -* @param {string} sender_subidentity -* @param {string} recipient -* @param {string} recipient_subidentity -* @returns {string} -*/ - static get_last_unread_messages_from_inbox(my_subidentity_encryption_sk: string, my_subidentity_signature_sk: string, receiver_public_key: string, inbox: string, count: number, offset: string | undefined, sender: string, sender_subidentity: string, recipient: string, recipient_subidentity: string): string; -/** -* @param {string} my_subidentity_encryption_sk -* @param {string} my_subidentity_signature_sk -* @param {string} receiver_public_key -* @param {string} agent_json -* @param {string} sender -* @param {string} sender_subidentity -* @param {string} recipient -* @param {string} recipient_subidentity -* @returns {string} -*/ - static request_add_agent(my_subidentity_encryption_sk: string, my_subidentity_signature_sk: string, receiver_public_key: string, agent_json: string, sender: string, sender_subidentity: string, recipient: string, recipient_subidentity: string): string; -/** -* @param {string} my_subidentity_encryption_sk -* @param {string} my_subidentity_signature_sk -* @param {string} receiver_public_key -* @param {string} inbox -* @param {string} up_to_time -* @param {string} sender -* @param {string} sender_subidentity -* @param {string} recipient -* @param {string} recipient_subidentity -* @returns {string} -*/ - static read_up_to_time(my_subidentity_encryption_sk: string, my_subidentity_signature_sk: string, receiver_public_key: string, inbox: string, up_to_time: string, sender: string, sender_subidentity: string, recipient: string, recipient_subidentity: string): string; -/** -* @param {string} my_subidentity_encryption_sk -* @param {string} my_subidentity_signature_sk -* @param {string} receiver_public_key -* @param {string} data -* @param {string} sender -* @param {string} sender_subidentity -* @param {string} recipient -* @param {string} recipient_subidentity -* @param {string} other -* @param {string} schema -* @returns {string} -*/ - static create_custom_shinkai_message_to_node(my_subidentity_encryption_sk: string, my_subidentity_signature_sk: string, receiver_public_key: string, data: string, sender: string, sender_subidentity: string, recipient: string, recipient_subidentity: string, other: string, schema: string): string; -/** -* @param {string} message -* @param {string} my_encryption_secret_key -* @param {string} my_signature_secret_key -* @param {string} receiver_public_key -* @param {string} sender -* @param {string} receiver -* @returns {string} -*/ - static ping_pong_message(message: string, my_encryption_secret_key: string, my_signature_secret_key: string, receiver_public_key: string, sender: string, receiver: string): string; -/** -* @param {string} my_encryption_secret_key -* @param {string} my_signature_secret_key -* @param {string} receiver_public_key -* @param {any} scope -* @param {string} sender -* @param {string} receiver -* @param {string} receiver_subidentity -* @returns {string} -*/ - static job_creation(my_encryption_secret_key: string, my_signature_secret_key: string, receiver_public_key: string, scope: any, sender: string, receiver: string, receiver_subidentity: string): string; -/** -* @param {string} job_id -* @param {string} content -* @param {string} my_encryption_secret_key -* @param {string} my_signature_secret_key -* @param {string} receiver_public_key -* @param {string} sender -* @param {string} receiver -* @param {string} receiver_subidentity -* @returns {string} -*/ - static job_message(job_id: string, content: string, my_encryption_secret_key: string, my_signature_secret_key: string, receiver_public_key: string, sender: string, receiver: string, receiver_subidentity: string): string; -/** -* @param {string} my_encryption_secret_key -* @param {string} my_signature_secret_key -* @param {string} receiver_public_key -* @param {string} sender -* @param {string} receiver -* @returns {string} -*/ - static terminate_message(my_encryption_secret_key: string, my_signature_secret_key: string, receiver_public_key: string, sender: string, receiver: string): string; -/** -* @param {string} my_encryption_secret_key -* @param {string} my_signature_secret_key -* @param {string} receiver_public_key -* @param {string} sender -* @param {string} receiver -* @param {string} error_msg -* @returns {string} -*/ - static error_message(my_encryption_secret_key: string, my_signature_secret_key: string, receiver_public_key: string, sender: string, receiver: string, error_msg: string): string; -} -/** -*/ -export class ShinkaiMessageWrapper { - free(): void; -/** -* @param {any} shinkai_message_js -*/ - constructor(shinkai_message_js: any); -/** -* @returns {any} -*/ - to_jsvalue(): any; -/** -* @param {any} j -* @returns {ShinkaiMessageWrapper} -*/ - static fromJsValue(j: any): ShinkaiMessageWrapper; -/** -* @returns {string} -*/ - to_json_str(): string; -/** -* @param {string} s -* @returns {ShinkaiMessageWrapper} -*/ - static from_json_str(s: string): ShinkaiMessageWrapper; -/** -* @returns {string} -*/ - calculate_hash(): string; -/** -* @returns {string} -*/ - static generate_time_now(): string; -/** -*/ - encryption: string; -/** -*/ - external_metadata: any; -/** -*/ - message_body: any; -} -/** -*/ -export class ShinkaiNameWrapper { - free(): void; -/** -* @param {any} shinkai_name_js -*/ - constructor(shinkai_name_js: any); -/** -* @returns {any} -*/ - to_jsvalue(): any; -/** -* @returns {string} -*/ - to_json_str(): string; -/** -* @returns {ShinkaiNameWrapper} -*/ - extract_profile(): ShinkaiNameWrapper; -/** -* @returns {ShinkaiNameWrapper} -*/ - extract_node(): ShinkaiNameWrapper; -/** -*/ - readonly get_full_name: any; -/** -*/ - readonly get_node_name: any; -/** -*/ - readonly get_profile_name: any; -/** -*/ - readonly get_subidentity_name: any; -/** -*/ - readonly get_subidentity_type: any; -} -/** -*/ -export class ShinkaiTime { - free(): void; -/** -* @returns {string} -*/ - static generateTimeNow(): string; -} diff --git a/shinkai-app/src/pkg/shinkai_message_wasm.js b/shinkai-app/src/pkg/shinkai_message_wasm.js deleted file mode 100644 index 8389d69c9..000000000 --- a/shinkai-app/src/pkg/shinkai_message_wasm.js +++ /dev/null @@ -1,4 +0,0 @@ -import * as wasm from "./shinkai_message_wasm_bg.wasm"; -import { __wbg_set_wasm } from "./shinkai_message_wasm_bg.js"; -__wbg_set_wasm(wasm); -export * from "./shinkai_message_wasm_bg.js"; diff --git a/shinkai-app/src/pkg/shinkai_message_wasm_bg.js b/shinkai-app/src/pkg/shinkai_message_wasm_bg.js deleted file mode 100644 index b393612f0..000000000 --- a/shinkai-app/src/pkg/shinkai_message_wasm_bg.js +++ /dev/null @@ -1,2874 +0,0 @@ -let wasm; -export function __wbg_set_wasm(val) { - wasm = val; -} - - -const heap = new Array(128).fill(undefined); - -heap.push(undefined, null, true, false); - -function getObject(idx) { return heap[idx]; } - -let WASM_VECTOR_LEN = 0; - -let cachedUint8Memory0 = null; - -function getUint8Memory0() { - if (cachedUint8Memory0 === null || cachedUint8Memory0.byteLength === 0) { - cachedUint8Memory0 = new Uint8Array(wasm.memory.buffer); - } - return cachedUint8Memory0; -} - -const lTextEncoder = typeof TextEncoder === 'undefined' ? (0, module.require)('util').TextEncoder : TextEncoder; - -let cachedTextEncoder = new lTextEncoder('utf-8'); - -const encodeString = (typeof cachedTextEncoder.encodeInto === 'function' - ? function (arg, view) { - return cachedTextEncoder.encodeInto(arg, view); -} - : function (arg, view) { - const buf = cachedTextEncoder.encode(arg); - view.set(buf); - return { - read: arg.length, - written: buf.length - }; -}); - -function passStringToWasm0(arg, malloc, realloc) { - - if (realloc === undefined) { - const buf = cachedTextEncoder.encode(arg); - const ptr = malloc(buf.length, 1) >>> 0; - getUint8Memory0().subarray(ptr, ptr + buf.length).set(buf); - WASM_VECTOR_LEN = buf.length; - return ptr; - } - - let len = arg.length; - let ptr = malloc(len, 1) >>> 0; - - const mem = getUint8Memory0(); - - let offset = 0; - - for (; offset < len; offset++) { - const code = arg.charCodeAt(offset); - if (code > 0x7F) break; - mem[ptr + offset] = code; - } - - if (offset !== len) { - if (offset !== 0) { - arg = arg.slice(offset); - } - ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0; - const view = getUint8Memory0().subarray(ptr + offset, ptr + len); - const ret = encodeString(arg, view); - - offset += ret.written; - } - - WASM_VECTOR_LEN = offset; - return ptr; -} - -function isLikeNone(x) { - return x === undefined || x === null; -} - -let cachedInt32Memory0 = null; - -function getInt32Memory0() { - if (cachedInt32Memory0 === null || cachedInt32Memory0.byteLength === 0) { - cachedInt32Memory0 = new Int32Array(wasm.memory.buffer); - } - return cachedInt32Memory0; -} - -const lTextDecoder = typeof TextDecoder === 'undefined' ? (0, module.require)('util').TextDecoder : TextDecoder; - -let cachedTextDecoder = new lTextDecoder('utf-8', { ignoreBOM: true, fatal: true }); - -cachedTextDecoder.decode(); - -function getStringFromWasm0(ptr, len) { - ptr = ptr >>> 0; - return cachedTextDecoder.decode(getUint8Memory0().subarray(ptr, ptr + len)); -} - -let heap_next = heap.length; - -function addHeapObject(obj) { - if (heap_next === heap.length) heap.push(heap.length + 1); - const idx = heap_next; - heap_next = heap[idx]; - - heap[idx] = obj; - return idx; -} - -function dropObject(idx) { - if (idx < 132) return; - heap[idx] = heap_next; - heap_next = idx; -} - -function takeObject(idx) { - const ret = getObject(idx); - dropObject(idx); - return ret; -} - -let cachedFloat64Memory0 = null; - -function getFloat64Memory0() { - if (cachedFloat64Memory0 === null || cachedFloat64Memory0.byteLength === 0) { - cachedFloat64Memory0 = new Float64Array(wasm.memory.buffer); - } - return cachedFloat64Memory0; -} - -function debugString(val) { - // primitive types - const type = typeof val; - if (type == 'number' || type == 'boolean' || val == null) { - return `${val}`; - } - if (type == 'string') { - return `"${val}"`; - } - if (type == 'symbol') { - const description = val.description; - if (description == null) { - return 'Symbol'; - } else { - return `Symbol(${description})`; - } - } - if (type == 'function') { - const name = val.name; - if (typeof name == 'string' && name.length > 0) { - return `Function(${name})`; - } else { - return 'Function'; - } - } - // objects - if (Array.isArray(val)) { - const length = val.length; - let debug = '['; - if (length > 0) { - debug += debugString(val[0]); - } - for(let i = 1; i < length; i++) { - debug += ', ' + debugString(val[i]); - } - debug += ']'; - return debug; - } - // Test for built-in - const builtInMatches = /\[object ([^\]]+)\]/.exec(toString.call(val)); - let className; - if (builtInMatches.length > 1) { - className = builtInMatches[1]; - } else { - // Failed to match the standard '[object ClassName]' - return toString.call(val); - } - if (className == 'Object') { - // we're a user defined class or Object - // JSON.stringify avoids problems with cycles, and is generally much - // easier than looping through ownProperties of `val`. - try { - return 'Object(' + JSON.stringify(val) + ')'; - } catch (_) { - return 'Object'; - } - } - // errors - if (val instanceof Error) { - return `${val.name}: ${val.message}\n${val.stack}`; - } - // TODO we could test for more things here, like `Set`s and `Map`s. - return className; -} -/** -* @param {string} encryption_sk -* @returns {string} -*/ -export function convert_encryption_sk_string_to_encryption_pk_string(encryption_sk) { - let deferred3_0; - let deferred3_1; - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(encryption_sk, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - wasm.convert_encryption_sk_string_to_encryption_pk_string(retptr, ptr0, len0); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - var r3 = getInt32Memory0()[retptr / 4 + 3]; - var ptr2 = r0; - var len2 = r1; - if (r3) { - ptr2 = 0; len2 = 0; - throw takeObject(r2); - } - deferred3_0 = ptr2; - deferred3_1 = len2; - return getStringFromWasm0(ptr2, len2); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(deferred3_0, deferred3_1, 1); - } -} - -let stack_pointer = 128; - -function addBorrowedObject(obj) { - if (stack_pointer == 1) throw new Error('out of js stack'); - heap[--stack_pointer] = obj; - return stack_pointer; -} - -function handleError(f, args) { - try { - return f.apply(this, args); - } catch (e) { - wasm.__wbindgen_exn_store(addHeapObject(e)); - } -} -/** -*/ -export const EncryptionMethod = Object.freeze({ DiffieHellmanChaChaPoly1305:0,"0":"DiffieHellmanChaChaPoly1305",None:1,"1":"None", }); -/** -*/ -export class InboxNameWrapper { - - static __wrap(ptr) { - ptr = ptr >>> 0; - const obj = Object.create(InboxNameWrapper.prototype); - obj.__wbg_ptr = ptr; - - return obj; - } - - __destroy_into_raw() { - const ptr = this.__wbg_ptr; - this.__wbg_ptr = 0; - - return ptr; - } - - free() { - const ptr = this.__destroy_into_raw(); - wasm.__wbg_inboxnamewrapper_free(ptr); - } - /** - * @param {any} inbox_name_js - */ - constructor(inbox_name_js) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.inboxnamewrapper_new(retptr, addBorrowedObject(inbox_name_js)); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return InboxNameWrapper.__wrap(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - heap[stack_pointer++] = undefined; - } - } - /** - * @returns {any} - */ - get to_string() { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.inboxnamewrapper_to_string(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return takeObject(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @returns {any} - */ - get get_value() { - const ret = wasm.inboxnamewrapper_get_value(this.__wbg_ptr); - return takeObject(ret); - } - /** - * @returns {boolean} - */ - get get_is_e2e() { - const ret = wasm.inboxnamewrapper_get_is_e2e(this.__wbg_ptr); - return ret !== 0; - } - /** - * @returns {any} - */ - get get_identities() { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.inboxnamewrapper_get_identities(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return takeObject(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @returns {any} - */ - get get_unique_id() { - const ret = wasm.inboxnamewrapper_get_unique_id(this.__wbg_ptr); - return takeObject(ret); - } - /** - * @returns {any} - */ - to_jsvalue() { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.inboxnamewrapper_to_jsvalue(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return takeObject(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @returns {string} - */ - to_json_str() { - let deferred2_0; - let deferred2_1; - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.inboxnamewrapper_to_json_str(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - var r3 = getInt32Memory0()[retptr / 4 + 3]; - var ptr1 = r0; - var len1 = r1; - if (r3) { - ptr1 = 0; len1 = 0; - throw takeObject(r2); - } - deferred2_0 = ptr1; - deferred2_1 = len1; - return getStringFromWasm0(ptr1, len1); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(deferred2_0, deferred2_1, 1); - } - } - /** - * @param {string} sender - * @param {string} sender_subidentity - * @param {string} recipient - * @param {string} recipient_subidentity - * @param {boolean} is_e2e - * @returns {InboxNameWrapper} - */ - static get_regular_inbox_name_from_params(sender, sender_subidentity, recipient, recipient_subidentity, is_e2e) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(sender, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - const ptr1 = passStringToWasm0(sender_subidentity, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len1 = WASM_VECTOR_LEN; - const ptr2 = passStringToWasm0(recipient, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len2 = WASM_VECTOR_LEN; - const ptr3 = passStringToWasm0(recipient_subidentity, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len3 = WASM_VECTOR_LEN; - wasm.inboxnamewrapper_get_regular_inbox_name_from_params(retptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3, is_e2e); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return InboxNameWrapper.__wrap(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @param {string} unique_id - * @returns {InboxNameWrapper} - */ - static get_job_inbox_name_from_params(unique_id) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(unique_id, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - wasm.inboxnamewrapper_get_job_inbox_name_from_params(retptr, ptr0, len0); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return InboxNameWrapper.__wrap(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @returns {any} - */ - get_inner() { - const ret = wasm.inboxnamewrapper_get_inner(this.__wbg_ptr); - return takeObject(ret); - } -} -/** -*/ -export class JobCreationWrapper { - - static __wrap(ptr) { - ptr = ptr >>> 0; - const obj = Object.create(JobCreationWrapper.prototype); - obj.__wbg_ptr = ptr; - - return obj; - } - - __destroy_into_raw() { - const ptr = this.__wbg_ptr; - this.__wbg_ptr = 0; - - return ptr; - } - - free() { - const ptr = this.__destroy_into_raw(); - wasm.__wbg_jobcreationwrapper_free(ptr); - } - /** - * @param {any} scope_js - */ - constructor(scope_js) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.jobcreationwrapper_new(retptr, addBorrowedObject(scope_js)); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return JobCreationWrapper.__wrap(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - heap[stack_pointer++] = undefined; - } - } - /** - * @returns {any} - */ - to_jsvalue() { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.jobcreationwrapper_to_jsvalue(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return takeObject(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @returns {string} - */ - to_json_str() { - let deferred2_0; - let deferred2_1; - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.jobcreationwrapper_to_json_str(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - var r3 = getInt32Memory0()[retptr / 4 + 3]; - var ptr1 = r0; - var len1 = r1; - if (r3) { - ptr1 = 0; len1 = 0; - throw takeObject(r2); - } - deferred2_0 = ptr1; - deferred2_1 = len1; - return getStringFromWasm0(ptr1, len1); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(deferred2_0, deferred2_1, 1); - } - } - /** - * @returns {any} - */ - get get_scope() { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.jobcreationwrapper_get_scope(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return takeObject(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @param {string} s - * @returns {JobCreationWrapper} - */ - static from_json_str(s) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(s, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - wasm.jobcreationwrapper_from_json_str(retptr, ptr0, len0); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return JobCreationWrapper.__wrap(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @param {any} js_value - * @returns {JobCreationWrapper} - */ - static from_jsvalue(js_value) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.jobcreationwrapper_from_jsvalue(retptr, addBorrowedObject(js_value)); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return JobCreationWrapper.__wrap(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - heap[stack_pointer++] = undefined; - } - } - /** - * @returns {JobCreationWrapper} - */ - static empty() { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.jobcreationwrapper_empty(retptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return JobCreationWrapper.__wrap(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } -} -/** -*/ -export class JobMessageWrapper { - - static __wrap(ptr) { - ptr = ptr >>> 0; - const obj = Object.create(JobMessageWrapper.prototype); - obj.__wbg_ptr = ptr; - - return obj; - } - - __destroy_into_raw() { - const ptr = this.__wbg_ptr; - this.__wbg_ptr = 0; - - return ptr; - } - - free() { - const ptr = this.__destroy_into_raw(); - wasm.__wbg_jobmessagewrapper_free(ptr); - } - /** - * @param {any} job_id_js - * @param {any} content_js - */ - constructor(job_id_js, content_js) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.jobmessagewrapper_new(retptr, addBorrowedObject(job_id_js), addBorrowedObject(content_js)); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return JobMessageWrapper.__wrap(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - heap[stack_pointer++] = undefined; - heap[stack_pointer++] = undefined; - } - } - /** - * @returns {any} - */ - to_jsvalue() { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.jobmessagewrapper_to_jsvalue(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return takeObject(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @returns {string} - */ - to_json_str() { - let deferred2_0; - let deferred2_1; - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.jobmessagewrapper_to_json_str(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - var r3 = getInt32Memory0()[retptr / 4 + 3]; - var ptr1 = r0; - var len1 = r1; - if (r3) { - ptr1 = 0; len1 = 0; - throw takeObject(r2); - } - deferred2_0 = ptr1; - deferred2_1 = len1; - return getStringFromWasm0(ptr1, len1); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(deferred2_0, deferred2_1, 1); - } - } - /** - * @param {string} s - * @returns {JobMessageWrapper} - */ - static from_json_str(s) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(s, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - wasm.jobmessagewrapper_from_json_str(retptr, ptr0, len0); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return JobMessageWrapper.__wrap(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @param {any} js_value - * @returns {JobMessageWrapper} - */ - static from_jsvalue(js_value) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.jobmessagewrapper_from_jsvalue(retptr, addBorrowedObject(js_value)); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return JobMessageWrapper.__wrap(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - heap[stack_pointer++] = undefined; - } - } - /** - * @param {string} job_id - * @param {string} content - * @returns {JobMessageWrapper} - */ - static fromStrings(job_id, content) { - const ptr0 = passStringToWasm0(job_id, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - const ptr1 = passStringToWasm0(content, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len1 = WASM_VECTOR_LEN; - const ret = wasm.jobmessagewrapper_fromStrings(ptr0, len0, ptr1, len1); - return JobMessageWrapper.__wrap(ret); - } -} -/** -*/ -export class JobScopeWrapper { - - static __wrap(ptr) { - ptr = ptr >>> 0; - const obj = Object.create(JobScopeWrapper.prototype); - obj.__wbg_ptr = ptr; - - return obj; - } - - __destroy_into_raw() { - const ptr = this.__wbg_ptr; - this.__wbg_ptr = 0; - - return ptr; - } - - free() { - const ptr = this.__destroy_into_raw(); - wasm.__wbg_jobscopewrapper_free(ptr); - } - /** - * @param {any} buckets_js - * @param {any} documents_js - */ - constructor(buckets_js, documents_js) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.jobscopewrapper_new(retptr, addBorrowedObject(buckets_js), addBorrowedObject(documents_js)); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return JobScopeWrapper.__wrap(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - heap[stack_pointer++] = undefined; - heap[stack_pointer++] = undefined; - } - } - /** - * @returns {any} - */ - to_jsvalue() { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.jobscopewrapper_to_jsvalue(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return takeObject(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @returns {string} - */ - to_json_str() { - let deferred2_0; - let deferred2_1; - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.jobscopewrapper_to_json_str(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - var r3 = getInt32Memory0()[retptr / 4 + 3]; - var ptr1 = r0; - var len1 = r1; - if (r3) { - ptr1 = 0; len1 = 0; - throw takeObject(r2); - } - deferred2_0 = ptr1; - deferred2_1 = len1; - return getStringFromWasm0(ptr1, len1); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(deferred2_0, deferred2_1, 1); - } - } -} -/** -*/ -export class SerializedAgentWrapper { - - static __wrap(ptr) { - ptr = ptr >>> 0; - const obj = Object.create(SerializedAgentWrapper.prototype); - obj.__wbg_ptr = ptr; - - return obj; - } - - __destroy_into_raw() { - const ptr = this.__wbg_ptr; - this.__wbg_ptr = 0; - - return ptr; - } - - free() { - const ptr = this.__destroy_into_raw(); - wasm.__wbg_serializedagentwrapper_free(ptr); - } - /** - * @param {any} serialized_agent_js - */ - constructor(serialized_agent_js) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.serializedagentwrapper_fromJsValue(retptr, addBorrowedObject(serialized_agent_js)); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return SerializedAgentWrapper.__wrap(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - heap[stack_pointer++] = undefined; - } - } - /** - * @param {string} id - * @param {string} full_identity_name - * @param {string} perform_locally - * @param {string} external_url - * @param {string} api_key - * @param {string} model - * @param {string} toolkit_permissions - * @param {string} storage_bucket_permissions - * @param {string} allowed_message_senders - * @returns {SerializedAgentWrapper} - */ - static fromStrings(id, full_identity_name, perform_locally, external_url, api_key, model, toolkit_permissions, storage_bucket_permissions, allowed_message_senders) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(id, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - const ptr1 = passStringToWasm0(full_identity_name, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len1 = WASM_VECTOR_LEN; - const ptr2 = passStringToWasm0(perform_locally, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len2 = WASM_VECTOR_LEN; - const ptr3 = passStringToWasm0(external_url, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len3 = WASM_VECTOR_LEN; - const ptr4 = passStringToWasm0(api_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len4 = WASM_VECTOR_LEN; - const ptr5 = passStringToWasm0(model, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len5 = WASM_VECTOR_LEN; - const ptr6 = passStringToWasm0(toolkit_permissions, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len6 = WASM_VECTOR_LEN; - const ptr7 = passStringToWasm0(storage_bucket_permissions, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len7 = WASM_VECTOR_LEN; - const ptr8 = passStringToWasm0(allowed_message_senders, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len8 = WASM_VECTOR_LEN; - wasm.serializedagentwrapper_fromStrings(retptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3, ptr4, len4, ptr5, len5, ptr6, len6, ptr7, len7, ptr8, len8); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return SerializedAgentWrapper.__wrap(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @returns {any} - */ - to_jsvalue() { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.serializedagentwrapper_inner(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return takeObject(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @param {any} j - * @returns {SerializedAgentWrapper} - */ - static fromJsValue(j) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.serializedagentwrapper_fromJsValue(retptr, addBorrowedObject(j)); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return SerializedAgentWrapper.__wrap(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - heap[stack_pointer++] = undefined; - } - } - /** - * @returns {string} - */ - to_json_str() { - let deferred2_0; - let deferred2_1; - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.serializedagentwrapper_to_json_str(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - var r3 = getInt32Memory0()[retptr / 4 + 3]; - var ptr1 = r0; - var len1 = r1; - if (r3) { - ptr1 = 0; len1 = 0; - throw takeObject(r2); - } - deferred2_0 = ptr1; - deferred2_1 = len1; - return getStringFromWasm0(ptr1, len1); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(deferred2_0, deferred2_1, 1); - } - } - /** - * @param {string} s - * @returns {SerializedAgentWrapper} - */ - static from_json_str(s) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(s, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - wasm.serializedagentwrapper_from_json_str(retptr, ptr0, len0); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return SerializedAgentWrapper.__wrap(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @returns {any} - */ - get inner() { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.serializedagentwrapper_inner(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return takeObject(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } -} -/** -*/ -export class ShinkaiMessageBuilderWrapper { - - static __wrap(ptr) { - ptr = ptr >>> 0; - const obj = Object.create(ShinkaiMessageBuilderWrapper.prototype); - obj.__wbg_ptr = ptr; - - return obj; - } - - __destroy_into_raw() { - const ptr = this.__wbg_ptr; - this.__wbg_ptr = 0; - - return ptr; - } - - free() { - const ptr = this.__destroy_into_raw(); - wasm.__wbg_shinkaimessagebuilderwrapper_free(ptr); - } - /** - * @param {string} my_encryption_secret_key - * @param {string} my_signature_secret_key - * @param {string} receiver_public_key - */ - constructor(my_encryption_secret_key, my_signature_secret_key, receiver_public_key) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(my_encryption_secret_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - const ptr1 = passStringToWasm0(my_signature_secret_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len1 = WASM_VECTOR_LEN; - const ptr2 = passStringToWasm0(receiver_public_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len2 = WASM_VECTOR_LEN; - wasm.shinkaimessagebuilderwrapper_new(retptr, ptr0, len0, ptr1, len1, ptr2, len2); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return ShinkaiMessageBuilderWrapper.__wrap(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @param {any} encryption - */ - body_encryption(encryption) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.shinkaimessagebuilderwrapper_body_encryption(retptr, this.__wbg_ptr, addHeapObject(encryption)); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - if (r1) { - throw takeObject(r0); - } - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - */ - no_body_encryption() { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.shinkaimessagebuilderwrapper_no_body_encryption(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - if (r1) { - throw takeObject(r0); - } - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @param {string} message_raw_content - */ - message_raw_content(message_raw_content) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(message_raw_content, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - wasm.shinkaimessagebuilderwrapper_message_raw_content(retptr, this.__wbg_ptr, ptr0, len0); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - if (r1) { - throw takeObject(r0); - } - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @param {any} content - */ - message_schema_type(content) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.shinkaimessagebuilderwrapper_message_schema_type(retptr, this.__wbg_ptr, addHeapObject(content)); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - if (r1) { - throw takeObject(r0); - } - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @param {string} sender_subidentity - * @param {string} recipient_subidentity - * @param {any} encryption - */ - internal_metadata(sender_subidentity, recipient_subidentity, encryption) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(sender_subidentity, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - const ptr1 = passStringToWasm0(recipient_subidentity, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len1 = WASM_VECTOR_LEN; - wasm.shinkaimessagebuilderwrapper_internal_metadata(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, addHeapObject(encryption)); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - if (r1) { - throw takeObject(r0); - } - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @param {string} sender_subidentity - * @param {string} recipient_subidentity - * @param {string} inbox - * @param {any} encryption - */ - internal_metadata_with_inbox(sender_subidentity, recipient_subidentity, inbox, encryption) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(sender_subidentity, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - const ptr1 = passStringToWasm0(recipient_subidentity, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len1 = WASM_VECTOR_LEN; - const ptr2 = passStringToWasm0(inbox, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len2 = WASM_VECTOR_LEN; - wasm.shinkaimessagebuilderwrapper_internal_metadata_with_inbox(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2, addHeapObject(encryption)); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - if (r1) { - throw takeObject(r0); - } - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @param {string} sender_subidentity - * @param {string} recipient_subidentity - * @param {string} inbox - * @param {any} message_schema - * @param {any} encryption - */ - internal_metadata_with_schema(sender_subidentity, recipient_subidentity, inbox, message_schema, encryption) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(sender_subidentity, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - const ptr1 = passStringToWasm0(recipient_subidentity, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len1 = WASM_VECTOR_LEN; - const ptr2 = passStringToWasm0(inbox, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len2 = WASM_VECTOR_LEN; - wasm.shinkaimessagebuilderwrapper_internal_metadata_with_schema(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2, addHeapObject(message_schema), addHeapObject(encryption)); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - if (r1) { - throw takeObject(r0); - } - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - */ - empty_encrypted_internal_metadata() { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.shinkaimessagebuilderwrapper_empty_encrypted_internal_metadata(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - if (r1) { - throw takeObject(r0); - } - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - */ - empty_non_encrypted_internal_metadata() { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.shinkaimessagebuilderwrapper_empty_non_encrypted_internal_metadata(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - if (r1) { - throw takeObject(r0); - } - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @param {string} recipient - * @param {string} sender - */ - external_metadata(recipient, sender) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(recipient, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - const ptr1 = passStringToWasm0(sender, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len1 = WASM_VECTOR_LEN; - wasm.shinkaimessagebuilderwrapper_external_metadata(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - if (r1) { - throw takeObject(r0); - } - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @param {string} recipient - * @param {string} sender - * @param {string} other - */ - external_metadata_with_other(recipient, sender, other) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(recipient, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - const ptr1 = passStringToWasm0(sender, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len1 = WASM_VECTOR_LEN; - const ptr2 = passStringToWasm0(other, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len2 = WASM_VECTOR_LEN; - wasm.shinkaimessagebuilderwrapper_external_metadata_with_other(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - if (r1) { - throw takeObject(r0); - } - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @param {string} recipient - * @param {string} sender - * @param {string} scheduled_time - */ - external_metadata_with_schedule(recipient, sender, scheduled_time) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(recipient, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - const ptr1 = passStringToWasm0(sender, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len1 = WASM_VECTOR_LEN; - const ptr2 = passStringToWasm0(scheduled_time, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len2 = WASM_VECTOR_LEN; - wasm.shinkaimessagebuilderwrapper_external_metadata_with_schedule(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - if (r1) { - throw takeObject(r0); - } - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @returns {ShinkaiMessageWrapper} - */ - build() { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.shinkaimessagebuilderwrapper_build(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return ShinkaiMessageWrapper.__wrap(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @returns {any} - */ - build_to_jsvalue() { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.shinkaimessagebuilderwrapper_build_to_jsvalue(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return takeObject(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @returns {string} - */ - build_to_string() { - let deferred2_0; - let deferred2_1; - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.shinkaimessagebuilderwrapper_build_to_string(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - var r3 = getInt32Memory0()[retptr / 4 + 3]; - var ptr1 = r0; - var len1 = r1; - if (r3) { - ptr1 = 0; len1 = 0; - throw takeObject(r2); - } - deferred2_0 = ptr1; - deferred2_1 = len1; - return getStringFromWasm0(ptr1, len1); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(deferred2_0, deferred2_1, 1); - } - } - /** - * @param {string} my_encryption_secret_key - * @param {string} my_signature_secret_key - * @param {string} receiver_public_key - * @param {string} sender - * @param {string} receiver - * @returns {string} - */ - static ack_message(my_encryption_secret_key, my_signature_secret_key, receiver_public_key, sender, receiver) { - let deferred7_0; - let deferred7_1; - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(my_encryption_secret_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - const ptr1 = passStringToWasm0(my_signature_secret_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len1 = WASM_VECTOR_LEN; - const ptr2 = passStringToWasm0(receiver_public_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len2 = WASM_VECTOR_LEN; - const ptr3 = passStringToWasm0(sender, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len3 = WASM_VECTOR_LEN; - const ptr4 = passStringToWasm0(receiver, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len4 = WASM_VECTOR_LEN; - wasm.shinkaimessagebuilderwrapper_ack_message(retptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3, ptr4, len4); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - var r3 = getInt32Memory0()[retptr / 4 + 3]; - var ptr6 = r0; - var len6 = r1; - if (r3) { - ptr6 = 0; len6 = 0; - throw takeObject(r2); - } - deferred7_0 = ptr6; - deferred7_1 = len6; - return getStringFromWasm0(ptr6, len6); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(deferred7_0, deferred7_1, 1); - } - } - /** - * @param {string} my_subidentity_encryption_sk - * @param {string} my_subidentity_signature_sk - * @param {string} receiver_public_key - * @param {string} permissions - * @param {string} code_type - * @param {string} sender - * @param {string} sender_subidentity - * @param {string} recipient - * @param {string} recipient_subidentity - * @returns {string} - */ - static request_code_registration(my_subidentity_encryption_sk, my_subidentity_signature_sk, receiver_public_key, permissions, code_type, sender, sender_subidentity, recipient, recipient_subidentity) { - let deferred11_0; - let deferred11_1; - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(my_subidentity_encryption_sk, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - const ptr1 = passStringToWasm0(my_subidentity_signature_sk, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len1 = WASM_VECTOR_LEN; - const ptr2 = passStringToWasm0(receiver_public_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len2 = WASM_VECTOR_LEN; - const ptr3 = passStringToWasm0(permissions, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len3 = WASM_VECTOR_LEN; - const ptr4 = passStringToWasm0(code_type, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len4 = WASM_VECTOR_LEN; - const ptr5 = passStringToWasm0(sender, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len5 = WASM_VECTOR_LEN; - const ptr6 = passStringToWasm0(sender_subidentity, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len6 = WASM_VECTOR_LEN; - const ptr7 = passStringToWasm0(recipient, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len7 = WASM_VECTOR_LEN; - const ptr8 = passStringToWasm0(recipient_subidentity, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len8 = WASM_VECTOR_LEN; - wasm.shinkaimessagebuilderwrapper_request_code_registration(retptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3, ptr4, len4, ptr5, len5, ptr6, len6, ptr7, len7, ptr8, len8); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - var r3 = getInt32Memory0()[retptr / 4 + 3]; - var ptr10 = r0; - var len10 = r1; - if (r3) { - ptr10 = 0; len10 = 0; - throw takeObject(r2); - } - deferred11_0 = ptr10; - deferred11_1 = len10; - return getStringFromWasm0(ptr10, len10); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(deferred11_0, deferred11_1, 1); - } - } - /** - * @param {string} profile_encryption_sk - * @param {string} profile_signature_sk - * @param {string} receiver_public_key - * @param {string} code - * @param {string} identity_type - * @param {string} permission_type - * @param {string} registration_name - * @param {string} sender - * @param {string} sender_subidentity - * @param {string} recipient - * @param {string} recipient_subidentity - * @returns {string} - */ - static use_code_registration_for_profile(profile_encryption_sk, profile_signature_sk, receiver_public_key, code, identity_type, permission_type, registration_name, sender, sender_subidentity, recipient, recipient_subidentity) { - let deferred13_0; - let deferred13_1; - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(profile_encryption_sk, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - const ptr1 = passStringToWasm0(profile_signature_sk, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len1 = WASM_VECTOR_LEN; - const ptr2 = passStringToWasm0(receiver_public_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len2 = WASM_VECTOR_LEN; - const ptr3 = passStringToWasm0(code, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len3 = WASM_VECTOR_LEN; - const ptr4 = passStringToWasm0(identity_type, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len4 = WASM_VECTOR_LEN; - const ptr5 = passStringToWasm0(permission_type, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len5 = WASM_VECTOR_LEN; - const ptr6 = passStringToWasm0(registration_name, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len6 = WASM_VECTOR_LEN; - const ptr7 = passStringToWasm0(sender, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len7 = WASM_VECTOR_LEN; - const ptr8 = passStringToWasm0(sender_subidentity, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len8 = WASM_VECTOR_LEN; - const ptr9 = passStringToWasm0(recipient, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len9 = WASM_VECTOR_LEN; - const ptr10 = passStringToWasm0(recipient_subidentity, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len10 = WASM_VECTOR_LEN; - wasm.shinkaimessagebuilderwrapper_use_code_registration_for_profile(retptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3, ptr4, len4, ptr5, len5, ptr6, len6, ptr7, len7, ptr8, len8, ptr9, len9, ptr10, len10); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - var r3 = getInt32Memory0()[retptr / 4 + 3]; - var ptr12 = r0; - var len12 = r1; - if (r3) { - ptr12 = 0; len12 = 0; - throw takeObject(r2); - } - deferred13_0 = ptr12; - deferred13_1 = len12; - return getStringFromWasm0(ptr12, len12); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(deferred13_0, deferred13_1, 1); - } - } - /** - * @param {string} my_device_encryption_sk - * @param {string} my_device_signature_sk - * @param {string} profile_encryption_sk - * @param {string} profile_signature_sk - * @param {string} receiver_public_key - * @param {string} code - * @param {string} identity_type - * @param {string} permission_type - * @param {string} registration_name - * @param {string} sender - * @param {string} sender_subidentity - * @param {string} recipient - * @param {string} recipient_subidentity - * @returns {string} - */ - static use_code_registration_for_device(my_device_encryption_sk, my_device_signature_sk, profile_encryption_sk, profile_signature_sk, receiver_public_key, code, identity_type, permission_type, registration_name, sender, sender_subidentity, recipient, recipient_subidentity) { - let deferred15_0; - let deferred15_1; - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(my_device_encryption_sk, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - const ptr1 = passStringToWasm0(my_device_signature_sk, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len1 = WASM_VECTOR_LEN; - const ptr2 = passStringToWasm0(profile_encryption_sk, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len2 = WASM_VECTOR_LEN; - const ptr3 = passStringToWasm0(profile_signature_sk, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len3 = WASM_VECTOR_LEN; - const ptr4 = passStringToWasm0(receiver_public_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len4 = WASM_VECTOR_LEN; - const ptr5 = passStringToWasm0(code, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len5 = WASM_VECTOR_LEN; - const ptr6 = passStringToWasm0(identity_type, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len6 = WASM_VECTOR_LEN; - const ptr7 = passStringToWasm0(permission_type, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len7 = WASM_VECTOR_LEN; - const ptr8 = passStringToWasm0(registration_name, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len8 = WASM_VECTOR_LEN; - const ptr9 = passStringToWasm0(sender, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len9 = WASM_VECTOR_LEN; - const ptr10 = passStringToWasm0(sender_subidentity, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len10 = WASM_VECTOR_LEN; - const ptr11 = passStringToWasm0(recipient, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len11 = WASM_VECTOR_LEN; - const ptr12 = passStringToWasm0(recipient_subidentity, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len12 = WASM_VECTOR_LEN; - wasm.shinkaimessagebuilderwrapper_use_code_registration_for_device(retptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3, ptr4, len4, ptr5, len5, ptr6, len6, ptr7, len7, ptr8, len8, ptr9, len9, ptr10, len10, ptr11, len11, ptr12, len12); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - var r3 = getInt32Memory0()[retptr / 4 + 3]; - var ptr14 = r0; - var len14 = r1; - if (r3) { - ptr14 = 0; len14 = 0; - throw takeObject(r2); - } - deferred15_0 = ptr14; - deferred15_1 = len14; - return getStringFromWasm0(ptr14, len14); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(deferred15_0, deferred15_1, 1); - } - } - /** - * @param {string} my_subidentity_encryption_sk - * @param {string} my_subidentity_signature_sk - * @param {string} receiver_public_key - * @param {string} inbox - * @param {number} count - * @param {string | undefined} offset - * @param {string} sender - * @param {string} sender_subidentity - * @param {string} recipient - * @param {string} recipient_subidentity - * @returns {string} - */ - static get_last_messages_from_inbox(my_subidentity_encryption_sk, my_subidentity_signature_sk, receiver_public_key, inbox, count, offset, sender, sender_subidentity, recipient, recipient_subidentity) { - let deferred11_0; - let deferred11_1; - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(my_subidentity_encryption_sk, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - const ptr1 = passStringToWasm0(my_subidentity_signature_sk, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len1 = WASM_VECTOR_LEN; - const ptr2 = passStringToWasm0(receiver_public_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len2 = WASM_VECTOR_LEN; - const ptr3 = passStringToWasm0(inbox, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len3 = WASM_VECTOR_LEN; - var ptr4 = isLikeNone(offset) ? 0 : passStringToWasm0(offset, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - var len4 = WASM_VECTOR_LEN; - const ptr5 = passStringToWasm0(sender, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len5 = WASM_VECTOR_LEN; - const ptr6 = passStringToWasm0(sender_subidentity, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len6 = WASM_VECTOR_LEN; - const ptr7 = passStringToWasm0(recipient, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len7 = WASM_VECTOR_LEN; - const ptr8 = passStringToWasm0(recipient_subidentity, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len8 = WASM_VECTOR_LEN; - wasm.shinkaimessagebuilderwrapper_get_last_messages_from_inbox(retptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3, count, ptr4, len4, ptr5, len5, ptr6, len6, ptr7, len7, ptr8, len8); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - var r3 = getInt32Memory0()[retptr / 4 + 3]; - var ptr10 = r0; - var len10 = r1; - if (r3) { - ptr10 = 0; len10 = 0; - throw takeObject(r2); - } - deferred11_0 = ptr10; - deferred11_1 = len10; - return getStringFromWasm0(ptr10, len10); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(deferred11_0, deferred11_1, 1); - } - } - /** - * @param {string} my_subidentity_encryption_sk - * @param {string} my_subidentity_signature_sk - * @param {string} receiver_public_key - * @param {string} inbox - * @param {number} count - * @param {string | undefined} offset - * @param {string} sender - * @param {string} sender_subidentity - * @param {string} recipient - * @param {string} recipient_subidentity - * @returns {string} - */ - static get_last_unread_messages_from_inbox(my_subidentity_encryption_sk, my_subidentity_signature_sk, receiver_public_key, inbox, count, offset, sender, sender_subidentity, recipient, recipient_subidentity) { - let deferred11_0; - let deferred11_1; - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(my_subidentity_encryption_sk, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - const ptr1 = passStringToWasm0(my_subidentity_signature_sk, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len1 = WASM_VECTOR_LEN; - const ptr2 = passStringToWasm0(receiver_public_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len2 = WASM_VECTOR_LEN; - const ptr3 = passStringToWasm0(inbox, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len3 = WASM_VECTOR_LEN; - var ptr4 = isLikeNone(offset) ? 0 : passStringToWasm0(offset, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - var len4 = WASM_VECTOR_LEN; - const ptr5 = passStringToWasm0(sender, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len5 = WASM_VECTOR_LEN; - const ptr6 = passStringToWasm0(sender_subidentity, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len6 = WASM_VECTOR_LEN; - const ptr7 = passStringToWasm0(recipient, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len7 = WASM_VECTOR_LEN; - const ptr8 = passStringToWasm0(recipient_subidentity, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len8 = WASM_VECTOR_LEN; - wasm.shinkaimessagebuilderwrapper_get_last_messages_from_inbox(retptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3, count, ptr4, len4, ptr5, len5, ptr6, len6, ptr7, len7, ptr8, len8); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - var r3 = getInt32Memory0()[retptr / 4 + 3]; - var ptr10 = r0; - var len10 = r1; - if (r3) { - ptr10 = 0; len10 = 0; - throw takeObject(r2); - } - deferred11_0 = ptr10; - deferred11_1 = len10; - return getStringFromWasm0(ptr10, len10); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(deferred11_0, deferred11_1, 1); - } - } - /** - * @param {string} my_subidentity_encryption_sk - * @param {string} my_subidentity_signature_sk - * @param {string} receiver_public_key - * @param {string} agent_json - * @param {string} sender - * @param {string} sender_subidentity - * @param {string} recipient - * @param {string} recipient_subidentity - * @returns {string} - */ - static request_add_agent(my_subidentity_encryption_sk, my_subidentity_signature_sk, receiver_public_key, agent_json, sender, sender_subidentity, recipient, recipient_subidentity) { - let deferred10_0; - let deferred10_1; - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(my_subidentity_encryption_sk, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - const ptr1 = passStringToWasm0(my_subidentity_signature_sk, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len1 = WASM_VECTOR_LEN; - const ptr2 = passStringToWasm0(receiver_public_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len2 = WASM_VECTOR_LEN; - const ptr3 = passStringToWasm0(agent_json, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len3 = WASM_VECTOR_LEN; - const ptr4 = passStringToWasm0(sender, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len4 = WASM_VECTOR_LEN; - const ptr5 = passStringToWasm0(sender_subidentity, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len5 = WASM_VECTOR_LEN; - const ptr6 = passStringToWasm0(recipient, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len6 = WASM_VECTOR_LEN; - const ptr7 = passStringToWasm0(recipient_subidentity, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len7 = WASM_VECTOR_LEN; - wasm.shinkaimessagebuilderwrapper_request_add_agent(retptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3, ptr4, len4, ptr5, len5, ptr6, len6, ptr7, len7); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - var r3 = getInt32Memory0()[retptr / 4 + 3]; - var ptr9 = r0; - var len9 = r1; - if (r3) { - ptr9 = 0; len9 = 0; - throw takeObject(r2); - } - deferred10_0 = ptr9; - deferred10_1 = len9; - return getStringFromWasm0(ptr9, len9); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(deferred10_0, deferred10_1, 1); - } - } - /** - * @param {string} my_subidentity_encryption_sk - * @param {string} my_subidentity_signature_sk - * @param {string} receiver_public_key - * @param {string} inbox - * @param {string} up_to_time - * @param {string} sender - * @param {string} sender_subidentity - * @param {string} recipient - * @param {string} recipient_subidentity - * @returns {string} - */ - static read_up_to_time(my_subidentity_encryption_sk, my_subidentity_signature_sk, receiver_public_key, inbox, up_to_time, sender, sender_subidentity, recipient, recipient_subidentity) { - let deferred11_0; - let deferred11_1; - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(my_subidentity_encryption_sk, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - const ptr1 = passStringToWasm0(my_subidentity_signature_sk, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len1 = WASM_VECTOR_LEN; - const ptr2 = passStringToWasm0(receiver_public_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len2 = WASM_VECTOR_LEN; - const ptr3 = passStringToWasm0(inbox, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len3 = WASM_VECTOR_LEN; - const ptr4 = passStringToWasm0(up_to_time, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len4 = WASM_VECTOR_LEN; - const ptr5 = passStringToWasm0(sender, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len5 = WASM_VECTOR_LEN; - const ptr6 = passStringToWasm0(sender_subidentity, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len6 = WASM_VECTOR_LEN; - const ptr7 = passStringToWasm0(recipient, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len7 = WASM_VECTOR_LEN; - const ptr8 = passStringToWasm0(recipient_subidentity, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len8 = WASM_VECTOR_LEN; - wasm.shinkaimessagebuilderwrapper_read_up_to_time(retptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3, ptr4, len4, ptr5, len5, ptr6, len6, ptr7, len7, ptr8, len8); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - var r3 = getInt32Memory0()[retptr / 4 + 3]; - var ptr10 = r0; - var len10 = r1; - if (r3) { - ptr10 = 0; len10 = 0; - throw takeObject(r2); - } - deferred11_0 = ptr10; - deferred11_1 = len10; - return getStringFromWasm0(ptr10, len10); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(deferred11_0, deferred11_1, 1); - } - } - /** - * @param {string} my_subidentity_encryption_sk - * @param {string} my_subidentity_signature_sk - * @param {string} receiver_public_key - * @param {string} data - * @param {string} sender - * @param {string} sender_subidentity - * @param {string} recipient - * @param {string} recipient_subidentity - * @param {string} other - * @param {string} schema - * @returns {string} - */ - static create_custom_shinkai_message_to_node(my_subidentity_encryption_sk, my_subidentity_signature_sk, receiver_public_key, data, sender, sender_subidentity, recipient, recipient_subidentity, other, schema) { - let deferred12_0; - let deferred12_1; - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(my_subidentity_encryption_sk, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - const ptr1 = passStringToWasm0(my_subidentity_signature_sk, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len1 = WASM_VECTOR_LEN; - const ptr2 = passStringToWasm0(receiver_public_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len2 = WASM_VECTOR_LEN; - const ptr3 = passStringToWasm0(data, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len3 = WASM_VECTOR_LEN; - const ptr4 = passStringToWasm0(sender, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len4 = WASM_VECTOR_LEN; - const ptr5 = passStringToWasm0(sender_subidentity, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len5 = WASM_VECTOR_LEN; - const ptr6 = passStringToWasm0(recipient, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len6 = WASM_VECTOR_LEN; - const ptr7 = passStringToWasm0(recipient_subidentity, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len7 = WASM_VECTOR_LEN; - const ptr8 = passStringToWasm0(other, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len8 = WASM_VECTOR_LEN; - const ptr9 = passStringToWasm0(schema, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len9 = WASM_VECTOR_LEN; - wasm.shinkaimessagebuilderwrapper_create_custom_shinkai_message_to_node(retptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3, ptr4, len4, ptr5, len5, ptr6, len6, ptr7, len7, ptr8, len8, ptr9, len9); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - var r3 = getInt32Memory0()[retptr / 4 + 3]; - var ptr11 = r0; - var len11 = r1; - if (r3) { - ptr11 = 0; len11 = 0; - throw takeObject(r2); - } - deferred12_0 = ptr11; - deferred12_1 = len11; - return getStringFromWasm0(ptr11, len11); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(deferred12_0, deferred12_1, 1); - } - } - /** - * @param {string} message - * @param {string} my_encryption_secret_key - * @param {string} my_signature_secret_key - * @param {string} receiver_public_key - * @param {string} sender - * @param {string} receiver - * @returns {string} - */ - static ping_pong_message(message, my_encryption_secret_key, my_signature_secret_key, receiver_public_key, sender, receiver) { - let deferred8_0; - let deferred8_1; - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(message, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - const ptr1 = passStringToWasm0(my_encryption_secret_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len1 = WASM_VECTOR_LEN; - const ptr2 = passStringToWasm0(my_signature_secret_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len2 = WASM_VECTOR_LEN; - const ptr3 = passStringToWasm0(receiver_public_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len3 = WASM_VECTOR_LEN; - const ptr4 = passStringToWasm0(sender, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len4 = WASM_VECTOR_LEN; - const ptr5 = passStringToWasm0(receiver, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len5 = WASM_VECTOR_LEN; - wasm.shinkaimessagebuilderwrapper_ping_pong_message(retptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3, ptr4, len4, ptr5, len5); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - var r3 = getInt32Memory0()[retptr / 4 + 3]; - var ptr7 = r0; - var len7 = r1; - if (r3) { - ptr7 = 0; len7 = 0; - throw takeObject(r2); - } - deferred8_0 = ptr7; - deferred8_1 = len7; - return getStringFromWasm0(ptr7, len7); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(deferred8_0, deferred8_1, 1); - } - } - /** - * @param {string} my_encryption_secret_key - * @param {string} my_signature_secret_key - * @param {string} receiver_public_key - * @param {any} scope - * @param {string} sender - * @param {string} receiver - * @param {string} receiver_subidentity - * @returns {string} - */ - static job_creation(my_encryption_secret_key, my_signature_secret_key, receiver_public_key, scope, sender, receiver, receiver_subidentity) { - let deferred8_0; - let deferred8_1; - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(my_encryption_secret_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - const ptr1 = passStringToWasm0(my_signature_secret_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len1 = WASM_VECTOR_LEN; - const ptr2 = passStringToWasm0(receiver_public_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len2 = WASM_VECTOR_LEN; - const ptr3 = passStringToWasm0(sender, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len3 = WASM_VECTOR_LEN; - const ptr4 = passStringToWasm0(receiver, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len4 = WASM_VECTOR_LEN; - const ptr5 = passStringToWasm0(receiver_subidentity, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len5 = WASM_VECTOR_LEN; - wasm.shinkaimessagebuilderwrapper_job_creation(retptr, ptr0, len0, ptr1, len1, ptr2, len2, addHeapObject(scope), ptr3, len3, ptr4, len4, ptr5, len5); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - var r3 = getInt32Memory0()[retptr / 4 + 3]; - var ptr7 = r0; - var len7 = r1; - if (r3) { - ptr7 = 0; len7 = 0; - throw takeObject(r2); - } - deferred8_0 = ptr7; - deferred8_1 = len7; - return getStringFromWasm0(ptr7, len7); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(deferred8_0, deferred8_1, 1); - } - } - /** - * @param {string} job_id - * @param {string} content - * @param {string} my_encryption_secret_key - * @param {string} my_signature_secret_key - * @param {string} receiver_public_key - * @param {string} sender - * @param {string} receiver - * @param {string} receiver_subidentity - * @returns {string} - */ - static job_message(job_id, content, my_encryption_secret_key, my_signature_secret_key, receiver_public_key, sender, receiver, receiver_subidentity) { - let deferred10_0; - let deferred10_1; - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(job_id, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - const ptr1 = passStringToWasm0(content, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len1 = WASM_VECTOR_LEN; - const ptr2 = passStringToWasm0(my_encryption_secret_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len2 = WASM_VECTOR_LEN; - const ptr3 = passStringToWasm0(my_signature_secret_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len3 = WASM_VECTOR_LEN; - const ptr4 = passStringToWasm0(receiver_public_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len4 = WASM_VECTOR_LEN; - const ptr5 = passStringToWasm0(sender, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len5 = WASM_VECTOR_LEN; - const ptr6 = passStringToWasm0(receiver, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len6 = WASM_VECTOR_LEN; - const ptr7 = passStringToWasm0(receiver_subidentity, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len7 = WASM_VECTOR_LEN; - wasm.shinkaimessagebuilderwrapper_job_message(retptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3, ptr4, len4, ptr5, len5, ptr6, len6, ptr7, len7); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - var r3 = getInt32Memory0()[retptr / 4 + 3]; - var ptr9 = r0; - var len9 = r1; - if (r3) { - ptr9 = 0; len9 = 0; - throw takeObject(r2); - } - deferred10_0 = ptr9; - deferred10_1 = len9; - return getStringFromWasm0(ptr9, len9); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(deferred10_0, deferred10_1, 1); - } - } - /** - * @param {string} my_encryption_secret_key - * @param {string} my_signature_secret_key - * @param {string} receiver_public_key - * @param {string} sender - * @param {string} receiver - * @returns {string} - */ - static terminate_message(my_encryption_secret_key, my_signature_secret_key, receiver_public_key, sender, receiver) { - let deferred7_0; - let deferred7_1; - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(my_encryption_secret_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - const ptr1 = passStringToWasm0(my_signature_secret_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len1 = WASM_VECTOR_LEN; - const ptr2 = passStringToWasm0(receiver_public_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len2 = WASM_VECTOR_LEN; - const ptr3 = passStringToWasm0(sender, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len3 = WASM_VECTOR_LEN; - const ptr4 = passStringToWasm0(receiver, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len4 = WASM_VECTOR_LEN; - wasm.shinkaimessagebuilderwrapper_terminate_message(retptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3, ptr4, len4); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - var r3 = getInt32Memory0()[retptr / 4 + 3]; - var ptr6 = r0; - var len6 = r1; - if (r3) { - ptr6 = 0; len6 = 0; - throw takeObject(r2); - } - deferred7_0 = ptr6; - deferred7_1 = len6; - return getStringFromWasm0(ptr6, len6); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(deferred7_0, deferred7_1, 1); - } - } - /** - * @param {string} my_encryption_secret_key - * @param {string} my_signature_secret_key - * @param {string} receiver_public_key - * @param {string} sender - * @param {string} receiver - * @param {string} error_msg - * @returns {string} - */ - static error_message(my_encryption_secret_key, my_signature_secret_key, receiver_public_key, sender, receiver, error_msg) { - let deferred8_0; - let deferred8_1; - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(my_encryption_secret_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - const ptr1 = passStringToWasm0(my_signature_secret_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len1 = WASM_VECTOR_LEN; - const ptr2 = passStringToWasm0(receiver_public_key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len2 = WASM_VECTOR_LEN; - const ptr3 = passStringToWasm0(sender, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len3 = WASM_VECTOR_LEN; - const ptr4 = passStringToWasm0(receiver, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len4 = WASM_VECTOR_LEN; - const ptr5 = passStringToWasm0(error_msg, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len5 = WASM_VECTOR_LEN; - wasm.shinkaimessagebuilderwrapper_error_message(retptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3, ptr4, len4, ptr5, len5); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - var r3 = getInt32Memory0()[retptr / 4 + 3]; - var ptr7 = r0; - var len7 = r1; - if (r3) { - ptr7 = 0; len7 = 0; - throw takeObject(r2); - } - deferred8_0 = ptr7; - deferred8_1 = len7; - return getStringFromWasm0(ptr7, len7); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(deferred8_0, deferred8_1, 1); - } - } -} -/** -*/ -export class ShinkaiMessageWrapper { - - static __wrap(ptr) { - ptr = ptr >>> 0; - const obj = Object.create(ShinkaiMessageWrapper.prototype); - obj.__wbg_ptr = ptr; - - return obj; - } - - __destroy_into_raw() { - const ptr = this.__wbg_ptr; - this.__wbg_ptr = 0; - - return ptr; - } - - free() { - const ptr = this.__destroy_into_raw(); - wasm.__wbg_shinkaimessagewrapper_free(ptr); - } - /** - * @param {any} shinkai_message_js - */ - constructor(shinkai_message_js) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.shinkaimessagewrapper_fromJsValue(retptr, addBorrowedObject(shinkai_message_js)); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return ShinkaiMessageWrapper.__wrap(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - heap[stack_pointer++] = undefined; - } - } - /** - * @returns {any} - */ - get message_body() { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.shinkaimessagewrapper_message_body(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return takeObject(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @param {any} body - */ - set message_body(body) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.shinkaimessagewrapper_set_message_body(retptr, this.__wbg_ptr, addHeapObject(body)); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - if (r1) { - throw takeObject(r0); - } - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @returns {any} - */ - get external_metadata() { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.shinkaimessagewrapper_external_metadata(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return takeObject(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @param {any} external_metadata - */ - set external_metadata(external_metadata) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.shinkaimessagewrapper_set_external_metadata(retptr, this.__wbg_ptr, addHeapObject(external_metadata)); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - if (r1) { - throw takeObject(r0); - } - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @returns {string} - */ - get encryption() { - let deferred1_0; - let deferred1_1; - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.shinkaimessagewrapper_encryption(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - deferred1_0 = r0; - deferred1_1 = r1; - return getStringFromWasm0(r0, r1); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(deferred1_0, deferred1_1, 1); - } - } - /** - * @param {string} encryption - */ - set encryption(encryption) { - const ptr0 = passStringToWasm0(encryption, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - wasm.shinkaimessagewrapper_set_encryption(this.__wbg_ptr, ptr0, len0); - } - /** - * @returns {any} - */ - to_jsvalue() { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.shinkaimessagewrapper_to_jsvalue(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return takeObject(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @param {any} j - * @returns {ShinkaiMessageWrapper} - */ - static fromJsValue(j) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.shinkaimessagewrapper_fromJsValue(retptr, addBorrowedObject(j)); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return ShinkaiMessageWrapper.__wrap(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - heap[stack_pointer++] = undefined; - } - } - /** - * @returns {string} - */ - to_json_str() { - let deferred2_0; - let deferred2_1; - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.shinkaimessagewrapper_to_json_str(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - var r3 = getInt32Memory0()[retptr / 4 + 3]; - var ptr1 = r0; - var len1 = r1; - if (r3) { - ptr1 = 0; len1 = 0; - throw takeObject(r2); - } - deferred2_0 = ptr1; - deferred2_1 = len1; - return getStringFromWasm0(ptr1, len1); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(deferred2_0, deferred2_1, 1); - } - } - /** - * @param {string} s - * @returns {ShinkaiMessageWrapper} - */ - static from_json_str(s) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - const ptr0 = passStringToWasm0(s, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - wasm.shinkaimessagewrapper_from_json_str(retptr, ptr0, len0); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return ShinkaiMessageWrapper.__wrap(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @returns {string} - */ - calculate_hash() { - let deferred1_0; - let deferred1_1; - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.shinkaimessagewrapper_calculate_hash(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - deferred1_0 = r0; - deferred1_1 = r1; - return getStringFromWasm0(r0, r1); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(deferred1_0, deferred1_1, 1); - } - } - /** - * @returns {string} - */ - static generate_time_now() { - let deferred1_0; - let deferred1_1; - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.shinkaimessagewrapper_generate_time_now(retptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - deferred1_0 = r0; - deferred1_1 = r1; - return getStringFromWasm0(r0, r1); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(deferred1_0, deferred1_1, 1); - } - } -} -/** -*/ -export class ShinkaiNameWrapper { - - static __wrap(ptr) { - ptr = ptr >>> 0; - const obj = Object.create(ShinkaiNameWrapper.prototype); - obj.__wbg_ptr = ptr; - - return obj; - } - - __destroy_into_raw() { - const ptr = this.__wbg_ptr; - this.__wbg_ptr = 0; - - return ptr; - } - - free() { - const ptr = this.__destroy_into_raw(); - wasm.__wbg_shinkainamewrapper_free(ptr); - } - /** - * @param {any} shinkai_name_js - */ - constructor(shinkai_name_js) { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.shinkainamewrapper_new(retptr, addBorrowedObject(shinkai_name_js)); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return ShinkaiNameWrapper.__wrap(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - heap[stack_pointer++] = undefined; - } - } - /** - * @returns {any} - */ - get get_full_name() { - const ret = wasm.shinkainamewrapper_get_full_name(this.__wbg_ptr); - return takeObject(ret); - } - /** - * @returns {any} - */ - get get_node_name() { - const ret = wasm.shinkainamewrapper_get_node_name(this.__wbg_ptr); - return takeObject(ret); - } - /** - * @returns {any} - */ - get get_profile_name() { - const ret = wasm.shinkainamewrapper_get_profile_name(this.__wbg_ptr); - return takeObject(ret); - } - /** - * @returns {any} - */ - get get_subidentity_type() { - const ret = wasm.shinkainamewrapper_get_subidentity_type(this.__wbg_ptr); - return takeObject(ret); - } - /** - * @returns {any} - */ - get get_subidentity_name() { - const ret = wasm.shinkainamewrapper_get_subidentity_name(this.__wbg_ptr); - return takeObject(ret); - } - /** - * @returns {any} - */ - to_jsvalue() { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.shinkainamewrapper_to_jsvalue(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return takeObject(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @returns {string} - */ - to_json_str() { - let deferred2_0; - let deferred2_1; - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.shinkainamewrapper_to_json_str(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - var r3 = getInt32Memory0()[retptr / 4 + 3]; - var ptr1 = r0; - var len1 = r1; - if (r3) { - ptr1 = 0; len1 = 0; - throw takeObject(r2); - } - deferred2_0 = ptr1; - deferred2_1 = len1; - return getStringFromWasm0(ptr1, len1); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(deferred2_0, deferred2_1, 1); - } - } - /** - * @returns {ShinkaiNameWrapper} - */ - extract_profile() { - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.shinkainamewrapper_extract_profile(retptr, this.__wbg_ptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - var r2 = getInt32Memory0()[retptr / 4 + 2]; - if (r2) { - throw takeObject(r1); - } - return ShinkaiNameWrapper.__wrap(r0); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - } - } - /** - * @returns {ShinkaiNameWrapper} - */ - extract_node() { - const ret = wasm.shinkainamewrapper_extract_node(this.__wbg_ptr); - return ShinkaiNameWrapper.__wrap(ret); - } -} -/** -*/ -export class ShinkaiTime { - - __destroy_into_raw() { - const ptr = this.__wbg_ptr; - this.__wbg_ptr = 0; - - return ptr; - } - - free() { - const ptr = this.__destroy_into_raw(); - wasm.__wbg_shinkaitime_free(ptr); - } - /** - * @returns {string} - */ - static generateTimeNow() { - let deferred1_0; - let deferred1_1; - try { - const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.shinkaitime_generateTimeNow(retptr); - var r0 = getInt32Memory0()[retptr / 4 + 0]; - var r1 = getInt32Memory0()[retptr / 4 + 1]; - deferred1_0 = r0; - deferred1_1 = r1; - return getStringFromWasm0(r0, r1); - } finally { - wasm.__wbindgen_add_to_stack_pointer(16); - wasm.__wbindgen_free(deferred1_0, deferred1_1, 1); - } - } -} - -export function __wbindgen_string_get(arg0, arg1) { - const obj = getObject(arg1); - const ret = typeof(obj) === 'string' ? obj : undefined; - var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - var len1 = WASM_VECTOR_LEN; - getInt32Memory0()[arg0 / 4 + 1] = len1; - getInt32Memory0()[arg0 / 4 + 0] = ptr1; -}; - -export function __wbindgen_string_new(arg0, arg1) { - const ret = getStringFromWasm0(arg0, arg1); - return addHeapObject(ret); -}; - -export function __wbindgen_object_drop_ref(arg0) { - takeObject(arg0); -}; - -export function __wbindgen_object_clone_ref(arg0) { - const ret = getObject(arg0); - return addHeapObject(ret); -}; - -export function __wbindgen_error_new(arg0, arg1) { - const ret = new Error(getStringFromWasm0(arg0, arg1)); - return addHeapObject(ret); -}; - -export function __wbindgen_boolean_get(arg0) { - const v = getObject(arg0); - const ret = typeof(v) === 'boolean' ? (v ? 1 : 0) : 2; - return ret; -}; - -export function __wbindgen_is_string(arg0) { - const ret = typeof(getObject(arg0)) === 'string'; - return ret; -}; - -export function __wbindgen_is_object(arg0) { - const val = getObject(arg0); - const ret = typeof(val) === 'object' && val !== null; - return ret; -}; - -export function __wbindgen_is_undefined(arg0) { - const ret = getObject(arg0) === undefined; - return ret; -}; - -export function __wbindgen_in(arg0, arg1) { - const ret = getObject(arg0) in getObject(arg1); - return ret; -}; - -export function __wbg_log_1d3ae0273d8f4f8a(arg0) { - console.log(getObject(arg0)); -}; - -export function __wbindgen_jsval_loose_eq(arg0, arg1) { - const ret = getObject(arg0) == getObject(arg1); - return ret; -}; - -export function __wbindgen_number_get(arg0, arg1) { - const obj = getObject(arg1); - const ret = typeof(obj) === 'number' ? obj : undefined; - getFloat64Memory0()[arg0 / 8 + 1] = isLikeNone(ret) ? 0 : ret; - getInt32Memory0()[arg0 / 4 + 0] = !isLikeNone(ret); -}; - -export function __wbg_String_88810dfeb4021902(arg0, arg1) { - const ret = String(getObject(arg1)); - const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len1 = WASM_VECTOR_LEN; - getInt32Memory0()[arg0 / 4 + 1] = len1; - getInt32Memory0()[arg0 / 4 + 0] = ptr1; -}; - -export function __wbg_getwithrefkey_5e6d9547403deab8(arg0, arg1) { - const ret = getObject(arg0)[getObject(arg1)]; - return addHeapObject(ret); -}; - -export function __wbg_set_841ac57cff3d672b(arg0, arg1, arg2) { - getObject(arg0)[takeObject(arg1)] = takeObject(arg2); -}; - -export function __wbg_getRandomValues_37fa2ca9e4e07fab() { return handleError(function (arg0, arg1) { - getObject(arg0).getRandomValues(getObject(arg1)); -}, arguments) }; - -export function __wbg_randomFillSync_dc1e9a60c158336d() { return handleError(function (arg0, arg1) { - getObject(arg0).randomFillSync(takeObject(arg1)); -}, arguments) }; - -export function __wbg_crypto_c48a774b022d20ac(arg0) { - const ret = getObject(arg0).crypto; - return addHeapObject(ret); -}; - -export function __wbg_process_298734cf255a885d(arg0) { - const ret = getObject(arg0).process; - return addHeapObject(ret); -}; - -export function __wbg_versions_e2e78e134e3e5d01(arg0) { - const ret = getObject(arg0).versions; - return addHeapObject(ret); -}; - -export function __wbg_node_1cd7a5d853dbea79(arg0) { - const ret = getObject(arg0).node; - return addHeapObject(ret); -}; - -export function __wbg_msCrypto_bcb970640f50a1e8(arg0) { - const ret = getObject(arg0).msCrypto; - return addHeapObject(ret); -}; - -export function __wbg_require_8f08ceecec0f4fee() { return handleError(function () { - const ret = module.require; - return addHeapObject(ret); -}, arguments) }; - -export function __wbindgen_is_function(arg0) { - const ret = typeof(getObject(arg0)) === 'function'; - return ret; -}; - -export function __wbg_get_44be0491f933a435(arg0, arg1) { - const ret = getObject(arg0)[arg1 >>> 0]; - return addHeapObject(ret); -}; - -export function __wbg_length_fff51ee6522a1a18(arg0) { - const ret = getObject(arg0).length; - return ret; -}; - -export function __wbg_new_898a68150f225f2e() { - const ret = new Array(); - return addHeapObject(ret); -}; - -export function __wbg_newnoargs_581967eacc0e2604(arg0, arg1) { - const ret = new Function(getStringFromWasm0(arg0, arg1)); - return addHeapObject(ret); -}; - -export function __wbg_next_526fc47e980da008(arg0) { - const ret = getObject(arg0).next; - return addHeapObject(ret); -}; - -export function __wbg_next_ddb3312ca1c4e32a() { return handleError(function (arg0) { - const ret = getObject(arg0).next(); - return addHeapObject(ret); -}, arguments) }; - -export function __wbg_done_5c1f01fb660d73b5(arg0) { - const ret = getObject(arg0).done; - return ret; -}; - -export function __wbg_value_1695675138684bd5(arg0) { - const ret = getObject(arg0).value; - return addHeapObject(ret); -}; - -export function __wbg_iterator_97f0c81209c6c35a() { - const ret = Symbol.iterator; - return addHeapObject(ret); -}; - -export function __wbg_get_97b561fb56f034b5() { return handleError(function (arg0, arg1) { - const ret = Reflect.get(getObject(arg0), getObject(arg1)); - return addHeapObject(ret); -}, arguments) }; - -export function __wbg_call_cb65541d95d71282() { return handleError(function (arg0, arg1) { - const ret = getObject(arg0).call(getObject(arg1)); - return addHeapObject(ret); -}, arguments) }; - -export function __wbg_new_b51585de1b234aff() { - const ret = new Object(); - return addHeapObject(ret); -}; - -export function __wbg_self_1ff1d729e9aae938() { return handleError(function () { - const ret = self.self; - return addHeapObject(ret); -}, arguments) }; - -export function __wbg_window_5f4faef6c12b79ec() { return handleError(function () { - const ret = window.window; - return addHeapObject(ret); -}, arguments) }; - -export function __wbg_globalThis_1d39714405582d3c() { return handleError(function () { - const ret = globalThis.globalThis; - return addHeapObject(ret); -}, arguments) }; - -export function __wbg_global_651f05c6a0944d1c() { return handleError(function () { - const ret = global.global; - return addHeapObject(ret); -}, arguments) }; - -export function __wbg_set_502d29070ea18557(arg0, arg1, arg2) { - getObject(arg0)[arg1 >>> 0] = takeObject(arg2); -}; - -export function __wbg_isArray_4c24b343cb13cfb1(arg0) { - const ret = Array.isArray(getObject(arg0)); - return ret; -}; - -export function __wbg_instanceof_ArrayBuffer_39ac22089b74fddb(arg0) { - let result; - try { - result = getObject(arg0) instanceof ArrayBuffer; - } catch { - result = false; - } - const ret = result; - return ret; -}; - -export function __wbg_call_01734de55d61e11d() { return handleError(function (arg0, arg1, arg2) { - const ret = getObject(arg0).call(getObject(arg1), getObject(arg2)); - return addHeapObject(ret); -}, arguments) }; - -export function __wbg_getTime_5e2054f832d82ec9(arg0) { - const ret = getObject(arg0).getTime(); - return ret; -}; - -export function __wbg_new0_c0be7df4b6bd481f() { - const ret = new Date(); - return addHeapObject(ret); -}; - -export function __wbg_entries_e51f29c7bba0c054(arg0) { - const ret = Object.entries(getObject(arg0)); - return addHeapObject(ret); -}; - -export function __wbg_buffer_085ec1f694018c4f(arg0) { - const ret = getObject(arg0).buffer; - return addHeapObject(ret); -}; - -export function __wbg_newwithbyteoffsetandlength_6da8e527659b86aa(arg0, arg1, arg2) { - const ret = new Uint8Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0); - return addHeapObject(ret); -}; - -export function __wbg_new_8125e318e6245eed(arg0) { - const ret = new Uint8Array(getObject(arg0)); - return addHeapObject(ret); -}; - -export function __wbg_set_5cf90238115182c3(arg0, arg1, arg2) { - getObject(arg0).set(getObject(arg1), arg2 >>> 0); -}; - -export function __wbg_length_72e2208bbc0efc61(arg0) { - const ret = getObject(arg0).length; - return ret; -}; - -export function __wbg_instanceof_Uint8Array_d8d9cb2b8e8ac1d4(arg0) { - let result; - try { - result = getObject(arg0) instanceof Uint8Array; - } catch { - result = false; - } - const ret = result; - return ret; -}; - -export function __wbg_newwithlength_e5d69174d6984cd7(arg0) { - const ret = new Uint8Array(arg0 >>> 0); - return addHeapObject(ret); -}; - -export function __wbg_subarray_13db269f57aa838d(arg0, arg1, arg2) { - const ret = getObject(arg0).subarray(arg1 >>> 0, arg2 >>> 0); - return addHeapObject(ret); -}; - -export function __wbindgen_debug_string(arg0, arg1) { - const ret = debugString(getObject(arg1)); - const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len1 = WASM_VECTOR_LEN; - getInt32Memory0()[arg0 / 4 + 1] = len1; - getInt32Memory0()[arg0 / 4 + 0] = ptr1; -}; - -export function __wbindgen_throw(arg0, arg1) { - throw new Error(getStringFromWasm0(arg0, arg1)); -}; - -export function __wbindgen_memory() { - const ret = wasm.memory; - return addHeapObject(ret); -}; - diff --git a/shinkai-app/src/pkg/shinkai_message_wasm_bg.wasm b/shinkai-app/src/pkg/shinkai_message_wasm_bg.wasm deleted file mode 100644 index 0c837d2304b652561102a18c4805d087d77a9e45..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1525823 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�{7?^6H^kc?4Rjf=PU!q0Lpb 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�-rY#e$bNlHqH&hOcEJh%kH^YJh?k>nOl& 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

C@s6IRKv@G&RGaP=O2k7w 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%0AQLf^+>uA>x>e8wE9xGL;# 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 fw{TWwHa#UzFP<`? ({ - type: GET_PUBLIC_KEY, - payload: publicKey, -}); - -export const useRegistrationCode = (setupData: SetupDetailsState) => ({ - type: USE_REGISTRATION_CODE, - payload: setupData, -}); - -export const createRegistrationCode = (result: string) => ({ - type: CREATE_REGISTRATION_CODE, - payload: result, -}); - -export const receiveLastMessagesFromInbox = ( - inboxId: string, - messages: any[] -) => ({ - type: RECEIVE_LAST_MESSAGES_FROM_INBOX, - payload: { inboxId, messages }, -}); - -export const receiveUnreadMessagesFromInbox = ( - inboxId: string, - messages: any[] -) => ({ - type: RECEIVE_UNREAD_MESSAGES_FROM_INBOX, - payload: { inboxId, messages }, -}); - -export const receiveLoadMoreMessagesFromInbox = ( - inboxId: string, - messages: any[] -) => ({ - type: RECEIVE_LOAD_MORE_MESSAGES_FROM_INBOX, - - payload: { inboxId, messages }, -}); - -export const registrationError = (error: string) => ({ - type: REGISTRATION_ERROR, - payload: error, -}); - -export const pingAll = (result: string) => ({ - type: PING_ALL, - payload: result, -}); - -export const clearStore = () => { - return { - type: CLEAR_STORE, - }; -}; - -export const clearMessages = () => ({ - type: CLEAR_MESSAGES, -}); - -export const addMessageToInbox = (inboxId: string, message: any) => ({ - type: ADD_MESSAGE_TO_INBOX, - payload: { inboxId, message }, -}); - -export const clearRegistrationCode = () => ({ - type: CLEAR_REGISTRATION_CODE, -}); - -export const receiveAllInboxesForProfile = (inboxes: string[]) => ({ - type: RECEIVE_ALL_INBOXES_FOR_PROFILE, - payload: inboxes, -}); - -export interface AddAgentsAction { - type: typeof ADD_AGENTS; - payload: SerializedAgent[]; -} - -export function addAgents(agents: SerializedAgent[]): AddAgentsAction { - return { - type: ADD_AGENTS, - payload: agents, - }; -} \ No newline at end of file diff --git a/shinkai-app/src/store/index.ts b/shinkai-app/src/store/index.ts deleted file mode 100644 index ea0afbf22..000000000 --- a/shinkai-app/src/store/index.ts +++ /dev/null @@ -1,34 +0,0 @@ -import { createStore, applyMiddleware, Store, compose } from 'redux'; -import thunk, { ThunkAction } from 'redux-thunk'; -import storage from 'redux-persist/lib/storage'; -import { persistStore, persistReducer } from 'redux-persist'; -import rootReducer from './reducers'; -import { Action } from 'redux'; - -export type RootState = ReturnType; -export type AppDispatch = Store['dispatch']; - -export type AppThunk = ThunkAction< - ReturnType, - RootState, - unknown, - Action ->; - -const persistConfig = { - key: 'root', - storage, - whitelist: ['other', 'setupDetails'], - debug: true, -}; - -const persistedReducer = persistReducer(persistConfig, rootReducer); - -// Use Redux DevTools extension if it's installed in the user's browser -const composeEnhancers = (typeof window !== 'undefined' && window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__) || compose; - -export const store = createStore( - persistedReducer, - composeEnhancers(applyMiddleware(thunk)) -); -export const persistor = persistStore(store); diff --git a/shinkai-app/src/store/reducers.ts b/shinkai-app/src/store/reducers.ts deleted file mode 100644 index 140eb9327..000000000 --- a/shinkai-app/src/store/reducers.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { combineReducers } from "redux"; -import { setupDetailsReducer } from "./reducers/setupDetailsReducer"; -import { messagesReducer } from "./reducers/messagesReducer"; -import otherReducer from "./reducers/otherReducer"; - -const rootReducer = combineReducers({ - setupDetails: setupDetailsReducer, - messages: messagesReducer, - other: otherReducer, -}); - -export default rootReducer; diff --git a/shinkai-app/src/store/reducers/messagesReducer.ts b/shinkai-app/src/store/reducers/messagesReducer.ts deleted file mode 100644 index c34cc9df6..000000000 --- a/shinkai-app/src/store/reducers/messagesReducer.ts +++ /dev/null @@ -1,218 +0,0 @@ -import { ShinkaiMessage } from "../../models/ShinkaiMessage"; -import { calculateMessageHash } from "../../utils/shinkai_message_handler"; -import { - ADD_MESSAGE_TO_INBOX, - Action, - RECEIVE_ALL_INBOXES_FOR_PROFILE, - RECEIVE_LAST_MESSAGES_FROM_INBOX, - RECEIVE_LOAD_MORE_MESSAGES_FROM_INBOX, - RECEIVE_UNREAD_MESSAGES_FROM_INBOX, -} from "../types"; - -export interface MessagesState { - inboxes: { - [inboxId: string]: any[]; - }; - messageHashes: { - [inboxId: string]: { [hash: string]: boolean }; - }; -} - -const messagesState: MessagesState = { - inboxes: {}, - messageHashes: {}, -}; - -interface InboxMessagesAction { - type: - | typeof RECEIVE_LOAD_MORE_MESSAGES_FROM_INBOX - | typeof RECEIVE_LAST_MESSAGES_FROM_INBOX - | typeof RECEIVE_UNREAD_MESSAGES_FROM_INBOX; - payload?: { - inboxId: string; - messages: ShinkaiMessage[]; - }; -} - -interface AddMessageAction { - type: typeof ADD_MESSAGE_TO_INBOX; - payload?: { - inboxId: string; - message: ShinkaiMessage; - }; -} - -interface ReceiveAllInboxesAction { - type: typeof RECEIVE_ALL_INBOXES_FOR_PROFILE; - payload?: string[]; -} - -type MessagesAction = - | InboxMessagesAction - | AddMessageAction - | ReceiveAllInboxesAction; - -export const messagesReducer = ( - state = messagesState, - action: MessagesAction -): MessagesState => { - switch (action.type) { - case RECEIVE_UNREAD_MESSAGES_FROM_INBOX: { - if (!action.payload) { - return state; - } - const { inboxId, messages } = action.payload; - const currentMessages = state.inboxes[inboxId] || []; - const currentMessageHashes = state.messageHashes[inboxId] || {}; - - const uniqueNewMessages = messages.filter((msg: ShinkaiMessage) => { - const hash = calculateMessageHash(msg); - if (currentMessageHashes[hash]) { - return false; - } else { - currentMessageHashes[hash] = true; - return true; - } - }); - - return { - ...state, - inboxes: { - ...state.inboxes, - [inboxId]: [...currentMessages, ...uniqueNewMessages], - }, - messageHashes: { - ...state.messageHashes, - [inboxId]: currentMessageHashes, - }, - }; - } - case RECEIVE_LOAD_MORE_MESSAGES_FROM_INBOX: { - if (!action.payload) { - return state; - } - const { inboxId, messages } = action.payload; - const currentMessages = state.inboxes[inboxId] || []; - const currentMessageHashes = state.messageHashes[inboxId] || {}; - - const uniqueNewMessages = messages.filter((msg: ShinkaiMessage) => { - const hash = calculateMessageHash(msg); - if (currentMessageHashes[hash]) { - return false; - } else { - currentMessageHashes[hash] = true; - return true; - } - }); - - return { - ...state, - inboxes: { - ...state.inboxes, - [inboxId]: [...currentMessages, ...uniqueNewMessages], - }, - messageHashes: { - ...state.messageHashes, - [inboxId]: currentMessageHashes, - }, - }; - } - case RECEIVE_LAST_MESSAGES_FROM_INBOX: { - if (!action.payload) { - return state; - } - const { inboxId, messages } = action.payload; - const currentMessages = state.inboxes[inboxId] || []; - const currentMessageHashes = state.messageHashes[inboxId] || {}; - - console.log("RECEIVE_LAST_MESSAGES_FROM_INBOX> currentMessageHashes: ", currentMessageHashes); - console.log("RECEIVE_LAST_MESSAGES_FROM_INBOX> new messages: ", messages); - const uniqueNewMessages = messages.filter((msg: ShinkaiMessage) => { - const hash = calculateMessageHash(msg); - if (currentMessageHashes[hash]) { - return false; - } else { - currentMessageHashes[hash] = true; - return true; - } - }); - - return { - ...state, - inboxes: { - ...state.inboxes, - [inboxId]: [...currentMessages, ...uniqueNewMessages], - }, - messageHashes: { - ...state.messageHashes, - [inboxId]: currentMessageHashes, - }, - }; - } - case ADD_MESSAGE_TO_INBOX: { - console.log("ADD_MESSAGE_TO_INBOX"); - console.log("action.payload: ", action.payload); - if (!action.payload) { - return state; - } - const { inboxId, message } = action.payload; - const currentMessages = state.inboxes[inboxId] || []; - const currentMessageHashes = state.messageHashes[inboxId] || new Set(); - - const hash = calculateMessageHash(message); - if (currentMessageHashes[hash]) { - // If the message is a duplicate, don't add it - return state; - } else { - // If the message is unique, add it to the inbox and the hash to the set - currentMessageHashes[hash] = true; - return { - ...state, - inboxes: { - ...state.inboxes, - [inboxId]: [message, ...currentMessages], - }, - messageHashes: { - ...state.messageHashes, - [inboxId]: currentMessageHashes, - }, - }; - } - } - case RECEIVE_ALL_INBOXES_FOR_PROFILE: { - if (!action.payload) { - return state; - } - const newInboxes: { [key: string]: any } = action.payload; - if (typeof newInboxes !== "object") { - console.error( - "Invalid payload for RECEIVE_ALL_INBOXES_FOR_PROFILE: ", - newInboxes - ); - return state; - } - return { - ...state, - inboxes: { - ...state.inboxes, - ...Object.keys(newInboxes).reduce( - (result: { [key: string]: any[] }, key) => { - // Only initialize the inbox if it doesn't already exist in the state - if (!state.inboxes[key]) { - console.log("value for key: ", newInboxes[key]); - result[newInboxes[key]] = []; - } else { - // If the inbox already exists, keep the current messages - result[newInboxes[key]] = state.inboxes[key]; - } - return result; - }, - {} - ), - }, - }; - } - default: - return state; - } -}; diff --git a/shinkai-app/src/store/reducers/otherReducer.ts b/shinkai-app/src/store/reducers/otherReducer.ts deleted file mode 100644 index 300703f15..000000000 --- a/shinkai-app/src/store/reducers/otherReducer.ts +++ /dev/null @@ -1,87 +0,0 @@ -import { SerializedAgent } from "../../models/SchemaTypes"; -import { - ADD_AGENTS, - Action, - CLEAR_REGISTRATION_CODE, - CLEAR_STORE, - CREATE_REGISTRATION_CODE, - GET_PUBLIC_KEY, - PING_ALL, - RECEIVE_ALL_INBOXES_FOR_PROFILE, - REGISTRATION_ERROR, - USE_REGISTRATION_CODE, -} from "../types"; - -export interface OtherState { - registrationCode: string; - publicKey: string; - registrationStatus: boolean; - pingResult: string; - error: string | null; - agents: { - [agentId: string]: SerializedAgent; - }; - just_inboxes: string[]; -} - -const initialState: OtherState = { - publicKey: "", - registrationStatus: false, - pingResult: "", - registrationCode: "", - error: null, - agents: {}, - just_inboxes: [], -}; - -const otherReducer = (state = initialState, action: Action): OtherState => { - switch (action.type) { - case USE_REGISTRATION_CODE: - return { - ...state, - registrationStatus: true, - }; - case RECEIVE_ALL_INBOXES_FOR_PROFILE: { - const newInboxes = action.payload; - if (!Array.isArray(newInboxes)) { - console.error( - "Invalid payload for RECEIVE_ALL_INBOXES_FOR_PROFILE: ", - newInboxes - ); - return state; - } - return { - ...state, - just_inboxes: newInboxes, - }; - } - case GET_PUBLIC_KEY: - return { ...state, publicKey: action.payload }; - case ADD_AGENTS: { - const newAgents = action.payload; - const updatedAgents = { ...state.agents }; - newAgents.forEach((agent: SerializedAgent) => { - updatedAgents[agent.id] = agent; - }); - return { - ...state, - agents: updatedAgents, - }; - } - case CREATE_REGISTRATION_CODE: - return { ...state, registrationCode: action.payload }; - case REGISTRATION_ERROR: - return { ...state, error: action.payload }; - case CLEAR_REGISTRATION_CODE: - return { ...state, registrationCode: "" }; - case PING_ALL: - return { ...state, pingResult: action.payload }; - case CLEAR_STORE: - state = initialState; - return state; - default: - return state; - } -}; - -export default otherReducer; diff --git a/shinkai-app/src/store/reducers/setupDetailsReducer.ts b/shinkai-app/src/store/reducers/setupDetailsReducer.ts deleted file mode 100644 index cad581300..000000000 --- a/shinkai-app/src/store/reducers/setupDetailsReducer.ts +++ /dev/null @@ -1,57 +0,0 @@ -import { USE_REGISTRATION_CODE } from "../types"; -import { Base58String } from "../../models/QRSetupData"; - -export type SetupDetailsState = { - profile: string; - permission_type: string; - registration_name: string; - node_address: string; - shinkai_identity: string; - node_encryption_pk: Base58String; - node_signature_pk: Base58String; - profile_encryption_sk: Base58String; - profile_encryption_pk: Base58String; - profile_identity_sk: Base58String; - profile_identity_pk: Base58String; - my_device_encryption_sk: Base58String; - my_device_encryption_pk: Base58String; - my_device_identity_sk: Base58String; - my_device_identity_pk: Base58String; -}; - -const setupInitialState: SetupDetailsState = { - profile: "", - permission_type: "", - registration_name: "", - node_address: "", - shinkai_identity: "", - node_encryption_pk: "", - node_signature_pk: "", - profile_encryption_sk: "", - profile_encryption_pk: "", - profile_identity_sk: "", - profile_identity_pk: "", - my_device_encryption_sk: "", - my_device_encryption_pk: "", - my_device_identity_sk: "", - my_device_identity_pk: "", -}; - -interface SetupDetailsAction { - type: typeof USE_REGISTRATION_CODE; - payload?: SetupDetailsState; -} - -export const setupDetailsReducer = ( - state = setupInitialState, - action: SetupDetailsAction -): SetupDetailsState => { - switch (action.type) { - case USE_REGISTRATION_CODE: - const newState = action.payload ? action.payload : state; - console.log("New state: ", newState); - return newState; - default: - return state; - } -}; diff --git a/shinkai-app/src/store/types.ts b/shinkai-app/src/store/types.ts deleted file mode 100644 index 44c1dc788..000000000 --- a/shinkai-app/src/store/types.ts +++ /dev/null @@ -1,20 +0,0 @@ -export const GET_PUBLIC_KEY = 'GET_PUBLIC_KEY'; -export const USE_REGISTRATION_CODE = 'USE_REGISTRATION_CODE'; -export const CREATE_REGISTRATION_CODE = 'CREATE_REGISTRATION_CODE'; -export const REGISTRATION_ERROR = 'REGISTRATION_ERROR'; -export const PING_ALL = 'PING_ALL'; -export const CLEAR_REGISTRATION_CODE = 'CLEAR_REGISTRATION_CODE'; -export const RECEIVE_LAST_MESSAGES_FROM_INBOX = "RECEIVE_LAST_MESSAGES_FROM_INBOX"; -export const RECEIVE_UNREAD_MESSAGES_FROM_INBOX = "RECEIVE_UNREAD_MESSAGES_FROM_INBOX"; -export const RECEIVE_LOAD_MORE_MESSAGES_FROM_INBOX = "RECEIVE_LOAD_MORE_MESSAGES_FROM_INBOX"; -export const CLEAR_STORE = 'CLEAR_STORE'; -export const ADD_MESSAGE_TO_INBOX = 'ADD_MESSAGE_TO_INBOX'; -export const RECEIVE_ALL_INBOXES_FOR_PROFILE = 'RECEIVE_ALL_INBOXES_FOR_PROFILE'; -export const GET_AVAILABLE_AGENTS = 'GET_AVAILABLE_AGENTS'; -export const CLEAR_MESSAGES = "CLEAR_MESSAGES"; -export const ADD_AGENTS = 'ADD_AGENTS'; - -export interface Action { - type: string; - payload?: any; - } \ No newline at end of file diff --git a/shinkai-app/src/theme/global.css b/shinkai-app/src/theme/global.css deleted file mode 100644 index b1904d464..000000000 --- a/shinkai-app/src/theme/global.css +++ /dev/null @@ -1,28 +0,0 @@ -@tailwind base; -@tailwind components; -@tailwind utilities; - -@font-face { - font-family: "Newake"; - font-style: normal; - font-weight: 700; - font-display: swap; - src: url("/fonts/newake.otf") format("truetype"); -} - -/*add inter variable font*/ -@font-face { - font-family: 'Inter'; - font-style: normal; - font-weight: 400 700; - font-display: optional; - src: url(/fonts/inter-var-latin.woff2) format('woff2'); - unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, - U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, - U+2215, U+FEFF, U+FFFD; -} - - -body { - @apply font-inter; -} diff --git a/shinkai-app/src/theme/lib/utils.ts b/shinkai-app/src/theme/lib/utils.ts deleted file mode 100644 index ec79801fe..000000000 --- a/shinkai-app/src/theme/lib/utils.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { type ClassValue, clsx } from "clsx" -import { twMerge } from "tailwind-merge" - -export function cn(...inputs: ClassValue[]) { - return twMerge(clsx(inputs)) -} diff --git a/shinkai-app/src/theme/variables.css b/shinkai-app/src/theme/variables.css deleted file mode 100644 index 05cfd7604..000000000 --- a/shinkai-app/src/theme/variables.css +++ /dev/null @@ -1,236 +0,0 @@ -/* Ionic Variables and Theming. For more info, please see: -http://ionicframework.com/docs/theming/ */ - -/** Ionic CSS Variables **/ -:root { - /** primary **/ - --ion-color-primary: rgb(28, 58, 58); - --ion-color-primary-rgb: 56, 128, 255; - --ion-color-primary-contrast: #ffffff; - --ion-color-primary-contrast-rgb: 255, 255, 255; - --ion-color-primary-shade: #3171e0; - --ion-color-primary-tint: #4c8dff; - - /** secondary **/ - --ion-color-secondary: #3dc2ff; - --ion-color-secondary-rgb: 61, 194, 255; - --ion-color-secondary-contrast: #ffffff; - --ion-color-secondary-contrast-rgb: 255, 255, 255; - --ion-color-secondary-shade: #36abe0; - --ion-color-secondary-tint: #50c8ff; - - /** tertiary **/ - --ion-color-tertiary: #5260ff; - --ion-color-tertiary-rgb: 82, 96, 255; - --ion-color-tertiary-contrast: #ffffff; - --ion-color-tertiary-contrast-rgb: 255, 255, 255; - --ion-color-tertiary-shade: #4854e0; - --ion-color-tertiary-tint: #6370ff; - - /** success **/ - --ion-color-success: #2dd36f; - --ion-color-success-rgb: 45, 211, 111; - --ion-color-success-contrast: #ffffff; - --ion-color-success-contrast-rgb: 255, 255, 255; - --ion-color-success-shade: #28ba62; - --ion-color-success-tint: #42d77d; - - /** warning **/ - --ion-color-warning: #ffc409; - --ion-color-warning-rgb: 255, 196, 9; - --ion-color-warning-contrast: #000000; - --ion-color-warning-contrast-rgb: 0, 0, 0; - --ion-color-warning-shade: #e0ac08; - --ion-color-warning-tint: #ffca22; - - /** danger **/ - --ion-color-danger: #eb445a; - --ion-color-danger-rgb: 235, 68, 90; - --ion-color-danger-contrast: #ffffff; - --ion-color-danger-contrast-rgb: 255, 255, 255; - --ion-color-danger-shade: #cf3c4f; - --ion-color-danger-tint: #ed576b; - - /** dark **/ - --ion-color-dark: #222428; - --ion-color-dark-rgb: 34, 36, 40; - --ion-color-dark-contrast: #ffffff; - --ion-color-dark-contrast-rgb: 255, 255, 255; - --ion-color-dark-shade: #1e2023; - --ion-color-dark-tint: #383a3e; - - /** medium **/ - --ion-color-medium: #92949c; - --ion-color-medium-rgb: 146, 148, 156; - --ion-color-medium-contrast: #ffffff; - --ion-color-medium-contrast-rgb: 255, 255, 255; - --ion-color-medium-shade: #808289; - --ion-color-medium-tint: #9d9fa6; - - /** light **/ - --ion-color-light: #f4f5f8; - --ion-color-light-rgb: 244, 245, 248; - --ion-color-light-contrast: #000000; - --ion-color-light-contrast-rgb: 0, 0, 0; - --ion-color-light-shade: #d7d8da; - --ion-color-light-tint: #f5f6f9; -} - -@media (prefers-color-scheme: dark) { - /* - * Dark Colors - * ------------------------------------------- - */ - - body { - --ion-color-primary: rgb(28, 58, 58); - --ion-color-primary-rgb: 66,140,255; - --ion-color-primary-contrast: #ffffff; - --ion-color-primary-contrast-rgb: 255,255,255; - --ion-color-primary-shade: #3a7be0; - --ion-color-primary-tint: #5598ff; - - --ion-color-secondary: #50c8ff; - --ion-color-secondary-rgb: 80,200,255; - --ion-color-secondary-contrast: #ffffff; - --ion-color-secondary-contrast-rgb: 255,255,255; - --ion-color-secondary-shade: #46b0e0; - --ion-color-secondary-tint: #62ceff; - - --ion-color-tertiary: #6a64ff; - --ion-color-tertiary-rgb: 106,100,255; - --ion-color-tertiary-contrast: #ffffff; - --ion-color-tertiary-contrast-rgb: 255,255,255; - --ion-color-tertiary-shade: #5d58e0; - --ion-color-tertiary-tint: #7974ff; - - --ion-color-success: #2fdf75; - --ion-color-success-rgb: 47,223,117; - --ion-color-success-contrast: #000000; - --ion-color-success-contrast-rgb: 0,0,0; - --ion-color-success-shade: #29c467; - --ion-color-success-tint: #44e283; - - --ion-color-warning: #ffd534; - --ion-color-warning-rgb: 255,213,52; - --ion-color-warning-contrast: #000000; - --ion-color-warning-contrast-rgb: 0,0,0; - --ion-color-warning-shade: #e0bb2e; - --ion-color-warning-tint: #ffd948; - - --ion-color-danger: #ff4961; - --ion-color-danger-rgb: 255,73,97; - --ion-color-danger-contrast: #ffffff; - --ion-color-danger-contrast-rgb: 255,255,255; - --ion-color-danger-shade: #e04055; - --ion-color-danger-tint: #ff5b71; - - --ion-color-dark: #f4f5f8; - --ion-color-dark-rgb: 244,245,248; - --ion-color-dark-contrast: #000000; - --ion-color-dark-contrast-rgb: 0,0,0; - --ion-color-dark-shade: #d7d8da; - --ion-color-dark-tint: #f5f6f9; - - --ion-color-medium: #989aa2; - --ion-color-medium-rgb: 152,154,162; - --ion-color-medium-contrast: #000000; - --ion-color-medium-contrast-rgb: 0,0,0; - --ion-color-medium-shade: #86888f; - --ion-color-medium-tint: #a2a4ab; - - --ion-color-light: #222428; - --ion-color-light-rgb: 34,36,40; - --ion-color-light-contrast: #ffffff; - --ion-color-light-contrast-rgb: 255,255,255; - --ion-color-light-shade: #1e2023; - --ion-color-light-tint: #383a3e; - } - - /* - * iOS Dark Theme - * ------------------------------------------- - */ - - .ios body { - --ion-background-color: #000000; - --ion-background-color-rgb: 0,0,0; - - --ion-text-color: #ffffff; - --ion-text-color-rgb: 255,255,255; - - --ion-color-step-50: #0d0d0d; - --ion-color-step-100: #1a1a1a; - --ion-color-step-150: #262626; - --ion-color-step-200: #333333; - --ion-color-step-250: #404040; - --ion-color-step-300: #4d4d4d; - --ion-color-step-350: #595959; - --ion-color-step-400: #666666; - --ion-color-step-450: #737373; - --ion-color-step-500: #808080; - --ion-color-step-550: #8c8c8c; - --ion-color-step-600: #999999; - --ion-color-step-650: #a6a6a6; - --ion-color-step-700: #b3b3b3; - --ion-color-step-750: #bfbfbf; - --ion-color-step-800: #cccccc; - --ion-color-step-850: #d9d9d9; - --ion-color-step-900: #e6e6e6; - --ion-color-step-950: #f2f2f2; - - --ion-item-background: #000000; - - --ion-card-background: #1c1c1d; - } - - .ios ion-modal { - --ion-background-color: var(--ion-color-step-100); - --ion-toolbar-background: var(--ion-color-step-150); - --ion-toolbar-border-color: var(--ion-color-step-250); - } - - - /* - * Material Design Dark Theme - * ------------------------------------------- - */ - - .md body { - --ion-background-color: #121212; - --ion-background-color-rgb: 18,18,18; - - --ion-text-color: #ffffff; - --ion-text-color-rgb: 255,255,255; - - --ion-border-color: #222222; - - --ion-color-step-50: #1e1e1e; - --ion-color-step-100: #2a2a2a; - --ion-color-step-150: #363636; - --ion-color-step-200: #414141; - --ion-color-step-250: #4d4d4d; - --ion-color-step-300: #595959; - --ion-color-step-350: #656565; - --ion-color-step-400: #717171; - --ion-color-step-450: #7d7d7d; - --ion-color-step-500: #898989; - --ion-color-step-550: #949494; - --ion-color-step-600: #a0a0a0; - --ion-color-step-650: #acacac; - --ion-color-step-700: #b8b8b8; - --ion-color-step-750: #c4c4c4; - --ion-color-step-800: #d0d0d0; - --ion-color-step-850: #dbdbdb; - --ion-color-step-900: #e7e7e7; - --ion-color-step-950: #f3f3f3; - - --ion-item-background: #1e1e1e; - - --ion-toolbar-background: #1f1f1f; - - --ion-tab-bar-background: #1f1f1f; - - --ion-card-background: #1e1e1e; - } -} diff --git a/shinkai-app/src/types.d.ts b/shinkai-app/src/types.d.ts deleted file mode 100644 index 6ffbaa30c..000000000 --- a/shinkai-app/src/types.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -export type AppThunk = ThunkAction< - ReturnType, - RootState, - unknown, - Action ->; - -declare global { - interface Window { - __REDUX_DEVTOOLS_EXTENSION_COMPOSE__?: typeof compose; - } -} diff --git a/shinkai-app/src/utils/inbox_name_handler.test.ts b/shinkai-app/src/utils/inbox_name_handler.test.ts deleted file mode 100644 index 03acdb47f..000000000 --- a/shinkai-app/src/utils/inbox_name_handler.test.ts +++ /dev/null @@ -1,51 +0,0 @@ -import { assert, suite } from 'vitest'; -import { extractReceiverShinkaiName, getOtherPersonIdentity, ShinkaiNameError } from './inbox_name_handler'; - -suite('extractReceiverShinkaiName', () => { - test('returns correct receiver name', () => { - const result = extractReceiverShinkaiName( - 'inbox::@@node1.shinkai/main::@@node1.shinkai/main/device/main_device::false', - '@@node1.shinkai' - ); - assert.equal(result, '@@node1.shinkai', 'Returned the correct receiver name'); - }); - - test('throws error for invalid format (too few parts)', () => { - assert.throws(() => { - extractReceiverShinkaiName('inbox::@@node1.shinkai', '@@node1.shinkai'); - }, ShinkaiNameError, 'InvalidFormat'); - }); - - test('throws error for invalid format (too many parts)', () => { - assert.throws(() => { - extractReceiverShinkaiName('inbox::' + '@@node1.shinkai::'.repeat(100), '@@node1.shinkai'); - }, ShinkaiNameError, 'InvalidFormat'); - }); - - test('throws error for invalid format (regex mismatch)', () => { - assert.throws(() => { - extractReceiverShinkaiName('inbox::@@invalid_node/main::@@node1.shinkai/main/device/main_device::false', '@@node1.shinkai'); - }, ShinkaiNameError, 'InvalidFormat'); - }); -}); - -describe('getOtherPersonIdentity', () => { - it('should return the other person identity', () => { - const inboxName = 'inbox::@@node1.shinkai/main::@@node1.shinkai/main/device/main_device::false'; - const myIdentity = '@@node1.shinkai/main/device/main_device'; - const expectedIdentity = '@@node1.shinkai/main'; - - const result = getOtherPersonIdentity(inboxName, myIdentity); - - expect(result).toBe(expectedIdentity); - }); - - it('should return empty string if no other identity is found', () => { - const inboxName = 'inbox::@@node1.shinkai/main/device/main_device::false'; - const myIdentity = '@@node1.shinkai/main/device/main_device'; - - const result = getOtherPersonIdentity(inboxName, myIdentity); - - expect(result).toBe(undefined); - }); -}); \ No newline at end of file diff --git a/shinkai-app/src/utils/inbox_name_handler.ts b/shinkai-app/src/utils/inbox_name_handler.ts deleted file mode 100644 index da02c42f4..000000000 --- a/shinkai-app/src/utils/inbox_name_handler.ts +++ /dev/null @@ -1,60 +0,0 @@ -export class ShinkaiNameError extends Error { - constructor(public type: "InvalidFormat" | "ReceiverNotFound") { - super(`Shinkai Name Error: ${type}`); - this.name = "ShinkaiNameError"; - Object.setPrototypeOf(this, new.target.prototype); // restore prototype chain - } -} - -export const getOtherPersonIdentity = (inboxName: string, myIdentity: string) => { - const parts = inboxName.split("::"); - const otherPersonIdentity = parts.filter(part => part !== myIdentity && part !== 'inbox' && part !== 'false'); - return otherPersonIdentity[0]; -}; - -export const extractReceiverShinkaiName = ( - deserializedId: string, - senderShinkaiName: string -): string => { - const parts: string[] = deserializedId.split("::"); - if (parts.length < 3 || parts.length > 101) { - throw new ShinkaiNameError("InvalidFormat"); - } - - const nodeRegex = /^@@[a-zA-Z0-9\_]+\.shinkai.*$/; - let receiverShinkaiName = ""; - let hasSeenSender = false; - - for (let i = 1; i < parts.length - 1; i++) { - const part = parts[i].split("/")[0]; // Extract base part of the shinkai name - if (!nodeRegex.test(part)) { - throw new ShinkaiNameError("InvalidFormat"); - } - - // Skip the sender's shinkai name - if (part === senderShinkaiName && hasSeenSender === false) { - hasSeenSender = true; - continue; - } - - // Assign the receiver's shinkai name and break the loop - receiverShinkaiName = part; - break; - } - - if (receiverShinkaiName === "") { - throw new ShinkaiNameError("ReceiverNotFound"); - } - - return receiverShinkaiName; -}; - -export const extractJobIdFromInbox = (deserializedId: string): string => { - const parts: string[] = deserializedId.split("::"); - if (parts.length < 3 || parts[0] !== 'job_inbox') { - throw new ShinkaiNameError("InvalidFormat"); - } - - const jobId = parts[1]; - return jobId; -}; \ No newline at end of file diff --git a/shinkai-app/src/utils/shinkai_message_handler.ts b/shinkai-app/src/utils/shinkai_message_handler.ts deleted file mode 100644 index 702d71cfd..000000000 --- a/shinkai-app/src/utils/shinkai_message_handler.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ShinkaiMessage } from "../models/ShinkaiMessage"; -import { ShinkaiMessageWrapper } from "../lib/wasm/ShinkaiMessageWrapper"; - -export function calculateMessageHash(message: ShinkaiMessage): string { - const messageWrapper = new ShinkaiMessageWrapper(message); - return messageWrapper.calculate_hash(); -} diff --git a/shinkai-app/src/utils/validation.test.ts b/shinkai-app/src/utils/validation.test.ts deleted file mode 100644 index db154749f..000000000 --- a/shinkai-app/src/utils/validation.test.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { test } from 'vitest'; -import { validateInboxName } from './validation'; - -test('Validates inbox names correctly', () => { - expect(validateInboxName("part1|part2::part3|part4::part5|part6::true")).toBe(true); - expect(validateInboxName("part1|part2::part3::part4::false")).toBe(false); - expect(validateInboxName("part1|part2::part3|part4::part5|part6::maybe")).toBe(false); - expect(validateInboxName("part1|part2|part3|part4::part5|part6::true")).toBe(false); - expect(validateInboxName("part1::part2|part3::part4|part5|part6::false")).toBe(false); -}); diff --git a/shinkai-app/src/utils/validation.ts b/shinkai-app/src/utils/validation.ts deleted file mode 100644 index d3fb695d1..000000000 --- a/shinkai-app/src/utils/validation.ts +++ /dev/null @@ -1,18 +0,0 @@ -export function validateInboxName(s: string): boolean { - const parts = s.split("::"); - - if (parts.length !== 4) { - return false; - } - - const isE2e = parts[3] === "true" || parts[3] === "false"; - - const senderParts = parts[1].split("|"); - const recipientParts = parts[2].split("|"); - - if (senderParts.length !== 2 || recipientParts.length !== 2) { - return false; - } - - return isE2e; -} diff --git a/shinkai-app/src/utils/wasm_helpers.test.ts b/shinkai-app/src/utils/wasm_helpers.test.ts deleted file mode 100644 index 265fc6153..000000000 --- a/shinkai-app/src/utils/wasm_helpers.test.ts +++ /dev/null @@ -1,51 +0,0 @@ -import { sha512 } from '@noble/hashes/sha512'; -import { generateEncryptionKeys, generateSignatureKeys, test_util_generateKeys } from './wasm_helpers'; -import * as ed from '@noble/ed25519'; - -// Enable synchronous methods -ed.etc.sha512Sync = (...m) => sha512(ed.etc.concatBytes(...m)); - -const { Crypto } = require("@peculiar/webcrypto"); -const crypto = new Crypto(); -globalThis.crypto = crypto; - -describe('Key generation functions', () => { - - test('should generate valid encryption keys', async () => { - const seed = new Uint8Array(32); - const keys = await generateEncryptionKeys(seed); - - expect(keys).toHaveProperty('my_encryption_sk_string'); - expect(keys).toHaveProperty('my_encryption_pk_string'); - - expect(typeof keys.my_encryption_sk_string).toBe('string'); - expect(typeof keys.my_encryption_pk_string).toBe('string'); - }); - - test('should generate valid signature keys', async () => { - const keys = await generateSignatureKeys(); - - expect(keys).toHaveProperty('my_identity_sk_string'); - expect(keys).toHaveProperty('my_identity_pk_string'); - - expect(typeof keys.my_identity_sk_string).toBe('string'); - expect(typeof keys.my_identity_pk_string).toBe('string'); - }); - - test('should generate all required keys', async () => { - const keys = await test_util_generateKeys(); - - expect(keys).toHaveProperty('my_encryption_sk_string'); - expect(keys).toHaveProperty('my_encryption_pk_string'); - expect(keys).toHaveProperty('receiver_public_key_string'); - expect(keys).toHaveProperty('my_identity_sk_string'); - expect(keys).toHaveProperty('my_identity_pk_string'); - - expect(typeof keys.my_encryption_sk_string).toBe('string'); - expect(typeof keys.my_encryption_pk_string).toBe('string'); - expect(typeof keys.receiver_public_key_string).toBe('string'); - expect(typeof keys.my_identity_sk_string).toBe('string'); - expect(typeof keys.my_identity_pk_string).toBe('string'); - }); - -}); diff --git a/shinkai-app/src/utils/wasm_helpers.ts b/shinkai-app/src/utils/wasm_helpers.ts deleted file mode 100644 index bf47fd001..000000000 --- a/shinkai-app/src/utils/wasm_helpers.ts +++ /dev/null @@ -1,60 +0,0 @@ - -import { generateKeyPair } from 'curve25519-js'; -import * as ed from '@noble/ed25519'; - -type HexString = string; - -export function toHexString(byteArray: Uint8Array) { - return Array.from(byteArray, function(byte) { - return ('0' + (byte & 0xFF).toString(16)).slice(-2); - }).join('') -} - -export const generateEncryptionKeys = async (seed: Uint8Array): Promise<{my_encryption_sk_string: HexString, my_encryption_pk_string: HexString}> => { - const encryptionKeys = generateKeyPair(seed); - const my_encryption_sk_string: string = toHexString(encryptionKeys.private); - const my_encryption_pk_string: string = toHexString(encryptionKeys.public); - - return { - my_encryption_sk_string, - my_encryption_pk_string, - } -} - -export const generateSignatureKeys = async (): Promise<{my_identity_sk_string: HexString, my_identity_pk_string: HexString}> => { - const privKey = ed.utils.randomPrivateKey(); - const pubKey = await ed.getPublicKeyAsync(privKey); - - const my_identity_sk_string: string = toHexString(privKey); - const my_identity_pk_string: string = toHexString(pubKey); - - return { - my_identity_sk_string, - my_identity_pk_string, - } -} - -export const test_util_generateKeys = async (): Promise<{my_encryption_sk_string: HexString, my_encryption_pk_string: HexString, receiver_public_key_string: HexString, my_identity_sk_string: HexString, my_identity_pk_string: HexString}> => { - const seed = new Uint8Array(32); - - const encryptionKeys = await generateEncryptionKeys(seed); - const signatureKeys = await generateSignatureKeys(); - - return { - ...encryptionKeys, - receiver_public_key_string: encryptionKeys.my_encryption_pk_string, - ...signatureKeys - } -} - -export function mapEncryptionMethod(encryption: String): number { - switch (encryption) { - case "DiffieHellmanChaChaPoly1305": - return 0; - case "None": - return 1; - default: - throw new Error("Unknown encryption method"); - } - } - \ No newline at end of file diff --git a/shinkai-app/src/vite-env.d.ts b/shinkai-app/src/vite-env.d.ts deleted file mode 100644 index 11f02fe2a..000000000 --- a/shinkai-app/src/vite-env.d.ts +++ /dev/null @@ -1 +0,0 @@ -/// diff --git a/shinkai-app/tailwind.config.js b/shinkai-app/tailwind.config.js deleted file mode 100644 index a7ac48196..000000000 --- a/shinkai-app/tailwind.config.js +++ /dev/null @@ -1,35 +0,0 @@ -/** @type {import('tailwindcss').Config} */ -module.exports = { - // darkMode: ["class"], - content: ["./src/**/*.tsx", "./src/**/*.html", "./src/**/*.css"], - theme: { - container: { - center: true, - padding: ["1rem", "1.5rem", "2rem"], - screens: { - "2xl": "1400px", - }, - }, - extend: { - backgroundImage: { - hero: 'url("https://shinkai.com/assets/bg-hero.webp")', - }, - fontFamily: { - inter: ["Inter", "sans-serif"], - newake: ["Newake", "sans-serif"], - }, - colors: { - primary: "var(--ion-color-primary)", - secondary: "var(--ion-color-secondary)", - brand: { - 200: "#FFD9D9", - 400: "#FE6062", - 600: "#FE5153", - }, - accent: "rgb(9, 9, 11)", - muted: "rgb(114, 113, 122)", - }, - }, - }, - plugins: [require("tailwindcss-animate")], -}; diff --git a/shinkai-app/tsconfig.json b/shinkai-app/tsconfig.json deleted file mode 100644 index ccfdf1283..000000000 --- a/shinkai-app/tsconfig.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "compilerOptions": { - "target": "ESNext", - "useDefineForClassFields": true, - "lib": ["DOM", "DOM.Iterable", "ESNext"], - "allowJs": true, - "skipLibCheck": true, - "esModuleInterop": true, - "allowSyntheticDefaultImports": true, - "strict": true, - "forceConsistentCasingInFileNames": true, - "module": "ESNext", - "moduleResolution": "Node", - "resolveJsonModule": true, - "isolatedModules": true, - "noEmit": false, - "jsx": "react-jsx", - "sourceMap": true, - "noImplicitAny": true, - "outDir": "./dist/", - "paths":{ - "crypto":["./node_modules/crypto-js"] - } - }, - "include": ["src", "types.d.ts"], - "references": [{ "path": "./tsconfig.node.json" }] -} diff --git a/shinkai-app/tsconfig.node.json b/shinkai-app/tsconfig.node.json deleted file mode 100644 index 9d31e2aed..000000000 --- a/shinkai-app/tsconfig.node.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "compilerOptions": { - "composite": true, - "module": "ESNext", - "moduleResolution": "Node", - "allowSyntheticDefaultImports": true - }, - "include": ["vite.config.ts"] -} diff --git a/shinkai-app/vite.config.ts b/shinkai-app/vite.config.ts deleted file mode 100644 index c7ba00cf5..000000000 --- a/shinkai-app/vite.config.ts +++ /dev/null @@ -1,15 +0,0 @@ -import legacy from "@vitejs/plugin-legacy"; -import wasm from "vite-plugin-wasm"; -import react from "@vitejs/plugin-react"; -import { defineConfig } from "vite"; - -// https://vitejs.dev/config/ -export default defineConfig({ - plugins: [react(), legacy(), wasm()], - test: { - watch: false, - globals: true, - environment: "jsdom", - setupFiles: "./src/setupTests.ts", - }, -});

XR#v90Jnj_MN{@VK%MKkYa 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