diff --git a/.eslintrc.json b/.eslintrc.json deleted file mode 100644 index 999c8db..0000000 --- a/.eslintrc.json +++ /dev/null @@ -1,71 +0,0 @@ -{ - "env": { - "browser": true, - "es2021": true - }, - "extends": [ - "airbnb-base", - "plugin:@typescript-eslint/recommended", - "plugin:@typescript-eslint/recommended-requiring-type-checking" - ], - "parser": "@typescript-eslint/parser", - "parserOptions": { - "project": ["./tsconfig.json"], - "ecmaVersion": "latest", - "sourceType": "module" - }, - "plugins": [ - "@typescript-eslint" - ], - "settings": { - "import/resolver": { - "node": { - "extensions": [".js", ".ts"] - } - } - }, - "ignorePatterns": ["dist/*", ".eslintrc.js", "jest.config.js", "coverage/*", "node_modules/*", "build/*", "lib/*"], - "rules": { - "import/extensions": [ - "error", - "ignorePackages", - { - "js": "never", - "jsx": "never", - "ts": "never", - "tsx": "never" - } - ], - "max-len": ["error", { "code": 175 }], - "linebreak-style": [ - "error", - "unix" - ], - "no-undef": "off" - }, - "overrides": [ - { - "files": [ - "**/*.test.ts", - "**/*.test.tsx" - ], - "env": { - "jest": true - }, - "rules": { - "import/no-extraneous-dependencies": ["error", { "devDependencies": true }] - }, - "parserOptions": { - "project": "tsconfig.test.json" - } - }, - { - "files": [ - "*.js" - ], - "rules": { - "@typescript-eslint/no-var-requires": "off" - } - } - ] -} \ No newline at end of file diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 0000000..0a0b149 --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1 @@ +* @ONSdigital/blaise5 diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..bbf147b --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,17 @@ +--- +version: 2 +updates: + - package-ecosystem: npm + directory: / + schedule: + interval: weekly + day: monday + time: "06:00" + timezone: Europe/London + - package-ecosystem: github-actions + directory: / + schedule: + interval: weekly + day: monday + time: "06:00" + timezone: Europe/London diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..b13fe49 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,31 @@ +--- +name: โœ… Run CI Validation +permissions: + contents: read +on: + pull_request: + branches: [main] + push: + branches: [main] +jobs: + run-ci-validation: + runs-on: ubuntu-latest + steps: + - name: ๐Ÿ›Ž๏ธ Checkout Repository + uses: actions/checkout@v6 + - name: ๐Ÿ”ง Enable Corepack + run: corepack enable + - name: ๐Ÿ”ง Setup Node and Cache + uses: actions/setup-node@v6 + with: + node-version: 24.x + cache: yarn + cache-dependency-path: yarn.lock + - name: ๐Ÿ“ฆ Install Dependencies + run: yarn install --immutable + - name: ๐Ÿงน Run Linter + run: yarn lint + - name: ๐Ÿงช Run Tests and Generate Coverage + run: yarn test + - name: ๐Ÿ—๏ธ Run Build + run: yarn build diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index cc7149c..66077de 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -6,7 +6,7 @@ on: pull_request: branches: [main] schedule: - - cron: '0 6 * * 1' + - cron: "0 6 * * 1" permissions: contents: read security-events: write @@ -24,5 +24,3 @@ jobs: queries: security-and-quality - name: ๐Ÿงช Run CodeQL Analyser uses: github/codeql-action/analyze@v4 - with: - category: /language:javascript-typescript diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..ae219cf --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,29 @@ +--- +name: ๐Ÿ”„ Sync Version +permissions: + contents: write +on: + release: + types: [published] +jobs: + sync-version: + runs-on: ubuntu-latest + steps: + - name: ๐Ÿ›Ž๏ธ Checkout Repository + uses: actions/checkout@v6 + with: + ref: ${{ github.event.release.target_commitish }} + - name: ๐Ÿ”ง Setup Node + uses: actions/setup-node@v6 + with: + node-version: 24.x + - name: ๐Ÿ“ Update package.json Version + run: | + CLEAN_VERSION=$(echo "${{ github.event.release.tag_name }}" | sed 's/^v//') + npm version $CLEAN_VERSION --no-git-tag-version + echo "NEW_VERSION=$CLEAN_VERSION" >> $GITHUB_ENV + - name: ๐Ÿš€ Commit and Push Changes + uses: stefanzweifel/git-auto-commit-action@v7 + with: + commit_message: "chore: bump version to ${{ env.NEW_VERSION }}" + file_pattern: package.json diff --git a/.github/workflows/test.js.yaml b/.github/workflows/test.js.yaml deleted file mode 100644 index c95424e..0000000 --- a/.github/workflows/test.js.yaml +++ /dev/null @@ -1,42 +0,0 @@ -name: Test report - -on: - pull_request: - branches: [ main ] - push: - branches: [ main ] - -jobs: - test: - permissions: - contents: read - pull-requests: write - runs-on: ubuntu-latest - strategy: - matrix: - node-version: [ 22.12.0 ] - steps: - - uses: actions/checkout@v2 - - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v1 - with: - node-version: ${{ matrix.node-version }} - - run: yarn install - - run: yarn run test --silent --runInBand - - lint: - permissions: - contents: read - pull-requests: write - runs-on: ubuntu-latest - strategy: - matrix: - node-version: [ 22.12.0 ] - steps: - - uses: actions/checkout@v2 - - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v1 - with: - node-version: ${{ matrix.node-version }} - - run: yarn install - - run: yarn run lint \ No newline at end of file diff --git a/.gitignore b/.gitignore index 879c118..1d870fb 100644 --- a/.gitignore +++ b/.gitignore @@ -1,9 +1,7 @@ -/.idea/ -/node_modules/ -.DS_Store -.env -/build/ -/dist/ -/coverage/ -/yarn-error.log -/.eslintcache \ No newline at end of file +.idea/ +.vscode/ +.yarn/ +coverage/ +dist/ +node_modules/ +*.log diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 0000000..18f2b36 --- /dev/null +++ b/.prettierignore @@ -0,0 +1,3 @@ +coverage +dist +node_modules diff --git a/.prettierrc.json b/.prettierrc.json new file mode 100644 index 0000000..adc5ff4 --- /dev/null +++ b/.prettierrc.json @@ -0,0 +1,22 @@ +{ + "arrowParens": "always", + "bracketSameLine": false, + "bracketSpacing": true, + "endOfLine": "lf", + "jsxSingleQuote": false, + "overrides": [ + { + "files": ["*.json", "*.jsonc"], + "options": { + "trailingComma": "none" + } + } + ], + "printWidth": 100, + "semi": true, + "singleAttributePerLine": true, + "singleQuote": false, + "tabWidth": 2, + "trailingComma": "all", + "useTabs": false +} diff --git a/.yarnrc.yml b/.yarnrc.yml new file mode 100644 index 0000000..61e7bde --- /dev/null +++ b/.yarnrc.yml @@ -0,0 +1,3 @@ +nodeLinker: node-modules +approvedGitRepositories: + - "https://github.com/ONSdigital/*" diff --git a/ArchiveExemption.md b/ArchiveExemption.md new file mode 100644 index 0000000..684b2f8 --- /dev/null +++ b/ArchiveExemption.md @@ -0,0 +1 @@ +This is an active repository supporting the Blaise 5 architecture. diff --git a/CODEOWNERS b/CODEOWNERS deleted file mode 100644 index e2f886b..0000000 --- a/CODEOWNERS +++ /dev/null @@ -1 +0,0 @@ -* @ONSdigital/blaise5 \ No newline at end of file diff --git a/LICENSE b/LICENSE index 1da6077..d58dfef 100644 --- a/LICENSE +++ b/LICENSE @@ -1,21 +1,9 @@ -MIT License +The MIT License (MIT) -Copyright (c) 2021 ONS Digital +Copyright (c) 2021 Crown Copyright (Office for National Statistics) -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/README.md b/README.md index 1f0b5c2..386f956 100644 --- a/README.md +++ b/README.md @@ -1,86 +1,110 @@ -# Blaise REST Api node client +# Blaise REST API Node Client ๐ŸŒ -This library facilitates calling the Blaise REST Api and supports ESM and Common JS. To use -the library you need to do the following: +A robust, type-safe Node.js client for interacting with our Blaise REST API. Designed for high-reliability service-to-service communication, this library provides immutable data contracts and standardised interaction patterns for Blaise resources. -### Creating new endpoints +## ๐Ÿ“ Usage -Add new endpoints and tests as required. +Add this repository to your project as a dependency: -Run tests: -``` -yarn test +```shell +yarn add git+https://github.com/ONSdigital/blaise-api-node-client# ``` -Build package: -``` -yarn build -``` +Release versions can be found on this repo's [GitHub releases](https://github.com/ONSdigital/blaise-api-node-client/releases). -Git add, commit and push ensuring you've added the build files. +### Implementation Example -### Consuming +The client is designed for dependency injection. It exposes strongly-typed methods and interfaces, ensuring that data structures returned by the API are consistent and immutable. -Add a dependency to your package.json file: -``` -"blaise-api-node-client": "ONSdigital/blaise-api-node-client" -``` +```typescript +import { BlaiseApiClient } from "blaise-api-node-client"; +// Initialise the client with the Base URL of your Blaise REST API +const BLAISE_API_URL = process.env.BLAISE_API_URL; -Add an import statement where you wish to consume the client and interfaces: -``` -import BlaiseApiRest, { Questionnaire } from "blaise-api-node-client"; -``` +if (!BLAISE_API_URL) { + throw new Error("BLAISE_API_URL is required"); +} -Declare and consume the client by passing the URL of the rest api: -``` -const blaiseApiClient = new BlaiseApiClient(`http://${BLAISE_API_URL}`); -``` +const TIMEOUT_MS = 10_000; + +// The client accepts a configuration object for extended settings +const blaiseApiClient = new BlaiseApiClient(BLAISE_API_URL, { + timeoutInMs: TIMEOUT_MS, +}); -Declare timeout for the HTTP client: +export async function fetchQuestionnaires() { + try { + // Methods are strongly typed, returning immutable interfaces + const questionnaires = await blaiseApiClient.getQuestionnaires("gusty"); + return questionnaires; + } catch (error) { + console.error("Failed to fetch questionnaires", error); + throw error; + } +} ``` -The client accpets a timeout in milliseconds (timeoutInMs) number parameter if you wish to explicitly set -a timeout for the client. If this parameter is not passed then the default is used. -To specify a timeout you need to instantiate the client as follows, where 1000 is the -timeout required: +### Type-Safe Mocks -const blaiseApiClient = new BlaiseApiClient(`http://${BLAISE_API_URL}`, 1000); +To support local testing and ensure your mock data stays in sync with production contracts, the library exports validated mock objects. These are defined using readonly modifiers to prevent state pollution between tests. + +```typescript +import { mockQuestionnaires } from "blaise-api-node-client/mocks"; + +console.log(mockQuestionnaires[0].name); ``` -### Mock objects +## ๐Ÿ› ๏ธ Development + +### Getting Started -Mock objects are available for use in tests +Clone the repository: +```shell +git clone https://github.com/ONSdigital/blaise-api-node-client.git ``` -const {DiagnosticMockObject, QuestionnaireListMockObject, QuestionnaireMockObject} = jest.requireActual("blaise-api-node-client"); + +Install dependencies: + +```shell +yarn install ``` -### Local testing +### Architectural Principles -Install the dependencies +This library follows strict clean-code principles: -``` -yarn -``` +- **Domain-Driven Layout**: API calls are logically grouped by entity within the resources/ directory (e.g., Cases, Users, Questionnaires), rather than by generic functions. -Tests can be run via the following package.json script +- **Centralised Contracts**: All data contracts (types and interfaces) reside in the types/ directory to prevent circular dependencies and maintain a single source of truth. -``` +- **Strict Typing**: Union types and strict mapping are used for dynamic values (e.g., UserRole and CaseOutcome), providing IDE autocomplete and compile-time safety. + +- **Barrel Exports**: The public API surface is strictly controlled via index.ts, ensuring consumers only access intended interfaces, enums, and client classes. + +### Quality Control + +Ensure any changes to token management or caching logic are covered by unit tests. + +To run tests: + +```Shell yarn test ``` -Linting can be assessed with... +To run linting: -``` +```Shell yarn lint ``` -...and subsequent fixes can be applied with +To automatically fix standard linting issues: -``` +```Shell yarn lint-fix ``` +### Releasing - +After merging to main, [create a new release](https://docs.github.com/en/repositories/releasing-projects-on-github/managing-releases-in-a-repository) with appropriate release notes. The `package.json` version is automatically updated via GitHub Actions when a release is published. diff --git a/babel.config.json b/babel.config.json deleted file mode 100644 index ff3059c..0000000 --- a/babel.config.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "presets": ["@babel/preset-env"] -} \ No newline at end of file diff --git a/cspell.json b/cspell.json new file mode 100644 index 0000000..26e66e2 --- /dev/null +++ b/cspell.json @@ -0,0 +1,4 @@ +{ + "language": "en-GB", + "words": ["blaise", "onsdigital"] +} diff --git a/eslint.config.ts b/eslint.config.ts new file mode 100644 index 0000000..6edd039 --- /dev/null +++ b/eslint.config.ts @@ -0,0 +1,160 @@ +import js from "@eslint/js"; +import configPrettier from "eslint-config-prettier"; +import { createTypeScriptImportResolver } from "eslint-import-resolver-typescript"; +import pluginImportX from "eslint-plugin-import-x"; +import pluginJsonc from "eslint-plugin-jsonc"; +import globals from "globals"; +import * as jsoncParser from "jsonc-eslint-parser"; +import tseslint from "typescript-eslint"; + +export default tseslint.config( + { + ignores: ["coverage/**", "dist/**", "node_modules/**"], + }, + + js.configs.recommended, + ...tseslint.configs.recommended, + + { + languageOptions: { + ecmaVersion: "latest", + globals: { ...globals.node }, + }, + settings: { + "import-x/resolver-next": [ + createTypeScriptImportResolver({ project: "./tsconfig.eslint.json" }), + ], + }, + }, + + { + files: ["**/*.ts"], + plugins: { + "import-x": pluginImportX, + }, + rules: { + "padding-line-between-statements": [ + "error", + { blankLine: "always", prev: "*", next: "return" }, + { blankLine: "always", prev: "import", next: "*" }, + { blankLine: "any", prev: "import", next: "import" }, + { blankLine: "always", prev: ["const", "let", "var"], next: "*" }, + { blankLine: "any", prev: ["const", "let", "var"], next: ["const", "let", "var"] }, + { blankLine: "always", prev: "*", next: ["class", "function", "export"] }, + { blankLine: "always", prev: ["block-like", "multiline-block-like"], next: "*" }, + ], + "@typescript-eslint/no-explicit-any": "warn", + "@typescript-eslint/no-unused-vars": ["error", { argsIgnorePattern: "^_" }], + "@typescript-eslint/consistent-type-imports": [ + "error", + { + prefer: "type-imports", + fixStyle: "inline-type-imports", + }, + ], + "sort-imports": [ + "error", + { + ignoreCase: true, + ignoreDeclarationSort: true, + ignoreMemberSort: false, + }, + ], + "import-x/order": [ + "error", + { + groups: [ + "builtin", + "external", + "internal", + "parent", + "sibling", + "index", + "object", + "type", + ], + "newlines-between": "always", + alphabetize: { order: "asc", caseInsensitive: true }, + }, + ], + "no-unused-vars": "off", + "no-constant-condition": "error", + "no-unreachable": "error", + "import-x/extensions": [ + "error", + "ignorePackages", + { + js: "always", + jsx: "never", + ts: "never", + tsx: "never", + }, + ], + "import-x/no-extraneous-dependencies": [ + "error", + { + devDependencies: [ + "src/**/*.mock.ts", + "src/**/*.test.ts", + "src/setupTests.ts", + "*.config.ts", + ], + }, + ], + }, + }, + + ...pluginJsonc.configs["flat/recommended-with-jsonc"], + + { + files: ["**/*.json", "**/*.jsonc"], + languageOptions: { + parser: jsoncParser, + }, + rules: { + "jsonc/sort-keys": [ + "error", + { pathPattern: "^$", order: { type: "asc" } }, + { pathPattern: "^compilerOptions$", order: { type: "asc" } }, + ], + }, + }, + + { + files: ["package.json"], + rules: { + "jsonc/sort-keys": [ + "error", + { + pathPattern: "^$", + order: [ + "name", + "version", + "private", + "description", + "author", + "license", + "repository", + "engines", + "type", + "types", + "exports", + "files", + "sideEffects", + "scripts", + "peerDependencies", + "dependencies", + "devDependencies", + "packageManager", + ], + }, + { + pathPattern: "^(?:dev|peer|optional|bundled)?[Dd]ependencies$|^scripts$", + order: { type: "asc" }, + }, + ], + }, + }, + + configPrettier, +); diff --git a/jest.config.json b/jest.config.json deleted file mode 100644 index 1dd62ca..0000000 --- a/jest.config.json +++ /dev/null @@ -1,8 +0,0 @@ - { - "preset": "ts-jest", - "transform": { - "^.+\\.(ts|tsx)?$": "ts-jest", - "^.+\\.(js|jsx)$": "babel-jest" - }, - "modulePathIgnorePatterns": ["node_modules", "lib"] -} diff --git a/knip.jsonc b/knip.jsonc new file mode 100644 index 0000000..91b2b0b --- /dev/null +++ b/knip.jsonc @@ -0,0 +1,4 @@ +{ + "entry": ["src/**/*.test.ts"], + "project": ["src/**/*.ts", "*.config.ts"] +} diff --git a/lib/cjs/blaiseApiClient.d.ts b/lib/cjs/blaiseApiClient.d.ts deleted file mode 100644 index 3be8283..0000000 --- a/lib/cjs/blaiseApiClient.d.ts +++ /dev/null @@ -1,76 +0,0 @@ -import { AxiosInstance } from 'axios'; -import BlaiseIapNodeProvider from 'blaise-iap-node-provider'; -import { BlaiseApiConfig } from './interfaces/blaiseApiConfig'; -import { BlaiseApi } from './interfaces/blaiseApi'; -import * as users from './functions/userFunctions'; -import * as questionnaires from './functions/questionnaireFunctions'; -import * as cases from './functions/caseFunctions'; -import * as diagnostics from './functions/diagnosticFunctions'; -import * as daybatch from './functions/daybatchFunctions'; -import * as reports from './functions/questionnaireReportFunctions'; -declare class BlaiseApiClient implements BlaiseApi { - blaiseApiUrl: string; - blaiseIapProvider?: BlaiseIapNodeProvider; - httpClient: AxiosInstance; - constructor(blaiseApiUrl: string, config?: BlaiseApiConfig); - getUser: typeof users.getUser; - getUsers: typeof users.getUsers; - validatePassword: typeof users.validatePassword; - createUser: typeof users.createUser; - deleteUser: typeof users.deleteUser; - getUserRoles: typeof users.getUserRoles; - changePassword: typeof users.changePassword; - changeUserRole: typeof users.changeUserRole; - changeUserServerParks: typeof users.changeUserServerParks; - getAllQuestionnairesWithCatiData: typeof questionnaires.getAllQuestionnairesWithCatiData; - getQuestionnairesWithCatiData: typeof questionnaires.getQuestionnairesWithCatiData; - getQuestionnaireWithCatiData: typeof questionnaires.getQuestionnaireWithCatiData; - getQuestionnaires: typeof questionnaires.getQuestionnaires; - questionnaireExists: typeof questionnaires.questionnaireExists; - doesQuestionnaireHaveMode: typeof questionnaires.doesQuestionnaireHaveMode; - getQuestionnaire: typeof questionnaires.getQuestionnaire; - installQuestionnaire: typeof questionnaires.installQuestionnaire; - deleteQuestionnaire: typeof questionnaires.deleteQuestionnaire; - getQuestionnaireCaseIds: typeof questionnaires.getQuestionnaireCaseIds; - getQuestionnaireModes: typeof questionnaires.getQuestionnaireModes; - getQuestionnaireSettings: typeof questionnaires.getQuestionnaireSettings; - activateQuestionnaire: typeof questionnaires.activateQuestionnaire; - deactivateQuestionnaire: typeof questionnaires.deactivateQuestionnaire; - getDaybatch: typeof daybatch.getDaybatch; - addDaybatch: typeof daybatch.addDaybatch; - getSurveyDays: typeof daybatch.getSurveyDays; - addSurveyDays: typeof daybatch.addSurveyDays; - getCase: typeof cases.getCase; - getCaseMultikey: typeof cases.getCaseMultikey; - addCase: typeof cases.addCase; - updateCase: typeof cases.updateCase; - addCaseMultikey: typeof cases.addCaseMultikey; - getMultikeyQueryString: typeof cases.getMultikeyQueryString; - getCaseStatus: typeof cases.getCaseStatus; - getCaseEditInformation: typeof cases.getCaseEditInformation; - getDiagnostics: typeof diagnostics.getDiagnostics; - getQuestionnaireReportData: typeof reports.getQuestionnaireReportData; - private url; - protected get(url: string): Promise; - protected post(url: string, data: any): Promise; - protected delete(url: string): Promise; - protected patch(url: string, data?: any | undefined): Promise; - private axiosConfig; -} -export default BlaiseApiClient; -export * from './interfaces/questionnaire'; -export * from './interfaces/diagnostic'; -export * from './interfaces/case'; -export * from './interfaces/user'; -export * from './interfaces/daybatch'; -export * from './interfaces/questionnaireReport'; -export * from './enums/caseOutcome'; -export * from './enums/editedStatus'; -export * from './types/caseData'; -export * from './types/surveyDays'; -export * from './mockObjects/caseMockObjects'; -export * from './mockObjects/diagnosticMockObjects'; -export * from './mockObjects/questionnaireMockObjects'; -export * from './mockObjects/userMockObjects'; -export * from './mockObjects/daybatchMockObjects'; -export * from './mockObjects/questionnaireReportMockObjects'; diff --git a/lib/cjs/blaiseApiClient.js b/lib/cjs/blaiseApiClient.js deleted file mode 100644 index 5c10c21..0000000 --- a/lib/cjs/blaiseApiClient.js +++ /dev/null @@ -1,238 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __generator = (this && this.__generator) || function (thisArg, body) { - var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; - function verb(n) { return function (v) { return step([n, v]); }; } - function step(op) { - if (f) throw new TypeError("Generator is already executing."); - while (g && (g = 0, op[0] && (_ = 0)), _) try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; - if (y = 0, t) op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: case 1: t = op; break; - case 4: _.label++; return { value: op[1], done: false }; - case 5: _.label++; y = op[1]; op = [0]; continue; - case 7: op = _.ops.pop(); _.trys.pop(); continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } - if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } - if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } - if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } - if (t[2]) _.ops.pop(); - _.trys.pop(); continue; - } - op = body.call(thisArg, _); - } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } - if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; - } -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -var axios_1 = __importDefault(require("axios")); -var blaise_iap_node_provider_1 = __importDefault(require("blaise-iap-node-provider")); -var users = __importStar(require("./functions/userFunctions")); -var questionnaires = __importStar(require("./functions/questionnaireFunctions")); -var cases = __importStar(require("./functions/caseFunctions")); -var diagnostics = __importStar(require("./functions/diagnosticFunctions")); -var daybatch = __importStar(require("./functions/daybatchFunctions")); -var reports = __importStar(require("./functions/questionnaireReportFunctions")); -var BlaiseApiClient = /** @class */ (function () { - function BlaiseApiClient(blaiseApiUrl, config) { - this.getUser = users.getUser; - this.getUsers = users.getUsers; - this.validatePassword = users.validatePassword; - this.createUser = users.createUser; - this.deleteUser = users.deleteUser; - this.getUserRoles = users.getUserRoles; - this.changePassword = users.changePassword; - this.changeUserRole = users.changeUserRole; - this.changeUserServerParks = users.changeUserServerParks; - this.getAllQuestionnairesWithCatiData = questionnaires.getAllQuestionnairesWithCatiData; - this.getQuestionnairesWithCatiData = questionnaires.getQuestionnairesWithCatiData; - this.getQuestionnaireWithCatiData = questionnaires.getQuestionnaireWithCatiData; - this.getQuestionnaires = questionnaires.getQuestionnaires; - this.questionnaireExists = questionnaires.questionnaireExists; - this.doesQuestionnaireHaveMode = questionnaires.doesQuestionnaireHaveMode; - this.getQuestionnaire = questionnaires.getQuestionnaire; - this.installQuestionnaire = questionnaires.installQuestionnaire; - this.deleteQuestionnaire = questionnaires.deleteQuestionnaire; - this.getQuestionnaireCaseIds = questionnaires.getQuestionnaireCaseIds; - this.getQuestionnaireModes = questionnaires.getQuestionnaireModes; - this.getQuestionnaireSettings = questionnaires.getQuestionnaireSettings; - this.activateQuestionnaire = questionnaires.activateQuestionnaire; - this.deactivateQuestionnaire = questionnaires.deactivateQuestionnaire; - this.getDaybatch = daybatch.getDaybatch; - this.addDaybatch = daybatch.addDaybatch; - this.getSurveyDays = daybatch.getSurveyDays; - this.addSurveyDays = daybatch.addSurveyDays; - this.getCase = cases.getCase; - this.getCaseMultikey = cases.getCaseMultikey; - this.addCase = cases.addCase; - this.updateCase = cases.updateCase; - this.addCaseMultikey = cases.addCaseMultikey; - this.getMultikeyQueryString = cases.getMultikeyQueryString; - this.getCaseStatus = cases.getCaseStatus; - this.getCaseEditInformation = cases.getCaseEditInformation; - this.getDiagnostics = diagnostics.getDiagnostics; - this.getQuestionnaireReportData = reports.getQuestionnaireReportData; - this.blaiseApiUrl = blaiseApiUrl; - this.httpClient = axios_1.default.create(); - if ((config === null || config === void 0 ? void 0 : config.timeoutInMs) !== undefined) { - this.httpClient.defaults.timeout = config.timeoutInMs; - } - if (config === null || config === void 0 ? void 0 : config.blaiseApiClientId) { - this.blaiseIapProvider = new blaise_iap_node_provider_1.default(config.blaiseApiClientId); - } - } - // eslint-disable-next-line class-methods-use-this - BlaiseApiClient.prototype.url = function (url) { - var formattedUrl = url; - if (!formattedUrl.startsWith('/')) { - formattedUrl = "/".concat(formattedUrl); - } - return formattedUrl; - }; - // eslint-disable-next-line @typescript-eslint/no-explicit-any - BlaiseApiClient.prototype.get = function (url) { - return __awaiter(this, void 0, void 0, function () { - var config, response; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this.axiosConfig()]; - case 1: - config = _a.sent(); - return [4 /*yield*/, this.httpClient.get("".concat(this.blaiseApiUrl).concat(this.url(url)), config)]; - case 2: - response = _a.sent(); - return [2 /*return*/, response.data]; - } - }); - }); - }; - // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types - BlaiseApiClient.prototype.post = function (url, data) { - return __awaiter(this, void 0, void 0, function () { - var config, response; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this.axiosConfig()]; - case 1: - config = _a.sent(); - return [4 /*yield*/, this.httpClient.post("".concat(this.blaiseApiUrl).concat(this.url(url)), data, config)]; - case 2: - response = _a.sent(); - return [2 /*return*/, response.data]; - } - }); - }); - }; - // eslint-disable-next-line @typescript-eslint/no-explicit-any - BlaiseApiClient.prototype.delete = function (url) { - return __awaiter(this, void 0, void 0, function () { - var config, response; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this.axiosConfig()]; - case 1: - config = _a.sent(); - return [4 /*yield*/, this.httpClient.delete("".concat(this.blaiseApiUrl).concat(this.url(url)), config)]; - case 2: - response = _a.sent(); - return [2 /*return*/, response.data]; - } - }); - }); - }; - // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-redundant-type-constituents - BlaiseApiClient.prototype.patch = function (url, data) { - if (data === void 0) { data = undefined; } - return __awaiter(this, void 0, void 0, function () { - var config, response; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this.axiosConfig()]; - case 1: - config = _a.sent(); - return [4 /*yield*/, this.httpClient.patch("".concat(this.blaiseApiUrl).concat(this.url(url)), data, config)]; - case 2: - response = _a.sent(); - return [2 /*return*/, response.data]; - } - }); - }); - }; - BlaiseApiClient.prototype.axiosConfig = function () { - return __awaiter(this, void 0, void 0, function () { - var config; - var _a; - return __generator(this, function (_b) { - switch (_b.label) { - case 0: - config = {}; - if (!this.blaiseIapProvider) return [3 /*break*/, 2]; - _a = {}; - return [4 /*yield*/, this.blaiseIapProvider.getAuthHeader()]; - case 1: - config = (_a.headers = _b.sent(), _a); - _b.label = 2; - case 2: return [2 /*return*/, config]; - } - }); - }); - }; - return BlaiseApiClient; -}()); -exports.default = BlaiseApiClient; -__exportStar(require("./interfaces/questionnaire"), exports); -__exportStar(require("./interfaces/diagnostic"), exports); -__exportStar(require("./interfaces/case"), exports); -__exportStar(require("./interfaces/user"), exports); -__exportStar(require("./interfaces/daybatch"), exports); -__exportStar(require("./interfaces/questionnaireReport"), exports); -__exportStar(require("./enums/caseOutcome"), exports); -__exportStar(require("./enums/editedStatus"), exports); -__exportStar(require("./types/caseData"), exports); -__exportStar(require("./types/surveyDays"), exports); -__exportStar(require("./mockObjects/caseMockObjects"), exports); -__exportStar(require("./mockObjects/diagnosticMockObjects"), exports); -__exportStar(require("./mockObjects/questionnaireMockObjects"), exports); -__exportStar(require("./mockObjects/userMockObjects"), exports); -__exportStar(require("./mockObjects/daybatchMockObjects"), exports); -__exportStar(require("./mockObjects/questionnaireReportMockObjects"), exports); diff --git a/lib/cjs/enums/caseOutcome.d.ts b/lib/cjs/enums/caseOutcome.d.ts deleted file mode 100644 index 49b6890..0000000 --- a/lib/cjs/enums/caseOutcome.d.ts +++ /dev/null @@ -1,41 +0,0 @@ -export declare enum CaseOutcome { - None = 0, - Completed = 110, - CompletedNudge = 120, - CompletedProxy = 130, - Partial = 210, - AppointmentMade = 300, - NonContact = 310, - HQRefusal = 430, - NotAvailable = 440, - HardRefusal = 460, - SoftRefusal = 461, - LanguageDifficultiesHeadOffice = 541, - LanguageDifficultiesInterviewer = 542, - WrongNumber = 542, - DeleteRequestedCompleted = 561, - DeleteRequestedPartial = 562, - IneligibleVacant = 540, - IneligibleNonResidential = 551, - IneligibleInstitution = 560, - IneligibleSecondHome = 580, - ConcernsWontTakePart = 360, - RejectTandCs = 380, - LostAccessCode = 373, - UnableToComplete = 370, - NoInternetAccess = 371, - RequestedDifferentMode = 372, - NoTraceOfAddress = 510, - Under16 = 631, - WrongAddress = 640, - BrailleRequested = 411, - LargePrintRequested = 412, - OtherFormat = 413, - DeleteRequested = 390, - RequestedCopyOfData = 791, - ClarificationOnStudyRequested = 792, - AssistanceRequested = 793, - RequestForContext = 794, - QuestionProblem = 795 -} -export default CaseOutcome; diff --git a/lib/cjs/enums/caseOutcome.js b/lib/cjs/enums/caseOutcome.js deleted file mode 100644 index b4e75b3..0000000 --- a/lib/cjs/enums/caseOutcome.js +++ /dev/null @@ -1,47 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.CaseOutcome = void 0; -// eslint-disable-next-line no-shadow -var CaseOutcome; -(function (CaseOutcome) { - CaseOutcome[CaseOutcome["None"] = 0] = "None"; - CaseOutcome[CaseOutcome["Completed"] = 110] = "Completed"; - CaseOutcome[CaseOutcome["CompletedNudge"] = 120] = "CompletedNudge"; - CaseOutcome[CaseOutcome["CompletedProxy"] = 130] = "CompletedProxy"; - CaseOutcome[CaseOutcome["Partial"] = 210] = "Partial"; - CaseOutcome[CaseOutcome["AppointmentMade"] = 300] = "AppointmentMade"; - CaseOutcome[CaseOutcome["NonContact"] = 310] = "NonContact"; - CaseOutcome[CaseOutcome["HQRefusal"] = 430] = "HQRefusal"; - CaseOutcome[CaseOutcome["NotAvailable"] = 440] = "NotAvailable"; - CaseOutcome[CaseOutcome["HardRefusal"] = 460] = "HardRefusal"; - CaseOutcome[CaseOutcome["SoftRefusal"] = 461] = "SoftRefusal"; - CaseOutcome[CaseOutcome["LanguageDifficultiesHeadOffice"] = 541] = "LanguageDifficultiesHeadOffice"; - CaseOutcome[CaseOutcome["LanguageDifficultiesInterviewer"] = 542] = "LanguageDifficultiesInterviewer"; - // eslint-disable-next-line @typescript-eslint/no-duplicate-enum-values - CaseOutcome[CaseOutcome["WrongNumber"] = 542] = "WrongNumber"; - CaseOutcome[CaseOutcome["DeleteRequestedCompleted"] = 561] = "DeleteRequestedCompleted"; - CaseOutcome[CaseOutcome["DeleteRequestedPartial"] = 562] = "DeleteRequestedPartial"; - CaseOutcome[CaseOutcome["IneligibleVacant"] = 540] = "IneligibleVacant"; - CaseOutcome[CaseOutcome["IneligibleNonResidential"] = 551] = "IneligibleNonResidential"; - CaseOutcome[CaseOutcome["IneligibleInstitution"] = 560] = "IneligibleInstitution"; - CaseOutcome[CaseOutcome["IneligibleSecondHome"] = 580] = "IneligibleSecondHome"; - CaseOutcome[CaseOutcome["ConcernsWontTakePart"] = 360] = "ConcernsWontTakePart"; - CaseOutcome[CaseOutcome["RejectTandCs"] = 380] = "RejectTandCs"; - CaseOutcome[CaseOutcome["LostAccessCode"] = 373] = "LostAccessCode"; - CaseOutcome[CaseOutcome["UnableToComplete"] = 370] = "UnableToComplete"; - CaseOutcome[CaseOutcome["NoInternetAccess"] = 371] = "NoInternetAccess"; - CaseOutcome[CaseOutcome["RequestedDifferentMode"] = 372] = "RequestedDifferentMode"; - CaseOutcome[CaseOutcome["NoTraceOfAddress"] = 510] = "NoTraceOfAddress"; - CaseOutcome[CaseOutcome["Under16"] = 631] = "Under16"; - CaseOutcome[CaseOutcome["WrongAddress"] = 640] = "WrongAddress"; - CaseOutcome[CaseOutcome["BrailleRequested"] = 411] = "BrailleRequested"; - CaseOutcome[CaseOutcome["LargePrintRequested"] = 412] = "LargePrintRequested"; - CaseOutcome[CaseOutcome["OtherFormat"] = 413] = "OtherFormat"; - CaseOutcome[CaseOutcome["DeleteRequested"] = 390] = "DeleteRequested"; - CaseOutcome[CaseOutcome["RequestedCopyOfData"] = 791] = "RequestedCopyOfData"; - CaseOutcome[CaseOutcome["ClarificationOnStudyRequested"] = 792] = "ClarificationOnStudyRequested"; - CaseOutcome[CaseOutcome["AssistanceRequested"] = 793] = "AssistanceRequested"; - CaseOutcome[CaseOutcome["RequestForContext"] = 794] = "RequestForContext"; - CaseOutcome[CaseOutcome["QuestionProblem"] = 795] = "QuestionProblem"; -})(CaseOutcome = exports.CaseOutcome || (exports.CaseOutcome = {})); -exports.default = CaseOutcome; diff --git a/lib/cjs/enums/editedStatus.d.ts b/lib/cjs/enums/editedStatus.d.ts deleted file mode 100644 index 4ab6f7b..0000000 --- a/lib/cjs/enums/editedStatus.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -export declare enum EditedStatus { - NotStarted = 0, - Started = 1, - Query = 2, - Finished = 3 -} -export default EditedStatus; diff --git a/lib/cjs/enums/editedStatus.js b/lib/cjs/enums/editedStatus.js deleted file mode 100644 index ceba97e..0000000 --- a/lib/cjs/enums/editedStatus.js +++ /dev/null @@ -1,12 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.EditedStatus = void 0; -// eslint-disable-next-line no-shadow -var EditedStatus; -(function (EditedStatus) { - EditedStatus[EditedStatus["NotStarted"] = 0] = "NotStarted"; - EditedStatus[EditedStatus["Started"] = 1] = "Started"; - EditedStatus[EditedStatus["Query"] = 2] = "Query"; - EditedStatus[EditedStatus["Finished"] = 3] = "Finished"; -})(EditedStatus = exports.EditedStatus || (exports.EditedStatus = {})); -exports.default = EditedStatus; diff --git a/lib/cjs/enums/organisation.d.ts b/lib/cjs/enums/organisation.d.ts deleted file mode 100644 index fbee909..0000000 --- a/lib/cjs/enums/organisation.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -export declare enum Organisation { - ONS = 1, - NatCen = 2, - Nisra = 3 -} -export default Organisation; diff --git a/lib/cjs/enums/organisation.js b/lib/cjs/enums/organisation.js deleted file mode 100644 index 6f1e199..0000000 --- a/lib/cjs/enums/organisation.js +++ /dev/null @@ -1,11 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Organisation = void 0; -// eslint-disable-next-line no-shadow -var Organisation; -(function (Organisation) { - Organisation[Organisation["ONS"] = 1] = "ONS"; - Organisation[Organisation["NatCen"] = 2] = "NatCen"; - Organisation[Organisation["Nisra"] = 3] = "Nisra"; -})(Organisation = exports.Organisation || (exports.Organisation = {})); -exports.default = Organisation; diff --git a/lib/cjs/functions/caseFunctions.d.ts b/lib/cjs/functions/caseFunctions.d.ts deleted file mode 100644 index 6236798..0000000 --- a/lib/cjs/functions/caseFunctions.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import BlaiseApiClient from '../blaiseApiClient'; -import { CaseEditInformation, CaseResponse, CaseStatus } from '../interfaces/case'; -import { CaseData } from '../types/caseData'; -export declare function getCase(this: BlaiseApiClient, serverpark: string, questionnaireName: string, caseId: string): Promise; -export declare function getMultikeyQueryString(multiKeyValueMap: Map): string; -export declare function getCaseMultikey(this: BlaiseApiClient, serverpark: string, questionnaireName: string, multiKeyValueMap: Map): Promise; -export declare function addCase(this: BlaiseApiClient, serverpark: string, questionnaireName: string, caseId: string, caseFields: CaseData): Promise; -export declare function updateCase(this: BlaiseApiClient, serverpark: string, questionnaireName: string, caseId: string, caseFields: CaseData): Promise; -export declare function addCaseMultikey(this: BlaiseApiClient, serverpark: string, questionnaireName: string, multiKeyValueMap: Map, caseFields: CaseData): Promise; -export declare function getCaseStatus(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise; -export declare function getCaseEditInformation(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise; diff --git a/lib/cjs/functions/caseFunctions.js b/lib/cjs/functions/caseFunctions.js deleted file mode 100644 index 3250c56..0000000 --- a/lib/cjs/functions/caseFunctions.js +++ /dev/null @@ -1,106 +0,0 @@ -"use strict"; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __generator = (this && this.__generator) || function (thisArg, body) { - var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; - function verb(n) { return function (v) { return step([n, v]); }; } - function step(op) { - if (f) throw new TypeError("Generator is already executing."); - while (g && (g = 0, op[0] && (_ = 0)), _) try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; - if (y = 0, t) op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: case 1: t = op; break; - case 4: _.label++; return { value: op[1], done: false }; - case 5: _.label++; y = op[1]; op = [0]; continue; - case 7: op = _.ops.pop(); _.trys.pop(); continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } - if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } - if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } - if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } - if (t[2]) _.ops.pop(); - _.trys.pop(); continue; - } - op = body.call(thisArg, _); - } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } - if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; - } -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.getCaseEditInformation = exports.getCaseStatus = exports.addCaseMultikey = exports.updateCase = exports.addCase = exports.getCaseMultikey = exports.getMultikeyQueryString = exports.getCase = void 0; -function getCase(serverpark, questionnaireName, caseId) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/cases/").concat(caseId))]; - }); - }); -} -exports.getCase = getCase; -function getMultikeyQueryString(multiKeyValueMap) { - var keyNamesQueryString = "keyNames=".concat(Array.from(multiKeyValueMap.keys()).join('&keyNames=')); - var keyValuesQueryString = "keyValues=".concat(Array.from(multiKeyValueMap.values()).join('&keyValues=')); - var keyValueQueryString = "".concat(keyNamesQueryString, "&").concat(keyValuesQueryString); - return keyValueQueryString; -} -exports.getMultikeyQueryString = getMultikeyQueryString; -function getCaseMultikey(serverpark, questionnaireName, multiKeyValueMap) { - return __awaiter(this, void 0, void 0, function () { - var queryString; - return __generator(this, function (_a) { - queryString = getMultikeyQueryString(multiKeyValueMap); - return [2 /*return*/, this.get("api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/cases/multikey?").concat(queryString))]; - }); - }); -} -exports.getCaseMultikey = getCaseMultikey; -function addCase(serverpark, questionnaireName, caseId, caseFields) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.post("api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/cases/").concat(caseId), caseFields)]; - }); - }); -} -exports.addCase = addCase; -function updateCase(serverpark, questionnaireName, caseId, caseFields) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.patch("api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/cases/").concat(caseId), caseFields)]; - }); - }); -} -exports.updateCase = updateCase; -function addCaseMultikey(serverpark, questionnaireName, multiKeyValueMap, caseFields) { - return __awaiter(this, void 0, void 0, function () { - var queryString; - return __generator(this, function (_a) { - queryString = getMultikeyQueryString(multiKeyValueMap); - return [2 /*return*/, this.post("api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/cases/multikey?").concat(queryString), caseFields)]; - }); - }); -} -exports.addCaseMultikey = addCaseMultikey; -function getCaseStatus(serverpark, questionnaireName) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/cases/status"))]; - }); - }); -} -exports.getCaseStatus = getCaseStatus; -function getCaseEditInformation(serverpark, questionnaireName) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/cases/edit"))]; - }); - }); -} -exports.getCaseEditInformation = getCaseEditInformation; diff --git a/lib/cjs/functions/daybatchFunctions.d.ts b/lib/cjs/functions/daybatchFunctions.d.ts deleted file mode 100644 index 551226a..0000000 --- a/lib/cjs/functions/daybatchFunctions.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import BlaiseApiClient from '../blaiseApiClient'; -import { DaybatchResponse, DaybatchSettings } from '../interfaces/daybatch'; -import { SurveyDays } from '../types/surveyDays'; -export declare function getDaybatch(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise; -export declare function addDaybatch(this: BlaiseApiClient, serverpark: string, questionnaireName: string, daybatchSettings: DaybatchSettings): Promise; -export declare function getSurveyDays(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise; -export declare function addSurveyDays(this: BlaiseApiClient, serverpark: string, questionnaireName: string, surveyDays: SurveyDays): Promise; diff --git a/lib/cjs/functions/daybatchFunctions.js b/lib/cjs/functions/daybatchFunctions.js deleted file mode 100644 index cb17b27..0000000 --- a/lib/cjs/functions/daybatchFunctions.js +++ /dev/null @@ -1,78 +0,0 @@ -"use strict"; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __generator = (this && this.__generator) || function (thisArg, body) { - var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; - function verb(n) { return function (v) { return step([n, v]); }; } - function step(op) { - if (f) throw new TypeError("Generator is already executing."); - while (g && (g = 0, op[0] && (_ = 0)), _) try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; - if (y = 0, t) op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: case 1: t = op; break; - case 4: _.label++; return { value: op[1], done: false }; - case 5: _.label++; y = op[1]; op = [0]; continue; - case 7: op = _.ops.pop(); _.trys.pop(); continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } - if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } - if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } - if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } - if (t[2]) _.ops.pop(); - _.trys.pop(); continue; - } - op = body.call(thisArg, _); - } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } - if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; - } -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.addSurveyDays = exports.getSurveyDays = exports.addDaybatch = exports.getDaybatch = void 0; -function getDaybatch(serverpark, questionnaireName) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("/api/v2/cati/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/daybatch"))]; - }); - }); -} -exports.getDaybatch = getDaybatch; -function addDaybatch(serverpark, questionnaireName, daybatchSettings) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.post("/api/v2/cati/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/daybatch"), daybatchSettings)]; - }); - }); -} -exports.addDaybatch = addDaybatch; -function getSurveyDays(serverpark, questionnaireName) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("api/v2/cati/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/surveydays"))]; - }); - }); -} -exports.getSurveyDays = getSurveyDays; -function addSurveyDays(serverpark, questionnaireName, surveyDays) { - return __awaiter(this, void 0, void 0, function () { - var formattedSurveyDays; - return __generator(this, function (_a) { - formattedSurveyDays = surveyDays.map(function (surveyDay) { - if (surveyDay instanceof Date) { - return surveyDay.toISOString(); - } - return surveyDay; - }); - return [2 /*return*/, this.post("api/v2/cati/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/surveydays"), formattedSurveyDays)]; - }); - }); -} -exports.addSurveyDays = addSurveyDays; diff --git a/lib/cjs/functions/diagnosticFunctions.d.ts b/lib/cjs/functions/diagnosticFunctions.d.ts deleted file mode 100644 index b408f20..0000000 --- a/lib/cjs/functions/diagnosticFunctions.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import BlaiseApiClient from '../blaiseApiClient'; -import { Diagnostic } from '../interfaces/diagnostic'; -export declare function getDiagnostics(this: BlaiseApiClient): Promise; -export default getDiagnostics; diff --git a/lib/cjs/functions/diagnosticFunctions.js b/lib/cjs/functions/diagnosticFunctions.js deleted file mode 100644 index d67a34e..0000000 --- a/lib/cjs/functions/diagnosticFunctions.js +++ /dev/null @@ -1,48 +0,0 @@ -"use strict"; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __generator = (this && this.__generator) || function (thisArg, body) { - var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; - function verb(n) { return function (v) { return step([n, v]); }; } - function step(op) { - if (f) throw new TypeError("Generator is already executing."); - while (g && (g = 0, op[0] && (_ = 0)), _) try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; - if (y = 0, t) op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: case 1: t = op; break; - case 4: _.label++; return { value: op[1], done: false }; - case 5: _.label++; y = op[1]; op = [0]; continue; - case 7: op = _.ops.pop(); _.trys.pop(); continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } - if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } - if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } - if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } - if (t[2]) _.ops.pop(); - _.trys.pop(); continue; - } - op = body.call(thisArg, _); - } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } - if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; - } -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.getDiagnostics = void 0; -function getDiagnostics() { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get('/api/v2/health/diagnosis')]; - }); - }); -} -exports.getDiagnostics = getDiagnostics; -exports.default = getDiagnostics; diff --git a/lib/cjs/functions/questionnaireFunctions.d.ts b/lib/cjs/functions/questionnaireFunctions.d.ts deleted file mode 100644 index ee385e5..0000000 --- a/lib/cjs/functions/questionnaireFunctions.d.ts +++ /dev/null @@ -1,16 +0,0 @@ -import BlaiseApiClient from '../blaiseApiClient'; -import { InstallQuestionnaire, InstallQuestionnaireResponse, Questionnaire, QuestionnaireSettings } from '../interfaces/questionnaire'; -export declare function getAllQuestionnairesWithCatiData(this: BlaiseApiClient): Promise; -export declare function getQuestionnairesWithCatiData(this: BlaiseApiClient, serverpark: string): Promise; -export declare function getQuestionnaireWithCatiData(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise; -export declare function getQuestionnaires(this: BlaiseApiClient, serverpark: string): Promise; -export declare function questionnaireExists(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise; -export declare function doesQuestionnaireHaveMode(this: BlaiseApiClient, serverpark: string, questionnaireName: string, mode: string): Promise; -export declare function getQuestionnaire(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise; -export declare function installQuestionnaire(this: BlaiseApiClient, serverpark: string, questionnaire: InstallQuestionnaire): Promise; -export declare function deleteQuestionnaire(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise; -export declare function getQuestionnaireCaseIds(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise; -export declare function getQuestionnaireModes(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise; -export declare function getQuestionnaireSettings(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise; -export declare function activateQuestionnaire(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise; -export declare function deactivateQuestionnaire(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise; diff --git a/lib/cjs/functions/questionnaireFunctions.js b/lib/cjs/functions/questionnaireFunctions.js deleted file mode 100644 index 36516e4..0000000 --- a/lib/cjs/functions/questionnaireFunctions.js +++ /dev/null @@ -1,151 +0,0 @@ -"use strict"; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __generator = (this && this.__generator) || function (thisArg, body) { - var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; - function verb(n) { return function (v) { return step([n, v]); }; } - function step(op) { - if (f) throw new TypeError("Generator is already executing."); - while (g && (g = 0, op[0] && (_ = 0)), _) try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; - if (y = 0, t) op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: case 1: t = op; break; - case 4: _.label++; return { value: op[1], done: false }; - case 5: _.label++; y = op[1]; op = [0]; continue; - case 7: op = _.ops.pop(); _.trys.pop(); continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } - if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } - if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } - if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } - if (t[2]) _.ops.pop(); - _.trys.pop(); continue; - } - op = body.call(thisArg, _); - } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } - if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; - } -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.deactivateQuestionnaire = exports.activateQuestionnaire = exports.getQuestionnaireSettings = exports.getQuestionnaireModes = exports.getQuestionnaireCaseIds = exports.deleteQuestionnaire = exports.installQuestionnaire = exports.getQuestionnaire = exports.doesQuestionnaireHaveMode = exports.questionnaireExists = exports.getQuestionnaires = exports.getQuestionnaireWithCatiData = exports.getQuestionnairesWithCatiData = exports.getAllQuestionnairesWithCatiData = void 0; -function getAllQuestionnairesWithCatiData() { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get('/api/v2/cati/questionnaires')]; - }); - }); -} -exports.getAllQuestionnairesWithCatiData = getAllQuestionnairesWithCatiData; -function getQuestionnairesWithCatiData(serverpark) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("/api/v2/cati/serverparks/".concat(serverpark, "/questionnaires"))]; - }); - }); -} -exports.getQuestionnairesWithCatiData = getQuestionnairesWithCatiData; -function getQuestionnaireWithCatiData(serverpark, questionnaireName) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("/api/v2/cati/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName))]; - }); - }); -} -exports.getQuestionnaireWithCatiData = getQuestionnaireWithCatiData; -function getQuestionnaires(serverpark) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("/api/v2/serverparks/".concat(serverpark, "/questionnaires"))]; - }); - }); -} -exports.getQuestionnaires = getQuestionnaires; -function questionnaireExists(serverpark, questionnaireName) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("/api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/exists"))]; - }); - }); -} -exports.questionnaireExists = questionnaireExists; -function doesQuestionnaireHaveMode(serverpark, questionnaireName, mode) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("/api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/modes/").concat(mode))]; - }); - }); -} -exports.doesQuestionnaireHaveMode = doesQuestionnaireHaveMode; -function getQuestionnaire(serverpark, questionnaireName) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("/api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName))]; - }); - }); -} -exports.getQuestionnaire = getQuestionnaire; -function installQuestionnaire(serverpark, questionnaire) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.post("/api/v2/serverparks/".concat(serverpark, "/questionnaires"), questionnaire)]; - }); - }); -} -exports.installQuestionnaire = installQuestionnaire; -function deleteQuestionnaire(serverpark, questionnaireName) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.delete("/api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "?name=").concat(questionnaireName))]; - }); - }); -} -exports.deleteQuestionnaire = deleteQuestionnaire; -function getQuestionnaireCaseIds(serverpark, questionnaireName) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("/api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/cases/ids"))]; - }); - }); -} -exports.getQuestionnaireCaseIds = getQuestionnaireCaseIds; -function getQuestionnaireModes(serverpark, questionnaireName) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("/api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/modes"))]; - }); - }); -} -exports.getQuestionnaireModes = getQuestionnaireModes; -function getQuestionnaireSettings(serverpark, questionnaireName) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("/api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/settings"))]; - }); - }); -} -exports.getQuestionnaireSettings = getQuestionnaireSettings; -function activateQuestionnaire(serverpark, questionnaireName) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.patch("api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/activate"))]; - }); - }); -} -exports.activateQuestionnaire = activateQuestionnaire; -function deactivateQuestionnaire(serverpark, questionnaireName) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.patch("api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/deactivate"))]; - }); - }); -} -exports.deactivateQuestionnaire = deactivateQuestionnaire; diff --git a/lib/cjs/functions/questionnaireReportFunctions.d.ts b/lib/cjs/functions/questionnaireReportFunctions.d.ts deleted file mode 100644 index 3416c07..0000000 --- a/lib/cjs/functions/questionnaireReportFunctions.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import BlaiseApiClient from '../blaiseApiClient'; -import { QuestionnaireReport } from '../interfaces/questionnaireReport'; -export declare function getQuestionnaireReportData(this: BlaiseApiClient, serverpark: string, questionnaireName: string, fieldIds: string[]): Promise; -export default getQuestionnaireReportData; diff --git a/lib/cjs/functions/questionnaireReportFunctions.js b/lib/cjs/functions/questionnaireReportFunctions.js deleted file mode 100644 index c15ed92..0000000 --- a/lib/cjs/functions/questionnaireReportFunctions.js +++ /dev/null @@ -1,53 +0,0 @@ -"use strict"; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __generator = (this && this.__generator) || function (thisArg, body) { - var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; - function verb(n) { return function (v) { return step([n, v]); }; } - function step(op) { - if (f) throw new TypeError("Generator is already executing."); - while (g && (g = 0, op[0] && (_ = 0)), _) try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; - if (y = 0, t) op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: case 1: t = op; break; - case 4: _.label++; return { value: op[1], done: false }; - case 5: _.label++; y = op[1]; op = [0]; continue; - case 7: op = _.ops.pop(); _.trys.pop(); continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } - if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } - if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } - if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } - if (t[2]) _.ops.pop(); - _.trys.pop(); continue; - } - op = body.call(thisArg, _); - } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } - if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; - } -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.getQuestionnaireReportData = void 0; -function getQuestionnaireReportData(serverpark, questionnaireName, fieldIds) { - return __awaiter(this, void 0, void 0, function () { - var queryArray; - return __generator(this, function (_a) { - queryArray = []; - fieldIds.forEach(function (fieldId) { - queryArray.push("fieldIds=".concat(fieldId)); - }); - return [2 /*return*/, this.get("/api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/report?").concat(queryArray.join('&')))]; - }); - }); -} -exports.getQuestionnaireReportData = getQuestionnaireReportData; -exports.default = getQuestionnaireReportData; diff --git a/lib/cjs/functions/userFunctions.d.ts b/lib/cjs/functions/userFunctions.d.ts deleted file mode 100644 index 4d284b5..0000000 --- a/lib/cjs/functions/userFunctions.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import BlaiseApiClient from '../blaiseApiClient'; -import { NewUser, User, UserRole } from '../interfaces/user'; -export declare function getUser(this: BlaiseApiClient, username: string): Promise; -export declare function getUsers(this: BlaiseApiClient): Promise; -export declare function validatePassword(this: BlaiseApiClient, username: string, password: string): Promise; -export declare function createUser(this: BlaiseApiClient, user: NewUser): Promise; -export declare function deleteUser(this: BlaiseApiClient, username: string): Promise; -export declare function getUserRoles(this: BlaiseApiClient): Promise; -export declare function changeUserRole(this: BlaiseApiClient, username: string, role: string): Promise; -export declare function changeUserServerParks(this: BlaiseApiClient, username: string, serverParks: string[], defaultServerPark: string): Promise; -export declare function changePassword(this: BlaiseApiClient, username: string, password: string): Promise; diff --git a/lib/cjs/functions/userFunctions.js b/lib/cjs/functions/userFunctions.js deleted file mode 100644 index b58ce6d..0000000 --- a/lib/cjs/functions/userFunctions.js +++ /dev/null @@ -1,119 +0,0 @@ -"use strict"; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __generator = (this && this.__generator) || function (thisArg, body) { - var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; - function verb(n) { return function (v) { return step([n, v]); }; } - function step(op) { - if (f) throw new TypeError("Generator is already executing."); - while (g && (g = 0, op[0] && (_ = 0)), _) try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; - if (y = 0, t) op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: case 1: t = op; break; - case 4: _.label++; return { value: op[1], done: false }; - case 5: _.label++; y = op[1]; op = [0]; continue; - case 7: op = _.ops.pop(); _.trys.pop(); continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } - if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } - if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } - if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } - if (t[2]) _.ops.pop(); - _.trys.pop(); continue; - } - op = body.call(thisArg, _); - } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } - if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; - } -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.changePassword = exports.changeUserServerParks = exports.changeUserRole = exports.getUserRoles = exports.deleteUser = exports.createUser = exports.validatePassword = exports.getUsers = exports.getUser = void 0; -function getUser(username) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("api/v2/users/".concat(username))]; - }); - }); -} -exports.getUser = getUser; -function getUsers() { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get('api/v2/users')]; - }); - }); -} -exports.getUsers = getUsers; -function validatePassword(username, password) { - return __awaiter(this, void 0, void 0, function () { - var validationRequest; - return __generator(this, function (_a) { - validationRequest = { password: password }; - return [2 /*return*/, this.post("api/v2/users/".concat(username, "/validate"), validationRequest)]; - }); - }); -} -exports.validatePassword = validatePassword; -function createUser(user) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.post('/api/v2/users', user)]; - }); - }); -} -exports.createUser = createUser; -function deleteUser(username) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.delete("/api/v2/users/".concat(username))]; - }); - }); -} -exports.deleteUser = deleteUser; -function getUserRoles() { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get('/api/v2/userroles')]; - }); - }); -} -exports.getUserRoles = getUserRoles; -function changeUserRole(username, role) { - return __awaiter(this, void 0, void 0, function () { - var roleRequest; - return __generator(this, function (_a) { - roleRequest = { role: role }; - return [2 /*return*/, this.patch("/api/v2/users/".concat(username, "/role"), roleRequest)]; - }); - }); -} -exports.changeUserRole = changeUserRole; -function changeUserServerParks(username, serverParks, defaultServerPark) { - return __awaiter(this, void 0, void 0, function () { - var serverParksRequest; - return __generator(this, function (_a) { - serverParksRequest = { serverParks: serverParks, defaultServerPark: defaultServerPark }; - return [2 /*return*/, this.patch("/api/v2/users/".concat(username, "/serverparks"), serverParksRequest)]; - }); - }); -} -exports.changeUserServerParks = changeUserServerParks; -function changePassword(username, password) { - return __awaiter(this, void 0, void 0, function () { - var passwordRequest; - return __generator(this, function (_a) { - passwordRequest = { password: password }; - return [2 /*return*/, this.patch("/api/v2/users/".concat(username, "/password"), passwordRequest)]; - }); - }); -} -exports.changePassword = changePassword; diff --git a/lib/cjs/interfaces/blaiseApi.d.ts b/lib/cjs/interfaces/blaiseApi.d.ts deleted file mode 100644 index d672c06..0000000 --- a/lib/cjs/interfaces/blaiseApi.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { Questionnaire } from './questionnaire'; -export interface BlaiseApi { - getQuestionnaires(serverPark: string): Promise; -} diff --git a/lib/cjs/interfaces/blaiseApi.js b/lib/cjs/interfaces/blaiseApi.js deleted file mode 100644 index c8ad2e5..0000000 --- a/lib/cjs/interfaces/blaiseApi.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/lib/cjs/interfaces/blaiseApiConfig.d.ts b/lib/cjs/interfaces/blaiseApiConfig.d.ts deleted file mode 100644 index bfe11b0..0000000 --- a/lib/cjs/interfaces/blaiseApiConfig.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export interface BlaiseApiConfig { - timeoutInMs?: number; - blaiseApiClientId?: string; -} diff --git a/lib/cjs/interfaces/blaiseApiConfig.js b/lib/cjs/interfaces/blaiseApiConfig.js deleted file mode 100644 index c8ad2e5..0000000 --- a/lib/cjs/interfaces/blaiseApiConfig.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/lib/cjs/interfaces/case.d.ts b/lib/cjs/interfaces/case.d.ts deleted file mode 100644 index 9751407..0000000 --- a/lib/cjs/interfaces/case.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { EditedStatus } from '../blaiseApiClient'; -import { CaseOutcome } from '../enums/caseOutcome'; -import Organisation from '../enums/organisation'; -import { CaseData } from '../types/caseData'; -export interface CaseResponse { - caseId: string; - fieldData: CaseData; -} -export interface CaseStatus { - primaryKey: string; - outcome: CaseOutcome; -} -export interface CaseEditInformation { - primaryKey: string; - outcome: CaseOutcome; - assignedTo: string; - interviewer: string; - editedStatus: EditedStatus; - organisation: Organisation; - editUrl: string; - readOnlyUrl: string; -} diff --git a/lib/cjs/interfaces/case.js b/lib/cjs/interfaces/case.js deleted file mode 100644 index c8ad2e5..0000000 --- a/lib/cjs/interfaces/case.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/lib/cjs/interfaces/daybatch.d.ts b/lib/cjs/interfaces/daybatch.d.ts deleted file mode 100644 index 973b236..0000000 --- a/lib/cjs/interfaces/daybatch.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -export interface DaybatchResponse { - dayBatchDate: string; - caseIds: string[]; -} -export interface DaybatchSettings { - dayBatchDate: string; - checkForTreatedCases: boolean; -} diff --git a/lib/cjs/interfaces/daybatch.js b/lib/cjs/interfaces/daybatch.js deleted file mode 100644 index c8ad2e5..0000000 --- a/lib/cjs/interfaces/daybatch.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/lib/cjs/interfaces/diagnostic.d.ts b/lib/cjs/interfaces/diagnostic.d.ts deleted file mode 100644 index 6de4b1a..0000000 --- a/lib/cjs/interfaces/diagnostic.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export interface Diagnostic { - 'health check type': string; - status: string; -} diff --git a/lib/cjs/interfaces/diagnostic.js b/lib/cjs/interfaces/diagnostic.js deleted file mode 100644 index c8ad2e5..0000000 --- a/lib/cjs/interfaces/diagnostic.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/lib/cjs/interfaces/questionnaire.d.ts b/lib/cjs/interfaces/questionnaire.d.ts deleted file mode 100644 index 92c0e5b..0000000 --- a/lib/cjs/interfaces/questionnaire.d.ts +++ /dev/null @@ -1,36 +0,0 @@ -export interface Node { - nodeName: string; - nodeStatus: string; -} -export interface Questionnaire { - installDate: string; - name: string; - expired?: boolean; - serverParkName: string; - activeToday?: boolean; - surveyDays?: string[]; - link?: string; - fieldPeriod?: string; - surveyTla?: string; - dataRecordCount?: number; - status?: string; - hasData?: boolean; - nodes?: Node[]; - active?: boolean; - blaiseVersion?: string; -} -export interface InstallQuestionnaire { - questionnaireFile: string; -} -export interface InstallQuestionnaireResponse { - questionnaireFile: string; -} -export interface QuestionnaireSettings { - type: string; - saveSessionOnTimeout: boolean; - saveSessionOnQuit: boolean; - deleteSessionOnTimeout: boolean; - deleteSessionOnQuit: boolean; - sessionTimeout: number; - applyRecordLocking: boolean; -} diff --git a/lib/cjs/interfaces/questionnaire.js b/lib/cjs/interfaces/questionnaire.js deleted file mode 100644 index c8ad2e5..0000000 --- a/lib/cjs/interfaces/questionnaire.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/lib/cjs/interfaces/questionnaireReport.d.ts b/lib/cjs/interfaces/questionnaireReport.d.ts deleted file mode 100644 index 01f1ec3..0000000 --- a/lib/cjs/interfaces/questionnaireReport.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { CaseData } from '../types/caseData'; -export interface QuestionnaireReport { - questionnaireName: string; - questionnaireId: string; - reportingData: CaseData[]; -} diff --git a/lib/cjs/interfaces/questionnaireReport.js b/lib/cjs/interfaces/questionnaireReport.js deleted file mode 100644 index c8ad2e5..0000000 --- a/lib/cjs/interfaces/questionnaireReport.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/lib/cjs/interfaces/survey.d.ts b/lib/cjs/interfaces/survey.d.ts deleted file mode 100644 index 9ff2bfc..0000000 --- a/lib/cjs/interfaces/survey.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { Questionnaire } from './questionnaire'; -export interface Survey { - questionnaires: Questionnaire[]; - survey: string; -} diff --git a/lib/cjs/interfaces/survey.js b/lib/cjs/interfaces/survey.js deleted file mode 100644 index c8ad2e5..0000000 --- a/lib/cjs/interfaces/survey.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/lib/cjs/interfaces/user.d.ts b/lib/cjs/interfaces/user.d.ts deleted file mode 100644 index 17e2c7a..0000000 --- a/lib/cjs/interfaces/user.d.ts +++ /dev/null @@ -1,20 +0,0 @@ -export interface User { - name: string; - role: string; - serverParks: string[]; - defaultServerPark: string; -} -export interface PasswordRequest { - password: string; -} -export interface RoleRequest { - role: string; -} -export interface UserRole { - name: string; - description: string; - permissions: string[]; -} -export interface NewUser extends User { - password: string; -} diff --git a/lib/cjs/interfaces/user.js b/lib/cjs/interfaces/user.js deleted file mode 100644 index c8ad2e5..0000000 --- a/lib/cjs/interfaces/user.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/lib/cjs/mockObjects/caseMockObjects.d.ts b/lib/cjs/mockObjects/caseMockObjects.d.ts deleted file mode 100644 index 4a073fa..0000000 --- a/lib/cjs/mockObjects/caseMockObjects.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { CaseEditInformation, CaseResponse, CaseStatus } from '../interfaces/case'; -export declare const CaseStatusListMockObject: CaseStatus[]; -export declare const CaseResponseMockObject: CaseResponse; -export declare const CaseEditInformationListMockObject: CaseEditInformation[]; diff --git a/lib/cjs/mockObjects/caseMockObjects.js b/lib/cjs/mockObjects/caseMockObjects.js deleted file mode 100644 index b7a84af..0000000 --- a/lib/cjs/mockObjects/caseMockObjects.js +++ /dev/null @@ -1,65 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.CaseEditInformationListMockObject = exports.CaseResponseMockObject = exports.CaseStatusListMockObject = void 0; -exports.CaseStatusListMockObject = [{ - primaryKey: '1', - outcome: 110, - }, { - primaryKey: '2', - outcome: 310, - }, { - primaryKey: '3', - outcome: 0, - }]; -exports.CaseResponseMockObject = { - caseId: '1', - fieldData: { - 'qiD.Serial_Number': '1', - 'qDataBag.Prem1': 'Flat 1', - 'qDataBag.Prem2': 'Richmond House', - 'qDataBag.Prem3': 'Rice Road', - 'qDataBag.Prem4': '', - 'qDataBag.District': 'Gwent', - 'qDataBag.PostTown': 'Newport', - 'qDataBag.PostCode': 'NZ11 4PD', - 'qhAdmin.HOut': '100', - 'qhAdmin.Interviewer[1]': 'rich', - 'dmName[1]': 'Richmond Ricecake', - 'dmDteOfBth[1]': '1980-01-15', - 'dmName[2]': 'Richmond Junior', - 'dmDteOfBth[2]': '2005-04-12', - dmhSize: '2', - }, -}; -exports.CaseEditInformationListMockObject = [ - { - primaryKey: '100101', - outcome: 110, - assignedTo: 'Rich', - interviewer: 'Jane Doe', - editedStatus: 3, - organisation: 1, - editUrl: '', - readOnlyUrl: '', - }, - { - primaryKey: '100102', - outcome: 210, - assignedTo: 'Jake', - interviewer: 'Bob Roberts', - editedStatus: 3, - organisation: 1, - editUrl: '', - readOnlyUrl: '', - }, - { - primaryKey: '100113', - outcome: 430, - assignedTo: 'Jamie', - interviewer: 'Frank Frankinson', - editedStatus: 3, - organisation: 1, - editUrl: '', - readOnlyUrl: '', - }, -]; diff --git a/lib/cjs/mockObjects/daybatchMockObjects.d.ts b/lib/cjs/mockObjects/daybatchMockObjects.d.ts deleted file mode 100644 index 5902f2f..0000000 --- a/lib/cjs/mockObjects/daybatchMockObjects.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { DaybatchResponse, DaybatchSettings } from '../interfaces/daybatch'; -import { SurveyDays } from '../types/surveyDays'; -export declare const QuestionnaireDaybatchCasesMock: DaybatchResponse[]; -export declare const AddDaybatchMock: DaybatchSettings; -export declare const SurveyDaysMock: string[]; -export declare const SurveyDaysDatesMock: SurveyDays; diff --git a/lib/cjs/mockObjects/daybatchMockObjects.js b/lib/cjs/mockObjects/daybatchMockObjects.js deleted file mode 100644 index 5c68ac5..0000000 --- a/lib/cjs/mockObjects/daybatchMockObjects.js +++ /dev/null @@ -1,24 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.SurveyDaysDatesMock = exports.SurveyDaysMock = exports.AddDaybatchMock = exports.QuestionnaireDaybatchCasesMock = void 0; -exports.QuestionnaireDaybatchCasesMock = [ - { - dayBatchDate: '2021-01-15T14:41:29.4399898+00:00', - caseIds: [ - '100101', - '100102', - '100103', - '100104', - ], - }, -]; -exports.AddDaybatchMock = { - dayBatchDate: '2021-01-15T14:41:29.4399898+00:00', - checkForTreatedCases: true, -}; -exports.SurveyDaysMock = [ - '2021-01-15T14:41:29.4399898+00:00', -]; -exports.SurveyDaysDatesMock = [ - new Date('2021-01-15T14:41:29.4399898+00:00'), -]; diff --git a/lib/cjs/mockObjects/diagnosticMockObjects.d.ts b/lib/cjs/mockObjects/diagnosticMockObjects.d.ts deleted file mode 100644 index 60a9781..0000000 --- a/lib/cjs/mockObjects/diagnosticMockObjects.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { Diagnostic } from '../interfaces/diagnostic'; -export declare const DiagnosticMockObject: Diagnostic[]; -export default DiagnosticMockObject; diff --git a/lib/cjs/mockObjects/diagnosticMockObjects.js b/lib/cjs/mockObjects/diagnosticMockObjects.js deleted file mode 100644 index 9902f66..0000000 --- a/lib/cjs/mockObjects/diagnosticMockObjects.js +++ /dev/null @@ -1,10 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.DiagnosticMockObject = void 0; -exports.DiagnosticMockObject = [ - { 'health check type': 'Connection model', status: 'OK' }, - { 'health check type': 'Blaise connection', status: 'OK' }, - { 'health check type': 'Remote data server connection', status: 'OK' }, - { 'health check type': 'Remote Cati management connection', status: 'OK' }, -]; -exports.default = exports.DiagnosticMockObject; diff --git a/lib/cjs/mockObjects/questionnaireMockObjects.d.ts b/lib/cjs/mockObjects/questionnaireMockObjects.d.ts deleted file mode 100644 index 5441cae..0000000 --- a/lib/cjs/mockObjects/questionnaireMockObjects.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { InstallQuestionnaire, InstallQuestionnaireResponse, Questionnaire, QuestionnaireSettings } from '../interfaces/questionnaire'; -export declare const QuestionnaireListMockObject: Questionnaire[]; -export declare const QuestionnaireMockObject: Questionnaire; -export declare const InstallQuestionnaireMockObject: InstallQuestionnaire; -export declare const InstallQuestionnaireResponseMockObject: InstallQuestionnaireResponse; -export declare const QuestionnaireSettingsMockList: QuestionnaireSettings[]; diff --git a/lib/cjs/mockObjects/questionnaireMockObjects.js b/lib/cjs/mockObjects/questionnaireMockObjects.js deleted file mode 100644 index 46a6619..0000000 --- a/lib/cjs/mockObjects/questionnaireMockObjects.js +++ /dev/null @@ -1,53 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.QuestionnaireSettingsMockList = exports.InstallQuestionnaireResponseMockObject = exports.InstallQuestionnaireMockObject = exports.QuestionnaireMockObject = exports.QuestionnaireListMockObject = void 0; -exports.QuestionnaireListMockObject = [{ - name: 'OPN2101A', - serverParkName: 'gusty', - installDate: '2021-01-15T14:41:29.4399898+00:00', - status: 'Active', - dataRecordCount: 0, - hasData: false, - active: false, - }, { - name: 'OPN2007T', - serverParkName: 'gusty', - installDate: '2021-01-15T15:18:40.1503617+00:00', - status: 'Active', - dataRecordCount: 10, - hasData: true, - active: true, - }, { - name: 'LMS2101_AA1', - serverParkName: 'gusty', - installDate: '2021-01-15T15:26:43.4233454+00:00', - status: 'Active', - dataRecordCount: 0, - hasData: false, - active: false, - }]; -exports.QuestionnaireMockObject = { - name: 'OPN2101A', - serverParkName: 'gusty', - installDate: '2021-01-15T14:41:29.4399898+00:00', - status: 'Active', - dataRecordCount: 0, - hasData: false, - active: false, - blaiseVersion: '5.9.9.2735', -}; -exports.InstallQuestionnaireMockObject = { - questionnaireFile: 'OPN2004A.bpkg', -}; -exports.InstallQuestionnaireResponseMockObject = { - questionnaireFile: 'OPN2004A.bpkg', -}; -exports.QuestionnaireSettingsMockList = [{ - type: 'StrictInterviewing', - saveSessionOnTimeout: true, - saveSessionOnQuit: true, - deleteSessionOnTimeout: true, - deleteSessionOnQuit: true, - sessionTimeout: 15, - applyRecordLocking: true, - }]; diff --git a/lib/cjs/mockObjects/questionnaireReportMockObjects.d.ts b/lib/cjs/mockObjects/questionnaireReportMockObjects.d.ts deleted file mode 100644 index 5af847b..0000000 --- a/lib/cjs/mockObjects/questionnaireReportMockObjects.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { QuestionnaireReport } from '../interfaces/questionnaireReport'; -declare const reportMockObject: QuestionnaireReport; -export default reportMockObject; diff --git a/lib/cjs/mockObjects/questionnaireReportMockObjects.js b/lib/cjs/mockObjects/questionnaireReportMockObjects.js deleted file mode 100644 index 6429166..0000000 --- a/lib/cjs/mockObjects/questionnaireReportMockObjects.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -var reportMockObject = { - questionnaireName: 'FRS2211A', - questionnaireId: '00000000-0000-0000-0000-000000000000', - reportingData: [ - { - 'qiD.Serial_Number': '1', - 'qhAdmin.HOut': '210', - }, - { - 'qiD.Serial_Number': '2', - 'qhAdmin.HOut': '110', - }, - ], -}; -exports.default = reportMockObject; diff --git a/lib/cjs/mockObjects/userMockObjects.d.ts b/lib/cjs/mockObjects/userMockObjects.d.ts deleted file mode 100644 index 5ba43a9..0000000 --- a/lib/cjs/mockObjects/userMockObjects.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { NewUser } from '../interfaces/user'; -export declare const CreateUserMockObject: NewUser; -export declare const CreateUserResponseMockObject: NewUser; diff --git a/lib/cjs/mockObjects/userMockObjects.js b/lib/cjs/mockObjects/userMockObjects.js deleted file mode 100644 index 016f776..0000000 --- a/lib/cjs/mockObjects/userMockObjects.js +++ /dev/null @@ -1,21 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.CreateUserResponseMockObject = exports.CreateUserMockObject = void 0; -exports.CreateUserMockObject = { - password: 'somethingVerySecure', - name: 'Beyonce', - role: 'DST', - serverParks: [ - 'gusty', - ], - defaultServerPark: 'gusty', -}; -exports.CreateUserResponseMockObject = { - password: 'somethingVerySecure', - name: 'Beyonce', - role: 'DST', - serverParks: [ - 'gusty', - ], - defaultServerPark: 'gusty', -}; diff --git a/lib/cjs/types/caseData.d.ts b/lib/cjs/types/caseData.d.ts deleted file mode 100644 index 8ebe586..0000000 --- a/lib/cjs/types/caseData.d.ts +++ /dev/null @@ -1 +0,0 @@ -export type CaseData = Record; diff --git a/lib/cjs/types/caseData.js b/lib/cjs/types/caseData.js deleted file mode 100644 index c8ad2e5..0000000 --- a/lib/cjs/types/caseData.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/lib/cjs/types/surveyDays.d.ts b/lib/cjs/types/surveyDays.d.ts deleted file mode 100644 index 071133c..0000000 --- a/lib/cjs/types/surveyDays.d.ts +++ /dev/null @@ -1 +0,0 @@ -export type SurveyDays = string[] | Date[]; diff --git a/lib/cjs/types/surveyDays.js b/lib/cjs/types/surveyDays.js deleted file mode 100644 index c8ad2e5..0000000 --- a/lib/cjs/types/surveyDays.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/lib/esm/blaiseApiClient.d.ts b/lib/esm/blaiseApiClient.d.ts deleted file mode 100644 index 3be8283..0000000 --- a/lib/esm/blaiseApiClient.d.ts +++ /dev/null @@ -1,76 +0,0 @@ -import { AxiosInstance } from 'axios'; -import BlaiseIapNodeProvider from 'blaise-iap-node-provider'; -import { BlaiseApiConfig } from './interfaces/blaiseApiConfig'; -import { BlaiseApi } from './interfaces/blaiseApi'; -import * as users from './functions/userFunctions'; -import * as questionnaires from './functions/questionnaireFunctions'; -import * as cases from './functions/caseFunctions'; -import * as diagnostics from './functions/diagnosticFunctions'; -import * as daybatch from './functions/daybatchFunctions'; -import * as reports from './functions/questionnaireReportFunctions'; -declare class BlaiseApiClient implements BlaiseApi { - blaiseApiUrl: string; - blaiseIapProvider?: BlaiseIapNodeProvider; - httpClient: AxiosInstance; - constructor(blaiseApiUrl: string, config?: BlaiseApiConfig); - getUser: typeof users.getUser; - getUsers: typeof users.getUsers; - validatePassword: typeof users.validatePassword; - createUser: typeof users.createUser; - deleteUser: typeof users.deleteUser; - getUserRoles: typeof users.getUserRoles; - changePassword: typeof users.changePassword; - changeUserRole: typeof users.changeUserRole; - changeUserServerParks: typeof users.changeUserServerParks; - getAllQuestionnairesWithCatiData: typeof questionnaires.getAllQuestionnairesWithCatiData; - getQuestionnairesWithCatiData: typeof questionnaires.getQuestionnairesWithCatiData; - getQuestionnaireWithCatiData: typeof questionnaires.getQuestionnaireWithCatiData; - getQuestionnaires: typeof questionnaires.getQuestionnaires; - questionnaireExists: typeof questionnaires.questionnaireExists; - doesQuestionnaireHaveMode: typeof questionnaires.doesQuestionnaireHaveMode; - getQuestionnaire: typeof questionnaires.getQuestionnaire; - installQuestionnaire: typeof questionnaires.installQuestionnaire; - deleteQuestionnaire: typeof questionnaires.deleteQuestionnaire; - getQuestionnaireCaseIds: typeof questionnaires.getQuestionnaireCaseIds; - getQuestionnaireModes: typeof questionnaires.getQuestionnaireModes; - getQuestionnaireSettings: typeof questionnaires.getQuestionnaireSettings; - activateQuestionnaire: typeof questionnaires.activateQuestionnaire; - deactivateQuestionnaire: typeof questionnaires.deactivateQuestionnaire; - getDaybatch: typeof daybatch.getDaybatch; - addDaybatch: typeof daybatch.addDaybatch; - getSurveyDays: typeof daybatch.getSurveyDays; - addSurveyDays: typeof daybatch.addSurveyDays; - getCase: typeof cases.getCase; - getCaseMultikey: typeof cases.getCaseMultikey; - addCase: typeof cases.addCase; - updateCase: typeof cases.updateCase; - addCaseMultikey: typeof cases.addCaseMultikey; - getMultikeyQueryString: typeof cases.getMultikeyQueryString; - getCaseStatus: typeof cases.getCaseStatus; - getCaseEditInformation: typeof cases.getCaseEditInformation; - getDiagnostics: typeof diagnostics.getDiagnostics; - getQuestionnaireReportData: typeof reports.getQuestionnaireReportData; - private url; - protected get(url: string): Promise; - protected post(url: string, data: any): Promise; - protected delete(url: string): Promise; - protected patch(url: string, data?: any | undefined): Promise; - private axiosConfig; -} -export default BlaiseApiClient; -export * from './interfaces/questionnaire'; -export * from './interfaces/diagnostic'; -export * from './interfaces/case'; -export * from './interfaces/user'; -export * from './interfaces/daybatch'; -export * from './interfaces/questionnaireReport'; -export * from './enums/caseOutcome'; -export * from './enums/editedStatus'; -export * from './types/caseData'; -export * from './types/surveyDays'; -export * from './mockObjects/caseMockObjects'; -export * from './mockObjects/diagnosticMockObjects'; -export * from './mockObjects/questionnaireMockObjects'; -export * from './mockObjects/userMockObjects'; -export * from './mockObjects/daybatchMockObjects'; -export * from './mockObjects/questionnaireReportMockObjects'; diff --git a/lib/esm/blaiseApiClient.js b/lib/esm/blaiseApiClient.js deleted file mode 100644 index 0878057..0000000 --- a/lib/esm/blaiseApiClient.js +++ /dev/null @@ -1,207 +0,0 @@ -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __generator = (this && this.__generator) || function (thisArg, body) { - var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; - function verb(n) { return function (v) { return step([n, v]); }; } - function step(op) { - if (f) throw new TypeError("Generator is already executing."); - while (g && (g = 0, op[0] && (_ = 0)), _) try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; - if (y = 0, t) op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: case 1: t = op; break; - case 4: _.label++; return { value: op[1], done: false }; - case 5: _.label++; y = op[1]; op = [0]; continue; - case 7: op = _.ops.pop(); _.trys.pop(); continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } - if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } - if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } - if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } - if (t[2]) _.ops.pop(); - _.trys.pop(); continue; - } - op = body.call(thisArg, _); - } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } - if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; - } -}; -import axios from 'axios'; -import BlaiseIapNodeProvider from 'blaise-iap-node-provider'; -import * as users from './functions/userFunctions'; -import * as questionnaires from './functions/questionnaireFunctions'; -import * as cases from './functions/caseFunctions'; -import * as diagnostics from './functions/diagnosticFunctions'; -import * as daybatch from './functions/daybatchFunctions'; -import * as reports from './functions/questionnaireReportFunctions'; -var BlaiseApiClient = /** @class */ (function () { - function BlaiseApiClient(blaiseApiUrl, config) { - this.getUser = users.getUser; - this.getUsers = users.getUsers; - this.validatePassword = users.validatePassword; - this.createUser = users.createUser; - this.deleteUser = users.deleteUser; - this.getUserRoles = users.getUserRoles; - this.changePassword = users.changePassword; - this.changeUserRole = users.changeUserRole; - this.changeUserServerParks = users.changeUserServerParks; - this.getAllQuestionnairesWithCatiData = questionnaires.getAllQuestionnairesWithCatiData; - this.getQuestionnairesWithCatiData = questionnaires.getQuestionnairesWithCatiData; - this.getQuestionnaireWithCatiData = questionnaires.getQuestionnaireWithCatiData; - this.getQuestionnaires = questionnaires.getQuestionnaires; - this.questionnaireExists = questionnaires.questionnaireExists; - this.doesQuestionnaireHaveMode = questionnaires.doesQuestionnaireHaveMode; - this.getQuestionnaire = questionnaires.getQuestionnaire; - this.installQuestionnaire = questionnaires.installQuestionnaire; - this.deleteQuestionnaire = questionnaires.deleteQuestionnaire; - this.getQuestionnaireCaseIds = questionnaires.getQuestionnaireCaseIds; - this.getQuestionnaireModes = questionnaires.getQuestionnaireModes; - this.getQuestionnaireSettings = questionnaires.getQuestionnaireSettings; - this.activateQuestionnaire = questionnaires.activateQuestionnaire; - this.deactivateQuestionnaire = questionnaires.deactivateQuestionnaire; - this.getDaybatch = daybatch.getDaybatch; - this.addDaybatch = daybatch.addDaybatch; - this.getSurveyDays = daybatch.getSurveyDays; - this.addSurveyDays = daybatch.addSurveyDays; - this.getCase = cases.getCase; - this.getCaseMultikey = cases.getCaseMultikey; - this.addCase = cases.addCase; - this.updateCase = cases.updateCase; - this.addCaseMultikey = cases.addCaseMultikey; - this.getMultikeyQueryString = cases.getMultikeyQueryString; - this.getCaseStatus = cases.getCaseStatus; - this.getCaseEditInformation = cases.getCaseEditInformation; - this.getDiagnostics = diagnostics.getDiagnostics; - this.getQuestionnaireReportData = reports.getQuestionnaireReportData; - this.blaiseApiUrl = blaiseApiUrl; - this.httpClient = axios.create(); - if ((config === null || config === void 0 ? void 0 : config.timeoutInMs) !== undefined) { - this.httpClient.defaults.timeout = config.timeoutInMs; - } - if (config === null || config === void 0 ? void 0 : config.blaiseApiClientId) { - this.blaiseIapProvider = new BlaiseIapNodeProvider(config.blaiseApiClientId); - } - } - // eslint-disable-next-line class-methods-use-this - BlaiseApiClient.prototype.url = function (url) { - var formattedUrl = url; - if (!formattedUrl.startsWith('/')) { - formattedUrl = "/".concat(formattedUrl); - } - return formattedUrl; - }; - // eslint-disable-next-line @typescript-eslint/no-explicit-any - BlaiseApiClient.prototype.get = function (url) { - return __awaiter(this, void 0, void 0, function () { - var config, response; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this.axiosConfig()]; - case 1: - config = _a.sent(); - return [4 /*yield*/, this.httpClient.get("".concat(this.blaiseApiUrl).concat(this.url(url)), config)]; - case 2: - response = _a.sent(); - return [2 /*return*/, response.data]; - } - }); - }); - }; - // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types - BlaiseApiClient.prototype.post = function (url, data) { - return __awaiter(this, void 0, void 0, function () { - var config, response; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this.axiosConfig()]; - case 1: - config = _a.sent(); - return [4 /*yield*/, this.httpClient.post("".concat(this.blaiseApiUrl).concat(this.url(url)), data, config)]; - case 2: - response = _a.sent(); - return [2 /*return*/, response.data]; - } - }); - }); - }; - // eslint-disable-next-line @typescript-eslint/no-explicit-any - BlaiseApiClient.prototype.delete = function (url) { - return __awaiter(this, void 0, void 0, function () { - var config, response; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this.axiosConfig()]; - case 1: - config = _a.sent(); - return [4 /*yield*/, this.httpClient.delete("".concat(this.blaiseApiUrl).concat(this.url(url)), config)]; - case 2: - response = _a.sent(); - return [2 /*return*/, response.data]; - } - }); - }); - }; - // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-redundant-type-constituents - BlaiseApiClient.prototype.patch = function (url, data) { - if (data === void 0) { data = undefined; } - return __awaiter(this, void 0, void 0, function () { - var config, response; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this.axiosConfig()]; - case 1: - config = _a.sent(); - return [4 /*yield*/, this.httpClient.patch("".concat(this.blaiseApiUrl).concat(this.url(url)), data, config)]; - case 2: - response = _a.sent(); - return [2 /*return*/, response.data]; - } - }); - }); - }; - BlaiseApiClient.prototype.axiosConfig = function () { - return __awaiter(this, void 0, void 0, function () { - var config; - var _a; - return __generator(this, function (_b) { - switch (_b.label) { - case 0: - config = {}; - if (!this.blaiseIapProvider) return [3 /*break*/, 2]; - _a = {}; - return [4 /*yield*/, this.blaiseIapProvider.getAuthHeader()]; - case 1: - config = (_a.headers = _b.sent(), _a); - _b.label = 2; - case 2: return [2 /*return*/, config]; - } - }); - }); - }; - return BlaiseApiClient; -}()); -export default BlaiseApiClient; -export * from './interfaces/questionnaire'; -export * from './interfaces/diagnostic'; -export * from './interfaces/case'; -export * from './interfaces/user'; -export * from './interfaces/daybatch'; -export * from './interfaces/questionnaireReport'; -export * from './enums/caseOutcome'; -export * from './enums/editedStatus'; -export * from './types/caseData'; -export * from './types/surveyDays'; -export * from './mockObjects/caseMockObjects'; -export * from './mockObjects/diagnosticMockObjects'; -export * from './mockObjects/questionnaireMockObjects'; -export * from './mockObjects/userMockObjects'; -export * from './mockObjects/daybatchMockObjects'; -export * from './mockObjects/questionnaireReportMockObjects'; diff --git a/lib/esm/enums/caseOutcome.d.ts b/lib/esm/enums/caseOutcome.d.ts deleted file mode 100644 index 49b6890..0000000 --- a/lib/esm/enums/caseOutcome.d.ts +++ /dev/null @@ -1,41 +0,0 @@ -export declare enum CaseOutcome { - None = 0, - Completed = 110, - CompletedNudge = 120, - CompletedProxy = 130, - Partial = 210, - AppointmentMade = 300, - NonContact = 310, - HQRefusal = 430, - NotAvailable = 440, - HardRefusal = 460, - SoftRefusal = 461, - LanguageDifficultiesHeadOffice = 541, - LanguageDifficultiesInterviewer = 542, - WrongNumber = 542, - DeleteRequestedCompleted = 561, - DeleteRequestedPartial = 562, - IneligibleVacant = 540, - IneligibleNonResidential = 551, - IneligibleInstitution = 560, - IneligibleSecondHome = 580, - ConcernsWontTakePart = 360, - RejectTandCs = 380, - LostAccessCode = 373, - UnableToComplete = 370, - NoInternetAccess = 371, - RequestedDifferentMode = 372, - NoTraceOfAddress = 510, - Under16 = 631, - WrongAddress = 640, - BrailleRequested = 411, - LargePrintRequested = 412, - OtherFormat = 413, - DeleteRequested = 390, - RequestedCopyOfData = 791, - ClarificationOnStudyRequested = 792, - AssistanceRequested = 793, - RequestForContext = 794, - QuestionProblem = 795 -} -export default CaseOutcome; diff --git a/lib/esm/enums/caseOutcome.js b/lib/esm/enums/caseOutcome.js deleted file mode 100644 index 4509f3f..0000000 --- a/lib/esm/enums/caseOutcome.js +++ /dev/null @@ -1,44 +0,0 @@ -// eslint-disable-next-line no-shadow -export var CaseOutcome; -(function (CaseOutcome) { - CaseOutcome[CaseOutcome["None"] = 0] = "None"; - CaseOutcome[CaseOutcome["Completed"] = 110] = "Completed"; - CaseOutcome[CaseOutcome["CompletedNudge"] = 120] = "CompletedNudge"; - CaseOutcome[CaseOutcome["CompletedProxy"] = 130] = "CompletedProxy"; - CaseOutcome[CaseOutcome["Partial"] = 210] = "Partial"; - CaseOutcome[CaseOutcome["AppointmentMade"] = 300] = "AppointmentMade"; - CaseOutcome[CaseOutcome["NonContact"] = 310] = "NonContact"; - CaseOutcome[CaseOutcome["HQRefusal"] = 430] = "HQRefusal"; - CaseOutcome[CaseOutcome["NotAvailable"] = 440] = "NotAvailable"; - CaseOutcome[CaseOutcome["HardRefusal"] = 460] = "HardRefusal"; - CaseOutcome[CaseOutcome["SoftRefusal"] = 461] = "SoftRefusal"; - CaseOutcome[CaseOutcome["LanguageDifficultiesHeadOffice"] = 541] = "LanguageDifficultiesHeadOffice"; - CaseOutcome[CaseOutcome["LanguageDifficultiesInterviewer"] = 542] = "LanguageDifficultiesInterviewer"; - // eslint-disable-next-line @typescript-eslint/no-duplicate-enum-values - CaseOutcome[CaseOutcome["WrongNumber"] = 542] = "WrongNumber"; - CaseOutcome[CaseOutcome["DeleteRequestedCompleted"] = 561] = "DeleteRequestedCompleted"; - CaseOutcome[CaseOutcome["DeleteRequestedPartial"] = 562] = "DeleteRequestedPartial"; - CaseOutcome[CaseOutcome["IneligibleVacant"] = 540] = "IneligibleVacant"; - CaseOutcome[CaseOutcome["IneligibleNonResidential"] = 551] = "IneligibleNonResidential"; - CaseOutcome[CaseOutcome["IneligibleInstitution"] = 560] = "IneligibleInstitution"; - CaseOutcome[CaseOutcome["IneligibleSecondHome"] = 580] = "IneligibleSecondHome"; - CaseOutcome[CaseOutcome["ConcernsWontTakePart"] = 360] = "ConcernsWontTakePart"; - CaseOutcome[CaseOutcome["RejectTandCs"] = 380] = "RejectTandCs"; - CaseOutcome[CaseOutcome["LostAccessCode"] = 373] = "LostAccessCode"; - CaseOutcome[CaseOutcome["UnableToComplete"] = 370] = "UnableToComplete"; - CaseOutcome[CaseOutcome["NoInternetAccess"] = 371] = "NoInternetAccess"; - CaseOutcome[CaseOutcome["RequestedDifferentMode"] = 372] = "RequestedDifferentMode"; - CaseOutcome[CaseOutcome["NoTraceOfAddress"] = 510] = "NoTraceOfAddress"; - CaseOutcome[CaseOutcome["Under16"] = 631] = "Under16"; - CaseOutcome[CaseOutcome["WrongAddress"] = 640] = "WrongAddress"; - CaseOutcome[CaseOutcome["BrailleRequested"] = 411] = "BrailleRequested"; - CaseOutcome[CaseOutcome["LargePrintRequested"] = 412] = "LargePrintRequested"; - CaseOutcome[CaseOutcome["OtherFormat"] = 413] = "OtherFormat"; - CaseOutcome[CaseOutcome["DeleteRequested"] = 390] = "DeleteRequested"; - CaseOutcome[CaseOutcome["RequestedCopyOfData"] = 791] = "RequestedCopyOfData"; - CaseOutcome[CaseOutcome["ClarificationOnStudyRequested"] = 792] = "ClarificationOnStudyRequested"; - CaseOutcome[CaseOutcome["AssistanceRequested"] = 793] = "AssistanceRequested"; - CaseOutcome[CaseOutcome["RequestForContext"] = 794] = "RequestForContext"; - CaseOutcome[CaseOutcome["QuestionProblem"] = 795] = "QuestionProblem"; -})(CaseOutcome || (CaseOutcome = {})); -export default CaseOutcome; diff --git a/lib/esm/enums/editedStatus.d.ts b/lib/esm/enums/editedStatus.d.ts deleted file mode 100644 index 4ab6f7b..0000000 --- a/lib/esm/enums/editedStatus.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -export declare enum EditedStatus { - NotStarted = 0, - Started = 1, - Query = 2, - Finished = 3 -} -export default EditedStatus; diff --git a/lib/esm/enums/editedStatus.js b/lib/esm/enums/editedStatus.js deleted file mode 100644 index 8b02420..0000000 --- a/lib/esm/enums/editedStatus.js +++ /dev/null @@ -1,9 +0,0 @@ -// eslint-disable-next-line no-shadow -export var EditedStatus; -(function (EditedStatus) { - EditedStatus[EditedStatus["NotStarted"] = 0] = "NotStarted"; - EditedStatus[EditedStatus["Started"] = 1] = "Started"; - EditedStatus[EditedStatus["Query"] = 2] = "Query"; - EditedStatus[EditedStatus["Finished"] = 3] = "Finished"; -})(EditedStatus || (EditedStatus = {})); -export default EditedStatus; diff --git a/lib/esm/enums/organisation.d.ts b/lib/esm/enums/organisation.d.ts deleted file mode 100644 index fbee909..0000000 --- a/lib/esm/enums/organisation.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -export declare enum Organisation { - ONS = 1, - NatCen = 2, - Nisra = 3 -} -export default Organisation; diff --git a/lib/esm/enums/organisation.js b/lib/esm/enums/organisation.js deleted file mode 100644 index 2dc3bfc..0000000 --- a/lib/esm/enums/organisation.js +++ /dev/null @@ -1,8 +0,0 @@ -// eslint-disable-next-line no-shadow -export var Organisation; -(function (Organisation) { - Organisation[Organisation["ONS"] = 1] = "ONS"; - Organisation[Organisation["NatCen"] = 2] = "NatCen"; - Organisation[Organisation["Nisra"] = 3] = "Nisra"; -})(Organisation || (Organisation = {})); -export default Organisation; diff --git a/lib/esm/functions/caseFunctions.d.ts b/lib/esm/functions/caseFunctions.d.ts deleted file mode 100644 index 6236798..0000000 --- a/lib/esm/functions/caseFunctions.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import BlaiseApiClient from '../blaiseApiClient'; -import { CaseEditInformation, CaseResponse, CaseStatus } from '../interfaces/case'; -import { CaseData } from '../types/caseData'; -export declare function getCase(this: BlaiseApiClient, serverpark: string, questionnaireName: string, caseId: string): Promise; -export declare function getMultikeyQueryString(multiKeyValueMap: Map): string; -export declare function getCaseMultikey(this: BlaiseApiClient, serverpark: string, questionnaireName: string, multiKeyValueMap: Map): Promise; -export declare function addCase(this: BlaiseApiClient, serverpark: string, questionnaireName: string, caseId: string, caseFields: CaseData): Promise; -export declare function updateCase(this: BlaiseApiClient, serverpark: string, questionnaireName: string, caseId: string, caseFields: CaseData): Promise; -export declare function addCaseMultikey(this: BlaiseApiClient, serverpark: string, questionnaireName: string, multiKeyValueMap: Map, caseFields: CaseData): Promise; -export declare function getCaseStatus(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise; -export declare function getCaseEditInformation(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise; diff --git a/lib/esm/functions/caseFunctions.js b/lib/esm/functions/caseFunctions.js deleted file mode 100644 index efc16e0..0000000 --- a/lib/esm/functions/caseFunctions.js +++ /dev/null @@ -1,95 +0,0 @@ -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __generator = (this && this.__generator) || function (thisArg, body) { - var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; - function verb(n) { return function (v) { return step([n, v]); }; } - function step(op) { - if (f) throw new TypeError("Generator is already executing."); - while (g && (g = 0, op[0] && (_ = 0)), _) try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; - if (y = 0, t) op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: case 1: t = op; break; - case 4: _.label++; return { value: op[1], done: false }; - case 5: _.label++; y = op[1]; op = [0]; continue; - case 7: op = _.ops.pop(); _.trys.pop(); continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } - if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } - if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } - if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } - if (t[2]) _.ops.pop(); - _.trys.pop(); continue; - } - op = body.call(thisArg, _); - } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } - if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; - } -}; -export function getCase(serverpark, questionnaireName, caseId) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/cases/").concat(caseId))]; - }); - }); -} -export function getMultikeyQueryString(multiKeyValueMap) { - var keyNamesQueryString = "keyNames=".concat(Array.from(multiKeyValueMap.keys()).join('&keyNames=')); - var keyValuesQueryString = "keyValues=".concat(Array.from(multiKeyValueMap.values()).join('&keyValues=')); - var keyValueQueryString = "".concat(keyNamesQueryString, "&").concat(keyValuesQueryString); - return keyValueQueryString; -} -export function getCaseMultikey(serverpark, questionnaireName, multiKeyValueMap) { - return __awaiter(this, void 0, void 0, function () { - var queryString; - return __generator(this, function (_a) { - queryString = getMultikeyQueryString(multiKeyValueMap); - return [2 /*return*/, this.get("api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/cases/multikey?").concat(queryString))]; - }); - }); -} -export function addCase(serverpark, questionnaireName, caseId, caseFields) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.post("api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/cases/").concat(caseId), caseFields)]; - }); - }); -} -export function updateCase(serverpark, questionnaireName, caseId, caseFields) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.patch("api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/cases/").concat(caseId), caseFields)]; - }); - }); -} -export function addCaseMultikey(serverpark, questionnaireName, multiKeyValueMap, caseFields) { - return __awaiter(this, void 0, void 0, function () { - var queryString; - return __generator(this, function (_a) { - queryString = getMultikeyQueryString(multiKeyValueMap); - return [2 /*return*/, this.post("api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/cases/multikey?").concat(queryString), caseFields)]; - }); - }); -} -export function getCaseStatus(serverpark, questionnaireName) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/cases/status"))]; - }); - }); -} -export function getCaseEditInformation(serverpark, questionnaireName) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/cases/edit"))]; - }); - }); -} diff --git a/lib/esm/functions/daybatchFunctions.d.ts b/lib/esm/functions/daybatchFunctions.d.ts deleted file mode 100644 index 551226a..0000000 --- a/lib/esm/functions/daybatchFunctions.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import BlaiseApiClient from '../blaiseApiClient'; -import { DaybatchResponse, DaybatchSettings } from '../interfaces/daybatch'; -import { SurveyDays } from '../types/surveyDays'; -export declare function getDaybatch(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise; -export declare function addDaybatch(this: BlaiseApiClient, serverpark: string, questionnaireName: string, daybatchSettings: DaybatchSettings): Promise; -export declare function getSurveyDays(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise; -export declare function addSurveyDays(this: BlaiseApiClient, serverpark: string, questionnaireName: string, surveyDays: SurveyDays): Promise; diff --git a/lib/esm/functions/daybatchFunctions.js b/lib/esm/functions/daybatchFunctions.js deleted file mode 100644 index fe01c1a..0000000 --- a/lib/esm/functions/daybatchFunctions.js +++ /dev/null @@ -1,71 +0,0 @@ -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __generator = (this && this.__generator) || function (thisArg, body) { - var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; - function verb(n) { return function (v) { return step([n, v]); }; } - function step(op) { - if (f) throw new TypeError("Generator is already executing."); - while (g && (g = 0, op[0] && (_ = 0)), _) try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; - if (y = 0, t) op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: case 1: t = op; break; - case 4: _.label++; return { value: op[1], done: false }; - case 5: _.label++; y = op[1]; op = [0]; continue; - case 7: op = _.ops.pop(); _.trys.pop(); continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } - if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } - if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } - if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } - if (t[2]) _.ops.pop(); - _.trys.pop(); continue; - } - op = body.call(thisArg, _); - } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } - if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; - } -}; -export function getDaybatch(serverpark, questionnaireName) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("/api/v2/cati/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/daybatch"))]; - }); - }); -} -export function addDaybatch(serverpark, questionnaireName, daybatchSettings) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.post("/api/v2/cati/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/daybatch"), daybatchSettings)]; - }); - }); -} -export function getSurveyDays(serverpark, questionnaireName) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("api/v2/cati/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/surveydays"))]; - }); - }); -} -export function addSurveyDays(serverpark, questionnaireName, surveyDays) { - return __awaiter(this, void 0, void 0, function () { - var formattedSurveyDays; - return __generator(this, function (_a) { - formattedSurveyDays = surveyDays.map(function (surveyDay) { - if (surveyDay instanceof Date) { - return surveyDay.toISOString(); - } - return surveyDay; - }); - return [2 /*return*/, this.post("api/v2/cati/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/surveydays"), formattedSurveyDays)]; - }); - }); -} diff --git a/lib/esm/functions/diagnosticFunctions.d.ts b/lib/esm/functions/diagnosticFunctions.d.ts deleted file mode 100644 index b408f20..0000000 --- a/lib/esm/functions/diagnosticFunctions.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import BlaiseApiClient from '../blaiseApiClient'; -import { Diagnostic } from '../interfaces/diagnostic'; -export declare function getDiagnostics(this: BlaiseApiClient): Promise; -export default getDiagnostics; diff --git a/lib/esm/functions/diagnosticFunctions.js b/lib/esm/functions/diagnosticFunctions.js deleted file mode 100644 index 7bf1113..0000000 --- a/lib/esm/functions/diagnosticFunctions.js +++ /dev/null @@ -1,44 +0,0 @@ -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __generator = (this && this.__generator) || function (thisArg, body) { - var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; - function verb(n) { return function (v) { return step([n, v]); }; } - function step(op) { - if (f) throw new TypeError("Generator is already executing."); - while (g && (g = 0, op[0] && (_ = 0)), _) try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; - if (y = 0, t) op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: case 1: t = op; break; - case 4: _.label++; return { value: op[1], done: false }; - case 5: _.label++; y = op[1]; op = [0]; continue; - case 7: op = _.ops.pop(); _.trys.pop(); continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } - if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } - if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } - if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } - if (t[2]) _.ops.pop(); - _.trys.pop(); continue; - } - op = body.call(thisArg, _); - } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } - if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; - } -}; -export function getDiagnostics() { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get('/api/v2/health/diagnosis')]; - }); - }); -} -export default getDiagnostics; diff --git a/lib/esm/functions/questionnaireFunctions.d.ts b/lib/esm/functions/questionnaireFunctions.d.ts deleted file mode 100644 index ee385e5..0000000 --- a/lib/esm/functions/questionnaireFunctions.d.ts +++ /dev/null @@ -1,16 +0,0 @@ -import BlaiseApiClient from '../blaiseApiClient'; -import { InstallQuestionnaire, InstallQuestionnaireResponse, Questionnaire, QuestionnaireSettings } from '../interfaces/questionnaire'; -export declare function getAllQuestionnairesWithCatiData(this: BlaiseApiClient): Promise; -export declare function getQuestionnairesWithCatiData(this: BlaiseApiClient, serverpark: string): Promise; -export declare function getQuestionnaireWithCatiData(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise; -export declare function getQuestionnaires(this: BlaiseApiClient, serverpark: string): Promise; -export declare function questionnaireExists(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise; -export declare function doesQuestionnaireHaveMode(this: BlaiseApiClient, serverpark: string, questionnaireName: string, mode: string): Promise; -export declare function getQuestionnaire(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise; -export declare function installQuestionnaire(this: BlaiseApiClient, serverpark: string, questionnaire: InstallQuestionnaire): Promise; -export declare function deleteQuestionnaire(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise; -export declare function getQuestionnaireCaseIds(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise; -export declare function getQuestionnaireModes(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise; -export declare function getQuestionnaireSettings(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise; -export declare function activateQuestionnaire(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise; -export declare function deactivateQuestionnaire(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise; diff --git a/lib/esm/functions/questionnaireFunctions.js b/lib/esm/functions/questionnaireFunctions.js deleted file mode 100644 index 147e8bc..0000000 --- a/lib/esm/functions/questionnaireFunctions.js +++ /dev/null @@ -1,134 +0,0 @@ -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __generator = (this && this.__generator) || function (thisArg, body) { - var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; - function verb(n) { return function (v) { return step([n, v]); }; } - function step(op) { - if (f) throw new TypeError("Generator is already executing."); - while (g && (g = 0, op[0] && (_ = 0)), _) try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; - if (y = 0, t) op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: case 1: t = op; break; - case 4: _.label++; return { value: op[1], done: false }; - case 5: _.label++; y = op[1]; op = [0]; continue; - case 7: op = _.ops.pop(); _.trys.pop(); continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } - if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } - if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } - if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } - if (t[2]) _.ops.pop(); - _.trys.pop(); continue; - } - op = body.call(thisArg, _); - } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } - if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; - } -}; -export function getAllQuestionnairesWithCatiData() { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get('/api/v2/cati/questionnaires')]; - }); - }); -} -export function getQuestionnairesWithCatiData(serverpark) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("/api/v2/cati/serverparks/".concat(serverpark, "/questionnaires"))]; - }); - }); -} -export function getQuestionnaireWithCatiData(serverpark, questionnaireName) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("/api/v2/cati/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName))]; - }); - }); -} -export function getQuestionnaires(serverpark) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("/api/v2/serverparks/".concat(serverpark, "/questionnaires"))]; - }); - }); -} -export function questionnaireExists(serverpark, questionnaireName) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("/api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/exists"))]; - }); - }); -} -export function doesQuestionnaireHaveMode(serverpark, questionnaireName, mode) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("/api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/modes/").concat(mode))]; - }); - }); -} -export function getQuestionnaire(serverpark, questionnaireName) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("/api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName))]; - }); - }); -} -export function installQuestionnaire(serverpark, questionnaire) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.post("/api/v2/serverparks/".concat(serverpark, "/questionnaires"), questionnaire)]; - }); - }); -} -export function deleteQuestionnaire(serverpark, questionnaireName) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.delete("/api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "?name=").concat(questionnaireName))]; - }); - }); -} -export function getQuestionnaireCaseIds(serverpark, questionnaireName) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("/api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/cases/ids"))]; - }); - }); -} -export function getQuestionnaireModes(serverpark, questionnaireName) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("/api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/modes"))]; - }); - }); -} -export function getQuestionnaireSettings(serverpark, questionnaireName) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("/api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/settings"))]; - }); - }); -} -export function activateQuestionnaire(serverpark, questionnaireName) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.patch("api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/activate"))]; - }); - }); -} -export function deactivateQuestionnaire(serverpark, questionnaireName) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.patch("api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/deactivate"))]; - }); - }); -} diff --git a/lib/esm/functions/questionnaireReportFunctions.d.ts b/lib/esm/functions/questionnaireReportFunctions.d.ts deleted file mode 100644 index 3416c07..0000000 --- a/lib/esm/functions/questionnaireReportFunctions.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import BlaiseApiClient from '../blaiseApiClient'; -import { QuestionnaireReport } from '../interfaces/questionnaireReport'; -export declare function getQuestionnaireReportData(this: BlaiseApiClient, serverpark: string, questionnaireName: string, fieldIds: string[]): Promise; -export default getQuestionnaireReportData; diff --git a/lib/esm/functions/questionnaireReportFunctions.js b/lib/esm/functions/questionnaireReportFunctions.js deleted file mode 100644 index 15d9642..0000000 --- a/lib/esm/functions/questionnaireReportFunctions.js +++ /dev/null @@ -1,49 +0,0 @@ -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __generator = (this && this.__generator) || function (thisArg, body) { - var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; - function verb(n) { return function (v) { return step([n, v]); }; } - function step(op) { - if (f) throw new TypeError("Generator is already executing."); - while (g && (g = 0, op[0] && (_ = 0)), _) try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; - if (y = 0, t) op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: case 1: t = op; break; - case 4: _.label++; return { value: op[1], done: false }; - case 5: _.label++; y = op[1]; op = [0]; continue; - case 7: op = _.ops.pop(); _.trys.pop(); continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } - if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } - if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } - if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } - if (t[2]) _.ops.pop(); - _.trys.pop(); continue; - } - op = body.call(thisArg, _); - } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } - if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; - } -}; -export function getQuestionnaireReportData(serverpark, questionnaireName, fieldIds) { - return __awaiter(this, void 0, void 0, function () { - var queryArray; - return __generator(this, function (_a) { - queryArray = []; - fieldIds.forEach(function (fieldId) { - queryArray.push("fieldIds=".concat(fieldId)); - }); - return [2 /*return*/, this.get("/api/v2/serverparks/".concat(serverpark, "/questionnaires/").concat(questionnaireName, "/report?").concat(queryArray.join('&')))]; - }); - }); -} -export default getQuestionnaireReportData; diff --git a/lib/esm/functions/userFunctions.d.ts b/lib/esm/functions/userFunctions.d.ts deleted file mode 100644 index 4d284b5..0000000 --- a/lib/esm/functions/userFunctions.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import BlaiseApiClient from '../blaiseApiClient'; -import { NewUser, User, UserRole } from '../interfaces/user'; -export declare function getUser(this: BlaiseApiClient, username: string): Promise; -export declare function getUsers(this: BlaiseApiClient): Promise; -export declare function validatePassword(this: BlaiseApiClient, username: string, password: string): Promise; -export declare function createUser(this: BlaiseApiClient, user: NewUser): Promise; -export declare function deleteUser(this: BlaiseApiClient, username: string): Promise; -export declare function getUserRoles(this: BlaiseApiClient): Promise; -export declare function changeUserRole(this: BlaiseApiClient, username: string, role: string): Promise; -export declare function changeUserServerParks(this: BlaiseApiClient, username: string, serverParks: string[], defaultServerPark: string): Promise; -export declare function changePassword(this: BlaiseApiClient, username: string, password: string): Promise; diff --git a/lib/esm/functions/userFunctions.js b/lib/esm/functions/userFunctions.js deleted file mode 100644 index 6775e1b..0000000 --- a/lib/esm/functions/userFunctions.js +++ /dev/null @@ -1,107 +0,0 @@ -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __generator = (this && this.__generator) || function (thisArg, body) { - var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; - function verb(n) { return function (v) { return step([n, v]); }; } - function step(op) { - if (f) throw new TypeError("Generator is already executing."); - while (g && (g = 0, op[0] && (_ = 0)), _) try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; - if (y = 0, t) op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: case 1: t = op; break; - case 4: _.label++; return { value: op[1], done: false }; - case 5: _.label++; y = op[1]; op = [0]; continue; - case 7: op = _.ops.pop(); _.trys.pop(); continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } - if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } - if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } - if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } - if (t[2]) _.ops.pop(); - _.trys.pop(); continue; - } - op = body.call(thisArg, _); - } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } - if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; - } -}; -export function getUser(username) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get("api/v2/users/".concat(username))]; - }); - }); -} -export function getUsers() { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get('api/v2/users')]; - }); - }); -} -export function validatePassword(username, password) { - return __awaiter(this, void 0, void 0, function () { - var validationRequest; - return __generator(this, function (_a) { - validationRequest = { password: password }; - return [2 /*return*/, this.post("api/v2/users/".concat(username, "/validate"), validationRequest)]; - }); - }); -} -export function createUser(user) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.post('/api/v2/users', user)]; - }); - }); -} -export function deleteUser(username) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.delete("/api/v2/users/".concat(username))]; - }); - }); -} -export function getUserRoles() { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.get('/api/v2/userroles')]; - }); - }); -} -export function changeUserRole(username, role) { - return __awaiter(this, void 0, void 0, function () { - var roleRequest; - return __generator(this, function (_a) { - roleRequest = { role: role }; - return [2 /*return*/, this.patch("/api/v2/users/".concat(username, "/role"), roleRequest)]; - }); - }); -} -export function changeUserServerParks(username, serverParks, defaultServerPark) { - return __awaiter(this, void 0, void 0, function () { - var serverParksRequest; - return __generator(this, function (_a) { - serverParksRequest = { serverParks: serverParks, defaultServerPark: defaultServerPark }; - return [2 /*return*/, this.patch("/api/v2/users/".concat(username, "/serverparks"), serverParksRequest)]; - }); - }); -} -export function changePassword(username, password) { - return __awaiter(this, void 0, void 0, function () { - var passwordRequest; - return __generator(this, function (_a) { - passwordRequest = { password: password }; - return [2 /*return*/, this.patch("/api/v2/users/".concat(username, "/password"), passwordRequest)]; - }); - }); -} diff --git a/lib/esm/interfaces/blaiseApi.d.ts b/lib/esm/interfaces/blaiseApi.d.ts deleted file mode 100644 index d672c06..0000000 --- a/lib/esm/interfaces/blaiseApi.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { Questionnaire } from './questionnaire'; -export interface BlaiseApi { - getQuestionnaires(serverPark: string): Promise; -} diff --git a/lib/esm/interfaces/blaiseApi.js b/lib/esm/interfaces/blaiseApi.js deleted file mode 100644 index cb0ff5c..0000000 --- a/lib/esm/interfaces/blaiseApi.js +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/lib/esm/interfaces/blaiseApiConfig.d.ts b/lib/esm/interfaces/blaiseApiConfig.d.ts deleted file mode 100644 index bfe11b0..0000000 --- a/lib/esm/interfaces/blaiseApiConfig.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export interface BlaiseApiConfig { - timeoutInMs?: number; - blaiseApiClientId?: string; -} diff --git a/lib/esm/interfaces/blaiseApiConfig.js b/lib/esm/interfaces/blaiseApiConfig.js deleted file mode 100644 index cb0ff5c..0000000 --- a/lib/esm/interfaces/blaiseApiConfig.js +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/lib/esm/interfaces/case.d.ts b/lib/esm/interfaces/case.d.ts deleted file mode 100644 index 9751407..0000000 --- a/lib/esm/interfaces/case.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { EditedStatus } from '../blaiseApiClient'; -import { CaseOutcome } from '../enums/caseOutcome'; -import Organisation from '../enums/organisation'; -import { CaseData } from '../types/caseData'; -export interface CaseResponse { - caseId: string; - fieldData: CaseData; -} -export interface CaseStatus { - primaryKey: string; - outcome: CaseOutcome; -} -export interface CaseEditInformation { - primaryKey: string; - outcome: CaseOutcome; - assignedTo: string; - interviewer: string; - editedStatus: EditedStatus; - organisation: Organisation; - editUrl: string; - readOnlyUrl: string; -} diff --git a/lib/esm/interfaces/case.js b/lib/esm/interfaces/case.js deleted file mode 100644 index cb0ff5c..0000000 --- a/lib/esm/interfaces/case.js +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/lib/esm/interfaces/daybatch.d.ts b/lib/esm/interfaces/daybatch.d.ts deleted file mode 100644 index 973b236..0000000 --- a/lib/esm/interfaces/daybatch.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -export interface DaybatchResponse { - dayBatchDate: string; - caseIds: string[]; -} -export interface DaybatchSettings { - dayBatchDate: string; - checkForTreatedCases: boolean; -} diff --git a/lib/esm/interfaces/daybatch.js b/lib/esm/interfaces/daybatch.js deleted file mode 100644 index cb0ff5c..0000000 --- a/lib/esm/interfaces/daybatch.js +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/lib/esm/interfaces/diagnostic.d.ts b/lib/esm/interfaces/diagnostic.d.ts deleted file mode 100644 index 6de4b1a..0000000 --- a/lib/esm/interfaces/diagnostic.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export interface Diagnostic { - 'health check type': string; - status: string; -} diff --git a/lib/esm/interfaces/diagnostic.js b/lib/esm/interfaces/diagnostic.js deleted file mode 100644 index cb0ff5c..0000000 --- a/lib/esm/interfaces/diagnostic.js +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/lib/esm/interfaces/questionnaire.d.ts b/lib/esm/interfaces/questionnaire.d.ts deleted file mode 100644 index 92c0e5b..0000000 --- a/lib/esm/interfaces/questionnaire.d.ts +++ /dev/null @@ -1,36 +0,0 @@ -export interface Node { - nodeName: string; - nodeStatus: string; -} -export interface Questionnaire { - installDate: string; - name: string; - expired?: boolean; - serverParkName: string; - activeToday?: boolean; - surveyDays?: string[]; - link?: string; - fieldPeriod?: string; - surveyTla?: string; - dataRecordCount?: number; - status?: string; - hasData?: boolean; - nodes?: Node[]; - active?: boolean; - blaiseVersion?: string; -} -export interface InstallQuestionnaire { - questionnaireFile: string; -} -export interface InstallQuestionnaireResponse { - questionnaireFile: string; -} -export interface QuestionnaireSettings { - type: string; - saveSessionOnTimeout: boolean; - saveSessionOnQuit: boolean; - deleteSessionOnTimeout: boolean; - deleteSessionOnQuit: boolean; - sessionTimeout: number; - applyRecordLocking: boolean; -} diff --git a/lib/esm/interfaces/questionnaire.js b/lib/esm/interfaces/questionnaire.js deleted file mode 100644 index cb0ff5c..0000000 --- a/lib/esm/interfaces/questionnaire.js +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/lib/esm/interfaces/questionnaireReport.d.ts b/lib/esm/interfaces/questionnaireReport.d.ts deleted file mode 100644 index 01f1ec3..0000000 --- a/lib/esm/interfaces/questionnaireReport.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { CaseData } from '../types/caseData'; -export interface QuestionnaireReport { - questionnaireName: string; - questionnaireId: string; - reportingData: CaseData[]; -} diff --git a/lib/esm/interfaces/questionnaireReport.js b/lib/esm/interfaces/questionnaireReport.js deleted file mode 100644 index cb0ff5c..0000000 --- a/lib/esm/interfaces/questionnaireReport.js +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/lib/esm/interfaces/survey.d.ts b/lib/esm/interfaces/survey.d.ts deleted file mode 100644 index 9ff2bfc..0000000 --- a/lib/esm/interfaces/survey.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { Questionnaire } from './questionnaire'; -export interface Survey { - questionnaires: Questionnaire[]; - survey: string; -} diff --git a/lib/esm/interfaces/survey.js b/lib/esm/interfaces/survey.js deleted file mode 100644 index cb0ff5c..0000000 --- a/lib/esm/interfaces/survey.js +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/lib/esm/interfaces/user.d.ts b/lib/esm/interfaces/user.d.ts deleted file mode 100644 index 17e2c7a..0000000 --- a/lib/esm/interfaces/user.d.ts +++ /dev/null @@ -1,20 +0,0 @@ -export interface User { - name: string; - role: string; - serverParks: string[]; - defaultServerPark: string; -} -export interface PasswordRequest { - password: string; -} -export interface RoleRequest { - role: string; -} -export interface UserRole { - name: string; - description: string; - permissions: string[]; -} -export interface NewUser extends User { - password: string; -} diff --git a/lib/esm/interfaces/user.js b/lib/esm/interfaces/user.js deleted file mode 100644 index cb0ff5c..0000000 --- a/lib/esm/interfaces/user.js +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/lib/esm/mockObjects/caseMockObjects.d.ts b/lib/esm/mockObjects/caseMockObjects.d.ts deleted file mode 100644 index 4a073fa..0000000 --- a/lib/esm/mockObjects/caseMockObjects.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { CaseEditInformation, CaseResponse, CaseStatus } from '../interfaces/case'; -export declare const CaseStatusListMockObject: CaseStatus[]; -export declare const CaseResponseMockObject: CaseResponse; -export declare const CaseEditInformationListMockObject: CaseEditInformation[]; diff --git a/lib/esm/mockObjects/caseMockObjects.js b/lib/esm/mockObjects/caseMockObjects.js deleted file mode 100644 index 303c485..0000000 --- a/lib/esm/mockObjects/caseMockObjects.js +++ /dev/null @@ -1,62 +0,0 @@ -export var CaseStatusListMockObject = [{ - primaryKey: '1', - outcome: 110, - }, { - primaryKey: '2', - outcome: 310, - }, { - primaryKey: '3', - outcome: 0, - }]; -export var CaseResponseMockObject = { - caseId: '1', - fieldData: { - 'qiD.Serial_Number': '1', - 'qDataBag.Prem1': 'Flat 1', - 'qDataBag.Prem2': 'Richmond House', - 'qDataBag.Prem3': 'Rice Road', - 'qDataBag.Prem4': '', - 'qDataBag.District': 'Gwent', - 'qDataBag.PostTown': 'Newport', - 'qDataBag.PostCode': 'NZ11 4PD', - 'qhAdmin.HOut': '100', - 'qhAdmin.Interviewer[1]': 'rich', - 'dmName[1]': 'Richmond Ricecake', - 'dmDteOfBth[1]': '1980-01-15', - 'dmName[2]': 'Richmond Junior', - 'dmDteOfBth[2]': '2005-04-12', - dmhSize: '2', - }, -}; -export var CaseEditInformationListMockObject = [ - { - primaryKey: '100101', - outcome: 110, - assignedTo: 'Rich', - interviewer: 'Jane Doe', - editedStatus: 3, - organisation: 1, - editUrl: '', - readOnlyUrl: '', - }, - { - primaryKey: '100102', - outcome: 210, - assignedTo: 'Jake', - interviewer: 'Bob Roberts', - editedStatus: 3, - organisation: 1, - editUrl: '', - readOnlyUrl: '', - }, - { - primaryKey: '100113', - outcome: 430, - assignedTo: 'Jamie', - interviewer: 'Frank Frankinson', - editedStatus: 3, - organisation: 1, - editUrl: '', - readOnlyUrl: '', - }, -]; diff --git a/lib/esm/mockObjects/daybatchMockObjects.d.ts b/lib/esm/mockObjects/daybatchMockObjects.d.ts deleted file mode 100644 index 5902f2f..0000000 --- a/lib/esm/mockObjects/daybatchMockObjects.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { DaybatchResponse, DaybatchSettings } from '../interfaces/daybatch'; -import { SurveyDays } from '../types/surveyDays'; -export declare const QuestionnaireDaybatchCasesMock: DaybatchResponse[]; -export declare const AddDaybatchMock: DaybatchSettings; -export declare const SurveyDaysMock: string[]; -export declare const SurveyDaysDatesMock: SurveyDays; diff --git a/lib/esm/mockObjects/daybatchMockObjects.js b/lib/esm/mockObjects/daybatchMockObjects.js deleted file mode 100644 index acf6591..0000000 --- a/lib/esm/mockObjects/daybatchMockObjects.js +++ /dev/null @@ -1,21 +0,0 @@ -export var QuestionnaireDaybatchCasesMock = [ - { - dayBatchDate: '2021-01-15T14:41:29.4399898+00:00', - caseIds: [ - '100101', - '100102', - '100103', - '100104', - ], - }, -]; -export var AddDaybatchMock = { - dayBatchDate: '2021-01-15T14:41:29.4399898+00:00', - checkForTreatedCases: true, -}; -export var SurveyDaysMock = [ - '2021-01-15T14:41:29.4399898+00:00', -]; -export var SurveyDaysDatesMock = [ - new Date('2021-01-15T14:41:29.4399898+00:00'), -]; diff --git a/lib/esm/mockObjects/diagnosticMockObjects.d.ts b/lib/esm/mockObjects/diagnosticMockObjects.d.ts deleted file mode 100644 index 60a9781..0000000 --- a/lib/esm/mockObjects/diagnosticMockObjects.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { Diagnostic } from '../interfaces/diagnostic'; -export declare const DiagnosticMockObject: Diagnostic[]; -export default DiagnosticMockObject; diff --git a/lib/esm/mockObjects/diagnosticMockObjects.js b/lib/esm/mockObjects/diagnosticMockObjects.js deleted file mode 100644 index e6bf783..0000000 --- a/lib/esm/mockObjects/diagnosticMockObjects.js +++ /dev/null @@ -1,7 +0,0 @@ -export var DiagnosticMockObject = [ - { 'health check type': 'Connection model', status: 'OK' }, - { 'health check type': 'Blaise connection', status: 'OK' }, - { 'health check type': 'Remote data server connection', status: 'OK' }, - { 'health check type': 'Remote Cati management connection', status: 'OK' }, -]; -export default DiagnosticMockObject; diff --git a/lib/esm/mockObjects/questionnaireMockObjects.d.ts b/lib/esm/mockObjects/questionnaireMockObjects.d.ts deleted file mode 100644 index 5441cae..0000000 --- a/lib/esm/mockObjects/questionnaireMockObjects.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { InstallQuestionnaire, InstallQuestionnaireResponse, Questionnaire, QuestionnaireSettings } from '../interfaces/questionnaire'; -export declare const QuestionnaireListMockObject: Questionnaire[]; -export declare const QuestionnaireMockObject: Questionnaire; -export declare const InstallQuestionnaireMockObject: InstallQuestionnaire; -export declare const InstallQuestionnaireResponseMockObject: InstallQuestionnaireResponse; -export declare const QuestionnaireSettingsMockList: QuestionnaireSettings[]; diff --git a/lib/esm/mockObjects/questionnaireMockObjects.js b/lib/esm/mockObjects/questionnaireMockObjects.js deleted file mode 100644 index 5e52a5c..0000000 --- a/lib/esm/mockObjects/questionnaireMockObjects.js +++ /dev/null @@ -1,50 +0,0 @@ -export var QuestionnaireListMockObject = [{ - name: 'OPN2101A', - serverParkName: 'gusty', - installDate: '2021-01-15T14:41:29.4399898+00:00', - status: 'Active', - dataRecordCount: 0, - hasData: false, - active: false, - }, { - name: 'OPN2007T', - serverParkName: 'gusty', - installDate: '2021-01-15T15:18:40.1503617+00:00', - status: 'Active', - dataRecordCount: 10, - hasData: true, - active: true, - }, { - name: 'LMS2101_AA1', - serverParkName: 'gusty', - installDate: '2021-01-15T15:26:43.4233454+00:00', - status: 'Active', - dataRecordCount: 0, - hasData: false, - active: false, - }]; -export var QuestionnaireMockObject = { - name: 'OPN2101A', - serverParkName: 'gusty', - installDate: '2021-01-15T14:41:29.4399898+00:00', - status: 'Active', - dataRecordCount: 0, - hasData: false, - active: false, - blaiseVersion: '5.9.9.2735', -}; -export var InstallQuestionnaireMockObject = { - questionnaireFile: 'OPN2004A.bpkg', -}; -export var InstallQuestionnaireResponseMockObject = { - questionnaireFile: 'OPN2004A.bpkg', -}; -export var QuestionnaireSettingsMockList = [{ - type: 'StrictInterviewing', - saveSessionOnTimeout: true, - saveSessionOnQuit: true, - deleteSessionOnTimeout: true, - deleteSessionOnQuit: true, - sessionTimeout: 15, - applyRecordLocking: true, - }]; diff --git a/lib/esm/mockObjects/questionnaireReportMockObjects.d.ts b/lib/esm/mockObjects/questionnaireReportMockObjects.d.ts deleted file mode 100644 index 5af847b..0000000 --- a/lib/esm/mockObjects/questionnaireReportMockObjects.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { QuestionnaireReport } from '../interfaces/questionnaireReport'; -declare const reportMockObject: QuestionnaireReport; -export default reportMockObject; diff --git a/lib/esm/mockObjects/questionnaireReportMockObjects.js b/lib/esm/mockObjects/questionnaireReportMockObjects.js deleted file mode 100644 index ec7d475..0000000 --- a/lib/esm/mockObjects/questionnaireReportMockObjects.js +++ /dev/null @@ -1,15 +0,0 @@ -var reportMockObject = { - questionnaireName: 'FRS2211A', - questionnaireId: '00000000-0000-0000-0000-000000000000', - reportingData: [ - { - 'qiD.Serial_Number': '1', - 'qhAdmin.HOut': '210', - }, - { - 'qiD.Serial_Number': '2', - 'qhAdmin.HOut': '110', - }, - ], -}; -export default reportMockObject; diff --git a/lib/esm/mockObjects/userMockObjects.d.ts b/lib/esm/mockObjects/userMockObjects.d.ts deleted file mode 100644 index 5ba43a9..0000000 --- a/lib/esm/mockObjects/userMockObjects.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { NewUser } from '../interfaces/user'; -export declare const CreateUserMockObject: NewUser; -export declare const CreateUserResponseMockObject: NewUser; diff --git a/lib/esm/mockObjects/userMockObjects.js b/lib/esm/mockObjects/userMockObjects.js deleted file mode 100644 index a1c477d..0000000 --- a/lib/esm/mockObjects/userMockObjects.js +++ /dev/null @@ -1,18 +0,0 @@ -export var CreateUserMockObject = { - password: 'somethingVerySecure', - name: 'Beyonce', - role: 'DST', - serverParks: [ - 'gusty', - ], - defaultServerPark: 'gusty', -}; -export var CreateUserResponseMockObject = { - password: 'somethingVerySecure', - name: 'Beyonce', - role: 'DST', - serverParks: [ - 'gusty', - ], - defaultServerPark: 'gusty', -}; diff --git a/lib/esm/types/caseData.d.ts b/lib/esm/types/caseData.d.ts deleted file mode 100644 index 8ebe586..0000000 --- a/lib/esm/types/caseData.d.ts +++ /dev/null @@ -1 +0,0 @@ -export type CaseData = Record; diff --git a/lib/esm/types/caseData.js b/lib/esm/types/caseData.js deleted file mode 100644 index cb0ff5c..0000000 --- a/lib/esm/types/caseData.js +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/lib/esm/types/surveyDays.d.ts b/lib/esm/types/surveyDays.d.ts deleted file mode 100644 index 071133c..0000000 --- a/lib/esm/types/surveyDays.d.ts +++ /dev/null @@ -1 +0,0 @@ -export type SurveyDays = string[] | Date[]; diff --git a/lib/esm/types/surveyDays.js b/lib/esm/types/surveyDays.js deleted file mode 100644 index cb0ff5c..0000000 --- a/lib/esm/types/surveyDays.js +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/package.json b/package.json index 33af7f2..44b8472 100644 --- a/package.json +++ b/package.json @@ -1,50 +1,66 @@ -{ - "name": "blaise-api-node-client", - "version": "1.0.0", - "module": "lib/esm/blaiseApiClient.js", - "main": "lib/cjs/blaiseApiClient.js", - "types": "lib/esm/blaiseApiClient.d.ts", - "license": "MIT", - "scripts": { - "build": "yarn build:esm && yarn build:cjs", - "build:esm": "tsc", - "build:cjs": "tsc --module commonjs --outDir lib/cjs", - "test": "jest --coverage --watchAll=false", - "lint": "node_modules/.bin/eslint .", - "lint-fix": "node_modules/.bin/eslint . --fix" - }, - "dependencies": { - "@babel/preset-env": "^7.26.9", - "axios": "^1.12.0", - "blaise-iap-node-provider": "git+https://github.com/ONSdigital/blaise-iap-node-provider.git#2.0.2", - "browserslist": "^4.22.2", - "eslint-config-airbnb-base": "^15.0.0", - "eslint-plugin-import": "^2.29.1", - "regenerator-runtime": "^0.14.1" - }, - "devDependencies": { - "@babel/core": "^7.26.9", - "@babel/preset-typescript": "^7.26.0", - "@types/jest": "^27.0.1", - "@types/node": "^16.7.13", - "@types/regenerator-runtime": "^0.13.5", - "@typescript-eslint/eslint-plugin": "^6.20.0", - "@typescript-eslint/parser": "^6.20.0", - "axios-mock-adapter": "^1.21.5", - "babel-jest": "^29.7.0", - "eslint": "^8.8.0", - "jest": "^29.7.0", - "ts-jest": "^29.1.1", - "typescript": "^4.9.5" - }, - "resolutions": { - "@babel/traverse": "^7.23.2", - "@babel/runtime": "^7.26.10", - "js-yaml": "^4.1.1", - "brace-expansion": "^2.0.2" - }, - "files": [ - "/lib", - "/mocks" - ] -} +{ + "name": "blaise-api-node-client", + "version": "1.0.0", + "private": true, + "license": "MIT", + "repository": { + "type": "git", + "url": "git+https://github.com/ONSdigital/blaise-api-node-client.git" + }, + "engines": { + "node": ">=24.0.0" + }, + "type": "module", + "types": "dist/index.d.ts", + "exports": { + ".": { + "types": "./dist/index.d.ts", + "import": "./dist/index.js" + }, + "./mocks": { + "types": "./dist/mocks.d.ts", + "import": "./dist/mocks.js" + }, + "./package.json": "./package.json" + }, + "files": [ + "dist" + ], + "sideEffects": false, + "scripts": { + "build": "yarn tsc -p tsconfig.build.json && yarn publint --pack npm", + "lint": "yarn typecheck && yarn eslint . --max-warnings 0 && yarn prettier --check . && yarn knip", + "lint-fix": "yarn eslint . --fix && yarn prettier --write . && yarn knip --fix", + "prepack": "yarn build", + "spellcheck": "yarn cspell \"**/*.{ts,tsx,json,jsonc,yml,yaml,md}\" --no-progress --no-summary", + "test": "yarn vitest run --coverage", + "test-watch": "yarn vitest", + "typecheck": "yarn tsc --noEmit && yarn tsc --project tsconfig.build.json --noEmit" + }, + "dependencies": { + "axios": "^1.16.1", + "blaise-iap-node-provider": "git+https://github.com/ONSdigital/blaise-iap-node-provider.git#BLAIS5-5177" + }, + "devDependencies": { + "@eslint/js": "^10.0.1", + "@types/node": "^25.9.1", + "@vitest/coverage-v8": "^4.1.7", + "axios-mock-adapter": "^2.1.0", + "cspell": "^10.0.0", + "eslint": "^10.4.0", + "eslint-config-prettier": "^10.1.8", + "eslint-import-resolver-typescript": "^4.4.4", + "eslint-plugin-import-x": "^4.16.2", + "eslint-plugin-jsonc": "^3.1.2", + "globals": "^17.6.0", + "jiti": "^2.7.0", + "jsonc-eslint-parser": "^3.1.0", + "knip": "^6.14.2", + "prettier": "^3.8.3", + "publint": "^0.3.21", + "typescript": "^6.0.3", + "typescript-eslint": "^8.60.0", + "vitest": "^4.1.7" + }, + "packageManager": "yarn@4.14.1" +} diff --git a/src/blaiseApiClient.test.ts b/src/blaiseApiClient.test.ts new file mode 100644 index 0000000..11cddc3 --- /dev/null +++ b/src/blaiseApiClient.test.ts @@ -0,0 +1,95 @@ +import MockAdapter from "axios-mock-adapter"; +import { afterEach, describe, expect, it, vi } from "vitest"; + +import { BlaiseApiClient } from "./blaiseApiClient.js"; + +class TestBlaiseApiClient extends BlaiseApiClient { + public async testGet(url: string) { + return this.get(url); + } + + public createMockAdapter() { + return new MockAdapter(this.httpClient, { onNoMatch: "throwException" }); + } + + public getIapProvider() { + return this.iapProvider; + } + + public getTimeoutInMs() { + return this.httpClient.defaults.timeout; + } +} + +describe("BlaiseApiClient internal configuration", () => { + afterEach(() => { + vi.restoreAllMocks(); + }); + + it("injects auth headers when provider is configured", async () => { + const client = new TestBlaiseApiClient("http://testUri", { + blaiseApiClientId: "test-id", + }); + + const getAuthHeaderSpy = vi + .spyOn(client.getIapProvider()!, "getAuthHeader") + .mockResolvedValue({ Authorization: "Bearer token" }); + + const mock = client.createMockAdapter(); + + mock.onGet("/test").reply(200); + + await client.testGet("/test"); + + expect(getAuthHeaderSpy).toHaveBeenCalled(); + }); + + it("does not inject auth headers when provider is missing", async () => { + const client = new TestBlaiseApiClient("http://testUri"); + + const mock = client.createMockAdapter(); + + mock.onGet("/test").reply(200); + + await client.testGet("/test"); + + expect(client.getIapProvider()).toBeUndefined(); + }); + + it("configures the http client with a timeout when provided", () => { + const timeoutInMs = 5000; + const client = new TestBlaiseApiClient("http://testUri", { timeoutInMs }); + + expect(client.getTimeoutInMs()).toBe(timeoutInMs); + }); + + it("uses a safe default timeout if not provided in config", () => { + const client = new TestBlaiseApiClient("http://testUri"); + + expect(client.getTimeoutInMs()).toBe(30_000); + }); + + it("allows explicitly disabling the timeout", () => { + const client = new TestBlaiseApiClient("http://testUri", { timeoutInMs: 0 }); + + expect(client.getTimeoutInMs()).toBe(0); + }); + + it("rejects an empty API URL", () => { + expect(() => new BlaiseApiClient(" ")).toThrow( + "blaiseApiUrl must be a non-empty absolute http(s) URL", + ); + }); + + it("rejects unsupported API URL protocols", () => { + expect(() => new BlaiseApiClient("ftp://testUri")).toThrow( + "blaiseApiUrl must use the http or https protocol", + ); + }); + + it("rejects invalid timeout values", () => { + expect(() => new BlaiseApiClient("http://testUri", { timeoutInMs: -1 })).toThrow( + "timeoutInMs must be a non-negative finite number", + ); + }); +}); diff --git a/src/blaiseApiClient.ts b/src/blaiseApiClient.ts index 8dc8b23..b24af2c 100644 --- a/src/blaiseApiClient.ts +++ b/src/blaiseApiClient.ts @@ -1,172 +1,139 @@ -import axios, { AxiosInstance, AxiosRequestConfig } from 'axios'; -import BlaiseIapNodeProvider from 'blaise-iap-node-provider'; -import { BlaiseApiConfig } from './interfaces/blaiseApiConfig'; -import { BlaiseApi } from './interfaces/blaiseApi'; -import * as users from './functions/userFunctions'; -import * as questionnaires from './functions/questionnaireFunctions'; -import * as cases from './functions/caseFunctions'; -import * as diagnostics from './functions/diagnosticFunctions'; -import * as daybatch from './functions/daybatchFunctions'; -import * as reports from './functions/questionnaireReportFunctions'; +import axios, { AxiosHeaders, type AxiosInstance } from "axios"; +import { IapProvider } from "blaise-iap-node-provider"; -class BlaiseApiClient implements BlaiseApi { - blaiseApiUrl: string; +import * as cases from "./resources/case.js"; +import * as daybatch from "./resources/daybatch.js"; +import * as diagnostics from "./resources/diagnostic.js"; +import * as questionnaires from "./resources/questionnaire.js"; +import * as reports from "./resources/questionnaireReport.js"; +import * as users from "./resources/user.js"; - blaiseIapProvider?: BlaiseIapNodeProvider; +import type { BlaiseApi } from "./types/blaiseApi.types.js"; +import type { BlaiseApiConfig } from "./types/blaiseApiConfig.types.js"; - httpClient: AxiosInstance; +const DEFAULT_TIMEOUT_IN_MS = 30_000; - constructor(blaiseApiUrl: string, config?: BlaiseApiConfig) { - this.blaiseApiUrl = blaiseApiUrl; +const getApiUrl = (rawApiUrl: string): string => { + const apiUrl = rawApiUrl.trim(); + + if (apiUrl.length === 0) { + throw new TypeError("blaiseApiUrl must be a non-empty absolute http(s) URL"); + } - this.httpClient = axios.create(); + const parsedApiUrl = new URL(apiUrl); - if (config?.timeoutInMs !== undefined) { - this.httpClient.defaults.timeout = config.timeoutInMs; - } + if (parsedApiUrl.protocol !== "http:" && parsedApiUrl.protocol !== "https:") { + throw new TypeError("blaiseApiUrl must use the http or https protocol"); + } + + return apiUrl; +}; + +const getTimeoutInMs = (timeoutInMs?: number): number => { + if (timeoutInMs === undefined) { + return DEFAULT_TIMEOUT_IN_MS; + } + + if (!Number.isFinite(timeoutInMs) || timeoutInMs < 0) { + throw new TypeError("timeoutInMs must be a non-negative finite number"); + } + + return timeoutInMs; +}; + +export class BlaiseApiClient implements BlaiseApi { + protected readonly blaiseApiUrl: string; + + protected readonly iapProvider?: IapProvider; + + protected readonly httpClient: AxiosInstance; + + constructor(blaiseApiUrl: string, config?: BlaiseApiConfig) { + this.blaiseApiUrl = getApiUrl(blaiseApiUrl); if (config?.blaiseApiClientId) { - this.blaiseIapProvider = new BlaiseIapNodeProvider(config.blaiseApiClientId); + this.iapProvider = new IapProvider(config.blaiseApiClientId); } + + this.httpClient = axios.create({ + baseURL: this.blaiseApiUrl, + timeout: getTimeoutInMs(config?.timeoutInMs), + }); + + this.httpClient.interceptors.request.use(async (requestConfig) => { + if (this.iapProvider) { + const authHeaders = await this.iapProvider.getAuthHeader(); + + requestConfig.headers = AxiosHeaders.from({ ...requestConfig.headers, ...authHeaders }); + } + + return requestConfig; + }); } getUser = users.getUser; - getUsers = users.getUsers; - validatePassword = users.validatePassword; - createUser = users.createUser; - deleteUser = users.deleteUser; - getUserRoles = users.getUserRoles; - changePassword = users.changePassword; - changeUserRole = users.changeUserRole; - changeUserServerParks = users.changeUserServerParks; getAllQuestionnairesWithCatiData = questionnaires.getAllQuestionnairesWithCatiData; - getQuestionnairesWithCatiData = questionnaires.getQuestionnairesWithCatiData; - getQuestionnaireWithCatiData = questionnaires.getQuestionnaireWithCatiData; - getQuestionnaires = questionnaires.getQuestionnaires; - questionnaireExists = questionnaires.questionnaireExists; - doesQuestionnaireHaveMode = questionnaires.doesQuestionnaireHaveMode; - getQuestionnaire = questionnaires.getQuestionnaire; - installQuestionnaire = questionnaires.installQuestionnaire; - deleteQuestionnaire = questionnaires.deleteQuestionnaire; - getQuestionnaireCaseIds = questionnaires.getQuestionnaireCaseIds; - getQuestionnaireModes = questionnaires.getQuestionnaireModes; - getQuestionnaireSettings = questionnaires.getQuestionnaireSettings; - activateQuestionnaire = questionnaires.activateQuestionnaire; - deactivateQuestionnaire = questionnaires.deactivateQuestionnaire; getDaybatch = daybatch.getDaybatch; - addDaybatch = daybatch.addDaybatch; - getSurveyDays = daybatch.getSurveyDays; - addSurveyDays = daybatch.addSurveyDays; getCase = cases.getCase; - getCaseMultikey = cases.getCaseMultikey; - addCase = cases.addCase; - updateCase = cases.updateCase; - addCaseMultikey = cases.addCaseMultikey; - - getMultikeyQueryString = cases.getMultikeyQueryString; - getCaseStatus = cases.getCaseStatus; - getCaseEditInformation = cases.getCaseEditInformation; getDiagnostics = diagnostics.getDiagnostics; getQuestionnaireReportData = reports.getQuestionnaireReportData; - // eslint-disable-next-line class-methods-use-this - private url(url: string): string { - let formattedUrl = url; - if (!formattedUrl.startsWith('/')) { - formattedUrl = `/${formattedUrl}`; - } - return formattedUrl; - } - - // eslint-disable-next-line @typescript-eslint/no-explicit-any protected async get(url: string): Promise { - const config = await this.axiosConfig(); - const response = await this.httpClient.get(`${this.blaiseApiUrl}${this.url(url)}`, config); - return response.data as T; + const response = await this.httpClient.get(url); + + return response.data; } - // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types - protected async post(url: string, data: any): Promise { - const config = await this.axiosConfig(); - const response = await this.httpClient.post(`${this.blaiseApiUrl}${this.url(url)}`, data, config); - return response.data as T; + protected async post(url: string, data: unknown): Promise { + const response = await this.httpClient.post(url, data); + + return response.data; } - // eslint-disable-next-line @typescript-eslint/no-explicit-any protected async delete(url: string): Promise { - const config = await this.axiosConfig(); - const response = await this.httpClient.delete(`${this.blaiseApiUrl}${this.url(url)}`, config); - return response.data as T; - } + const response = await this.httpClient.delete(url); - // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-redundant-type-constituents - protected async patch(url: string, data: any | undefined = undefined): Promise { - const config = await this.axiosConfig(); - const response = await this.httpClient.patch(`${this.blaiseApiUrl}${this.url(url)}`, data, config); - return response.data as T; + return response.data; } - private async axiosConfig(): Promise { - let config = {}; - if (this.blaiseIapProvider) { - config = { headers: await this.blaiseIapProvider.getAuthHeader() }; - } - return config; + protected async patch(url: string, data?: unknown): Promise { + const response = await this.httpClient.patch(url, data); + + return response.data; } } - -export default BlaiseApiClient; - -export * from './interfaces/questionnaire'; -export * from './interfaces/diagnostic'; -export * from './interfaces/case'; -export * from './interfaces/user'; -export * from './interfaces/daybatch'; -export * from './interfaces/questionnaireReport'; - -export * from './enums/caseOutcome'; -export * from './enums/editedStatus'; -export * from './types/caseData'; -export * from './types/surveyDays'; - -export * from './mockObjects/caseMockObjects'; -export * from './mockObjects/diagnosticMockObjects'; -export * from './mockObjects/questionnaireMockObjects'; -export * from './mockObjects/userMockObjects'; -export * from './mockObjects/daybatchMockObjects'; -export * from './mockObjects/questionnaireReportMockObjects'; diff --git a/src/enums/caseOutcome.ts b/src/enums/caseOutcome.ts index df1a025..7a04016 100644 --- a/src/enums/caseOutcome.ts +++ b/src/enums/caseOutcome.ts @@ -1,44 +1,44 @@ -// eslint-disable-next-line no-shadow -export enum CaseOutcome { - None = 0, - Completed = 110, - CompletedNudge = 120, - CompletedProxy = 130, - Partial = 210, - AppointmentMade = 300, - NonContact = 310, - HQRefusal = 430, - NotAvailable = 440, - HardRefusal = 460, - SoftRefusal = 461, - LanguageDifficultiesHeadOffice = 541, - LanguageDifficultiesInterviewer = 542, - // eslint-disable-next-line @typescript-eslint/no-duplicate-enum-values - WrongNumber = 542, - DeleteRequestedCompleted = 561, - DeleteRequestedPartial = 562, - IneligibleVacant = 540, - IneligibleNonResidential = 551, - IneligibleInstitution = 560, - IneligibleSecondHome = 580, - ConcernsWontTakePart = 360, - RejectTandCs = 380, - LostAccessCode = 373, - UnableToComplete = 370, - NoInternetAccess = 371, - RequestedDifferentMode = 372, - NoTraceOfAddress = 510, - Under16 = 631, - WrongAddress = 640, - BrailleRequested = 411, - LargePrintRequested = 412, - OtherFormat = 413, - DeleteRequested = 390, - RequestedCopyOfData = 791, - ClarificationOnStudyRequested = 792, - AssistanceRequested = 793, - RequestForContext = 794, - QuestionProblem = 795 -} +const CaseOutcome = { + None: 0, + Completed: 110, + CompletedNudge: 120, + CompletedProxy: 130, + Partial: 210, + AppointmentMade: 300, + NonContact: 310, + HQRefusal: 430, + NotAvailable: 440, + HardRefusal: 460, + SoftRefusal: 461, + LanguageDifficultiesHeadOffice: 541, + LanguageDifficultiesInterviewer: 542, + WrongNumber: 542, + DeleteRequestedCompleted: 561, + DeleteRequestedPartial: 562, + IneligibleVacant: 540, + IneligibleNonResidential: 551, + IneligibleInstitution: 560, + IneligibleSecondHome: 580, + ConcernsWontTakePart: 360, + RejectTandCs: 380, + LostAccessCode: 373, + UnableToComplete: 370, + NoInternetAccess: 371, + RequestedDifferentMode: 372, + NoTraceOfAddress: 510, + Under16: 631, + WrongAddress: 640, + BrailleRequested: 411, + LargePrintRequested: 412, + OtherFormat: 413, + DeleteRequested: 390, + RequestedCopyOfData: 791, + ClarificationOnStudyRequested: 792, + AssistanceRequested: 793, + RequestForContext: 794, + QuestionProblem: 795, +} as const; -export default CaseOutcome; +export type CaseOutcome = (typeof CaseOutcome)[keyof typeof CaseOutcome]; + +export { CaseOutcome }; diff --git a/src/enums/editedStatus.ts b/src/enums/editedStatus.ts index 154bc3e..fc5483b 100644 --- a/src/enums/editedStatus.ts +++ b/src/enums/editedStatus.ts @@ -1,9 +1,10 @@ -// eslint-disable-next-line no-shadow -export enum EditedStatus { - NotStarted = 0, - Started = 1, - Query = 2, - Finished = 3, -} +const EditedStatus = { + NotStarted: 0, + Started: 1, + Query: 2, + Finished: 3, +} as const; -export default EditedStatus; +export type EditedStatus = (typeof EditedStatus)[keyof typeof EditedStatus]; + +export { EditedStatus }; diff --git a/src/enums/organisation.ts b/src/enums/organisation.ts index 4ef29d7..1603796 100644 --- a/src/enums/organisation.ts +++ b/src/enums/organisation.ts @@ -1,8 +1,9 @@ -// eslint-disable-next-line no-shadow -export enum Organisation { - ONS = 1, - NatCen = 2, - Nisra = 3, -} +const Organisation = { + ONS: 1, + NatCen: 2, + Nisra: 3, +} as const; -export default Organisation; +export type Organisation = (typeof Organisation)[keyof typeof Organisation]; + +export { Organisation }; diff --git a/src/functions/caseFunctions.test.ts b/src/functions/caseFunctions.test.ts deleted file mode 100644 index cce0e40..0000000 --- a/src/functions/caseFunctions.test.ts +++ /dev/null @@ -1,187 +0,0 @@ -import MockAdapter from 'axios-mock-adapter'; -import axios from 'axios'; -import 'regenerator-runtime/runtime'; -import BlaiseApiClient, { CaseEditInformationListMockObject, CaseStatusListMockObject } from '../blaiseApiClient'; - -const mock = new MockAdapter(axios, { onNoMatch: 'throwException' }); -const blaiseApiUrl = 'testUri'; - -const blaiseApiClient = new BlaiseApiClient(`http://${blaiseApiUrl}`); - -describe('blaiseApiClient', () => { - describe('get case', () => { - const serverpark = 'test'; - const questionnaireName = 'dst2108t'; - const caseId = '100101;'; - - beforeEach(() => { - mock.onGet(`http://${blaiseApiUrl}/api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}/cases/${caseId}`).reply(200, { - caseId, - fieldData: {}, - }); - }); - - afterEach(() => { - mock.reset(); - }); - - it('returns a case', async () => { - const caseResponse = await blaiseApiClient.getCase(serverpark, questionnaireName, caseId); - - expect(caseResponse.caseId).toEqual(caseId); - expect(caseResponse.fieldData).toEqual({}); - }); - }); - - describe('get case multikey', () => { - const serverpark = 'test'; - const questionnaireName = 'dst2108t'; - const caseId = '100101;'; - const keyValueMap = new Map(); - keyValueMap.set('key1', 'value1'); - keyValueMap.set('key2', 'value2'); - const queryString = blaiseApiClient.getMultikeyQueryString(keyValueMap); - - beforeEach(() => { - mock.onGet(`http://${blaiseApiUrl}/api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}/cases/multikey?${queryString}`).reply(200, { - caseId, - fieldData: {}, - }); - }); - - afterEach(() => { - mock.reset(); - }); - - it('returns a case', async () => { - const caseResponse = await blaiseApiClient.getCaseMultikey(serverpark, questionnaireName, keyValueMap); - - expect(caseResponse.caseId).toEqual(caseId); - expect(caseResponse.fieldData).toEqual({}); - }); - }); - - describe('add case', () => { - const serverpark = 'test'; - const questionnaireName = 'dst2108t'; - const caseId = '100101;'; - - beforeEach(() => { - mock.onPost(`http://${blaiseApiUrl}/api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}/cases/${caseId}`).reply(200, { - caseId, - fieldData: {}, - }); - }); - - afterEach(() => { - mock.reset(); - }); - - it('adds a case', async () => { - const caseResponse = await blaiseApiClient.addCase(serverpark, questionnaireName, caseId, {}); - - expect(caseResponse.caseId).toEqual(caseId); - expect(caseResponse.fieldData).toEqual({}); - }); - }); - - describe('update case', () => { - const serverpark = 'test'; - const questionnaireName = 'dst2108t'; - const caseId = '100101;'; - - beforeEach(() => { - mock.onPatch(`http://${blaiseApiUrl}/api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}/cases/${caseId}`).reply(204, null); - }); - - afterEach(() => { - mock.reset(); - }); - - it('updates a case', async () => { - const result = await blaiseApiClient.updateCase(serverpark, questionnaireName, caseId, {}); - - expect(result).toBeNull(); - }); - }); - - describe('add case multikey', () => { - const serverpark = 'test'; - const questionnaireName = 'dst2108t'; - const caseId = '100101;'; - const keyValueMap = new Map(); - keyValueMap.set('key1', 'value1'); - keyValueMap.set('key2', 'value2'); - const queryString = blaiseApiClient.getMultikeyQueryString(keyValueMap); - - beforeEach(() => { - mock.onPost(`http://${blaiseApiUrl}/api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}/cases/multikey?${queryString}`).reply(200, { - caseId, - fieldData: {}, - }); - }); - - afterEach(() => { - mock.reset(); - }); - - it('adds a case with multiple keys', async () => { - const caseResponse = await blaiseApiClient.addCaseMultikey(serverpark, questionnaireName, keyValueMap, {}); - - expect(caseResponse.caseId).toEqual(caseId); - expect(caseResponse.fieldData).toEqual({}); - }); - }); - - describe('get cases status', () => { - const serverpark = 'test'; - const questionnaireName = 'dst2108t'; - - beforeEach(() => { - mock.onGet(`http://${blaiseApiUrl}/api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}/cases/status`).reply( - 200, - CaseStatusListMockObject, - ); - }); - - afterEach(() => { - mock.reset(); - }); - - it('gets all cases and outcome codes for a given questionnaire', async () => { - const result = await blaiseApiClient.getCaseStatus(serverpark, questionnaireName); - - expect(result).toEqual(CaseStatusListMockObject); - }); - }); - - describe('get case edit information', () => { - const serverpark = 'test'; - const questionnaireName = 'FRS2108A'; - - beforeEach(() => { - mock.onGet(`http://${blaiseApiUrl}/api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}/cases/edit`).reply( - 200, - CaseEditInformationListMockObject, - ); - }); - - afterEach(() => { - mock.reset(); - }); - - it('returns editing details for a case', async () => { - const editingDetailsListResponse = await blaiseApiClient.getCaseEditInformation(serverpark, questionnaireName); - - editingDetailsListResponse.forEach((editingDetailsResponse, index) => { - expect(editingDetailsResponse.primaryKey).toEqual(CaseEditInformationListMockObject[index].primaryKey); - expect(editingDetailsResponse.outcome).toEqual(CaseEditInformationListMockObject[index].outcome); - expect(editingDetailsResponse.assignedTo).toEqual(CaseEditInformationListMockObject[index].assignedTo); - expect(editingDetailsResponse.editedStatus).toEqual(CaseEditInformationListMockObject[index].editedStatus); - expect(editingDetailsResponse.interviewer).toEqual(CaseEditInformationListMockObject[index].interviewer); - expect(editingDetailsResponse.editUrl).toEqual(''); - expect(editingDetailsResponse.readOnlyUrl).toEqual(''); - }); - }); - }); -}); diff --git a/src/functions/caseFunctions.ts b/src/functions/caseFunctions.ts deleted file mode 100644 index 613bd43..0000000 --- a/src/functions/caseFunctions.ts +++ /dev/null @@ -1,46 +0,0 @@ -import BlaiseApiClient from '../blaiseApiClient'; -import { CaseEditInformation, CaseResponse, CaseStatus } from '../interfaces/case'; -import { CaseData } from '../types/caseData'; - -export async function getCase(this: BlaiseApiClient, serverpark: string, questionnaireName: string, caseId: string): Promise { - return this.get(`api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}/cases/${caseId}`); -} - -export function getMultikeyQueryString(multiKeyValueMap: Map) { - const keyNamesQueryString = `keyNames=${Array.from(multiKeyValueMap.keys()).join('&keyNames=')}`; - const keyValuesQueryString = `keyValues=${Array.from(multiKeyValueMap.values()).join('&keyValues=')}`; - const keyValueQueryString = `${keyNamesQueryString}&${keyValuesQueryString}`; - return keyValueQueryString; -} - -export async function getCaseMultikey(this: BlaiseApiClient, serverpark: string, questionnaireName: string, multiKeyValueMap: Map): Promise { - const queryString = getMultikeyQueryString(multiKeyValueMap); - return this.get(`api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}/cases/multikey?${queryString}`); -} - -export async function addCase(this: BlaiseApiClient, serverpark: string, questionnaireName: string, caseId: string, caseFields: CaseData): Promise { - return this.post(`api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}/cases/${caseId}`, caseFields); -} - -export async function updateCase(this: BlaiseApiClient, serverpark: string, questionnaireName: string, caseId: string, caseFields: CaseData): Promise { - return this.patch(`api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}/cases/${caseId}`, caseFields); -} - -export async function addCaseMultikey( - this: BlaiseApiClient, - serverpark: string, - questionnaireName: string, - multiKeyValueMap: Map, - caseFields: CaseData, -): Promise { - const queryString = getMultikeyQueryString(multiKeyValueMap); - return this.post(`api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}/cases/multikey?${queryString}`, caseFields); -} - -export async function getCaseStatus(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise { - return this.get(`api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}/cases/status`); -} - -export async function getCaseEditInformation(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise { - return this.get(`api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}/cases/edit`); -} diff --git a/src/functions/daybatchFunctions.test.ts b/src/functions/daybatchFunctions.test.ts deleted file mode 100644 index 5b0dafb..0000000 --- a/src/functions/daybatchFunctions.test.ts +++ /dev/null @@ -1,102 +0,0 @@ -import MockAdapter from 'axios-mock-adapter'; -import axios from 'axios'; -import 'regenerator-runtime/runtime'; -import BlaiseApiClient, { - QuestionnaireDaybatchCasesMock, AddDaybatchMock, - SurveyDaysMock, SurveyDaysDatesMock, -} from '../blaiseApiClient'; - -const mock = new MockAdapter(axios, { onNoMatch: 'throwException' }); -const blaiseApiUrl = 'testUri'; - -const blaiseApiClient = new BlaiseApiClient(`http://${blaiseApiUrl}`); - -describe('blaiseApiClient', () => { - describe('get daybatch', () => { - const serverpark = 'test'; - const questionnaireName = 'dst2108t'; - - beforeEach(() => { - mock.onGet(`http://${blaiseApiUrl}/api/v2/cati/serverparks/${serverpark}/questionnaires/${questionnaireName}/daybatch`).reply(200, QuestionnaireDaybatchCasesMock); - }); - - afterEach(() => { - mock.reset(); - }); - - it('returns a list of case IDs in the current daybatch', async () => { - const daybatch = await blaiseApiClient.getDaybatch(serverpark, questionnaireName); - - expect(daybatch).toEqual(QuestionnaireDaybatchCasesMock); - }); - }); - - describe('add daybatch', () => { - const serverpark = 'test'; - const questionnaireName = 'dst2108t'; - - beforeEach(() => { - mock.onPost(`http://${blaiseApiUrl}/api/v2/cati/serverparks/${serverpark}/questionnaires/${questionnaireName}/daybatch`).reply( - 201, - QuestionnaireDaybatchCasesMock, - ); - }); - - afterEach(() => { - mock.reset(); - }); - - it('installs an questionnaire and returns the questionnaire file', async () => { - const daybatch = await blaiseApiClient.addDaybatch(serverpark, questionnaireName, AddDaybatchMock); - - expect(daybatch).toEqual(QuestionnaireDaybatchCasesMock); - }); - }); - - describe('get survey days', () => { - const serverpark = 'test'; - const questionnaireName = 'dst2108t'; - - beforeEach(() => { - mock.onGet(`http://${blaiseApiUrl}/api/v2/cati/serverparks/${serverpark}/questionnaires/${questionnaireName}/surveydays`).reply(200, SurveyDaysMock); - }); - - afterEach(() => { - mock.reset(); - }); - - it('returns a list of surveydays', async () => { - const surveyDays = await blaiseApiClient.getSurveyDays(serverpark, questionnaireName); - - expect(surveyDays).toEqual(SurveyDaysMock); - }); - }); - - describe('add survey days', () => { - const serverpark = 'test'; - const questionnaireName = 'dst2108t'; - - beforeEach(() => { - mock.onPost(`http://${blaiseApiUrl}/api/v2/cati/serverparks/${serverpark}/questionnaires/${questionnaireName}/surveydays`).reply( - 201, - SurveyDaysMock, - ); - }); - - afterEach(() => { - mock.reset(); - }); - - it('adds surveydays by strings', async () => { - const surveyDays = await blaiseApiClient.addSurveyDays(serverpark, questionnaireName, SurveyDaysMock); - - expect(surveyDays).toEqual(SurveyDaysMock); - }); - - it('adds surveydays by dates', async () => { - const surveyDays = await blaiseApiClient.addSurveyDays(serverpark, questionnaireName, SurveyDaysDatesMock); - - expect(surveyDays).toEqual(SurveyDaysMock); - }); - }); -}); diff --git a/src/functions/daybatchFunctions.ts b/src/functions/daybatchFunctions.ts deleted file mode 100644 index 3456f76..0000000 --- a/src/functions/daybatchFunctions.ts +++ /dev/null @@ -1,25 +0,0 @@ -import BlaiseApiClient from '../blaiseApiClient'; -import { DaybatchResponse, DaybatchSettings } from '../interfaces/daybatch'; -import { SurveyDays } from '../types/surveyDays'; - -export async function getDaybatch(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise { - return this.get(`/api/v2/cati/serverparks/${serverpark}/questionnaires/${questionnaireName}/daybatch`); -} - -export async function addDaybatch(this: BlaiseApiClient, serverpark: string, questionnaireName: string, daybatchSettings: DaybatchSettings): Promise { - return this.post(`/api/v2/cati/serverparks/${serverpark}/questionnaires/${questionnaireName}/daybatch`, daybatchSettings); -} - -export async function getSurveyDays(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise { - return this.get(`api/v2/cati/serverparks/${serverpark}/questionnaires/${questionnaireName}/surveydays`); -} - -export async function addSurveyDays(this: BlaiseApiClient, serverpark: string, questionnaireName: string, surveyDays: SurveyDays): Promise { - const formattedSurveyDays = surveyDays.map((surveyDay: string | Date) => { - if (surveyDay instanceof Date) { - return surveyDay.toISOString(); - } - return surveyDay; - }); - return this.post(`api/v2/cati/serverparks/${serverpark}/questionnaires/${questionnaireName}/surveydays`, formattedSurveyDays); -} diff --git a/src/functions/diagnosticFunctions.test.ts b/src/functions/diagnosticFunctions.test.ts deleted file mode 100644 index e808190..0000000 --- a/src/functions/diagnosticFunctions.test.ts +++ /dev/null @@ -1,33 +0,0 @@ -import MockAdapter from 'axios-mock-adapter'; -import axios from 'axios'; -import 'regenerator-runtime/runtime'; -import BlaiseApiClient from '../blaiseApiClient'; -import { DiagnosticMockObject } from '../mockObjects/diagnosticMockObjects'; - -const mock = new MockAdapter(axios, { onNoMatch: 'throwException' }); -const blaiseApiUrl = 'testUri'; - -const blaiseApiClient = new BlaiseApiClient(`http://${blaiseApiUrl}`); - -describe('BlaiseRestapiClient', () => { - describe('get health Check from API', () => { - beforeAll(() => { - mock.onGet(`http://${blaiseApiUrl}/api/v2/health/diagnosis`).reply( - 200, - DiagnosticMockObject, - ); - }); - - afterAll(() => { - mock.reset(); - }); - - it('returns a list of diagnostics', async () => { - const diagnostics = await blaiseApiClient.getDiagnostics(); - - expect(diagnostics).toHaveLength(4); - expect(diagnostics[0].status).toEqual('OK'); - expect(diagnostics[0]['health check type']).toEqual('Connection model'); - }); - }); -}); diff --git a/src/functions/diagnosticFunctions.ts b/src/functions/diagnosticFunctions.ts deleted file mode 100644 index 10a82ca..0000000 --- a/src/functions/diagnosticFunctions.ts +++ /dev/null @@ -1,8 +0,0 @@ -import BlaiseApiClient from '../blaiseApiClient'; -import { Diagnostic } from '../interfaces/diagnostic'; - -export async function getDiagnostics(this: BlaiseApiClient): Promise { - return this.get('/api/v2/health/diagnosis'); -} - -export default getDiagnostics; diff --git a/src/functions/questionnaireFunctions.test.ts b/src/functions/questionnaireFunctions.test.ts deleted file mode 100644 index b16795d..0000000 --- a/src/functions/questionnaireFunctions.test.ts +++ /dev/null @@ -1,312 +0,0 @@ -import MockAdapter from 'axios-mock-adapter'; -import axios from 'axios'; -import 'regenerator-runtime/runtime'; -import BlaiseApiClient, { - QuestionnaireListMockObject, - QuestionnaireMockObject, - InstallQuestionnaireMockObject, - InstallQuestionnaireResponseMockObject, QuestionnaireSettingsMockList, -} from '../blaiseApiClient'; - -const mock = new MockAdapter(axios, { onNoMatch: 'throwException' }); -const blaiseApiUrl = 'testUri'; - -const blaiseApiClient = new BlaiseApiClient(`http://${blaiseApiUrl}`); - -describe('blaiseApiClient', () => { - describe('get all questionnaires with Cati data', () => { - beforeEach(() => { - mock.onGet(`http://${blaiseApiUrl}/api/v2/cati/questionnaires`).reply( - 200, - QuestionnaireListMockObject, - ); - }); - - afterEach(() => { - mock.reset(); - }); - - it('returns a list of all questionnaires including CATI data', async () => { - const questionnaires = await blaiseApiClient.getAllQuestionnairesWithCatiData(); - - expect(questionnaires).toEqual(QuestionnaireListMockObject); - }); - }); - - describe('get questionnaires with Cati data', () => { - const serverpark = 'test'; - - beforeEach(() => { - mock.onGet(`http://${blaiseApiUrl}/api/v2/cati/serverparks/${serverpark}/questionnaires`).reply( - 200, - QuestionnaireListMockObject, - ); - }); - - afterEach(() => { - mock.reset(); - }); - - it('returns a list of all questionnaires including CATI data within a serverpark', async () => { - const questionnaires = await blaiseApiClient.getQuestionnairesWithCatiData(serverpark); - - expect(questionnaires).toEqual(QuestionnaireListMockObject); - }); - }); - - describe('get questionnaire with Cati data', () => { - const serverpark = 'test'; - - beforeEach(() => { - mock.onGet(`http://${blaiseApiUrl}/api/v2/cati/serverparks/${serverpark}/questionnaires/${QuestionnaireMockObject.name}`).reply( - 200, - QuestionnaireMockObject, - ); - }); - - afterEach(() => { - mock.reset(); - }); - - it('returns an questionnaire including CATI data', async () => { - const questionnaire = await blaiseApiClient.getQuestionnaireWithCatiData(serverpark, QuestionnaireMockObject.name); - - expect(questionnaire).toEqual(QuestionnaireMockObject); - }); - }); - - describe('get questionnaires', () => { - const serverpark = 'test'; - - beforeEach(() => { - mock.onGet(`http://${blaiseApiUrl}/api/v2/serverparks/${serverpark}/questionnaires`).reply( - 200, - QuestionnaireListMockObject, - ); - }); - - afterEach(() => { - mock.reset(); - }); - - it('returns a list of questionnaires in a serverpark', async () => { - const questionnaires = await blaiseApiClient.getQuestionnaires(serverpark); - - expect(questionnaires).toEqual(QuestionnaireListMockObject); - }); - }); - - describe('get questionnaire', () => { - const serverpark = 'test'; - - beforeEach(() => { - mock.onGet(`http://${blaiseApiUrl}/api/v2/serverparks/${serverpark}/questionnaires/${QuestionnaireMockObject.name}`).reply( - 200, - QuestionnaireMockObject, - ); - }); - - afterEach(() => { - mock.reset(); - }); - - it('returns a questionnaire', async () => { - const questionnaire = await blaiseApiClient.getQuestionnaire(serverpark, QuestionnaireMockObject.name); - - expect(questionnaire).toEqual(QuestionnaireMockObject); - }); - }); - - describe('get whether questionnaire exists', () => { - const serverpark = 'test'; - const questionnaireInstalled = 'OPN2101A'; - const questionnaireNotInstalled = 'OPN2102B'; - - beforeEach(() => { - mock.onGet(`http://${blaiseApiUrl}/api/v2/serverparks/${serverpark}/questionnaires/${questionnaireInstalled}/exists`).reply(200, true); - mock.onGet(`http://${blaiseApiUrl}/api/v2/serverparks/${serverpark}/questionnaires/${questionnaireNotInstalled}/exists`).reply(200, false); - }); - - afterEach(() => { - mock.reset(); - }); - - it('returns true if it exists', async () => { - const exists = await blaiseApiClient.questionnaireExists(serverpark, questionnaireInstalled); - - expect(exists).toEqual(true); - }); - - it('returns false if it does not exist', async () => { - const exists = await blaiseApiClient.questionnaireExists(serverpark, questionnaireNotInstalled); - - expect(exists).toEqual(false); - }); - }); - - describe('get whether questionnaire has mode', () => { - const serverpark = 'test'; - const hasMode = 'CATI'; - const doesntHaveMode = 'WEB'; - - beforeEach(() => { - mock.onGet(`http://${blaiseApiUrl}/api/v2/serverparks/${serverpark}/questionnaires/${QuestionnaireMockObject.name}/modes/${hasMode}`).reply(200, true); - mock.onGet(`http://${blaiseApiUrl}/api/v2/serverparks/${serverpark}/questionnaires/${QuestionnaireMockObject.name}/modes/${doesntHaveMode}`).reply(200, false); - }); - - afterEach(() => { - mock.reset(); - }); - - it('returns true if questionnaire has mode', async () => { - const exists = await blaiseApiClient.doesQuestionnaireHaveMode(serverpark, QuestionnaireMockObject.name, hasMode); - - expect(exists).toEqual(true); - }); - - it('returns false if questionnaire does not have mode', async () => { - const exists = await blaiseApiClient.doesQuestionnaireHaveMode(serverpark, QuestionnaireMockObject.name, doesntHaveMode); - - expect(exists).toEqual(false); - }); - }); - - describe('installquestionnaire', () => { - const serverpark = 'test'; - - beforeEach(() => { - mock.onPost(`http://${blaiseApiUrl}/api/v2/serverparks/${serverpark}/questionnaires`).reply( - 201, - InstallQuestionnaireResponseMockObject, - ); - }); - - afterEach(() => { - mock.reset(); - }); - - it('installs an questionnaire and returns the questionnaire file', async () => { - const questionnaire = await blaiseApiClient.installQuestionnaire(serverpark, InstallQuestionnaireMockObject); - - expect(questionnaire).toEqual(InstallQuestionnaireResponseMockObject); - }); - }); - - describe('delete questionnaire', () => { - const serverpark = 'test'; - const questionnaireName = 'OPN2004A'; - - beforeEach(() => { - mock.onDelete(`http://${blaiseApiUrl}/api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}?name=${questionnaireName}`).reply( - 204, - null, - ); - }); - - afterEach(() => { - mock.reset(); - }); - - it('deletes an questionnaire', async () => { - const result = await blaiseApiClient.deleteQuestionnaire(serverpark, questionnaireName); - - expect(result).toBeNull(); - }); - }); - - describe('get a list of case ids for in questionnaire', () => { - const serverpark = 'test'; - const questionnaireInstalled = 'OPN2101A'; - - const expectedCaseIds = ['100002', '100003']; - - beforeEach(() => { - mock.onGet(`http://${blaiseApiUrl}/api/v2/serverparks/${serverpark}/questionnaires/${questionnaireInstalled}/cases/ids`).reply(200, expectedCaseIds); - }); - - afterEach(() => { - mock.reset(); - }); - - it('returns expected list of ids', async () => { - const caseIds = await blaiseApiClient.getQuestionnaireCaseIds(serverpark, questionnaireInstalled); - - expect(caseIds).toEqual(expectedCaseIds); - }); - }); - - describe('get questionnaire modes', () => { - const serverpark = 'test'; - - beforeEach(() => { - mock.onGet(`http://${blaiseApiUrl}/api/v2/serverparks/${serverpark}/questionnaires/${QuestionnaireMockObject.name}/modes`).reply(200, ['CATI', 'CAWI']); - }); - - afterEach(() => { - mock.reset(); - }); - - it('returns list of modes for questionnaire', async () => { - const exists = await blaiseApiClient.getQuestionnaireModes(serverpark, QuestionnaireMockObject.name); - - expect(exists).toContain('CATI'); - expect(exists).toContain('CAWI'); - }); - }); - - describe('get questionnaire settings', () => { - const serverpark = 'test'; - - beforeEach(() => { - mock.onGet(`http://${blaiseApiUrl}/api/v2/serverparks/${serverpark}/questionnaires/${QuestionnaireMockObject.name}/settings`).reply(200, QuestionnaireSettingsMockList); - }); - - afterEach(() => { - mock.reset(); - }); - - it('returns list of settings for questionnaire', async () => { - const exists = await blaiseApiClient.getQuestionnaireSettings(serverpark, QuestionnaireMockObject.name); - - expect(exists).toEqual(QuestionnaireSettingsMockList); - }); - }); - - describe('activate questionnaire', () => { - const serverpark = 'test'; - const questionnaireName = 'dst2108t'; - - beforeEach(() => { - mock.onPatch(`http://${blaiseApiUrl}/api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}/activate`).reply(204, null); - }); - - afterEach(() => { - mock.reset(); - }); - - it('activates an questionnaire', async () => { - const result = await blaiseApiClient.activateQuestionnaire(serverpark, questionnaireName); - - expect(result).toBeNull(); - }); - }); - - describe('deactivate questionnaire', () => { - const serverpark = 'test'; - const questionnaireName = 'dst2108t'; - - beforeEach(() => { - mock.onPatch(`http://${blaiseApiUrl}/api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}/deactivate`).reply(204, null); - }); - - afterEach(() => { - mock.reset(); - }); - - it('deactivates an questionnaire', async () => { - const result = await blaiseApiClient.deactivateQuestionnaire(serverpark, questionnaireName); - - expect(result).toBeNull(); - }); - }); -}); diff --git a/src/functions/questionnaireFunctions.ts b/src/functions/questionnaireFunctions.ts deleted file mode 100644 index cfb62c1..0000000 --- a/src/functions/questionnaireFunctions.ts +++ /dev/null @@ -1,60 +0,0 @@ -import BlaiseApiClient from '../blaiseApiClient'; -import { - InstallQuestionnaire, InstallQuestionnaireResponse, Questionnaire, QuestionnaireSettings, -} from '../interfaces/questionnaire'; - -export async function getAllQuestionnairesWithCatiData(this: BlaiseApiClient): Promise { - return this.get('/api/v2/cati/questionnaires'); -} - -export async function getQuestionnairesWithCatiData(this: BlaiseApiClient, serverpark: string): Promise { - return this.get(`/api/v2/cati/serverparks/${serverpark}/questionnaires`); -} - -export async function getQuestionnaireWithCatiData(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise { - return this.get(`/api/v2/cati/serverparks/${serverpark}/questionnaires/${questionnaireName}`); -} - -export async function getQuestionnaires(this: BlaiseApiClient, serverpark: string): Promise { - return this.get(`/api/v2/serverparks/${serverpark}/questionnaires`); -} - -export async function questionnaireExists(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise { - return this.get(`/api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}/exists`); -} - -export async function doesQuestionnaireHaveMode(this: BlaiseApiClient, serverpark: string, questionnaireName: string, mode: string): Promise { - return this.get(`/api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}/modes/${mode}`); -} - -export async function getQuestionnaire(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise { - return this.get(`/api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}`); -} - -export async function installQuestionnaire(this: BlaiseApiClient, serverpark: string, questionnaire: InstallQuestionnaire): Promise { - return this.post(`/api/v2/serverparks/${serverpark}/questionnaires`, questionnaire); -} - -export async function deleteQuestionnaire(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise { - return this.delete(`/api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}?name=${questionnaireName}`); -} - -export async function getQuestionnaireCaseIds(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise { - return this.get(`/api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}/cases/ids`); -} - -export async function getQuestionnaireModes(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise { - return this.get(`/api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}/modes`); -} - -export async function getQuestionnaireSettings(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise { - return this.get(`/api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}/settings`); -} - -export async function activateQuestionnaire(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise { - return this.patch(`api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}/activate`); -} - -export async function deactivateQuestionnaire(this: BlaiseApiClient, serverpark: string, questionnaireName: string): Promise { - return this.patch(`api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}/deactivate`); -} diff --git a/src/functions/questionnaireReportFunctions.test.ts b/src/functions/questionnaireReportFunctions.test.ts deleted file mode 100644 index 72b3fba..0000000 --- a/src/functions/questionnaireReportFunctions.test.ts +++ /dev/null @@ -1,37 +0,0 @@ -import MockAdapter from 'axios-mock-adapter'; -import axios from 'axios'; -import 'regenerator-runtime/runtime'; -import BlaiseApiClient from '../blaiseApiClient'; -import reportMockObject from '../mockObjects/questionnaireReportMockObjects'; - -const mock = new MockAdapter(axios, { onNoMatch: 'throwException' }); -const blaiseApiUrl = 'testUri'; - -const blaiseApiClient = new BlaiseApiClient(`http://${blaiseApiUrl}`); - -const fieldIds = ['qhadmin.hout', 'allocation.toeditor']; - -describe('BlaiseRestapiClient', () => { - describe('get reporting data from API', () => { - const serverpark = 'test'; - const questionnaireName = 'dst2108t'; - const expectedQueryString = `?fieldIds=${fieldIds[0]}&fieldIds=${fieldIds[1]}`; - - beforeAll(() => { - mock.onGet(`http://${blaiseApiUrl}/api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}/report${expectedQueryString}`).reply( - 200, - reportMockObject, - ); - }); - - afterAll(() => { - mock.reset(); - }); - - it('returns an expect report', async () => { - const reportData = await blaiseApiClient.getQuestionnaireReportData(serverpark, questionnaireName, fieldIds); - - expect(reportData).toEqual(reportMockObject); - }); - }); -}); diff --git a/src/functions/questionnaireReportFunctions.ts b/src/functions/questionnaireReportFunctions.ts deleted file mode 100644 index 9fd1ccf..0000000 --- a/src/functions/questionnaireReportFunctions.ts +++ /dev/null @@ -1,13 +0,0 @@ -import BlaiseApiClient from '../blaiseApiClient'; -import { QuestionnaireReport } from '../interfaces/questionnaireReport'; - -export async function getQuestionnaireReportData(this: BlaiseApiClient, serverpark: string, questionnaireName: string, fieldIds:string[]): Promise { - const queryArray:string[] = []; - fieldIds.forEach((fieldId) => { - queryArray.push(`fieldIds=${fieldId}`); - }); - - return this.get(`/api/v2/serverparks/${serverpark}/questionnaires/${questionnaireName}/report?${queryArray.join('&')}`); -} - -export default getQuestionnaireReportData; diff --git a/src/functions/userFunctions.test.ts b/src/functions/userFunctions.test.ts deleted file mode 100644 index a61b341..0000000 --- a/src/functions/userFunctions.test.ts +++ /dev/null @@ -1,205 +0,0 @@ -import MockAdapter from 'axios-mock-adapter'; -import axios from 'axios'; -import 'regenerator-runtime/runtime'; -import BlaiseApiClient from '../blaiseApiClient'; -import { CreateUserMockObject, CreateUserResponseMockObject } from '../mockObjects/userMockObjects'; - -const mock = new MockAdapter(axios, { onNoMatch: 'throwException' }); -const blaiseApiUrl = 'testUri'; - -const blaiseApiClient = new BlaiseApiClient(`http://${blaiseApiUrl}`); - -describe('blaiseApiClient users', () => { - describe('get user', () => { - const username = 'test-user'; - - beforeEach(() => { - mock.onGet(`http://${blaiseApiUrl}/api/v2/users/${username}`).reply(200, { - name: username, - role: 'DST', - serverParks: ['gusty'], - defaultServerPark: 'gusty', - }); - }); - - afterEach(() => { - mock.reset(); - }); - - it('returns the user details', async () => { - const result = await blaiseApiClient.getUser(username); - - expect(result.name).toEqual(username); - expect(result.role).toEqual('DST'); - }); - }); - - describe('get users', () => { - beforeEach(() => { - mock.onGet(`http://${blaiseApiUrl}/api/v2/users`).reply(200, [ - { - name: 'test-user', - role: 'DST', - serverParks: ['gusty'], - defaultServerPark: 'gusty', - }, - ]); - }); - - afterEach(() => { - mock.reset(); - }); - - it('returns the user details', async () => { - const result = await blaiseApiClient.getUsers(); - - expect(result).toEqual([ - { - name: 'test-user', - role: 'DST', - serverParks: ['gusty'], - defaultServerPark: 'gusty', - }, - ]); - }); - }); - - describe('validate password - valid', () => { - const username = 'test-user'; - const password = 'test-password'; - - beforeEach(() => { - mock.onPost(`http://${blaiseApiUrl}/api/v2/users/${username}/validate`).reply(200, true); - }); - - afterEach(() => { - mock.reset(); - }); - - it('returns true', async () => { - expect(await blaiseApiClient.validatePassword(username, password)).toBeTruthy(); - }); - }); - - describe('validate password - invalid', () => { - const username = 'test-user'; - const password = 'test-password'; - - beforeEach(() => { - mock.onPost(`http://${blaiseApiUrl}/api/v2/users/${username}/validate`).reply(200, false); - }); - - afterEach(() => { - mock.reset(); - }); - - it('returns false', async () => { - expect(await blaiseApiClient.validatePassword(username, password)).toBeFalsy(); - }); - }); - - describe('create user', () => { - beforeEach(() => { - mock.onPost(`http://${blaiseApiUrl}/api/v2/users`).reply( - 201, - CreateUserResponseMockObject, - ); - }); - - afterEach(() => { - mock.reset(); - }); - - it('creates a user and returns a response', async () => { - const createUser = await blaiseApiClient.createUser(CreateUserMockObject); - - expect(createUser.name).toEqual('Beyonce'); - expect(createUser.role).toEqual('DST'); - expect(createUser.serverParks).toHaveLength(1); - expect(createUser.defaultServerPark).toEqual('gusty'); - }); - }); - - describe('delete user', () => { - const userName = 'Beyonce'; - - beforeEach(() => { - mock.onDelete(`http://${blaiseApiUrl}/api/v2/users/${userName}`).reply( - 204, - null, - ); - }); - - afterEach(() => { - mock.reset(); - }); - - it('deletes a user', async () => { - const result = await blaiseApiClient.deleteUser(userName); - - expect(result).toBeNull(); - }); - }); - - describe('get user roles', () => { - beforeEach(() => { - mock.onGet(`http://${blaiseApiUrl}/api/v2/userroles`).reply(200, [ - { - name: 'test-role', - description: 'test', - permissions: ['test'], - }, - ]); - }); - - afterEach(() => { - mock.reset(); - }); - - it('returns the user details', async () => { - const result = await blaiseApiClient.getUserRoles(); - - expect(result).toEqual([ - { - name: 'test-role', - description: 'test', - permissions: ['test'], - }, - ]); - }); - }); - - describe('change password ', () => { - const username = 'test-user'; - const password = 'test-password'; - - beforeEach(() => { - mock.onPatch(`http://${blaiseApiUrl}/api/v2/users/${username}/password`).reply(204, null); - }); - - afterEach(() => { - mock.reset(); - }); - - it('returns null', async () => { - expect(await blaiseApiClient.changePassword(username, password)).toBeNull(); - }); - }); - - describe('change user role ', () => { - const username = 'test-user'; - const role = 'test-role'; - - beforeEach(() => { - mock.onPatch(`http://${blaiseApiUrl}/api/v2/users/${username}/role`).reply(204, null); - }); - - afterEach(() => { - mock.reset(); - }); - - it('returns null', async () => { - expect(await blaiseApiClient.changeUserRole(username, role)).toBeNull(); - }); - }); -}); diff --git a/src/functions/userFunctions.ts b/src/functions/userFunctions.ts deleted file mode 100644 index c07aa11..0000000 --- a/src/functions/userFunctions.ts +++ /dev/null @@ -1,45 +0,0 @@ -import BlaiseApiClient from '../blaiseApiClient'; -import { - NewUser, User, UserRole, PasswordRequest, - RoleRequest, -} from '../interfaces/user'; - -export async function getUser(this: BlaiseApiClient, username: string): Promise { - return this.get(`api/v2/users/${username}`); -} - -export async function getUsers(this: BlaiseApiClient): Promise { - return this.get('api/v2/users'); -} - -export async function validatePassword(this: BlaiseApiClient, username: string, password: string): Promise { - const validationRequest: PasswordRequest = { password }; - return this.post(`api/v2/users/${username}/validate`, validationRequest); -} - -export async function createUser(this: BlaiseApiClient, user: NewUser): Promise { - return this.post('/api/v2/users', user); -} - -export async function deleteUser(this: BlaiseApiClient, username: string): Promise { - return this.delete(`/api/v2/users/${username}`); -} - -export async function getUserRoles(this: BlaiseApiClient): Promise { - return this.get('/api/v2/userroles'); -} - -export async function changeUserRole(this: BlaiseApiClient, username: string, role: string): Promise { - const roleRequest: RoleRequest = { role }; - return this.patch(`/api/v2/users/${username}/role`, roleRequest); -} - -export async function changeUserServerParks(this: BlaiseApiClient, username: string, serverParks: string[], defaultServerPark: string): Promise { - const serverParksRequest = { serverParks, defaultServerPark }; - return this.patch(`/api/v2/users/${username}/serverparks`, serverParksRequest); -} - -export async function changePassword(this: BlaiseApiClient, username: string, password: string): Promise { - const passwordRequest: PasswordRequest = { password }; - return this.patch(`/api/v2/users/${username}/password`, passwordRequest); -} diff --git a/src/index.ts b/src/index.ts new file mode 100644 index 0000000..0154b89 --- /dev/null +++ b/src/index.ts @@ -0,0 +1,27 @@ +export { BlaiseApiClient } from "./blaiseApiClient.js"; + +export * from "./types/blaiseApi.types.js"; + +export * from "./types/blaiseApiConfig.types.js"; + +export * from "./types/case.types.js"; + +export * from "./types/common.types.js"; + +export * from "./types/daybatch.types.js"; + +export * from "./types/diagnostic.types.js"; + +export * from "./types/questionnaire.types.js"; + +export * from "./types/questionnaireReport.types.js"; + +export * from "./types/survey.types.js"; + +export * from "./types/user.types.js"; + +export * from "./enums/caseOutcome.js"; + +export * from "./enums/editedStatus.js"; + +export * from "./enums/organisation.js"; diff --git a/src/interfaces/blaiseApi.ts b/src/interfaces/blaiseApi.ts deleted file mode 100644 index f72e305..0000000 --- a/src/interfaces/blaiseApi.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { Questionnaire } from './questionnaire'; - -export interface BlaiseApi { - getQuestionnaires(serverPark: string): Promise - } diff --git a/src/interfaces/blaiseApiConfig.ts b/src/interfaces/blaiseApiConfig.ts deleted file mode 100644 index 8c8c57e..0000000 --- a/src/interfaces/blaiseApiConfig.ts +++ /dev/null @@ -1,4 +0,0 @@ -export interface BlaiseApiConfig { - timeoutInMs?: number; - blaiseApiClientId?: string; - } diff --git a/src/interfaces/case.ts b/src/interfaces/case.ts deleted file mode 100644 index 6838f3a..0000000 --- a/src/interfaces/case.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { EditedStatus } from '../blaiseApiClient'; -import { CaseOutcome } from '../enums/caseOutcome'; -import Organisation from '../enums/organisation'; -import { CaseData } from '../types/caseData'; - -export interface CaseResponse { - caseId: string - fieldData: CaseData -} - -export interface CaseStatus { - primaryKey: string, - outcome: CaseOutcome -} - -export interface CaseEditInformation { - primaryKey: string, - outcome: CaseOutcome, - assignedTo: string, - interviewer: string, - editedStatus: EditedStatus, - organisation: Organisation, - editUrl: string, - readOnlyUrl: string -} diff --git a/src/interfaces/daybatch.ts b/src/interfaces/daybatch.ts deleted file mode 100644 index b1eeabb..0000000 --- a/src/interfaces/daybatch.ts +++ /dev/null @@ -1,9 +0,0 @@ -export interface DaybatchResponse { - dayBatchDate: string - caseIds: string[] -} - -export interface DaybatchSettings { - dayBatchDate: string - checkForTreatedCases: boolean -} diff --git a/src/interfaces/diagnostic.ts b/src/interfaces/diagnostic.ts deleted file mode 100644 index d7a063c..0000000 --- a/src/interfaces/diagnostic.ts +++ /dev/null @@ -1,4 +0,0 @@ -export interface Diagnostic { - 'health check type': string - status: string -} diff --git a/src/interfaces/questionnaire.ts b/src/interfaces/questionnaire.ts deleted file mode 100644 index 7c9b7e6..0000000 --- a/src/interfaces/questionnaire.ts +++ /dev/null @@ -1,40 +0,0 @@ -export interface Node { - nodeName: string; - nodeStatus: string; -} - -export interface Questionnaire { - installDate: string - name: string - expired?: boolean - serverParkName: string - activeToday?: boolean // deprecated - surveyDays?: string[] // deprecated - link?: string - fieldPeriod?: string - surveyTla?: string - dataRecordCount?: number - status?: string - hasData?: boolean - nodes?: Node[] - active?: boolean // deprecated - blaiseVersion?: string -} - -export interface InstallQuestionnaire { - questionnaireFile: string -} - -export interface InstallQuestionnaireResponse { - questionnaireFile: string -} - -export interface QuestionnaireSettings { - type: string - saveSessionOnTimeout: boolean - saveSessionOnQuit: boolean - deleteSessionOnTimeout: boolean - deleteSessionOnQuit: boolean - sessionTimeout: number - applyRecordLocking: boolean -} diff --git a/src/interfaces/questionnaireReport.ts b/src/interfaces/questionnaireReport.ts deleted file mode 100644 index ec4ee82..0000000 --- a/src/interfaces/questionnaireReport.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { CaseData } from '../types/caseData'; - -export interface QuestionnaireReport -{ - questionnaireName: string, - questionnaireId: string, - reportingData: CaseData[] -} diff --git a/src/interfaces/survey.ts b/src/interfaces/survey.ts deleted file mode 100644 index 10d2d3f..0000000 --- a/src/interfaces/survey.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { Questionnaire } from './questionnaire'; - -export interface Survey { - questionnaires: Questionnaire[] - survey: string -} diff --git a/src/interfaces/user.ts b/src/interfaces/user.ts deleted file mode 100644 index 0a8ebee..0000000 --- a/src/interfaces/user.ts +++ /dev/null @@ -1,24 +0,0 @@ -export interface User { - name: string, - role: string, - serverParks: string[], - defaultServerPark: string -} - -export interface PasswordRequest { - password: string -} - -export interface RoleRequest { - role: string -} - -export interface UserRole { - name: string, - description: string, - permissions: string[] -} - -export interface NewUser extends User { - password: string -} diff --git a/src/mockObjects/caseMockObjects.ts b/src/mockObjects/caseMockObjects.ts deleted file mode 100644 index b720cbd..0000000 --- a/src/mockObjects/caseMockObjects.ts +++ /dev/null @@ -1,66 +0,0 @@ -import { CaseEditInformation, CaseResponse, CaseStatus } from '../interfaces/case'; - -export const CaseStatusListMockObject:CaseStatus[] = [{ - primaryKey: '1', - outcome: 110, -}, { - primaryKey: '2', - outcome: 310, -}, { - primaryKey: '3', - outcome: 0, -}]; - -export const CaseResponseMockObject:CaseResponse = { - caseId: '1', - fieldData: { - 'qiD.Serial_Number': '1', - 'qDataBag.Prem1': 'Flat 1', - 'qDataBag.Prem2': 'Richmond House', - 'qDataBag.Prem3': 'Rice Road', - 'qDataBag.Prem4': '', - 'qDataBag.District': 'Gwent', - 'qDataBag.PostTown': 'Newport', - 'qDataBag.PostCode': 'NZ11 4PD', - 'qhAdmin.HOut': '100', - 'qhAdmin.Interviewer[1]': 'rich', - 'dmName[1]': 'Richmond Ricecake', - 'dmDteOfBth[1]': '1980-01-15', - 'dmName[2]': 'Richmond Junior', - 'dmDteOfBth[2]': '2005-04-12', - dmhSize: '2', - }, -}; - -export const CaseEditInformationListMockObject:CaseEditInformation[] = [ - { - primaryKey: '100101', - outcome: 110, - assignedTo: 'Rich', - interviewer: 'Jane Doe', - editedStatus: 3, - organisation: 1, - editUrl: '', - readOnlyUrl: '', - }, - { - primaryKey: '100102', - outcome: 210, - assignedTo: 'Jake', - interviewer: 'Bob Roberts', - editedStatus: 3, - organisation: 1, - editUrl: '', - readOnlyUrl: '', - }, - { - primaryKey: '100113', - outcome: 430, - assignedTo: 'Jamie', - interviewer: 'Frank Frankinson', - editedStatus: 3, - organisation: 1, - editUrl: '', - readOnlyUrl: '', - }, -]; diff --git a/src/mockObjects/daybatchMockObjects.ts b/src/mockObjects/daybatchMockObjects.ts deleted file mode 100644 index 55ff5d9..0000000 --- a/src/mockObjects/daybatchMockObjects.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { DaybatchResponse, DaybatchSettings } from '../interfaces/daybatch'; -import { SurveyDays } from '../types/surveyDays'; - -export const QuestionnaireDaybatchCasesMock:DaybatchResponse[] = [ - { - dayBatchDate: '2021-01-15T14:41:29.4399898+00:00', - caseIds: [ - '100101', - '100102', - '100103', - '100104', - ], - }, -]; - -export const AddDaybatchMock:DaybatchSettings = { - dayBatchDate: '2021-01-15T14:41:29.4399898+00:00', - checkForTreatedCases: true, -}; - -export const SurveyDaysMock = [ - '2021-01-15T14:41:29.4399898+00:00', -]; - -export const SurveyDaysDatesMock:SurveyDays = [ - new Date('2021-01-15T14:41:29.4399898+00:00'), -]; diff --git a/src/mockObjects/diagnosticMockObjects.ts b/src/mockObjects/diagnosticMockObjects.ts deleted file mode 100644 index 63496a1..0000000 --- a/src/mockObjects/diagnosticMockObjects.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { Diagnostic } from '../interfaces/diagnostic'; - -export const DiagnosticMockObject:Diagnostic[] = [ - { 'health check type': 'Connection model', status: 'OK' }, - { 'health check type': 'Blaise connection', status: 'OK' }, - { 'health check type': 'Remote data server connection', status: 'OK' }, - { 'health check type': 'Remote Cati management connection', status: 'OK' }, -]; - -export default DiagnosticMockObject; diff --git a/src/mockObjects/questionnaireMockObjects.ts b/src/mockObjects/questionnaireMockObjects.ts deleted file mode 100644 index 917dd70..0000000 --- a/src/mockObjects/questionnaireMockObjects.ts +++ /dev/null @@ -1,58 +0,0 @@ -import { - InstallQuestionnaire, InstallQuestionnaireResponse, Questionnaire, QuestionnaireSettings, -} from '../interfaces/questionnaire'; - -export const QuestionnaireListMockObject:Questionnaire[] = [{ - name: 'OPN2101A', - serverParkName: 'gusty', - installDate: '2021-01-15T14:41:29.4399898+00:00', - status: 'Active', - dataRecordCount: 0, - hasData: false, - active: false, -}, { - name: 'OPN2007T', - serverParkName: 'gusty', - installDate: '2021-01-15T15:18:40.1503617+00:00', - status: 'Active', - dataRecordCount: 10, - hasData: true, - active: true, -}, { - name: 'LMS2101_AA1', - serverParkName: 'gusty', - installDate: '2021-01-15T15:26:43.4233454+00:00', - status: 'Active', - dataRecordCount: 0, - hasData: false, - active: false, -}]; - -export const QuestionnaireMockObject:Questionnaire = { - name: 'OPN2101A', - serverParkName: 'gusty', - installDate: '2021-01-15T14:41:29.4399898+00:00', - status: 'Active', - dataRecordCount: 0, - hasData: false, - active: false, - blaiseVersion: '5.9.9.2735', -}; - -export const InstallQuestionnaireMockObject:InstallQuestionnaire = { - questionnaireFile: 'OPN2004A.bpkg', -}; - -export const InstallQuestionnaireResponseMockObject:InstallQuestionnaireResponse = { - questionnaireFile: 'OPN2004A.bpkg', -}; - -export const QuestionnaireSettingsMockList:QuestionnaireSettings[] = [{ - type: 'StrictInterviewing', - saveSessionOnTimeout: true, - saveSessionOnQuit: true, - deleteSessionOnTimeout: true, - deleteSessionOnQuit: true, - sessionTimeout: 15, - applyRecordLocking: true, -}]; diff --git a/src/mockObjects/questionnaireReportMockObjects.ts b/src/mockObjects/questionnaireReportMockObjects.ts deleted file mode 100644 index 071ddff..0000000 --- a/src/mockObjects/questionnaireReportMockObjects.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { QuestionnaireReport } from '../interfaces/questionnaireReport'; - -const reportMockObject: QuestionnaireReport = { - questionnaireName: 'FRS2211A', - questionnaireId: '00000000-0000-0000-0000-000000000000', - reportingData: [ - { - 'qiD.Serial_Number': '1', - 'qhAdmin.HOut': '210', - }, - { - 'qiD.Serial_Number': '2', - 'qhAdmin.HOut': '110', - }, - ], -}; - -export default reportMockObject; diff --git a/src/mockObjects/userMockObjects.ts b/src/mockObjects/userMockObjects.ts deleted file mode 100644 index 72fb682..0000000 --- a/src/mockObjects/userMockObjects.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { NewUser } from '../interfaces/user'; - -export const CreateUserMockObject:NewUser = { - password: 'somethingVerySecure', - name: 'Beyonce', - role: 'DST', - serverParks: [ - 'gusty', - ], - defaultServerPark: 'gusty', -}; - -export const CreateUserResponseMockObject:NewUser = { - password: 'somethingVerySecure', - name: 'Beyonce', - role: 'DST', - serverParks: [ - 'gusty', - ], - defaultServerPark: 'gusty', -}; diff --git a/src/mocks.ts b/src/mocks.ts new file mode 100644 index 0000000..7472203 --- /dev/null +++ b/src/mocks.ts @@ -0,0 +1,11 @@ +export * from "./mocks/case.mock.js"; + +export * from "./mocks/daybatch.mock.js"; + +export * from "./mocks/diagnostic.mock.js"; + +export * from "./mocks/questionnaire.mock.js"; + +export * from "./mocks/questionnaireReport.mock.js"; + +export * from "./mocks/user.mock.js"; diff --git a/src/mocks/case.mock.ts b/src/mocks/case.mock.ts new file mode 100644 index 0000000..898bf55 --- /dev/null +++ b/src/mocks/case.mock.ts @@ -0,0 +1,74 @@ +import { CaseOutcome } from "../enums/caseOutcome.js"; +import { EditedStatus } from "../enums/editedStatus.js"; +import { Organisation } from "../enums/organisation.js"; + +import type { CaseEditInformation, CaseResponse, CaseStatus } from "../types/case.types.js"; + +export const mockCaseStatuses = [ + { + primaryKey: "1", + outcome: CaseOutcome.Completed, + }, + { + primaryKey: "2", + outcome: CaseOutcome.NonContact, + }, + { + primaryKey: "3", + outcome: CaseOutcome.None, + }, +] as const satisfies readonly CaseStatus[]; + +export const mockCaseResponse = { + caseId: "1", + fieldData: { + "qiD.Serial_Number": "1", + "qDataBag.Prem1": "Flat 1", + "qDataBag.Prem2": "Richmond House", + "qDataBag.Prem3": "Rice Road", + "qDataBag.Prem4": "", + "qDataBag.District": "Gwent", + "qDataBag.PostTown": "Newport", + "qDataBag.PostCode": "NZ11 4PD", + "qhAdmin.HOut": "100", + "qhAdmin.Interviewer[1]": "rich", + "dmName[1]": "Richmond Ricecake", + "dmDteOfBth[1]": "1980-01-15", + "dmName[2]": "Richmond Junior", + "dmDteOfBth[2]": "2005-04-12", + dmhSize: "2", + }, +} as const satisfies CaseResponse; + +export const mockCaseEditInformationRecords = [ + { + primaryKey: "100101", + outcome: CaseOutcome.Completed, + assignedTo: "Rich", + interviewer: "Jane Doe", + editedStatus: EditedStatus.Finished, + organisation: Organisation.ONS, + editUrl: "", + readOnlyUrl: "", + }, + { + primaryKey: "100102", + outcome: CaseOutcome.Partial, + assignedTo: "Jake", + interviewer: "Bob Roberts", + editedStatus: EditedStatus.Finished, + organisation: Organisation.ONS, + editUrl: "", + readOnlyUrl: "", + }, + { + primaryKey: "100113", + outcome: CaseOutcome.HQRefusal, + assignedTo: "Jamie", + interviewer: "Frank Frankinson", + editedStatus: EditedStatus.Finished, + organisation: Organisation.ONS, + editUrl: "", + readOnlyUrl: "", + }, +] as const satisfies readonly CaseEditInformation[]; diff --git a/src/mocks/daybatch.mock.ts b/src/mocks/daybatch.mock.ts new file mode 100644 index 0000000..c0f8f82 --- /dev/null +++ b/src/mocks/daybatch.mock.ts @@ -0,0 +1,19 @@ +import type { DaybatchResponse, DaybatchSettings } from "../types/daybatch.types.js"; + +export const mockDaybatch = { + dayBatchDate: "2021-01-15T14:41:29.4399898+00:00", + caseIds: ["100101", "100102", "100103", "100104"], +} as const satisfies DaybatchResponse; + +export const mockAddDaybatchSettings = { + dayBatchDate: "2021-01-15T14:41:29.4399898+00:00", + checkForTreatedCases: true, +} as const satisfies DaybatchSettings; + +export const mockSurveyDays = [ + "2021-01-15T14:41:29.4399898+00:00", +] as const satisfies readonly string[]; + +export const mockSurveyDayDates = [ + new Date("2021-01-15T14:41:29.4399898+00:00"), +] as const satisfies readonly Date[]; diff --git a/src/mocks/diagnostic.mock.ts b/src/mocks/diagnostic.mock.ts new file mode 100644 index 0000000..63c3a3d --- /dev/null +++ b/src/mocks/diagnostic.mock.ts @@ -0,0 +1,8 @@ +import type { Diagnostic } from "../types/diagnostic.types.js"; + +export const mockDiagnostics = [ + { healthCheckType: "Connection model", status: "OK" }, + { healthCheckType: "Blaise connection", status: "OK" }, + { healthCheckType: "Remote data server connection", status: "OK" }, + { healthCheckType: "Remote Cati management connection", status: "OK" }, +] as const satisfies readonly Diagnostic[]; diff --git a/src/mocks/questionnaire.mock.ts b/src/mocks/questionnaire.mock.ts new file mode 100644 index 0000000..04d7d63 --- /dev/null +++ b/src/mocks/questionnaire.mock.ts @@ -0,0 +1,63 @@ +import type { + InstallQuestionnaire, + InstallQuestionnaireResponse, + Questionnaire, + QuestionnaireSettings, +} from "../types/questionnaire.types.js"; + +export const mockQuestionnaires = [ + { + name: "OPN2101A", + serverParkName: "gusty", + installDate: "2021-01-15T14:41:29.4399898+00:00", + status: "Active", + dataRecordCount: 0, + hasData: false, + }, + { + name: "OPN2007T", + serverParkName: "gusty", + installDate: "2021-01-15T15:18:40.1503617+00:00", + status: "Active", + dataRecordCount: 10, + hasData: true, + }, + { + name: "LMS2101_AA1", + serverParkName: "gusty", + installDate: "2021-01-15T15:26:43.4233454+00:00", + status: "Active", + dataRecordCount: 0, + hasData: false, + }, +] as const satisfies readonly Questionnaire[]; + +export const mockQuestionnaire = { + name: "OPN2101A", + serverParkName: "gusty", + installDate: "2021-01-15T14:41:29.4399898+00:00", + status: "Active", + dataRecordCount: 0, + hasData: false, + blaiseVersion: "5.9.9.2735", +} as const satisfies Questionnaire; + +export const mockInstallQuestionnaire = { + questionnaireFile: "OPN2004A.bpkg", +} as const satisfies InstallQuestionnaire; + +export const mockInstallQuestionnaireResponse = { + questionnaireFile: "OPN2004A.bpkg", +} as const satisfies InstallQuestionnaireResponse; + +export const mockQuestionnaireSettings = [ + { + type: "StrictInterviewing", + saveSessionOnTimeout: true, + saveSessionOnQuit: true, + deleteSessionOnTimeout: true, + deleteSessionOnQuit: true, + sessionTimeout: 15, + applyRecordLocking: true, + }, +] as const satisfies readonly QuestionnaireSettings[]; diff --git a/src/mocks/questionnaireReport.mock.ts b/src/mocks/questionnaireReport.mock.ts new file mode 100644 index 0000000..c7fe629 --- /dev/null +++ b/src/mocks/questionnaireReport.mock.ts @@ -0,0 +1,18 @@ +import { CaseOutcome } from "../enums/caseOutcome.js"; + +import type { QuestionnaireReport } from "../types/questionnaireReport.types.js"; + +export const mockQuestionnaireReport = { + questionnaireName: "FRS2211A", + questionnaireId: "00000000-0000-0000-0000-000000000000", + reportingData: [ + { + "qiD.Serial_Number": "1", + "qhAdmin.HOut": CaseOutcome.Partial, + }, + { + "qiD.Serial_Number": "2", + "qhAdmin.HOut": CaseOutcome.Completed, + }, + ], +} as const satisfies QuestionnaireReport; diff --git a/src/mocks/user.mock.ts b/src/mocks/user.mock.ts new file mode 100644 index 0000000..4146aba --- /dev/null +++ b/src/mocks/user.mock.ts @@ -0,0 +1,9 @@ +import type { NewUser } from "../types/user.types.js"; + +export const mockNewUser = { + password: "somethingVerySecure", + name: "Beyonce", + role: "DST", + serverParks: ["gusty"], + defaultServerPark: "gusty", +} as const satisfies NewUser; diff --git a/src/requestPath.ts b/src/requestPath.ts new file mode 100644 index 0000000..1fa7600 --- /dev/null +++ b/src/requestPath.ts @@ -0,0 +1,32 @@ +export const encodePathSegment = (value: string): string => encodeURIComponent(value); + +export const getServerParkQuestionnairesPath = (serverPark: string): string => + `api/v2/serverparks/${encodePathSegment(serverPark)}/questionnaires`; + +export const getServerParkQuestionnairePath = ( + serverPark: string, + questionnaireName: string, +): string => + `${getServerParkQuestionnairesPath(serverPark)}/${encodePathSegment(questionnaireName)}`; + +export const getCatiServerParkQuestionnairesPath = (serverPark: string): string => + `api/v2/cati/serverparks/${encodePathSegment(serverPark)}/questionnaires`; + +export const getCatiServerParkQuestionnairePath = ( + serverPark: string, + questionnaireName: string, +): string => + `${getCatiServerParkQuestionnairesPath(serverPark)}/${encodePathSegment(questionnaireName)}`; + +export const buildRepeatedQueryString = ( + parameterName: string, + values: Iterable, +): string => { + const queryParams = new URLSearchParams(); + + for (const value of values) { + queryParams.append(parameterName, value); + } + + return queryParams.toString(); +}; diff --git a/src/resources/case.test.ts b/src/resources/case.test.ts new file mode 100644 index 0000000..c177bcf --- /dev/null +++ b/src/resources/case.test.ts @@ -0,0 +1,223 @@ +import MockAdapter from "axios-mock-adapter"; +import { afterEach, beforeEach, describe, expect, it } from "vitest"; + +import { BlaiseApiClient } from "../blaiseApiClient.js"; +import { mockCaseEditInformationRecords, mockCaseStatuses } from "../mocks/case.mock.js"; + +class TestBlaiseApiClient extends BlaiseApiClient { + readonly mock = new MockAdapter(this.httpClient, { onNoMatch: "throwException" }); +} + +const blaiseApiUrl = "testUri"; + +const blaiseApiClient = new TestBlaiseApiClient(`http://${blaiseApiUrl}`); +const { mock } = blaiseApiClient; + +const multikeyQueryString = "keyNames=key1&keyNames=key2&keyValues=value1&keyValues=value2"; + +describe("blaiseApiClient case functions", () => { + describe("get case", () => { + const serverPark = "test"; + const questionnaireName = "dst2108t"; + const caseId = "100101;"; + const encodedCaseId = encodeURIComponent(caseId); + + beforeEach(() => { + mock + .onGet( + `/api/v2/serverparks/${serverPark}/questionnaires/${questionnaireName}/cases/${encodedCaseId}`, + ) + .reply(200, { + caseId, + fieldData: {}, + }); + }); + + afterEach(() => { + mock.reset(); + }); + + it("returns a case", async () => { + const caseResponse = await blaiseApiClient.getCase(serverPark, questionnaireName, caseId); + + expect(caseResponse.caseId).toEqual(caseId); + }); + }); + + describe("get case multikey", () => { + const serverPark = "test"; + const questionnaireName = "dst2108t"; + const caseId = "100101;"; + const keyValueMap = new Map([ + ["key1", "value1"], + ["key2", "value2"], + ]); + + beforeEach(() => { + mock + .onGet( + `/api/v2/serverparks/${serverPark}/questionnaires/${questionnaireName}/cases/multikey?${multikeyQueryString}`, + ) + .reply(200, { caseId, fieldData: {} }); + }); + + afterEach(() => { + mock.reset(); + }); + + it("returns a case", async () => { + const caseResponse = await blaiseApiClient.getCaseMultikey( + serverPark, + questionnaireName, + keyValueMap, + ); + + expect(caseResponse.caseId).toEqual(caseId); + }); + + it("encodes reserved characters in multikey query values", async () => { + const reservedCharactersKeyValueMap = new Map([ + ["serial/id", "name=value&two"], + ]); + + mock + .onGet( + `/api/v2/serverparks/${serverPark}/questionnaires/${questionnaireName}/cases/multikey?keyNames=serial%2Fid&keyValues=name%3Dvalue%26two`, + ) + .reply(200, { caseId, fieldData: {} }); + + const caseResponse = await blaiseApiClient.getCaseMultikey( + serverPark, + questionnaireName, + reservedCharactersKeyValueMap, + ); + + expect(caseResponse.caseId).toEqual(caseId); + }); + }); + + describe("add case", () => { + const serverPark = "test"; + const questionnaireName = "dst2108t"; + const caseId = "100101;"; + const encodedCaseId = encodeURIComponent(caseId); + + beforeEach(() => { + mock + .onPost( + `/api/v2/serverparks/${serverPark}/questionnaires/${questionnaireName}/cases/${encodedCaseId}`, + ) + .reply(200, { caseId, fieldData: {} }); + }); + + afterEach(() => { + mock.reset(); + }); + + it("adds a case", async () => { + const caseResponse = await blaiseApiClient.addCase(serverPark, questionnaireName, caseId, {}); + + expect(caseResponse.caseId).toEqual(caseId); + }); + }); + + describe("update case", () => { + const serverPark = "test"; + const questionnaireName = "dst2108t"; + const caseId = "100101;"; + const encodedCaseId = encodeURIComponent(caseId); + + beforeEach(() => { + mock + .onPatch( + `/api/v2/serverparks/${serverPark}/questionnaires/${questionnaireName}/cases/${encodedCaseId}`, + ) + .reply(204, null); + }); + + afterEach(() => { + mock.reset(); + }); + + it("updates a case", async () => { + const result = await blaiseApiClient.updateCase(serverPark, questionnaireName, caseId, {}); + + expect(result).toBeNull(); + }); + }); + + describe("add case multikey", () => { + const serverPark = "test"; + const questionnaireName = "dst2108t"; + const caseId = "100101;"; + const keyValueMap = new Map([ + ["key1", "value1"], + ["key2", "value2"], + ]); + + beforeEach(() => { + mock + .onPost( + `/api/v2/serverparks/${serverPark}/questionnaires/${questionnaireName}/cases/multikey?${multikeyQueryString}`, + ) + .reply(200, { caseId, fieldData: {} }); + }); + + afterEach(() => { + mock.reset(); + }); + + it("adds a case with multiple keys", async () => { + const caseResponse = await blaiseApiClient.addCaseMultikey( + serverPark, + questionnaireName, + keyValueMap, + {}, + ); + + expect(caseResponse.caseId).toEqual(caseId); + }); + }); + + describe("get cases status", () => { + const serverPark = "test"; + const questionnaireName = "dst2108t"; + + beforeEach(() => { + mock + .onGet(`/api/v2/serverparks/${serverPark}/questionnaires/${questionnaireName}/cases/status`) + .reply(200, mockCaseStatuses); + }); + + afterEach(() => { + mock.reset(); + }); + + it("gets all cases and outcome codes", async () => { + const result = await blaiseApiClient.getCaseStatus(serverPark, questionnaireName); + + expect(result).toEqual(mockCaseStatuses); + }); + }); + + describe("get case edit information", () => { + const serverPark = "test"; + const questionnaireName = "FRS2108A"; + + beforeEach(() => { + mock + .onGet(`/api/v2/serverparks/${serverPark}/questionnaires/${questionnaireName}/cases/edit`) + .reply(200, mockCaseEditInformationRecords); + }); + + afterEach(() => { + mock.reset(); + }); + + it("returns editing details for a case", async () => { + const response = await blaiseApiClient.getCaseEditInformation(serverPark, questionnaireName); + + expect(response).toEqual(mockCaseEditInformationRecords); + }); + }); +}); diff --git a/src/resources/case.ts b/src/resources/case.ts new file mode 100644 index 0000000..50ab703 --- /dev/null +++ b/src/resources/case.ts @@ -0,0 +1,95 @@ +import { + buildRepeatedQueryString, + encodePathSegment, + getServerParkQuestionnairePath, +} from "../requestPath.js"; + +import type { BlaiseApiClient } from "../blaiseApiClient.js"; +import type { CaseEditInformation, CaseResponse, CaseStatus } from "../types/case.types.js"; +import type { JSONValue } from "../types/common.types.js"; + +const getCasesPath = (serverPark: string, questionnaireName: string): string => + `${getServerParkQuestionnairePath(serverPark, questionnaireName)}/cases`; + +const getCasePath = (serverPark: string, questionnaireName: string, caseId: string): string => + `${getCasesPath(serverPark, questionnaireName)}/${encodePathSegment(caseId)}`; + +const getMultikeyQueryString = (multiKeyValueMap: ReadonlyMap): string => { + const queryParts = [ + buildRepeatedQueryString("keyNames", multiKeyValueMap.keys()), + buildRepeatedQueryString("keyValues", multiKeyValueMap.values()), + ]; + + return queryParts.filter((queryPart) => queryPart.length > 0).join("&"); +}; + +export async function getCase( + this: BlaiseApiClient, + serverPark: string, + questionnaireName: string, + caseId: string, +): Promise { + return this.get(getCasePath(serverPark, questionnaireName, caseId)); +} + +export async function getCaseMultikey( + this: BlaiseApiClient, + serverPark: string, + questionnaireName: string, + multiKeyValueMap: ReadonlyMap, +): Promise { + const queryString = getMultikeyQueryString(multiKeyValueMap); + + return this.get(`${getCasesPath(serverPark, questionnaireName)}/multikey?${queryString}`); +} + +export async function addCase( + this: BlaiseApiClient, + serverPark: string, + questionnaireName: string, + caseId: string, + caseFields: Readonly>, +): Promise { + return this.post(getCasePath(serverPark, questionnaireName, caseId), caseFields); +} + +export async function updateCase( + this: BlaiseApiClient, + serverPark: string, + questionnaireName: string, + caseId: string, + caseFields: Readonly>, +): Promise { + return this.patch(getCasePath(serverPark, questionnaireName, caseId), caseFields); +} + +export async function addCaseMultikey( + this: BlaiseApiClient, + serverPark: string, + questionnaireName: string, + multiKeyValueMap: ReadonlyMap, + caseFields: Readonly>, +): Promise { + const queryString = getMultikeyQueryString(multiKeyValueMap); + + return this.post( + `${getCasesPath(serverPark, questionnaireName)}/multikey?${queryString}`, + caseFields, + ); +} + +export async function getCaseStatus( + this: BlaiseApiClient, + serverPark: string, + questionnaireName: string, +): Promise { + return this.get(`${getCasesPath(serverPark, questionnaireName)}/status`); +} + +export async function getCaseEditInformation( + this: BlaiseApiClient, + serverPark: string, + questionnaireName: string, +): Promise { + return this.get(`${getCasesPath(serverPark, questionnaireName)}/edit`); +} diff --git a/src/resources/daybatch.test.ts b/src/resources/daybatch.test.ts new file mode 100644 index 0000000..189ffc0 --- /dev/null +++ b/src/resources/daybatch.test.ts @@ -0,0 +1,125 @@ +import MockAdapter from "axios-mock-adapter"; +import { afterEach, beforeEach, describe, expect, it } from "vitest"; + +import { BlaiseApiClient } from "../blaiseApiClient.js"; +import { + mockAddDaybatchSettings, + mockDaybatch, + mockSurveyDayDates, + mockSurveyDays, +} from "../mocks/daybatch.mock.js"; + +class TestBlaiseApiClient extends BlaiseApiClient { + readonly mock = new MockAdapter(this.httpClient, { onNoMatch: "throwException" }); +} + +const blaiseApiUrl = "testUri"; + +const blaiseApiClient = new TestBlaiseApiClient(`http://${blaiseApiUrl}`); +const { mock } = blaiseApiClient; + +describe("blaiseApiClient daybatch functions", () => { + const basePath = "api/v2/cati/serverparks"; + + describe("get daybatch", () => { + const serverPark = "test"; + const questionnaireName = "dst2108t"; + + beforeEach(() => { + mock + .onGet(`${basePath}/${serverPark}/questionnaires/${questionnaireName}/daybatch`) + .reply(200, mockDaybatch); + }); + + afterEach(() => { + mock.reset(); + }); + + it("returns a list of case IDs in the current daybatch", async () => { + const daybatch = await blaiseApiClient.getDaybatch(serverPark, questionnaireName); + + expect(daybatch).toEqual(mockDaybatch); + }); + }); + + describe("add daybatch", () => { + const serverPark = "test"; + const questionnaireName = "dst2108t"; + + beforeEach(() => { + mock + .onPost(`${basePath}/${serverPark}/questionnaires/${questionnaireName}/daybatch`) + .reply(201, mockDaybatch); + }); + + afterEach(() => { + mock.reset(); + }); + + it("installs a questionnaire and returns the questionnaire file", async () => { + const daybatch = await blaiseApiClient.addDaybatch( + serverPark, + questionnaireName, + mockAddDaybatchSettings, + ); + + expect(daybatch).toEqual(mockDaybatch); + }); + }); + + describe("get survey days", () => { + const serverPark = "test"; + const questionnaireName = "dst2108t"; + + beforeEach(() => { + mock + .onGet(`${basePath}/${serverPark}/questionnaires/${questionnaireName}/surveydays`) + .reply(200, mockSurveyDays); + }); + + afterEach(() => { + mock.reset(); + }); + + it("returns a list of surveydays", async () => { + const surveyDays = await blaiseApiClient.getSurveyDays(serverPark, questionnaireName); + + expect(surveyDays).toEqual(mockSurveyDays); + }); + }); + + describe("add survey days", () => { + const serverPark = "test"; + const questionnaireName = "dst2108t"; + + beforeEach(() => { + mock + .onPost(`${basePath}/${serverPark}/questionnaires/${questionnaireName}/surveydays`) + .reply(201, mockSurveyDays); + }); + + afterEach(() => { + mock.reset(); + }); + + it("adds surveydays by strings", async () => { + const surveyDays = await blaiseApiClient.addSurveyDays( + serverPark, + questionnaireName, + mockSurveyDays, + ); + + expect(surveyDays).toEqual(mockSurveyDays); + }); + + it("adds surveydays by dates", async () => { + const surveyDays = await blaiseApiClient.addSurveyDays( + serverPark, + questionnaireName, + mockSurveyDayDates, + ); + + expect(surveyDays).toEqual(mockSurveyDays); + }); + }); +}); diff --git a/src/resources/daybatch.ts b/src/resources/daybatch.ts new file mode 100644 index 0000000..5f0f382 --- /dev/null +++ b/src/resources/daybatch.ts @@ -0,0 +1,49 @@ +import { getCatiServerParkQuestionnairePath } from "../requestPath.js"; + +import type { BlaiseApiClient } from "../blaiseApiClient.js"; +import type { DaybatchResponse, DaybatchSettings } from "../types/daybatch.types.js"; + +const formatDate = (date: string | Date): string => + date instanceof Date ? date.toISOString() : date; + +const getDaybatchPath = (serverPark: string, questionnaireName: string): string => + `${getCatiServerParkQuestionnairePath(serverPark, questionnaireName)}/daybatch`; + +const getSurveyDaysPath = (serverPark: string, questionnaireName: string): string => + `${getCatiServerParkQuestionnairePath(serverPark, questionnaireName)}/surveydays`; + +export async function getDaybatch( + this: BlaiseApiClient, + serverPark: string, + questionnaireName: string, +): Promise { + return this.get(getDaybatchPath(serverPark, questionnaireName)); +} + +export async function addDaybatch( + this: BlaiseApiClient, + serverPark: string, + questionnaireName: string, + daybatchSettings: DaybatchSettings, +): Promise { + return this.post(getDaybatchPath(serverPark, questionnaireName), daybatchSettings); +} + +export async function getSurveyDays( + this: BlaiseApiClient, + serverPark: string, + questionnaireName: string, +): Promise { + return this.get(getSurveyDaysPath(serverPark, questionnaireName)); +} + +export async function addSurveyDays( + this: BlaiseApiClient, + serverPark: string, + questionnaireName: string, + surveyDays: ReadonlyArray, +): Promise { + const formattedSurveyDays = surveyDays.map(formatDate); + + return this.post(getSurveyDaysPath(serverPark, questionnaireName), formattedSurveyDays); +} diff --git a/src/resources/diagnostic.test.ts b/src/resources/diagnostic.test.ts new file mode 100644 index 0000000..cbc1f1a --- /dev/null +++ b/src/resources/diagnostic.test.ts @@ -0,0 +1,34 @@ +import MockAdapter from "axios-mock-adapter"; +import { afterAll, beforeAll, describe, expect, it } from "vitest"; + +import { BlaiseApiClient } from "../blaiseApiClient.js"; +import { mockDiagnostics } from "../mocks/diagnostic.mock.js"; + +class TestBlaiseApiClient extends BlaiseApiClient { + readonly mock = new MockAdapter(this.httpClient, { onNoMatch: "throwException" }); +} + +const blaiseApiUrl = "testUri"; + +const blaiseApiClient = new TestBlaiseApiClient(`http://${blaiseApiUrl}`); +const { mock } = blaiseApiClient; + +describe("BlaiseRestapiClient diagnostic functions", () => { + describe("get health Check from API", () => { + beforeAll(() => { + mock.onGet("api/v2/health/diagnosis").reply(200, mockDiagnostics); + }); + + afterAll(() => { + mock.reset(); + }); + + it("returns a list of diagnostics", async () => { + const diagnostics = await blaiseApiClient.getDiagnostics(); + + expect(diagnostics).toHaveLength(4); + expect(diagnostics[0].status).toEqual("OK"); + expect(diagnostics[0].healthCheckType).toEqual("Connection model"); + }); + }); +}); diff --git a/src/resources/diagnostic.ts b/src/resources/diagnostic.ts new file mode 100644 index 0000000..f46b5ca --- /dev/null +++ b/src/resources/diagnostic.ts @@ -0,0 +1,6 @@ +import type { BlaiseApiClient } from "../blaiseApiClient.js"; +import type { Diagnostic } from "../types/diagnostic.types.js"; + +export async function getDiagnostics(this: BlaiseApiClient): Promise { + return this.get("api/v2/health/diagnosis"); +} diff --git a/src/resources/questionnaire.test.ts b/src/resources/questionnaire.test.ts new file mode 100644 index 0000000..c47df18 --- /dev/null +++ b/src/resources/questionnaire.test.ts @@ -0,0 +1,304 @@ +import MockAdapter from "axios-mock-adapter"; +import { afterEach, describe, expect, it } from "vitest"; + +import { BlaiseApiClient } from "../blaiseApiClient.js"; +import { + mockInstallQuestionnaire, + mockInstallQuestionnaireResponse, + mockQuestionnaire, + mockQuestionnaires, + mockQuestionnaireSettings, +} from "../mocks/questionnaire.mock.js"; + +class TestBlaiseApiClient extends BlaiseApiClient { + readonly mock = new MockAdapter(this.httpClient, { onNoMatch: "throwException" }); +} + +const blaiseApiClient = new TestBlaiseApiClient("http://testUri"); +const { mock } = blaiseApiClient; + +describe("blaiseApiClient questionnaire functions", () => { + afterEach(() => { + mock.reset(); + }); + + describe("get all questionnaires with Cati data", () => { + it("returns a list of all questionnaires including CATI data", async () => { + mock.onGet("api/v2/cati/questionnaires").reply(200, mockQuestionnaires); + const questionnaires = await blaiseApiClient.getAllQuestionnairesWithCatiData(); + + expect(questionnaires).toEqual(mockQuestionnaires); + }); + }); + + describe("get questionnaires with Cati data", () => { + const serverPark = "test"; + + it("returns a list of all questionnaires including CATI data within a serverpark", async () => { + mock + .onGet(`api/v2/cati/serverparks/${serverPark}/questionnaires`) + .reply(200, mockQuestionnaires); + const questionnaires = await blaiseApiClient.getQuestionnairesWithCatiData(serverPark); + + expect(questionnaires).toEqual(mockQuestionnaires); + }); + }); + + describe("get questionnaire with Cati data", () => { + const serverPark = "test"; + + it("returns an questionnaire including CATI data", async () => { + mock + .onGet(`api/v2/cati/serverparks/${serverPark}/questionnaires/${mockQuestionnaire.name}`) + .reply(200, mockQuestionnaire); + const questionnaire = await blaiseApiClient.getQuestionnaireWithCatiData( + serverPark, + mockQuestionnaire.name, + ); + + expect(questionnaire).toEqual(mockQuestionnaire); + }); + }); + + describe("get questionnaires", () => { + const serverPark = "test"; + + it("returns a list of questionnaires in a serverpark", async () => { + mock.onGet(`api/v2/serverparks/${serverPark}/questionnaires`).reply(200, mockQuestionnaires); + const questionnaires = await blaiseApiClient.getQuestionnaires(serverPark); + + expect(questionnaires).toEqual(mockQuestionnaires); + }); + }); + + describe("get questionnaire", () => { + const serverPark = "test"; + + it("returns a questionnaire", async () => { + mock + .onGet(`api/v2/serverparks/${serverPark}/questionnaires/${mockQuestionnaire.name}`) + .reply(200, mockQuestionnaire); + const questionnaire = await blaiseApiClient.getQuestionnaire( + serverPark, + mockQuestionnaire.name, + ); + + expect(questionnaire).toEqual(mockQuestionnaire); + }); + }); + + describe("get whether questionnaire exists", () => { + const serverPark = "test"; + const questionnaireInstalled = "OPN2101A"; + const questionnaireNotInstalled = "OPN2102B"; + + it("returns true if it exists", async () => { + mock + .onGet(`api/v2/serverparks/${serverPark}/questionnaires/${questionnaireInstalled}/exists`) + .reply(200, true); + const exists = await blaiseApiClient.questionnaireExists(serverPark, questionnaireInstalled); + + expect(exists).toEqual(true); + }); + + it("returns false if it does not exist", async () => { + mock + .onGet( + `api/v2/serverparks/${serverPark}/questionnaires/${questionnaireNotInstalled}/exists`, + ) + .reply(200, false); + const exists = await blaiseApiClient.questionnaireExists( + serverPark, + questionnaireNotInstalled, + ); + + expect(exists).toEqual(false); + }); + }); + + describe("get whether questionnaire has mode", () => { + const serverPark = "test"; + const hasMode = "CATI"; + const doesntHaveMode = "WEB"; + + it("returns true if questionnaire has mode", async () => { + mock + .onGet( + `api/v2/serverparks/${serverPark}/questionnaires/${mockQuestionnaire.name}/modes/${hasMode}`, + ) + .reply(200, true); + const exists = await blaiseApiClient.doesQuestionnaireHaveMode( + serverPark, + mockQuestionnaire.name, + hasMode, + ); + + expect(exists).toEqual(true); + }); + + it("returns false if questionnaire does not have mode", async () => { + mock + .onGet( + `api/v2/serverparks/${serverPark}/questionnaires/${mockQuestionnaire.name}/modes/${doesntHaveMode}`, + ) + .reply(200, false); + const exists = await blaiseApiClient.doesQuestionnaireHaveMode( + serverPark, + mockQuestionnaire.name, + doesntHaveMode, + ); + + expect(exists).toEqual(false); + }); + + it("encodes reserved characters in mode values", async () => { + const questionnaireName = "OPN/2101A"; + const mode = "CATI/WEB?preview=true"; + + mock + .onGet( + `api/v2/serverparks/${serverPark}/questionnaires/${encodeURIComponent(questionnaireName)}/modes/${encodeURIComponent(mode)}`, + ) + .reply(200, true); + + const exists = await blaiseApiClient.doesQuestionnaireHaveMode( + serverPark, + questionnaireName, + mode, + ); + + expect(exists).toEqual(true); + }); + }); + + describe("install questionnaire", () => { + const serverPark = "test"; + + it("installs an questionnaire and returns the questionnaire file", async () => { + mock + .onPost(`api/v2/serverparks/${serverPark}/questionnaires`) + .reply(201, mockInstallQuestionnaireResponse); + const questionnaire = await blaiseApiClient.installQuestionnaire( + serverPark, + mockInstallQuestionnaire, + ); + + expect(questionnaire).toEqual(mockInstallQuestionnaireResponse); + }); + }); + + describe("delete questionnaire", () => { + const serverPark = "test"; + const questionnaireName = "OPN2004A"; + + it("deletes an questionnaire", async () => { + mock + .onDelete( + `api/v2/serverparks/${serverPark}/questionnaires/${questionnaireName}?name=${questionnaireName}`, + ) + .reply(204, null); + const result = await blaiseApiClient.deleteQuestionnaire(serverPark, questionnaireName); + + expect(result).toBeNull(); + }); + + it("encodes reserved characters in questionnaire names", async () => { + const reservedCharacterQuestionnaireName = "OPN/2004A?preview=true"; + const encodedQuestionnaireName = encodeURIComponent(reservedCharacterQuestionnaireName); + const encodedQueryString = new URLSearchParams({ + name: reservedCharacterQuestionnaireName, + }).toString(); + + mock + .onDelete( + `api/v2/serverparks/${serverPark}/questionnaires/${encodedQuestionnaireName}?${encodedQueryString}`, + ) + .reply(204, null); + + const result = await blaiseApiClient.deleteQuestionnaire( + serverPark, + reservedCharacterQuestionnaireName, + ); + + expect(result).toBeNull(); + }); + }); + + describe("get a list of case ids for in questionnaire", () => { + const serverPark = "test"; + const questionnaireInstalled = "OPN2101A"; + const expectedCaseIds = ["100002", "100003"]; + + it("returns expected list of ids", async () => { + mock + .onGet( + `api/v2/serverparks/${serverPark}/questionnaires/${questionnaireInstalled}/cases/ids`, + ) + .reply(200, expectedCaseIds); + const caseIds = await blaiseApiClient.getQuestionnaireCaseIds( + serverPark, + questionnaireInstalled, + ); + + expect(caseIds).toEqual(expectedCaseIds); + }); + }); + + describe("get questionnaire modes", () => { + const serverPark = "test"; + + it("returns list of modes for questionnaire", async () => { + mock + .onGet(`api/v2/serverparks/${serverPark}/questionnaires/${mockQuestionnaire.name}/modes`) + .reply(200, ["CATI", "CAWI"]); + const modes = await blaiseApiClient.getQuestionnaireModes(serverPark, mockQuestionnaire.name); + + expect(modes).toContain("CATI"); + expect(modes).toContain("CAWI"); + }); + }); + + describe("get questionnaire settings", () => { + const serverPark = "test"; + + it("returns list of settings for questionnaire", async () => { + mock + .onGet(`api/v2/serverparks/${serverPark}/questionnaires/${mockQuestionnaire.name}/settings`) + .reply(200, mockQuestionnaireSettings); + const settings = await blaiseApiClient.getQuestionnaireSettings( + serverPark, + mockQuestionnaire.name, + ); + + expect(settings).toEqual(mockQuestionnaireSettings); + }); + }); + + describe("activate questionnaire", () => { + const serverPark = "test"; + const questionnaireName = "dst2108t"; + + it("activates an questionnaire", async () => { + mock + .onPatch(`api/v2/serverparks/${serverPark}/questionnaires/${questionnaireName}/activate`) + .reply(204, null); + const result = await blaiseApiClient.activateQuestionnaire(serverPark, questionnaireName); + + expect(result).toBeNull(); + }); + }); + + describe("deactivate questionnaire", () => { + const serverPark = "test"; + const questionnaireName = "dst2108t"; + + it("deactivates an questionnaire", async () => { + mock + .onPatch(`api/v2/serverparks/${serverPark}/questionnaires/${questionnaireName}/deactivate`) + .reply(204, null); + const result = await blaiseApiClient.deactivateQuestionnaire(serverPark, questionnaireName); + + expect(result).toBeNull(); + }); + }); +}); diff --git a/src/resources/questionnaire.ts b/src/resources/questionnaire.ts new file mode 100644 index 0000000..ab0fab6 --- /dev/null +++ b/src/resources/questionnaire.ts @@ -0,0 +1,146 @@ +import { + encodePathSegment, + getCatiServerParkQuestionnairePath, + getCatiServerParkQuestionnairesPath, + getServerParkQuestionnairePath, + getServerParkQuestionnairesPath, +} from "../requestPath.js"; + +import type { BlaiseApiClient } from "../blaiseApiClient.js"; +import type { + InstallQuestionnaire, + InstallQuestionnaireResponse, + Questionnaire, + QuestionnaireSettings, +} from "../types/questionnaire.types.js"; + +export async function getAllQuestionnairesWithCatiData( + this: BlaiseApiClient, +): Promise { + return this.get("api/v2/cati/questionnaires"); +} + +export async function getQuestionnairesWithCatiData( + this: BlaiseApiClient, + serverPark: string, +): Promise { + return this.get(getCatiServerParkQuestionnairesPath(serverPark)); +} + +export async function getQuestionnaireWithCatiData( + this: BlaiseApiClient, + serverPark: string, + questionnaireName: string, +): Promise { + return this.get(getCatiServerParkQuestionnairePath(serverPark, questionnaireName)); +} + +export async function getQuestionnaires( + this: BlaiseApiClient, + serverPark: string, +): Promise { + return this.get(getServerParkQuestionnairesPath(serverPark)); +} + +export async function questionnaireExists( + this: BlaiseApiClient, + serverPark: string, + questionnaireName: string, +): Promise { + return this.get( + `${getServerParkQuestionnairePath(serverPark, questionnaireName)}/exists`, + ); +} + +export async function doesQuestionnaireHaveMode( + this: BlaiseApiClient, + serverPark: string, + questionnaireName: string, + mode: string, +): Promise { + return this.get( + `${getServerParkQuestionnairePath(serverPark, questionnaireName)}/modes/${encodePathSegment(mode)}`, + ); +} + +export async function getQuestionnaire( + this: BlaiseApiClient, + serverPark: string, + questionnaireName: string, +): Promise { + return this.get(getServerParkQuestionnairePath(serverPark, questionnaireName)); +} + +export async function installQuestionnaire( + this: BlaiseApiClient, + serverPark: string, + questionnaire: InstallQuestionnaire, +): Promise { + return this.post( + getServerParkQuestionnairesPath(serverPark), + questionnaire, + ); +} + +export async function deleteQuestionnaire( + this: BlaiseApiClient, + serverPark: string, + questionnaireName: string, +): Promise { + // The Blaise API requires the questionnaire name as both a path segment and a query parameter. + const queryString = new URLSearchParams({ name: questionnaireName }).toString(); + + return this.delete( + `${getServerParkQuestionnairePath(serverPark, questionnaireName)}?${queryString}`, + ); +} + +export async function getQuestionnaireCaseIds( + this: BlaiseApiClient, + serverPark: string, + questionnaireName: string, +): Promise { + return this.get( + `${getServerParkQuestionnairePath(serverPark, questionnaireName)}/cases/ids`, + ); +} + +export async function getQuestionnaireModes( + this: BlaiseApiClient, + serverPark: string, + questionnaireName: string, +): Promise { + return this.get( + `${getServerParkQuestionnairePath(serverPark, questionnaireName)}/modes`, + ); +} + +export async function getQuestionnaireSettings( + this: BlaiseApiClient, + serverPark: string, + questionnaireName: string, +): Promise { + return this.get( + `${getServerParkQuestionnairePath(serverPark, questionnaireName)}/settings`, + ); +} + +export async function activateQuestionnaire( + this: BlaiseApiClient, + serverPark: string, + questionnaireName: string, +): Promise { + return this.patch( + `${getServerParkQuestionnairePath(serverPark, questionnaireName)}/activate`, + ); +} + +export async function deactivateQuestionnaire( + this: BlaiseApiClient, + serverPark: string, + questionnaireName: string, +): Promise { + return this.patch( + `${getServerParkQuestionnairePath(serverPark, questionnaireName)}/deactivate`, + ); +} diff --git a/src/resources/questionnaireReport.test.ts b/src/resources/questionnaireReport.test.ts new file mode 100644 index 0000000..ae6dcc2 --- /dev/null +++ b/src/resources/questionnaireReport.test.ts @@ -0,0 +1,62 @@ +import MockAdapter from "axios-mock-adapter"; +import { afterEach, beforeEach, describe, expect, it } from "vitest"; + +import { BlaiseApiClient } from "../blaiseApiClient.js"; +import { mockQuestionnaireReport } from "../mocks/questionnaireReport.mock.js"; + +class TestBlaiseApiClient extends BlaiseApiClient { + readonly mock = new MockAdapter(this.httpClient, { onNoMatch: "throwException" }); +} + +const blaiseApiClient = new TestBlaiseApiClient("http://testUri"); +const { mock } = blaiseApiClient; + +const fieldIds = ["qhadmin.hout", "allocation.toeditor"]; + +describe("BlaiseRestapiClient questionnaire report functions", () => { + describe("get reporting data from API", () => { + const serverPark = "test"; + const questionnaireName = "dst2108t"; + const expectedQueryString = `fieldIds=${fieldIds[0]}&fieldIds=${fieldIds[1]}`; + + beforeEach(() => { + mock + .onGet( + `api/v2/serverparks/${serverPark}/questionnaires/${questionnaireName}/report?${expectedQueryString}`, + ) + .reply(200, mockQuestionnaireReport); + }); + + afterEach(() => { + mock.reset(); + }); + + it("returns an expected report", async () => { + const reportData = await blaiseApiClient.getQuestionnaireReportData( + serverPark, + questionnaireName, + fieldIds, + ); + + expect(reportData).toEqual(mockQuestionnaireReport); + }); + + it("encodes reserved characters in field ids", async () => { + const reservedCharacterFieldIds = ["field/id", "allocation=to&editor"]; + + mock + .onGet( + `api/v2/serverparks/${serverPark}/questionnaires/${questionnaireName}/report?fieldIds=field%2Fid&fieldIds=allocation%3Dto%26editor`, + ) + .reply(200, mockQuestionnaireReport); + + const reportData = await blaiseApiClient.getQuestionnaireReportData( + serverPark, + questionnaireName, + reservedCharacterFieldIds, + ); + + expect(reportData).toEqual(mockQuestionnaireReport); + }); + }); +}); diff --git a/src/resources/questionnaireReport.ts b/src/resources/questionnaireReport.ts new file mode 100644 index 0000000..0d15f9d --- /dev/null +++ b/src/resources/questionnaireReport.ts @@ -0,0 +1,17 @@ +import { buildRepeatedQueryString, getServerParkQuestionnairePath } from "../requestPath.js"; + +import type { BlaiseApiClient } from "../blaiseApiClient.js"; +import type { QuestionnaireReport } from "../types/questionnaireReport.types.js"; + +export async function getQuestionnaireReportData( + this: BlaiseApiClient, + serverPark: string, + questionnaireName: string, + fieldIds: readonly string[], +): Promise { + const queryParams = buildRepeatedQueryString("fieldIds", fieldIds); + + return this.get( + `${getServerParkQuestionnairePath(serverPark, questionnaireName)}/report?${queryParams}`, + ); +} diff --git a/src/resources/user.test.ts b/src/resources/user.test.ts new file mode 100644 index 0000000..ca60a1c --- /dev/null +++ b/src/resources/user.test.ts @@ -0,0 +1,153 @@ +import MockAdapter from "axios-mock-adapter"; +import { afterEach, describe, expect, it } from "vitest"; + +import { BlaiseApiClient } from "../blaiseApiClient.js"; +import { mockNewUser } from "../mocks/user.mock.js"; + +class TestBlaiseApiClient extends BlaiseApiClient { + readonly mock = new MockAdapter(this.httpClient, { onNoMatch: "throwException" }); +} + +const blaiseApiClient = new TestBlaiseApiClient("http://testUri"); +const { mock } = blaiseApiClient; + +describe("blaiseApiClient user functions", () => { + afterEach(() => { + mock.reset(); + }); + + describe("get user", () => { + const username = "test-user"; + + it("returns the user details", async () => { + mock.onGet(`api/v2/users/${username}`).reply(200, { + name: username, + role: "DST", + serverParks: ["gusty"], + defaultServerPark: "gusty", + }); + + const result = await blaiseApiClient.getUser(username); + + expect(result.name).toEqual(username); + expect(result.role).toEqual("DST"); + }); + + it("encodes reserved characters in usernames", async () => { + const reservedCharacterUsername = "test/user?preview=true"; + + mock.onGet(`api/v2/users/${encodeURIComponent(reservedCharacterUsername)}`).reply(200, { + name: reservedCharacterUsername, + role: "DST", + serverParks: ["gusty"], + defaultServerPark: "gusty", + }); + + const result = await blaiseApiClient.getUser(reservedCharacterUsername); + + expect(result.name).toEqual(reservedCharacterUsername); + }); + }); + + describe("get users", () => { + it("returns the user details", async () => { + mock + .onGet("api/v2/users") + .reply(200, [ + { name: "test-user", role: "DST", serverParks: ["gusty"], defaultServerPark: "gusty" }, + ]); + + const result = await blaiseApiClient.getUsers(); + + expect(result).toEqual([ + { name: "test-user", role: "DST", serverParks: ["gusty"], defaultServerPark: "gusty" }, + ]); + }); + }); + + describe("validate password", () => { + const username = "test-user"; + const password = "test-password"; + + it("returns true for valid password", async () => { + mock.onPost(`api/v2/users/${username}/validate`).reply(200, true); + expect(await blaiseApiClient.validatePassword(username, password)).toBe(true); + }); + + it("returns false for invalid password", async () => { + mock.onPost(`api/v2/users/${username}/validate`).reply(200, false); + expect(await blaiseApiClient.validatePassword(username, password)).toBe(false); + }); + }); + + describe("create user", () => { + it("creates a user and returns a response", async () => { + mock.onPost("api/v2/users").reply(201, mockNewUser); + const createUser = await blaiseApiClient.createUser(mockNewUser); + + expect(createUser.name).toEqual("Beyonce"); + expect(createUser.role).toEqual("DST"); + expect(createUser.serverParks).toHaveLength(1); + }); + }); + + describe("delete user", () => { + const userName = "Beyonce"; + + it("deletes a user", async () => { + mock.onDelete(`api/v2/users/${userName}`).reply(204, null); + const result = await blaiseApiClient.deleteUser(userName); + + expect(result).toBeNull(); + }); + }); + + describe("get user roles", () => { + it("returns the user details", async () => { + mock + .onGet("api/v2/userroles") + .reply(200, [{ name: "test-role", description: "test", permissions: ["test"] }]); + const result = await blaiseApiClient.getUserRoles(); + + expect(result).toEqual([{ name: "test-role", description: "test", permissions: ["test"] }]); + }); + }); + + describe("change password", () => { + const username = "test-user"; + const password = "test-password"; + + it("returns null", async () => { + mock.onPatch(`api/v2/users/${username}/password`).reply(204, null); + expect(await blaiseApiClient.changePassword(username, password)).toBeNull(); + }); + }); + + describe("change user role", () => { + const username = "test-user"; + const role = "test-role"; + + it("returns null", async () => { + mock.onPatch(`api/v2/users/${username}/role`).reply(204, null); + expect(await blaiseApiClient.changeUserRole(username, role)).toBeNull(); + }); + }); + + describe("change user server parks", () => { + const username = "test-user"; + const serverParks = ["gusty", "local"]; + const defaultServerPark = "gusty"; + + it("returns null", async () => { + mock.onPatch(`api/v2/users/${username}/serverparks`).reply(204, null); + + const result = await blaiseApiClient.changeUserServerParks( + username, + serverParks, + defaultServerPark, + ); + + expect(result).toBeNull(); + }); + }); +}); diff --git a/src/resources/user.ts b/src/resources/user.ts new file mode 100644 index 0000000..a33e3d6 --- /dev/null +++ b/src/resources/user.ts @@ -0,0 +1,67 @@ +import { encodePathSegment } from "../requestPath.js"; + +import type { BlaiseApiClient } from "../blaiseApiClient.js"; +import type { NewUser, PasswordRequest, RoleRequest, User, UserRole } from "../types/user.types.js"; + +const getUserPath = (username: string): string => `api/v2/users/${encodePathSegment(username)}`; + +export async function getUser(this: BlaiseApiClient, username: string): Promise { + return this.get(getUserPath(username)); +} + +export async function getUsers(this: BlaiseApiClient): Promise { + return this.get("api/v2/users"); +} + +export async function validatePassword( + this: BlaiseApiClient, + username: string, + password: string, +): Promise { + const validationRequest: PasswordRequest = { password }; + + return this.post(`${getUserPath(username)}/validate`, validationRequest); +} + +export async function createUser(this: BlaiseApiClient, user: NewUser): Promise { + return this.post("api/v2/users", user); +} + +export async function deleteUser(this: BlaiseApiClient, username: string): Promise { + return this.delete(getUserPath(username)); +} + +export async function getUserRoles(this: BlaiseApiClient): Promise { + return this.get("api/v2/userroles"); +} + +export async function changeUserRole( + this: BlaiseApiClient, + username: string, + role: string, +): Promise { + const roleRequest: RoleRequest = { role }; + + return this.patch(`${getUserPath(username)}/role`, roleRequest); +} + +export async function changeUserServerParks( + this: BlaiseApiClient, + username: string, + serverParks: ReadonlyArray, + defaultServerPark: string, +): Promise { + const serverParksRequest = { serverParks, defaultServerPark }; + + return this.patch(`${getUserPath(username)}/serverparks`, serverParksRequest); +} + +export async function changePassword( + this: BlaiseApiClient, + username: string, + password: string, +): Promise { + const passwordRequest: PasswordRequest = { password }; + + return this.patch(`${getUserPath(username)}/password`, passwordRequest); +} diff --git a/src/types/blaiseApi.types.ts b/src/types/blaiseApi.types.ts new file mode 100644 index 0000000..61ba8a2 --- /dev/null +++ b/src/types/blaiseApi.types.ts @@ -0,0 +1,105 @@ +import type { CaseEditInformation, CaseResponse, CaseStatus } from "./case.types.js"; +import type { JSONValue } from "./common.types.js"; +import type { DaybatchResponse, DaybatchSettings } from "./daybatch.types.js"; +import type { Diagnostic } from "./diagnostic.types.js"; +import type { + InstallQuestionnaire, + InstallQuestionnaireResponse, + Questionnaire, + QuestionnaireSettings, +} from "./questionnaire.types.js"; +import type { QuestionnaireReport } from "./questionnaireReport.types.js"; +import type { NewUser, User, UserRole } from "./user.types.js"; + +export interface BlaiseApi { + getUser(username: string): Promise; + getUsers(): Promise; + validatePassword(username: string, password: string): Promise; + createUser(user: NewUser): Promise; + deleteUser(username: string): Promise; + getUserRoles(): Promise; + changePassword(username: string, password: string): Promise; + changeUserRole(username: string, role: string): Promise; + changeUserServerParks( + username: string, + serverParks: readonly string[], + defaultServerPark: string, + ): Promise; + getAllQuestionnairesWithCatiData(): Promise; + getQuestionnairesWithCatiData(serverPark: string): Promise; + getQuestionnaireWithCatiData( + serverPark: string, + questionnaireName: string, + ): Promise; + getQuestionnaires(serverPark: string): Promise; + questionnaireExists(serverPark: string, questionnaireName: string): Promise; + doesQuestionnaireHaveMode( + serverPark: string, + questionnaireName: string, + mode: string, + ): Promise; + getQuestionnaire(serverPark: string, questionnaireName: string): Promise; + installQuestionnaire( + serverPark: string, + questionnaire: InstallQuestionnaire, + ): Promise; + deleteQuestionnaire(serverPark: string, questionnaireName: string): Promise; + getQuestionnaireCaseIds( + serverPark: string, + questionnaireName: string, + ): Promise; + getQuestionnaireModes(serverPark: string, questionnaireName: string): Promise; + getQuestionnaireSettings( + serverPark: string, + questionnaireName: string, + ): Promise; + activateQuestionnaire(serverPark: string, questionnaireName: string): Promise; + deactivateQuestionnaire(serverPark: string, questionnaireName: string): Promise; + getDaybatch(serverPark: string, questionnaireName: string): Promise; + addDaybatch( + serverPark: string, + questionnaireName: string, + daybatchSettings: DaybatchSettings, + ): Promise; + getSurveyDays(serverPark: string, questionnaireName: string): Promise; + addSurveyDays( + serverPark: string, + questionnaireName: string, + surveyDays: readonly (string | Date)[], + ): Promise; + getCase(serverPark: string, questionnaireName: string, caseId: string): Promise; + getCaseMultikey( + serverPark: string, + questionnaireName: string, + multiKeyValueMap: ReadonlyMap, + ): Promise; + addCase( + serverPark: string, + questionnaireName: string, + caseId: string, + caseFields: Readonly>, + ): Promise; + updateCase( + serverPark: string, + questionnaireName: string, + caseId: string, + caseFields: Readonly>, + ): Promise; + addCaseMultikey( + serverPark: string, + questionnaireName: string, + multiKeyValueMap: ReadonlyMap, + caseFields: Readonly>, + ): Promise; + getCaseStatus(serverPark: string, questionnaireName: string): Promise; + getCaseEditInformation( + serverPark: string, + questionnaireName: string, + ): Promise; + getDiagnostics(): Promise; + getQuestionnaireReportData( + serverPark: string, + questionnaireName: string, + fieldIds: readonly string[], + ): Promise; +} diff --git a/src/types/blaiseApiConfig.types.ts b/src/types/blaiseApiConfig.types.ts new file mode 100644 index 0000000..2bee053 --- /dev/null +++ b/src/types/blaiseApiConfig.types.ts @@ -0,0 +1,4 @@ +export interface BlaiseApiConfig { + readonly timeoutInMs?: number; + readonly blaiseApiClientId?: string; +} diff --git a/src/types/case.types.ts b/src/types/case.types.ts new file mode 100644 index 0000000..28c887c --- /dev/null +++ b/src/types/case.types.ts @@ -0,0 +1,25 @@ +import type { JSONValue } from "./common.types.js"; +import type { CaseOutcome } from "../enums/caseOutcome.js"; +import type { EditedStatus } from "../enums/editedStatus.js"; +import type { Organisation } from "../enums/organisation.js"; + +export interface CaseResponse { + readonly caseId: string; + readonly fieldData: Readonly>; +} + +export interface CaseStatus { + readonly primaryKey: string; + readonly outcome: CaseOutcome; +} + +export interface CaseEditInformation { + readonly primaryKey: string; + readonly outcome: CaseOutcome; + readonly assignedTo: string; + readonly interviewer: string; + readonly editedStatus: EditedStatus; + readonly organisation: Organisation; + readonly editUrl: string; + readonly readOnlyUrl: string; +} diff --git a/src/types/caseData.ts b/src/types/caseData.ts deleted file mode 100644 index 61e2a2f..0000000 --- a/src/types/caseData.ts +++ /dev/null @@ -1,2 +0,0 @@ -// eslint-disable-next-line @typescript-eslint/no-explicit-any -export type CaseData = Record diff --git a/src/types/common.types.ts b/src/types/common.types.ts new file mode 100644 index 0000000..00c52d6 --- /dev/null +++ b/src/types/common.types.ts @@ -0,0 +1,7 @@ +export type JSONValue = + | string + | number + | boolean + | null + | readonly JSONValue[] + | { readonly [key: string]: JSONValue }; diff --git a/src/types/daybatch.types.ts b/src/types/daybatch.types.ts new file mode 100644 index 0000000..689aedd --- /dev/null +++ b/src/types/daybatch.types.ts @@ -0,0 +1,9 @@ +export interface DaybatchResponse { + readonly dayBatchDate: string; + readonly caseIds: readonly string[]; +} + +export interface DaybatchSettings { + readonly dayBatchDate: string; + readonly checkForTreatedCases: boolean; +} diff --git a/src/types/diagnostic.types.ts b/src/types/diagnostic.types.ts new file mode 100644 index 0000000..b453a39 --- /dev/null +++ b/src/types/diagnostic.types.ts @@ -0,0 +1,4 @@ +export interface Diagnostic { + readonly healthCheckType: string; + readonly status: string; +} diff --git a/src/types/questionnaire.types.ts b/src/types/questionnaire.types.ts new file mode 100644 index 0000000..e48c9d6 --- /dev/null +++ b/src/types/questionnaire.types.ts @@ -0,0 +1,37 @@ +export interface QuestionnaireNode { + readonly nodeName: string; + readonly nodeStatus: string; +} + +export interface Questionnaire { + readonly installDate: string; + readonly name: string; + readonly expired?: boolean; + readonly serverParkName: string; + readonly link?: string; + readonly fieldPeriod?: string; + readonly surveyTla?: string; + readonly dataRecordCount?: number; + readonly status?: string; + readonly hasData?: boolean; + readonly nodes?: readonly QuestionnaireNode[]; + readonly blaiseVersion?: string; +} + +export interface InstallQuestionnaire { + readonly questionnaireFile: string; +} + +export interface InstallQuestionnaireResponse { + readonly questionnaireFile: string; +} + +export interface QuestionnaireSettings { + readonly type: string; + readonly saveSessionOnTimeout: boolean; + readonly saveSessionOnQuit: boolean; + readonly deleteSessionOnTimeout: boolean; + readonly deleteSessionOnQuit: boolean; + readonly sessionTimeout: number; + readonly applyRecordLocking: boolean; +} diff --git a/src/types/questionnaireReport.types.ts b/src/types/questionnaireReport.types.ts new file mode 100644 index 0000000..3714e02 --- /dev/null +++ b/src/types/questionnaireReport.types.ts @@ -0,0 +1,7 @@ +import { type JSONValue } from "./common.types.js"; + +export interface QuestionnaireReport { + readonly questionnaireName: string; + readonly questionnaireId: string; + readonly reportingData: readonly Readonly>[]; +} diff --git a/src/types/survey.types.ts b/src/types/survey.types.ts new file mode 100644 index 0000000..5ccb667 --- /dev/null +++ b/src/types/survey.types.ts @@ -0,0 +1,6 @@ +import { type Questionnaire } from "./questionnaire.types.js"; + +export interface Survey { + readonly questionnaires: readonly Questionnaire[]; + readonly survey: string; +} diff --git a/src/types/surveyDays.ts b/src/types/surveyDays.ts deleted file mode 100644 index f8214c1..0000000 --- a/src/types/surveyDays.ts +++ /dev/null @@ -1 +0,0 @@ -export type SurveyDays = string[] | Date[] diff --git a/src/types/user.types.ts b/src/types/user.types.ts new file mode 100644 index 0000000..376e329 --- /dev/null +++ b/src/types/user.types.ts @@ -0,0 +1,24 @@ +export interface UserRole { + readonly name: string; + readonly description: string; + readonly permissions: readonly string[]; +} + +export interface User { + readonly name: string; + readonly role: UserRole | string; + readonly serverParks: readonly string[]; + readonly defaultServerPark: string; +} + +export interface PasswordRequest { + readonly password: string; +} + +export interface RoleRequest { + readonly role: string; +} + +export interface NewUser extends User { + readonly password: string; +} diff --git a/tsconfig.build.json b/tsconfig.build.json new file mode 100644 index 0000000..ab2f203 --- /dev/null +++ b/tsconfig.build.json @@ -0,0 +1,7 @@ +{ + "compilerOptions": { + "types": ["node"] + }, + "exclude": ["src/**/*.mock.ts", "src/**/*.test.ts", "src/**/*.types.ts"], + "extends": "./tsconfig.json" +} diff --git a/tsconfig.eslint.json b/tsconfig.eslint.json new file mode 100644 index 0000000..d83c09e --- /dev/null +++ b/tsconfig.eslint.json @@ -0,0 +1,7 @@ +{ + "compilerOptions": { + "noEmit": true + }, + "extends": "./tsconfig.json", + "include": ["src", "*.config.ts"] +} diff --git a/tsconfig.json b/tsconfig.json index cd300e2..fa603b0 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,20 +1,21 @@ -{ - "compilerOptions": { - "outDir": "lib/esm", - "module": "esnext", - "target": "es5", - "lib": ["es6", "dom", "es2016", "es2017"], - "declaration": true, - "moduleResolution": "node", - "noUnusedLocals": true, - "noUnusedParameters": true, - "esModuleInterop": true, - "noImplicitReturns": true, - "noImplicitThis": true, - "noImplicitAny": true, - "strictNullChecks": true, - "allowSyntheticDefaultImports": true - }, - "include": ["src"], - "exclude": ["node_modules", "lib", "src/**/*.spec.ts", "src/**/*.test.ts"] -} +{ + "compilerOptions": { + "declaration": true, + "declarationMap": true, + "forceConsistentCasingInFileNames": true, + "module": "NodeNext", + "moduleResolution": "NodeNext", + "noFallthroughCasesInSwitch": true, + "outDir": "dist", + "resolveJsonModule": true, + "rootDir": "src", + "skipLibCheck": true, + "sourceMap": true, + "strict": true, + "target": "ES2022", + "types": ["node"], + "verbatimModuleSyntax": true + }, + "exclude": ["coverage", "dist", "node_modules"], + "include": ["src"] +} diff --git a/tsconfig.test.json b/tsconfig.test.json deleted file mode 100644 index c37c5d7..0000000 --- a/tsconfig.test.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "compilerOptions": { - "outDir": "lib/esm", - "module": "esnext", - "target": "es5", - "lib": ["es6", "dom", "es2016", "es2017"], - "declaration": true, - "moduleResolution": "node", - "noUnusedLocals": true, - "noUnusedParameters": true, - "esModuleInterop": true, - "noImplicitReturns": true, - "noImplicitThis": true, - "noImplicitAny": true, - "strictNullChecks": true, - "allowSyntheticDefaultImports": true - }, - "include": ["src/**/*.spec.ts", "src/**/*.test.ts"], -} diff --git a/vitest.config.ts b/vitest.config.ts new file mode 100644 index 0000000..ff2cee6 --- /dev/null +++ b/vitest.config.ts @@ -0,0 +1,14 @@ +import { defineConfig } from "vitest/config"; + +export default defineConfig({ + test: { + environment: "node", + clearMocks: true, + coverage: { + provider: "v8", + reporter: ["text", "json", "html"], + include: ["src/**/*.ts"], + exclude: ["src/**/*.mock.ts", "src/**/*.test.ts", "src/**/*.types.ts", "src/index.ts"], + }, + }, +}); diff --git a/yarn.lock b/yarn.lock index 4f3c90a..0fc8034 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1,4846 +1,4378 @@ -# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. -# yarn lockfile v1 - - -"@ampproject/remapping@^2.2.0": - version "2.3.0" - resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.3.0.tgz#ed441b6fa600072520ce18b43d2c8cc8caecc7f4" - integrity sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw== - dependencies: - "@jridgewell/gen-mapping" "^0.3.5" - "@jridgewell/trace-mapping" "^0.3.24" - -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.26.2": - version "7.26.2" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.26.2.tgz#4b5fab97d33338eff916235055f0ebc21e573a85" - integrity sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ== - dependencies: - "@babel/helper-validator-identifier" "^7.25.9" - js-tokens "^4.0.0" - picocolors "^1.0.0" - -"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.26.5", "@babel/compat-data@^7.26.8": - version "7.26.8" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.26.8.tgz#821c1d35641c355284d4a870b8a4a7b0c141e367" - integrity sha512-oH5UPLMWR3L2wEFLnFJ1TZXqHufiTKAiLfqw5zkhS4dKXLJ10yVztfil/twG8EDTA4F/tvVNw9nOl4ZMslB8rQ== - -"@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.23.9", "@babel/core@^7.26.9": - version "7.26.9" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.26.9.tgz#71838542a4b1e49dfed353d7acbc6eb89f4a76f2" - integrity sha512-lWBYIrF7qK5+GjY5Uy+/hEgp8OJWOD/rpy74GplYRhEauvbHDeFB8t5hPOZxCZ0Oxf4Cc36tK51/l3ymJysrKw== - dependencies: - "@ampproject/remapping" "^2.2.0" - "@babel/code-frame" "^7.26.2" - "@babel/generator" "^7.26.9" - "@babel/helper-compilation-targets" "^7.26.5" - "@babel/helper-module-transforms" "^7.26.0" - "@babel/helpers" "^7.26.9" - "@babel/parser" "^7.26.9" - "@babel/template" "^7.26.9" - "@babel/traverse" "^7.26.9" - "@babel/types" "^7.26.9" - convert-source-map "^2.0.0" - debug "^4.1.0" - gensync "^1.0.0-beta.2" - json5 "^2.2.3" - semver "^6.3.1" - -"@babel/generator@^7.26.9", "@babel/generator@^7.7.2": - version "7.26.9" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.26.9.tgz#75a9482ad3d0cc7188a537aa4910bc59db67cbca" - integrity sha512-kEWdzjOAUMW4hAyrzJ0ZaTOu9OmpyDIQicIh0zg0EEcEkYXZb2TjtBhnHi2ViX7PKwZqF4xwqfAm299/QMP3lg== - dependencies: - "@babel/parser" "^7.26.9" - "@babel/types" "^7.26.9" - "@jridgewell/gen-mapping" "^0.3.5" - "@jridgewell/trace-mapping" "^0.3.25" - jsesc "^3.0.2" - -"@babel/helper-annotate-as-pure@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz#d8eac4d2dc0d7b6e11fa6e535332e0d3184f06b4" - integrity sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g== - dependencies: - "@babel/types" "^7.25.9" - -"@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.25.9", "@babel/helper-compilation-targets@^7.26.5": - version "7.26.5" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.26.5.tgz#75d92bb8d8d51301c0d49e52a65c9a7fe94514d8" - integrity sha512-IXuyn5EkouFJscIDuFF5EsiSolseme1s0CZB+QxVugqJLYmKdxI1VfIBOst0SUu4rnk2Z7kqTwmoO1lp3HIfnA== - dependencies: - "@babel/compat-data" "^7.26.5" - "@babel/helper-validator-option" "^7.25.9" - browserslist "^4.24.0" - lru-cache "^5.1.1" - semver "^6.3.1" - -"@babel/helper-create-class-features-plugin@^7.25.9": - version "7.26.9" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.26.9.tgz#d6f83e3039547fbb39967e78043cd3c8b7820c71" - integrity sha512-ubbUqCofvxPRurw5L8WTsCLSkQiVpov4Qx0WMA+jUN+nXBK8ADPlJO1grkFw5CWKC5+sZSOfuGMdX1aI1iT9Sg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.25.9" - "@babel/helper-member-expression-to-functions" "^7.25.9" - "@babel/helper-optimise-call-expression" "^7.25.9" - "@babel/helper-replace-supers" "^7.26.5" - "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" - "@babel/traverse" "^7.26.9" - semver "^6.3.1" - -"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.25.9": - version "7.26.3" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.26.3.tgz#5169756ecbe1d95f7866b90bb555b022595302a0" - integrity sha512-G7ZRb40uUgdKOQqPLjfD12ZmGA54PzqDFUv2BKImnC9QIfGhIHKvVML0oN8IUiDq4iRqpq74ABpvOaerfWdong== - dependencies: - "@babel/helper-annotate-as-pure" "^7.25.9" - regexpu-core "^6.2.0" - semver "^6.3.1" - -"@babel/helper-define-polyfill-provider@^0.6.3": - version "0.6.3" - resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.3.tgz#f4f2792fae2ef382074bc2d713522cf24e6ddb21" - integrity sha512-HK7Bi+Hj6H+VTHA3ZvBis7V/6hu9QuTrnMXNybfUf2iiuU/N97I8VjB+KbhFF8Rld/Lx5MzoCwPCpPjfK+n8Cg== - dependencies: - "@babel/helper-compilation-targets" "^7.22.6" - "@babel/helper-plugin-utils" "^7.22.5" - debug "^4.1.1" - lodash.debounce "^4.0.8" - resolve "^1.14.2" - -"@babel/helper-member-expression-to-functions@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.25.9.tgz#9dfffe46f727005a5ea29051ac835fb735e4c1a3" - integrity sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ== - dependencies: - "@babel/traverse" "^7.25.9" - "@babel/types" "^7.25.9" - -"@babel/helper-module-imports@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz#e7f8d20602ebdbf9ebbea0a0751fb0f2a4141715" - integrity sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw== - dependencies: - "@babel/traverse" "^7.25.9" - "@babel/types" "^7.25.9" - -"@babel/helper-module-transforms@^7.25.9", "@babel/helper-module-transforms@^7.26.0": - version "7.26.0" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz#8ce54ec9d592695e58d84cd884b7b5c6a2fdeeae" - integrity sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw== - dependencies: - "@babel/helper-module-imports" "^7.25.9" - "@babel/helper-validator-identifier" "^7.25.9" - "@babel/traverse" "^7.25.9" - -"@babel/helper-optimise-call-expression@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.25.9.tgz#3324ae50bae7e2ab3c33f60c9a877b6a0146b54e" - integrity sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ== - dependencies: - "@babel/types" "^7.25.9" - -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.25.9", "@babel/helper-plugin-utils@^7.26.5", "@babel/helper-plugin-utils@^7.8.0": - version "7.26.5" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.26.5.tgz#18580d00c9934117ad719392c4f6585c9333cc35" - integrity sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg== - -"@babel/helper-remap-async-to-generator@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.25.9.tgz#e53956ab3d5b9fb88be04b3e2f31b523afd34b92" - integrity sha512-IZtukuUeBbhgOcaW2s06OXTzVNJR0ybm4W5xC1opWFFJMZbwRj5LCk+ByYH7WdZPZTt8KnFwA8pvjN2yqcPlgw== - dependencies: - "@babel/helper-annotate-as-pure" "^7.25.9" - "@babel/helper-wrap-function" "^7.25.9" - "@babel/traverse" "^7.25.9" - -"@babel/helper-replace-supers@^7.25.9", "@babel/helper-replace-supers@^7.26.5": - version "7.26.5" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.26.5.tgz#6cb04e82ae291dae8e72335dfe438b0725f14c8d" - integrity sha512-bJ6iIVdYX1YooY2X7w1q6VITt+LnUILtNk7zT78ykuwStx8BauCzxvFqFaHjOpW1bVnSUM1PN1f0p5P21wHxvg== - dependencies: - "@babel/helper-member-expression-to-functions" "^7.25.9" - "@babel/helper-optimise-call-expression" "^7.25.9" - "@babel/traverse" "^7.26.5" - -"@babel/helper-skip-transparent-expression-wrappers@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.25.9.tgz#0b2e1b62d560d6b1954893fd2b705dc17c91f0c9" - integrity sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA== - dependencies: - "@babel/traverse" "^7.25.9" - "@babel/types" "^7.25.9" - -"@babel/helper-string-parser@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz#1aabb72ee72ed35789b4bbcad3ca2862ce614e8c" - integrity sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA== - -"@babel/helper-validator-identifier@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz#24b64e2c3ec7cd3b3c547729b8d16871f22cbdc7" - integrity sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ== - -"@babel/helper-validator-option@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz#86e45bd8a49ab7e03f276577f96179653d41da72" - integrity sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw== - -"@babel/helper-wrap-function@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.25.9.tgz#d99dfd595312e6c894bd7d237470025c85eea9d0" - integrity sha512-ETzz9UTjQSTmw39GboatdymDq4XIQbR8ySgVrylRhPOFpsd+JrKHIuF0de7GCWmem+T4uC5z7EZguod7Wj4A4g== - dependencies: - "@babel/template" "^7.25.9" - "@babel/traverse" "^7.25.9" - "@babel/types" "^7.25.9" - -"@babel/helpers@^7.26.9": - version "7.26.9" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.26.9.tgz#28f3fb45252fc88ef2dc547c8a911c255fc9fef6" - integrity sha512-Mz/4+y8udxBKdmzt/UjPACs4G3j5SshJJEFFKxlCGPydG4JAHXxjWjAwjd09tf6oINvl1VfMJo+nB7H2YKQ0dA== - dependencies: - "@babel/template" "^7.26.9" - "@babel/types" "^7.26.9" - -"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9", "@babel/parser@^7.26.9": - version "7.26.9" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.26.9.tgz#d9e78bee6dc80f9efd8f2349dcfbbcdace280fd5" - integrity sha512-81NWa1njQblgZbQHxWHpxxCzNsa3ZwvFqpUg7P+NNUU6f3UU2jBEg4OlF/J6rl8+PQGh1q6/zWScd001YwcA5A== - dependencies: - "@babel/types" "^7.26.9" - -"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.25.9.tgz#cc2e53ebf0a0340777fff5ed521943e253b4d8fe" - integrity sha512-ZkRyVkThtxQ/J6nv3JFYv1RYY+JT5BvU0y3k5bWrmuG4woXypRa4PXmm9RhOwodRkYFWqC0C0cqcJ4OqR7kW+g== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/traverse" "^7.25.9" - -"@babel/plugin-bugfix-safari-class-field-initializer-scope@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.25.9.tgz#af9e4fb63ccb8abcb92375b2fcfe36b60c774d30" - integrity sha512-MrGRLZxLD/Zjj0gdU15dfs+HH/OXvnw/U4jJD8vpcP2CJQapPEv1IWwjc/qMg7ItBlPwSv1hRBbb7LeuANdcnw== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.25.9.tgz#e8dc26fcd616e6c5bf2bd0d5a2c151d4f92a9137" - integrity sha512-2qUwwfAFpJLZqxd02YW9btUCZHl+RFvdDkNfZwaIJrvB8Tesjsk8pEQkTvGwZXLqXUx/2oyY3ySRhm6HOXuCug== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.25.9.tgz#807a667f9158acac6f6164b4beb85ad9ebc9e1d1" - integrity sha512-6xWgLZTJXwilVjlnV7ospI3xi+sl8lN8rXXbBD6vYn3UYDlGsag8wrZkKcSI8G6KgqKP7vNFaDgeDnfAABq61g== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" - "@babel/plugin-transform-optional-chaining" "^7.25.9" - -"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.25.9.tgz#de7093f1e7deaf68eadd7cc6b07f2ab82543269e" - integrity sha512-aLnMXYPnzwwqhYSCyXfKkIkYgJ8zv9RK+roo9DkTXz38ynIhd9XCbN08s3MGvqL2MYGVUGdRQLL/JqBIeJhJBg== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/traverse" "^7.25.9" - -"@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2": - version "7.21.0-placeholder-for-preset-env.2" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz#7844f9289546efa9febac2de4cfe358a050bd703" - integrity sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w== - -"@babel/plugin-syntax-async-generators@^7.8.4": - version "7.8.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" - integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-bigint@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea" - integrity sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-class-properties@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" - integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - -"@babel/plugin-syntax-class-static-block@^7.14.5": - version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz#195df89b146b4b78b3bf897fd7a257c84659d406" - integrity sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw== - dependencies: - "@babel/helper-plugin-utils" "^7.14.5" - -"@babel/plugin-syntax-import-assertions@^7.26.0": - version "7.26.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.26.0.tgz#620412405058efa56e4a564903b79355020f445f" - integrity sha512-QCWT5Hh830hK5EQa7XzuqIkQU9tT/whqbDz7kuaZMHFl1inRRg7JnuAEOQ0Ur0QUl0NufCk1msK2BeY79Aj/eg== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-syntax-import-attributes@^7.24.7", "@babel/plugin-syntax-import-attributes@^7.26.0": - version "7.26.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.26.0.tgz#3b1412847699eea739b4f2602c74ce36f6b0b0f7" - integrity sha512-e2dttdsJ1ZTpi3B9UYGLw41hifAubg19AtCu/2I/F1QNVclOBr1dYpTdmdyZ84Xiz43BS/tCUkMAZNLv12Pi+A== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-syntax-import-meta@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51" - integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-syntax-json-strings@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a" - integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-jsx@^7.25.9", "@babel/plugin-syntax-jsx@^7.7.2": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.25.9.tgz#a34313a178ea56f1951599b929c1ceacee719290" - integrity sha512-ld6oezHQMZsZfp6pWtbjaNDF2tiiCYYDqQszHt5VV437lewP9aSi2Of99CK0D0XB21k7FLgnLcmQKyKzynfeAA== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-syntax-logical-assignment-operators@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" - integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-syntax-nullish-coalescing-operator@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9" - integrity sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-numeric-separator@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97" - integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-syntax-object-rest-spread@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" - integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-optional-catch-binding@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1" - integrity sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-optional-chaining@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a" - integrity sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-private-property-in-object@^7.14.5": - version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz#0dc6671ec0ea22b6e94a1114f857970cd39de1ad" - integrity sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg== - dependencies: - "@babel/helper-plugin-utils" "^7.14.5" - -"@babel/plugin-syntax-top-level-await@^7.14.5": - version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c" - integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw== - dependencies: - "@babel/helper-plugin-utils" "^7.14.5" - -"@babel/plugin-syntax-typescript@^7.25.9", "@babel/plugin-syntax-typescript@^7.7.2": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.25.9.tgz#67dda2b74da43727cf21d46cf9afef23f4365399" - integrity sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-syntax-unicode-sets-regex@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz#d49a3b3e6b52e5be6740022317580234a6a47357" - integrity sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-arrow-functions@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.25.9.tgz#7821d4410bee5daaadbb4cdd9a6649704e176845" - integrity sha512-6jmooXYIwn9ca5/RylZADJ+EnSxVUS5sjeJ9UPk6RWRzXCmOJCy6dqItPJFpw2cuCangPK4OYr5uhGKcmrm5Qg== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-async-generator-functions@^7.26.8": - version "7.26.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.26.8.tgz#5e3991135e3b9c6eaaf5eff56d1ae5a11df45ff8" - integrity sha512-He9Ej2X7tNf2zdKMAGOsmg2MrFc+hfoAhd3po4cWfo/NWjzEAKa0oQruj1ROVUdl0e6fb6/kE/G3SSxE0lRJOg== - dependencies: - "@babel/helper-plugin-utils" "^7.26.5" - "@babel/helper-remap-async-to-generator" "^7.25.9" - "@babel/traverse" "^7.26.8" - -"@babel/plugin-transform-async-to-generator@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.25.9.tgz#c80008dacae51482793e5a9c08b39a5be7e12d71" - integrity sha512-NT7Ejn7Z/LjUH0Gv5KsBCxh7BH3fbLTV0ptHvpeMvrt3cPThHfJfst9Wrb7S8EvJ7vRTFI7z+VAvFVEQn/m5zQ== - dependencies: - "@babel/helper-module-imports" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/helper-remap-async-to-generator" "^7.25.9" - -"@babel/plugin-transform-block-scoped-functions@^7.26.5": - version "7.26.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.26.5.tgz#3dc4405d31ad1cbe45293aa57205a6e3b009d53e" - integrity sha512-chuTSY+hq09+/f5lMj8ZSYgCFpppV2CbYrhNFJ1BFoXpiWPnnAb7R0MqrafCpN8E1+YRrtM1MXZHJdIx8B6rMQ== - dependencies: - "@babel/helper-plugin-utils" "^7.26.5" - -"@babel/plugin-transform-block-scoping@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.25.9.tgz#c33665e46b06759c93687ca0f84395b80c0473a1" - integrity sha512-1F05O7AYjymAtqbsFETboN1NvBdcnzMerO+zlMyJBEz6WkMdejvGWw9p05iTSjC85RLlBseHHQpYaM4gzJkBGg== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-class-properties@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.25.9.tgz#a8ce84fedb9ad512549984101fa84080a9f5f51f" - integrity sha512-bbMAII8GRSkcd0h0b4X+36GksxuheLFjP65ul9w6C3KgAamI3JqErNgSrosX6ZPj+Mpim5VvEbawXxJCyEUV3Q== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-class-static-block@^7.26.0": - version "7.26.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.26.0.tgz#6c8da219f4eb15cae9834ec4348ff8e9e09664a0" - integrity sha512-6J2APTs7BDDm+UMqP1useWqhcRAXo0WIoVj26N7kPFB6S73Lgvyka4KTZYIxtgYXiN5HTyRObA72N2iu628iTQ== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-classes@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.25.9.tgz#7152457f7880b593a63ade8a861e6e26a4469f52" - integrity sha512-mD8APIXmseE7oZvZgGABDyM34GUmK45Um2TXiBUt7PnuAxrgoSVf123qUzPxEr/+/BHrRn5NMZCdE2m/1F8DGg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.25.9" - "@babel/helper-compilation-targets" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/helper-replace-supers" "^7.25.9" - "@babel/traverse" "^7.25.9" - globals "^11.1.0" - -"@babel/plugin-transform-computed-properties@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.25.9.tgz#db36492c78460e534b8852b1d5befe3c923ef10b" - integrity sha512-HnBegGqXZR12xbcTHlJ9HGxw1OniltT26J5YpfruGqtUHlz/xKf/G2ak9e+t0rVqrjXa9WOhvYPz1ERfMj23AA== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/template" "^7.25.9" - -"@babel/plugin-transform-destructuring@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.25.9.tgz#966ea2595c498224340883602d3cfd7a0c79cea1" - integrity sha512-WkCGb/3ZxXepmMiX101nnGiU+1CAdut8oHyEOHxkKuS1qKpU2SMXE2uSvfz8PBuLd49V6LEsbtyPhWC7fnkgvQ== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-dotall-regex@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.25.9.tgz#bad7945dd07734ca52fe3ad4e872b40ed09bb09a" - integrity sha512-t7ZQ7g5trIgSRYhI9pIJtRl64KHotutUJsh4Eze5l7olJv+mRSg4/MmbZ0tv1eeqRbdvo/+trvJD/Oc5DmW2cA== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-duplicate-keys@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.25.9.tgz#8850ddf57dce2aebb4394bb434a7598031059e6d" - integrity sha512-LZxhJ6dvBb/f3x8xwWIuyiAHy56nrRG3PeYTpBkkzkYRRQ6tJLu68lEF5VIqMUZiAV7a8+Tb78nEoMCMcqjXBw== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-duplicate-named-capturing-groups-regex@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.25.9.tgz#6f7259b4de127721a08f1e5165b852fcaa696d31" - integrity sha512-0UfuJS0EsXbRvKnwcLjFtJy/Sxc5J5jhLHnFhy7u4zih97Hz6tJkLU+O+FMMrNZrosUPxDi6sYxJ/EA8jDiAog== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-dynamic-import@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.25.9.tgz#23e917de63ed23c6600c5dd06d94669dce79f7b8" - integrity sha512-GCggjexbmSLaFhqsojeugBpeaRIgWNTcgKVq/0qIteFEqY2A+b9QidYadrWlnbWQUrW5fn+mCvf3tr7OeBFTyg== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-exponentiation-operator@^7.26.3": - version "7.26.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.26.3.tgz#e29f01b6de302c7c2c794277a48f04a9ca7f03bc" - integrity sha512-7CAHcQ58z2chuXPWblnn1K6rLDnDWieghSOEmqQsrBenH0P9InCUtOJYD89pvngljmZlJcz3fcmgYsXFNGa1ZQ== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-export-namespace-from@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.25.9.tgz#90745fe55053394f554e40584cda81f2c8a402a2" - integrity sha512-2NsEz+CxzJIVOPx2o9UsW1rXLqtChtLoVnwYHHiB04wS5sgn7mrV45fWMBX0Kk+ub9uXytVYfNP2HjbVbCB3Ww== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-for-of@^7.26.9": - version "7.26.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.26.9.tgz#27231f79d5170ef33b5111f07fe5cafeb2c96a56" - integrity sha512-Hry8AusVm8LW5BVFgiyUReuoGzPUpdHQQqJY5bZnbbf+ngOHWuCuYFKw/BqaaWlvEUrF91HMhDtEaI1hZzNbLg== - dependencies: - "@babel/helper-plugin-utils" "^7.26.5" - "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" - -"@babel/plugin-transform-function-name@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.25.9.tgz#939d956e68a606661005bfd550c4fc2ef95f7b97" - integrity sha512-8lP+Yxjv14Vc5MuWBpJsoUCd3hD6V9DgBon2FVYL4jJgbnVQ9fTgYmonchzZJOVNgzEgbxp4OwAf6xz6M/14XA== - dependencies: - "@babel/helper-compilation-targets" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/traverse" "^7.25.9" - -"@babel/plugin-transform-json-strings@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.25.9.tgz#c86db407cb827cded902a90c707d2781aaa89660" - integrity sha512-xoTMk0WXceiiIvsaquQQUaLLXSW1KJ159KP87VilruQm0LNNGxWzahxSS6T6i4Zg3ezp4vA4zuwiNUR53qmQAw== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-literals@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.25.9.tgz#1a1c6b4d4aa59bc4cad5b6b3a223a0abd685c9de" - integrity sha512-9N7+2lFziW8W9pBl2TzaNht3+pgMIRP74zizeCSrtnSKVdUl8mAjjOP2OOVQAfZ881P2cNjDj1uAMEdeD50nuQ== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-logical-assignment-operators@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.25.9.tgz#b19441a8c39a2fda0902900b306ea05ae1055db7" - integrity sha512-wI4wRAzGko551Y8eVf6iOY9EouIDTtPb0ByZx+ktDGHwv6bHFimrgJM/2T021txPZ2s4c7bqvHbd+vXG6K948Q== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-member-expression-literals@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.25.9.tgz#63dff19763ea64a31f5e6c20957e6a25e41ed5de" - integrity sha512-PYazBVfofCQkkMzh2P6IdIUaCEWni3iYEerAsRWuVd8+jlM1S9S9cz1dF9hIzyoZ8IA3+OwVYIp9v9e+GbgZhA== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-modules-amd@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.25.9.tgz#49ba478f2295101544abd794486cd3088dddb6c5" - integrity sha512-g5T11tnI36jVClQlMlt4qKDLlWnG5pP9CSM4GhdRciTNMRgkfpo5cR6b4rGIOYPgRRuFAvwjPQ/Yk+ql4dyhbw== - dependencies: - "@babel/helper-module-transforms" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-modules-commonjs@^7.25.9", "@babel/plugin-transform-modules-commonjs@^7.26.3": - version "7.26.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.26.3.tgz#8f011d44b20d02c3de44d8850d971d8497f981fb" - integrity sha512-MgR55l4q9KddUDITEzEFYn5ZsGDXMSsU9E+kh7fjRXTIC3RHqfCo8RPRbyReYJh44HQ/yomFkqbOFohXvDCiIQ== - dependencies: - "@babel/helper-module-transforms" "^7.26.0" - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-modules-systemjs@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.25.9.tgz#8bd1b43836269e3d33307151a114bcf3ba6793f8" - integrity sha512-hyss7iIlH/zLHaehT+xwiymtPOpsiwIIRlCAOwBB04ta5Tt+lNItADdlXw3jAWZ96VJ2jlhl/c+PNIQPKNfvcA== - dependencies: - "@babel/helper-module-transforms" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/helper-validator-identifier" "^7.25.9" - "@babel/traverse" "^7.25.9" - -"@babel/plugin-transform-modules-umd@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.25.9.tgz#6710079cdd7c694db36529a1e8411e49fcbf14c9" - integrity sha512-bS9MVObUgE7ww36HEfwe6g9WakQ0KF07mQF74uuXdkoziUPfKyu/nIm663kz//e5O1nPInPFx36z7WJmJ4yNEw== - dependencies: - "@babel/helper-module-transforms" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-named-capturing-groups-regex@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.25.9.tgz#454990ae6cc22fd2a0fa60b3a2c6f63a38064e6a" - integrity sha512-oqB6WHdKTGl3q/ItQhpLSnWWOpjUJLsOCLVyeFgeTktkBSCiurvPOsyt93gibI9CmuKvTUEtWmG5VhZD+5T/KA== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-new-target@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.25.9.tgz#42e61711294b105c248336dcb04b77054ea8becd" - integrity sha512-U/3p8X1yCSoKyUj2eOBIx3FOn6pElFOKvAAGf8HTtItuPyB+ZeOqfn+mvTtg9ZlOAjsPdK3ayQEjqHjU/yLeVQ== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-nullish-coalescing-operator@^7.26.6": - version "7.26.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.26.6.tgz#fbf6b3c92cb509e7b319ee46e3da89c5bedd31fe" - integrity sha512-CKW8Vu+uUZneQCPtXmSBUC6NCAUdya26hWCElAWh5mVSlSRsmiCPUUDKb3Z0szng1hiAJa098Hkhg9o4SE35Qw== - dependencies: - "@babel/helper-plugin-utils" "^7.26.5" - -"@babel/plugin-transform-numeric-separator@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.25.9.tgz#bfed75866261a8b643468b0ccfd275f2033214a1" - integrity sha512-TlprrJ1GBZ3r6s96Yq8gEQv82s8/5HnCVHtEJScUj90thHQbwe+E5MLhi2bbNHBEJuzrvltXSru+BUxHDoog7Q== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-object-rest-spread@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.25.9.tgz#0203725025074164808bcf1a2cfa90c652c99f18" - integrity sha512-fSaXafEE9CVHPweLYw4J0emp1t8zYTXyzN3UuG+lylqkvYd7RMrsOQ8TYx5RF231be0vqtFC6jnx3UmpJmKBYg== - dependencies: - "@babel/helper-compilation-targets" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/plugin-transform-parameters" "^7.25.9" - -"@babel/plugin-transform-object-super@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.25.9.tgz#385d5de135162933beb4a3d227a2b7e52bb4cf03" - integrity sha512-Kj/Gh+Rw2RNLbCK1VAWj2U48yxxqL2x0k10nPtSdRa0O2xnHXalD0s+o1A6a0W43gJ00ANo38jxkQreckOzv5A== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/helper-replace-supers" "^7.25.9" - -"@babel/plugin-transform-optional-catch-binding@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.25.9.tgz#10e70d96d52bb1f10c5caaac59ac545ea2ba7ff3" - integrity sha512-qM/6m6hQZzDcZF3onzIhZeDHDO43bkNNlOX0i8n3lR6zLbu0GN2d8qfM/IERJZYauhAHSLHy39NF0Ctdvcid7g== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-optional-chaining@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.25.9.tgz#e142eb899d26ef715435f201ab6e139541eee7dd" - integrity sha512-6AvV0FsLULbpnXeBjrY4dmWF8F7gf8QnvTEoO/wX/5xm/xE1Xo8oPuD3MPS+KS9f9XBEAWN7X1aWr4z9HdOr7A== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" - -"@babel/plugin-transform-parameters@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.25.9.tgz#b856842205b3e77e18b7a7a1b94958069c7ba257" - integrity sha512-wzz6MKwpnshBAiRmn4jR8LYz/g8Ksg0o80XmwZDlordjwEk9SxBzTWC7F5ef1jhbrbOW2DJ5J6ayRukrJmnr0g== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-private-methods@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.25.9.tgz#847f4139263577526455d7d3223cd8bda51e3b57" - integrity sha512-D/JUozNpQLAPUVusvqMxyvjzllRaF8/nSrP1s2YGQT/W4LHK4xxsMcHjhOGTS01mp9Hda8nswb+FblLdJornQw== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-private-property-in-object@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.25.9.tgz#9c8b73e64e6cc3cbb2743633885a7dd2c385fe33" - integrity sha512-Evf3kcMqzXA3xfYJmZ9Pg1OvKdtqsDMSWBDzZOPLvHiTt36E75jLDQo5w1gtRU95Q4E5PDttrTf25Fw8d/uWLw== - dependencies: - "@babel/helper-annotate-as-pure" "^7.25.9" - "@babel/helper-create-class-features-plugin" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-property-literals@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.25.9.tgz#d72d588bd88b0dec8b62e36f6fda91cedfe28e3f" - integrity sha512-IvIUeV5KrS/VPavfSM/Iu+RE6llrHrYIKY1yfCzyO/lMXHQ+p7uGhonmGVisv6tSBSVgWzMBohTcvkC9vQcQFA== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-regenerator@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.25.9.tgz#03a8a4670d6cebae95305ac6defac81ece77740b" - integrity sha512-vwDcDNsgMPDGP0nMqzahDWE5/MLcX8sv96+wfX7as7LoF/kr97Bo/7fI00lXY4wUXYfVmwIIyG80fGZ1uvt2qg== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - regenerator-transform "^0.15.2" - -"@babel/plugin-transform-regexp-modifiers@^7.26.0": - version "7.26.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regexp-modifiers/-/plugin-transform-regexp-modifiers-7.26.0.tgz#2f5837a5b5cd3842a919d8147e9903cc7455b850" - integrity sha512-vN6saax7lrA2yA/Pak3sCxuD6F5InBjn9IcrIKQPjpsLvuHYLVroTxjdlVRHjjBWxKOqIwpTXDkOssYT4BFdRw== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-reserved-words@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.25.9.tgz#0398aed2f1f10ba3f78a93db219b27ef417fb9ce" - integrity sha512-7DL7DKYjn5Su++4RXu8puKZm2XBPHyjWLUidaPEkCUBbE7IPcsrkRHggAOOKydH1dASWdcUBxrkOGNxUv5P3Jg== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-shorthand-properties@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.25.9.tgz#bb785e6091f99f826a95f9894fc16fde61c163f2" - integrity sha512-MUv6t0FhO5qHnS/W8XCbHmiRWOphNufpE1IVxhK5kuN3Td9FT1x4rx4K42s3RYdMXCXpfWkGSbCSd0Z64xA7Ng== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-spread@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.25.9.tgz#24a35153931b4ba3d13cec4a7748c21ab5514ef9" - integrity sha512-oNknIB0TbURU5pqJFVbOOFspVlrpVwo2H1+HUIsVDvp5VauGGDP1ZEvO8Nn5xyMEs3dakajOxlmkNW7kNgSm6A== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" - -"@babel/plugin-transform-sticky-regex@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.25.9.tgz#c7f02b944e986a417817b20ba2c504dfc1453d32" - integrity sha512-WqBUSgeVwucYDP9U/xNRQam7xV8W5Zf+6Eo7T2SRVUFlhRiMNFdFz58u0KZmCVVqs2i7SHgpRnAhzRNmKfi2uA== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-template-literals@^7.26.8": - version "7.26.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.26.8.tgz#966b15d153a991172a540a69ad5e1845ced990b5" - integrity sha512-OmGDL5/J0CJPJZTHZbi2XpO0tyT2Ia7fzpW5GURwdtp2X3fMmN8au/ej6peC/T33/+CRiIpA8Krse8hFGVmT5Q== - dependencies: - "@babel/helper-plugin-utils" "^7.26.5" - -"@babel/plugin-transform-typeof-symbol@^7.26.7": - version "7.26.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.26.7.tgz#d0e33acd9223744c1e857dbd6fa17bd0a3786937" - integrity sha512-jfoTXXZTgGg36BmhqT3cAYK5qkmqvJpvNrPhaK/52Vgjhw4Rq29s9UqpWWV0D6yuRmgiFH/BUVlkl96zJWqnaw== - dependencies: - "@babel/helper-plugin-utils" "^7.26.5" - -"@babel/plugin-transform-typescript@^7.25.9": - version "7.26.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.26.8.tgz#2e9caa870aa102f50d7125240d9dbf91334b0950" - integrity sha512-bME5J9AC8ChwA7aEPJ6zym3w7aObZULHhbNLU0bKUhKsAkylkzUdq+0kdymh9rzi8nlNFl2bmldFBCKNJBUpuw== - dependencies: - "@babel/helper-annotate-as-pure" "^7.25.9" - "@babel/helper-create-class-features-plugin" "^7.25.9" - "@babel/helper-plugin-utils" "^7.26.5" - "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" - "@babel/plugin-syntax-typescript" "^7.25.9" - -"@babel/plugin-transform-unicode-escapes@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.25.9.tgz#a75ef3947ce15363fccaa38e2dd9bc70b2788b82" - integrity sha512-s5EDrE6bW97LtxOcGj1Khcx5AaXwiMmi4toFWRDP9/y0Woo6pXC+iyPu/KuhKtfSrNFd7jJB+/fkOtZy6aIC6Q== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-unicode-property-regex@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.25.9.tgz#a901e96f2c1d071b0d1bb5dc0d3c880ce8f53dd3" - integrity sha512-Jt2d8Ga+QwRluxRQ307Vlxa6dMrYEMZCgGxoPR8V52rxPyldHu3hdlHspxaqYmE7oID5+kB+UKUB/eWS+DkkWg== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-unicode-regex@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.25.9.tgz#5eae747fe39eacf13a8bd006a4fb0b5d1fa5e9b1" - integrity sha512-yoxstj7Rg9dlNn9UQxzk4fcNivwv4nUYz7fYXBaKxvw/lnmPuOm/ikoELygbYq68Bls3D/D+NBPHiLwZdZZ4HA== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/plugin-transform-unicode-sets-regex@^7.25.9": - version "7.25.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.25.9.tgz#65114c17b4ffc20fa5b163c63c70c0d25621fabe" - integrity sha512-8BYqO3GeVNHtx69fdPshN3fnzUNLrWdHhk/icSwigksJGczKSizZ+Z6SBCxTs723Fr5VSNorTIK7a+R2tISvwQ== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.9" - "@babel/helper-plugin-utils" "^7.25.9" - -"@babel/preset-env@^7.26.9": - version "7.26.9" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.26.9.tgz#2ec64e903d0efe743699f77a10bdf7955c2123c3" - integrity sha512-vX3qPGE8sEKEAZCWk05k3cpTAE3/nOYca++JA+Rd0z2NCNzabmYvEiSShKzm10zdquOIAVXsy2Ei/DTW34KlKQ== - dependencies: - "@babel/compat-data" "^7.26.8" - "@babel/helper-compilation-targets" "^7.26.5" - "@babel/helper-plugin-utils" "^7.26.5" - "@babel/helper-validator-option" "^7.25.9" - "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.25.9" - "@babel/plugin-bugfix-safari-class-field-initializer-scope" "^7.25.9" - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.25.9" - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.25.9" - "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.25.9" - "@babel/plugin-proposal-private-property-in-object" "7.21.0-placeholder-for-preset-env.2" - "@babel/plugin-syntax-import-assertions" "^7.26.0" - "@babel/plugin-syntax-import-attributes" "^7.26.0" - "@babel/plugin-syntax-unicode-sets-regex" "^7.18.6" - "@babel/plugin-transform-arrow-functions" "^7.25.9" - "@babel/plugin-transform-async-generator-functions" "^7.26.8" - "@babel/plugin-transform-async-to-generator" "^7.25.9" - "@babel/plugin-transform-block-scoped-functions" "^7.26.5" - "@babel/plugin-transform-block-scoping" "^7.25.9" - "@babel/plugin-transform-class-properties" "^7.25.9" - "@babel/plugin-transform-class-static-block" "^7.26.0" - "@babel/plugin-transform-classes" "^7.25.9" - "@babel/plugin-transform-computed-properties" "^7.25.9" - "@babel/plugin-transform-destructuring" "^7.25.9" - "@babel/plugin-transform-dotall-regex" "^7.25.9" - "@babel/plugin-transform-duplicate-keys" "^7.25.9" - "@babel/plugin-transform-duplicate-named-capturing-groups-regex" "^7.25.9" - "@babel/plugin-transform-dynamic-import" "^7.25.9" - "@babel/plugin-transform-exponentiation-operator" "^7.26.3" - "@babel/plugin-transform-export-namespace-from" "^7.25.9" - "@babel/plugin-transform-for-of" "^7.26.9" - "@babel/plugin-transform-function-name" "^7.25.9" - "@babel/plugin-transform-json-strings" "^7.25.9" - "@babel/plugin-transform-literals" "^7.25.9" - "@babel/plugin-transform-logical-assignment-operators" "^7.25.9" - "@babel/plugin-transform-member-expression-literals" "^7.25.9" - "@babel/plugin-transform-modules-amd" "^7.25.9" - "@babel/plugin-transform-modules-commonjs" "^7.26.3" - "@babel/plugin-transform-modules-systemjs" "^7.25.9" - "@babel/plugin-transform-modules-umd" "^7.25.9" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.25.9" - "@babel/plugin-transform-new-target" "^7.25.9" - "@babel/plugin-transform-nullish-coalescing-operator" "^7.26.6" - "@babel/plugin-transform-numeric-separator" "^7.25.9" - "@babel/plugin-transform-object-rest-spread" "^7.25.9" - "@babel/plugin-transform-object-super" "^7.25.9" - "@babel/plugin-transform-optional-catch-binding" "^7.25.9" - "@babel/plugin-transform-optional-chaining" "^7.25.9" - "@babel/plugin-transform-parameters" "^7.25.9" - "@babel/plugin-transform-private-methods" "^7.25.9" - "@babel/plugin-transform-private-property-in-object" "^7.25.9" - "@babel/plugin-transform-property-literals" "^7.25.9" - "@babel/plugin-transform-regenerator" "^7.25.9" - "@babel/plugin-transform-regexp-modifiers" "^7.26.0" - "@babel/plugin-transform-reserved-words" "^7.25.9" - "@babel/plugin-transform-shorthand-properties" "^7.25.9" - "@babel/plugin-transform-spread" "^7.25.9" - "@babel/plugin-transform-sticky-regex" "^7.25.9" - "@babel/plugin-transform-template-literals" "^7.26.8" - "@babel/plugin-transform-typeof-symbol" "^7.26.7" - "@babel/plugin-transform-unicode-escapes" "^7.25.9" - "@babel/plugin-transform-unicode-property-regex" "^7.25.9" - "@babel/plugin-transform-unicode-regex" "^7.25.9" - "@babel/plugin-transform-unicode-sets-regex" "^7.25.9" - "@babel/preset-modules" "0.1.6-no-external-plugins" - babel-plugin-polyfill-corejs2 "^0.4.10" - babel-plugin-polyfill-corejs3 "^0.11.0" - babel-plugin-polyfill-regenerator "^0.6.1" - core-js-compat "^3.40.0" - semver "^6.3.1" - -"@babel/preset-modules@0.1.6-no-external-plugins": - version "0.1.6-no-external-plugins" - resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz#ccb88a2c49c817236861fee7826080573b8a923a" - integrity sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/types" "^7.4.4" - esutils "^2.0.2" - -"@babel/preset-typescript@^7.26.0": - version "7.26.0" - resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.26.0.tgz#4a570f1b8d104a242d923957ffa1eaff142a106d" - integrity sha512-NMk1IGZ5I/oHhoXEElcm+xUnL/szL6xflkFZmoEU9xj1qSJXpiS7rsspYo92B4DRCDvZn2erT5LdsCeXAKNCkg== - dependencies: - "@babel/helper-plugin-utils" "^7.25.9" - "@babel/helper-validator-option" "^7.25.9" - "@babel/plugin-syntax-jsx" "^7.25.9" - "@babel/plugin-transform-modules-commonjs" "^7.25.9" - "@babel/plugin-transform-typescript" "^7.25.9" - -"@babel/runtime@^7.26.10", "@babel/runtime@^7.8.4": - version "7.28.4" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.28.4.tgz#a70226016fabe25c5783b2f22d3e1c9bc5ca3326" - integrity sha512-Q/N6JNWvIvPnLDvjlE1OUBLPQHH6l3CltCEsHIujp45zQUSSh8K+gHnaEX45yAT1nyngnINhvWtzN+Nb9D8RAQ== - -"@babel/template@^7.25.9", "@babel/template@^7.26.9", "@babel/template@^7.3.3": - version "7.26.9" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.26.9.tgz#4577ad3ddf43d194528cff4e1fa6b232fa609bb2" - integrity sha512-qyRplbeIpNZhmzOysF/wFMuP9sctmh2cFzRAZOn1YapxBsE1i9bJIY586R/WBLfLcmcBlM8ROBiQURnnNy+zfA== - dependencies: - "@babel/code-frame" "^7.26.2" - "@babel/parser" "^7.26.9" - "@babel/types" "^7.26.9" - -"@babel/traverse@^7.23.2", "@babel/traverse@^7.25.9", "@babel/traverse@^7.26.5", "@babel/traverse@^7.26.8", "@babel/traverse@^7.26.9": - version "7.26.9" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.26.9.tgz#4398f2394ba66d05d988b2ad13c219a2c857461a" - integrity sha512-ZYW7L+pL8ahU5fXmNbPF+iZFHCv5scFak7MZ9bwaRPLUhHh7QQEMjZUg0HevihoqCM5iSYHN61EyCoZvqC+bxg== - dependencies: - "@babel/code-frame" "^7.26.2" - "@babel/generator" "^7.26.9" - "@babel/parser" "^7.26.9" - "@babel/template" "^7.26.9" - "@babel/types" "^7.26.9" - debug "^4.3.1" - globals "^11.1.0" - -"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.25.9", "@babel/types@^7.26.9", "@babel/types@^7.3.3", "@babel/types@^7.4.4": - version "7.26.9" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.26.9.tgz#08b43dec79ee8e682c2ac631c010bdcac54a21ce" - integrity sha512-Y3IR1cRnOxOCDvMmNiym7XpXQ93iGDDPHx+Zj+NM+rg0fBaShfQLkg+hKPaZCEvg5N/LeCo4+Rj/i3FuJsIQaw== - dependencies: - "@babel/helper-string-parser" "^7.25.9" - "@babel/helper-validator-identifier" "^7.25.9" - -"@bcoe/v8-coverage@^0.2.3": - version "0.2.3" - resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" - integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== - -"@eslint-community/eslint-utils@^4.4.0": - version "4.4.1" - resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.1.tgz#d1145bf2c20132d6400495d6df4bf59362fd9d56" - integrity sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA== - dependencies: - eslint-visitor-keys "^3.4.3" - -"@eslint-community/regexpp@^4.5.1": - version "4.12.1" - resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.12.1.tgz#cfc6cffe39df390a3841cde2abccf92eaa7ae0e0" - integrity sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ== - -"@eslint/eslintrc@^1.0.5": - version "1.0.5" - resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.0.5.tgz" - integrity sha512-BLxsnmK3KyPunz5wmCCpqy0YelEoxxGmH73Is+Z74oOTMtExcjkr3dDR6quwrjh1YspA8DH9gnX1o069KiS9AQ== - dependencies: - ajv "^6.12.4" - debug "^4.3.2" - espree "^9.2.0" - globals "^13.9.0" - ignore "^4.0.6" - import-fresh "^3.2.1" - js-yaml "^4.1.0" - minimatch "^3.0.4" - strip-json-comments "^3.1.1" - -"@humanwhocodes/config-array@^0.9.2": - version "0.9.3" - resolved "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.3.tgz" - integrity sha512-3xSMlXHh03hCcCmFc0rbKp3Ivt2PFEJnQUJDDMTJQ2wkECZWdq4GePs2ctc5H8zV+cHPaq8k2vU8mrQjA6iHdQ== - dependencies: - "@humanwhocodes/object-schema" "^1.2.1" - debug "^4.1.1" - minimatch "^3.0.4" - -"@humanwhocodes/object-schema@^1.2.1": - 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== - -"@isaacs/cliui@^8.0.2": - version "8.0.2" - resolved "https://registry.yarnpkg.com/@isaacs/cliui/-/cliui-8.0.2.tgz#b37667b7bc181c168782259bab42474fbf52b550" - integrity sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA== - dependencies: - string-width "^5.1.2" - string-width-cjs "npm:string-width@^4.2.0" - strip-ansi "^7.0.1" - strip-ansi-cjs "npm:strip-ansi@^6.0.1" - wrap-ansi "^8.1.0" - wrap-ansi-cjs "npm:wrap-ansi@^7.0.0" - -"@istanbuljs/load-nyc-config@^1.0.0": - version "1.1.0" - resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" - integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ== - 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" - -"@istanbuljs/schema@^0.1.2", "@istanbuljs/schema@^0.1.3": - version "0.1.3" - resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" - integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== - -"@jest/console@^29.7.0": - version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-29.7.0.tgz#cd4822dbdb84529265c5a2bdb529a3c9cc950ffc" - integrity sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg== - dependencies: - "@jest/types" "^29.6.3" - "@types/node" "*" - chalk "^4.0.0" - jest-message-util "^29.7.0" - jest-util "^29.7.0" - slash "^3.0.0" - -"@jest/core@^29.7.0": - version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-29.7.0.tgz#b6cccc239f30ff36609658c5a5e2291757ce448f" - integrity sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg== - dependencies: - "@jest/console" "^29.7.0" - "@jest/reporters" "^29.7.0" - "@jest/test-result" "^29.7.0" - "@jest/transform" "^29.7.0" - "@jest/types" "^29.6.3" - "@types/node" "*" - ansi-escapes "^4.2.1" - chalk "^4.0.0" - ci-info "^3.2.0" - exit "^0.1.2" - graceful-fs "^4.2.9" - jest-changed-files "^29.7.0" - jest-config "^29.7.0" - jest-haste-map "^29.7.0" - jest-message-util "^29.7.0" - jest-regex-util "^29.6.3" - jest-resolve "^29.7.0" - jest-resolve-dependencies "^29.7.0" - jest-runner "^29.7.0" - jest-runtime "^29.7.0" - jest-snapshot "^29.7.0" - jest-util "^29.7.0" - jest-validate "^29.7.0" - jest-watcher "^29.7.0" - micromatch "^4.0.4" - pretty-format "^29.7.0" - slash "^3.0.0" - strip-ansi "^6.0.0" - -"@jest/environment@^29.7.0": - version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-29.7.0.tgz#24d61f54ff1f786f3cd4073b4b94416383baf2a7" - integrity sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw== - dependencies: - "@jest/fake-timers" "^29.7.0" - "@jest/types" "^29.6.3" - "@types/node" "*" - jest-mock "^29.7.0" - -"@jest/expect-utils@^29.7.0": - version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/expect-utils/-/expect-utils-29.7.0.tgz#023efe5d26a8a70f21677d0a1afc0f0a44e3a1c6" - integrity sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA== - dependencies: - jest-get-type "^29.6.3" - -"@jest/expect@^29.7.0": - version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/expect/-/expect-29.7.0.tgz#76a3edb0cb753b70dfbfe23283510d3d45432bf2" - integrity sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ== - dependencies: - expect "^29.7.0" - jest-snapshot "^29.7.0" - -"@jest/fake-timers@^29.7.0": - version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-29.7.0.tgz#fd91bf1fffb16d7d0d24a426ab1a47a49881a565" - integrity sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ== - dependencies: - "@jest/types" "^29.6.3" - "@sinonjs/fake-timers" "^10.0.2" - "@types/node" "*" - jest-message-util "^29.7.0" - jest-mock "^29.7.0" - jest-util "^29.7.0" - -"@jest/globals@^29.7.0": - version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-29.7.0.tgz#8d9290f9ec47ff772607fa864ca1d5a2efae1d4d" - integrity sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ== - dependencies: - "@jest/environment" "^29.7.0" - "@jest/expect" "^29.7.0" - "@jest/types" "^29.6.3" - jest-mock "^29.7.0" - -"@jest/reporters@^29.7.0": - version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-29.7.0.tgz#04b262ecb3b8faa83b0b3d321623972393e8f4c7" - integrity sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg== - dependencies: - "@bcoe/v8-coverage" "^0.2.3" - "@jest/console" "^29.7.0" - "@jest/test-result" "^29.7.0" - "@jest/transform" "^29.7.0" - "@jest/types" "^29.6.3" - "@jridgewell/trace-mapping" "^0.3.18" - "@types/node" "*" - chalk "^4.0.0" - collect-v8-coverage "^1.0.0" - exit "^0.1.2" - glob "^7.1.3" - graceful-fs "^4.2.9" - istanbul-lib-coverage "^3.0.0" - istanbul-lib-instrument "^6.0.0" - istanbul-lib-report "^3.0.0" - istanbul-lib-source-maps "^4.0.0" - istanbul-reports "^3.1.3" - jest-message-util "^29.7.0" - jest-util "^29.7.0" - jest-worker "^29.7.0" - slash "^3.0.0" - string-length "^4.0.1" - strip-ansi "^6.0.0" - v8-to-istanbul "^9.0.1" - -"@jest/schemas@^29.6.3": - version "29.6.3" - resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.6.3.tgz#430b5ce8a4e0044a7e3819663305a7b3091c8e03" - integrity sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA== - dependencies: - "@sinclair/typebox" "^0.27.8" - -"@jest/source-map@^29.6.3": - version "29.6.3" - resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-29.6.3.tgz#d90ba772095cf37a34a5eb9413f1b562a08554c4" - integrity sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw== - dependencies: - "@jridgewell/trace-mapping" "^0.3.18" - callsites "^3.0.0" - graceful-fs "^4.2.9" - -"@jest/test-result@^29.7.0": - version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-29.7.0.tgz#8db9a80aa1a097bb2262572686734baed9b1657c" - integrity sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA== - dependencies: - "@jest/console" "^29.7.0" - "@jest/types" "^29.6.3" - "@types/istanbul-lib-coverage" "^2.0.0" - collect-v8-coverage "^1.0.0" - -"@jest/test-sequencer@^29.7.0": - version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz#6cef977ce1d39834a3aea887a1726628a6f072ce" - integrity sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw== - dependencies: - "@jest/test-result" "^29.7.0" - graceful-fs "^4.2.9" - jest-haste-map "^29.7.0" - slash "^3.0.0" - -"@jest/transform@^29.7.0": - version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-29.7.0.tgz#df2dd9c346c7d7768b8a06639994640c642e284c" - integrity sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw== - dependencies: - "@babel/core" "^7.11.6" - "@jest/types" "^29.6.3" - "@jridgewell/trace-mapping" "^0.3.18" - babel-plugin-istanbul "^6.1.1" - chalk "^4.0.0" - convert-source-map "^2.0.0" - fast-json-stable-stringify "^2.1.0" - graceful-fs "^4.2.9" - jest-haste-map "^29.7.0" - jest-regex-util "^29.6.3" - jest-util "^29.7.0" - micromatch "^4.0.4" - pirates "^4.0.4" - slash "^3.0.0" - write-file-atomic "^4.0.2" - -"@jest/types@^29.6.3": - version "29.6.3" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.6.3.tgz#1131f8cf634e7e84c5e77bab12f052af585fba59" - integrity sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw== - dependencies: - "@jest/schemas" "^29.6.3" - "@types/istanbul-lib-coverage" "^2.0.0" - "@types/istanbul-reports" "^3.0.0" - "@types/node" "*" - "@types/yargs" "^17.0.8" - chalk "^4.0.0" - -"@jridgewell/gen-mapping@^0.3.5": - version "0.3.8" - resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz#4f0e06362e01362f823d348f1872b08f666d8142" - integrity sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA== - dependencies: - "@jridgewell/set-array" "^1.2.1" - "@jridgewell/sourcemap-codec" "^1.4.10" - "@jridgewell/trace-mapping" "^0.3.24" - -"@jridgewell/resolve-uri@^3.1.0": - version "3.1.2" - resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6" - integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== - -"@jridgewell/set-array@^1.2.1": - version "1.2.1" - resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.2.1.tgz#558fb6472ed16a4c850b889530e6b36438c49280" - integrity sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A== - -"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14": - version "1.5.0" - resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz#3188bcb273a414b0d215fd22a58540b989b9409a" - integrity sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ== - -"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.18", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25": - version "0.3.25" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz#15f190e98895f3fc23276ee14bc76b675c2e50f0" - integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ== - dependencies: - "@jridgewell/resolve-uri" "^3.1.0" - "@jridgewell/sourcemap-codec" "^1.4.14" - -"@nodelib/fs.scandir@2.1.5": - 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" - -"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": - version "2.0.5" - resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz" - integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== - -"@nodelib/fs.walk@^1.2.3": - 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" - -"@pkgjs/parseargs@^0.11.0": - version "0.11.0" - resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" - integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== - -"@sinclair/typebox@^0.27.8": - version "0.27.8" - resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.27.8.tgz#6667fac16c436b5434a387a34dedb013198f6e6e" - integrity sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA== - -"@sinonjs/commons@^3.0.0": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-3.0.1.tgz#1029357e44ca901a615585f6d27738dbc89084cd" - integrity sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ== - dependencies: - type-detect "4.0.8" - -"@sinonjs/fake-timers@^10.0.2": - version "10.3.0" - resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz#55fdff1ecab9f354019129daf4df0dd4d923ea66" - integrity sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA== - dependencies: - "@sinonjs/commons" "^3.0.0" - -"@types/babel__core@^7.1.14": - version "7.20.5" - resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.5.tgz#3df15f27ba85319caa07ba08d0721889bb39c017" - integrity sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA== - dependencies: - "@babel/parser" "^7.20.7" - "@babel/types" "^7.20.7" - "@types/babel__generator" "*" - "@types/babel__template" "*" - "@types/babel__traverse" "*" - -"@types/babel__generator@*": - version "7.6.8" - resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.8.tgz#f836c61f48b1346e7d2b0d93c6dacc5b9535d3ab" - integrity sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw== - dependencies: - "@babel/types" "^7.0.0" - -"@types/babel__template@*": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.4.tgz#5672513701c1b2199bc6dad636a9d7491586766f" - integrity sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A== - dependencies: - "@babel/parser" "^7.1.0" - "@babel/types" "^7.0.0" - -"@types/babel__traverse@*", "@types/babel__traverse@^7.0.6": - version "7.20.6" - resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.20.6.tgz#8dc9f0ae0f202c08d8d4dab648912c8d6038e3f7" - integrity sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg== - dependencies: - "@babel/types" "^7.20.7" - -"@types/graceful-fs@^4.1.3": - version "4.1.9" - resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.9.tgz#2a06bc0f68a20ab37b3e36aa238be6abdf49e8b4" - integrity sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ== - dependencies: - "@types/node" "*" - -"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": - version "2.0.6" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz#7739c232a1fee9b4d3ce8985f314c0c6d33549d7" - integrity sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w== - -"@types/istanbul-lib-report@*": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz#53047614ae72e19fc0401d872de3ae2b4ce350bf" - integrity sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA== - dependencies: - "@types/istanbul-lib-coverage" "*" - -"@types/istanbul-reports@^3.0.0": - version "3.0.4" - resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz#0f03e3d2f670fbdac586e34b433783070cc16f54" - integrity sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ== - dependencies: - "@types/istanbul-lib-report" "*" - -"@types/jest@^27.0.1": - version "27.5.2" - resolved "https://registry.yarnpkg.com/@types/jest/-/jest-27.5.2.tgz#ec49d29d926500ffb9fd22b84262e862049c026c" - integrity sha512-mpT8LJJ4CMeeahobofYWIjFo0xonRS/HfxnVEPMPFSQdGUt1uHCnoPT7Zhb+sjDU2wz0oKV0OLUR0WzrHNgfeA== - dependencies: - jest-matcher-utils "^27.0.0" - pretty-format "^27.0.0" - -"@types/json-schema@^7.0.12": - version "7.0.15" - resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" - integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== - -"@types/json5@^0.0.29": - version "0.0.29" - resolved "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz" - integrity sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ== - -"@types/jsonwebtoken@^8.5.5": - version "8.5.9" - resolved "https://registry.yarnpkg.com/@types/jsonwebtoken/-/jsonwebtoken-8.5.9.tgz#2c064ecb0b3128d837d2764aa0b117b0ff6e4586" - integrity sha512-272FMnFGzAVMGtu9tkr29hRL6bZj4Zs1KZNeHLnKqAvp06tAIcarTMwOh8/8bz4FmKRcMxZhZNeUAQsNLoiPhg== - dependencies: - "@types/node" "*" - -"@types/node@*": - version "25.0.0" - resolved "https://registry.yarnpkg.com/@types/node/-/node-25.0.0.tgz#c0e0022c3c7b41635c49322e6b3a0279fffa7d62" - integrity sha512-rl78HwuZlaDIUSeUKkmogkhebA+8K1Hy7tddZuJ3D0xV8pZSfsYGTsliGUol1JPzu9EKnTxPC4L1fiWouStRew== - dependencies: - undici-types "~7.16.0" - -"@types/node@^16.7.13": - version "16.18.126" - resolved "https://registry.yarnpkg.com/@types/node/-/node-16.18.126.tgz#27875faa2926c0f475b39a8bb1e546c0176f8d4b" - integrity sha512-OTcgaiwfGFBKacvfwuHzzn1KLxH/er8mluiy8/uM3sGXHaRe73RrSIj01jow9t4kJEW633Ov+cOexXeiApTyAw== - -"@types/regenerator-runtime@^0.13.5": - version "0.13.5" - resolved "https://registry.npmjs.org/@types/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz" - integrity sha512-kuQTuRQB2RafkNk1qimK3zu4KSfy6z47diYGXVDcFcAZ3pVTR25CXiSb3adKry+onx2BBB9DBXxxLdbuglx5mw== - -"@types/semver@^7.5.0": - version "7.5.8" - resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.8.tgz#8268a8c57a3e4abd25c165ecd36237db7948a55e" - integrity sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ== - -"@types/stack-utils@^2.0.0": - version "2.0.3" - resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.3.tgz#6209321eb2c1712a7e7466422b8cb1fc0d9dd5d8" - integrity sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw== - -"@types/yargs-parser@*": - version "21.0.3" - resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.3.tgz#815e30b786d2e8f0dcd85fd5bcf5e1a04d008f15" - integrity sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ== - -"@types/yargs@^17.0.8": - version "17.0.33" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.33.tgz#8c32303da83eec050a84b3c7ae7b9f922d13e32d" - integrity sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA== - dependencies: - "@types/yargs-parser" "*" - -"@typescript-eslint/eslint-plugin@^6.20.0": - version "6.21.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz#30830c1ca81fd5f3c2714e524c4303e0194f9cd3" - integrity sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA== - dependencies: - "@eslint-community/regexpp" "^4.5.1" - "@typescript-eslint/scope-manager" "6.21.0" - "@typescript-eslint/type-utils" "6.21.0" - "@typescript-eslint/utils" "6.21.0" - "@typescript-eslint/visitor-keys" "6.21.0" - debug "^4.3.4" - graphemer "^1.4.0" - ignore "^5.2.4" - natural-compare "^1.4.0" - semver "^7.5.4" - ts-api-utils "^1.0.1" - -"@typescript-eslint/parser@^6.20.0": - version "6.21.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-6.21.0.tgz#af8fcf66feee2edc86bc5d1cf45e33b0630bf35b" - integrity sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ== - dependencies: - "@typescript-eslint/scope-manager" "6.21.0" - "@typescript-eslint/types" "6.21.0" - "@typescript-eslint/typescript-estree" "6.21.0" - "@typescript-eslint/visitor-keys" "6.21.0" - debug "^4.3.4" - -"@typescript-eslint/scope-manager@6.21.0": - version "6.21.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz#ea8a9bfc8f1504a6ac5d59a6df308d3a0630a2b1" - integrity sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg== - dependencies: - "@typescript-eslint/types" "6.21.0" - "@typescript-eslint/visitor-keys" "6.21.0" - -"@typescript-eslint/type-utils@6.21.0": - version "6.21.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-6.21.0.tgz#6473281cfed4dacabe8004e8521cee0bd9d4c01e" - integrity sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag== - dependencies: - "@typescript-eslint/typescript-estree" "6.21.0" - "@typescript-eslint/utils" "6.21.0" - debug "^4.3.4" - ts-api-utils "^1.0.1" - -"@typescript-eslint/types@6.21.0": - version "6.21.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-6.21.0.tgz#205724c5123a8fef7ecd195075fa6e85bac3436d" - integrity sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg== - -"@typescript-eslint/typescript-estree@6.21.0": - version "6.21.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz#c47ae7901db3b8bddc3ecd73daff2d0895688c46" - integrity sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ== - dependencies: - "@typescript-eslint/types" "6.21.0" - "@typescript-eslint/visitor-keys" "6.21.0" - debug "^4.3.4" - globby "^11.1.0" - is-glob "^4.0.3" - minimatch "9.0.3" - semver "^7.5.4" - ts-api-utils "^1.0.1" - -"@typescript-eslint/utils@6.21.0": - version "6.21.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-6.21.0.tgz#4714e7a6b39e773c1c8e97ec587f520840cd8134" - integrity sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ== - dependencies: - "@eslint-community/eslint-utils" "^4.4.0" - "@types/json-schema" "^7.0.12" - "@types/semver" "^7.5.0" - "@typescript-eslint/scope-manager" "6.21.0" - "@typescript-eslint/types" "6.21.0" - "@typescript-eslint/typescript-estree" "6.21.0" - semver "^7.5.4" - -"@typescript-eslint/visitor-keys@6.21.0": - version "6.21.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz#87a99d077aa507e20e238b11d56cc26ade45fe47" - integrity sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A== - dependencies: - "@typescript-eslint/types" "6.21.0" - eslint-visitor-keys "^3.4.1" - -acorn-jsx@^5.3.1: - version "5.3.1" - resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz" - integrity sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng== - -acorn@^8.7.0: - version "8.7.0" - resolved "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz" - integrity sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ== - -agent-base@^7.1.2: - version "7.1.4" - resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-7.1.4.tgz#e3cd76d4c548ee895d3c3fd8dc1f6c5b9032e7a8" - integrity sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ== - -ajv@^6.10.0, ajv@^6.12.4: - version "6.12.6" - resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz" - integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== - 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" - -ansi-escapes@^4.2.1: - version "4.3.2" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" - integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== - dependencies: - type-fest "^0.21.3" - -ansi-regex@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" - integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== - -ansi-regex@^6.0.1: - version "6.2.2" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.2.2.tgz#60216eea464d864597ce2832000738a0589650c1" - integrity sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg== - -ansi-styles@^4.0.0, ansi-styles@^4.1.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" - integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== - dependencies: - color-convert "^2.0.1" - -ansi-styles@^5.0.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" - integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== - -ansi-styles@^6.1.0: - version "6.2.3" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.3.tgz#c044d5dcc521a076413472597a1acb1f103c4041" - integrity sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg== - -anymatch@^3.0.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" - integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== - dependencies: - normalize-path "^3.0.0" - picomatch "^2.0.4" - -argparse@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz" - integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== - -array-buffer-byte-length@^1.0.0: - 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== - dependencies: - call-bind "^1.0.2" - is-array-buffer "^3.0.1" - -array-includes@^3.1.7: - version "3.1.7" - resolved "https://registry.npmjs.org/array-includes/-/array-includes-3.1.7.tgz" - integrity sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ== - dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - get-intrinsic "^1.2.1" - is-string "^1.0.7" - -array-union@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz" - integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== - -array.prototype.findlastindex@^1.2.3: - version "1.2.3" - resolved "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz" - integrity sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA== - dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - es-shim-unscopables "^1.0.0" - get-intrinsic "^1.2.1" - -array.prototype.flat@^1.3.2: - version "1.3.2" - resolved "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz" - integrity sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA== - dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - es-shim-unscopables "^1.0.0" - -array.prototype.flatmap@^1.3.2: - version "1.3.2" - resolved "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz" - integrity sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ== - dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - es-shim-unscopables "^1.0.0" - -arraybuffer.prototype.slice@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.2.tgz" - integrity sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw== - dependencies: - array-buffer-byte-length "^1.0.0" - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - get-intrinsic "^1.2.1" - is-array-buffer "^3.0.2" - is-shared-array-buffer "^1.0.2" - -async@^3.2.3: - version "3.2.6" - resolved "https://registry.yarnpkg.com/async/-/async-3.2.6.tgz#1b0728e14929d51b85b449b7f06e27c1145e38ce" - integrity sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA== - -asynckit@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" - integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== - -available-typed-arrays@^1.0.5: - version "1.0.5" - resolved "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz" - integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw== - -axios-mock-adapter@^1.21.5: - version "1.22.0" - resolved "https://registry.yarnpkg.com/axios-mock-adapter/-/axios-mock-adapter-1.22.0.tgz#0f3e6be0fc9b55baab06f2d49c0b71157e7c053d" - integrity sha512-dmI0KbkyAhntUR05YY96qg2H6gg0XMl2+qTW0xmYg6Up+BFBAJYRLROMXRdDEL06/Wqwa0TJThAYvFtSFdRCZw== - dependencies: - fast-deep-equal "^3.1.3" - is-buffer "^2.0.5" - -axios@^1.12.0, axios@^1.13.2: - version "1.13.2" - resolved "https://registry.yarnpkg.com/axios/-/axios-1.13.2.tgz#9ada120b7b5ab24509553ec3e40123521117f687" - integrity sha512-VPk9ebNqPcy5lRGuSlKx752IlDatOjT9paPlm8A7yOuW2Fbvp4X3JznJtT4f0GzGLLiWE9W8onz51SqLYwzGaA== - dependencies: - follow-redirects "^1.15.6" - form-data "^4.0.4" - proxy-from-env "^1.1.0" - -babel-jest@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-29.7.0.tgz#f4369919225b684c56085998ac63dbd05be020d5" - integrity sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg== - dependencies: - "@jest/transform" "^29.7.0" - "@types/babel__core" "^7.1.14" - babel-plugin-istanbul "^6.1.1" - babel-preset-jest "^29.6.3" - chalk "^4.0.0" - graceful-fs "^4.2.9" - slash "^3.0.0" - -babel-plugin-istanbul@^6.1.1: - version "6.1.1" - resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73" - integrity sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA== - 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" - -babel-plugin-jest-hoist@^29.6.3: - version "29.6.3" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz#aadbe943464182a8922c3c927c3067ff40d24626" - integrity sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg== - dependencies: - "@babel/template" "^7.3.3" - "@babel/types" "^7.3.3" - "@types/babel__core" "^7.1.14" - "@types/babel__traverse" "^7.0.6" - -babel-plugin-polyfill-corejs2@^0.4.10: - version "0.4.12" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.12.tgz#ca55bbec8ab0edeeef3d7b8ffd75322e210879a9" - integrity sha512-CPWT6BwvhrTO2d8QVorhTCQw9Y43zOu7G9HigcfxvepOU6b8o3tcWad6oVgZIsZCTt42FFv97aA7ZJsbM4+8og== - dependencies: - "@babel/compat-data" "^7.22.6" - "@babel/helper-define-polyfill-provider" "^0.6.3" - semver "^6.3.1" - -babel-plugin-polyfill-corejs3@^0.11.0: - version "0.11.1" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.11.1.tgz#4e4e182f1bb37c7ba62e2af81d8dd09df31344f6" - integrity sha512-yGCqvBT4rwMczo28xkH/noxJ6MZ4nJfkVYdoDaC/utLtWrXxv27HVrzAeSbqR8SxDsp46n0YF47EbHoixy6rXQ== - dependencies: - "@babel/helper-define-polyfill-provider" "^0.6.3" - core-js-compat "^3.40.0" - -babel-plugin-polyfill-regenerator@^0.6.1: - version "0.6.3" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.3.tgz#abeb1f3f1c762eace37587f42548b08b57789bc8" - integrity sha512-LiWSbl4CRSIa5x/JAU6jZiG9eit9w6mz+yVMFwDE83LAWvt0AfGBoZ7HS/mkhrKuh2ZlzfVZYKoLjXdqw6Yt7Q== - dependencies: - "@babel/helper-define-polyfill-provider" "^0.6.3" - -babel-preset-current-node-syntax@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.1.0.tgz#9a929eafece419612ef4ae4f60b1862ebad8ef30" - integrity sha512-ldYss8SbBlWva1bs28q78Ju5Zq1F+8BrqBZZ0VFhLBvhh6lCpC2o3gDJi/5DRLs9FgYZCnmPYIVFU4lRXCkyUw== - dependencies: - "@babel/plugin-syntax-async-generators" "^7.8.4" - "@babel/plugin-syntax-bigint" "^7.8.3" - "@babel/plugin-syntax-class-properties" "^7.12.13" - "@babel/plugin-syntax-class-static-block" "^7.14.5" - "@babel/plugin-syntax-import-attributes" "^7.24.7" - "@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-preset-jest@^29.6.3: - version "29.6.3" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz#fa05fa510e7d493896d7b0dd2033601c840f171c" - integrity sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA== - dependencies: - babel-plugin-jest-hoist "^29.6.3" - babel-preset-current-node-syntax "^1.0.0" - -balanced-match@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" - integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== - -base64-js@^1.3.0: - version "1.5.1" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" - integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== - -bignumber.js@^9.0.0: - version "9.3.1" - resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-9.3.1.tgz#759c5aaddf2ffdc4f154f7b493e1c8770f88c4d7" - integrity sha512-Ko0uX15oIUS7wJ3Rb30Fs6SkVbLmPBAKdlm7q9+ak9bbIeFf0MwuBsQV6z7+X768/cHsfg+WlysDWJcmthjsjQ== - -"blaise-iap-node-provider@git+https://github.com/ONSdigital/blaise-iap-node-provider.git#2.0.2": - version "2.0.2-4894" - resolved "git+https://github.com/ONSdigital/blaise-iap-node-provider.git#6b01fd961794c17fb2162c0520ab79878059c57c" - dependencies: - "@babel/preset-env" "^7.26.9" - "@types/jsonwebtoken" "^8.5.5" - axios "^1.13.2" - google-auth-library "^10.5.0" - jsonwebtoken "^9.0.3" - path-parse "^1.0.7" - -brace-expansion@^1.1.7, brace-expansion@^2.0.1, brace-expansion@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.2.tgz#54fc53237a613d854c7bd37463aad17df87214e7" - integrity sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ== - dependencies: - balanced-match "^1.0.0" - -braces@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" - integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA== - dependencies: - fill-range "^7.1.1" - -browserslist@^4.22.2: - version "4.22.2" - resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.22.2.tgz" - integrity sha512-0UgcrvQmBDvZHFGdYUehrCNIazki7/lUP3kkoi/r3YB2amZbFM9J43ZRkJTXBUZK4gmx56+Sqk9+Vs9mwZx9+A== - dependencies: - caniuse-lite "^1.0.30001565" - electron-to-chromium "^1.4.601" - node-releases "^2.0.14" - update-browserslist-db "^1.0.13" - -browserslist@^4.24.0, browserslist@^4.24.3: - version "4.24.4" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.24.4.tgz#c6b2865a3f08bcb860a0e827389003b9fe686e4b" - integrity sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A== - dependencies: - caniuse-lite "^1.0.30001688" - electron-to-chromium "^1.5.73" - node-releases "^2.0.19" - update-browserslist-db "^1.1.1" - -bs-logger@^0.2.6: - version "0.2.6" - resolved "https://registry.yarnpkg.com/bs-logger/-/bs-logger-0.2.6.tgz#eb7d365307a72cf974cc6cda76b68354ad336bd8" - integrity sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog== - dependencies: - fast-json-stable-stringify "2.x" - -bser@2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" - integrity sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ== - dependencies: - node-int64 "^0.4.0" - -buffer-equal-constant-time@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz#f8e71132f7ffe6e01a5c9697a4c6f3e48d5cc819" - integrity sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA== - -buffer-from@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" - integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== - -call-bind-apply-helpers@^1.0.0, call-bind-apply-helpers@^1.0.1, call-bind-apply-helpers@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz#4b5428c222be985d79c3d82657479dbe0b59b2d6" - integrity sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ== - dependencies: - es-errors "^1.3.0" - function-bind "^1.1.2" - -call-bind@^1.0.0: - version "1.0.8" - resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.8.tgz#0736a9660f537e3388826f440d5ec45f744eaa4c" - integrity sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww== - dependencies: - call-bind-apply-helpers "^1.0.0" - es-define-property "^1.0.0" - get-intrinsic "^1.2.4" - set-function-length "^1.2.2" - -call-bind@^1.0.2, call-bind@^1.0.4, call-bind@^1.0.5: - version "1.0.5" - resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.5.tgz" - integrity sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ== - dependencies: - function-bind "^1.1.2" - get-intrinsic "^1.2.1" - set-function-length "^1.1.1" - -callsites@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" - integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== - -camelcase@^5.3.1: - version "5.3.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" - integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== - -camelcase@^6.2.0: - version "6.3.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" - integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== - -caniuse-lite@^1.0.30001565: - version "1.0.30001574" - resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001574.tgz" - integrity sha512-BtYEK4r/iHt/txm81KBudCUcTy7t+s9emrIaHqjYurQ10x71zJ5VQ9x1dYPcz/b+pKSp4y/v1xSI67A+LzpNyg== - -caniuse-lite@^1.0.30001688: - version "1.0.30001701" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001701.tgz#ad9c90301f7153cf6b3314d16cc30757285bf9e7" - integrity sha512-faRs/AW3jA9nTwmJBSO1PQ6L/EOgsB5HMQQq4iCu5zhPgVVgO/pZRHlmatwijZKetFw8/Pr4q6dEN8sJuq8qTw== - -chalk@^4.0.0, chalk@^4.0.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" - integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - -char-regex@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" - integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== - -ci-info@^3.2.0: - version "3.9.0" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.9.0.tgz#4279a62028a7b1f262f3473fc9605f5e218c59b4" - integrity sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ== - -cjs-module-lexer@^1.0.0: - version "1.4.3" - resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.4.3.tgz#0f79731eb8cfe1ec72acd4066efac9d61991b00d" - integrity sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q== - -cliui@^8.0.1: - version "8.0.1" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-8.0.1.tgz#0c04b075db02cbfe60dc8e6cf2f5486b1a3608aa" - integrity sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ== - dependencies: - string-width "^4.2.0" - strip-ansi "^6.0.1" - wrap-ansi "^7.0.0" - -co@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" - integrity sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ== - -collect-v8-coverage@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz#c0b29bcd33bcd0779a1344c2136051e6afd3d9e9" - integrity sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q== - -color-convert@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" - integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== - dependencies: - color-name "~1.1.4" - -color-name@~1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" - integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== - -combined-stream@^1.0.8: - version "1.0.8" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" - integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== - dependencies: - delayed-stream "~1.0.0" - -confusing-browser-globals@^1.0.10: - version "1.0.11" - resolved "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz" - integrity sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA== - -convert-source-map@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" - integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== - -core-js-compat@^3.40.0: - version "3.40.0" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.40.0.tgz#7485912a5a4a4315c2fdb2cbdc623e6881c88b38" - integrity sha512-0XEDpr5y5mijvw8Lbc6E5AkjrHfp7eEoPlu36SWeAbcL8fn1G1ANe8DBlo2XoNN89oVpxWwOjYIPVzR4ZvsKCQ== - dependencies: - browserslist "^4.24.3" - -create-jest@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/create-jest/-/create-jest-29.7.0.tgz#a355c5b3cb1e1af02ba177fe7afd7feee49a5320" - integrity sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q== - dependencies: - "@jest/types" "^29.6.3" - chalk "^4.0.0" - exit "^0.1.2" - graceful-fs "^4.2.9" - jest-config "^29.7.0" - jest-util "^29.7.0" - prompts "^2.0.1" - -cross-spawn@^7.0.2, cross-spawn@^7.0.3, cross-spawn@^7.0.6: - version "7.0.6" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f" - integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA== - dependencies: - path-key "^3.1.0" - shebang-command "^2.0.0" - which "^2.0.1" - -data-uri-to-buffer@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz#d8feb2b2881e6a4f58c2e08acfd0e2834e26222e" - integrity sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A== - -debug@4: - version "4.4.3" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.3.tgz#c6ae432d9bd9662582fce08709b038c58e9e3d6a" - integrity sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA== - dependencies: - ms "^2.1.3" - -debug@^3.2.7: - version "3.2.7" - resolved "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz" - integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== - dependencies: - ms "^2.1.1" - -debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.4: - version "4.4.0" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.0.tgz#2b3f2aea2ffeb776477460267377dc8710faba8a" - integrity sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA== - dependencies: - ms "^2.1.3" - -debug@^4.3.2: - version "4.3.3" - resolved "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz" - integrity sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q== - dependencies: - ms "2.1.2" - -dedent@^1.0.0: - version "1.5.3" - resolved "https://registry.yarnpkg.com/dedent/-/dedent-1.5.3.tgz#99aee19eb9bae55a67327717b6e848d0bf777e5a" - integrity sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ== - -deep-is@^0.1.3: - version "0.1.3" - resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz" - integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= - -deepmerge@^4.2.2: - version "4.3.1" - resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.3.1.tgz#44b5f2147cd3b00d4b56137685966f26fd25dd4a" - integrity sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A== - -define-data-property@^1.0.1, define-data-property@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.1.tgz" - integrity sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ== - dependencies: - get-intrinsic "^1.2.1" - gopd "^1.0.1" - has-property-descriptors "^1.0.0" - -define-data-property@^1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e" - integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A== - dependencies: - es-define-property "^1.0.0" - es-errors "^1.3.0" - gopd "^1.0.1" - -define-properties@^1.1.3, define-properties@^1.2.0, define-properties@^1.2.1: - version "1.2.1" - resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz" - integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg== - dependencies: - define-data-property "^1.0.1" - has-property-descriptors "^1.0.0" - object-keys "^1.1.1" - -delayed-stream@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" - integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== - -detect-newline@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" - integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== - -diff-sequences@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.5.1.tgz#eaecc0d327fd68c8d9672a1e64ab8dccb2ef5327" - integrity sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ== - -diff-sequences@^29.6.3: - version "29.6.3" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.6.3.tgz#4deaf894d11407c51efc8418012f9e70b84ea921" - integrity sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q== - -dir-glob@^3.0.1: - version "3.0.1" - resolved "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz" - integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== - dependencies: - path-type "^4.0.0" - -doctrine@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz" - integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== - dependencies: - esutils "^2.0.2" - -doctrine@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz" - integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== - dependencies: - esutils "^2.0.2" - -dunder-proto@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/dunder-proto/-/dunder-proto-1.0.1.tgz#d7ae667e1dc83482f8b70fd0f6eefc50da30f58a" - integrity sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A== - dependencies: - call-bind-apply-helpers "^1.0.1" - es-errors "^1.3.0" - gopd "^1.2.0" - -eastasianwidth@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" - integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== - -ecdsa-sig-formatter@1.0.11, ecdsa-sig-formatter@^1.0.11: - version "1.0.11" - resolved "https://registry.yarnpkg.com/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz#ae0f0fa2d85045ef14a817daa3ce9acd0489e5bf" - integrity sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ== - dependencies: - safe-buffer "^5.0.1" - -ejs@^3.1.10: - version "3.1.10" - resolved "https://registry.yarnpkg.com/ejs/-/ejs-3.1.10.tgz#69ab8358b14e896f80cc39e62087b88500c3ac3b" - integrity sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA== - dependencies: - jake "^10.8.5" - -electron-to-chromium@^1.4.601: - version "1.4.620" - resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.620.tgz" - integrity sha512-a2fcSHOHrqBJsPNXtf6ZCEZpXrFCcbK1FBxfX3txoqWzNgtEDG1f3M59M98iwxhRW4iMKESnSjbJ310/rkrp0g== - -electron-to-chromium@^1.5.73: - version "1.5.107" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.107.tgz#0a12a0b50e6f925cde8bf9c16c13d514c54c694b" - integrity sha512-dJr1o6yCntRkXElnhsHh1bAV19bo/hKyFf7tCcWgpXbuFIF0Lakjgqv5LRfSDaNzAII8Fnxg2tqgHkgCvxdbxw== - -emittery@^0.13.1: - version "0.13.1" - resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.13.1.tgz#c04b8c3457490e0847ae51fced3af52d338e3dad" - integrity sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ== - -emoji-regex@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" - integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== - -emoji-regex@^9.2.2: - version "9.2.2" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" - integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== - -error-ex@^1.3.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" - integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== - dependencies: - is-arrayish "^0.2.1" - -es-abstract@^1.22.1: - version "1.22.3" - resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.3.tgz" - integrity sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA== - dependencies: - array-buffer-byte-length "^1.0.0" - arraybuffer.prototype.slice "^1.0.2" - available-typed-arrays "^1.0.5" - call-bind "^1.0.5" - es-set-tostringtag "^2.0.1" - es-to-primitive "^1.2.1" - function.prototype.name "^1.1.6" - get-intrinsic "^1.2.2" - get-symbol-description "^1.0.0" - globalthis "^1.0.3" - gopd "^1.0.1" - has-property-descriptors "^1.0.0" - has-proto "^1.0.1" - has-symbols "^1.0.3" - hasown "^2.0.0" - 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.12" - is-weakref "^1.0.2" - object-inspect "^1.13.1" - object-keys "^1.1.1" - object.assign "^4.1.4" - regexp.prototype.flags "^1.5.1" - safe-array-concat "^1.0.1" - safe-regex-test "^1.0.0" - string.prototype.trim "^1.2.8" - string.prototype.trimend "^1.0.7" - string.prototype.trimstart "^1.0.7" - 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.13" - -es-define-property@^1.0.0, es-define-property@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.1.tgz#983eb2f9a6724e9303f61addf011c72e09e0b0fa" - integrity sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g== - -es-errors@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" - integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== - -es-object-atoms@^1.0.0, es-object-atoms@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/es-object-atoms/-/es-object-atoms-1.1.1.tgz#1c4f2c4837327597ce69d2ca190a7fdd172338c1" - integrity sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA== - dependencies: - es-errors "^1.3.0" - -es-set-tostringtag@^2.0.1: - version "2.0.2" - resolved "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.2.tgz" - integrity sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q== - dependencies: - get-intrinsic "^1.2.2" - has-tostringtag "^1.0.0" - hasown "^2.0.0" - -es-set-tostringtag@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz#f31dbbe0c183b00a6d26eb6325c810c0fd18bd4d" - integrity sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA== - dependencies: - es-errors "^1.3.0" - get-intrinsic "^1.2.6" - has-tostringtag "^1.0.2" - hasown "^2.0.2" - -es-shim-unscopables@^1.0.0: - version "1.0.2" - resolved "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz" - integrity sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw== - dependencies: - hasown "^2.0.0" - -es-to-primitive@^1.2.1: - version "1.2.1" - resolved "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz" - integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== - dependencies: - is-callable "^1.1.4" - is-date-object "^1.0.1" - is-symbol "^1.0.2" - -escalade@^3.1.1, escalade@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5" - integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA== - -escape-string-regexp@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" - integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== - -escape-string-regexp@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz" - integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== - -eslint-config-airbnb-base@^15.0.0: - version "15.0.0" - resolved "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-15.0.0.tgz" - integrity sha512-xaX3z4ZZIcFLvh2oUNvcX5oEofXda7giYmuplVxoOg5A7EXJMrUyqRgR+mhDhPK8LZ4PttFOBvCYDbX3sUoUig== - dependencies: - confusing-browser-globals "^1.0.10" - object.assign "^4.1.2" - object.entries "^1.1.5" - semver "^6.3.0" - -eslint-import-resolver-node@^0.3.9: - version "0.3.9" - resolved "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz" - integrity sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g== - dependencies: - debug "^3.2.7" - is-core-module "^2.13.0" - resolve "^1.22.4" - -eslint-module-utils@^2.8.0: - version "2.8.0" - resolved "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz" - integrity sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw== - dependencies: - debug "^3.2.7" - -eslint-plugin-import@^2.29.1: - version "2.29.1" - resolved "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz" - integrity sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw== - dependencies: - array-includes "^3.1.7" - array.prototype.findlastindex "^1.2.3" - array.prototype.flat "^1.3.2" - array.prototype.flatmap "^1.3.2" - debug "^3.2.7" - doctrine "^2.1.0" - eslint-import-resolver-node "^0.3.9" - eslint-module-utils "^2.8.0" - hasown "^2.0.0" - is-core-module "^2.13.1" - is-glob "^4.0.3" - minimatch "^3.1.2" - object.fromentries "^2.0.7" - object.groupby "^1.0.1" - object.values "^1.1.7" - semver "^6.3.1" - tsconfig-paths "^3.15.0" - -eslint-scope@^7.1.0: - version "7.1.0" - resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.0.tgz" - integrity sha512-aWwkhnS0qAXqNOgKOK0dJ2nvzEbhEvpy8OlJ9kZ0FeZnA6zpjv1/Vei+puGFFX7zkPCkHHXb7IDX3A+7yPrRWg== - dependencies: - esrecurse "^4.3.0" - estraverse "^5.2.0" - -eslint-utils@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz" - integrity sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA== - dependencies: - eslint-visitor-keys "^2.0.0" - -eslint-visitor-keys@^2.0.0: - version "2.1.0" - resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz" - integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== - -eslint-visitor-keys@^3.1.0, eslint-visitor-keys@^3.2.0: - version "3.2.0" - resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.2.0.tgz" - integrity sha512-IOzT0X126zn7ALX0dwFiUQEdsfzrm4+ISsQS8nukaJXwEyYKRSnEIIDULYg1mCtGp7UUXgfGl7BIolXREQK+XQ== - -eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4.3: - version "3.4.3" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" - integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== - -eslint@^8.8.0: - version "8.8.0" - resolved "https://registry.npmjs.org/eslint/-/eslint-8.8.0.tgz" - integrity sha512-H3KXAzQGBH1plhYS3okDix2ZthuYJlQQEGE5k0IKuEqUSiyu4AmxxlJ2MtTYeJ3xB4jDhcYCwGOg2TXYdnDXlQ== - dependencies: - "@eslint/eslintrc" "^1.0.5" - "@humanwhocodes/config-array" "^0.9.2" - ajv "^6.10.0" - 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.1.0" - eslint-utils "^3.0.0" - eslint-visitor-keys "^3.2.0" - espree "^9.3.0" - esquery "^1.4.0" - esutils "^2.0.2" - fast-deep-equal "^3.1.3" - file-entry-cache "^6.0.1" - functional-red-black-tree "^1.0.1" - glob-parent "^6.0.1" - globals "^13.6.0" - ignore "^5.2.0" - import-fresh "^3.0.0" - imurmurhash "^0.1.4" - is-glob "^4.0.0" - js-yaml "^4.1.0" - json-stable-stringify-without-jsonify "^1.0.1" - levn "^0.4.1" - lodash.merge "^4.6.2" - minimatch "^3.0.4" - natural-compare "^1.4.0" - optionator "^0.9.1" - regexpp "^3.2.0" - strip-ansi "^6.0.1" - strip-json-comments "^3.1.0" - text-table "^0.2.0" - v8-compile-cache "^2.0.3" - -espree@^9.2.0, espree@^9.3.0: - version "9.3.0" - resolved "https://registry.npmjs.org/espree/-/espree-9.3.0.tgz" - integrity sha512-d/5nCsb0JcqsSEeQzFZ8DH1RmxPcglRWh24EFTlUEmCKoehXGdpsx0RkHDubqUI8LSAIKMQp4r9SzQ3n+sm4HQ== - dependencies: - acorn "^8.7.0" - acorn-jsx "^5.3.1" - eslint-visitor-keys "^3.1.0" - -esquery@^1.4.0: - version "1.4.0" - resolved "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz" - integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w== - dependencies: - estraverse "^5.1.0" - -esrecurse@^4.3.0: - version "4.3.0" - resolved "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz" - integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== - dependencies: - estraverse "^5.2.0" - -estraverse@^5.1.0, estraverse@^5.2.0: - version "5.2.0" - resolved "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz" - integrity sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ== - -esutils@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" - integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== - -execa@^5.0.0: - version "5.1.1" - resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" - integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== - 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" - -exit@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" - integrity sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ== - -expect@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/expect/-/expect-29.7.0.tgz#578874590dcb3214514084c08115d8aee61e11bc" - integrity sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw== - dependencies: - "@jest/expect-utils" "^29.7.0" - jest-get-type "^29.6.3" - jest-matcher-utils "^29.7.0" - jest-message-util "^29.7.0" - jest-util "^29.7.0" - -extend@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" - integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== - -fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: - 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== - -fast-glob@^3.2.9: - version "3.2.11" - resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz" - integrity sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew== - 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" - -fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" - integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== - -fast-levenshtein@^2.0.6: - version "2.0.6" - resolved "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz" - integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= - -fastq@^1.6.0: - version "1.13.0" - resolved "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz" - integrity sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw== - dependencies: - reusify "^1.0.4" - -fb-watchman@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.2.tgz#e9524ee6b5c77e9e5001af0f85f3adbb8623255c" - integrity sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA== - dependencies: - bser "2.1.1" - -fetch-blob@^3.1.2, fetch-blob@^3.1.4: - version "3.2.0" - resolved "https://registry.yarnpkg.com/fetch-blob/-/fetch-blob-3.2.0.tgz#f09b8d4bbd45adc6f0c20b7e787e793e309dcce9" - integrity sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ== - dependencies: - node-domexception "^1.0.0" - web-streams-polyfill "^3.0.3" - -file-entry-cache@^6.0.1: - version "6.0.1" - resolved "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz" - integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== - dependencies: - flat-cache "^3.0.4" - -filelist@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/filelist/-/filelist-1.0.4.tgz#f78978a1e944775ff9e62e744424f215e58352b5" - integrity sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q== - dependencies: - minimatch "^5.0.1" - -fill-range@^7.1.1: - version "7.1.1" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" - integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg== - dependencies: - to-regex-range "^5.0.1" - -find-up@^4.0.0, find-up@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" - integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== - dependencies: - locate-path "^5.0.0" - path-exists "^4.0.0" - -flat-cache@^3.0.4: - version "3.0.4" - resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz" - integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== - dependencies: - flatted "^3.1.0" - rimraf "^3.0.2" - -flatted@^3.1.0: - version "3.1.1" - resolved "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz" - integrity sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA== - -follow-redirects@^1.15.6: - version "1.15.11" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.11.tgz#777d73d72a92f8ec4d2e410eb47352a56b8e8340" - integrity sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ== - -for-each@^0.3.3: - version "0.3.3" - resolved "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz" - integrity sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw== - dependencies: - is-callable "^1.1.3" - -foreground-child@^3.1.0: - version "3.3.1" - resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-3.3.1.tgz#32e8e9ed1b68a3497befb9ac2b6adf92a638576f" - integrity sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw== - dependencies: - cross-spawn "^7.0.6" - signal-exit "^4.0.1" - -form-data@^4.0.4: - version "4.0.5" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.5.tgz#b49e48858045ff4cbf6b03e1805cebcad3679053" - integrity sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w== - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.8" - es-set-tostringtag "^2.1.0" - hasown "^2.0.2" - mime-types "^2.1.12" - -formdata-polyfill@^4.0.10: - version "4.0.10" - resolved "https://registry.yarnpkg.com/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz#24807c31c9d402e002ab3d8c720144ceb8848423" - integrity sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g== - dependencies: - fetch-blob "^3.1.2" - -fs.realpath@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== - -fsevents@^2.3.2: - version "2.3.3" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" - integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== - -function-bind@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" - integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== - -function.prototype.name@^1.1.6: - version "1.1.6" - resolved "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz" - integrity sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg== - dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - functions-have-names "^1.2.3" - -functional-red-black-tree@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz" - integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= - -functions-have-names@^1.2.3: - version "1.2.3" - resolved "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz" - integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== - -gaxios@^7.0.0: - version "7.1.3" - resolved "https://registry.yarnpkg.com/gaxios/-/gaxios-7.1.3.tgz#c5312f4254abc1b8ab53aef30c22c5229b80b1e1" - integrity sha512-YGGyuEdVIjqxkxVH1pUTMY/XtmmsApXrCVv5EU25iX6inEPbV+VakJfLealkBtJN69AQmh1eGOdCl9Sm1UP6XQ== - dependencies: - extend "^3.0.2" - https-proxy-agent "^7.0.1" - node-fetch "^3.3.2" - rimraf "^5.0.1" - -gcp-metadata@^8.0.0: - version "8.1.2" - resolved "https://registry.yarnpkg.com/gcp-metadata/-/gcp-metadata-8.1.2.tgz#e62e3373ddf41fc727ccc31c55c687b798bee898" - integrity sha512-zV/5HKTfCeKWnxG0Dmrw51hEWFGfcF2xiXqcA3+J90WDuP0SvoiSO5ORvcBsifmx/FoIjgQN3oNOGaQ5PhLFkg== - dependencies: - gaxios "^7.0.0" - google-logging-utils "^1.0.0" - json-bigint "^1.0.0" - -gensync@^1.0.0-beta.2: - version "1.0.0-beta.2" - resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" - integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== - -get-caller-file@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" - integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== - -get-intrinsic@^1.0.2, get-intrinsic@^1.2.4, get-intrinsic@^1.2.6: - version "1.3.0" - resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.3.0.tgz#743f0e3b6964a93a5491ed1bffaae054d7f98d01" - integrity sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ== - dependencies: - call-bind-apply-helpers "^1.0.2" - es-define-property "^1.0.1" - es-errors "^1.3.0" - es-object-atoms "^1.1.1" - function-bind "^1.1.2" - get-proto "^1.0.1" - gopd "^1.2.0" - has-symbols "^1.1.0" - hasown "^2.0.2" - math-intrinsics "^1.1.0" - -get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.0, get-intrinsic@^1.2.1, get-intrinsic@^1.2.2: - version "1.2.2" - resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.2.tgz" - integrity sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA== - dependencies: - function-bind "^1.1.2" - has-proto "^1.0.1" - has-symbols "^1.0.3" - hasown "^2.0.0" - -get-package-type@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" - integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q== - -get-proto@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/get-proto/-/get-proto-1.0.1.tgz#150b3f2743869ef3e851ec0c49d15b1d14d00ee1" - integrity sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g== - dependencies: - dunder-proto "^1.0.1" - es-object-atoms "^1.0.0" - -get-stream@^6.0.0: - version "6.0.1" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" - integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== - -get-symbol-description@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz" - integrity sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw== - dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.1.1" - -glob-parent@^5.1.2: - 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" - -glob-parent@^6.0.1: - 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" - -glob@^10.3.7: - version "10.5.0" - resolved "https://registry.yarnpkg.com/glob/-/glob-10.5.0.tgz#8ec0355919cd3338c28428a23d4f24ecc5fe738c" - integrity sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg== - dependencies: - foreground-child "^3.1.0" - jackspeak "^3.1.2" - minimatch "^9.0.4" - minipass "^7.1.2" - package-json-from-dist "^1.0.0" - path-scurry "^1.11.1" - -glob@^7.1.3, glob@^7.1.4: - version "7.2.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" - integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== - 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" - -globals@^11.1.0: - version "11.12.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" - integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== - -globals@^13.6.0, globals@^13.9.0: - version "13.9.0" - resolved "https://registry.npmjs.org/globals/-/globals-13.9.0.tgz" - integrity sha512-74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA== - dependencies: - type-fest "^0.20.2" - -globalthis@^1.0.3: - version "1.0.3" - resolved "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz" - integrity sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA== - dependencies: - define-properties "^1.1.3" - -globby@^11.1.0: - version "11.1.0" - resolved "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz" - integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== - dependencies: - array-union "^2.1.0" - dir-glob "^3.0.1" - fast-glob "^3.2.9" - ignore "^5.2.0" - merge2 "^1.4.1" - slash "^3.0.0" - -google-auth-library@^10.5.0: - version "10.5.0" - resolved "https://registry.yarnpkg.com/google-auth-library/-/google-auth-library-10.5.0.tgz#3f0ebd47173496b91d2868f572bb8a8180c4b561" - integrity sha512-7ABviyMOlX5hIVD60YOfHw4/CxOfBhyduaYB+wbFWCWoni4N7SLcV46hrVRktuBbZjFC9ONyqamZITN7q3n32w== - dependencies: - base64-js "^1.3.0" - ecdsa-sig-formatter "^1.0.11" - gaxios "^7.0.0" - gcp-metadata "^8.0.0" - google-logging-utils "^1.0.0" - gtoken "^8.0.0" - jws "^4.0.0" - -google-logging-utils@^1.0.0: - version "1.1.3" - resolved "https://registry.yarnpkg.com/google-logging-utils/-/google-logging-utils-1.1.3.tgz#17b71f1f95d266d2ddd356b8f00178433f041b17" - integrity sha512-eAmLkjDjAFCVXg7A1unxHsLf961m6y17QFqXqAXGj/gVkKFrEICfStRfwUlGNfeCEjNRa32JEWOUTlYXPyyKvA== - -gopd@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz" - integrity sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA== - dependencies: - get-intrinsic "^1.1.3" - -gopd@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.2.0.tgz#89f56b8217bdbc8802bd299df6d7f1081d7e51a1" - integrity sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg== - -graceful-fs@^4.2.9: - version "4.2.11" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" - integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== - -graphemer@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/graphemer/-/graphemer-1.4.0.tgz#fb2f1d55e0e3a1849aeffc90c4fa0dd53a0e66c6" - integrity sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag== - -gtoken@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/gtoken/-/gtoken-8.0.0.tgz#d67a0e346dd441bfb54ad14040ddc3b632886575" - integrity sha512-+CqsMbHPiSTdtSO14O51eMNlrp9N79gmeqmXeouJOhfucAedHw9noVe/n5uJk3tbKE6a+6ZCQg3RPhVhHByAIw== - dependencies: - gaxios "^7.0.0" - jws "^4.0.0" - -has-bigints@^1.0.1, has-bigints@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz" - integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ== - -has-flag@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" - integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== - -has-property-descriptors@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz" - integrity sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg== - dependencies: - get-intrinsic "^1.2.2" - -has-property-descriptors@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854" - integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg== - dependencies: - es-define-property "^1.0.0" - -has-proto@^1.0.1: - 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== - -has-symbols@^1.0.2: - version "1.0.3" - resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz" - integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== - -has-symbols@^1.0.3, has-symbols@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.1.0.tgz#fc9c6a783a084951d0b971fe1018de813707a338" - integrity sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ== - -has-tostringtag@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz" - integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ== - dependencies: - has-symbols "^1.0.2" - -has-tostringtag@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz#2cdc42d40bef2e5b4eeab7c01a73c54ce7ab5abc" - integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw== - dependencies: - has-symbols "^1.0.3" - -hasown@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz" - integrity sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA== - dependencies: - function-bind "^1.1.2" - -hasown@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" - integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== - dependencies: - function-bind "^1.1.2" - -html-escaper@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" - integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== - -https-proxy-agent@^7.0.1: - version "7.0.6" - resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz#da8dfeac7da130b05c2ba4b59c9b6cd66611a6b9" - integrity sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw== - dependencies: - agent-base "^7.1.2" - debug "4" - -human-signals@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" - integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== - -ignore@^4.0.6: - version "4.0.6" - resolved "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz" - integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== - -ignore@^5.2.0: - version "5.2.0" - resolved "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz" - integrity sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ== - -ignore@^5.2.4: - version "5.3.2" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.2.tgz#3cd40e729f3643fd87cb04e50bf0eb722bc596f5" - integrity sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g== - -import-fresh@^3.0.0, import-fresh@^3.2.1: - version "3.3.0" - resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz" - integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== - dependencies: - parent-module "^1.0.0" - resolve-from "^4.0.0" - -import-local@^3.0.2: - version "3.2.0" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.2.0.tgz#c3d5c745798c02a6f8b897726aba5100186ee260" - integrity sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA== - dependencies: - pkg-dir "^4.2.0" - resolve-cwd "^3.0.0" - -imurmurhash@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" - integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== - -inflight@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== - dependencies: - once "^1.3.0" - wrappy "1" - -inherits@2: - version "2.0.4" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" - integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== - -internal-slot@^1.0.5: - version "1.0.6" - resolved "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.6.tgz" - integrity sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg== - dependencies: - get-intrinsic "^1.2.2" - hasown "^2.0.0" - side-channel "^1.0.4" - -is-array-buffer@^3.0.1, is-array-buffer@^3.0.2: - 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== - dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.2.0" - is-typed-array "^1.1.10" - -is-arrayish@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" - integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== - -is-bigint@^1.0.1: - version "1.0.4" - resolved "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz" - integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg== - dependencies: - has-bigints "^1.0.1" - -is-boolean-object@^1.1.0: - version "1.1.2" - resolved "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz" - integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA== - dependencies: - call-bind "^1.0.2" - has-tostringtag "^1.0.0" - -is-buffer@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.5.tgz#ebc252e400d22ff8d77fa09888821a24a658c191" - integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ== - -is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: - version "1.2.7" - resolved "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz" - integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== - -is-core-module@^2.13.0, is-core-module@^2.13.1: - version "2.13.1" - resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz" - integrity sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw== - dependencies: - hasown "^2.0.0" - -is-core-module@^2.16.0: - version "2.16.1" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.16.1.tgz#2a98801a849f43e2add644fbb6bc6229b19a4ef4" - integrity sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w== - dependencies: - hasown "^2.0.2" - -is-date-object@^1.0.1: - version "1.0.5" - resolved "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz" - integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ== - dependencies: - has-tostringtag "^1.0.0" - -is-extglob@^2.1.1: - version "2.1.1" - resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" - integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= - -is-fullwidth-code-point@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" - integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== - -is-generator-fn@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" - integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== - -is-glob@^4.0.0: - version "4.0.1" - resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz" - integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== - dependencies: - is-extglob "^2.1.1" - -is-glob@^4.0.1, is-glob@^4.0.3: - 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" - -is-negative-zero@^2.0.2: - version "2.0.2" - resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz" - integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA== - -is-number-object@^1.0.4: - version "1.0.7" - resolved "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz" - integrity sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ== - dependencies: - has-tostringtag "^1.0.0" - -is-number@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" - integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== - -is-regex@^1.1.4: - version "1.1.4" - resolved "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz" - integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg== - dependencies: - call-bind "^1.0.2" - has-tostringtag "^1.0.0" - -is-shared-array-buffer@^1.0.2: - 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== - dependencies: - call-bind "^1.0.2" - -is-stream@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" - integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== - -is-string@^1.0.5, is-string@^1.0.7: - version "1.0.7" - resolved "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz" - integrity sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg== - dependencies: - has-tostringtag "^1.0.0" - -is-symbol@^1.0.2, is-symbol@^1.0.3: - version "1.0.4" - resolved "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz" - integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg== - dependencies: - has-symbols "^1.0.2" - -is-typed-array@^1.1.10, is-typed-array@^1.1.12, is-typed-array@^1.1.9: - 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== - dependencies: - which-typed-array "^1.1.11" - -is-weakref@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz" - integrity sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ== - dependencies: - call-bind "^1.0.2" - -isarray@^2.0.5: - version "2.0.5" - resolved "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz" - integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== - -isexe@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== - -istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: - version "3.2.2" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz#2d166c4b0644d43a39f04bf6c2edd1e585f31756" - integrity sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg== - -istanbul-lib-instrument@^5.0.4: - version "5.2.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz#d10c8885c2125574e1c231cacadf955675e1ce3d" - integrity sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg== - 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" - -istanbul-lib-instrument@^6.0.0: - version "6.0.3" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz#fa15401df6c15874bcb2105f773325d78c666765" - integrity sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q== - dependencies: - "@babel/core" "^7.23.9" - "@babel/parser" "^7.23.9" - "@istanbuljs/schema" "^0.1.3" - istanbul-lib-coverage "^3.2.0" - semver "^7.5.4" - -istanbul-lib-report@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz#908305bac9a5bd175ac6a74489eafd0fc2445a7d" - integrity sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw== - dependencies: - istanbul-lib-coverage "^3.0.0" - make-dir "^4.0.0" - supports-color "^7.1.0" - -istanbul-lib-source-maps@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz#895f3a709fcfba34c6de5a42939022f3e4358551" - integrity sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw== - dependencies: - debug "^4.1.1" - istanbul-lib-coverage "^3.0.0" - source-map "^0.6.1" - -istanbul-reports@^3.1.3: - version "3.1.7" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.7.tgz#daed12b9e1dca518e15c056e1e537e741280fa0b" - integrity sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g== - dependencies: - html-escaper "^2.0.0" - istanbul-lib-report "^3.0.0" - -jackspeak@^3.1.2: - version "3.4.3" - resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-3.4.3.tgz#8833a9d89ab4acde6188942bd1c53b6390ed5a8a" - integrity sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw== - dependencies: - "@isaacs/cliui" "^8.0.2" - optionalDependencies: - "@pkgjs/parseargs" "^0.11.0" - -jake@^10.8.5: - version "10.9.2" - resolved "https://registry.yarnpkg.com/jake/-/jake-10.9.2.tgz#6ae487e6a69afec3a5e167628996b59f35ae2b7f" - integrity sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA== - dependencies: - async "^3.2.3" - chalk "^4.0.2" - filelist "^1.0.4" - minimatch "^3.1.2" - -jest-changed-files@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-29.7.0.tgz#1c06d07e77c78e1585d020424dedc10d6e17ac3a" - integrity sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w== - dependencies: - execa "^5.0.0" - jest-util "^29.7.0" - p-limit "^3.1.0" - -jest-circus@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-29.7.0.tgz#b6817a45fcc835d8b16d5962d0c026473ee3668a" - integrity sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw== - dependencies: - "@jest/environment" "^29.7.0" - "@jest/expect" "^29.7.0" - "@jest/test-result" "^29.7.0" - "@jest/types" "^29.6.3" - "@types/node" "*" - chalk "^4.0.0" - co "^4.6.0" - dedent "^1.0.0" - is-generator-fn "^2.0.0" - jest-each "^29.7.0" - jest-matcher-utils "^29.7.0" - jest-message-util "^29.7.0" - jest-runtime "^29.7.0" - jest-snapshot "^29.7.0" - jest-util "^29.7.0" - p-limit "^3.1.0" - pretty-format "^29.7.0" - pure-rand "^6.0.0" - slash "^3.0.0" - stack-utils "^2.0.3" - -jest-cli@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-29.7.0.tgz#5592c940798e0cae677eec169264f2d839a37995" - integrity sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg== - dependencies: - "@jest/core" "^29.7.0" - "@jest/test-result" "^29.7.0" - "@jest/types" "^29.6.3" - chalk "^4.0.0" - create-jest "^29.7.0" - exit "^0.1.2" - import-local "^3.0.2" - jest-config "^29.7.0" - jest-util "^29.7.0" - jest-validate "^29.7.0" - yargs "^17.3.1" - -jest-config@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-29.7.0.tgz#bcbda8806dbcc01b1e316a46bb74085a84b0245f" - integrity sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ== - dependencies: - "@babel/core" "^7.11.6" - "@jest/test-sequencer" "^29.7.0" - "@jest/types" "^29.6.3" - babel-jest "^29.7.0" - 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.7.0" - jest-environment-node "^29.7.0" - jest-get-type "^29.6.3" - jest-regex-util "^29.6.3" - jest-resolve "^29.7.0" - jest-runner "^29.7.0" - jest-util "^29.7.0" - jest-validate "^29.7.0" - micromatch "^4.0.4" - parse-json "^5.2.0" - pretty-format "^29.7.0" - slash "^3.0.0" - strip-json-comments "^3.1.1" - -jest-diff@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.5.1.tgz#a07f5011ac9e6643cf8a95a462b7b1ecf6680def" - integrity sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw== - dependencies: - chalk "^4.0.0" - diff-sequences "^27.5.1" - jest-get-type "^27.5.1" - pretty-format "^27.5.1" - -jest-diff@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-29.7.0.tgz#017934a66ebb7ecf6f205e84699be10afd70458a" - integrity sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw== - dependencies: - chalk "^4.0.0" - diff-sequences "^29.6.3" - jest-get-type "^29.6.3" - pretty-format "^29.7.0" - -jest-docblock@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-29.7.0.tgz#8fddb6adc3cdc955c93e2a87f61cfd350d5d119a" - integrity sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g== - dependencies: - detect-newline "^3.0.0" - -jest-each@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-29.7.0.tgz#162a9b3f2328bdd991beaabffbb74745e56577d1" - integrity sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ== - dependencies: - "@jest/types" "^29.6.3" - chalk "^4.0.0" - jest-get-type "^29.6.3" - jest-util "^29.7.0" - pretty-format "^29.7.0" - -jest-environment-node@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-29.7.0.tgz#0b93e111dda8ec120bc8300e6d1fb9576e164376" - integrity sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw== - dependencies: - "@jest/environment" "^29.7.0" - "@jest/fake-timers" "^29.7.0" - "@jest/types" "^29.6.3" - "@types/node" "*" - jest-mock "^29.7.0" - jest-util "^29.7.0" - -jest-get-type@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.5.1.tgz#3cd613c507b0f7ace013df407a1c1cd578bcb4f1" - integrity sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw== - -jest-get-type@^29.6.3: - version "29.6.3" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-29.6.3.tgz#36f499fdcea197c1045a127319c0481723908fd1" - integrity sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw== - -jest-haste-map@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-29.7.0.tgz#3c2396524482f5a0506376e6c858c3bbcc17b104" - integrity sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA== - dependencies: - "@jest/types" "^29.6.3" - "@types/graceful-fs" "^4.1.3" - "@types/node" "*" - anymatch "^3.0.3" - fb-watchman "^2.0.0" - graceful-fs "^4.2.9" - jest-regex-util "^29.6.3" - jest-util "^29.7.0" - jest-worker "^29.7.0" - micromatch "^4.0.4" - walker "^1.0.8" - optionalDependencies: - fsevents "^2.3.2" - -jest-leak-detector@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz#5b7ec0dadfdfec0ca383dc9aa016d36b5ea4c728" - integrity sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw== - dependencies: - jest-get-type "^29.6.3" - pretty-format "^29.7.0" - -jest-matcher-utils@^27.0.0: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz#9c0cdbda8245bc22d2331729d1091308b40cf8ab" - integrity sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw== - dependencies: - chalk "^4.0.0" - jest-diff "^27.5.1" - jest-get-type "^27.5.1" - pretty-format "^27.5.1" - -jest-matcher-utils@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz#ae8fec79ff249fd592ce80e3ee474e83a6c44f12" - integrity sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g== - dependencies: - chalk "^4.0.0" - jest-diff "^29.7.0" - jest-get-type "^29.6.3" - pretty-format "^29.7.0" - -jest-message-util@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-29.7.0.tgz#8bc392e204e95dfe7564abbe72a404e28e51f7f3" - integrity sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w== - dependencies: - "@babel/code-frame" "^7.12.13" - "@jest/types" "^29.6.3" - "@types/stack-utils" "^2.0.0" - chalk "^4.0.0" - graceful-fs "^4.2.9" - micromatch "^4.0.4" - pretty-format "^29.7.0" - slash "^3.0.0" - stack-utils "^2.0.3" - -jest-mock@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-29.7.0.tgz#4e836cf60e99c6fcfabe9f99d017f3fdd50a6347" - integrity sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw== - dependencies: - "@jest/types" "^29.6.3" - "@types/node" "*" - jest-util "^29.7.0" - -jest-pnp-resolver@^1.2.2: - version "1.2.3" - resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz#930b1546164d4ad5937d5540e711d4d38d4cad2e" - integrity sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w== - -jest-regex-util@^29.6.3: - version "29.6.3" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-29.6.3.tgz#4a556d9c776af68e1c5f48194f4d0327d24e8a52" - integrity sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg== - -jest-resolve-dependencies@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz#1b04f2c095f37fc776ff40803dc92921b1e88428" - integrity sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA== - dependencies: - jest-regex-util "^29.6.3" - jest-snapshot "^29.7.0" - -jest-resolve@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-29.7.0.tgz#64d6a8992dd26f635ab0c01e5eef4399c6bcbc30" - integrity sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA== - dependencies: - chalk "^4.0.0" - graceful-fs "^4.2.9" - jest-haste-map "^29.7.0" - jest-pnp-resolver "^1.2.2" - jest-util "^29.7.0" - jest-validate "^29.7.0" - resolve "^1.20.0" - resolve.exports "^2.0.0" - slash "^3.0.0" - -jest-runner@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-29.7.0.tgz#809af072d408a53dcfd2e849a4c976d3132f718e" - integrity sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ== - dependencies: - "@jest/console" "^29.7.0" - "@jest/environment" "^29.7.0" - "@jest/test-result" "^29.7.0" - "@jest/transform" "^29.7.0" - "@jest/types" "^29.6.3" - "@types/node" "*" - chalk "^4.0.0" - emittery "^0.13.1" - graceful-fs "^4.2.9" - jest-docblock "^29.7.0" - jest-environment-node "^29.7.0" - jest-haste-map "^29.7.0" - jest-leak-detector "^29.7.0" - jest-message-util "^29.7.0" - jest-resolve "^29.7.0" - jest-runtime "^29.7.0" - jest-util "^29.7.0" - jest-watcher "^29.7.0" - jest-worker "^29.7.0" - p-limit "^3.1.0" - source-map-support "0.5.13" - -jest-runtime@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-29.7.0.tgz#efecb3141cf7d3767a3a0cc8f7c9990587d3d817" - integrity sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ== - dependencies: - "@jest/environment" "^29.7.0" - "@jest/fake-timers" "^29.7.0" - "@jest/globals" "^29.7.0" - "@jest/source-map" "^29.6.3" - "@jest/test-result" "^29.7.0" - "@jest/transform" "^29.7.0" - "@jest/types" "^29.6.3" - "@types/node" "*" - chalk "^4.0.0" - cjs-module-lexer "^1.0.0" - collect-v8-coverage "^1.0.0" - glob "^7.1.3" - graceful-fs "^4.2.9" - jest-haste-map "^29.7.0" - jest-message-util "^29.7.0" - jest-mock "^29.7.0" - jest-regex-util "^29.6.3" - jest-resolve "^29.7.0" - jest-snapshot "^29.7.0" - jest-util "^29.7.0" - slash "^3.0.0" - strip-bom "^4.0.0" - -jest-snapshot@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-29.7.0.tgz#c2c574c3f51865da1bb329036778a69bf88a6be5" - integrity sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw== - 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.7.0" - "@jest/transform" "^29.7.0" - "@jest/types" "^29.6.3" - babel-preset-current-node-syntax "^1.0.0" - chalk "^4.0.0" - expect "^29.7.0" - graceful-fs "^4.2.9" - jest-diff "^29.7.0" - jest-get-type "^29.6.3" - jest-matcher-utils "^29.7.0" - jest-message-util "^29.7.0" - jest-util "^29.7.0" - natural-compare "^1.4.0" - pretty-format "^29.7.0" - semver "^7.5.3" - -jest-util@^29.0.0, jest-util@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.7.0.tgz#23c2b62bfb22be82b44de98055802ff3710fc0bc" - integrity sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA== - dependencies: - "@jest/types" "^29.6.3" - "@types/node" "*" - chalk "^4.0.0" - ci-info "^3.2.0" - graceful-fs "^4.2.9" - picomatch "^2.2.3" - -jest-validate@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-29.7.0.tgz#7bf705511c64da591d46b15fce41400d52147d9c" - integrity sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw== - dependencies: - "@jest/types" "^29.6.3" - camelcase "^6.2.0" - chalk "^4.0.0" - jest-get-type "^29.6.3" - leven "^3.1.0" - pretty-format "^29.7.0" - -jest-watcher@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-29.7.0.tgz#7810d30d619c3a62093223ce6bb359ca1b28a2f2" - integrity sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g== - dependencies: - "@jest/test-result" "^29.7.0" - "@jest/types" "^29.6.3" - "@types/node" "*" - ansi-escapes "^4.2.1" - chalk "^4.0.0" - emittery "^0.13.1" - jest-util "^29.7.0" - string-length "^4.0.1" - -jest-worker@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-29.7.0.tgz#acad073acbbaeb7262bd5389e1bcf43e10058d4a" - integrity sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw== - dependencies: - "@types/node" "*" - jest-util "^29.7.0" - merge-stream "^2.0.0" - supports-color "^8.0.0" - -jest@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest/-/jest-29.7.0.tgz#994676fc24177f088f1c5e3737f5697204ff2613" - integrity sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw== - dependencies: - "@jest/core" "^29.7.0" - "@jest/types" "^29.6.3" - import-local "^3.0.2" - jest-cli "^29.7.0" - -js-tokens@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" - integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== - -js-yaml@^3.13.1, js-yaml@^4.1.0, js-yaml@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.1.tgz#854c292467705b699476e1a2decc0c8a3458806b" - integrity sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA== - dependencies: - argparse "^2.0.1" - -jsesc@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-3.1.0.tgz#74d335a234f67ed19907fdadfac7ccf9d409825d" - integrity sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA== - -jsesc@~3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-3.0.2.tgz#bb8b09a6597ba426425f2e4a07245c3d00b9343e" - integrity sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g== - -json-bigint@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/json-bigint/-/json-bigint-1.0.0.tgz#ae547823ac0cad8398667f8cd9ef4730f5b01ff1" - integrity sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ== - dependencies: - bignumber.js "^9.0.0" - -json-parse-even-better-errors@^2.3.0: - version "2.3.1" - resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" - integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== - -json-schema-traverse@^0.4.1: - 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== - -json-stable-stringify-without-jsonify@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz" - integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= - -json5@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz" - integrity sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA== - dependencies: - minimist "^1.2.0" - -json5@^2.2.3: - version "2.2.3" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" - integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== - -jsonwebtoken@^9.0.3: - version "9.0.3" - resolved "https://registry.yarnpkg.com/jsonwebtoken/-/jsonwebtoken-9.0.3.tgz#6cd57ab01e9b0ac07cb847d53d3c9b6ee31f7ae2" - integrity sha512-MT/xP0CrubFRNLNKvxJ2BYfy53Zkm++5bX9dtuPbqAeQpTVe0MQTFhao8+Cp//EmJp244xt6Drw/GVEGCUj40g== - dependencies: - jws "^4.0.1" - lodash.includes "^4.3.0" - lodash.isboolean "^3.0.3" - lodash.isinteger "^4.0.4" - lodash.isnumber "^3.0.3" - lodash.isplainobject "^4.0.6" - lodash.isstring "^4.0.1" - lodash.once "^4.0.0" - ms "^2.1.1" - semver "^7.5.4" - -jwa@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/jwa/-/jwa-2.0.1.tgz#bf8176d1ad0cd72e0f3f58338595a13e110bc804" - integrity sha512-hRF04fqJIP8Abbkq5NKGN0Bbr3JxlQ+qhZufXVr0DvujKy93ZCbXZMHDL4EOtodSbCWxOqR8MS1tXA5hwqCXDg== - dependencies: - buffer-equal-constant-time "^1.0.1" - ecdsa-sig-formatter "1.0.11" - safe-buffer "^5.0.1" - -jws@^4.0.0, jws@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/jws/-/jws-4.0.1.tgz#07edc1be8fac20e677b283ece261498bd38f0690" - integrity sha512-EKI/M/yqPncGUUh44xz0PxSidXFr/+r0pA70+gIYhjv+et7yxM+s29Y+VGDkovRofQem0fs7Uvf4+YmAdyRduA== - dependencies: - jwa "^2.0.1" - safe-buffer "^5.0.1" - -kleur@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" - integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== - -leven@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" - integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== - -levn@^0.4.1: - version "0.4.1" - resolved "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz" - integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== - dependencies: - prelude-ls "^1.2.1" - type-check "~0.4.0" - -lines-and-columns@^1.1.6: - version "1.2.4" - resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" - integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== - -locate-path@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" - integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== - dependencies: - p-locate "^4.1.0" - -lodash.debounce@^4.0.8: - version "4.0.8" - resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" - integrity sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow== - -lodash.includes@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/lodash.includes/-/lodash.includes-4.3.0.tgz#60bb98a87cb923c68ca1e51325483314849f553f" - integrity sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w== - -lodash.isboolean@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz#6c2e171db2a257cd96802fd43b01b20d5f5870f6" - integrity sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg== - -lodash.isinteger@^4.0.4: - version "4.0.4" - resolved "https://registry.yarnpkg.com/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz#619c0af3d03f8b04c31f5882840b77b11cd68343" - integrity sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA== - -lodash.isnumber@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz#3ce76810c5928d03352301ac287317f11c0b1ffc" - integrity sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw== - -lodash.isplainobject@^4.0.6: - version "4.0.6" - resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" - integrity sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA== - -lodash.isstring@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/lodash.isstring/-/lodash.isstring-4.0.1.tgz#d527dfb5456eca7cc9bb95d5daeaf88ba54a5451" - integrity sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw== - -lodash.memoize@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" - integrity sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag== - -lodash.merge@^4.6.2: - version "4.6.2" - resolved "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz" - integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== - -lodash.once@^4.0.0: - version "4.1.1" - resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" - integrity sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg== - -lru-cache@^10.2.0: - version "10.4.3" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.4.3.tgz#410fc8a17b70e598013df257c2446b7f3383f119" - integrity sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ== - -lru-cache@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" - integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== - dependencies: - yallist "^3.0.2" - -make-dir@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-4.0.0.tgz#c3c2307a771277cd9638305f915c29ae741b614e" - integrity sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw== - dependencies: - semver "^7.5.3" - -make-error@^1.3.6: - version "1.3.6" - resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" - integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== - -makeerror@1.0.12: - version "1.0.12" - resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" - integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg== - dependencies: - tmpl "1.0.5" - -math-intrinsics@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/math-intrinsics/-/math-intrinsics-1.1.0.tgz#a0dd74be81e2aa5c2f27e65ce283605ee4e2b7f9" - integrity sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g== - -merge-stream@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" - integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== - -merge2@^1.3.0, merge2@^1.4.1: - version "1.4.1" - resolved "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz" - integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== - -micromatch@^4.0.4: - version "4.0.8" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202" - integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA== - dependencies: - braces "^3.0.3" - picomatch "^2.3.1" - -mime-db@1.52.0: - version "1.52.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" - integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== - -mime-types@^2.1.12: - version "2.1.35" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" - integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== - dependencies: - mime-db "1.52.0" - -mimic-fn@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" - integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== - -minimatch@9.0.3: - version "9.0.3" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.3.tgz#a6e00c3de44c3a542bfaae70abfc22420a6da825" - integrity sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg== - dependencies: - brace-expansion "^2.0.1" - -minimatch@^3.0.4, minimatch@^3.1.1, minimatch@^3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" - integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== - dependencies: - brace-expansion "^1.1.7" - -minimatch@^5.0.1: - version "5.1.6" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" - integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== - dependencies: - brace-expansion "^2.0.1" - -minimatch@^9.0.4: - version "9.0.5" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.5.tgz#d74f9dd6b57d83d8e98cfb82133b03978bc929e5" - integrity sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow== - dependencies: - brace-expansion "^2.0.1" - -minimist@^1.2.0, minimist@^1.2.6: - version "1.2.8" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" - integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== - -"minipass@^5.0.0 || ^6.0.2 || ^7.0.0", minipass@^7.1.2: - version "7.1.2" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707" - integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw== - -ms@2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" - integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== - -ms@^2.1.1, ms@^2.1.3: - version "2.1.3" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" - integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== - -natural-compare@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" - integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== - -node-domexception@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/node-domexception/-/node-domexception-1.0.0.tgz#6888db46a1f71c0b76b3f7555016b63fe64766e5" - integrity sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ== - -node-fetch@^3.3.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-3.3.2.tgz#d1e889bacdf733b4ff3b2b243eb7a12866a0b78b" - integrity sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA== - dependencies: - data-uri-to-buffer "^4.0.0" - fetch-blob "^3.1.4" - formdata-polyfill "^4.0.10" - -node-int64@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" - integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== - -node-releases@^2.0.14: - version "2.0.14" - resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz" - integrity sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw== - -node-releases@^2.0.19: - version "2.0.19" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.19.tgz#9e445a52950951ec4d177d843af370b411caf314" - integrity sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw== - -normalize-path@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" - integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== - -npm-run-path@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" - integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== - dependencies: - path-key "^3.0.0" - -object-inspect@^1.13.1, object-inspect@^1.9.0: - version "1.13.1" - resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz" - integrity sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ== - -object-keys@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" - integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== - -object.assign@^4.1.2, object.assign@^4.1.4: - version "4.1.5" - resolved "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz" - integrity sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ== - dependencies: - call-bind "^1.0.5" - define-properties "^1.2.1" - has-symbols "^1.0.3" - object-keys "^1.1.1" - -object.entries@^1.1.5: - version "1.1.7" - resolved "https://registry.npmjs.org/object.entries/-/object.entries-1.1.7.tgz" - integrity sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA== - dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - -object.fromentries@^2.0.7: - version "2.0.7" - resolved "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.7.tgz" - integrity sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA== - dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - -object.groupby@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.1.tgz" - integrity sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ== - dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - get-intrinsic "^1.2.1" - -object.values@^1.1.7: - version "1.1.7" - resolved "https://registry.npmjs.org/object.values/-/object.values-1.1.7.tgz" - integrity sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng== - dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - -once@^1.3.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== - dependencies: - wrappy "1" - -onetime@^5.1.2: - version "5.1.2" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" - integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== - dependencies: - mimic-fn "^2.1.0" - -optionator@^0.9.1: - version "0.9.1" - resolved "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz" - integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== - dependencies: - deep-is "^0.1.3" - fast-levenshtein "^2.0.6" - levn "^0.4.1" - prelude-ls "^1.2.1" - type-check "^0.4.0" - word-wrap "^1.2.3" - -p-limit@^2.2.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" - integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== - dependencies: - p-try "^2.0.0" - -p-limit@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" - integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== - dependencies: - yocto-queue "^0.1.0" - -p-locate@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" - integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== - dependencies: - p-limit "^2.2.0" - -p-try@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" - integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== - -package-json-from-dist@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz#4f1471a010827a86f94cfd9b0727e36d267de505" - integrity sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw== - -parent-module@^1.0.0: - 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== - dependencies: - callsites "^3.0.0" - -parse-json@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" - integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== - 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" - -path-exists@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" - integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== - -path-is-absolute@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== - -path-key@^3.0.0, path-key@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" - integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== - -path-parse@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" - integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== - -path-scurry@^1.11.1: - version "1.11.1" - resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.11.1.tgz#7960a668888594a0720b12a911d1a742ab9f11d2" - integrity sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA== - dependencies: - lru-cache "^10.2.0" - minipass "^5.0.0 || ^6.0.2 || ^7.0.0" - -path-type@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz" - integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== - -picocolors@^1.0.0, picocolors@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" - integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== - -picomatch@^2.0.4, picomatch@^2.2.3, picomatch@^2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" - integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== - -pirates@^4.0.4: - version "4.0.6" - resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.6.tgz#3018ae32ecfcff6c29ba2267cbf21166ac1f36b9" - integrity sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg== - -pkg-dir@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" - integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== - dependencies: - find-up "^4.0.0" - -prelude-ls@^1.2.1: - version "1.2.1" - resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz" - integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== - -pretty-format@^27.0.0, pretty-format@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.5.1.tgz#2181879fdea51a7a5851fb39d920faa63f01d88e" - integrity sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ== - dependencies: - ansi-regex "^5.0.1" - ansi-styles "^5.0.0" - react-is "^17.0.1" - -pretty-format@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.7.0.tgz#ca42c758310f365bfa71a0bda0a807160b776812" - integrity sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ== - dependencies: - "@jest/schemas" "^29.6.3" - ansi-styles "^5.0.0" - react-is "^18.0.0" - -prompts@^2.0.1: - version "2.4.2" - resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" - integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q== - dependencies: - kleur "^3.0.3" - sisteransi "^1.0.5" - -proxy-from-env@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" - integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== - -punycode@^2.1.0: - version "2.1.1" - resolved "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz" - integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== - -pure-rand@^6.0.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/pure-rand/-/pure-rand-6.1.0.tgz#d173cf23258231976ccbdb05247c9787957604f2" - integrity sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA== - -queue-microtask@^1.2.2: - version "1.2.3" - resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz" - integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== - -react-is@^17.0.1: - version "17.0.2" - resolved "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz" - integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== - -react-is@^18.0.0: - version "18.3.1" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.3.1.tgz#e83557dc12eae63a99e003a46388b1dcbb44db7e" - integrity sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg== - -regenerate-unicode-properties@^10.2.0: - version "10.2.0" - resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.2.0.tgz#626e39df8c372338ea9b8028d1f99dc3fd9c3db0" - integrity sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA== - dependencies: - regenerate "^1.4.2" - -regenerate@^1.4.2: - version "1.4.2" - resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a" - integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A== - -regenerator-runtime@^0.14.1: - version "0.14.1" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz#356ade10263f685dda125100cd862c1db895327f" - integrity sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw== - -regenerator-transform@^0.15.2: - version "0.15.2" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.15.2.tgz#5bbae58b522098ebdf09bca2f83838929001c7a4" - integrity sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg== - dependencies: - "@babel/runtime" "^7.8.4" - -regexp.prototype.flags@^1.5.1: - version "1.5.1" - resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz" - integrity sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg== - dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - set-function-name "^2.0.0" - -regexpp@^3.2.0: - version "3.2.0" - resolved "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz" - integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== - -regexpu-core@^6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-6.2.0.tgz#0e5190d79e542bf294955dccabae04d3c7d53826" - integrity sha512-H66BPQMrv+V16t8xtmq+UC0CBpiTBA60V8ibS1QVReIp8T1z8hwFxqcGzm9K6lgsN7sB5edVH8a+ze6Fqm4weA== - dependencies: - regenerate "^1.4.2" - regenerate-unicode-properties "^10.2.0" - regjsgen "^0.8.0" - regjsparser "^0.12.0" - unicode-match-property-ecmascript "^2.0.0" - unicode-match-property-value-ecmascript "^2.1.0" - -regjsgen@^0.8.0: - version "0.8.0" - resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.8.0.tgz#df23ff26e0c5b300a6470cad160a9d090c3a37ab" - integrity sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q== - -regjsparser@^0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.12.0.tgz#0e846df6c6530586429377de56e0475583b088dc" - integrity sha512-cnE+y8bz4NhMjISKbgeVJtqNbtf5QpjZP+Bslo+UqkIt9QPnX9q095eiRRASJG1/tz6dlNr6Z5NsBiWYokp6EQ== - dependencies: - jsesc "~3.0.2" - -require-directory@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" - integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== - -resolve-cwd@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" - integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg== - dependencies: - resolve-from "^5.0.0" - -resolve-from@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz" - integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== - -resolve-from@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" - integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== - -resolve.exports@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.3.tgz#41955e6f1b4013b7586f873749a635dea07ebe3f" - integrity sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A== - -resolve@^1.14.2, resolve@^1.20.0: - version "1.22.10" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.10.tgz#b663e83ffb09bbf2386944736baae803029b8b39" - integrity sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w== - dependencies: - is-core-module "^2.16.0" - path-parse "^1.0.7" - supports-preserve-symlinks-flag "^1.0.0" - -resolve@^1.22.4: - version "1.22.8" - resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz" - integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== - dependencies: - is-core-module "^2.13.0" - path-parse "^1.0.7" - supports-preserve-symlinks-flag "^1.0.0" - -reusify@^1.0.4: - version "1.0.4" - resolved "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz" - integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== - -rimraf@^3.0.2: - version "3.0.2" - resolved "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz" - integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== - dependencies: - glob "^7.1.3" - -rimraf@^5.0.1: - version "5.0.10" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-5.0.10.tgz#23b9843d3dc92db71f96e1a2ce92e39fd2a8221c" - integrity sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ== - dependencies: - glob "^10.3.7" - -run-parallel@^1.1.9: - version "1.2.0" - resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz" - integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== - dependencies: - queue-microtask "^1.2.2" - -safe-array-concat@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.0.1.tgz" - integrity sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q== - dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.2.1" - has-symbols "^1.0.3" - isarray "^2.0.5" - -safe-buffer@^5.0.1: - version "5.2.1" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" - integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== - -safe-regex-test@^1.0.0: - 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== - dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.1.3" - is-regex "^1.1.4" - -semver@^6.3.0, semver@^6.3.1: - version "6.3.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" - integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== - -semver@^7.5.3, semver@^7.7.1: - version "7.7.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.1.tgz#abd5098d82b18c6c81f6074ff2647fd3e7220c9f" - integrity sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA== - -semver@^7.5.4: - version "7.7.3" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.3.tgz#4b5f4143d007633a8dc671cd0a6ef9147b8bb946" - integrity sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q== - -set-function-length@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/set-function-length/-/set-function-length-1.1.1.tgz" - integrity sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ== - dependencies: - define-data-property "^1.1.1" - get-intrinsic "^1.2.1" - gopd "^1.0.1" - has-property-descriptors "^1.0.0" - -set-function-length@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.2.tgz#aac72314198eaed975cf77b2c3b6b880695e5449" - integrity sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg== - dependencies: - define-data-property "^1.1.4" - es-errors "^1.3.0" - function-bind "^1.1.2" - get-intrinsic "^1.2.4" - gopd "^1.0.1" - has-property-descriptors "^1.0.2" - -set-function-name@^2.0.0: - version "2.0.1" - resolved "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.1.tgz" - integrity sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA== - dependencies: - define-data-property "^1.0.1" - functions-have-names "^1.2.3" - has-property-descriptors "^1.0.0" - -shebang-command@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" - integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== - dependencies: - shebang-regex "^3.0.0" - -shebang-regex@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" - integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== - -side-channel@^1.0.4: - version "1.0.4" - resolved "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz" - integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw== - dependencies: - call-bind "^1.0.0" - get-intrinsic "^1.0.2" - object-inspect "^1.9.0" - -signal-exit@^3.0.3, signal-exit@^3.0.7: - version "3.0.7" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" - integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== - -signal-exit@^4.0.1: - version "4.1.0" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04" - integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== - -sisteransi@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" - integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== - -slash@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" - integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== - -source-map-support@0.5.13: - version "0.5.13" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.13.tgz#31b24a9c2e73c2de85066c0feb7d44767ed52932" - integrity sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w== - dependencies: - buffer-from "^1.0.0" - source-map "^0.6.0" - -source-map@^0.6.0, source-map@^0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" - integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== - -stack-utils@^2.0.3: - version "2.0.6" - resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.6.tgz#aaf0748169c02fc33c8232abccf933f54a1cc34f" - integrity sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ== - dependencies: - escape-string-regexp "^2.0.0" - -string-length@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a" - integrity sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ== - dependencies: - char-regex "^1.0.2" - strip-ansi "^6.0.0" - -"string-width-cjs@npm:string-width@^4.2.0": - version "4.2.3" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" - integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.1" - -string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: - version "4.2.3" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" - integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.1" - -string-width@^5.0.1, string-width@^5.1.2: - version "5.1.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794" - integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA== - dependencies: - eastasianwidth "^0.2.0" - emoji-regex "^9.2.2" - strip-ansi "^7.0.1" - -string.prototype.trim@^1.2.8: - version "1.2.8" - resolved "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz" - integrity sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ== - dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - -string.prototype.trimend@^1.0.7: - version "1.0.7" - resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.7.tgz" - integrity sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA== - dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - -string.prototype.trimstart@^1.0.7: - version "1.0.7" - resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.7.tgz" - integrity sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg== - dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - -"strip-ansi-cjs@npm:strip-ansi@^6.0.1": - version "6.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" - integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== - dependencies: - ansi-regex "^5.0.1" - -strip-ansi@^6.0.0, strip-ansi@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" - integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== - dependencies: - ansi-regex "^5.0.1" - -strip-ansi@^7.0.1: - version "7.1.2" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.2.tgz#132875abde678c7ea8d691533f2e7e22bb744dba" - integrity sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA== - dependencies: - ansi-regex "^6.0.1" - -strip-bom@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz" - integrity sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA== - -strip-bom@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" - integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w== - -strip-final-newline@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" - integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== - -strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: - 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== - -supports-color@^7.1.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" - integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== - dependencies: - has-flag "^4.0.0" - -supports-color@^8.0.0: - version "8.1.1" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" - integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== - dependencies: - has-flag "^4.0.0" - -supports-preserve-symlinks-flag@^1.0.0: - 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== - -test-exclude@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" - integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== - dependencies: - "@istanbuljs/schema" "^0.1.2" - glob "^7.1.4" - minimatch "^3.0.4" - -text-table@^0.2.0: - version "0.2.0" - resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz" - integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= - -tmpl@1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" - integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== - -to-regex-range@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" - integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== - dependencies: - is-number "^7.0.0" - -ts-api-utils@^1.0.1: - version "1.4.3" - resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.4.3.tgz#bfc2215fe6528fecab2b0fba570a2e8a4263b064" - integrity sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw== - -ts-jest@^29.1.1: - version "29.2.6" - resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-29.2.6.tgz#df53edf8b72fb89de032cfa310abf37582851d9a" - integrity sha512-yTNZVZqc8lSixm+QGVFcPe6+yj7+TWZwIesuOWvfcn4B9bz5x4NDzVCQQjOs7Hfouu36aEqfEbo9Qpo+gq8dDg== - dependencies: - bs-logger "^0.2.6" - ejs "^3.1.10" - fast-json-stable-stringify "^2.1.0" - jest-util "^29.0.0" - json5 "^2.2.3" - lodash.memoize "^4.1.2" - make-error "^1.3.6" - semver "^7.7.1" - yargs-parser "^21.1.1" - -tsconfig-paths@^3.15.0: - version "3.15.0" - resolved "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz" - integrity sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg== - dependencies: - "@types/json5" "^0.0.29" - json5 "^1.0.2" - minimist "^1.2.6" - strip-bom "^3.0.0" - -type-check@^0.4.0, type-check@~0.4.0: - version "0.4.0" - resolved "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz" - integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== - dependencies: - prelude-ls "^1.2.1" - -type-detect@4.0.8: - version "4.0.8" - resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" - integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== - -type-fest@^0.20.2: - 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== - -type-fest@^0.21.3: - version "0.21.3" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" - integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== - -typed-array-buffer@^1.0.0: - 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== - dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.2.1" - is-typed-array "^1.1.10" - -typed-array-byte-length@^1.0.0: - 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== - dependencies: - call-bind "^1.0.2" - for-each "^0.3.3" - has-proto "^1.0.1" - is-typed-array "^1.1.10" - -typed-array-byte-offset@^1.0.0: - 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== - 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" - -typed-array-length@^1.0.4: - 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== - dependencies: - call-bind "^1.0.2" - for-each "^0.3.3" - is-typed-array "^1.1.9" - -typescript@^4.9.5: - version "4.9.5" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a" - integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g== - -unbox-primitive@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz" - integrity sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw== - dependencies: - call-bind "^1.0.2" - has-bigints "^1.0.2" - has-symbols "^1.0.3" - which-boxed-primitive "^1.0.2" - -undici-types@~7.16.0: - version "7.16.0" - resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-7.16.0.tgz#ffccdff36aea4884cbfce9a750a0580224f58a46" - integrity sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw== - -unicode-canonical-property-names-ecmascript@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz#cb3173fe47ca743e228216e4a3ddc4c84d628cc2" - integrity sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg== - -unicode-match-property-ecmascript@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz#54fd16e0ecb167cf04cf1f756bdcc92eba7976c3" - integrity sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q== - dependencies: - unicode-canonical-property-names-ecmascript "^2.0.0" - unicode-property-aliases-ecmascript "^2.0.0" - -unicode-match-property-value-ecmascript@^2.1.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.2.0.tgz#a0401aee72714598f739b68b104e4fe3a0cb3c71" - integrity sha512-4IehN3V/+kkr5YeSSDDQG8QLqO26XpL2XP3GQtqwlT/QYSECAwFztxVHjlbh0+gjJ3XmNLS0zDsbgs9jWKExLg== - -unicode-property-aliases-ecmascript@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz#43d41e3be698bd493ef911077c9b131f827e8ccd" - integrity sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w== - -update-browserslist-db@^1.0.13: - version "1.0.13" - resolved "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz" - integrity sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg== - dependencies: - escalade "^3.1.1" - picocolors "^1.0.0" - -update-browserslist-db@^1.1.1: - version "1.1.3" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz#348377dd245216f9e7060ff50b15a1b740b75420" - integrity sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw== - dependencies: - escalade "^3.2.0" - picocolors "^1.1.1" - -uri-js@^4.2.2: - version "4.4.1" - resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz" - integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== - dependencies: - punycode "^2.1.0" - -v8-compile-cache@^2.0.3: - version "2.3.0" - resolved "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz" - integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== - -v8-to-istanbul@^9.0.1: - version "9.3.0" - resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz#b9572abfa62bd556c16d75fdebc1a411d5ff3175" - integrity sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA== - dependencies: - "@jridgewell/trace-mapping" "^0.3.12" - "@types/istanbul-lib-coverage" "^2.0.1" - convert-source-map "^2.0.0" - -walker@^1.0.8: - version "1.0.8" - resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" - integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ== - dependencies: - makeerror "1.0.12" - -web-streams-polyfill@^3.0.3: - version "3.3.3" - resolved "https://registry.yarnpkg.com/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz#2073b91a2fdb1fbfbd401e7de0ac9f8214cecb4b" - integrity sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw== - -which-boxed-primitive@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz" - integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg== - 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" - -which-typed-array@^1.1.11, which-typed-array@^1.1.13: - version "1.1.13" - resolved "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.13.tgz" - integrity sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow== - dependencies: - available-typed-arrays "^1.0.5" - call-bind "^1.0.4" - for-each "^0.3.3" - gopd "^1.0.1" - has-tostringtag "^1.0.0" - -which@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" - integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== - dependencies: - isexe "^2.0.0" - -word-wrap@^1.2.3: - version "1.2.5" - resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.5.tgz#d2c45c6dd4fbce621a66f136cbe328afd0410b34" - integrity sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA== - -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" - integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - -wrap-ansi@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" - integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - -wrap-ansi@^8.1.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214" - integrity sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ== - dependencies: - ansi-styles "^6.1.0" - string-width "^5.0.1" - strip-ansi "^7.0.1" - -wrappy@1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== - -write-file-atomic@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-4.0.2.tgz#a9df01ae5b77858a027fd2e80768ee433555fcfd" - integrity sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg== - dependencies: - imurmurhash "^0.1.4" - signal-exit "^3.0.7" - -y18n@^5.0.5: - version "5.0.8" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" - integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== - -yallist@^3.0.2: - version "3.1.1" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" - integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== - -yargs-parser@^21.1.1: - version "21.1.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" - integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== - -yargs@^17.3.1: - version "17.7.2" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.2.tgz#991df39aca675a192b816e1e0363f9d75d2aa269" - integrity sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w== - 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" - -yocto-queue@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" - integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== +# This file is generated by running "yarn install" inside your project. +# Manual changes might be lost - proceed with caution! + +__metadata: + version: 9 + cacheKey: 10c0 + +"@babel/helper-string-parser@npm:^7.29.7": + version: 7.29.7 + resolution: "@babel/helper-string-parser@npm:7.29.7" + checksum: 10c0/194bc0f1716e396d5ffde56ad6119745fb9557662c98611590e5e454906783a4ccb21ce93056b8eb69a4909044834e45d96e50ac695bbe9e3221648fe033c06c + languageName: node + linkType: hard + +"@babel/helper-validator-identifier@npm:^7.29.7": + version: 7.29.7 + resolution: "@babel/helper-validator-identifier@npm:7.29.7" + checksum: 10c0/4795354e7ae0dcafa72de1cd04ec51252dc1498517170beaf019e03effc5b7bf13c6b21a3949a77e07b8125be7f106ed1131350d8ebd4566ae874094a726d62b + languageName: node + linkType: hard + +"@babel/parser@npm:^7.29.3": + version: 7.29.7 + resolution: "@babel/parser@npm:7.29.7" + dependencies: + "@babel/types": "npm:^7.29.7" + bin: + parser: ./bin/babel-parser.js + checksum: 10c0/65133038f80b54a714d6027cb77cee3f9a6b5c4c6842ce674301e13947cbcbfa8055e63acaf1b84c085d34226a14425b2c2b97b829e0e226d2e8f1299942a51d + languageName: node + linkType: hard + +"@babel/types@npm:^7.29.0, @babel/types@npm:^7.29.7": + version: 7.29.7 + resolution: "@babel/types@npm:7.29.7" + dependencies: + "@babel/helper-string-parser": "npm:^7.29.7" + "@babel/helper-validator-identifier": "npm:^7.29.7" + checksum: 10c0/b6623994c69717fa27294f5fa46d59140338e2d86c6c1c13085c84ef7d53086ee357fbf4fe9abe3dd3da75734dc77c4c0df2f90fb29e667558bb3b3fb705e88f + languageName: node + linkType: hard + +"@bcoe/v8-coverage@npm:^1.0.2": + version: 1.0.2 + resolution: "@bcoe/v8-coverage@npm:1.0.2" + checksum: 10c0/1eb1dc93cc17fb7abdcef21a6e7b867d6aa99a7ec88ec8207402b23d9083ab22a8011213f04b2cf26d535f1d22dc26139b7929e6c2134c254bd1e14ba5e678c3 + languageName: node + linkType: hard + +"@cspell/cspell-bundled-dicts@npm:10.0.0": + version: 10.0.0 + resolution: "@cspell/cspell-bundled-dicts@npm:10.0.0" + dependencies: + "@cspell/dict-ada": "npm:^4.1.1" + "@cspell/dict-al": "npm:^1.1.1" + "@cspell/dict-aws": "npm:^4.0.17" + "@cspell/dict-bash": "npm:^4.2.2" + "@cspell/dict-companies": "npm:^3.2.11" + "@cspell/dict-cpp": "npm:^7.0.2" + "@cspell/dict-cryptocurrencies": "npm:^5.0.5" + "@cspell/dict-csharp": "npm:^4.0.8" + "@cspell/dict-css": "npm:^4.1.1" + "@cspell/dict-dart": "npm:^2.3.2" + "@cspell/dict-data-science": "npm:^2.0.13" + "@cspell/dict-django": "npm:^4.1.6" + "@cspell/dict-docker": "npm:^1.1.17" + "@cspell/dict-dotnet": "npm:^5.0.13" + "@cspell/dict-elixir": "npm:^4.0.8" + "@cspell/dict-en-common-misspellings": "npm:^2.1.12" + "@cspell/dict-en-gb-mit": "npm:^3.1.22" + "@cspell/dict-en_us": "npm:^4.4.33" + "@cspell/dict-filetypes": "npm:^3.0.18" + "@cspell/dict-flutter": "npm:^1.1.1" + "@cspell/dict-fonts": "npm:^4.0.6" + "@cspell/dict-fsharp": "npm:^1.1.1" + "@cspell/dict-fullstack": "npm:^3.2.9" + "@cspell/dict-gaming-terms": "npm:^1.1.2" + "@cspell/dict-git": "npm:^3.1.0" + "@cspell/dict-golang": "npm:^6.0.26" + "@cspell/dict-google": "npm:^1.0.9" + "@cspell/dict-haskell": "npm:^4.0.6" + "@cspell/dict-html": "npm:^4.0.15" + "@cspell/dict-html-symbol-entities": "npm:^4.0.5" + "@cspell/dict-java": "npm:^5.0.12" + "@cspell/dict-julia": "npm:^1.1.1" + "@cspell/dict-k8s": "npm:^1.0.12" + "@cspell/dict-kotlin": "npm:^1.1.1" + "@cspell/dict-latex": "npm:^5.1.0" + "@cspell/dict-lorem-ipsum": "npm:^4.0.5" + "@cspell/dict-lua": "npm:^4.0.8" + "@cspell/dict-makefile": "npm:^1.0.5" + "@cspell/dict-markdown": "npm:^2.0.16" + "@cspell/dict-monkeyc": "npm:^1.0.12" + "@cspell/dict-node": "npm:^5.0.9" + "@cspell/dict-npm": "npm:^5.2.38" + "@cspell/dict-php": "npm:^4.1.1" + "@cspell/dict-powershell": "npm:^5.0.15" + "@cspell/dict-public-licenses": "npm:^2.0.16" + "@cspell/dict-python": "npm:^4.2.26" + "@cspell/dict-r": "npm:^2.1.1" + "@cspell/dict-ruby": "npm:^5.1.1" + "@cspell/dict-rust": "npm:^4.1.2" + "@cspell/dict-scala": "npm:^5.0.9" + "@cspell/dict-shell": "npm:^1.1.2" + "@cspell/dict-software-terms": "npm:^5.2.2" + "@cspell/dict-sql": "npm:^2.2.1" + "@cspell/dict-svelte": "npm:^1.0.7" + "@cspell/dict-swift": "npm:^2.0.6" + "@cspell/dict-terraform": "npm:^1.1.3" + "@cspell/dict-typescript": "npm:^3.2.3" + "@cspell/dict-vue": "npm:^3.0.5" + "@cspell/dict-zig": "npm:^1.0.0" + checksum: 10c0/9fc90a2aa2f4f7370de37d8efab24a444eb95d5a8084dcd7410ee6a5a0797be48c43999e83566b9f77da73d677785d3845e3689e21cf8c59c659a3028025781a + languageName: node + linkType: hard + +"@cspell/cspell-json-reporter@npm:10.0.0": + version: 10.0.0 + resolution: "@cspell/cspell-json-reporter@npm:10.0.0" + dependencies: + "@cspell/cspell-types": "npm:10.0.0" + checksum: 10c0/d8b6ba8b081f235a93ec5685c40721e82263194f771d49968024e33dfb0a55b28589e6430eba83af45247ca7c121f8d1e725bb086c5e7e2fbba9fde935d547ec + languageName: node + linkType: hard + +"@cspell/cspell-performance-monitor@npm:10.0.0": + version: 10.0.0 + resolution: "@cspell/cspell-performance-monitor@npm:10.0.0" + checksum: 10c0/6c6f2905a6a4652ba6c0b414336de1e788bbcd995aed3cbebeec3e18ffaee34f08618af1672eba4ab8de2bd408c33e877ed75a679f30e6ed6b09ed6403122bc4 + languageName: node + linkType: hard + +"@cspell/cspell-pipe@npm:10.0.0": + version: 10.0.0 + resolution: "@cspell/cspell-pipe@npm:10.0.0" + checksum: 10c0/153614da4bd1e6e5702fcd4b9fa1577586652b942148607d4be6d477c1c14bcdd60daea044a17766e6e9b0762725574d8df3ffbf3013b2c8425fb3e9e7de6915 + languageName: node + linkType: hard + +"@cspell/cspell-resolver@npm:10.0.0": + version: 10.0.0 + resolution: "@cspell/cspell-resolver@npm:10.0.0" + dependencies: + global-directory: "npm:^5.0.0" + checksum: 10c0/a23acedbab5111af0c778a8305e965e9edfa5dc5e9c564b99a0dc126d0748bfd24e216c166fd0870adeb09ac30683ebf584ccb62e1289eefe1ccf5074748bc41 + languageName: node + linkType: hard + +"@cspell/cspell-service-bus@npm:10.0.0": + version: 10.0.0 + resolution: "@cspell/cspell-service-bus@npm:10.0.0" + checksum: 10c0/833279699282e993bf1195128e5c9fcc80a55be33fa30fd0de45664307387cd2996b709ca65223e3bb391b1f452f7ae3df8078b5776f80c30c95abba4f4a9528 + languageName: node + linkType: hard + +"@cspell/cspell-types@npm:10.0.0": + version: 10.0.0 + resolution: "@cspell/cspell-types@npm:10.0.0" + checksum: 10c0/f55ddee79160d3f06572850428c65726facf702676eee0fd2fdb77d827e9efbb946faffc025e57aefab3f8bbc026b0a2439952bb221d8aa357e0e05148f85e97 + languageName: node + linkType: hard + +"@cspell/cspell-worker@npm:10.0.0": + version: 10.0.0 + resolution: "@cspell/cspell-worker@npm:10.0.0" + dependencies: + cspell-lib: "npm:10.0.0" + checksum: 10c0/eae66e913542cef04873b3e4d7817f4606429670a9b4f302b4b42fa86c8a6c0f9abea7f1a527f746935d00bc8bdae312b6b2de9e0a64d69cb820e94b2a138c6b + languageName: node + linkType: hard + +"@cspell/dict-ada@npm:^4.1.1": + version: 4.1.1 + resolution: "@cspell/dict-ada@npm:4.1.1" + checksum: 10c0/4943399b5dd7dbed220b92ddcc6d3c55d0b00f141b52a39f35b9235e8f8cad8c0e63cab6af3f8f9e6ea669e672799215e50320059cae972fcd34174f4cbf38c7 + languageName: node + linkType: hard + +"@cspell/dict-al@npm:^1.1.1": + version: 1.1.1 + resolution: "@cspell/dict-al@npm:1.1.1" + checksum: 10c0/a6bd4d57a3027f91a44bd37f29f449beb684032cc88ba742a7b1576a3fac3f9d93c57b0a3b45eea732efb50c322ce2b8de386e1b15f605372ed312d4db6bc292 + languageName: node + linkType: hard + +"@cspell/dict-aws@npm:^4.0.17": + version: 4.0.17 + resolution: "@cspell/dict-aws@npm:4.0.17" + checksum: 10c0/d421a78aee8cc3db78a0bdffad2ceda9ca8e476498398809f2975bae9f03233df1112e713f2d699239600a9019d5e8f11ca60dfcb49fdce56815d5e794285c7b + languageName: node + linkType: hard + +"@cspell/dict-bash@npm:^4.2.2": + version: 4.2.2 + resolution: "@cspell/dict-bash@npm:4.2.2" + dependencies: + "@cspell/dict-shell": "npm:1.1.2" + checksum: 10c0/51b0552319cf190ab75841e7ea5d8919ecb2f165d8c1b9d3b26c90c5e30b9769e6a21212194b20db64a03a4c3f084d17be1f9957ecd733e90b2770e011d0e89b + languageName: node + linkType: hard + +"@cspell/dict-companies@npm:^3.2.11": + version: 3.2.11 + resolution: "@cspell/dict-companies@npm:3.2.11" + checksum: 10c0/9aa941967bbc48e171cb862b250d274fdc4234449a96f146b4814b0927897af827a056adb244ab110ca9a4ea5837819a4031eef2c7de0f0791a4d30a408b16a6 + languageName: node + linkType: hard + +"@cspell/dict-cpp@npm:^7.0.2": + version: 7.0.2 + resolution: "@cspell/dict-cpp@npm:7.0.2" + checksum: 10c0/a2926a6e896f04aa795edcd5fe3ac72cf1e05b97719946388cf31cf91737cfee816ffdd220e1960af60d7049daa37262787e76534afa5479fe10691af096b54c + languageName: node + linkType: hard + +"@cspell/dict-cryptocurrencies@npm:^5.0.5": + version: 5.0.5 + resolution: "@cspell/dict-cryptocurrencies@npm:5.0.5" + checksum: 10c0/d28c05f26d500bf05d08d725b43b5c1d740177b31ebdfcd03ae9929988b7878c3a6c94b99d8e355a5b20201f8af4b71713fb7f417548b69d621129ad6863be51 + languageName: node + linkType: hard + +"@cspell/dict-csharp@npm:^4.0.8": + version: 4.0.8 + resolution: "@cspell/dict-csharp@npm:4.0.8" + checksum: 10c0/b55dbe323b973e0e98d76a17205b103fbb52dec01d45d55aa06a14f1acc6c8bec259f7923bbe6138d1af2b11463969d920214ce0fc6e89eaf6fa08f86b10184e + languageName: node + linkType: hard + +"@cspell/dict-css@npm:^4.1.1": + version: 4.1.1 + resolution: "@cspell/dict-css@npm:4.1.1" + checksum: 10c0/979058aeaf695664255326b09d7fddbea57cb187484ae45e4741b6f6b92650b0ef9ce52d32651ba1927a6c2af3098ffa87edcad9f6f552e2c90c7c553ce2aac1 + languageName: node + linkType: hard + +"@cspell/dict-dart@npm:^2.3.2": + version: 2.3.2 + resolution: "@cspell/dict-dart@npm:2.3.2" + checksum: 10c0/1c0842ff09785aaf2bc2e68f4c05ec5e20331f3fce1503ef5a87305feb223f6e23404c68e4991bb90c6473825a7f8cd65b3ed86eef0d8032d43b13558ddb1753 + languageName: node + linkType: hard + +"@cspell/dict-data-science@npm:^2.0.13": + version: 2.0.13 + resolution: "@cspell/dict-data-science@npm:2.0.13" + checksum: 10c0/63d8291ef0e62defbf4b98e58bd1039747efdb6348fa64c128a01a0b28b93ce1724e878e945b1ca7d8f568a49446a46ed65ef71531130c7b1b1fddb5328a1a0e + languageName: node + linkType: hard + +"@cspell/dict-django@npm:^4.1.6": + version: 4.1.6 + resolution: "@cspell/dict-django@npm:4.1.6" + checksum: 10c0/76f71cba5a692df48554a3cd7cff7e27df85ab826e2cddf0594c21062e5c96de3090508314659a9ec708913a4afd61afb0f044ae8c41a1ec573583d516056f2d + languageName: node + linkType: hard + +"@cspell/dict-docker@npm:^1.1.17": + version: 1.1.17 + resolution: "@cspell/dict-docker@npm:1.1.17" + checksum: 10c0/1aaa4ffba7842b9044d1c4c6ae704907e6be3d8407c7feb986b3b7efa2e0139fc2ea3c3ad955d7ba4c92b5f577e05648ffc00a2a27b76d2bb93acde431452e58 + languageName: node + linkType: hard + +"@cspell/dict-dotnet@npm:^5.0.13": + version: 5.0.13 + resolution: "@cspell/dict-dotnet@npm:5.0.13" + checksum: 10c0/b34792ea2b1258f4e215487c4ff61de2fb3c9c6e0381fec03c4fb8132f2decd2b7b73a6450c507e8a3211e616282a3ace94e7d99363503e0efa4ef2cb6f2fcca + languageName: node + linkType: hard + +"@cspell/dict-elixir@npm:^4.0.8": + version: 4.0.8 + resolution: "@cspell/dict-elixir@npm:4.0.8" + checksum: 10c0/fe63aace353de8a134102764a58344fe755f27276fddcdf7e858d250ee13732a58f37f940c13bae7080fc286cb5b327ed168d201758da49243a1e45f42512c5f + languageName: node + linkType: hard + +"@cspell/dict-en-common-misspellings@npm:^2.1.12": + version: 2.1.12 + resolution: "@cspell/dict-en-common-misspellings@npm:2.1.12" + checksum: 10c0/5b7acd175ba76f164dcb5f5b7e910511dbd005bbab77fb5ae082603b01112d352af84bcd8d3ddef020db187b51056c4ce6a02dab8aebfcf0aa0dc416a66729a5 + languageName: node + linkType: hard + +"@cspell/dict-en-gb-mit@npm:^3.1.22": + version: 3.1.22 + resolution: "@cspell/dict-en-gb-mit@npm:3.1.22" + checksum: 10c0/78501fafeae62b966579c10de1f4fc24dedd57f83bdcafc72e314c9b781490858423890932b974f370dc8da2943cc8fdae435a289b13a397d8aa7986aa391d07 + languageName: node + linkType: hard + +"@cspell/dict-en_us@npm:^4.4.33": + version: 4.4.33 + resolution: "@cspell/dict-en_us@npm:4.4.33" + checksum: 10c0/c2b226f6879a58cfeecfa209116a241aabb9482b7fe56cac115b46bfefd557ec4f06efa33ae96c4d6e883cae70b5fdde83063315504c1dc4e4fb7916a46c2045 + languageName: node + linkType: hard + +"@cspell/dict-filetypes@npm:^3.0.18": + version: 3.0.18 + resolution: "@cspell/dict-filetypes@npm:3.0.18" + checksum: 10c0/b7a223eacef51770ed844b48b64d92b05b41a0a2ecbb6856ba8758fe8e444ca5f4252ecc511ac00ec1d12c1b12aef1198865f612cceaaf6d304c92b049a739cb + languageName: node + linkType: hard + +"@cspell/dict-flutter@npm:^1.1.1": + version: 1.1.1 + resolution: "@cspell/dict-flutter@npm:1.1.1" + checksum: 10c0/77e4533e6e7a38261ba2d744ca0c3aabb78f79b1ba6a2fde32169e475e5f940a526503097e520807155a0d8d0c16db346968873a32f1e99393be687da505e1b4 + languageName: node + linkType: hard + +"@cspell/dict-fonts@npm:^4.0.6": + version: 4.0.6 + resolution: "@cspell/dict-fonts@npm:4.0.6" + checksum: 10c0/73095a5bb3ec6ca24c7f01298b8344646005c0c05857b24ae106d7f795acf0b7107f4aaa677224c899d7aad7d0383f9f82dddd11a6b4cf3b26e3e5166b222674 + languageName: node + linkType: hard + +"@cspell/dict-fsharp@npm:^1.1.1": + version: 1.1.1 + resolution: "@cspell/dict-fsharp@npm:1.1.1" + checksum: 10c0/919de1f2a29d646781cb3114985f2730cc5ee0a253dc03c225c4430e73659e1189891fa7fa09c43179437e7386f4094e41d23d754b0a99a342344986094e2846 + languageName: node + linkType: hard + +"@cspell/dict-fullstack@npm:^3.2.9": + version: 3.2.9 + resolution: "@cspell/dict-fullstack@npm:3.2.9" + checksum: 10c0/a13d08099d1048797fe37d2a654846ff5086193bd29d57b62423ebc74f6c08c9f3b52c49f08b73d6bd09cdb393b70351f85f151893a20a5f8c858e474dd42e75 + languageName: node + linkType: hard + +"@cspell/dict-gaming-terms@npm:^1.1.2": + version: 1.1.2 + resolution: "@cspell/dict-gaming-terms@npm:1.1.2" + checksum: 10c0/eba9c672d352e54011704d97f5467158c02c238fa1639e64177ee1cd0d2c52deb57f0c9ae5f3c64d1742fd6a479515d0d8de5d1fc4ef8c5db58affb9947c90ea + languageName: node + linkType: hard + +"@cspell/dict-git@npm:^3.1.0": + version: 3.1.0 + resolution: "@cspell/dict-git@npm:3.1.0" + checksum: 10c0/161a9bd35f44173993c84ec2bc394c5fab4fe7d69070daa170be4922e295d60a3e34cecb04869a8b685b761c7ace83241ff4d60db93d2850368d769733a58de9 + languageName: node + linkType: hard + +"@cspell/dict-golang@npm:^6.0.26": + version: 6.0.26 + resolution: "@cspell/dict-golang@npm:6.0.26" + checksum: 10c0/514c54dc72620975e552ad91ecc8d98143611224e7fe3606fc6041f3248e9f9457be1f25027ff1d9bc2961459c5759dff3a01251054aab83bbcc9f927648b755 + languageName: node + linkType: hard + +"@cspell/dict-google@npm:^1.0.9": + version: 1.0.9 + resolution: "@cspell/dict-google@npm:1.0.9" + checksum: 10c0/f7e10353f97910a884f1d5ea4e60d4dd5a475ab27b669e97ade88669b1726eb4ed7c4f2ae5e3a227da77a15433ca3b6faba8d8700ff431b31c812d3c5329c8e4 + languageName: node + linkType: hard + +"@cspell/dict-haskell@npm:^4.0.6": + version: 4.0.6 + resolution: "@cspell/dict-haskell@npm:4.0.6" + checksum: 10c0/cb8a179e26190ca333789dcbd1dae3c03ec28a8d4dd99756e770c9cf837e66a78f291e6db0d8ea7763cdbb968b0369998c593978a3bb52a9b38aaa4ce8746b3a + languageName: node + linkType: hard + +"@cspell/dict-html-symbol-entities@npm:^4.0.5": + version: 4.0.5 + resolution: "@cspell/dict-html-symbol-entities@npm:4.0.5" + checksum: 10c0/8278b8cca06e6d3654e81b1809227ff1d64e053f79308966ea601194ce51fa3a385dde6844509b26223de70d034e60a85c604a729f021c0de63f8a5e6f29b0ce + languageName: node + linkType: hard + +"@cspell/dict-html@npm:^4.0.15": + version: 4.0.15 + resolution: "@cspell/dict-html@npm:4.0.15" + checksum: 10c0/0812ae7f11ea2160ab4df8039b0f5af023c102d8806dc6ea9b8a90f96cc564b00dad167c3eb1a6685a244980ac203cc168438b352c84918a215147ef632aca10 + languageName: node + linkType: hard + +"@cspell/dict-java@npm:^5.0.12": + version: 5.0.12 + resolution: "@cspell/dict-java@npm:5.0.12" + checksum: 10c0/aba65f3762350c7e9381f5dc174d3cd1292379eef6b426e1561aeca3476c63268a10b99cfcd7b8cd15bbaef8dfa7abb914a3f34f211c504064a22409a1441923 + languageName: node + linkType: hard + +"@cspell/dict-julia@npm:^1.1.1": + version: 1.1.1 + resolution: "@cspell/dict-julia@npm:1.1.1" + checksum: 10c0/6dbc4c17bbee1a95491bf77b9438924852e9393699ac24e02a0b6846fdaf00a6ed5baafa94aa91a6f50016c3ab43c399ac814afa6504518da7e2f26a97ff3d0e + languageName: node + linkType: hard + +"@cspell/dict-k8s@npm:^1.0.12": + version: 1.0.12 + resolution: "@cspell/dict-k8s@npm:1.0.12" + checksum: 10c0/53ca1b0d86f8432fb9548982edfde402985a1dc7c0b778374968a9b657e53bace638ef188551c0847588e2bf6ad147d2cd0ee92d5a37b71b0791e63971bfd2d1 + languageName: node + linkType: hard + +"@cspell/dict-kotlin@npm:^1.1.1": + version: 1.1.1 + resolution: "@cspell/dict-kotlin@npm:1.1.1" + checksum: 10c0/45d0efc3701007b87e562d434eae8b05a16f730b28dd6d3ec237014d1b87dfa49075b57fad1acdb7b7939c64777f5238b991379debd9a45d91a3193a1e3481fc + languageName: node + linkType: hard + +"@cspell/dict-latex@npm:^5.1.0": + version: 5.1.0 + resolution: "@cspell/dict-latex@npm:5.1.0" + checksum: 10c0/e806722c0ff1581a069245cb297b954f8e24fb6e1942f2547b0fee7783fc9b59d08fe2d2c7ddf3f7f9eef60d783ac9a4290f37956b9723b13e21c9422d7962b0 + languageName: node + linkType: hard + +"@cspell/dict-lorem-ipsum@npm:^4.0.5": + version: 4.0.5 + resolution: "@cspell/dict-lorem-ipsum@npm:4.0.5" + checksum: 10c0/dd28957e60f4f68baec72fb69196394b9993fcadadcf018c58de75bf89434e4cd49e694cd33dccfcd18d4f65e489f37d284044ef75615613369e0a72dd2ec974 + languageName: node + linkType: hard + +"@cspell/dict-lua@npm:^4.0.8": + version: 4.0.8 + resolution: "@cspell/dict-lua@npm:4.0.8" + checksum: 10c0/24dd577a75bcc5fcd194a337fdcb7a443f239b1b22f7392787ed8e9fd82f03f14b524a5f49a394c2d372ba493ab6cb3aebe7219da69e4565404b11cc29a909a3 + languageName: node + linkType: hard + +"@cspell/dict-makefile@npm:^1.0.5": + version: 1.0.5 + resolution: "@cspell/dict-makefile@npm:1.0.5" + checksum: 10c0/ee6ae5472493cb5fde7326c4ecb9e036b8a3cd348c3c06c2cbe5ce420a13776bd8f6fb0709f2f5bb62f745ea4d1fa63d59e533fbce13bde07743867f77818e86 + languageName: node + linkType: hard + +"@cspell/dict-markdown@npm:^2.0.16": + version: 2.0.16 + resolution: "@cspell/dict-markdown@npm:2.0.16" + peerDependencies: + "@cspell/dict-css": ^4.1.1 + "@cspell/dict-html": ^4.0.15 + "@cspell/dict-html-symbol-entities": ^4.0.5 + "@cspell/dict-typescript": ^3.2.3 + checksum: 10c0/563414ae9d6b0a12ba89c54ec62ada59c1fbc0b7199a85d607d9aae22e6446f2fb1757a737b0d631843989888b611bf39eebf79eef1a43e37e0584181274248c + languageName: node + linkType: hard + +"@cspell/dict-monkeyc@npm:^1.0.12": + version: 1.0.12 + resolution: "@cspell/dict-monkeyc@npm:1.0.12" + checksum: 10c0/97250565f808cbf37d66f2585db7accf449bc1836c72b3fac0449896fe17b8dfa3e5dc15f27f4e5cbe61dc7c24e9b17c1d7f475c934cd7c68b1aa597386a5bc0 + languageName: node + linkType: hard + +"@cspell/dict-node@npm:^5.0.9": + version: 5.0.9 + resolution: "@cspell/dict-node@npm:5.0.9" + checksum: 10c0/129fa7cd204e26769829912a8a64225af45b5cf0438f597329966e1c3db5ffca04b4c426d9cee594f271d14500e11319bc7ed371207cb18d73966000303e3072 + languageName: node + linkType: hard + +"@cspell/dict-npm@npm:^5.2.38": + version: 5.2.38 + resolution: "@cspell/dict-npm@npm:5.2.38" + checksum: 10c0/6eeeb9a0fd114fedaf7b8599f899484b20acd4e67a008056833b5791d59098c023023ac7afcbe5f35e7863ff6f64dad5012fbfaa8edb8695775d8f5635d53395 + languageName: node + linkType: hard + +"@cspell/dict-php@npm:^4.1.1": + version: 4.1.1 + resolution: "@cspell/dict-php@npm:4.1.1" + checksum: 10c0/e11e2a3799b2c9ea590ce8b2e69838965f3d8f83020961720afde9c9c57b6ccdb013d54346900766ccf422c548c916dd2aaa890563d36cf12498ad3ddfe67d7a + languageName: node + linkType: hard + +"@cspell/dict-powershell@npm:^5.0.15": + version: 5.0.15 + resolution: "@cspell/dict-powershell@npm:5.0.15" + checksum: 10c0/be9219dcaaa85ce3c8c51330cab3464b3dc3ea333ef96e98cca16375f80a807ee590f41fc0630e97460292f6a73d4ccb0d7c44b032a7c2fdaa168fe951631797 + languageName: node + linkType: hard + +"@cspell/dict-public-licenses@npm:^2.0.16": + version: 2.0.16 + resolution: "@cspell/dict-public-licenses@npm:2.0.16" + checksum: 10c0/473a29eb6fa8cf0d64fffcac0a686c492777dca9a0d6be4c890bcb0e98cb2f01a4afbbfcb88e903a5895593567ec6f2646097f07b0453b689fd70272088aa2a0 + languageName: node + linkType: hard + +"@cspell/dict-python@npm:^4.2.26": + version: 4.2.26 + resolution: "@cspell/dict-python@npm:4.2.26" + dependencies: + "@cspell/dict-data-science": "npm:^2.0.13" + checksum: 10c0/3773c7856b47648f5f54c92cf5660f121fbafc98ecca5d6ab6767e2a8b297598b0c51e43f404faac9eef7a72adbf8c49312aea3d16399cee14a11746a2277e09 + languageName: node + linkType: hard + +"@cspell/dict-r@npm:^2.1.1": + version: 2.1.1 + resolution: "@cspell/dict-r@npm:2.1.1" + checksum: 10c0/ff36a7f8669dde33e09d824de487bbab584c0105c61c97f38375835664a42566874051891d8ede7ac134bab4bd84c12bd333800d9c548386086ac496a87fd576 + languageName: node + linkType: hard + +"@cspell/dict-ruby@npm:^5.1.1": + version: 5.1.1 + resolution: "@cspell/dict-ruby@npm:5.1.1" + checksum: 10c0/ec23c736a4e5588c8c55a44b5c31eb7238a199ac4f2a84fd9aa6558a80f6416c42d7eaa7337e30590b66bbaac5523b6d64519f7e33eadc4cf1d878f20bb86fc0 + languageName: node + linkType: hard + +"@cspell/dict-rust@npm:^4.1.2": + version: 4.1.2 + resolution: "@cspell/dict-rust@npm:4.1.2" + checksum: 10c0/ccee1ef1652f8855f2fee1c5b7c173eda9660f0c7f1eadb550ab2e4e8e2ee2e31eee903e294a32052996fed4045907b0a53383f6fe74d28a04de94a4ac69a29d + languageName: node + linkType: hard + +"@cspell/dict-scala@npm:^5.0.9": + version: 5.0.9 + resolution: "@cspell/dict-scala@npm:5.0.9" + checksum: 10c0/f6b214f4cebcb68a270f4e5cb4163fdd59b58afb28894ac6f523025f411792454c6645c0c616d00af10ea541d5fbd25d34ad7986ddef1bb2181003e39140abbe + languageName: node + linkType: hard + +"@cspell/dict-shell@npm:1.1.2, @cspell/dict-shell@npm:^1.1.2": + version: 1.1.2 + resolution: "@cspell/dict-shell@npm:1.1.2" + checksum: 10c0/5c05d24e6944abee63f6726630967691d175376152c98f8ed82a149d8f2065b507dd1fbbb542b8df01c19280b23737ed786c9c527d6a3b3386f525ec6478eafc + languageName: node + linkType: hard + +"@cspell/dict-software-terms@npm:^5.2.2": + version: 5.2.2 + resolution: "@cspell/dict-software-terms@npm:5.2.2" + checksum: 10c0/eca6c5ee91a21c76b9d735c5777521287c896bd03e448c8512b61b75e926a269aef5e03dd0ea3cd2b8291ea56e6f140742f4a4826045603fffdeaba228272557 + languageName: node + linkType: hard + +"@cspell/dict-sql@npm:^2.2.1": + version: 2.2.1 + resolution: "@cspell/dict-sql@npm:2.2.1" + checksum: 10c0/0e4e763a81669226cd54888546b0cffb12b66be0f945e97c1ea11638a3e4a074408bafeac10a7cf455781a0e5d55b41f5b0ff6fb0d58ae0b043dc1f37e792d51 + languageName: node + linkType: hard + +"@cspell/dict-svelte@npm:^1.0.7": + version: 1.0.7 + resolution: "@cspell/dict-svelte@npm:1.0.7" + checksum: 10c0/08aaf8818c6626bb330359d9682893daade5884105421db6916636a54423f043b706d49a3ad0b07fe05e7751753f9fa8dda1ac6c11662d6f16741c87f30d0c2a + languageName: node + linkType: hard + +"@cspell/dict-swift@npm:^2.0.6": + version: 2.0.6 + resolution: "@cspell/dict-swift@npm:2.0.6" + checksum: 10c0/ef8e5a6a63dd29055fd614a4d29e50b81fb88db166bb239a15279583def70786f6f3eb63e0071f771efe35b94739d22e5d48ccb4542dd0f217b71229f93a6377 + languageName: node + linkType: hard + +"@cspell/dict-terraform@npm:^1.1.3": + version: 1.1.3 + resolution: "@cspell/dict-terraform@npm:1.1.3" + checksum: 10c0/3964295ef52ab787d42360c48f312614034181f3b63c9a567a724c07af35872d6e2c96f765f2f9ba87e8a40451961844307459c40e066506b549cd55e1746ece + languageName: node + linkType: hard + +"@cspell/dict-typescript@npm:^3.2.3": + version: 3.2.3 + resolution: "@cspell/dict-typescript@npm:3.2.3" + checksum: 10c0/b4bb34efa2f3ce120cf5a7d4aab4a49ffcb2aaa59c5d81aa5e2550e06d61738399e015c9e1447c1beb9fadbf6b084523be696ae9d5f9d3b63ea6f6189d280316 + languageName: node + linkType: hard + +"@cspell/dict-vue@npm:^3.0.5": + version: 3.0.5 + resolution: "@cspell/dict-vue@npm:3.0.5" + checksum: 10c0/da4a1778095c8f56953d1f1934f41369e4e5c9b83e0862cd37782aae875820e8404f8dd3cd4cb2ea5be46370dd1698966f69b50121c75a50b8652414dc26f2cc + languageName: node + linkType: hard + +"@cspell/dict-zig@npm:^1.0.0": + version: 1.0.0 + resolution: "@cspell/dict-zig@npm:1.0.0" + checksum: 10c0/bc302e117002c9d6ebfb5d3e085d9a6f2e65d63440deb9f137dce1d8a75650593f5b83d47488ab394cfbc173be032661dc36bc74c85b9826f60a7d2fc7955ffc + languageName: node + linkType: hard + +"@cspell/dynamic-import@npm:10.0.0": + version: 10.0.0 + resolution: "@cspell/dynamic-import@npm:10.0.0" + dependencies: + "@cspell/url": "npm:10.0.0" + import-meta-resolve: "npm:^4.2.0" + checksum: 10c0/8ea1134ae75a2ffd2101017036437562eff03cc773864b2d69a1fa7ab304494d06ebfe5b5e59159d42c8a40dc1c623992642e2ab6d66a2b11f12f97b5e620bfb + languageName: node + linkType: hard + +"@cspell/filetypes@npm:10.0.0": + version: 10.0.0 + resolution: "@cspell/filetypes@npm:10.0.0" + checksum: 10c0/e66d285756f2390341318c9045ba12c0e05e704d74eb715023cfd56fcb368a51b5c4a6c835103c8f9f8fb1cfbe17d443736c3aa0df4f3848acf69bf75ffeca19 + languageName: node + linkType: hard + +"@cspell/rpc@npm:10.0.0": + version: 10.0.0 + resolution: "@cspell/rpc@npm:10.0.0" + checksum: 10c0/394f52040f062fa2335dd0a8e34ff7679553af6abd4d97bb7b0fbcde100b26f728ea3239a16953567815612270bdb13d236b2ce2689f530511aa117e4c081d6e + languageName: node + linkType: hard + +"@cspell/strong-weak-map@npm:10.0.0": + version: 10.0.0 + resolution: "@cspell/strong-weak-map@npm:10.0.0" + checksum: 10c0/bfdff730f5adff3b42c49ce35eece42f7e193843c8e69a9f87276eb1ba29144caaf72eabedcb6564e117905053161e8e59432963ccfcc0319707a98d127a80ff + languageName: node + linkType: hard + +"@cspell/url@npm:10.0.0": + version: 10.0.0 + resolution: "@cspell/url@npm:10.0.0" + checksum: 10c0/78bd9075bc0b9457c51ccbc1294220e35d159d1e5687501d0f28706ad331c9ee8f9869098e0aaab27d608594e55b9434efd94123d64205d8a2343938c089b20d + languageName: node + linkType: hard + +"@emnapi/core@npm:1.10.0": + version: 1.10.0 + resolution: "@emnapi/core@npm:1.10.0" + dependencies: + "@emnapi/wasi-threads": "npm:1.2.1" + tslib: "npm:^2.4.0" + checksum: 10c0/f51d08227857b60632de7714d708124f0e100a1462dde6df8221760939aa3204a73193830371830fac0716f3ccd2129f2cac1b17cd7d7958bc4da9018a296edb + languageName: node + linkType: hard + +"@emnapi/runtime@npm:1.10.0": + version: 1.10.0 + resolution: "@emnapi/runtime@npm:1.10.0" + dependencies: + tslib: "npm:^2.4.0" + checksum: 10c0/953f14991d1aefb92ee6f8eb27dea725e484791a53a0cb5f47d9e0087b9a2c929ff2e92adf95af15d6ad456db6300c6b761ebf72b50a875b874a83520b3ba093 + languageName: node + linkType: hard + +"@emnapi/wasi-threads@npm:1.2.1": + version: 1.2.1 + resolution: "@emnapi/wasi-threads@npm:1.2.1" + dependencies: + tslib: "npm:^2.4.0" + checksum: 10c0/32fcfa81ab396533b2ec1f4082b1ff779a05d9c836bbbd3f4398405b0e6814c0d9503b7993130e37bc6941dbc1ded49f55e9700ae9ca4e803bab2b5bc5deb331 + languageName: node + linkType: hard + +"@eslint-community/eslint-utils@npm:^4.5.1, @eslint-community/eslint-utils@npm:^4.8.0, @eslint-community/eslint-utils@npm:^4.9.1": + version: 4.9.1 + resolution: "@eslint-community/eslint-utils@npm:4.9.1" + dependencies: + eslint-visitor-keys: "npm:^3.4.3" + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + checksum: 10c0/dc4ab5e3e364ef27e33666b11f4b86e1a6c1d7cbf16f0c6ff87b1619b3562335e9201a3d6ce806221887ff780ec9d828962a290bb910759fd40a674686503f02 + languageName: node + linkType: hard + +"@eslint-community/regexpp@npm:^4.12.2": + version: 4.12.2 + resolution: "@eslint-community/regexpp@npm:4.12.2" + checksum: 10c0/fddcbc66851b308478d04e302a4d771d6917a0b3740dc351513c0da9ca2eab8a1adf99f5e0aa7ab8b13fa0df005c81adeee7e63a92f3effd7d367a163b721c2d + languageName: node + linkType: hard + +"@eslint/config-array@npm:^0.23.5": + version: 0.23.5 + resolution: "@eslint/config-array@npm:0.23.5" + dependencies: + "@eslint/object-schema": "npm:^3.0.5" + debug: "npm:^4.3.1" + minimatch: "npm:^10.2.4" + checksum: 10c0/b24833c4c76e78ee075d306cd3f095db46b2db0f90cc13a6ee6e4275f9889731c05bf5403ab5fefb79c756e07ac9184ed0e04570341382f9eccbccc80e6d1a0c + languageName: node + linkType: hard + +"@eslint/config-helpers@npm:^0.6.0": + version: 0.6.0 + resolution: "@eslint/config-helpers@npm:0.6.0" + dependencies: + "@eslint/core": "npm:^1.2.1" + checksum: 10c0/f9af20e8b60b0ba27edb74b8eb40c0c5d51a9bf9baf9e053bb57833a87cb0a1c49b4dfaad88fc24d49c907ad1324c8a0b668684fa9c321351dac4bc9155ec10a + languageName: node + linkType: hard + +"@eslint/core@npm:^1.0.1, @eslint/core@npm:^1.1.1, @eslint/core@npm:^1.2.1": + version: 1.2.1 + resolution: "@eslint/core@npm:1.2.1" + dependencies: + "@types/json-schema": "npm:^7.0.15" + checksum: 10c0/10979b40588ecfef771fcb5013a542a35fb30692cc95a65f3481b0b36fbd89f5679efeb30d57f4eed35203d859aabace2a620177d6c536f71b299a1af2f3398f + languageName: node + linkType: hard + +"@eslint/js@npm:^10.0.1": + version: 10.0.1 + resolution: "@eslint/js@npm:10.0.1" + peerDependencies: + eslint: ^10.0.0 + peerDependenciesMeta: + eslint: + optional: true + checksum: 10c0/9f3fcaf71ba7fdf65d82e8faad6ecfe97e11801cc3c362b306a88ea1ed1344ae0d35330dddb0e8ad18f010f6687a70b75491b9e01c8af57acd7987cee6b3ec6c + languageName: node + linkType: hard + +"@eslint/object-schema@npm:^3.0.5": + version: 3.0.5 + resolution: "@eslint/object-schema@npm:3.0.5" + checksum: 10c0/1db337431f520b99e9edda64ef5fafd7ec6a029843eeb608753025125b6649d861d843cffafafd3c4e37926d7d5f9ec0c6a8e3665c13c3da2144e8132892e92e + languageName: node + linkType: hard + +"@eslint/plugin-kit@npm:^0.6.0": + version: 0.6.1 + resolution: "@eslint/plugin-kit@npm:0.6.1" + dependencies: + "@eslint/core": "npm:^1.1.1" + levn: "npm:^0.4.1" + checksum: 10c0/f8354a7b92cc41e7a55d51986d192134be84f9dc0c91b5e649d075d733b56981c4ca8bf4460d54120c4c87b47984167bad2cb9bceb303f11b0a3bad22b3ed06a + languageName: node + linkType: hard + +"@eslint/plugin-kit@npm:^0.7.1": + version: 0.7.1 + resolution: "@eslint/plugin-kit@npm:0.7.1" + dependencies: + "@eslint/core": "npm:^1.2.1" + levn: "npm:^0.4.1" + checksum: 10c0/335b0c1c46fd906cb50bd5ce442b9cee18dc44342ce35c718ba4a63d1aa51d2797f16a517b2f4fe371ccd777b6862fafb2dc8195e00e69197ef4cb17ab32c01b + languageName: node + linkType: hard + +"@humanfs/core@npm:^0.19.2": + version: 0.19.2 + resolution: "@humanfs/core@npm:0.19.2" + dependencies: + "@humanfs/types": "npm:^0.15.0" + checksum: 10c0/d0a1d52d7b30c27d49475a53072d1510b81c5803e44b342fb8faf3887f1aa27593a1e6dc76a45268e7892d3f4e198146659281f6b6d55eacf3fd5a38bac30c5c + languageName: node + linkType: hard + +"@humanfs/node@npm:^0.16.6": + version: 0.16.8 + resolution: "@humanfs/node@npm:0.16.8" + dependencies: + "@humanfs/core": "npm:^0.19.2" + "@humanfs/types": "npm:^0.15.0" + "@humanwhocodes/retry": "npm:^0.4.0" + checksum: 10c0/56140579db811af4e160b195d45d0f29acf644d192c93fe24c9e594ebf06f19dfc157494a07c84540b8a071c0e4b37209c2362765d31734f4d0be869c2422e25 + languageName: node + linkType: hard + +"@humanfs/types@npm:^0.15.0": + version: 0.15.0 + resolution: "@humanfs/types@npm:0.15.0" + checksum: 10c0/fc26b9a024b0e55f7eaf64036df94345bf5d36d6a41ef80ef38e78f1f7430ce26cf435af736adae58913baae18eac3f38c18739054a3d379102015978eae862e + languageName: node + linkType: hard + +"@humanwhocodes/module-importer@npm:^1.0.1": + version: 1.0.1 + resolution: "@humanwhocodes/module-importer@npm:1.0.1" + checksum: 10c0/909b69c3b86d482c26b3359db16e46a32e0fb30bd306a3c176b8313b9e7313dba0f37f519de6aa8b0a1921349e505f259d19475e123182416a506d7f87e7f529 + languageName: node + linkType: hard + +"@humanwhocodes/retry@npm:^0.4.0, @humanwhocodes/retry@npm:^0.4.2": + version: 0.4.3 + resolution: "@humanwhocodes/retry@npm:0.4.3" + checksum: 10c0/3775bb30087d4440b3f7406d5a057777d90e4b9f435af488a4923ef249e93615fb78565a85f173a186a076c7706a81d0d57d563a2624e4de2c5c9c66c486ce42 + languageName: node + linkType: hard + +"@isaacs/fs-minipass@npm:^4.0.0": + version: 4.0.1 + resolution: "@isaacs/fs-minipass@npm:4.0.1" + dependencies: + minipass: "npm:^7.0.4" + checksum: 10c0/c25b6dc1598790d5b55c0947a9b7d111cfa92594db5296c3b907e2f533c033666f692a3939eadac17b1c7c40d362d0b0635dc874cbfe3e70db7c2b07cc97a5d2 + languageName: node + linkType: hard + +"@jridgewell/resolve-uri@npm:^3.1.0": + version: 3.1.2 + resolution: "@jridgewell/resolve-uri@npm:3.1.2" + checksum: 10c0/d502e6fb516b35032331406d4e962c21fe77cdf1cbdb49c6142bcbd9e30507094b18972778a6e27cbad756209cfe34b1a27729e6fa08a2eb92b33943f680cf1e + languageName: node + linkType: hard + +"@jridgewell/sourcemap-codec@npm:^1.4.14, @jridgewell/sourcemap-codec@npm:^1.5.5": + version: 1.5.5 + resolution: "@jridgewell/sourcemap-codec@npm:1.5.5" + checksum: 10c0/f9e538f302b63c0ebc06eecb1dd9918dd4289ed36147a0ddce35d6ea4d7ebbda243cda7b2213b6a5e1d8087a298d5cf630fb2bd39329cdecb82017023f6081a0 + languageName: node + linkType: hard + +"@jridgewell/trace-mapping@npm:^0.3.31": + version: 0.3.31 + resolution: "@jridgewell/trace-mapping@npm:0.3.31" + dependencies: + "@jridgewell/resolve-uri": "npm:^3.1.0" + "@jridgewell/sourcemap-codec": "npm:^1.4.14" + checksum: 10c0/4b30ec8cd56c5fd9a661f088230af01e0c1a3888d11ffb6b47639700f71225be21d1f7e168048d6d4f9449207b978a235c07c8f15c07705685d16dc06280e9d9 + languageName: node + linkType: hard + +"@napi-rs/wasm-runtime@npm:^1.1.1, @napi-rs/wasm-runtime@npm:^1.1.4": + version: 1.1.4 + resolution: "@napi-rs/wasm-runtime@npm:1.1.4" + dependencies: + "@tybys/wasm-util": "npm:^0.10.1" + peerDependencies: + "@emnapi/core": ^1.7.1 + "@emnapi/runtime": ^1.7.1 + checksum: 10c0/2e88e1955258949ccf2d18c79975821ad38071b465ef126a5e14110977b97868867b016c1ad046e963cccc42c0bd9db6c8ff5fd1ebb61b87bb3487f339041658 + languageName: node + linkType: hard + +"@ota-meshi/ast-token-store@npm:^0.3.0": + version: 0.3.0 + resolution: "@ota-meshi/ast-token-store@npm:0.3.0" + checksum: 10c0/cb36d5b3e1379901e197d03869772f96d6505be8c06701dd56a02123a9a5484cfe8d759610622058675434ee2dcdba37b939cc249abe9babefcd400a63a77e9a + languageName: node + linkType: hard + +"@oxc-parser/binding-android-arm-eabi@npm:0.130.0": + version: 0.130.0 + resolution: "@oxc-parser/binding-android-arm-eabi@npm:0.130.0" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + +"@oxc-parser/binding-android-arm64@npm:0.130.0": + version: 0.130.0 + resolution: "@oxc-parser/binding-android-arm64@npm:0.130.0" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"@oxc-parser/binding-darwin-arm64@npm:0.130.0": + version: 0.130.0 + resolution: "@oxc-parser/binding-darwin-arm64@npm:0.130.0" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"@oxc-parser/binding-darwin-x64@npm:0.130.0": + version: 0.130.0 + resolution: "@oxc-parser/binding-darwin-x64@npm:0.130.0" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@oxc-parser/binding-freebsd-x64@npm:0.130.0": + version: 0.130.0 + resolution: "@oxc-parser/binding-freebsd-x64@npm:0.130.0" + conditions: os=freebsd & cpu=x64 + languageName: node + linkType: hard + +"@oxc-parser/binding-linux-arm-gnueabihf@npm:0.130.0": + version: 0.130.0 + resolution: "@oxc-parser/binding-linux-arm-gnueabihf@npm:0.130.0" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"@oxc-parser/binding-linux-arm-musleabihf@npm:0.130.0": + version: 0.130.0 + resolution: "@oxc-parser/binding-linux-arm-musleabihf@npm:0.130.0" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"@oxc-parser/binding-linux-arm64-gnu@npm:0.130.0": + version: 0.130.0 + resolution: "@oxc-parser/binding-linux-arm64-gnu@npm:0.130.0" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + +"@oxc-parser/binding-linux-arm64-musl@npm:0.130.0": + version: 0.130.0 + resolution: "@oxc-parser/binding-linux-arm64-musl@npm:0.130.0" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + +"@oxc-parser/binding-linux-ppc64-gnu@npm:0.130.0": + version: 0.130.0 + resolution: "@oxc-parser/binding-linux-ppc64-gnu@npm:0.130.0" + conditions: os=linux & cpu=ppc64 & libc=glibc + languageName: node + linkType: hard + +"@oxc-parser/binding-linux-riscv64-gnu@npm:0.130.0": + version: 0.130.0 + resolution: "@oxc-parser/binding-linux-riscv64-gnu@npm:0.130.0" + conditions: os=linux & cpu=riscv64 & libc=glibc + languageName: node + linkType: hard + +"@oxc-parser/binding-linux-riscv64-musl@npm:0.130.0": + version: 0.130.0 + resolution: "@oxc-parser/binding-linux-riscv64-musl@npm:0.130.0" + conditions: os=linux & cpu=riscv64 & libc=musl + languageName: node + linkType: hard + +"@oxc-parser/binding-linux-s390x-gnu@npm:0.130.0": + version: 0.130.0 + resolution: "@oxc-parser/binding-linux-s390x-gnu@npm:0.130.0" + conditions: os=linux & cpu=s390x & libc=glibc + languageName: node + linkType: hard + +"@oxc-parser/binding-linux-x64-gnu@npm:0.130.0": + version: 0.130.0 + resolution: "@oxc-parser/binding-linux-x64-gnu@npm:0.130.0" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + +"@oxc-parser/binding-linux-x64-musl@npm:0.130.0": + version: 0.130.0 + resolution: "@oxc-parser/binding-linux-x64-musl@npm:0.130.0" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + +"@oxc-parser/binding-openharmony-arm64@npm:0.130.0": + version: 0.130.0 + resolution: "@oxc-parser/binding-openharmony-arm64@npm:0.130.0" + conditions: os=openharmony & cpu=arm64 + languageName: node + linkType: hard + +"@oxc-parser/binding-wasm32-wasi@npm:0.130.0": + version: 0.130.0 + resolution: "@oxc-parser/binding-wasm32-wasi@npm:0.130.0" + dependencies: + "@emnapi/core": "npm:1.10.0" + "@emnapi/runtime": "npm:1.10.0" + "@napi-rs/wasm-runtime": "npm:^1.1.4" + conditions: cpu=wasm32 + languageName: node + linkType: hard + +"@oxc-parser/binding-win32-arm64-msvc@npm:0.130.0": + version: 0.130.0 + resolution: "@oxc-parser/binding-win32-arm64-msvc@npm:0.130.0" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"@oxc-parser/binding-win32-ia32-msvc@npm:0.130.0": + version: 0.130.0 + resolution: "@oxc-parser/binding-win32-ia32-msvc@npm:0.130.0" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + +"@oxc-parser/binding-win32-x64-msvc@npm:0.130.0": + version: 0.130.0 + resolution: "@oxc-parser/binding-win32-x64-msvc@npm:0.130.0" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + +"@oxc-project/types@npm:=0.132.0": + version: 0.132.0 + resolution: "@oxc-project/types@npm:0.132.0" + checksum: 10c0/d0ca5e98be0b873d69e4f0f743eb35026833603dac11db9d55f2b5438251b381b886dc556fe3175a17b673f8e2073c49bde88d7e6e702aa09298c22b8b5504e1 + languageName: node + linkType: hard + +"@oxc-project/types@npm:^0.130.0": + version: 0.130.0 + resolution: "@oxc-project/types@npm:0.130.0" + checksum: 10c0/7ec8c03407b0bcb235b930c62859e6efcb3fe5cbaa5db98770d760df5c3e6b3e28a0ad22c2e35d1addede8065b40000c3822c5235dde2959af226639eb870000 + languageName: node + linkType: hard + +"@oxc-resolver/binding-android-arm-eabi@npm:11.19.1": + version: 11.19.1 + resolution: "@oxc-resolver/binding-android-arm-eabi@npm:11.19.1" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + +"@oxc-resolver/binding-android-arm64@npm:11.19.1": + version: 11.19.1 + resolution: "@oxc-resolver/binding-android-arm64@npm:11.19.1" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"@oxc-resolver/binding-darwin-arm64@npm:11.19.1": + version: 11.19.1 + resolution: "@oxc-resolver/binding-darwin-arm64@npm:11.19.1" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"@oxc-resolver/binding-darwin-x64@npm:11.19.1": + version: 11.19.1 + resolution: "@oxc-resolver/binding-darwin-x64@npm:11.19.1" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@oxc-resolver/binding-freebsd-x64@npm:11.19.1": + version: 11.19.1 + resolution: "@oxc-resolver/binding-freebsd-x64@npm:11.19.1" + conditions: os=freebsd & cpu=x64 + languageName: node + linkType: hard + +"@oxc-resolver/binding-linux-arm-gnueabihf@npm:11.19.1": + version: 11.19.1 + resolution: "@oxc-resolver/binding-linux-arm-gnueabihf@npm:11.19.1" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"@oxc-resolver/binding-linux-arm-musleabihf@npm:11.19.1": + version: 11.19.1 + resolution: "@oxc-resolver/binding-linux-arm-musleabihf@npm:11.19.1" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"@oxc-resolver/binding-linux-arm64-gnu@npm:11.19.1": + version: 11.19.1 + resolution: "@oxc-resolver/binding-linux-arm64-gnu@npm:11.19.1" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + +"@oxc-resolver/binding-linux-arm64-musl@npm:11.19.1": + version: 11.19.1 + resolution: "@oxc-resolver/binding-linux-arm64-musl@npm:11.19.1" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + +"@oxc-resolver/binding-linux-ppc64-gnu@npm:11.19.1": + version: 11.19.1 + resolution: "@oxc-resolver/binding-linux-ppc64-gnu@npm:11.19.1" + conditions: os=linux & cpu=ppc64 & libc=glibc + languageName: node + linkType: hard + +"@oxc-resolver/binding-linux-riscv64-gnu@npm:11.19.1": + version: 11.19.1 + resolution: "@oxc-resolver/binding-linux-riscv64-gnu@npm:11.19.1" + conditions: os=linux & cpu=riscv64 & libc=glibc + languageName: node + linkType: hard + +"@oxc-resolver/binding-linux-riscv64-musl@npm:11.19.1": + version: 11.19.1 + resolution: "@oxc-resolver/binding-linux-riscv64-musl@npm:11.19.1" + conditions: os=linux & cpu=riscv64 & libc=musl + languageName: node + linkType: hard + +"@oxc-resolver/binding-linux-s390x-gnu@npm:11.19.1": + version: 11.19.1 + resolution: "@oxc-resolver/binding-linux-s390x-gnu@npm:11.19.1" + conditions: os=linux & cpu=s390x & libc=glibc + languageName: node + linkType: hard + +"@oxc-resolver/binding-linux-x64-gnu@npm:11.19.1": + version: 11.19.1 + resolution: "@oxc-resolver/binding-linux-x64-gnu@npm:11.19.1" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + +"@oxc-resolver/binding-linux-x64-musl@npm:11.19.1": + version: 11.19.1 + resolution: "@oxc-resolver/binding-linux-x64-musl@npm:11.19.1" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + +"@oxc-resolver/binding-openharmony-arm64@npm:11.19.1": + version: 11.19.1 + resolution: "@oxc-resolver/binding-openharmony-arm64@npm:11.19.1" + conditions: os=openharmony & cpu=arm64 + languageName: node + linkType: hard + +"@oxc-resolver/binding-wasm32-wasi@npm:11.19.1": + version: 11.19.1 + resolution: "@oxc-resolver/binding-wasm32-wasi@npm:11.19.1" + dependencies: + "@napi-rs/wasm-runtime": "npm:^1.1.1" + conditions: cpu=wasm32 + languageName: node + linkType: hard + +"@oxc-resolver/binding-win32-arm64-msvc@npm:11.19.1": + version: 11.19.1 + resolution: "@oxc-resolver/binding-win32-arm64-msvc@npm:11.19.1" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"@oxc-resolver/binding-win32-ia32-msvc@npm:11.19.1": + version: 11.19.1 + resolution: "@oxc-resolver/binding-win32-ia32-msvc@npm:11.19.1" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + +"@oxc-resolver/binding-win32-x64-msvc@npm:11.19.1": + version: 11.19.1 + resolution: "@oxc-resolver/binding-win32-x64-msvc@npm:11.19.1" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + +"@package-json/types@npm:^0.0.12": + version: 0.0.12 + resolution: "@package-json/types@npm:0.0.12" + checksum: 10c0/d9bba086efe7b9901f02f1cff7a68ab23269aeddfb7ee92a16930e219f705bfc188b9fec2dd47265033dbda45ed1514d8a46f46363f38f1ad56bc993754126da + languageName: node + linkType: hard + +"@pkgr/core@npm:^0.2.9": + version: 0.2.9 + resolution: "@pkgr/core@npm:0.2.9" + checksum: 10c0/ac8e4e8138b1a7a4ac6282873aef7389c352f1f8b577b4850778f5182e4a39a5241facbe48361fec817f56d02b51691b383010843fb08b34a8e8ea3614688fd5 + languageName: node + linkType: hard + +"@publint/pack@npm:^0.1.4": + version: 0.1.4 + resolution: "@publint/pack@npm:0.1.4" + checksum: 10c0/f70b2c8951b5d312ecfd40534e1dd1b0a4fe0fd207879a73c168e3f6979df6202b8b4d4f9a0ee9de6443f0bfb95ef47a0c27c7138c083d9224ef27c67adddefd + languageName: node + linkType: hard + +"@rolldown/binding-android-arm64@npm:1.0.2": + version: 1.0.2 + resolution: "@rolldown/binding-android-arm64@npm:1.0.2" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"@rolldown/binding-darwin-arm64@npm:1.0.2": + version: 1.0.2 + resolution: "@rolldown/binding-darwin-arm64@npm:1.0.2" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"@rolldown/binding-darwin-x64@npm:1.0.2": + version: 1.0.2 + resolution: "@rolldown/binding-darwin-x64@npm:1.0.2" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@rolldown/binding-freebsd-x64@npm:1.0.2": + version: 1.0.2 + resolution: "@rolldown/binding-freebsd-x64@npm:1.0.2" + conditions: os=freebsd & cpu=x64 + languageName: node + linkType: hard + +"@rolldown/binding-linux-arm-gnueabihf@npm:1.0.2": + version: 1.0.2 + resolution: "@rolldown/binding-linux-arm-gnueabihf@npm:1.0.2" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"@rolldown/binding-linux-arm64-gnu@npm:1.0.2": + version: 1.0.2 + resolution: "@rolldown/binding-linux-arm64-gnu@npm:1.0.2" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + +"@rolldown/binding-linux-arm64-musl@npm:1.0.2": + version: 1.0.2 + resolution: "@rolldown/binding-linux-arm64-musl@npm:1.0.2" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + +"@rolldown/binding-linux-ppc64-gnu@npm:1.0.2": + version: 1.0.2 + resolution: "@rolldown/binding-linux-ppc64-gnu@npm:1.0.2" + conditions: os=linux & cpu=ppc64 & libc=glibc + languageName: node + linkType: hard + +"@rolldown/binding-linux-s390x-gnu@npm:1.0.2": + version: 1.0.2 + resolution: "@rolldown/binding-linux-s390x-gnu@npm:1.0.2" + conditions: os=linux & cpu=s390x & libc=glibc + languageName: node + linkType: hard + +"@rolldown/binding-linux-x64-gnu@npm:1.0.2": + version: 1.0.2 + resolution: "@rolldown/binding-linux-x64-gnu@npm:1.0.2" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + +"@rolldown/binding-linux-x64-musl@npm:1.0.2": + version: 1.0.2 + resolution: "@rolldown/binding-linux-x64-musl@npm:1.0.2" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + +"@rolldown/binding-openharmony-arm64@npm:1.0.2": + version: 1.0.2 + resolution: "@rolldown/binding-openharmony-arm64@npm:1.0.2" + conditions: os=openharmony & cpu=arm64 + languageName: node + linkType: hard + +"@rolldown/binding-wasm32-wasi@npm:1.0.2": + version: 1.0.2 + resolution: "@rolldown/binding-wasm32-wasi@npm:1.0.2" + dependencies: + "@emnapi/core": "npm:1.10.0" + "@emnapi/runtime": "npm:1.10.0" + "@napi-rs/wasm-runtime": "npm:^1.1.4" + conditions: cpu=wasm32 + languageName: node + linkType: hard + +"@rolldown/binding-win32-arm64-msvc@npm:1.0.2": + version: 1.0.2 + resolution: "@rolldown/binding-win32-arm64-msvc@npm:1.0.2" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"@rolldown/binding-win32-x64-msvc@npm:1.0.2": + version: 1.0.2 + resolution: "@rolldown/binding-win32-x64-msvc@npm:1.0.2" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + +"@rolldown/pluginutils@npm:^1.0.0": + version: 1.0.1 + resolution: "@rolldown/pluginutils@npm:1.0.1" + checksum: 10c0/99d9b06d90196823e4d8c841f258db7a16e5dbba5824a2962b05d907b79f1ba929d56f22dd744fd530936e568c865ee56a719dc31e57e13bc0a8eb4764a8d8dd + languageName: node + linkType: hard + +"@standard-schema/spec@npm:^1.1.0": + version: 1.1.0 + resolution: "@standard-schema/spec@npm:1.1.0" + checksum: 10c0/d90f55acde4b2deb983529c87e8025fa693de1a5e8b49ecc6eb84d1fd96328add0e03d7d551442156c7432fd78165b2c26ff561b970a9a881f046abb78d6a526 + languageName: node + linkType: hard + +"@tybys/wasm-util@npm:^0.10.1": + version: 0.10.2 + resolution: "@tybys/wasm-util@npm:0.10.2" + dependencies: + tslib: "npm:^2.4.0" + checksum: 10c0/26165bcd1fd7269f42d7fbe3de318f854a8968de8397e89fc9a423bb3e2da35a52150f382e6323b3367595beb16d9800a6f35971a5599daf76da1742ec3afc25 + languageName: node + linkType: hard + +"@types/chai@npm:^5.2.2": + version: 5.2.3 + resolution: "@types/chai@npm:5.2.3" + dependencies: + "@types/deep-eql": "npm:*" + assertion-error: "npm:^2.0.1" + checksum: 10c0/e0ef1de3b6f8045a5e473e867c8565788c444271409d155588504840ad1a53611011f85072188c2833941189400228c1745d78323dac13fcede9c2b28bacfb2f + languageName: node + linkType: hard + +"@types/deep-eql@npm:*": + version: 4.0.2 + resolution: "@types/deep-eql@npm:4.0.2" + checksum: 10c0/bf3f811843117900d7084b9d0c852da9a044d12eb40e6de73b552598a6843c21291a8a381b0532644574beecd5e3491c5ff3a0365ab86b15d59862c025384844 + languageName: node + linkType: hard + +"@types/esrecurse@npm:^4.3.1": + version: 4.3.1 + resolution: "@types/esrecurse@npm:4.3.1" + checksum: 10c0/90dad74d5da3ad27606d8e8e757322f33171cfeaa15ad558b615cf71bb2a516492d18f55f4816384685a3eb2412142e732bbae9a4a7cd2cf3deb7572aa4ebe03 + languageName: node + linkType: hard + +"@types/estree@npm:^1.0.0, @types/estree@npm:^1.0.6, @types/estree@npm:^1.0.8": + version: 1.0.9 + resolution: "@types/estree@npm:1.0.9" + checksum: 10c0/3ad3286ca2988cd550dafb8f2ad599c8474868e954fa601a36655bdfefd8039f7c714b8c1c7f2ae219ffbd58bd4660e66fa7479a0120fc02d4777057d4865387 + languageName: node + linkType: hard + +"@types/json-schema@npm:^7.0.15": + version: 7.0.15 + resolution: "@types/json-schema@npm:7.0.15" + checksum: 10c0/a996a745e6c5d60292f36731dd41341339d4eeed8180bb09226e5c8d23759067692b1d88e5d91d72ee83dfc00d3aca8e7bd43ea120516c17922cbcb7c3e252db + languageName: node + linkType: hard + +"@types/node@npm:^25.9.1": + version: 25.9.1 + resolution: "@types/node@npm:25.9.1" + dependencies: + undici-types: "npm:>=7.24.0 <7.24.7" + checksum: 10c0/9a04682842bebbcf21a1779dfeab9aa733d7bd7bbc0a0edb641ab3a9a3d43eac543225acf669c334f458f1956443ebc072bc3c72840c543b8b356cab5c82d456 + languageName: node + linkType: hard + +"@typescript-eslint/eslint-plugin@npm:8.60.0": + version: 8.60.0 + resolution: "@typescript-eslint/eslint-plugin@npm:8.60.0" + dependencies: + "@eslint-community/regexpp": "npm:^4.12.2" + "@typescript-eslint/scope-manager": "npm:8.60.0" + "@typescript-eslint/type-utils": "npm:8.60.0" + "@typescript-eslint/utils": "npm:8.60.0" + "@typescript-eslint/visitor-keys": "npm:8.60.0" + ignore: "npm:^7.0.5" + natural-compare: "npm:^1.4.0" + ts-api-utils: "npm:^2.5.0" + peerDependencies: + "@typescript-eslint/parser": ^8.60.0 + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: ">=4.8.4 <6.1.0" + checksum: 10c0/76dc44d21879a8977d916ab652b86a30e5b69493a0da4ce43ec403442da041320666b5987d6af7d4c9888d52c603e0bb51809b802f98a95d5ee37ca0e8ca5ac3 + languageName: node + linkType: hard + +"@typescript-eslint/parser@npm:8.60.0": + version: 8.60.0 + resolution: "@typescript-eslint/parser@npm:8.60.0" + dependencies: + "@typescript-eslint/scope-manager": "npm:8.60.0" + "@typescript-eslint/types": "npm:8.60.0" + "@typescript-eslint/typescript-estree": "npm:8.60.0" + "@typescript-eslint/visitor-keys": "npm:8.60.0" + debug: "npm:^4.4.3" + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: ">=4.8.4 <6.1.0" + checksum: 10c0/1012911e3eca8b3f3a3ca11424c32859ac38b4968bdb4c385c485ce545781da3ad964eceae86177a9aca2cfcbefd03ecf49507d221c7a70918fe0fa6cb8764e7 + languageName: node + linkType: hard + +"@typescript-eslint/project-service@npm:8.60.0": + version: 8.60.0 + resolution: "@typescript-eslint/project-service@npm:8.60.0" + dependencies: + "@typescript-eslint/tsconfig-utils": "npm:^8.60.0" + "@typescript-eslint/types": "npm:^8.60.0" + debug: "npm:^4.4.3" + peerDependencies: + typescript: ">=4.8.4 <6.1.0" + checksum: 10c0/8f72c2f10254787084d19fc73aebd7970bd3f163836c006e5d6997d874a36550d4a6c35b4762a36117be6fa6b84e13268db0a6b572c29b3e7c8c89f25bbb8b65 + languageName: node + linkType: hard + +"@typescript-eslint/scope-manager@npm:8.60.0": + version: 8.60.0 + resolution: "@typescript-eslint/scope-manager@npm:8.60.0" + dependencies: + "@typescript-eslint/types": "npm:8.60.0" + "@typescript-eslint/visitor-keys": "npm:8.60.0" + checksum: 10c0/d64c7c45f9e045fa10905b6703195735b19314f872811e1fd903b6197fb33528a49192ef6ca3183e406601b8d29e8d0096fabfc3e8a99320476e5108d4739f52 + languageName: node + linkType: hard + +"@typescript-eslint/tsconfig-utils@npm:8.60.0, @typescript-eslint/tsconfig-utils@npm:^8.60.0": + version: 8.60.0 + resolution: "@typescript-eslint/tsconfig-utils@npm:8.60.0" + peerDependencies: + typescript: ">=4.8.4 <6.1.0" + checksum: 10c0/701eae9a5064c5501e9dccd5a8e0baf365ef9a09da4d523873df303ef139644fad43e3d91b03f9a6ebbb141c0e066fc26ad0c40d5113b7c0d6c9ba69450c2520 + languageName: node + linkType: hard + +"@typescript-eslint/type-utils@npm:8.60.0": + version: 8.60.0 + resolution: "@typescript-eslint/type-utils@npm:8.60.0" + dependencies: + "@typescript-eslint/types": "npm:8.60.0" + "@typescript-eslint/typescript-estree": "npm:8.60.0" + "@typescript-eslint/utils": "npm:8.60.0" + debug: "npm:^4.4.3" + ts-api-utils: "npm:^2.5.0" + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: ">=4.8.4 <6.1.0" + checksum: 10c0/2b6d8efe6b8e6f63ecfcca218c255c3f846b78b9567579bec3d16ea97563edebd9d25e7ab3cdf82332c9ded45b7dbfdc1e6540c4503f4716ae8cbd93ab78f605 + languageName: node + linkType: hard + +"@typescript-eslint/types@npm:8.60.0, @typescript-eslint/types@npm:^8.56.0, @typescript-eslint/types@npm:^8.60.0": + version: 8.60.0 + resolution: "@typescript-eslint/types@npm:8.60.0" + checksum: 10c0/d2b6d46081a6521f204fda30e8f03712480b788d80b62b311e0f33764752d3db3bd415dd4e1f8d28495931316da1dfb5ee259e40c5de970367fbaa1efe97223f + languageName: node + linkType: hard + +"@typescript-eslint/typescript-estree@npm:8.60.0": + version: 8.60.0 + resolution: "@typescript-eslint/typescript-estree@npm:8.60.0" + dependencies: + "@typescript-eslint/project-service": "npm:8.60.0" + "@typescript-eslint/tsconfig-utils": "npm:8.60.0" + "@typescript-eslint/types": "npm:8.60.0" + "@typescript-eslint/visitor-keys": "npm:8.60.0" + debug: "npm:^4.4.3" + minimatch: "npm:^10.2.2" + semver: "npm:^7.7.3" + tinyglobby: "npm:^0.2.15" + ts-api-utils: "npm:^2.5.0" + peerDependencies: + typescript: ">=4.8.4 <6.1.0" + checksum: 10c0/9a24a3c47646886cc5c9bd984afdf5974d07033a5743318a4c649f9595d620cc1a409366ecb87beaddb9cd4b32e1fc7fc18c0531bda08eacd78025c3636d6c72 + languageName: node + linkType: hard + +"@typescript-eslint/utils@npm:8.60.0": + version: 8.60.0 + resolution: "@typescript-eslint/utils@npm:8.60.0" + dependencies: + "@eslint-community/eslint-utils": "npm:^4.9.1" + "@typescript-eslint/scope-manager": "npm:8.60.0" + "@typescript-eslint/types": "npm:8.60.0" + "@typescript-eslint/typescript-estree": "npm:8.60.0" + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: ">=4.8.4 <6.1.0" + checksum: 10c0/c1fe25bc90a62d9f67c1dd3a23bf32c2b1d3fc81bfa34cb41e5cadaeaa825c83c7c69a4abc9bc132f1ee39c7e71e367271a16c47573ed621421a2fa2f0e98dd0 + languageName: node + linkType: hard + +"@typescript-eslint/visitor-keys@npm:8.60.0": + version: 8.60.0 + resolution: "@typescript-eslint/visitor-keys@npm:8.60.0" + dependencies: + "@typescript-eslint/types": "npm:8.60.0" + eslint-visitor-keys: "npm:^5.0.0" + checksum: 10c0/5ff775fe5352d359e25ed47ce27d8d61dea7aa9aa4d21a3556a9ee02957673e8d4787ad1d0c325977f47cca56ecdce401417864de0c773b6167053fe36bf9e65 + languageName: node + linkType: hard + +"@unrs/resolver-binding-android-arm-eabi@npm:1.12.2": + version: 1.12.2 + resolution: "@unrs/resolver-binding-android-arm-eabi@npm:1.12.2" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + +"@unrs/resolver-binding-android-arm64@npm:1.12.2": + version: 1.12.2 + resolution: "@unrs/resolver-binding-android-arm64@npm:1.12.2" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"@unrs/resolver-binding-darwin-arm64@npm:1.12.2": + version: 1.12.2 + resolution: "@unrs/resolver-binding-darwin-arm64@npm:1.12.2" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"@unrs/resolver-binding-darwin-x64@npm:1.12.2": + version: 1.12.2 + resolution: "@unrs/resolver-binding-darwin-x64@npm:1.12.2" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@unrs/resolver-binding-freebsd-x64@npm:1.12.2": + version: 1.12.2 + resolution: "@unrs/resolver-binding-freebsd-x64@npm:1.12.2" + conditions: os=freebsd & cpu=x64 + languageName: node + linkType: hard + +"@unrs/resolver-binding-linux-arm-gnueabihf@npm:1.12.2": + version: 1.12.2 + resolution: "@unrs/resolver-binding-linux-arm-gnueabihf@npm:1.12.2" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"@unrs/resolver-binding-linux-arm-musleabihf@npm:1.12.2": + version: 1.12.2 + resolution: "@unrs/resolver-binding-linux-arm-musleabihf@npm:1.12.2" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"@unrs/resolver-binding-linux-arm64-gnu@npm:1.12.2": + version: 1.12.2 + resolution: "@unrs/resolver-binding-linux-arm64-gnu@npm:1.12.2" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + +"@unrs/resolver-binding-linux-arm64-musl@npm:1.12.2": + version: 1.12.2 + resolution: "@unrs/resolver-binding-linux-arm64-musl@npm:1.12.2" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + +"@unrs/resolver-binding-linux-loong64-gnu@npm:1.12.2": + version: 1.12.2 + resolution: "@unrs/resolver-binding-linux-loong64-gnu@npm:1.12.2" + conditions: os=linux & cpu=loong64 & libc=glibc + languageName: node + linkType: hard + +"@unrs/resolver-binding-linux-loong64-musl@npm:1.12.2": + version: 1.12.2 + resolution: "@unrs/resolver-binding-linux-loong64-musl@npm:1.12.2" + conditions: os=linux & cpu=loong64 & libc=musl + languageName: node + linkType: hard + +"@unrs/resolver-binding-linux-ppc64-gnu@npm:1.12.2": + version: 1.12.2 + resolution: "@unrs/resolver-binding-linux-ppc64-gnu@npm:1.12.2" + conditions: os=linux & cpu=ppc64 & libc=glibc + languageName: node + linkType: hard + +"@unrs/resolver-binding-linux-riscv64-gnu@npm:1.12.2": + version: 1.12.2 + resolution: "@unrs/resolver-binding-linux-riscv64-gnu@npm:1.12.2" + conditions: os=linux & cpu=riscv64 & libc=glibc + languageName: node + linkType: hard + +"@unrs/resolver-binding-linux-riscv64-musl@npm:1.12.2": + version: 1.12.2 + resolution: "@unrs/resolver-binding-linux-riscv64-musl@npm:1.12.2" + conditions: os=linux & cpu=riscv64 & libc=musl + languageName: node + linkType: hard + +"@unrs/resolver-binding-linux-s390x-gnu@npm:1.12.2": + version: 1.12.2 + resolution: "@unrs/resolver-binding-linux-s390x-gnu@npm:1.12.2" + conditions: os=linux & cpu=s390x & libc=glibc + languageName: node + linkType: hard + +"@unrs/resolver-binding-linux-x64-gnu@npm:1.12.2": + version: 1.12.2 + resolution: "@unrs/resolver-binding-linux-x64-gnu@npm:1.12.2" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + +"@unrs/resolver-binding-linux-x64-musl@npm:1.12.2": + version: 1.12.2 + resolution: "@unrs/resolver-binding-linux-x64-musl@npm:1.12.2" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + +"@unrs/resolver-binding-openharmony-arm64@npm:1.12.2": + version: 1.12.2 + resolution: "@unrs/resolver-binding-openharmony-arm64@npm:1.12.2" + conditions: os=openharmony & cpu=arm64 + languageName: node + linkType: hard + +"@unrs/resolver-binding-wasm32-wasi@npm:1.12.2": + version: 1.12.2 + resolution: "@unrs/resolver-binding-wasm32-wasi@npm:1.12.2" + dependencies: + "@emnapi/core": "npm:1.10.0" + "@emnapi/runtime": "npm:1.10.0" + "@napi-rs/wasm-runtime": "npm:^1.1.4" + conditions: cpu=wasm32 + languageName: node + linkType: hard + +"@unrs/resolver-binding-win32-arm64-msvc@npm:1.12.2": + version: 1.12.2 + resolution: "@unrs/resolver-binding-win32-arm64-msvc@npm:1.12.2" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"@unrs/resolver-binding-win32-ia32-msvc@npm:1.12.2": + version: 1.12.2 + resolution: "@unrs/resolver-binding-win32-ia32-msvc@npm:1.12.2" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + +"@unrs/resolver-binding-win32-x64-msvc@npm:1.12.2": + version: 1.12.2 + resolution: "@unrs/resolver-binding-win32-x64-msvc@npm:1.12.2" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + +"@vitest/coverage-v8@npm:^4.1.7": + version: 4.1.7 + resolution: "@vitest/coverage-v8@npm:4.1.7" + dependencies: + "@bcoe/v8-coverage": "npm:^1.0.2" + "@vitest/utils": "npm:4.1.7" + ast-v8-to-istanbul: "npm:^1.0.0" + istanbul-lib-coverage: "npm:^3.2.2" + istanbul-lib-report: "npm:^3.0.1" + istanbul-reports: "npm:^3.2.0" + magicast: "npm:^0.5.2" + obug: "npm:^2.1.1" + std-env: "npm:^4.0.0-rc.1" + tinyrainbow: "npm:^3.1.0" + peerDependencies: + "@vitest/browser": 4.1.7 + vitest: 4.1.7 + peerDependenciesMeta: + "@vitest/browser": + optional: true + checksum: 10c0/288fa77cfec00d84528154be90727ee0a868b91a32847b57e078fa4f3061711a53036a68d78bb4ea15e5c65b4644af6d2b7ad28b68b9301e9145426cdc27c0cd + languageName: node + linkType: hard + +"@vitest/expect@npm:4.1.7": + version: 4.1.7 + resolution: "@vitest/expect@npm:4.1.7" + dependencies: + "@standard-schema/spec": "npm:^1.1.0" + "@types/chai": "npm:^5.2.2" + "@vitest/spy": "npm:4.1.7" + "@vitest/utils": "npm:4.1.7" + chai: "npm:^6.2.2" + tinyrainbow: "npm:^3.1.0" + checksum: 10c0/1a72387c6d3cac1e12cd4df382e666d96560b38001ea0133f1e0a22825f71ccf1640ccce13244296b0054c15cf04442f3adbd67dfc57fe542bd35a46cd805487 + languageName: node + linkType: hard + +"@vitest/mocker@npm:4.1.7": + version: 4.1.7 + resolution: "@vitest/mocker@npm:4.1.7" + dependencies: + "@vitest/spy": "npm:4.1.7" + estree-walker: "npm:^3.0.3" + magic-string: "npm:^0.30.21" + peerDependencies: + msw: ^2.4.9 + vite: ^6.0.0 || ^7.0.0 || ^8.0.0 + peerDependenciesMeta: + msw: + optional: true + vite: + optional: true + checksum: 10c0/e03dbbba435543e3cfa5e034ba8ade371de5e398255f75366ebc370ff8dd78d45f7d7cc9daa76eb1d399b31e659e47d3cbb710566e64ceeeba3f99b418e4b955 + languageName: node + linkType: hard + +"@vitest/pretty-format@npm:4.1.7": + version: 4.1.7 + resolution: "@vitest/pretty-format@npm:4.1.7" + dependencies: + tinyrainbow: "npm:^3.1.0" + checksum: 10c0/49ef801171708e3a92214e8720efbedbd6e0e6baf17971aaf4feb7422e5c9eba82262c24a9e6dd4d41a31fae77bd31d5b37cf140d13e0ac4ce29a7457bdc692f + languageName: node + linkType: hard + +"@vitest/runner@npm:4.1.7": + version: 4.1.7 + resolution: "@vitest/runner@npm:4.1.7" + dependencies: + "@vitest/utils": "npm:4.1.7" + pathe: "npm:^2.0.3" + checksum: 10c0/63474c6fc088d75b5d7fe735195504f923c694b83a22eb9caa53d6486c923974304c2e3ef4d5bcd808d88082174f38434be320fc4fe649a8cf33f0459a0576e3 + languageName: node + linkType: hard + +"@vitest/snapshot@npm:4.1.7": + version: 4.1.7 + resolution: "@vitest/snapshot@npm:4.1.7" + dependencies: + "@vitest/pretty-format": "npm:4.1.7" + "@vitest/utils": "npm:4.1.7" + magic-string: "npm:^0.30.21" + pathe: "npm:^2.0.3" + checksum: 10c0/6fa49c4242a4acc0557ee6a20552db41f4f4c9d2d4c05993181c3f5f19e66579e08f63d34f792b79400547ab791ef500a9955b77390c381e45c3bb8e33717793 + languageName: node + linkType: hard + +"@vitest/spy@npm:4.1.7": + version: 4.1.7 + resolution: "@vitest/spy@npm:4.1.7" + checksum: 10c0/be2a95d5c5c438b57c9b33cef1289fb02659214754b5e946cb4b8183e2b5089e49e3fda6ca05981f3ea9872b207595db109e25072668c0a671203f69fddbbe99 + languageName: node + linkType: hard + +"@vitest/utils@npm:4.1.7": + version: 4.1.7 + resolution: "@vitest/utils@npm:4.1.7" + dependencies: + "@vitest/pretty-format": "npm:4.1.7" + convert-source-map: "npm:^2.0.0" + tinyrainbow: "npm:^3.1.0" + checksum: 10c0/aa0079d8923506300527dc23ff68cf090ffcb2c6a9549e598ae22ba0eb8a6bb4448b10724b38bc6b077f9957333302a857d791ad2f7abd807bb6263c9a218833 + languageName: node + linkType: hard + +"abbrev@npm:^4.0.0": + version: 4.0.0 + resolution: "abbrev@npm:4.0.0" + checksum: 10c0/b4cc16935235e80702fc90192e349e32f8ef0ed151ef506aa78c81a7c455ec18375c4125414b99f84b2e055199d66383e787675f0bcd87da7a4dbd59f9eac1d5 + languageName: node + linkType: hard + +"acorn-jsx@npm:^5.3.2": + version: 5.3.2 + resolution: "acorn-jsx@npm:5.3.2" + peerDependencies: + acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 + checksum: 10c0/4c54868fbef3b8d58927d5e33f0a4de35f59012fe7b12cf9dfbb345fb8f46607709e1c4431be869a23fb63c151033d84c4198fa9f79385cec34fcb1dd53974c1 + languageName: node + linkType: hard + +"acorn@npm:^8.16.0, acorn@npm:^8.5.0": + version: 8.16.0 + resolution: "acorn@npm:8.16.0" + bin: + acorn: bin/acorn + checksum: 10c0/c9c52697227661b68d0debaf972222d4f622aa06b185824164e153438afa7b08273432ca43ea792cadb24dada1d46f6f6bb1ef8de9956979288cc1b96bf9914e + languageName: node + linkType: hard + +"agent-base@npm:6": + version: 6.0.2 + resolution: "agent-base@npm:6.0.2" + dependencies: + debug: "npm:4" + checksum: 10c0/dc4f757e40b5f3e3d674bc9beb4f1048f4ee83af189bae39be99f57bf1f48dde166a8b0a5342a84b5944ee8e6ed1e5a9d801858f4ad44764e84957122fe46261 + languageName: node + linkType: hard + +"agent-base@npm:^7.1.2": + version: 7.1.4 + resolution: "agent-base@npm:7.1.4" + checksum: 10c0/c2c9ab7599692d594b6a161559ada307b7a624fa4c7b03e3afdb5a5e31cd0e53269115b620fcab024c5ac6a6f37fa5eb2e004f076ad30f5f7e6b8b671f7b35fe + languageName: node + linkType: hard + +"ajv@npm:^6.14.0": + version: 6.15.0 + resolution: "ajv@npm:6.15.0" + dependencies: + fast-deep-equal: "npm:^3.1.1" + fast-json-stable-stringify: "npm:^2.0.0" + json-schema-traverse: "npm:^0.4.1" + uri-js: "npm:^4.2.2" + checksum: 10c0/67966499dd272ecde1c2e467084411132891523d057487587879d39ac04207f4351b7b2324c83198013967fbfa632c1612adc960114a30770fbe07a0773b32c2 + languageName: node + linkType: hard + +"ansi-regex@npm:^6.2.2": + version: 6.2.2 + resolution: "ansi-regex@npm:6.2.2" + checksum: 10c0/05d4acb1d2f59ab2cf4b794339c7b168890d44dda4bf0ce01152a8da0213aca207802f930442ce8cd22d7a92f44907664aac6508904e75e038fa944d2601b30f + languageName: node + linkType: hard + +"array-timsort@npm:^1.0.3": + version: 1.0.3 + resolution: "array-timsort@npm:1.0.3" + checksum: 10c0/bd3a1707b621947265c89867e67c9102b9b9f4c50f5b3974220112290d8b60d26ce60595edec5deed3325207b759d70b758bed3cd310b5ddadb835657ffb6d12 + languageName: node + linkType: hard + +"assertion-error@npm:^2.0.1": + version: 2.0.1 + resolution: "assertion-error@npm:2.0.1" + checksum: 10c0/bbbcb117ac6480138f8c93cf7f535614282dea9dc828f540cdece85e3c665e8f78958b96afac52f29ff883c72638e6a87d469ecc9fe5bc902df03ed24a55dba8 + languageName: node + linkType: hard + +"ast-v8-to-istanbul@npm:^1.0.0": + version: 1.0.2 + resolution: "ast-v8-to-istanbul@npm:1.0.2" + dependencies: + "@jridgewell/trace-mapping": "npm:^0.3.31" + estree-walker: "npm:^3.0.3" + js-tokens: "npm:^10.0.0" + checksum: 10c0/52bc4e105a20fe5b678b1eeeef6b480b92bc9fba5dd3ce448394f0a7cac15106e23685ac3a9f85f63dd22bc6ad25ea94dc77c4d8ffe0713fba4df7f47ec4b5e2 + languageName: node + linkType: hard + +"async-function@npm:^1.0.0": + version: 1.0.0 + resolution: "async-function@npm:1.0.0" + checksum: 10c0/669a32c2cb7e45091330c680e92eaeb791bc1d4132d827591e499cd1f776ff5a873e77e5f92d0ce795a8d60f10761dec9ddfe7225a5de680f5d357f67b1aac73 + languageName: node + linkType: hard + +"async-generator-function@npm:^1.0.0": + version: 1.0.0 + resolution: "async-generator-function@npm:1.0.0" + checksum: 10c0/2c50ef856c543ad500d8d8777d347e3c1ba623b93e99c9263ecc5f965c1b12d2a140e2ab6e43c3d0b85366110696f28114649411cbcd10b452a92a2318394186 + languageName: node + linkType: hard + +"asynckit@npm:^0.4.0": + version: 0.4.0 + resolution: "asynckit@npm:0.4.0" + checksum: 10c0/d73e2ddf20c4eb9337e1b3df1a0f6159481050a5de457c55b14ea2e5cb6d90bb69e004c9af54737a5ee0917fcf2c9e25de67777bbe58261847846066ba75bc9d + languageName: node + linkType: hard + +"axios-mock-adapter@npm:^2.1.0": + version: 2.1.0 + resolution: "axios-mock-adapter@npm:2.1.0" + dependencies: + fast-deep-equal: "npm:^3.1.3" + is-buffer: "npm:^2.0.5" + peerDependencies: + axios: ">= 0.17.0" + checksum: 10c0/37ebd88940245f4e027578734613417f024d06e2279edb1a188ccdf685a15ab4fdfbac7cfe681731722a1ba6c0a5ec15ef0145f79a53687181e4aacbe45e1730 + languageName: node + linkType: hard + +"axios@npm:^1.16.1": + version: 1.16.1 + resolution: "axios@npm:1.16.1" + dependencies: + follow-redirects: "npm:^1.16.0" + form-data: "npm:^4.0.5" + https-proxy-agent: "npm:^5.0.1" + proxy-from-env: "npm:^2.1.0" + checksum: 10c0/2f77e37e6552bbff8a772d058fb09500198e9188c6b20dc799d82dbe12a8cb506f6eed4e4e62a9ba612a35cbab496faa26d68f9bff14a53af6d15c3e136391a7 + languageName: node + linkType: hard + +"balanced-match@npm:^4.0.2": + version: 4.0.4 + resolution: "balanced-match@npm:4.0.4" + checksum: 10c0/07e86102a3eb2ee2a6a1a89164f29d0dbaebd28f2ca3f5ca786f36b8b23d9e417eb3be45a4acf754f837be5ac0a2317de90d3fcb7f4f4dc95720a1f36b26a17b + languageName: node + linkType: hard + +"base64-js@npm:^1.3.0": + version: 1.5.1 + resolution: "base64-js@npm:1.5.1" + checksum: 10c0/f23823513b63173a001030fae4f2dabe283b99a9d324ade3ad3d148e218134676f1ee8568c877cd79ec1c53158dcf2d2ba527a97c606618928ba99dd930102bf + languageName: node + linkType: hard + +"bignumber.js@npm:^9.0.0": + version: 9.3.1 + resolution: "bignumber.js@npm:9.3.1" + checksum: 10c0/61342ba5fe1c10887f0ecf5be02ff6709271481aff48631f86b4d37d55a99b87ce441cfd54df3d16d10ee07ceab7e272fc0be430c657ffafbbbf7b7d631efb75 + languageName: node + linkType: hard + +"blaise-api-node-client@workspace:.": + version: 0.0.0-use.local + resolution: "blaise-api-node-client@workspace:." + dependencies: + "@eslint/js": "npm:^10.0.1" + "@types/node": "npm:^25.9.1" + "@vitest/coverage-v8": "npm:^4.1.7" + axios: "npm:^1.16.1" + axios-mock-adapter: "npm:^2.1.0" + blaise-iap-node-provider: "git+https://github.com/ONSdigital/blaise-iap-node-provider.git#BLAIS5-5177" + cspell: "npm:^10.0.0" + eslint: "npm:^10.4.0" + eslint-config-prettier: "npm:^10.1.8" + eslint-import-resolver-typescript: "npm:^4.4.4" + eslint-plugin-import-x: "npm:^4.16.2" + eslint-plugin-jsonc: "npm:^3.1.2" + globals: "npm:^17.6.0" + jiti: "npm:^2.7.0" + jsonc-eslint-parser: "npm:^3.1.0" + knip: "npm:^6.14.2" + prettier: "npm:^3.8.3" + publint: "npm:^0.3.21" + typescript: "npm:^6.0.3" + typescript-eslint: "npm:^8.60.0" + vitest: "npm:^4.1.7" + languageName: unknown + linkType: soft + +"blaise-iap-node-provider@git+https://github.com/ONSdigital/blaise-iap-node-provider.git#BLAIS5-5177": + version: 1.0.0 + resolution: "blaise-iap-node-provider@https://github.com/ONSdigital/blaise-iap-node-provider.git#commit=1ebe030e5d8006eb25768a9ee7ee814c6ddac1a5" + dependencies: + google-auth-library: "npm:^10.6.2" + checksum: 10c0/d414e550159dfa7d6740b7efb4112f7789173d53af0f9d50f3bd53a7a047106dafa71ea7111ec3f6b287fa88126fcc7dc3892b95e6d707a94544c0e51c06aa2d + languageName: node + linkType: hard + +"brace-expansion@npm:^5.0.5": + version: 5.0.6 + resolution: "brace-expansion@npm:5.0.6" + dependencies: + balanced-match: "npm:^4.0.2" + checksum: 10c0/8c919869b90f61d533b341d3340be5ee4413232ea89b8246cbc2f38eb014f1d8182785c98a006eaf6111d02dc9eeffefdc240d5ac158625b2ed084dccd4bbf9b + languageName: node + linkType: hard + +"buffer-equal-constant-time@npm:^1.0.1": + version: 1.0.1 + resolution: "buffer-equal-constant-time@npm:1.0.1" + checksum: 10c0/fb2294e64d23c573d0dd1f1e7a466c3e978fe94a4e0f8183937912ca374619773bef8e2aceb854129d2efecbbc515bbd0cc78d2734a3e3031edb0888531bbc8e + languageName: node + linkType: hard + +"call-bind-apply-helpers@npm:^1.0.1, call-bind-apply-helpers@npm:^1.0.2": + version: 1.0.2 + resolution: "call-bind-apply-helpers@npm:1.0.2" + dependencies: + es-errors: "npm:^1.3.0" + function-bind: "npm:^1.1.2" + checksum: 10c0/47bd9901d57b857590431243fea704ff18078b16890a6b3e021e12d279bbf211d039155e27d7566b374d49ee1f8189344bac9833dec7a20cdec370506361c938 + languageName: node + linkType: hard + +"chai@npm:^6.2.2": + version: 6.2.2 + resolution: "chai@npm:6.2.2" + checksum: 10c0/e6c69e5f0c11dffe6ea13d0290936ebb68fcc1ad688b8e952e131df6a6d5797d5e860bc55cef1aca2e950c3e1f96daf79e9d5a70fb7dbaab4e46355e2635ed53 + languageName: node + linkType: hard + +"chalk-template@npm:^1.1.2": + version: 1.1.2 + resolution: "chalk-template@npm:1.1.2" + dependencies: + chalk: "npm:^5.2.0" + checksum: 10c0/6d29b185c613cb117ae87c67cef80f531ae860ffb798f94dbf46597c3abaf69eb55bea5e57a99713086933c461ccff918bb70c6af491b83b109654da8b2c006f + languageName: node + linkType: hard + +"chalk@npm:^5.2.0, chalk@npm:^5.6.2": + version: 5.6.2 + resolution: "chalk@npm:5.6.2" + checksum: 10c0/99a4b0f0e7991796b1e7e3f52dceb9137cae2a9dfc8fc0784a550dc4c558e15ab32ed70b14b21b52beb2679b4892b41a0aa44249bcb996f01e125d58477c6976 + languageName: node + linkType: hard + +"chownr@npm:^3.0.0": + version: 3.0.0 + resolution: "chownr@npm:3.0.0" + checksum: 10c0/43925b87700f7e3893296c8e9c56cc58f926411cce3a6e5898136daaf08f08b9a8eb76d37d3267e707d0dcc17aed2e2ebdf5848c0c3ce95cf910a919935c1b10 + languageName: node + linkType: hard + +"combined-stream@npm:^1.0.8": + version: 1.0.8 + resolution: "combined-stream@npm:1.0.8" + dependencies: + delayed-stream: "npm:~1.0.0" + checksum: 10c0/0dbb829577e1b1e839fa82b40c07ffaf7de8a09b935cadd355a73652ae70a88b4320db322f6634a4ad93424292fa80973ac6480986247f1734a1137debf271d5 + languageName: node + linkType: hard + +"commander@npm:^14.0.3": + version: 14.0.3 + resolution: "commander@npm:14.0.3" + checksum: 10c0/755652564bbf56ff2ff083313912b326450d3f8d8c85f4b71416539c9a05c3c67dbd206821ca72635bf6b160e2afdefcb458e86b317827d5cb333b69ce7f1a24 + languageName: node + linkType: hard + +"comment-json@npm:^4.6.2": + version: 4.6.2 + resolution: "comment-json@npm:4.6.2" + dependencies: + array-timsort: "npm:^1.0.3" + esprima: "npm:^4.0.1" + checksum: 10c0/8965ec6c40612aa0cc66d4324ff5819cf205c997f3a84dd82dffe4e6398449e37bbc5765184bc9149e95d15994f0c2740cee82284828fa1c0f733a669022d3dd + languageName: node + linkType: hard + +"comment-parser@npm:^1.4.1": + version: 1.4.7 + resolution: "comment-parser@npm:1.4.7" + checksum: 10c0/09a8e6cc4a9f92e8828bbd8819d8b025cb1bf03d8d611e372627380f55b6401bb0009cf1b7940a028794f150891bfe855185b94173eb89f14b824e847335278d + languageName: node + linkType: hard + +"convert-source-map@npm:^2.0.0": + version: 2.0.0 + resolution: "convert-source-map@npm:2.0.0" + checksum: 10c0/8f2f7a27a1a011cc6cc88cc4da2d7d0cfa5ee0369508baae3d98c260bb3ac520691464e5bbe4ae7cdf09860c1d69ecc6f70c63c6e7c7f7e3f18ec08484dc7d9b + languageName: node + linkType: hard + +"cross-spawn@npm:^7.0.6": + version: 7.0.6 + resolution: "cross-spawn@npm:7.0.6" + dependencies: + path-key: "npm:^3.1.0" + shebang-command: "npm:^2.0.0" + which: "npm:^2.0.1" + checksum: 10c0/053ea8b2135caff68a9e81470e845613e374e7309a47731e81639de3eaeb90c3d01af0e0b44d2ab9d50b43467223b88567dfeb3262db942dc063b9976718ffc1 + languageName: node + linkType: hard + +"cspell-config-lib@npm:10.0.0": + version: 10.0.0 + resolution: "cspell-config-lib@npm:10.0.0" + dependencies: + "@cspell/cspell-types": "npm:10.0.0" + comment-json: "npm:^4.6.2" + smol-toml: "npm:^1.6.1" + yaml: "npm:^2.8.3" + checksum: 10c0/85737bbcd860db79772af3895d4d8f368c6d312dfcfbe7f03fc6e788ed48567639ef9c49f99f30382d6e849a9631dcad0db4e136054993d29f5e5f990125423d + languageName: node + linkType: hard + +"cspell-dictionary@npm:10.0.0": + version: 10.0.0 + resolution: "cspell-dictionary@npm:10.0.0" + dependencies: + "@cspell/cspell-performance-monitor": "npm:10.0.0" + "@cspell/cspell-pipe": "npm:10.0.0" + "@cspell/cspell-types": "npm:10.0.0" + cspell-trie-lib: "npm:10.0.0" + fast-equals: "npm:^6.0.0" + checksum: 10c0/1b74b1fa3a10906ad89ee3089b854f5d9ac979bee2875c771abb071cc13fc84d3c491711e261e4bcf39a78c5c73f8bdde48fc0ed4cb5e0c29d416bf079bd261c + languageName: node + linkType: hard + +"cspell-gitignore@npm:10.0.0": + version: 10.0.0 + resolution: "cspell-gitignore@npm:10.0.0" + dependencies: + "@cspell/url": "npm:10.0.0" + cspell-glob: "npm:10.0.0" + cspell-io: "npm:10.0.0" + bin: + cspell-gitignore: bin.mjs + checksum: 10c0/ac2558253a75702ab7bcac981be058a644ea3b407bf4e63ce3957016a6df38108ffb3afd3b7fe964b4a21f3c488ef25ca2f9fc6df56323350edecac19472ddc8 + languageName: node + linkType: hard + +"cspell-glob@npm:10.0.0": + version: 10.0.0 + resolution: "cspell-glob@npm:10.0.0" + dependencies: + "@cspell/url": "npm:10.0.0" + picomatch: "npm:^4.0.4" + checksum: 10c0/029a5dc601126e6ad19b41525a2c6aac21c8f052b0459b553610272b4b5bfa6b3c322f48f0ab88bdbbb3a4c68c2c29843f1db0415ccfcf62c974a6e3fa5b5ed7 + languageName: node + linkType: hard + +"cspell-grammar@npm:10.0.0": + version: 10.0.0 + resolution: "cspell-grammar@npm:10.0.0" + dependencies: + "@cspell/cspell-pipe": "npm:10.0.0" + "@cspell/cspell-types": "npm:10.0.0" + bin: + cspell-grammar: bin.mjs + checksum: 10c0/c85d1026fbe6dad5d0fdf16eca6a4a5c8f1854290f3e5f2bc5ccd36eafcc2b19f1928d29769784bc63dfa5c861a0a35e80aa6cc74a0a52d94becbf248505ad71 + languageName: node + linkType: hard + +"cspell-io@npm:10.0.0": + version: 10.0.0 + resolution: "cspell-io@npm:10.0.0" + dependencies: + "@cspell/cspell-service-bus": "npm:10.0.0" + "@cspell/url": "npm:10.0.0" + checksum: 10c0/c2ad84c3694542e5c99fe94ae8977603817852d4f91f215755e45adaaa4a305e24f13c075318b415cb57ebe55667c551b5ecffd97c93302db07c8d342175ffe2 + languageName: node + linkType: hard + +"cspell-lib@npm:10.0.0": + version: 10.0.0 + resolution: "cspell-lib@npm:10.0.0" + dependencies: + "@cspell/cspell-bundled-dicts": "npm:10.0.0" + "@cspell/cspell-performance-monitor": "npm:10.0.0" + "@cspell/cspell-pipe": "npm:10.0.0" + "@cspell/cspell-resolver": "npm:10.0.0" + "@cspell/cspell-types": "npm:10.0.0" + "@cspell/dynamic-import": "npm:10.0.0" + "@cspell/filetypes": "npm:10.0.0" + "@cspell/rpc": "npm:10.0.0" + "@cspell/strong-weak-map": "npm:10.0.0" + "@cspell/url": "npm:10.0.0" + cspell-config-lib: "npm:10.0.0" + cspell-dictionary: "npm:10.0.0" + cspell-glob: "npm:10.0.0" + cspell-grammar: "npm:10.0.0" + cspell-io: "npm:10.0.0" + cspell-trie-lib: "npm:10.0.0" + env-paths: "npm:^4.0.0" + gensequence: "npm:^8.0.8" + import-fresh: "npm:^4.0.0" + resolve-from: "npm:^5.0.0" + vscode-languageserver-textdocument: "npm:^1.0.12" + vscode-uri: "npm:^3.1.0" + xdg-basedir: "npm:^5.1.0" + checksum: 10c0/9d267bdc454f5f78e0b8580b4b2974b00c997014cfe570020a1ba12f8a416bd2337b6efc743cea2e06481ab33a5d91c6f01d8cf1a95553521b571d6eebed995f + languageName: node + linkType: hard + +"cspell-trie-lib@npm:10.0.0": + version: 10.0.0 + resolution: "cspell-trie-lib@npm:10.0.0" + peerDependencies: + "@cspell/cspell-types": 10.0.0 + checksum: 10c0/9f163593c17e812a3b1e63b21b7632275ecba27321a1eaee433c97ef31b2019f4e00c80d5f8a54be9dbb43fb703eb1fbac0adcce30f9426a419fcee47f3b0d1f + languageName: node + linkType: hard + +"cspell@npm:^10.0.0": + version: 10.0.0 + resolution: "cspell@npm:10.0.0" + dependencies: + "@cspell/cspell-json-reporter": "npm:10.0.0" + "@cspell/cspell-performance-monitor": "npm:10.0.0" + "@cspell/cspell-pipe": "npm:10.0.0" + "@cspell/cspell-types": "npm:10.0.0" + "@cspell/cspell-worker": "npm:10.0.0" + "@cspell/dynamic-import": "npm:10.0.0" + "@cspell/url": "npm:10.0.0" + ansi-regex: "npm:^6.2.2" + chalk: "npm:^5.6.2" + chalk-template: "npm:^1.1.2" + commander: "npm:^14.0.3" + cspell-config-lib: "npm:10.0.0" + cspell-dictionary: "npm:10.0.0" + cspell-gitignore: "npm:10.0.0" + cspell-glob: "npm:10.0.0" + cspell-io: "npm:10.0.0" + cspell-lib: "npm:10.0.0" + fast-json-stable-stringify: "npm:^2.1.0" + flatted: "npm:^3.4.2" + semver: "npm:^7.7.4" + tinyglobby: "npm:^0.2.15" + bin: + cspell: bin.mjs + cspell-esm: bin.mjs + checksum: 10c0/de7eb540045595acd97306be7d83e1aca74faedc72c883c41eb7cfe319024330d0629086a9b8a46201ef823bc29f0f028e769fec658c16b99d53b9ed5e502840 + languageName: node + linkType: hard + +"data-uri-to-buffer@npm:^4.0.0": + version: 4.0.1 + resolution: "data-uri-to-buffer@npm:4.0.1" + checksum: 10c0/20a6b93107597530d71d4cb285acee17f66bcdfc03fd81040921a81252f19db27588d87fc8fc69e1950c55cfb0bf8ae40d0e5e21d907230813eb5d5a7f9eb45b + languageName: node + linkType: hard + +"debug@npm:4, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.4.1, debug@npm:^4.4.3": + version: 4.4.3 + resolution: "debug@npm:4.4.3" + dependencies: + ms: "npm:^2.1.3" + peerDependenciesMeta: + supports-color: + optional: true + checksum: 10c0/d79136ec6c83ecbefd0f6a5593da6a9c91ec4d7ddc4b54c883d6e71ec9accb5f67a1a5e96d00a328196b5b5c86d365e98d8a3a70856aaf16b4e7b1985e67f5a6 + languageName: node + linkType: hard + +"deep-is@npm:^0.1.3": + version: 0.1.4 + resolution: "deep-is@npm:0.1.4" + checksum: 10c0/7f0ee496e0dff14a573dc6127f14c95061b448b87b995fc96c017ce0a1e66af1675e73f1d6064407975bc4ea6ab679497a29fff7b5b9c4e99cb10797c1ad0b4c + languageName: node + linkType: hard + +"delayed-stream@npm:~1.0.0": + version: 1.0.0 + resolution: "delayed-stream@npm:1.0.0" + checksum: 10c0/d758899da03392e6712f042bec80aa293bbe9e9ff1b2634baae6a360113e708b91326594c8a486d475c69d6259afb7efacdc3537bfcda1c6c648e390ce601b19 + languageName: node + linkType: hard + +"detect-libc@npm:^2.0.3": + version: 2.1.2 + resolution: "detect-libc@npm:2.1.2" + checksum: 10c0/acc675c29a5649fa1fb6e255f993b8ee829e510b6b56b0910666949c80c364738833417d0edb5f90e4e46be17228b0f2b66a010513984e18b15deeeac49369c4 + languageName: node + linkType: hard + +"diff-sequences@npm:^29.6.3": + version: 29.6.3 + resolution: "diff-sequences@npm:29.6.3" + checksum: 10c0/32e27ac7dbffdf2fb0eb5a84efd98a9ad084fbabd5ac9abb8757c6770d5320d2acd172830b28c4add29bb873d59420601dfc805ac4064330ce59b1adfd0593b2 + languageName: node + linkType: hard + +"dunder-proto@npm:^1.0.1": + version: 1.0.1 + resolution: "dunder-proto@npm:1.0.1" + dependencies: + call-bind-apply-helpers: "npm:^1.0.1" + es-errors: "npm:^1.3.0" + gopd: "npm:^1.2.0" + checksum: 10c0/199f2a0c1c16593ca0a145dbf76a962f8033ce3129f01284d48c45ed4e14fea9bbacd7b3610b6cdc33486cef20385ac054948fefc6272fcce645c09468f93031 + languageName: node + linkType: hard + +"ecdsa-sig-formatter@npm:1.0.11, ecdsa-sig-formatter@npm:^1.0.11": + version: 1.0.11 + resolution: "ecdsa-sig-formatter@npm:1.0.11" + dependencies: + safe-buffer: "npm:^5.0.1" + checksum: 10c0/ebfbf19d4b8be938f4dd4a83b8788385da353d63307ede301a9252f9f7f88672e76f2191618fd8edfc2f24679236064176fab0b78131b161ee73daa37125408c + languageName: node + linkType: hard + +"env-paths@npm:^2.2.0": + version: 2.2.1 + resolution: "env-paths@npm:2.2.1" + checksum: 10c0/285325677bf00e30845e330eec32894f5105529db97496ee3f598478e50f008c5352a41a30e5e72ec9de8a542b5a570b85699cd63bd2bc646dbcb9f311d83bc4 + languageName: node + linkType: hard + +"env-paths@npm:^4.0.0": + version: 4.0.0 + resolution: "env-paths@npm:4.0.0" + dependencies: + is-safe-filename: "npm:^0.1.0" + checksum: 10c0/13ee7fa4047786ca28f1fbf2239606f8a53304bdf71bfc426e95f806e429060181205316f2c45b4ac560e81c854ded5a45fd9dc3105414c01d504b3469a1294b + languageName: node + linkType: hard + +"es-define-property@npm:^1.0.1": + version: 1.0.1 + resolution: "es-define-property@npm:1.0.1" + checksum: 10c0/3f54eb49c16c18707949ff25a1456728c883e81259f045003499efba399c08bad00deebf65cccde8c0e07908c1a225c9d472b7107e558f2a48e28d530e34527c + languageName: node + linkType: hard + +"es-errors@npm:^1.3.0": + version: 1.3.0 + resolution: "es-errors@npm:1.3.0" + checksum: 10c0/0a61325670072f98d8ae3b914edab3559b6caa980f08054a3b872052640d91da01d38df55df797fcc916389d77fc92b8d5906cf028f4db46d7e3003abecbca85 + languageName: node + linkType: hard + +"es-module-lexer@npm:^2.0.0": + version: 2.1.0 + resolution: "es-module-lexer@npm:2.1.0" + checksum: 10c0/93bcf2454fa72d67fe3ccd0abef8ce7933f5840a319513418a643dd8e9c6aa8f49709cecfae02ded722805dd327232d30723a807cc52e6809d6ac697c62c29fb + languageName: node + linkType: hard + +"es-object-atoms@npm:^1.0.0, es-object-atoms@npm:^1.1.1": + version: 1.1.2 + resolution: "es-object-atoms@npm:1.1.2" + dependencies: + es-errors: "npm:^1.3.0" + checksum: 10c0/1772861f094f739d6f41b579cfb9a18579daffeb434552a370a5fbef50a32d22227e27b63fdbb757b7ddd429d1b42fe52ccae7966d9302a2ec221b6f1b41bbc4 + languageName: node + linkType: hard + +"es-set-tostringtag@npm:^2.1.0": + version: 2.1.0 + resolution: "es-set-tostringtag@npm:2.1.0" + dependencies: + es-errors: "npm:^1.3.0" + get-intrinsic: "npm:^1.2.6" + has-tostringtag: "npm:^1.0.2" + hasown: "npm:^2.0.2" + checksum: 10c0/ef2ca9ce49afe3931cb32e35da4dcb6d86ab02592cfc2ce3e49ced199d9d0bb5085fc7e73e06312213765f5efa47cc1df553a6a5154584b21448e9fb8355b1af + languageName: node + linkType: hard + +"escape-string-regexp@npm:^4.0.0": + version: 4.0.0 + resolution: "escape-string-regexp@npm:4.0.0" + checksum: 10c0/9497d4dd307d845bd7f75180d8188bb17ea8c151c1edbf6b6717c100e104d629dc2dfb687686181b0f4b7d732c7dfdc4d5e7a8ff72de1b0ca283a75bbb3a9cd9 + languageName: node + linkType: hard + +"eslint-config-prettier@npm:^10.1.8": + version: 10.1.8 + resolution: "eslint-config-prettier@npm:10.1.8" + peerDependencies: + eslint: ">=7.0.0" + bin: + eslint-config-prettier: bin/cli.js + checksum: 10c0/e1bcfadc9eccd526c240056b1e59c5cd26544fe59feb85f38f4f1f116caed96aea0b3b87868e68b3099e55caaac3f2e5b9f58110f85db893e83a332751192682 + languageName: node + linkType: hard + +"eslint-import-context@npm:^0.1.8, eslint-import-context@npm:^0.1.9": + version: 0.1.9 + resolution: "eslint-import-context@npm:0.1.9" + dependencies: + get-tsconfig: "npm:^4.10.1" + stable-hash-x: "npm:^0.2.0" + peerDependencies: + unrs-resolver: ^1.0.0 + peerDependenciesMeta: + unrs-resolver: + optional: true + checksum: 10c0/07851103443b70af681c5988e2702e681ff9b956e055e11d4bd9b2322847fa0d9e8da50c18fc7cb1165106b043f34fbd0384d7011c239465c4645c52132e56f3 + languageName: node + linkType: hard + +"eslint-import-resolver-typescript@npm:^4.4.4": + version: 4.4.4 + resolution: "eslint-import-resolver-typescript@npm:4.4.4" + dependencies: + debug: "npm:^4.4.1" + eslint-import-context: "npm:^0.1.8" + get-tsconfig: "npm:^4.10.1" + is-bun-module: "npm:^2.0.0" + stable-hash-x: "npm:^0.2.0" + tinyglobby: "npm:^0.2.14" + unrs-resolver: "npm:^1.7.11" + peerDependencies: + eslint: "*" + eslint-plugin-import: "*" + eslint-plugin-import-x: "*" + peerDependenciesMeta: + eslint-plugin-import: + optional: true + eslint-plugin-import-x: + optional: true + checksum: 10c0/3bf8ad77c21660f77a0e455555ab179420f68ae7a132906c85a217ccce51cb6680cf70027cab32a358d193e5b9e476f6ba2e595585242aa97d4f6435ca22104e + languageName: node + linkType: hard + +"eslint-json-compat-utils@npm:^0.2.3": + version: 0.2.3 + resolution: "eslint-json-compat-utils@npm:0.2.3" + dependencies: + esquery: "npm:^1.6.0" + peerDependencies: + eslint: "*" + jsonc-eslint-parser: ^2.4.0 || ^3.0.0 + peerDependenciesMeta: + "@eslint/json": + optional: true + checksum: 10c0/3af895890d72228b157f24a94efaee6ae4fb7ec5e7d9e17b51ae477d0efd03a1938ae810b2ae65fdb8a6d81c68c1b49dc207ee2398883a29ffeb1105ecc169ef + languageName: node + linkType: hard + +"eslint-plugin-import-x@npm:^4.16.2": + version: 4.16.2 + resolution: "eslint-plugin-import-x@npm:4.16.2" + dependencies: + "@package-json/types": "npm:^0.0.12" + "@typescript-eslint/types": "npm:^8.56.0" + comment-parser: "npm:^1.4.1" + debug: "npm:^4.4.1" + eslint-import-context: "npm:^0.1.9" + is-glob: "npm:^4.0.3" + minimatch: "npm:^9.0.3 || ^10.1.2" + semver: "npm:^7.7.2" + stable-hash-x: "npm:^0.2.0" + unrs-resolver: "npm:^1.9.2" + peerDependencies: + "@typescript-eslint/utils": ^8.56.0 + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + eslint-import-resolver-node: "*" + peerDependenciesMeta: + "@typescript-eslint/utils": + optional: true + eslint-import-resolver-node: + optional: true + checksum: 10c0/b51b814323a6005c5230fccdffef9a8adc3691ad7a475de6ba635f5ef776fc1f5d1a1c7e65e2c98c6033155cc7e8f8b9f2f507fe31fc038972d535355673e83e + languageName: node + linkType: hard + +"eslint-plugin-jsonc@npm:^3.1.2": + version: 3.1.2 + resolution: "eslint-plugin-jsonc@npm:3.1.2" + dependencies: + "@eslint-community/eslint-utils": "npm:^4.5.1" + "@eslint/core": "npm:^1.0.1" + "@eslint/plugin-kit": "npm:^0.6.0" + "@ota-meshi/ast-token-store": "npm:^0.3.0" + diff-sequences: "npm:^29.6.3" + eslint-json-compat-utils: "npm:^0.2.3" + jsonc-eslint-parser: "npm:^3.1.0" + natural-compare: "npm:^1.4.0" + synckit: "npm:^0.11.12" + peerDependencies: + eslint: ">=9.38.0" + checksum: 10c0/1812555eb1cfb28a67ea29ea444ac25aeb922a7c5fb3b5c85ccb1021d90284270a5ba360d78b9fec821c7d20e50ff2551806a0f8aef1d13307a0f1a271f91ffe + languageName: node + linkType: hard + +"eslint-scope@npm:^9.1.2": + version: 9.1.2 + resolution: "eslint-scope@npm:9.1.2" + dependencies: + "@types/esrecurse": "npm:^4.3.1" + "@types/estree": "npm:^1.0.8" + esrecurse: "npm:^4.3.0" + estraverse: "npm:^5.2.0" + checksum: 10c0/9fb8bca5a73e5741efb6cec84467027b6cb6f4203ff9b43a938e272c5cd30800bde46a5c20dfd1609f840225f0b62b7673be391b20acadf8658ca9fa4729b3dd + languageName: node + linkType: hard + +"eslint-visitor-keys@npm:^3.4.3": + version: 3.4.3 + resolution: "eslint-visitor-keys@npm:3.4.3" + checksum: 10c0/92708e882c0a5ffd88c23c0b404ac1628cf20104a108c745f240a13c332a11aac54f49a22d5762efbffc18ecbc9a580d1b7ad034bf5f3cc3307e5cbff2ec9820 + languageName: node + linkType: hard + +"eslint-visitor-keys@npm:^5.0.0, eslint-visitor-keys@npm:^5.0.1": + version: 5.0.1 + resolution: "eslint-visitor-keys@npm:5.0.1" + checksum: 10c0/16190bdf2cbae40a1109384c94450c526a79b0b9c3cb21e544256ed85ac48a4b84db66b74a6561d20fe6ab77447f150d711c2ad5ad74df4fcc133736bce99678 + languageName: node + linkType: hard + +"eslint@npm:^10.4.0": + version: 10.4.0 + resolution: "eslint@npm:10.4.0" + dependencies: + "@eslint-community/eslint-utils": "npm:^4.8.0" + "@eslint-community/regexpp": "npm:^4.12.2" + "@eslint/config-array": "npm:^0.23.5" + "@eslint/config-helpers": "npm:^0.6.0" + "@eslint/core": "npm:^1.2.1" + "@eslint/plugin-kit": "npm:^0.7.1" + "@humanfs/node": "npm:^0.16.6" + "@humanwhocodes/module-importer": "npm:^1.0.1" + "@humanwhocodes/retry": "npm:^0.4.2" + "@types/estree": "npm:^1.0.6" + ajv: "npm:^6.14.0" + cross-spawn: "npm:^7.0.6" + debug: "npm:^4.3.2" + escape-string-regexp: "npm:^4.0.0" + eslint-scope: "npm:^9.1.2" + eslint-visitor-keys: "npm:^5.0.1" + espree: "npm:^11.2.0" + esquery: "npm:^1.7.0" + esutils: "npm:^2.0.2" + fast-deep-equal: "npm:^3.1.3" + file-entry-cache: "npm:^8.0.0" + find-up: "npm:^5.0.0" + glob-parent: "npm:^6.0.2" + ignore: "npm:^5.2.0" + imurmurhash: "npm:^0.1.4" + is-glob: "npm:^4.0.0" + json-stable-stringify-without-jsonify: "npm:^1.0.1" + minimatch: "npm:^10.2.4" + natural-compare: "npm:^1.4.0" + optionator: "npm:^0.9.3" + peerDependencies: + jiti: "*" + peerDependenciesMeta: + jiti: + optional: true + bin: + eslint: bin/eslint.js + checksum: 10c0/6bf644dc08fa5a6b23157d23a4a4638d45823d03a67da1daac8dc1085b03934fa98013efd2eac2cd6ec90fe88d36b336bdf38d5f000325f22d823a15f2031426 + languageName: node + linkType: hard + +"espree@npm:^11.2.0": + version: 11.2.0 + resolution: "espree@npm:11.2.0" + dependencies: + acorn: "npm:^8.16.0" + acorn-jsx: "npm:^5.3.2" + eslint-visitor-keys: "npm:^5.0.1" + checksum: 10c0/cf87e18ffd9dc113eb8d16588e7757701bc10c9934a71cce8b89c2611d51672681a918307bd6b19ac3ccd0e7ba1cbccc2f815b36b52fa7e73097b251014c3d81 + languageName: node + linkType: hard + +"esprima@npm:^4.0.1": + version: 4.0.1 + resolution: "esprima@npm:4.0.1" + bin: + esparse: ./bin/esparse.js + esvalidate: ./bin/esvalidate.js + checksum: 10c0/ad4bab9ead0808cf56501750fd9d3fb276f6b105f987707d059005d57e182d18a7c9ec7f3a01794ebddcca676773e42ca48a32d67a250c9d35e009ca613caba3 + languageName: node + linkType: hard + +"esquery@npm:^1.6.0, esquery@npm:^1.7.0": + version: 1.7.0 + resolution: "esquery@npm:1.7.0" + dependencies: + estraverse: "npm:^5.1.0" + checksum: 10c0/77d5173db450b66f3bc685d11af4c90cffeedb340f34a39af96d43509a335ce39c894fd79233df32d38f5e4e219fa0f7076f6ec90bae8320170ba082c0db4793 + languageName: node + linkType: hard + +"esrecurse@npm:^4.3.0": + version: 4.3.0 + resolution: "esrecurse@npm:4.3.0" + dependencies: + estraverse: "npm:^5.2.0" + checksum: 10c0/81a37116d1408ded88ada45b9fb16dbd26fba3aadc369ce50fcaf82a0bac12772ebd7b24cd7b91fc66786bf2c1ac7b5f196bc990a473efff972f5cb338877cf5 + languageName: node + linkType: hard + +"estraverse@npm:^5.1.0, estraverse@npm:^5.2.0": + version: 5.3.0 + resolution: "estraverse@npm:5.3.0" + checksum: 10c0/1ff9447b96263dec95d6d67431c5e0771eb9776427421260a3e2f0fdd5d6bd4f8e37a7338f5ad2880c9f143450c9b1e4fc2069060724570a49cf9cf0312bd107 + languageName: node + linkType: hard + +"estree-walker@npm:^3.0.3": + version: 3.0.3 + resolution: "estree-walker@npm:3.0.3" + dependencies: + "@types/estree": "npm:^1.0.0" + checksum: 10c0/c12e3c2b2642d2bcae7d5aa495c60fa2f299160946535763969a1c83fc74518ffa9c2cd3a8b69ac56aea547df6a8aac25f729a342992ef0bbac5f1c73e78995d + languageName: node + linkType: hard + +"esutils@npm:^2.0.2": + version: 2.0.3 + resolution: "esutils@npm:2.0.3" + checksum: 10c0/9a2fe69a41bfdade834ba7c42de4723c97ec776e40656919c62cbd13607c45e127a003f05f724a1ea55e5029a4cf2de444b13009f2af71271e42d93a637137c7 + languageName: node + linkType: hard + +"expect-type@npm:^1.3.0": + version: 1.3.0 + resolution: "expect-type@npm:1.3.0" + checksum: 10c0/8412b3fe4f392c420ab41dae220b09700e4e47c639a29ba7ba2e83cc6cffd2b4926f7ac9e47d7e277e8f4f02acda76fd6931cb81fd2b382fa9477ef9ada953fd + languageName: node + linkType: hard + +"exponential-backoff@npm:^3.1.1": + version: 3.1.3 + resolution: "exponential-backoff@npm:3.1.3" + checksum: 10c0/77e3ae682b7b1f4972f563c6dbcd2b0d54ac679e62d5d32f3e5085feba20483cf28bd505543f520e287a56d4d55a28d7874299941faf637e779a1aa5994d1267 + languageName: node + linkType: hard + +"extend@npm:^3.0.2": + version: 3.0.2 + resolution: "extend@npm:3.0.2" + checksum: 10c0/73bf6e27406e80aa3e85b0d1c4fd987261e628064e170ca781125c0b635a3dabad5e05adbf07595ea0cf1e6c5396cacb214af933da7cbaf24fe75ff14818e8f9 + languageName: node + linkType: hard + +"fast-deep-equal@npm:^3.1.1, fast-deep-equal@npm:^3.1.3": + version: 3.1.3 + resolution: "fast-deep-equal@npm:3.1.3" + checksum: 10c0/40dedc862eb8992c54579c66d914635afbec43350afbbe991235fdcb4e3a8d5af1b23ae7e79bef7d4882d0ecee06c3197488026998fb19f72dc95acff1d1b1d0 + languageName: node + linkType: hard + +"fast-equals@npm:^6.0.0": + version: 6.0.0 + resolution: "fast-equals@npm:6.0.0" + checksum: 10c0/aae54699ce848726679a947c8bbea78f2ea0384e4e1ee213c98f10881a17bb376bd11085eda4d6c89db5285635ee2f809b126d773532fcf602be355008a9d5ed + languageName: node + linkType: hard + +"fast-json-stable-stringify@npm:^2.0.0, fast-json-stable-stringify@npm:^2.1.0": + version: 2.1.0 + resolution: "fast-json-stable-stringify@npm:2.1.0" + checksum: 10c0/7f081eb0b8a64e0057b3bb03f974b3ef00135fbf36c1c710895cd9300f13c94ba809bb3a81cf4e1b03f6e5285610a61abbd7602d0652de423144dfee5a389c9b + languageName: node + linkType: hard + +"fast-levenshtein@npm:^2.0.6": + version: 2.0.6 + resolution: "fast-levenshtein@npm:2.0.6" + checksum: 10c0/111972b37338bcb88f7d9e2c5907862c280ebf4234433b95bc611e518d192ccb2d38119c4ac86e26b668d75f7f3894f4ff5c4982899afced7ca78633b08287c4 + languageName: node + linkType: hard + +"fd-package-json@npm:^2.0.0": + version: 2.0.0 + resolution: "fd-package-json@npm:2.0.0" + dependencies: + walk-up-path: "npm:^4.0.0" + checksum: 10c0/a0a48745257bc09c939486608dad9f2ced238f0c64266222cc881618ed4c8f6aa0ccfe45a1e6d4f9ce828509e8d617cec60e2a114851bebb1ff4886dc5ed5112 + languageName: node + linkType: hard + +"fdir@npm:^6.5.0": + version: 6.5.0 + resolution: "fdir@npm:6.5.0" + peerDependencies: + picomatch: ^3 || ^4 + peerDependenciesMeta: + picomatch: + optional: true + checksum: 10c0/e345083c4306b3aed6cb8ec551e26c36bab5c511e99ea4576a16750ddc8d3240e63826cc624f5ae17ad4dc82e68a253213b60d556c11bfad064b7607847ed07f + languageName: node + linkType: hard + +"fetch-blob@npm:^3.1.2, fetch-blob@npm:^3.1.4": + version: 3.2.0 + resolution: "fetch-blob@npm:3.2.0" + dependencies: + node-domexception: "npm:^1.0.0" + web-streams-polyfill: "npm:^3.0.3" + checksum: 10c0/60054bf47bfa10fb0ba6cb7742acec2f37c1f56344f79a70bb8b1c48d77675927c720ff3191fa546410a0442c998d27ab05e9144c32d530d8a52fbe68f843b69 + languageName: node + linkType: hard + +"file-entry-cache@npm:^8.0.0": + version: 8.0.0 + resolution: "file-entry-cache@npm:8.0.0" + dependencies: + flat-cache: "npm:^4.0.0" + checksum: 10c0/9e2b5938b1cd9b6d7e3612bdc533afd4ac17b2fc646569e9a8abbf2eb48e5eb8e316bc38815a3ef6a1b456f4107f0d0f055a614ca613e75db6bf9ff4d72c1638 + languageName: node + linkType: hard + +"find-up@npm:^5.0.0": + version: 5.0.0 + resolution: "find-up@npm:5.0.0" + dependencies: + locate-path: "npm:^6.0.0" + path-exists: "npm:^4.0.0" + checksum: 10c0/062c5a83a9c02f53cdd6d175a37ecf8f87ea5bbff1fdfb828f04bfa021441bc7583e8ebc0872a4c1baab96221fb8a8a275a19809fb93fbc40bd69ec35634069a + languageName: node + linkType: hard + +"flat-cache@npm:^4.0.0": + version: 4.0.1 + resolution: "flat-cache@npm:4.0.1" + dependencies: + flatted: "npm:^3.2.9" + keyv: "npm:^4.5.4" + checksum: 10c0/2c59d93e9faa2523e4fda6b4ada749bed432cfa28c8e251f33b25795e426a1c6dbada777afb1f74fcfff33934fdbdea921ee738fcc33e71adc9d6eca984a1cfc + languageName: node + linkType: hard + +"flatted@npm:^3.2.9, flatted@npm:^3.4.2": + version: 3.4.2 + resolution: "flatted@npm:3.4.2" + checksum: 10c0/a65b67aae7172d6cdf63691be7de6c5cd5adbdfdfe2e9da1a09b617c9512ed794037741ee53d93114276bff3f93cd3b0d97d54f9b316e1e4885dde6e9ffdf7ed + languageName: node + linkType: hard + +"follow-redirects@npm:^1.16.0": + version: 1.16.0 + resolution: "follow-redirects@npm:1.16.0" + peerDependenciesMeta: + debug: + optional: true + checksum: 10c0/a1e2900163e6f1b4d1ed5c221b607f41decbab65534c63fe7e287e40a5d552a6496e7d9d7d976fa4ba77b4c51c11e5e9f683f10b43011ea11e442ff128d0e181 + languageName: node + linkType: hard + +"form-data@npm:^4.0.5": + version: 4.0.5 + resolution: "form-data@npm:4.0.5" + dependencies: + asynckit: "npm:^0.4.0" + combined-stream: "npm:^1.0.8" + es-set-tostringtag: "npm:^2.1.0" + hasown: "npm:^2.0.2" + mime-types: "npm:^2.1.12" + checksum: 10c0/dd6b767ee0bbd6d84039db12a0fa5a2028160ffbfaba1800695713b46ae974a5f6e08b3356c3195137f8530dcd9dfcb5d5ae1eeff53d0db1e5aad863b619ce3b + languageName: node + linkType: hard + +"formatly@npm:^0.3.0": + version: 0.3.0 + resolution: "formatly@npm:0.3.0" + dependencies: + fd-package-json: "npm:^2.0.0" + bin: + formatly: bin/index.mjs + checksum: 10c0/ef9dbd3cdaee649e9604ea060d8d62d8131eb81117634336592ee2193fc7c98a3f1f1b5d09a045dbd36287ba88edf868ef179d39fbda2f34fbe2be70c42dd014 + languageName: node + linkType: hard + +"formdata-polyfill@npm:^4.0.10": + version: 4.0.10 + resolution: "formdata-polyfill@npm:4.0.10" + dependencies: + fetch-blob: "npm:^3.1.2" + checksum: 10c0/5392ec484f9ce0d5e0d52fb5a78e7486637d516179b0eb84d81389d7eccf9ca2f663079da56f761355c0a65792810e3b345dc24db9a8bbbcf24ef3c8c88570c6 + languageName: node + linkType: hard + +"fsevents@npm:~2.3.3": + version: 2.3.3 + resolution: "fsevents@npm:2.3.3" + dependencies: + node-gyp: "npm:latest" + checksum: 10c0/a1f0c44595123ed717febbc478aa952e47adfc28e2092be66b8ab1635147254ca6cfe1df792a8997f22716d4cbafc73309899ff7bfac2ac3ad8cf2e4ecc3ec60 + conditions: os=darwin + languageName: node + linkType: hard + +"fsevents@patch:fsevents@npm%3A~2.3.3#optional!builtin": + version: 2.3.3 + resolution: "fsevents@patch:fsevents@npm%3A2.3.3#optional!builtin::version=2.3.3&hash=df0bf1" + dependencies: + node-gyp: "npm:latest" + conditions: os=darwin + languageName: node + linkType: hard + +"function-bind@npm:^1.1.2": + version: 1.1.2 + resolution: "function-bind@npm:1.1.2" + checksum: 10c0/d8680ee1e5fcd4c197e4ac33b2b4dce03c71f4d91717292785703db200f5c21f977c568d28061226f9b5900cbcd2c84463646134fd5337e7925e0942bc3f46d5 + languageName: node + linkType: hard + +"gaxios@npm:^7.0.0, gaxios@npm:^7.1.4": + version: 7.1.4 + resolution: "gaxios@npm:7.1.4" + dependencies: + extend: "npm:^3.0.2" + https-proxy-agent: "npm:^7.0.1" + node-fetch: "npm:^3.3.2" + checksum: 10c0/147adf5f2606442945d8b19df1e9fe2833a5ec30af00743d0c44292899c5eef1c0a77b74ff07d9dfdc6b009c08af1f3f3d1d5d772109fde50c92435533795803 + languageName: node + linkType: hard + +"gcp-metadata@npm:8.1.2": + version: 8.1.2 + resolution: "gcp-metadata@npm:8.1.2" + dependencies: + gaxios: "npm:^7.0.0" + google-logging-utils: "npm:^1.0.0" + json-bigint: "npm:^1.0.0" + checksum: 10c0/15a61231a9410dc11c2828d2c9fdc8b0a939f1af746195c44edc6f2ffea0acab52cef3a7b9828069a36fd5d68bda730f7328a415fe42a01258f6e249dfba6908 + languageName: node + linkType: hard + +"generator-function@npm:^2.0.0": + version: 2.0.1 + resolution: "generator-function@npm:2.0.1" + checksum: 10c0/8a9f59df0f01cfefafdb3b451b80555e5cf6d76487095db91ac461a0e682e4ff7a9dbce15f4ecec191e53586d59eece01949e05a4b4492879600bbbe8e28d6b8 + languageName: node + linkType: hard + +"gensequence@npm:^8.0.8": + version: 8.0.8 + resolution: "gensequence@npm:8.0.8" + checksum: 10c0/a1315a9c366c4becda7720c8ecb986cbab912352e8fe25fdb57325d4a8fb3cce816cc227acd7bf2141283656f1e04229655240a2cc70d75836eec13ed8a96425 + languageName: node + linkType: hard + +"get-intrinsic@npm:^1.2.6": + version: 1.3.1 + resolution: "get-intrinsic@npm:1.3.1" + dependencies: + async-function: "npm:^1.0.0" + async-generator-function: "npm:^1.0.0" + call-bind-apply-helpers: "npm:^1.0.2" + es-define-property: "npm:^1.0.1" + es-errors: "npm:^1.3.0" + es-object-atoms: "npm:^1.1.1" + function-bind: "npm:^1.1.2" + generator-function: "npm:^2.0.0" + get-proto: "npm:^1.0.1" + gopd: "npm:^1.2.0" + has-symbols: "npm:^1.1.0" + hasown: "npm:^2.0.2" + math-intrinsics: "npm:^1.1.0" + checksum: 10c0/9f4ab0cf7efe0fd2c8185f52e6f637e708f3a112610c88869f8f041bb9ecc2ce44bf285dfdbdc6f4f7c277a5b88d8e94a432374d97cca22f3de7fc63795deb5d + languageName: node + linkType: hard + +"get-proto@npm:^1.0.1": + version: 1.0.1 + resolution: "get-proto@npm:1.0.1" + dependencies: + dunder-proto: "npm:^1.0.1" + es-object-atoms: "npm:^1.0.0" + checksum: 10c0/9224acb44603c5526955e83510b9da41baf6ae73f7398875fba50edc5e944223a89c4a72b070fcd78beb5f7bdda58ecb6294adc28f7acfc0da05f76a2399643c + languageName: node + linkType: hard + +"get-tsconfig@npm:4.14.0, get-tsconfig@npm:^4.10.1": + version: 4.14.0 + resolution: "get-tsconfig@npm:4.14.0" + dependencies: + resolve-pkg-maps: "npm:^1.0.0" + checksum: 10c0/abc2b9275468eb589079a0b7a95eb5107c14fdd0ca6dda1bff116fe774ea1f79975421dcb22a0c86b4f820fcc69a7655dddf9b6d6a8a2c06fcb59e19794c0724 + languageName: node + linkType: hard + +"glob-parent@npm:^6.0.2": + version: 6.0.2 + resolution: "glob-parent@npm:6.0.2" + dependencies: + is-glob: "npm:^4.0.3" + checksum: 10c0/317034d88654730230b3f43bb7ad4f7c90257a426e872ea0bf157473ac61c99bf5d205fad8f0185f989be8d2fa6d3c7dce1645d99d545b6ea9089c39f838e7f8 + languageName: node + linkType: hard + +"global-directory@npm:^5.0.0": + version: 5.0.0 + resolution: "global-directory@npm:5.0.0" + dependencies: + ini: "npm:6.0.0" + checksum: 10c0/2b90eea8975bb332db7e8c9096ff310f0deb617d17e47e93b921d1c69f7677c1759a07009f2581f050d3ea08a3e079bf4ffdb9c34c94d48dc369c6577b3d45f4 + languageName: node + linkType: hard + +"globals@npm:^17.6.0": + version: 17.6.0 + resolution: "globals@npm:17.6.0" + checksum: 10c0/cf94fb4329cc5c68cf81018fd68324f413181ee169f0235b0b33b82bc93fe7825a21beea951f83a80e8e4bbdad9c0c80515a145b5fd4b5cb52f2a80db899a93f + languageName: node + linkType: hard + +"google-auth-library@npm:^10.6.2": + version: 10.6.2 + resolution: "google-auth-library@npm:10.6.2" + dependencies: + base64-js: "npm:^1.3.0" + ecdsa-sig-formatter: "npm:^1.0.11" + gaxios: "npm:^7.1.4" + gcp-metadata: "npm:8.1.2" + google-logging-utils: "npm:1.1.3" + jws: "npm:^4.0.0" + checksum: 10c0/4878d9070e751202eff8adca7a78a41f045c460f611a62d8c0c14ac4bd33d66afc5d788ef82225873dadc7cde401d47f223f3c109f1a192564164fdd44a36614 + languageName: node + linkType: hard + +"google-logging-utils@npm:1.1.3, google-logging-utils@npm:^1.0.0": + version: 1.1.3 + resolution: "google-logging-utils@npm:1.1.3" + checksum: 10c0/e65201c7e96543bd1423b9324013736646b9eed60941e0bfa47b9bfd146d2f09cf3df1c99ca60b7d80a726075263ead049ee72de53372cb8458c3bc55c2c1e59 + languageName: node + linkType: hard + +"gopd@npm:^1.2.0": + version: 1.2.0 + resolution: "gopd@npm:1.2.0" + checksum: 10c0/50fff1e04ba2b7737c097358534eacadad1e68d24cccee3272e04e007bed008e68d2614f3987788428fd192a5ae3889d08fb2331417e4fc4a9ab366b2043cead + languageName: node + linkType: hard + +"graceful-fs@npm:^4.2.6": + version: 4.2.11 + resolution: "graceful-fs@npm:4.2.11" + checksum: 10c0/386d011a553e02bc594ac2ca0bd6d9e4c22d7fa8cfbfc448a6d148c59ea881b092db9dbe3547ae4b88e55f1b01f7c4a2ecc53b310c042793e63aa44cf6c257f2 + languageName: node + linkType: hard + +"has-flag@npm:^4.0.0": + version: 4.0.0 + resolution: "has-flag@npm:4.0.0" + checksum: 10c0/2e789c61b7888d66993e14e8331449e525ef42aac53c627cc53d1c3334e768bcb6abdc4f5f0de1478a25beec6f0bd62c7549058b7ac53e924040d4f301f02fd1 + languageName: node + linkType: hard + +"has-symbols@npm:^1.0.3, has-symbols@npm:^1.1.0": + version: 1.1.0 + resolution: "has-symbols@npm:1.1.0" + checksum: 10c0/dde0a734b17ae51e84b10986e651c664379018d10b91b6b0e9b293eddb32f0f069688c841fb40f19e9611546130153e0a2a48fd7f512891fb000ddfa36f5a20e + languageName: node + linkType: hard + +"has-tostringtag@npm:^1.0.2": + version: 1.0.2 + resolution: "has-tostringtag@npm:1.0.2" + dependencies: + has-symbols: "npm:^1.0.3" + checksum: 10c0/a8b166462192bafe3d9b6e420a1d581d93dd867adb61be223a17a8d6dad147aa77a8be32c961bb2f27b3ef893cae8d36f564ab651f5e9b7938ae86f74027c48c + languageName: node + linkType: hard + +"hasown@npm:^2.0.2": + version: 2.0.3 + resolution: "hasown@npm:2.0.3" + dependencies: + function-bind: "npm:^1.1.2" + checksum: 10c0/f5eb28c3fd0d3e4facd821c1eeee3836c37b70ab0b0fc532e8a39976e18fef43652415dadc52f8c7a5ff6d5ac93b7bef128789aa6f90f4e9b9a9083dce74ab38 + languageName: node + linkType: hard + +"html-escaper@npm:^2.0.0": + version: 2.0.2 + resolution: "html-escaper@npm:2.0.2" + checksum: 10c0/208e8a12de1a6569edbb14544f4567e6ce8ecc30b9394fcaa4e7bb1e60c12a7c9a1ed27e31290817157e8626f3a4f29e76c8747030822eb84a6abb15c255f0a0 + languageName: node + linkType: hard + +"https-proxy-agent@npm:^5.0.1": + version: 5.0.1 + resolution: "https-proxy-agent@npm:5.0.1" + dependencies: + agent-base: "npm:6" + debug: "npm:4" + checksum: 10c0/6dd639f03434003577c62b27cafdb864784ef19b2de430d8ae2a1d45e31c4fd60719e5637b44db1a88a046934307da7089e03d6089ec3ddacc1189d8de8897d1 + languageName: node + linkType: hard + +"https-proxy-agent@npm:^7.0.1": + version: 7.0.6 + resolution: "https-proxy-agent@npm:7.0.6" + dependencies: + agent-base: "npm:^7.1.2" + debug: "npm:4" + checksum: 10c0/f729219bc735edb621fa30e6e84e60ee5d00802b8247aac0d7b79b0bd6d4b3294737a337b93b86a0bd9e68099d031858a39260c976dc14cdbba238ba1f8779ac + languageName: node + linkType: hard + +"ignore@npm:^5.2.0": + version: 5.3.2 + resolution: "ignore@npm:5.3.2" + checksum: 10c0/f9f652c957983634ded1e7f02da3b559a0d4cc210fca3792cb67f1b153623c9c42efdc1c4121af171e295444459fc4a9201101fb041b1104a3c000bccb188337 + languageName: node + linkType: hard + +"ignore@npm:^7.0.5": + version: 7.0.5 + resolution: "ignore@npm:7.0.5" + checksum: 10c0/ae00db89fe873064a093b8999fe4cc284b13ef2a178636211842cceb650b9c3e390d3339191acb145d81ed5379d2074840cf0c33a20bdbd6f32821f79eb4ad5d + languageName: node + linkType: hard + +"import-fresh@npm:^4.0.0": + version: 4.0.0 + resolution: "import-fresh@npm:4.0.0" + checksum: 10c0/537fb037c046ed594edcf2b60f438e70a07fa70fe14fbf35650870a414dc28c3332a11095f7782edfc814d3b997d204eaa3912cd6e3c62c296ee41c6caea9a8d + languageName: node + linkType: hard + +"import-meta-resolve@npm:^4.2.0": + version: 4.2.0 + resolution: "import-meta-resolve@npm:4.2.0" + checksum: 10c0/3ee8aeecb61d19b49d2703987f977e9d1c7d4ba47db615a570eaa02fe414f40dfa63f7b953e842cbe8470d26df6371332bfcf21b2fd92b0112f9fea80dde2c4c + languageName: node + linkType: hard + +"imurmurhash@npm:^0.1.4": + version: 0.1.4 + resolution: "imurmurhash@npm:0.1.4" + checksum: 10c0/8b51313850dd33605c6c9d3fd9638b714f4c4c40250cff658209f30d40da60f78992fb2df5dabee4acf589a6a82bbc79ad5486550754bd9ec4e3fc0d4a57d6a6 + languageName: node + linkType: hard + +"ini@npm:6.0.0": + version: 6.0.0 + resolution: "ini@npm:6.0.0" + checksum: 10c0/9a7f55f306e2b25b41ae67c8b526e8f4673f057b70852b9025816ef4f15f07bf1ba35ed68ea4471ff7b31718f7ef1bc50d709f8d03cb012e10a3135eb99c7206 + languageName: node + linkType: hard + +"is-buffer@npm:^2.0.5": + version: 2.0.5 + resolution: "is-buffer@npm:2.0.5" + checksum: 10c0/e603f6fced83cf94c53399cff3bda1a9f08e391b872b64a73793b0928be3e5f047f2bcece230edb7632eaea2acdbfcb56c23b33d8a20c820023b230f1485679a + languageName: node + linkType: hard + +"is-bun-module@npm:^2.0.0": + version: 2.0.0 + resolution: "is-bun-module@npm:2.0.0" + dependencies: + semver: "npm:^7.7.1" + checksum: 10c0/7d27a0679cfa5be1f5052650391f9b11040cd70c48d45112e312c56bc6b6ca9c9aea70dcce6cc40b1e8947bfff8567a5c5715d3b066fb478522dab46ea379240 + languageName: node + linkType: hard + +"is-extglob@npm:^2.1.1": + version: 2.1.1 + resolution: "is-extglob@npm:2.1.1" + checksum: 10c0/5487da35691fbc339700bbb2730430b07777a3c21b9ebaecb3072512dfd7b4ba78ac2381a87e8d78d20ea08affb3f1971b4af629173a6bf435ff8a4c47747912 + languageName: node + linkType: hard + +"is-glob@npm:^4.0.0, is-glob@npm:^4.0.3": + version: 4.0.3 + resolution: "is-glob@npm:4.0.3" + dependencies: + is-extglob: "npm:^2.1.1" + checksum: 10c0/17fb4014e22be3bbecea9b2e3a76e9e34ff645466be702f1693e8f1ee1adac84710d0be0bd9f967d6354036fd51ab7c2741d954d6e91dae6bb69714de92c197a + languageName: node + linkType: hard + +"is-safe-filename@npm:^0.1.0": + version: 0.1.1 + resolution: "is-safe-filename@npm:0.1.1" + checksum: 10c0/45c35d2253b96348e2c26590e14feed51d1e6b72aaa567930ccb34e68c0eef00ebcf3b7e01b46bf45e578a27355cd8f5bc12f7d6d79a34d33dc93d4560c0f6b6 + languageName: node + linkType: hard + +"isexe@npm:^2.0.0": + version: 2.0.0 + resolution: "isexe@npm:2.0.0" + checksum: 10c0/228cfa503fadc2c31596ab06ed6aa82c9976eec2bfd83397e7eaf06d0ccf42cd1dfd6743bf9aeb01aebd4156d009994c5f76ea898d2832c1fe342da923ca457d + languageName: node + linkType: hard + +"isexe@npm:^4.0.0": + version: 4.0.0 + resolution: "isexe@npm:4.0.0" + checksum: 10c0/5884815115bceac452877659a9c7726382531592f43dc29e5d48b7c4100661aed54018cb90bd36cb2eaeba521092570769167acbb95c18d39afdccbcca06c5ce + languageName: node + linkType: hard + +"istanbul-lib-coverage@npm:^3.0.0, istanbul-lib-coverage@npm:^3.2.2": + version: 3.2.2 + resolution: "istanbul-lib-coverage@npm:3.2.2" + checksum: 10c0/6c7ff2106769e5f592ded1fb418f9f73b4411fd5a084387a5410538332b6567cd1763ff6b6cadca9b9eb2c443cce2f7ea7d7f1b8d315f9ce58539793b1e0922b + languageName: node + linkType: hard + +"istanbul-lib-report@npm:^3.0.0, istanbul-lib-report@npm:^3.0.1": + version: 3.0.1 + resolution: "istanbul-lib-report@npm:3.0.1" + dependencies: + istanbul-lib-coverage: "npm:^3.0.0" + make-dir: "npm:^4.0.0" + supports-color: "npm:^7.1.0" + checksum: 10c0/84323afb14392de8b6a5714bd7e9af845cfbd56cfe71ed276cda2f5f1201aea673c7111901227ee33e68e4364e288d73861eb2ed48f6679d1e69a43b6d9b3ba7 + languageName: node + linkType: hard + +"istanbul-reports@npm:^3.2.0": + version: 3.2.0 + resolution: "istanbul-reports@npm:3.2.0" + dependencies: + html-escaper: "npm:^2.0.0" + istanbul-lib-report: "npm:^3.0.0" + checksum: 10c0/d596317cfd9c22e1394f22a8d8ba0303d2074fe2e971887b32d870e4b33f8464b10f8ccbe6847808f7db485f084eba09e6c2ed706b3a978e4b52f07085b8f9bc + languageName: node + linkType: hard + +"jiti@npm:^2.7.0": + version: 2.7.0 + resolution: "jiti@npm:2.7.0" + bin: + jiti: lib/jiti-cli.mjs + checksum: 10c0/1b1e2310a490dce1aeea3da5f5dfe18273516c20ce48be2e98eb8ea452d5f3dcc8fd0cfd6d28b4052a24c5dbab6e3089b2d7e79f0bce7915b10d750929563c42 + languageName: node + linkType: hard + +"js-tokens@npm:^10.0.0": + version: 10.0.0 + resolution: "js-tokens@npm:10.0.0" + checksum: 10c0/a93498747812ba3e0c8626f95f75ab29319f2a13613a0de9e610700405760931624433a0de59eb7c27ff8836e526768fb20783861b86ef89be96676f2c996b64 + languageName: node + linkType: hard + +"json-bigint@npm:^1.0.0": + version: 1.0.0 + resolution: "json-bigint@npm:1.0.0" + dependencies: + bignumber.js: "npm:^9.0.0" + checksum: 10c0/e3f34e43be3284b573ea150a3890c92f06d54d8ded72894556357946aeed9877fd795f62f37fe16509af189fd314ab1104d0fd0f163746ad231b9f378f5b33f4 + languageName: node + linkType: hard + +"json-buffer@npm:3.0.1": + version: 3.0.1 + resolution: "json-buffer@npm:3.0.1" + checksum: 10c0/0d1c91569d9588e7eef2b49b59851f297f3ab93c7b35c7c221e288099322be6b562767d11e4821da500f3219542b9afd2e54c5dc573107c1126ed1080f8e96d7 + languageName: node + linkType: hard + +"json-schema-traverse@npm:^0.4.1": + version: 0.4.1 + resolution: "json-schema-traverse@npm:0.4.1" + checksum: 10c0/108fa90d4cc6f08243aedc6da16c408daf81793bf903e9fd5ab21983cda433d5d2da49e40711da016289465ec2e62e0324dcdfbc06275a607fe3233fde4942ce + languageName: node + linkType: hard + +"json-stable-stringify-without-jsonify@npm:^1.0.1": + version: 1.0.1 + resolution: "json-stable-stringify-without-jsonify@npm:1.0.1" + checksum: 10c0/cb168b61fd4de83e58d09aaa6425ef71001bae30d260e2c57e7d09a5fd82223e2f22a042dedaab8db23b7d9ae46854b08bb1f91675a8be11c5cffebef5fb66a5 + languageName: node + linkType: hard + +"jsonc-eslint-parser@npm:^3.1.0": + version: 3.1.0 + resolution: "jsonc-eslint-parser@npm:3.1.0" + dependencies: + acorn: "npm:^8.5.0" + eslint-visitor-keys: "npm:^5.0.0" + semver: "npm:^7.3.5" + checksum: 10c0/9af0aa3abf946f306ce823ccde33ab7d91cf215e1af26d33b2f65e9e230552bfa40aa93859b91aabf96738c66357a598cc7b2275ba99839ef4afd84edda3b11e + languageName: node + linkType: hard + +"jwa@npm:^2.0.1": + version: 2.0.1 + resolution: "jwa@npm:2.0.1" + dependencies: + buffer-equal-constant-time: "npm:^1.0.1" + ecdsa-sig-formatter: "npm:1.0.11" + safe-buffer: "npm:^5.0.1" + checksum: 10c0/ab3ebc6598e10dc11419d4ed675c9ca714a387481466b10e8a6f3f65d8d9c9237e2826f2505280a739cf4cbcf511cb288eeec22b5c9c63286fc5a2e4f97e78cf + languageName: node + linkType: hard + +"jws@npm:^4.0.0": + version: 4.0.1 + resolution: "jws@npm:4.0.1" + dependencies: + jwa: "npm:^2.0.1" + safe-buffer: "npm:^5.0.1" + checksum: 10c0/6be1ed93023aef570ccc5ea8d162b065840f3ef12f0d1bb3114cade844de7a357d5dc558201d9a65101e70885a6fa56b17462f520e6b0d426195510618a154d0 + languageName: node + linkType: hard + +"keyv@npm:^4.5.4": + version: 4.5.4 + resolution: "keyv@npm:4.5.4" + dependencies: + json-buffer: "npm:3.0.1" + checksum: 10c0/aa52f3c5e18e16bb6324876bb8b59dd02acf782a4b789c7b2ae21107fab95fab3890ed448d4f8dba80ce05391eeac4bfabb4f02a20221342982f806fa2cf271e + languageName: node + linkType: hard + +"knip@npm:^6.14.2": + version: 6.14.2 + resolution: "knip@npm:6.14.2" + dependencies: + fdir: "npm:^6.5.0" + formatly: "npm:^0.3.0" + get-tsconfig: "npm:4.14.0" + jiti: "npm:^2.7.0" + minimist: "npm:^1.2.8" + oxc-parser: "npm:^0.130.0" + oxc-resolver: "npm:^11.19.1" + picomatch: "npm:^4.0.4" + smol-toml: "npm:^1.6.1" + strip-json-comments: "npm:5.0.3" + tinyglobby: "npm:^0.2.16" + unbash: "npm:^3.0.0" + yaml: "npm:^2.9.0" + zod: "npm:^4.1.11" + bin: + knip: bin/knip.js + knip-bun: bin/knip-bun.js + checksum: 10c0/02263901b05a0717efde2ae38ae430da9dce3987714873957bfe33323e57736621d03d85940e0b8cd7e8f542c2f87535a101acccc3c26261b0101c9c3fc565c2 + languageName: node + linkType: hard + +"levn@npm:^0.4.1": + version: 0.4.1 + resolution: "levn@npm:0.4.1" + dependencies: + prelude-ls: "npm:^1.2.1" + type-check: "npm:~0.4.0" + checksum: 10c0/effb03cad7c89dfa5bd4f6989364bfc79994c2042ec5966cb9b95990e2edee5cd8969ddf42616a0373ac49fac1403437deaf6e9050fbbaa3546093a59b9ac94e + languageName: node + linkType: hard + +"lightningcss-android-arm64@npm:1.32.0": + version: 1.32.0 + resolution: "lightningcss-android-arm64@npm:1.32.0" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"lightningcss-darwin-arm64@npm:1.32.0": + version: 1.32.0 + resolution: "lightningcss-darwin-arm64@npm:1.32.0" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"lightningcss-darwin-x64@npm:1.32.0": + version: 1.32.0 + resolution: "lightningcss-darwin-x64@npm:1.32.0" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"lightningcss-freebsd-x64@npm:1.32.0": + version: 1.32.0 + resolution: "lightningcss-freebsd-x64@npm:1.32.0" + conditions: os=freebsd & cpu=x64 + languageName: node + linkType: hard + +"lightningcss-linux-arm-gnueabihf@npm:1.32.0": + version: 1.32.0 + resolution: "lightningcss-linux-arm-gnueabihf@npm:1.32.0" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"lightningcss-linux-arm64-gnu@npm:1.32.0": + version: 1.32.0 + resolution: "lightningcss-linux-arm64-gnu@npm:1.32.0" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + +"lightningcss-linux-arm64-musl@npm:1.32.0": + version: 1.32.0 + resolution: "lightningcss-linux-arm64-musl@npm:1.32.0" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + +"lightningcss-linux-x64-gnu@npm:1.32.0": + version: 1.32.0 + resolution: "lightningcss-linux-x64-gnu@npm:1.32.0" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + +"lightningcss-linux-x64-musl@npm:1.32.0": + version: 1.32.0 + resolution: "lightningcss-linux-x64-musl@npm:1.32.0" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + +"lightningcss-win32-arm64-msvc@npm:1.32.0": + version: 1.32.0 + resolution: "lightningcss-win32-arm64-msvc@npm:1.32.0" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"lightningcss-win32-x64-msvc@npm:1.32.0": + version: 1.32.0 + resolution: "lightningcss-win32-x64-msvc@npm:1.32.0" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + +"lightningcss@npm:^1.32.0": + version: 1.32.0 + resolution: "lightningcss@npm:1.32.0" + dependencies: + detect-libc: "npm:^2.0.3" + lightningcss-android-arm64: "npm:1.32.0" + lightningcss-darwin-arm64: "npm:1.32.0" + lightningcss-darwin-x64: "npm:1.32.0" + lightningcss-freebsd-x64: "npm:1.32.0" + lightningcss-linux-arm-gnueabihf: "npm:1.32.0" + lightningcss-linux-arm64-gnu: "npm:1.32.0" + lightningcss-linux-arm64-musl: "npm:1.32.0" + lightningcss-linux-x64-gnu: "npm:1.32.0" + lightningcss-linux-x64-musl: "npm:1.32.0" + lightningcss-win32-arm64-msvc: "npm:1.32.0" + lightningcss-win32-x64-msvc: "npm:1.32.0" + dependenciesMeta: + lightningcss-android-arm64: + optional: true + lightningcss-darwin-arm64: + optional: true + lightningcss-darwin-x64: + optional: true + lightningcss-freebsd-x64: + optional: true + lightningcss-linux-arm-gnueabihf: + optional: true + lightningcss-linux-arm64-gnu: + optional: true + lightningcss-linux-arm64-musl: + optional: true + lightningcss-linux-x64-gnu: + optional: true + lightningcss-linux-x64-musl: + optional: true + lightningcss-win32-arm64-msvc: + optional: true + lightningcss-win32-x64-msvc: + optional: true + checksum: 10c0/70945bd55097af46fc9fab7f5ed09cd5869d85940a2acab7ee06d0117004a1d68155708a2d462531cea2fc3c67aefc9333a7068c80b0b78dd404c16838809e03 + languageName: node + linkType: hard + +"locate-path@npm:^6.0.0": + version: 6.0.0 + resolution: "locate-path@npm:6.0.0" + dependencies: + p-locate: "npm:^5.0.0" + checksum: 10c0/d3972ab70dfe58ce620e64265f90162d247e87159b6126b01314dd67be43d50e96a50b517bce2d9452a79409c7614054c277b5232377de50416564a77ac7aad3 + languageName: node + linkType: hard + +"magic-string@npm:^0.30.21": + version: 0.30.21 + resolution: "magic-string@npm:0.30.21" + dependencies: + "@jridgewell/sourcemap-codec": "npm:^1.5.5" + checksum: 10c0/299378e38f9a270069fc62358522ddfb44e94244baa0d6a8980ab2a9b2490a1d03b236b447eee309e17eb3bddfa482c61259d47960eb018a904f0ded52780c4a + languageName: node + linkType: hard + +"magicast@npm:^0.5.2": + version: 0.5.3 + resolution: "magicast@npm:0.5.3" + dependencies: + "@babel/parser": "npm:^7.29.3" + "@babel/types": "npm:^7.29.0" + source-map-js: "npm:^1.2.1" + checksum: 10c0/e288c027ae5f2a794a59148cb114f4b60f1d5c03090de6c60b4d187f12d1de9158779cd7c39cea391609f4f10cd7ea737929f25f7ce44f7a96ba96ec1a477e39 + languageName: node + linkType: hard + +"make-dir@npm:^4.0.0": + version: 4.0.0 + resolution: "make-dir@npm:4.0.0" + dependencies: + semver: "npm:^7.5.3" + checksum: 10c0/69b98a6c0b8e5c4fe9acb61608a9fbcfca1756d910f51e5dbe7a9e5cfb74fca9b8a0c8a0ffdf1294a740826c1ab4871d5bf3f62f72a3049e5eac6541ddffed68 + languageName: node + linkType: hard + +"math-intrinsics@npm:^1.1.0": + version: 1.1.0 + resolution: "math-intrinsics@npm:1.1.0" + checksum: 10c0/7579ff94e899e2f76ab64491d76cf606274c874d8f2af4a442c016bd85688927fcfca157ba6bf74b08e9439dc010b248ce05b96cc7c126a354c3bae7fcb48b7f + languageName: node + linkType: hard + +"mime-db@npm:1.52.0": + version: 1.52.0 + resolution: "mime-db@npm:1.52.0" + checksum: 10c0/0557a01deebf45ac5f5777fe7740b2a5c309c6d62d40ceab4e23da9f821899ce7a900b7ac8157d4548ddbb7beffe9abc621250e6d182b0397ec7f10c7b91a5aa + languageName: node + linkType: hard + +"mime-types@npm:^2.1.12": + version: 2.1.35 + resolution: "mime-types@npm:2.1.35" + dependencies: + mime-db: "npm:1.52.0" + checksum: 10c0/82fb07ec56d8ff1fc999a84f2f217aa46cb6ed1033fefaabd5785b9a974ed225c90dc72fff460259e66b95b73648596dbcc50d51ed69cdf464af2d237d3149b2 + languageName: node + linkType: hard + +"minimatch@npm:^10.2.2, minimatch@npm:^10.2.4, minimatch@npm:^9.0.3 || ^10.1.2": + version: 10.2.5 + resolution: "minimatch@npm:10.2.5" + dependencies: + brace-expansion: "npm:^5.0.5" + checksum: 10c0/6bb058bd6324104b9ec2f763476a35386d05079c1f5fe4fbf1f324a25237cd4534d6813ecd71f48208f4e635c1221899bef94c3c89f7df55698fe373aaae20fd + languageName: node + linkType: hard + +"minimist@npm:^1.2.8": + version: 1.2.8 + resolution: "minimist@npm:1.2.8" + checksum: 10c0/19d3fcdca050087b84c2029841a093691a91259a47def2f18222f41e7645a0b7c44ef4b40e88a1e58a40c84d2ef0ee6047c55594d298146d0eb3f6b737c20ce6 + languageName: node + linkType: hard + +"minipass@npm:^7.0.4, minipass@npm:^7.1.2": + version: 7.1.3 + resolution: "minipass@npm:7.1.3" + checksum: 10c0/539da88daca16533211ea5a9ee98dc62ff5742f531f54640dd34429e621955e91cc280a91a776026264b7f9f6735947629f920944e9c1558369e8bf22eb33fbb + languageName: node + linkType: hard + +"minizlib@npm:^3.1.0": + version: 3.1.0 + resolution: "minizlib@npm:3.1.0" + dependencies: + minipass: "npm:^7.1.2" + checksum: 10c0/5aad75ab0090b8266069c9aabe582c021ae53eb33c6c691054a13a45db3b4f91a7fb1bd79151e6b4e9e9a86727b522527c0a06ec7d45206b745d54cd3097bcec + languageName: node + linkType: hard + +"mri@npm:^1.1.0": + version: 1.2.0 + resolution: "mri@npm:1.2.0" + checksum: 10c0/a3d32379c2554cf7351db6237ddc18dc9e54e4214953f3da105b97dc3babe0deb3ffe99cf409b38ea47cc29f9430561ba6b53b24ab8f9ce97a4b50409e4a50e7 + languageName: node + linkType: hard + +"ms@npm:^2.1.3": + version: 2.1.3 + resolution: "ms@npm:2.1.3" + checksum: 10c0/d924b57e7312b3b63ad21fc5b3dc0af5e78d61a1fc7cfb5457edaf26326bf62be5307cc87ffb6862ef1c2b33b0233cdb5d4f01c4c958cc0d660948b65a287a48 + languageName: node + linkType: hard + +"nanoid@npm:^3.3.12": + version: 3.3.12 + resolution: "nanoid@npm:3.3.12" + bin: + nanoid: bin/nanoid.cjs + checksum: 10c0/ba142b7b39e11e80c16dd74b0365d407880c87c1cf7e1480956981ae940ee36060fa5b6f092cd1e315184dd19244c657bd017d03327bd3c62247d691c5e8edfb + languageName: node + linkType: hard + +"napi-postinstall@npm:^0.3.4": + version: 0.3.4 + resolution: "napi-postinstall@npm:0.3.4" + bin: + napi-postinstall: lib/cli.js + checksum: 10c0/b33d64150828bdade3a5d07368a8b30da22ee393f8dd8432f1b9e5486867be21c84ec443dd875dd3ef3c7401a079a7ab7e2aa9d3538a889abbcd96495d5104fe + languageName: node + linkType: hard + +"natural-compare@npm:^1.4.0": + version: 1.4.0 + resolution: "natural-compare@npm:1.4.0" + checksum: 10c0/f5f9a7974bfb28a91afafa254b197f0f22c684d4a1731763dda960d2c8e375b36c7d690e0d9dc8fba774c537af14a7e979129bca23d88d052fbeb9466955e447 + languageName: node + linkType: hard + +"node-domexception@npm:^1.0.0": + version: 1.0.0 + resolution: "node-domexception@npm:1.0.0" + checksum: 10c0/5e5d63cda29856402df9472335af4bb13875e1927ad3be861dc5ebde38917aecbf9ae337923777af52a48c426b70148815e890a5d72760f1b4d758cc671b1a2b + languageName: node + linkType: hard + +"node-fetch@npm:^3.3.2": + version: 3.3.2 + resolution: "node-fetch@npm:3.3.2" + dependencies: + data-uri-to-buffer: "npm:^4.0.0" + fetch-blob: "npm:^3.1.4" + formdata-polyfill: "npm:^4.0.10" + checksum: 10c0/f3d5e56190562221398c9f5750198b34cf6113aa304e34ee97c94fd300ec578b25b2c2906edba922050fce983338fde0d5d34fcb0fc3336ade5bd0e429ad7538 + languageName: node + linkType: hard + +"node-gyp@npm:latest": + version: 12.3.0 + resolution: "node-gyp@npm:12.3.0" + dependencies: + env-paths: "npm:^2.2.0" + exponential-backoff: "npm:^3.1.1" + graceful-fs: "npm:^4.2.6" + nopt: "npm:^9.0.0" + proc-log: "npm:^6.0.0" + semver: "npm:^7.3.5" + tar: "npm:^7.5.4" + tinyglobby: "npm:^0.2.12" + undici: "npm:^6.25.0" + which: "npm:^6.0.0" + bin: + node-gyp: bin/node-gyp.js + checksum: 10c0/9d9032b405cbe42f72a105259d9eb679376470c102df4a2dbaa51e07d59bf741dcffb85897087ea9d8318b9cabb824a8978af51508ae142f0239ae1e6a3c2329 + languageName: node + linkType: hard + +"nopt@npm:^9.0.0": + version: 9.0.0 + resolution: "nopt@npm:9.0.0" + dependencies: + abbrev: "npm:^4.0.0" + bin: + nopt: bin/nopt.js + checksum: 10c0/1822eb6f9b020ef6f7a7516d7b64a8036e09666ea55ac40416c36e4b2b343122c3cff0e2f085675f53de1d2db99a2a89a60ccea1d120bcd6a5347bf6ceb4a7fd + languageName: node + linkType: hard + +"obug@npm:^2.1.1": + version: 2.1.1 + resolution: "obug@npm:2.1.1" + checksum: 10c0/59dccd7de72a047e08f8649e94c1015ec72f94eefb6ddb57fb4812c4b425a813bc7e7cd30c9aca20db3c59abc3c85cc7a62bb656a968741d770f4e8e02bc2e78 + languageName: node + linkType: hard + +"optionator@npm:^0.9.3": + version: 0.9.4 + resolution: "optionator@npm:0.9.4" + dependencies: + deep-is: "npm:^0.1.3" + fast-levenshtein: "npm:^2.0.6" + levn: "npm:^0.4.1" + prelude-ls: "npm:^1.2.1" + type-check: "npm:^0.4.0" + word-wrap: "npm:^1.2.5" + checksum: 10c0/4afb687a059ee65b61df74dfe87d8d6815cd6883cb8b3d5883a910df72d0f5d029821f37025e4bccf4048873dbdb09acc6d303d27b8f76b1a80dd5a7d5334675 + languageName: node + linkType: hard + +"oxc-parser@npm:^0.130.0": + version: 0.130.0 + resolution: "oxc-parser@npm:0.130.0" + dependencies: + "@oxc-parser/binding-android-arm-eabi": "npm:0.130.0" + "@oxc-parser/binding-android-arm64": "npm:0.130.0" + "@oxc-parser/binding-darwin-arm64": "npm:0.130.0" + "@oxc-parser/binding-darwin-x64": "npm:0.130.0" + "@oxc-parser/binding-freebsd-x64": "npm:0.130.0" + "@oxc-parser/binding-linux-arm-gnueabihf": "npm:0.130.0" + "@oxc-parser/binding-linux-arm-musleabihf": "npm:0.130.0" + "@oxc-parser/binding-linux-arm64-gnu": "npm:0.130.0" + "@oxc-parser/binding-linux-arm64-musl": "npm:0.130.0" + "@oxc-parser/binding-linux-ppc64-gnu": "npm:0.130.0" + "@oxc-parser/binding-linux-riscv64-gnu": "npm:0.130.0" + "@oxc-parser/binding-linux-riscv64-musl": "npm:0.130.0" + "@oxc-parser/binding-linux-s390x-gnu": "npm:0.130.0" + "@oxc-parser/binding-linux-x64-gnu": "npm:0.130.0" + "@oxc-parser/binding-linux-x64-musl": "npm:0.130.0" + "@oxc-parser/binding-openharmony-arm64": "npm:0.130.0" + "@oxc-parser/binding-wasm32-wasi": "npm:0.130.0" + "@oxc-parser/binding-win32-arm64-msvc": "npm:0.130.0" + "@oxc-parser/binding-win32-ia32-msvc": "npm:0.130.0" + "@oxc-parser/binding-win32-x64-msvc": "npm:0.130.0" + "@oxc-project/types": "npm:^0.130.0" + dependenciesMeta: + "@oxc-parser/binding-android-arm-eabi": + optional: true + "@oxc-parser/binding-android-arm64": + optional: true + "@oxc-parser/binding-darwin-arm64": + optional: true + "@oxc-parser/binding-darwin-x64": + optional: true + "@oxc-parser/binding-freebsd-x64": + optional: true + "@oxc-parser/binding-linux-arm-gnueabihf": + optional: true + "@oxc-parser/binding-linux-arm-musleabihf": + optional: true + "@oxc-parser/binding-linux-arm64-gnu": + optional: true + "@oxc-parser/binding-linux-arm64-musl": + optional: true + "@oxc-parser/binding-linux-ppc64-gnu": + optional: true + "@oxc-parser/binding-linux-riscv64-gnu": + optional: true + "@oxc-parser/binding-linux-riscv64-musl": + optional: true + "@oxc-parser/binding-linux-s390x-gnu": + optional: true + "@oxc-parser/binding-linux-x64-gnu": + optional: true + "@oxc-parser/binding-linux-x64-musl": + optional: true + "@oxc-parser/binding-openharmony-arm64": + optional: true + "@oxc-parser/binding-wasm32-wasi": + optional: true + "@oxc-parser/binding-win32-arm64-msvc": + optional: true + "@oxc-parser/binding-win32-ia32-msvc": + optional: true + "@oxc-parser/binding-win32-x64-msvc": + optional: true + checksum: 10c0/7b6b3fee853429520f5c61765add938b57d1b6fdb0f86dc806f2c2ba13f6f007a22316561c4c98754b272aac3ac3c7b92051bb1a8e0fa699ef68982c4f257f7e + languageName: node + linkType: hard + +"oxc-resolver@npm:^11.19.1": + version: 11.19.1 + resolution: "oxc-resolver@npm:11.19.1" + dependencies: + "@oxc-resolver/binding-android-arm-eabi": "npm:11.19.1" + "@oxc-resolver/binding-android-arm64": "npm:11.19.1" + "@oxc-resolver/binding-darwin-arm64": "npm:11.19.1" + "@oxc-resolver/binding-darwin-x64": "npm:11.19.1" + "@oxc-resolver/binding-freebsd-x64": "npm:11.19.1" + "@oxc-resolver/binding-linux-arm-gnueabihf": "npm:11.19.1" + "@oxc-resolver/binding-linux-arm-musleabihf": "npm:11.19.1" + "@oxc-resolver/binding-linux-arm64-gnu": "npm:11.19.1" + "@oxc-resolver/binding-linux-arm64-musl": "npm:11.19.1" + "@oxc-resolver/binding-linux-ppc64-gnu": "npm:11.19.1" + "@oxc-resolver/binding-linux-riscv64-gnu": "npm:11.19.1" + "@oxc-resolver/binding-linux-riscv64-musl": "npm:11.19.1" + "@oxc-resolver/binding-linux-s390x-gnu": "npm:11.19.1" + "@oxc-resolver/binding-linux-x64-gnu": "npm:11.19.1" + "@oxc-resolver/binding-linux-x64-musl": "npm:11.19.1" + "@oxc-resolver/binding-openharmony-arm64": "npm:11.19.1" + "@oxc-resolver/binding-wasm32-wasi": "npm:11.19.1" + "@oxc-resolver/binding-win32-arm64-msvc": "npm:11.19.1" + "@oxc-resolver/binding-win32-ia32-msvc": "npm:11.19.1" + "@oxc-resolver/binding-win32-x64-msvc": "npm:11.19.1" + dependenciesMeta: + "@oxc-resolver/binding-android-arm-eabi": + optional: true + "@oxc-resolver/binding-android-arm64": + optional: true + "@oxc-resolver/binding-darwin-arm64": + optional: true + "@oxc-resolver/binding-darwin-x64": + optional: true + "@oxc-resolver/binding-freebsd-x64": + optional: true + "@oxc-resolver/binding-linux-arm-gnueabihf": + optional: true + "@oxc-resolver/binding-linux-arm-musleabihf": + optional: true + "@oxc-resolver/binding-linux-arm64-gnu": + optional: true + "@oxc-resolver/binding-linux-arm64-musl": + optional: true + "@oxc-resolver/binding-linux-ppc64-gnu": + optional: true + "@oxc-resolver/binding-linux-riscv64-gnu": + optional: true + "@oxc-resolver/binding-linux-riscv64-musl": + optional: true + "@oxc-resolver/binding-linux-s390x-gnu": + optional: true + "@oxc-resolver/binding-linux-x64-gnu": + optional: true + "@oxc-resolver/binding-linux-x64-musl": + optional: true + "@oxc-resolver/binding-openharmony-arm64": + optional: true + "@oxc-resolver/binding-wasm32-wasi": + optional: true + "@oxc-resolver/binding-win32-arm64-msvc": + optional: true + "@oxc-resolver/binding-win32-ia32-msvc": + optional: true + "@oxc-resolver/binding-win32-x64-msvc": + optional: true + checksum: 10c0/8ac4eaffa9c0bcbb9f4f4a2b43786457ec5a68684d8776cb78b5a15ce3d1a79d3e67262aa3c635f98a0c1cd6cd56a31fcb05bffb9a286100056e4ab06b928833 + languageName: node + linkType: hard + +"p-limit@npm:^3.0.2": + version: 3.1.0 + resolution: "p-limit@npm:3.1.0" + dependencies: + yocto-queue: "npm:^0.1.0" + checksum: 10c0/9db675949dbdc9c3763c89e748d0ef8bdad0afbb24d49ceaf4c46c02c77d30db4e0652ed36d0a0a7a95154335fab810d95c86153105bb73b3a90448e2bb14e1a + languageName: node + linkType: hard + +"p-locate@npm:^5.0.0": + version: 5.0.0 + resolution: "p-locate@npm:5.0.0" + dependencies: + p-limit: "npm:^3.0.2" + checksum: 10c0/2290d627ab7903b8b70d11d384fee714b797f6040d9278932754a6860845c4d3190603a0772a663c8cb5a7b21d1b16acb3a6487ebcafa9773094edc3dfe6009a + languageName: node + linkType: hard + +"package-manager-detector@npm:^1.6.0": + version: 1.6.0 + resolution: "package-manager-detector@npm:1.6.0" + checksum: 10c0/6419d0b840be64fd45bcdcb7a19f09b81b65456d5e7f7a3daac305a4c90643052122f6ac0308afe548ffee75e36148532a2002ea9d292754f1e385aa2e1ea03b + languageName: node + linkType: hard + +"path-exists@npm:^4.0.0": + version: 4.0.0 + resolution: "path-exists@npm:4.0.0" + checksum: 10c0/8c0bd3f5238188197dc78dced15207a4716c51cc4e3624c44fc97acf69558f5ebb9a2afff486fe1b4ee148e0c133e96c5e11a9aa5c48a3006e3467da070e5e1b + languageName: node + linkType: hard + +"path-key@npm:^3.1.0": + version: 3.1.1 + resolution: "path-key@npm:3.1.1" + checksum: 10c0/748c43efd5a569c039d7a00a03b58eecd1d75f3999f5a28303d75f521288df4823bc057d8784eb72358b2895a05f29a070bc9f1f17d28226cc4e62494cc58c4c + languageName: node + linkType: hard + +"pathe@npm:^2.0.3": + version: 2.0.3 + resolution: "pathe@npm:2.0.3" + checksum: 10c0/c118dc5a8b5c4166011b2b70608762e260085180bb9e33e80a50dcdb1e78c010b1624f4280c492c92b05fc276715a4c357d1f9edc570f8f1b3d90b6839ebaca1 + languageName: node + linkType: hard + +"picocolors@npm:^1.1.1": + version: 1.1.1 + resolution: "picocolors@npm:1.1.1" + checksum: 10c0/e2e3e8170ab9d7c7421969adaa7e1b31434f789afb9b3f115f6b96d91945041ac3ceb02e9ec6fe6510ff036bcc0bf91e69a1772edc0b707e12b19c0f2d6bcf58 + languageName: node + linkType: hard + +"picomatch@npm:^4.0.3, picomatch@npm:^4.0.4": + version: 4.0.4 + resolution: "picomatch@npm:4.0.4" + checksum: 10c0/e2c6023372cc7b5764719a5ffb9da0f8e781212fa7ca4bd0562db929df8e117460f00dff3cb7509dacfc06b86de924b247f504d0ce1806a37fac4633081466b0 + languageName: node + linkType: hard + +"postcss@npm:^8.5.15": + version: 8.5.15 + resolution: "postcss@npm:8.5.15" + dependencies: + nanoid: "npm:^3.3.12" + picocolors: "npm:^1.1.1" + source-map-js: "npm:^1.2.1" + checksum: 10c0/7f2e63ae22fbe43aace1bf652bd99da4e90737c64194d49e51ddc9cd0f9e51ff2861a7d734379b494deffa03a880a5c65eec70bc29ee9ebaa7136dde3eee8f31 + languageName: node + linkType: hard + +"prelude-ls@npm:^1.2.1": + version: 1.2.1 + resolution: "prelude-ls@npm:1.2.1" + checksum: 10c0/b00d617431e7886c520a6f498a2e14c75ec58f6d93ba48c3b639cf241b54232d90daa05d83a9e9b9fef6baa63cb7e1e4602c2372fea5bc169668401eb127d0cd + languageName: node + linkType: hard + +"prettier@npm:^3.8.3": + version: 3.8.3 + resolution: "prettier@npm:3.8.3" + bin: + prettier: bin/prettier.cjs + checksum: 10c0/754816fd7593eb80f6376d7476d463e832c38a12f32775a82683adb6e35b772b1f484d65f19401507b983a8c8a7cd5a4a9f12006bd56491e8f35503473f77473 + languageName: node + linkType: hard + +"proc-log@npm:^6.0.0": + version: 6.1.0 + resolution: "proc-log@npm:6.1.0" + checksum: 10c0/4f178d4062733ead9d71a9b1ab24ebcecdfe2250916a5b1555f04fe2eda972a0ec76fbaa8df1ad9c02707add6749219d118a4fc46dc56bdfe4dde4b47d80bb82 + languageName: node + linkType: hard + +"proxy-from-env@npm:^2.1.0": + version: 2.1.0 + resolution: "proxy-from-env@npm:2.1.0" + checksum: 10c0/ed01729fd4d094eab619cd7e17ce3698b3413b31eb102c4904f9875e677cd207392795d5b4adee9cec359dfd31c44d5ad7595a3a3ad51c40250e141512281c58 + languageName: node + linkType: hard + +"publint@npm:^0.3.21": + version: 0.3.21 + resolution: "publint@npm:0.3.21" + dependencies: + "@publint/pack": "npm:^0.1.4" + package-manager-detector: "npm:^1.6.0" + picocolors: "npm:^1.1.1" + sade: "npm:^1.8.1" + bin: + publint: src/cli.js + checksum: 10c0/46f54061b112f852523e8b1357c5b454633008056de86f6acbbabcb155a8ab758d3e575df9f82fa37b7ba4a25bde8e68f98866763929eaef8c6d96ff1f761cea + languageName: node + linkType: hard + +"punycode@npm:^2.1.0": + version: 2.3.1 + resolution: "punycode@npm:2.3.1" + checksum: 10c0/14f76a8206bc3464f794fb2e3d3cc665ae416c01893ad7a02b23766eb07159144ee612ad67af5e84fa4479ccfe67678c4feb126b0485651b302babf66f04f9e9 + languageName: node + linkType: hard + +"resolve-from@npm:^5.0.0": + version: 5.0.0 + resolution: "resolve-from@npm:5.0.0" + checksum: 10c0/b21cb7f1fb746de8107b9febab60095187781137fd803e6a59a76d421444b1531b641bba5857f5dc011974d8a5c635d61cec49e6bd3b7fc20e01f0fafc4efbf2 + languageName: node + linkType: hard + +"resolve-pkg-maps@npm:^1.0.0": + version: 1.0.0 + resolution: "resolve-pkg-maps@npm:1.0.0" + checksum: 10c0/fb8f7bbe2ca281a73b7ef423a1cbc786fb244bd7a95cbe5c3fba25b27d327150beca8ba02f622baea65919a57e061eb5005204daa5f93ed590d9b77463a567ab + languageName: node + linkType: hard + +"rolldown@npm:1.0.2": + version: 1.0.2 + resolution: "rolldown@npm:1.0.2" + dependencies: + "@oxc-project/types": "npm:=0.132.0" + "@rolldown/binding-android-arm64": "npm:1.0.2" + "@rolldown/binding-darwin-arm64": "npm:1.0.2" + "@rolldown/binding-darwin-x64": "npm:1.0.2" + "@rolldown/binding-freebsd-x64": "npm:1.0.2" + "@rolldown/binding-linux-arm-gnueabihf": "npm:1.0.2" + "@rolldown/binding-linux-arm64-gnu": "npm:1.0.2" + "@rolldown/binding-linux-arm64-musl": "npm:1.0.2" + "@rolldown/binding-linux-ppc64-gnu": "npm:1.0.2" + "@rolldown/binding-linux-s390x-gnu": "npm:1.0.2" + "@rolldown/binding-linux-x64-gnu": "npm:1.0.2" + "@rolldown/binding-linux-x64-musl": "npm:1.0.2" + "@rolldown/binding-openharmony-arm64": "npm:1.0.2" + "@rolldown/binding-wasm32-wasi": "npm:1.0.2" + "@rolldown/binding-win32-arm64-msvc": "npm:1.0.2" + "@rolldown/binding-win32-x64-msvc": "npm:1.0.2" + "@rolldown/pluginutils": "npm:^1.0.0" + dependenciesMeta: + "@rolldown/binding-android-arm64": + optional: true + "@rolldown/binding-darwin-arm64": + optional: true + "@rolldown/binding-darwin-x64": + optional: true + "@rolldown/binding-freebsd-x64": + optional: true + "@rolldown/binding-linux-arm-gnueabihf": + optional: true + "@rolldown/binding-linux-arm64-gnu": + optional: true + "@rolldown/binding-linux-arm64-musl": + optional: true + "@rolldown/binding-linux-ppc64-gnu": + optional: true + "@rolldown/binding-linux-s390x-gnu": + optional: true + "@rolldown/binding-linux-x64-gnu": + optional: true + "@rolldown/binding-linux-x64-musl": + optional: true + "@rolldown/binding-openharmony-arm64": + optional: true + "@rolldown/binding-wasm32-wasi": + optional: true + "@rolldown/binding-win32-arm64-msvc": + optional: true + "@rolldown/binding-win32-x64-msvc": + optional: true + bin: + rolldown: ./bin/cli.mjs + checksum: 10c0/628327a6e3122c0b62880f1c87d54095394e5138a6af2e6e7b2f67ef4c4b11f1421db68c9a5bb4e1be161465a863ab4f68f15076ce895cd4bb3d0ba18a3b20b1 + languageName: node + linkType: hard + +"sade@npm:^1.8.1": + version: 1.8.1 + resolution: "sade@npm:1.8.1" + dependencies: + mri: "npm:^1.1.0" + checksum: 10c0/da8a3a5d667ad5ce3bf6d4f054bbb9f711103e5df21003c5a5c1a8a77ce12b640ed4017dd423b13c2307ea7e645adee7c2ae3afe8051b9db16a6f6d3da3f90b1 + languageName: node + linkType: hard + +"safe-buffer@npm:^5.0.1": + version: 5.2.1 + resolution: "safe-buffer@npm:5.2.1" + checksum: 10c0/6501914237c0a86e9675d4e51d89ca3c21ffd6a31642efeba25ad65720bce6921c9e7e974e5be91a786b25aa058b5303285d3c15dbabf983a919f5f630d349f3 + languageName: node + linkType: hard + +"semver@npm:^7.3.5, semver@npm:^7.5.3, semver@npm:^7.7.1, semver@npm:^7.7.2, semver@npm:^7.7.3, semver@npm:^7.7.4": + version: 7.8.1 + resolution: "semver@npm:7.8.1" + bin: + semver: bin/semver.js + checksum: 10c0/92d6871d6347e1f99d0ba396a70f2545ccf2a032cda3d378fa0699edf7506b5c6d266aed55c8b88e72bd91a30d2351e4f39db479375374430fcdc4b58f4e3c1a + languageName: node + linkType: hard + +"shebang-command@npm:^2.0.0": + version: 2.0.0 + resolution: "shebang-command@npm:2.0.0" + dependencies: + shebang-regex: "npm:^3.0.0" + checksum: 10c0/a41692e7d89a553ef21d324a5cceb5f686d1f3c040759c50aab69688634688c5c327f26f3ecf7001ebfd78c01f3c7c0a11a7c8bfd0a8bc9f6240d4f40b224e4e + languageName: node + linkType: hard + +"shebang-regex@npm:^3.0.0": + version: 3.0.0 + resolution: "shebang-regex@npm:3.0.0" + checksum: 10c0/1dbed0726dd0e1152a92696c76c7f06084eb32a90f0528d11acd764043aacf76994b2fb30aa1291a21bd019d6699164d048286309a278855ee7bec06cf6fb690 + languageName: node + linkType: hard + +"siginfo@npm:^2.0.0": + version: 2.0.0 + resolution: "siginfo@npm:2.0.0" + checksum: 10c0/3def8f8e516fbb34cb6ae415b07ccc5d9c018d85b4b8611e3dc6f8be6d1899f693a4382913c9ed51a06babb5201639d76453ab297d1c54a456544acf5c892e34 + languageName: node + linkType: hard + +"smol-toml@npm:^1.6.1": + version: 1.6.1 + resolution: "smol-toml@npm:1.6.1" + checksum: 10c0/511a78722f99c7616fdb46af708de3d7e81434b5a3d58061166da73f28bfc6cae4f0cd04683f60515b9c490cd10152fce72287c960b337419c0299cc1f0f2a22 + languageName: node + linkType: hard + +"source-map-js@npm:^1.2.1": + version: 1.2.1 + resolution: "source-map-js@npm:1.2.1" + checksum: 10c0/7bda1fc4c197e3c6ff17de1b8b2c20e60af81b63a52cb32ec5a5d67a20a7d42651e2cb34ebe93833c5a2a084377e17455854fee3e21e7925c64a51b6a52b0faf + languageName: node + linkType: hard + +"stable-hash-x@npm:^0.2.0": + version: 0.2.0 + resolution: "stable-hash-x@npm:0.2.0" + checksum: 10c0/c757df58366ee4bb266a9486b8932eab7c1ba730469eaf4b68d2dee404814e9f84089c44c9b5205f8c7d99a0ab036cce2af69139ce5ed44b635923c011a8aea8 + languageName: node + linkType: hard + +"stackback@npm:0.0.2": + version: 0.0.2 + resolution: "stackback@npm:0.0.2" + checksum: 10c0/89a1416668f950236dd5ac9f9a6b2588e1b9b62b1b6ad8dff1bfc5d1a15dbf0aafc9b52d2226d00c28dffff212da464eaeebfc6b7578b9d180cef3e3782c5983 + languageName: node + linkType: hard + +"std-env@npm:^4.0.0-rc.1": + version: 4.1.0 + resolution: "std-env@npm:4.1.0" + checksum: 10c0/2e14b6b490db34cb969a48d9cf7c35bca4a47653914aac2814221baae7b867a5b15940d133625c391621971f98cd2266a5dc7036669960e883f1081db2a56558 + languageName: node + linkType: hard + +"strip-json-comments@npm:5.0.3": + version: 5.0.3 + resolution: "strip-json-comments@npm:5.0.3" + checksum: 10c0/daaf20b29f69fb51112698f4a9a662490dbb78d5baf6127c75a0a83c2ac6c078a8c0f74b389ad5e0519d6fc359c4a57cb9971b1ae201aef62ce45a13247791e0 + languageName: node + linkType: hard + +"supports-color@npm:^7.1.0": + version: 7.2.0 + resolution: "supports-color@npm:7.2.0" + dependencies: + has-flag: "npm:^4.0.0" + checksum: 10c0/afb4c88521b8b136b5f5f95160c98dee7243dc79d5432db7efc27efb219385bbc7d9427398e43dd6cc730a0f87d5085ce1652af7efbe391327bc0a7d0f7fc124 + languageName: node + linkType: hard + +"synckit@npm:^0.11.12": + version: 0.11.12 + resolution: "synckit@npm:0.11.12" + dependencies: + "@pkgr/core": "npm:^0.2.9" + checksum: 10c0/cc4d446806688ae0d728ae7bb3f53176d065cf9536647fb85bdd721dcefbd7bf94874df6799ff61580f2b03a392659219b778a9254ad499f9a1f56c34787c235 + languageName: node + linkType: hard + +"tar@npm:^7.5.4": + version: 7.5.15 + resolution: "tar@npm:7.5.15" + dependencies: + "@isaacs/fs-minipass": "npm:^4.0.0" + chownr: "npm:^3.0.0" + minipass: "npm:^7.1.2" + minizlib: "npm:^3.1.0" + yallist: "npm:^5.0.0" + checksum: 10c0/8f039edb1d12fdd7df6c6f9877d125afe9f3da3f5f9317df326fdd090d48793d6998cede1506a1471f3e3a250db270a89dace28005eb5e99c5a9132d704ac956 + languageName: node + linkType: hard + +"tinybench@npm:^2.9.0": + version: 2.9.0 + resolution: "tinybench@npm:2.9.0" + checksum: 10c0/c3500b0f60d2eb8db65250afe750b66d51623057ee88720b7f064894a6cb7eb93360ca824a60a31ab16dab30c7b1f06efe0795b352e37914a9d4bad86386a20c + languageName: node + linkType: hard + +"tinyexec@npm:^1.0.2": + version: 1.2.2 + resolution: "tinyexec@npm:1.2.2" + checksum: 10c0/8bcb4969c572c21d570c033e29cb896e26d96e49e58f4fe07a532d3d65e10bdfae59733bf8a6a0fd9b611543c4ed3b890c939c3234489599296fb92515eb4625 + languageName: node + linkType: hard + +"tinyglobby@npm:^0.2.12, tinyglobby@npm:^0.2.14, tinyglobby@npm:^0.2.15, tinyglobby@npm:^0.2.16": + version: 0.2.16 + resolution: "tinyglobby@npm:0.2.16" + dependencies: + fdir: "npm:^6.5.0" + picomatch: "npm:^4.0.4" + checksum: 10c0/f2e09fd93dd95c41e522113b686ff6f7c13020962f8698a864a257f3d7737599afc47722b7ab726e12f8a813f779906187911ff8ee6701ede65072671a7e934b + languageName: node + linkType: hard + +"tinyrainbow@npm:^3.1.0": + version: 3.1.0 + resolution: "tinyrainbow@npm:3.1.0" + checksum: 10c0/f11cf387a26c5c9255bec141a90ac511b26172981b10c3e50053bc6700ea7d2336edcc4a3a21dbb8412fe7c013477d2ba4d7e4877800f3f8107be5105aad6511 + languageName: node + linkType: hard + +"ts-api-utils@npm:^2.5.0": + version: 2.5.0 + resolution: "ts-api-utils@npm:2.5.0" + peerDependencies: + typescript: ">=4.8.4" + checksum: 10c0/767849383c114e7f1971fa976b20e73ac28fd0c70d8d65c0004790bf4d8f89888c7e4cf6d5949f9c1beae9bc3c64835bef77bbe27fddf45a3c7b60cebcf85c8c + languageName: node + linkType: hard + +"tslib@npm:^2.4.0": + version: 2.8.1 + resolution: "tslib@npm:2.8.1" + checksum: 10c0/9c4759110a19c53f992d9aae23aac5ced636e99887b51b9e61def52611732872ff7668757d4e4c61f19691e36f4da981cd9485e869b4a7408d689f6bf1f14e62 + languageName: node + linkType: hard + +"type-check@npm:^0.4.0, type-check@npm:~0.4.0": + version: 0.4.0 + resolution: "type-check@npm:0.4.0" + dependencies: + prelude-ls: "npm:^1.2.1" + checksum: 10c0/7b3fd0ed43891e2080bf0c5c504b418fbb3e5c7b9708d3d015037ba2e6323a28152ec163bcb65212741fa5d2022e3075ac3c76440dbd344c9035f818e8ecee58 + languageName: node + linkType: hard + +"typescript-eslint@npm:^8.60.0": + version: 8.60.0 + resolution: "typescript-eslint@npm:8.60.0" + dependencies: + "@typescript-eslint/eslint-plugin": "npm:8.60.0" + "@typescript-eslint/parser": "npm:8.60.0" + "@typescript-eslint/typescript-estree": "npm:8.60.0" + "@typescript-eslint/utils": "npm:8.60.0" + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: ">=4.8.4 <6.1.0" + checksum: 10c0/6968de79ab61b1c56d7233260a3092daf578399117d804c46b34dcedf0317b33cd3025ba34789b8dc4567f30f6d62d0d11691c9dca278173abe91772741ab79d + languageName: node + linkType: hard + +"typescript@npm:^6.0.3": + version: 6.0.3 + resolution: "typescript@npm:6.0.3" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 10c0/4a25ff5045b984370f48f196b3a0120779b1b343d40b9a68d114ea5e5fff099809b2bb777576991a63a5cd59cf7bffd96ff6fe10afcefbcb8bd6fb96ad4b6606 + languageName: node + linkType: hard + +"typescript@patch:typescript@npm%3A^6.0.3#optional!builtin": + version: 6.0.3 + resolution: "typescript@patch:typescript@npm%3A6.0.3#optional!builtin::version=6.0.3&hash=5786d5" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 10c0/2f25c74e65663c248fa1ade2b8459d9ce5372ff9dad07067310f132966ebec1d93f6c42f0baf77a6b6a7a91460463f708e6887013aaade22111037457c6b25df + languageName: node + linkType: hard + +"unbash@npm:^3.0.0": + version: 3.0.0 + resolution: "unbash@npm:3.0.0" + checksum: 10c0/8d237237805c8d23a6a7ba9ba1dac612b79431f2458aaa7975c472eba9f429991e46417fd8cdb14c1ad88adffbc0b914d0556ad5978bc42bbd2fa9b0942a4f91 + languageName: node + linkType: hard + +"undici-types@npm:>=7.24.0 <7.24.7": + version: 7.24.6 + resolution: "undici-types@npm:7.24.6" + checksum: 10c0/d9cd8befb643ac904615c280a095ba4240531f6bb4a5e75a22a7483630ca8d3f1016d2ab6ace6ceda1f63b3a2db2fe037fafe121d6917a0187573aa548ff78ca + languageName: node + linkType: hard + +"undici@npm:^6.25.0": + version: 6.26.0 + resolution: "undici@npm:6.26.0" + checksum: 10c0/cf2b4caf58c33d6582970991290cc7a6486d6e738845f25dcdd16952d708ec844815c6d30362919764fcaf30f719891289341f1ada496f003ce2700310453a47 + languageName: node + linkType: hard + +"unrs-resolver@npm:^1.7.11, unrs-resolver@npm:^1.9.2": + version: 1.12.2 + resolution: "unrs-resolver@npm:1.12.2" + dependencies: + "@unrs/resolver-binding-android-arm-eabi": "npm:1.12.2" + "@unrs/resolver-binding-android-arm64": "npm:1.12.2" + "@unrs/resolver-binding-darwin-arm64": "npm:1.12.2" + "@unrs/resolver-binding-darwin-x64": "npm:1.12.2" + "@unrs/resolver-binding-freebsd-x64": "npm:1.12.2" + "@unrs/resolver-binding-linux-arm-gnueabihf": "npm:1.12.2" + "@unrs/resolver-binding-linux-arm-musleabihf": "npm:1.12.2" + "@unrs/resolver-binding-linux-arm64-gnu": "npm:1.12.2" + "@unrs/resolver-binding-linux-arm64-musl": "npm:1.12.2" + "@unrs/resolver-binding-linux-loong64-gnu": "npm:1.12.2" + "@unrs/resolver-binding-linux-loong64-musl": "npm:1.12.2" + "@unrs/resolver-binding-linux-ppc64-gnu": "npm:1.12.2" + "@unrs/resolver-binding-linux-riscv64-gnu": "npm:1.12.2" + "@unrs/resolver-binding-linux-riscv64-musl": "npm:1.12.2" + "@unrs/resolver-binding-linux-s390x-gnu": "npm:1.12.2" + "@unrs/resolver-binding-linux-x64-gnu": "npm:1.12.2" + "@unrs/resolver-binding-linux-x64-musl": "npm:1.12.2" + "@unrs/resolver-binding-openharmony-arm64": "npm:1.12.2" + "@unrs/resolver-binding-wasm32-wasi": "npm:1.12.2" + "@unrs/resolver-binding-win32-arm64-msvc": "npm:1.12.2" + "@unrs/resolver-binding-win32-ia32-msvc": "npm:1.12.2" + "@unrs/resolver-binding-win32-x64-msvc": "npm:1.12.2" + napi-postinstall: "npm:^0.3.4" + dependenciesMeta: + "@unrs/resolver-binding-android-arm-eabi": + optional: true + "@unrs/resolver-binding-android-arm64": + optional: true + "@unrs/resolver-binding-darwin-arm64": + optional: true + "@unrs/resolver-binding-darwin-x64": + optional: true + "@unrs/resolver-binding-freebsd-x64": + optional: true + "@unrs/resolver-binding-linux-arm-gnueabihf": + optional: true + "@unrs/resolver-binding-linux-arm-musleabihf": + optional: true + "@unrs/resolver-binding-linux-arm64-gnu": + optional: true + "@unrs/resolver-binding-linux-arm64-musl": + optional: true + "@unrs/resolver-binding-linux-loong64-gnu": + optional: true + "@unrs/resolver-binding-linux-loong64-musl": + optional: true + "@unrs/resolver-binding-linux-ppc64-gnu": + optional: true + "@unrs/resolver-binding-linux-riscv64-gnu": + optional: true + "@unrs/resolver-binding-linux-riscv64-musl": + optional: true + "@unrs/resolver-binding-linux-s390x-gnu": + optional: true + "@unrs/resolver-binding-linux-x64-gnu": + optional: true + "@unrs/resolver-binding-linux-x64-musl": + optional: true + "@unrs/resolver-binding-openharmony-arm64": + optional: true + "@unrs/resolver-binding-wasm32-wasi": + optional: true + "@unrs/resolver-binding-win32-arm64-msvc": + optional: true + "@unrs/resolver-binding-win32-ia32-msvc": + optional: true + "@unrs/resolver-binding-win32-x64-msvc": + optional: true + checksum: 10c0/ddc27f6d920eabdafeac0077ebff9fd799c895cea025751dc17b360bf9be7c93c471fafebf65f205eec476f90d7daa36aef889d47362b2dd4705d68852bcfea4 + languageName: node + linkType: hard + +"uri-js@npm:^4.2.2": + version: 4.4.1 + resolution: "uri-js@npm:4.4.1" + dependencies: + punycode: "npm:^2.1.0" + checksum: 10c0/4ef57b45aa820d7ac6496e9208559986c665e49447cb072744c13b66925a362d96dd5a46c4530a6b8e203e5db5fe849369444440cb22ecfc26c679359e5dfa3c + languageName: node + linkType: hard + +"vite@npm:^6.0.0 || ^7.0.0 || ^8.0.0": + version: 8.0.14 + resolution: "vite@npm:8.0.14" + dependencies: + fsevents: "npm:~2.3.3" + lightningcss: "npm:^1.32.0" + picomatch: "npm:^4.0.4" + postcss: "npm:^8.5.15" + rolldown: "npm:1.0.2" + tinyglobby: "npm:^0.2.16" + peerDependencies: + "@types/node": ^20.19.0 || >=22.12.0 + "@vitejs/devtools": ^0.1.18 + esbuild: ^0.27.0 || ^0.28.0 + jiti: ">=1.21.0" + less: ^4.0.0 + sass: ^1.70.0 + sass-embedded: ^1.70.0 + stylus: ">=0.54.8" + sugarss: ^5.0.0 + terser: ^5.16.0 + tsx: ^4.8.1 + yaml: ^2.4.2 + dependenciesMeta: + fsevents: + optional: true + peerDependenciesMeta: + "@types/node": + optional: true + "@vitejs/devtools": + optional: true + esbuild: + optional: true + jiti: + optional: true + less: + optional: true + sass: + optional: true + sass-embedded: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + tsx: + optional: true + yaml: + optional: true + bin: + vite: bin/vite.js + checksum: 10c0/1ff99b4daadc64aed5f9e40387ecf39fd3bca45c1a5c4fa4aa82197de901930f0507af8d75c54715e2744c99575913947efb625653a78ef6df3997c5613970bd + languageName: node + linkType: hard + +"vitest@npm:^4.1.7": + version: 4.1.7 + resolution: "vitest@npm:4.1.7" + dependencies: + "@vitest/expect": "npm:4.1.7" + "@vitest/mocker": "npm:4.1.7" + "@vitest/pretty-format": "npm:4.1.7" + "@vitest/runner": "npm:4.1.7" + "@vitest/snapshot": "npm:4.1.7" + "@vitest/spy": "npm:4.1.7" + "@vitest/utils": "npm:4.1.7" + es-module-lexer: "npm:^2.0.0" + expect-type: "npm:^1.3.0" + magic-string: "npm:^0.30.21" + obug: "npm:^2.1.1" + pathe: "npm:^2.0.3" + picomatch: "npm:^4.0.3" + std-env: "npm:^4.0.0-rc.1" + tinybench: "npm:^2.9.0" + tinyexec: "npm:^1.0.2" + tinyglobby: "npm:^0.2.15" + tinyrainbow: "npm:^3.1.0" + vite: "npm:^6.0.0 || ^7.0.0 || ^8.0.0" + why-is-node-running: "npm:^2.3.0" + peerDependencies: + "@edge-runtime/vm": "*" + "@opentelemetry/api": ^1.9.0 + "@types/node": ^20.0.0 || ^22.0.0 || >=24.0.0 + "@vitest/browser-playwright": 4.1.7 + "@vitest/browser-preview": 4.1.7 + "@vitest/browser-webdriverio": 4.1.7 + "@vitest/coverage-istanbul": 4.1.7 + "@vitest/coverage-v8": 4.1.7 + "@vitest/ui": 4.1.7 + happy-dom: "*" + jsdom: "*" + vite: ^6.0.0 || ^7.0.0 || ^8.0.0 + peerDependenciesMeta: + "@edge-runtime/vm": + optional: true + "@opentelemetry/api": + optional: true + "@types/node": + optional: true + "@vitest/browser-playwright": + optional: true + "@vitest/browser-preview": + optional: true + "@vitest/browser-webdriverio": + optional: true + "@vitest/coverage-istanbul": + optional: true + "@vitest/coverage-v8": + optional: true + "@vitest/ui": + optional: true + happy-dom: + optional: true + jsdom: + optional: true + vite: + optional: false + bin: + vitest: vitest.mjs + checksum: 10c0/5328eab211161bdb854159154b02d7b2beab0cf1e26a1c13f6a64b0f1402029d41f19987cf60684051c09a6925030285195ecbe57271c2033e1d4f7a666590d0 + languageName: node + linkType: hard + +"vscode-languageserver-textdocument@npm:^1.0.12": + version: 1.0.13 + resolution: "vscode-languageserver-textdocument@npm:1.0.13" + checksum: 10c0/1de174f1de3bfa9e1660a4b3c1b1c711497196d761e33f4d00785fdbfc556ae5a1f440db04771cbc0f6bd66c2a6f303062bc17d8dc46e76820e39fa2d5626564 + languageName: node + linkType: hard + +"vscode-uri@npm:^3.1.0": + version: 3.1.0 + resolution: "vscode-uri@npm:3.1.0" + checksum: 10c0/5f6c9c10fd9b1664d71fab4e9fbbae6be93c7f75bb3a1d9d74399a88ab8649e99691223fd7cef4644376cac6e94fa2c086d802521b9a8e31c5af3e60f0f35624 + languageName: node + linkType: hard + +"walk-up-path@npm:^4.0.0": + version: 4.0.0 + resolution: "walk-up-path@npm:4.0.0" + checksum: 10c0/fabe344f91387d1d41df230af962ef18bf703dd4178006d55cd6412caacd187b54440002d4d53a982d4f7f0455567dcffb6d3884533c8b2268928eca3ebd8a19 + languageName: node + linkType: hard + +"web-streams-polyfill@npm:^3.0.3": + version: 3.3.3 + resolution: "web-streams-polyfill@npm:3.3.3" + checksum: 10c0/64e855c47f6c8330b5436147db1c75cb7e7474d924166800e8e2aab5eb6c76aac4981a84261dd2982b3e754490900b99791c80ae1407a9fa0dcff74f82ea3a7f + languageName: node + linkType: hard + +"which@npm:^2.0.1": + version: 2.0.2 + resolution: "which@npm:2.0.2" + dependencies: + isexe: "npm:^2.0.0" + bin: + node-which: ./bin/node-which + checksum: 10c0/66522872a768b60c2a65a57e8ad184e5372f5b6a9ca6d5f033d4b0dc98aff63995655a7503b9c0a2598936f532120e81dd8cc155e2e92ed662a2b9377cc4374f + languageName: node + linkType: hard + +"which@npm:^6.0.0": + version: 6.0.1 + resolution: "which@npm:6.0.1" + dependencies: + isexe: "npm:^4.0.0" + bin: + node-which: bin/which.js + checksum: 10c0/7e710e54ea36d2d6183bee2f9caa27a3b47b9baf8dee55a199b736fcf85eab3b9df7556fca3d02b50af7f3dfba5ea3a45644189836df06267df457e354da66d5 + languageName: node + linkType: hard + +"why-is-node-running@npm:^2.3.0": + version: 2.3.0 + resolution: "why-is-node-running@npm:2.3.0" + dependencies: + siginfo: "npm:^2.0.0" + stackback: "npm:0.0.2" + bin: + why-is-node-running: cli.js + checksum: 10c0/1cde0b01b827d2cf4cb11db962f3958b9175d5d9e7ac7361d1a7b0e2dc6069a263e69118bd974c4f6d0a890ef4eedfe34cf3d5167ec14203dbc9a18620537054 + languageName: node + linkType: hard + +"word-wrap@npm:^1.2.5": + version: 1.2.5 + resolution: "word-wrap@npm:1.2.5" + checksum: 10c0/e0e4a1ca27599c92a6ca4c32260e8a92e8a44f4ef6ef93f803f8ed823f486e0889fc0b93be4db59c8d51b3064951d25e43d434e95dc8c960cc3a63d65d00ba20 + languageName: node + linkType: hard + +"xdg-basedir@npm:^5.1.0": + version: 5.1.0 + resolution: "xdg-basedir@npm:5.1.0" + checksum: 10c0/c88efabc71ffd996ba9ad8923a8cc1c7c020a03e2c59f0ffa72e06be9e724ad2a0fccef488757bc6ed3d8849d753dd25082d1035d95cb179e79eae4d034d0b80 + languageName: node + linkType: hard + +"yallist@npm:^5.0.0": + version: 5.0.0 + resolution: "yallist@npm:5.0.0" + checksum: 10c0/a499c81ce6d4a1d260d4ea0f6d49ab4da09681e32c3f0472dee16667ed69d01dae63a3b81745a24bd78476ec4fcf856114cb4896ace738e01da34b2c42235416 + languageName: node + linkType: hard + +"yaml@npm:^2.8.3, yaml@npm:^2.9.0": + version: 2.9.0 + resolution: "yaml@npm:2.9.0" + bin: + yaml: bin.mjs + checksum: 10c0/f340718df45e97a9551b9bf9dac61c80050bc464513b710debfb5067c380c8472e3b67809cffacb4ab5ffb5e66ef9310816c88b05f371cec60abfedd8c88e0a2 + languageName: node + linkType: hard + +"yocto-queue@npm:^0.1.0": + version: 0.1.0 + resolution: "yocto-queue@npm:0.1.0" + checksum: 10c0/dceb44c28578b31641e13695d200d34ec4ab3966a5729814d5445b194933c096b7ced71494ce53a0e8820685d1d010df8b2422e5bf2cdea7e469d97ffbea306f + languageName: node + linkType: hard + +"zod@npm:^4.1.11": + version: 4.4.3 + resolution: "zod@npm:4.4.3" + checksum: 10c0/7ea31b558e88f9faf44f31dd185e2e1cbf51fed3081787fb96cc2534749b50c0acfc6da7f0922a7353ed092dd358c7d50c28ea96c94d04af64191bd33152eca3 + languageName: node + linkType: hard