From 76167ec9c606db3ace57f94c8a425de48b1603c8 Mon Sep 17 00:00:00 2001 From: Joris Date: Wed, 3 Jul 2024 07:47:03 +0200 Subject: [PATCH] chore: update all deps --- .eslintrc.js | 33 - .github/workflows/compressedSize.yml | 11 +- .github/workflows/main.yml | 45 +- .husky/.gitignore | 1 - .husky/pre-commit | 60 +- .husky/prepare-commit-msg | 59 + CONTRIBUTING.md | 10 +- ajv/src/__tests__/ajv.ts | 8 +- ajv/src/ajv.ts | 2 +- ajv/src/types.ts | 6 +- .../src/__tests__/Form-native-validation.tsx | 10 +- arktype/src/__tests__/Form.tsx | 4 +- arktype/src/__tests__/__fixtures__/data.ts | 2 +- .../__tests__/__snapshots__/arktype.ts.snap | 58 +- arktype/src/__tests__/arktype.ts | 2 +- arktype/src/arktype.ts | 4 +- arktype/src/types.ts | 2 +- biome.json | 99 + bun.lockb | Bin 0 -> 307254 bytes .../src/__tests__/Form-native-validation.tsx | 4 +- class-validator/src/__tests__/Form.tsx | 4 +- .../__snapshots__/class-validator.ts.snap | 4 +- .../src/__tests__/class-validator.ts | 8 +- class-validator/src/class-validator.ts | 4 +- class-validator/src/types.ts | 4 +- .../src/__tests__/Form-native-validation.tsx | 4 +- computed-types/src/__tests__/Form.tsx | 4 +- .../src/__tests__/__fixtures__/data.ts | 2 +- .../__snapshots__/computed-types.ts.snap | 12 +- .../src/__tests__/computed-types.ts | 2 +- computed-types/src/computed-types.ts | 4 +- computed-types/src/types.ts | 2 +- .../src/__tests__/Form-native-validation.tsx | 4 +- effect-ts/src/__tests__/Form.tsx | 4 +- .../__tests__/__snapshots__/effect-ts.ts.snap | 4 +- effect-ts/src/__tests__/effect-ts.ts | 2 +- effect-ts/src/effect-ts.ts | 2 +- .../src/__tests__/Form-native-validation.tsx | 4 +- io-ts/src/__tests__/Form.tsx | 4 +- .../src/__tests__/__snapshots__/io-ts.ts.snap | 18 +- io-ts/src/__tests__/errorsToRecord.ts | 48 +- io-ts/src/__tests__/io-ts.ts | 2 +- io-ts/src/errorsToRecord.ts | 29 +- io-ts/src/io-ts.ts | 2 +- joi/src/__tests__/Form-native-validation.tsx | 4 +- joi/src/__tests__/Form.tsx | 4 +- joi/src/__tests__/__snapshots__/joi.ts.snap | 112 +- joi/src/__tests__/joi.ts | 2 +- joi/src/joi.ts | 2 +- joi/src/types.ts | 6 +- lefthook.yml | 23 + nope/src/__tests__/Form-native-validation.tsx | 4 +- nope/src/__tests__/Form.tsx | 4 +- nope/src/__tests__/__fixtures__/data.ts | 2 +- nope/src/__tests__/nope.ts | 2 +- nope/src/nope.ts | 2 +- nope/src/types.ts | 4 +- package.json | 48 +- pnpm-lock.yaml | 8080 ----------------- prettier.config.cjs | 4 - src/__tests__/validateFieldsNatively.ts | 2 +- src/toNestErrors.ts | 13 +- src/validateFieldsNatively.ts | 6 +- .../src/__tests__/Form-native-validation.tsx | 4 +- superstruct/src/__tests__/Form.tsx | 4 +- .../src/__tests__/__fixtures__/data.ts | 16 +- .../__snapshots__/superstruct.ts.snap | 8 +- superstruct/src/__tests__/superstruct.ts | 2 +- superstruct/src/superstruct.ts | 2 +- superstruct/src/types.ts | 2 +- .../src/__tests__/Form-native-validation.tsx | 2 +- typanion/src/__tests__/Form.tsx | 2 +- typanion/src/__tests__/__fixtures__/data.ts | 19 +- .../__tests__/__snapshots__/typanion.ts.snap | 8 +- typanion/src/__tests__/typanion.ts | 2 +- typanion/src/typanion.ts | 2 +- typanion/src/types.ts | 8 +- typebox/src/__tests__/Form-compiler.tsx | 8 +- .../Form-native-validation-compiler.tsx | 8 +- .../src/__tests__/Form-native-validation.tsx | 6 +- typebox/src/__tests__/Form.tsx | 4 +- typebox/src/__tests__/__fixtures__/data.ts | 8 +- .../__snapshots__/typebox-compiler.ts.snap | 26 +- .../__tests__/__snapshots__/typebox.ts.snap | 26 +- typebox/src/__tests__/typebox-compiler.ts | 5 +- typebox/src/__tests__/typebox.ts | 2 +- typebox/src/typebox.ts | 12 +- typebox/src/types.ts | 4 +- .../src/__tests__/Form-native-validation.tsx | 4 +- typeschema/src/__tests__/Form.tsx | 4 +- typeschema/src/__tests__/typeschema.ts | 4 +- typeschema/src/types.ts | 2 +- typeschema/src/typeschema.ts | 4 +- .../src/__tests__/Form-native-validation.tsx | 4 +- valibot/src/__tests__/Form.tsx | 2 +- valibot/src/__tests__/valibot.ts | 8 +- valibot/src/types.ts | 2 +- valibot/src/valibot.ts | 2 +- vest/src/__tests__/Form-native-validation.tsx | 2 +- vest/src/__tests__/Form.tsx | 2 +- vest/src/__tests__/__snapshots__/vest.ts.snap | 6 - vest/src/__tests__/vest.ts | 22 +- vest/src/types.ts | 15 +- vest/src/vest.ts | 2 +- vine/src/__tests__/Form-native-validation.tsx | 14 +- vine/src/__tests__/Form.tsx | 14 +- vine/src/__tests__/__fixtures__/data.ts | 6 +- vine/src/__tests__/vine.ts | 2 +- vine/src/types.ts | 2 +- vine/src/vine.ts | 2 +- vitest.config.ts | 2 +- yup/src/__tests__/Form-native-validation.tsx | 2 +- yup/src/__tests__/Form.tsx | 2 +- yup/src/__tests__/__snapshots__/yup.ts.snap | 26 +- yup/src/__tests__/yup.ts | 16 +- yup/src/yup.ts | 4 +- zod/src/__tests__/Form-native-validation.tsx | 4 +- zod/src/__tests__/Form.tsx | 2 +- zod/src/__tests__/zod.ts | 2 +- zod/src/types.ts | 2 +- zod/src/zod.ts | 7 +- 121 files changed, 721 insertions(+), 8584 deletions(-) delete mode 100644 .eslintrc.js delete mode 100644 .husky/.gitignore create mode 100755 .husky/prepare-commit-msg create mode 100644 biome.json create mode 100755 bun.lockb create mode 100644 lefthook.yml delete mode 100644 pnpm-lock.yaml delete mode 100644 prettier.config.cjs diff --git a/.eslintrc.js b/.eslintrc.js deleted file mode 100644 index 42c7db65..00000000 --- a/.eslintrc.js +++ /dev/null @@ -1,33 +0,0 @@ -module.exports = { - parser: '@typescript-eslint/parser', - plugins: ['@typescript-eslint'], - extends: ['plugin:@typescript-eslint/recommended', 'prettier'], - parserOptions: { - ecmaVersion: 2020, - sourceType: 'module', - }, - rules: { - curly: 'error', - '@typescript-eslint/indent': 'off', - '@typescript-eslint/no-non-null-assertion': 'off', - '@typescript-eslint/no-explicit-any': 'off', - '@typescript-eslint/explicit-function-return-type': 'off', - '@typescript-eslint/no-object-literal-type-assertion': 'off', - 'no-console': 'error', - '@typescript-eslint/no-unused-vars': [ - 'error', - { - argsIgnorePattern: '^_', - }, - ], - }, - overrides: [ - { - files: ['config/*.js'], - rules: { - '@typescript-eslint/no-var-requires': 'off', - 'no-console': 'off', - }, - }, - ], -}; diff --git a/.github/workflows/compressedSize.yml b/.github/workflows/compressedSize.yml index ffc1054b..d98ff686 100644 --- a/.github/workflows/compressedSize.yml +++ b/.github/workflows/compressedSize.yml @@ -7,11 +7,12 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - - name: Setup pnpm - uses: pnpm/action-setup@v2 - with: - version: 9.0 + - name: Checkout repo + uses: actions/checkout@v4 + + - name: Setup bun + uses: oven-sh/setup-bun@v1 + - uses: preactjs/compressed-size-action@v2 with: repo-token: '${{ secrets.GITHUB_TOKEN }}' diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index e96db206..16ab4ee9 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -20,30 +20,20 @@ jobs: - name: Checkout repo uses: actions/checkout@v4 - - name: Setup pnpm - uses: pnpm/action-setup@v2 - with: - version: 9.0 + - name: Setup bun + uses: oven-sh/setup-bun@v1 - - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v3 - with: - node-version: ${{ matrix.node-version }} - cache: 'pnpm' - - - name: Install dependencies - run: pnpm install + - name: Install Dependencies + run: bun install - name: Lint - run: | - pnpm lint - pnpm lint:types - - - name: Test - run: pnpm test + run: bun lint + + - name: TS + run: bun lint:types - name: Build - run: pnpm build + run: bun run build publish-module: name: 'Publish Module to NPM on Node ${{ matrix.node }} and ${{ matrix.os }}' @@ -53,22 +43,15 @@ jobs: steps: - name: Checkout repo uses: actions/checkout@v4 - - name: Setup pnpm - uses: pnpm/action-setup@v2 - with: - version: 9.0 - - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v4 - with: - node-version: 20 - cache: 'pnpm' + - name: Setup bun + uses: oven-sh/setup-bun@v1 - - name: Install dependencies - run: pnpm install + - name: Install Dependencies + run: bun install - name: Build - run: pnpm build + run: bun run build - name: Publish run: npx semantic-release diff --git a/.husky/.gitignore b/.husky/.gitignore deleted file mode 100644 index 31354ec1..00000000 --- a/.husky/.gitignore +++ /dev/null @@ -1 +0,0 @@ -_ diff --git a/.husky/pre-commit b/.husky/pre-commit index 7bbef21d..b6e504cf 100755 --- a/.husky/pre-commit +++ b/.husky/pre-commit @@ -1,5 +1,59 @@ #!/bin/sh -. "$(dirname "$0")/_/husky.sh" -pnpm lint:types -pnpm lint-staged \ No newline at end of file +if [ "$LEFTHOOK_VERBOSE" = "1" -o "$LEFTHOOK_VERBOSE" = "true" ]; then + set -x +fi + +if [ "$LEFTHOOK" = "0" ]; then + exit 0 +fi + +call_lefthook() +{ + if test -n "$LEFTHOOK_BIN" + then + "$LEFTHOOK_BIN" "$@" + elif lefthook -h >/dev/null 2>&1 + then + lefthook "$@" + else + dir="$(git rev-parse --show-toplevel)" + if test -f "$dir/node_modules/lefthook/bin/index.js" + then + "$dir/node_modules/lefthook/bin/index.js" "$@" + else + osArch=$(uname | tr '[:upper:]' '[:lower:]') + cpuArch=$(uname -m | sed 's/aarch64/arm64/') + if test -f "$dir/node_modules/@evilmartians/lefthook/bin/lefthook_${osArch}_${cpuArch}/lefthook" + then + "$dir/node_modules/@evilmartians/lefthook/bin/lefthook_${osArch}_${cpuArch}/lefthook" "$@" + elif test -f "$dir/node_modules/@evilmartians/lefthook-installer/bin/lefthook_${osArch}_${cpuArch}/lefthook" + then + "$dir/node_modules/@evilmartians/lefthook-installer/bin/lefthook_${osArch}_${cpuArch}/lefthook" "$@" + + elif bundle exec lefthook -h >/dev/null 2>&1 + then + bundle exec lefthook "$@" + elif yarn lefthook -h >/dev/null 2>&1 + then + yarn lefthook "$@" + elif pnpm lefthook -h >/dev/null 2>&1 + then + pnpm lefthook "$@" + elif swift package plugin lefthook >/dev/null 2>&1 + then + swift package --disable-sandbox plugin lefthook "$@" + elif command -v mint >/dev/null 2>&1 + then + mint run csjones/lefthook-plugin "$@" + elif command -v npx >/dev/null 2>&1 + then + npx lefthook "$@" + else + echo "Can't find lefthook in PATH" + fi + fi + fi +} + +call_lefthook run "pre-commit" "$@" diff --git a/.husky/prepare-commit-msg b/.husky/prepare-commit-msg new file mode 100755 index 00000000..c27ffd25 --- /dev/null +++ b/.husky/prepare-commit-msg @@ -0,0 +1,59 @@ +#!/bin/sh + +if [ "$LEFTHOOK_VERBOSE" = "1" -o "$LEFTHOOK_VERBOSE" = "true" ]; then + set -x +fi + +if [ "$LEFTHOOK" = "0" ]; then + exit 0 +fi + +call_lefthook() +{ + if test -n "$LEFTHOOK_BIN" + then + "$LEFTHOOK_BIN" "$@" + elif lefthook -h >/dev/null 2>&1 + then + lefthook "$@" + else + dir="$(git rev-parse --show-toplevel)" + if test -f "$dir/node_modules/lefthook/bin/index.js" + then + "$dir/node_modules/lefthook/bin/index.js" "$@" + else + osArch=$(uname | tr '[:upper:]' '[:lower:]') + cpuArch=$(uname -m | sed 's/aarch64/arm64/') + if test -f "$dir/node_modules/@evilmartians/lefthook/bin/lefthook_${osArch}_${cpuArch}/lefthook" + then + "$dir/node_modules/@evilmartians/lefthook/bin/lefthook_${osArch}_${cpuArch}/lefthook" "$@" + elif test -f "$dir/node_modules/@evilmartians/lefthook-installer/bin/lefthook_${osArch}_${cpuArch}/lefthook" + then + "$dir/node_modules/@evilmartians/lefthook-installer/bin/lefthook_${osArch}_${cpuArch}/lefthook" "$@" + + elif bundle exec lefthook -h >/dev/null 2>&1 + then + bundle exec lefthook "$@" + elif yarn lefthook -h >/dev/null 2>&1 + then + yarn lefthook "$@" + elif pnpm lefthook -h >/dev/null 2>&1 + then + pnpm lefthook "$@" + elif swift package plugin lefthook >/dev/null 2>&1 + then + swift package --disable-sandbox plugin lefthook "$@" + elif command -v mint >/dev/null 2>&1 + then + mint run csjones/lefthook-plugin "$@" + elif command -v npx >/dev/null 2>&1 + then + npx lefthook "$@" + else + echo "Can't find lefthook in PATH" + fi + fi + fi +} + +call_lefthook run "prepare-commit-msg" "$@" diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index b79b5bc5..ff9f7ffc 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -12,21 +12,21 @@ Here is a quick guide to doing code contributions to the library. 3. Install packages by running: - > pnpm install + > bun install 4. If you've added a code that should be tested, ensure the test suite still passes. - > pnpm test + > bun test 5. Try to write some unit tests to cover as much of your code as possible. 6. Ensure your code lints without errors. - > pnpm lint + > bun lint 7. Ensure build passes. - > pnpm build + > bun run build 8. Push your branch: `git push -u origin your-meaningful-branch-name` @@ -36,7 +36,7 @@ Here is a quick guide to doing code contributions to the library. ## Coding style -Please follow the coding style of the project. React Hook Form uses eslint and prettier. If possible, enable their respective plugins in your editor to get real-time feedback. The linting can be run manually with the following command: `pnpm lint` +Please follow the coding style of the project. React Hook Form uses eslint and prettier. If possible, enable their respective plugins in your editor to get real-time feedback. The linting can be run manually with the following command: `bun lint` ## License diff --git a/ajv/src/__tests__/ajv.ts b/ajv/src/__tests__/ajv.ts index 7c2f6108..738de9aa 100644 --- a/ajv/src/__tests__/ajv.ts +++ b/ajv/src/__tests__/ajv.ts @@ -1,5 +1,11 @@ import { ajvResolver } from '..'; -import { fields, invalidData, invalidDataWithUndefined, schema, validData } from './__fixtures__/data'; +import { + fields, + invalidData, + invalidDataWithUndefined, + schema, + validData, +} from './__fixtures__/data'; const shouldUseNativeValidation = false; diff --git a/ajv/src/ajv.ts b/ajv/src/ajv.ts index 7d4d20c9..19146a13 100644 --- a/ajv/src/ajv.ts +++ b/ajv/src/ajv.ts @@ -1,7 +1,7 @@ import { toNestErrors, validateFieldsNatively } from '@hookform/resolvers'; import Ajv, { DefinedError } from 'ajv'; import ajvErrors from 'ajv-errors'; -import { appendErrors, FieldError } from 'react-hook-form'; +import { FieldError, appendErrors } from 'react-hook-form'; import { Resolver } from './types'; const parseErrorSchema = ( diff --git a/ajv/src/types.ts b/ajv/src/types.ts index 402fb3a1..2defc4d9 100644 --- a/ajv/src/types.ts +++ b/ajv/src/types.ts @@ -1,9 +1,5 @@ -import { - FieldValues, - ResolverOptions, - ResolverResult, -} from 'react-hook-form'; import * as Ajv from 'ajv'; +import { FieldValues, ResolverOptions, ResolverResult } from 'react-hook-form'; export type Resolver = ( schema: Ajv.JSONSchemaType, diff --git a/arktype/src/__tests__/Form-native-validation.tsx b/arktype/src/__tests__/Form-native-validation.tsx index f6ae394c..c271055a 100644 --- a/arktype/src/__tests__/Form-native-validation.tsx +++ b/arktype/src/__tests__/Form-native-validation.tsx @@ -1,9 +1,9 @@ -import React from 'react'; -import { useForm } from 'react-hook-form'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; -import { arktypeResolver } from '..'; import { type } from 'arktype'; +import React from 'react'; +import { useForm } from 'react-hook-form'; +import { arktypeResolver } from '..'; const schema = type({ username: 'string>1', @@ -57,14 +57,14 @@ test("form's native validation with Zod", async () => { usernameField = screen.getByPlaceholderText(/username/i) as HTMLInputElement; expect(usernameField.validity.valid).toBe(false); expect(usernameField.validationMessage).toBe( - 'username must be more than length 1 (was 0)', + 'username must be more than length 1', ); // password passwordField = screen.getByPlaceholderText(/password/i) as HTMLInputElement; expect(passwordField.validity.valid).toBe(false); expect(passwordField.validationMessage).toBe( - 'password must be more than length 1 (was 0)', + 'password must be more than length 1', ); await user.type(screen.getByPlaceholderText(/username/i), 'joe'); diff --git a/arktype/src/__tests__/Form.tsx b/arktype/src/__tests__/Form.tsx index 39c87d9a..dedc9e14 100644 --- a/arktype/src/__tests__/Form.tsx +++ b/arktype/src/__tests__/Form.tsx @@ -1,9 +1,9 @@ -import React from 'react'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; +import { type } from 'arktype'; +import React from 'react'; import { useForm } from 'react-hook-form'; import { arktypeResolver } from '..'; -import { type } from 'arktype'; const schema = type({ username: 'string>1', diff --git a/arktype/src/__tests__/__fixtures__/data.ts b/arktype/src/__tests__/__fixtures__/data.ts index 1960acb0..a3915787 100644 --- a/arktype/src/__tests__/__fixtures__/data.ts +++ b/arktype/src/__tests__/__fixtures__/data.ts @@ -1,5 +1,5 @@ -import { Field, InternalFieldName } from 'react-hook-form'; import { type } from 'arktype'; +import { Field, InternalFieldName } from 'react-hook-form'; export const schema = type({ username: 'string>2', diff --git a/arktype/src/__tests__/__snapshots__/arktype.ts.snap b/arktype/src/__tests__/__snapshots__/arktype.ts.snap index e3a69285..2ed29acd 100644 --- a/arktype/src/__tests__/__snapshots__/arktype.ts.snap +++ b/arktype/src/__tests__/__snapshots__/arktype.ts.snap @@ -104,15 +104,15 @@ exports[`arktypeResolver > should return a single error from arktypeResolver whe Symbol(ArkTypeInternalKind): "error", }, "email": ArkError { - "code": "regex", + "code": "pattern", "data": "", "description": "a valid email", "flags": "", "input": { - "code": "regex", + "code": "pattern", "description": "a valid email", "flags": "", - "rule": "^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\\\.[A-Za-z]{2,}$", + "rule": "^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,}$", }, "nodeConfig": { "actual": [Function], @@ -127,8 +127,8 @@ exports[`arktypeResolver > should return a single error from arktypeResolver whe "ref": { "name": "email", }, - "rule": "^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\\\.[A-Za-z]{2,}$", - "type": "regex", + "rule": "^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,}$", + "type": "pattern", Symbol(ArkTypeInternalKind): "error", }, "enabled": ArkError { @@ -204,12 +204,12 @@ exports[`arktypeResolver > should return a single error from arktypeResolver whe }, "input": { "code": "required", - "missingValueDescription": "a string and more than length 3", + "missingValueDescription": "a string", "relativePath": [ "name", ], }, - "missingValueDescription": "a string and more than length 3", + "missingValueDescription": "a string", "nodeConfig": { "actual": [Function], "description": [Function], @@ -236,11 +236,11 @@ exports[`arktypeResolver > should return a single error from arktypeResolver whe "data": "___", "errors": [ ArkError { - "code": "regex", + "code": "pattern", "data": "___", "description": "matched by .*[A-Za-z].*", "input": { - "code": "regex", + "code": "pattern", "description": "matched by .*[A-Za-z].*", "rule": ".*[A-Za-z].*", }, @@ -258,13 +258,13 @@ exports[`arktypeResolver > should return a single error from arktypeResolver whe Symbol(ArkTypeInternalKind): "error", }, ArkError { - "code": "regex", + "code": "pattern", "data": "___", - "description": "matched by .*\\\\d.*", + "description": "matched by .*\\d.*", "input": { - "code": "regex", - "description": "matched by .*\\\\d.*", - "rule": ".*\\\\d.*", + "code": "pattern", + "description": "matched by .*\\d.*", + "rule": ".*\\d.*", }, "nodeConfig": { "actual": [Function], @@ -276,7 +276,7 @@ exports[`arktypeResolver > should return a single error from arktypeResolver whe "path": [ "password", ], - "rule": ".*\\\\d.*", + "rule": ".*\\d.*", Symbol(ArkTypeInternalKind): "error", }, ], @@ -284,11 +284,11 @@ exports[`arktypeResolver > should return a single error from arktypeResolver whe "code": "union", "errors": [ ArkError { - "code": "regex", + "code": "pattern", "data": "___", "description": "matched by .*[A-Za-z].*", "input": { - "code": "regex", + "code": "pattern", "description": "matched by .*[A-Za-z].*", "rule": ".*[A-Za-z].*", }, @@ -306,13 +306,13 @@ exports[`arktypeResolver > should return a single error from arktypeResolver whe Symbol(ArkTypeInternalKind): "error", }, ArkError { - "code": "regex", + "code": "pattern", "data": "___", - "description": "matched by .*\\\\d.*", + "description": "matched by .*\\d.*", "input": { - "code": "regex", - "description": "matched by .*\\\\d.*", - "rule": ".*\\\\d.*", + "code": "pattern", + "description": "matched by .*\\d.*", + "rule": ".*\\d.*", }, "nodeConfig": { "actual": [Function], @@ -324,7 +324,7 @@ exports[`arktypeResolver > should return a single error from arktypeResolver whe "path": [ "password", ], - "rule": ".*\\\\d.*", + "rule": ".*\\d.*", Symbol(ArkTypeInternalKind): "error", }, ], @@ -360,12 +360,12 @@ exports[`arktypeResolver > should return a single error from arktypeResolver whe }, "input": { "code": "required", - "missingValueDescription": "a string and more than length 1", + "missingValueDescription": "a string", "relativePath": [ "repeatPassword", ], }, - "missingValueDescription": "a string and more than length 1", + "missingValueDescription": "a string", "nodeConfig": { "actual": [Function], "description": [Function], @@ -398,12 +398,12 @@ exports[`arktypeResolver > should return a single error from arktypeResolver whe }, "input": { "code": "required", - "missingValueDescription": "string[]", + "missingValueDescription": "an array", "relativePath": [ "tags", ], }, - "missingValueDescription": "string[]", + "missingValueDescription": "an array", "nodeConfig": { "actual": [Function], "description": [Function], @@ -436,12 +436,12 @@ exports[`arktypeResolver > should return a single error from arktypeResolver whe }, "input": { "code": "required", - "missingValueDescription": "a string and more than length 2", + "missingValueDescription": "a string", "relativePath": [ "username", ], }, - "missingValueDescription": "a string and more than length 2", + "missingValueDescription": "a string", "nodeConfig": { "actual": [Function], "description": [Function], diff --git a/arktype/src/__tests__/arktype.ts b/arktype/src/__tests__/arktype.ts index f3868177..cb557951 100644 --- a/arktype/src/__tests__/arktype.ts +++ b/arktype/src/__tests__/arktype.ts @@ -1,5 +1,5 @@ import { arktypeResolver } from '..'; -import { schema, validData, invalidData, fields } from './__fixtures__/data'; +import { fields, invalidData, schema, validData } from './__fixtures__/data'; const shouldUseNativeValidation = false; diff --git a/arktype/src/arktype.ts b/arktype/src/arktype.ts index 7d74ec4b..3c5c6952 100644 --- a/arktype/src/arktype.ts +++ b/arktype/src/arktype.ts @@ -1,7 +1,7 @@ -import { FieldError, FieldErrors } from 'react-hook-form'; import { toNestErrors, validateFieldsNatively } from '@hookform/resolvers'; -import type { Resolver } from './types'; import { ArkErrors } from 'arktype'; +import { FieldError, FieldErrors } from 'react-hook-form'; +import type { Resolver } from './types'; const parseErrorSchema = (e: ArkErrors): Record => { // copy code to type to match FieldError shape diff --git a/arktype/src/types.ts b/arktype/src/types.ts index 4e0c9da6..97c9d482 100644 --- a/arktype/src/types.ts +++ b/arktype/src/types.ts @@ -1,5 +1,5 @@ -import { FieldValues, ResolverResult, ResolverOptions } from 'react-hook-form'; import { Type } from 'arktype'; +import { FieldValues, ResolverOptions, ResolverResult } from 'react-hook-form'; export type Resolver = >( schema: T, diff --git a/biome.json b/biome.json new file mode 100644 index 00000000..17434226 --- /dev/null +++ b/biome.json @@ -0,0 +1,99 @@ +{ + "$schema": "https://biomejs.dev/schemas/1.8.3/schema.json", + "files": { + "ignore": ["**/dist/**"] + }, + "formatter": { + "enabled": true, + "formatWithErrors": false, + "indentStyle": "space", + "indentWidth": 2, + "lineEnding": "lf", + "lineWidth": 80, + "attributePosition": "auto" + }, + "organizeImports": { + "enabled": true + }, + "linter": { + "enabled": true, + "rules": { + "recommended": false, + "complexity": { + "noBannedTypes": "error", + "noUselessTypeConstraint": "error" + }, + "correctness": { + "noPrecisionLoss": "error", + "noUnusedVariables": "off", + "useArrayLiterals": "off" + }, + "style": { + "noNamespace": "error", + "noNonNullAssertion": "off", + "useAsConstAssertion": "error", + "useBlockStatements": "error" + }, + "suspicious": { + "noExplicitAny": "off", + "noExtraNonNullAssertion": "error", + "noMisleadingInstantiator": "error", + "noUnsafeDeclarationMerging": "error" + } + } + }, + "javascript": { + "formatter": { + "jsxQuoteStyle": "double", + "quoteProperties": "asNeeded", + "trailingCommas": "all", + "semicolons": "always", + "arrowParentheses": "always", + "bracketSpacing": true, + "bracketSameLine": false, + "quoteStyle": "single", + "attributePosition": "auto" + } + }, + "overrides": [ + { + "include": ["config/*.js"], + "linter": { + "rules": {} + } + }, + { + "include": ["*.ts", "*.tsx", "*.mts", "*.cts"], + "linter": { + "rules": { + "correctness": { + "noConstAssign": "off", + "noGlobalObjectCalls": "off", + "noInvalidConstructorSuper": "off", + "noInvalidNewBuiltin": "off", + "noNewSymbol": "off", + "noSetterReturn": "off", + "noUndeclaredVariables": "off", + "noUnreachable": "off", + "noUnreachableSuper": "off" + }, + "style": { + "noArguments": "error", + "noVar": "error", + "useConst": "error" + }, + "suspicious": { + "noDuplicateClassMembers": "off", + "noDuplicateObjectKeys": "off", + "noDuplicateParameters": "off", + "noFunctionAssign": "off", + "noImportAssign": "off", + "noRedeclare": "off", + "noUnsafeNegation": "off", + "useGetterReturn": "off" + } + } + } + } + ] +} diff --git a/bun.lockb b/bun.lockb new file mode 100755 index 0000000000000000000000000000000000000000..b6759b67ab85881e78b51711aeed1531a756d5a9 GIT binary patch literal 307254 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

fAVU=lDHm;y`%rUBCd8iULNW&{0!0YD%? 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 Qk`$&#n&SLl|4;w-fB$F4bN~PV literal 0 HcmV?d00001 diff --git a/class-validator/src/__tests__/Form-native-validation.tsx b/class-validator/src/__tests__/Form-native-validation.tsx index 1076ed6b..ba2945a1 100644 --- a/class-validator/src/__tests__/Form-native-validation.tsx +++ b/class-validator/src/__tests__/Form-native-validation.tsx @@ -1,9 +1,9 @@ -import React from 'react'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; +import { IsNotEmpty } from 'class-validator'; +import React from 'react'; import { SubmitHandler, useForm } from 'react-hook-form'; import { classValidatorResolver } from '..'; -import { IsNotEmpty } from 'class-validator'; class Schema { @IsNotEmpty() diff --git a/class-validator/src/__tests__/Form.tsx b/class-validator/src/__tests__/Form.tsx index dd56d12c..52984f67 100644 --- a/class-validator/src/__tests__/Form.tsx +++ b/class-validator/src/__tests__/Form.tsx @@ -1,9 +1,9 @@ -import React from 'react'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; +import { IsNotEmpty } from 'class-validator'; +import React from 'react'; import { SubmitHandler, useForm } from 'react-hook-form'; import { classValidatorResolver } from '..'; -import { IsNotEmpty } from 'class-validator'; class Schema { @IsNotEmpty() diff --git a/class-validator/src/__tests__/__snapshots__/class-validator.ts.snap b/class-validator/src/__tests__/__snapshots__/class-validator.ts.snap index 5b40164a..0a61fa96 100644 --- a/class-validator/src/__tests__/__snapshots__/class-validator.ts.snap +++ b/class-validator/src/__tests__/__snapshots__/class-validator.ts.snap @@ -138,7 +138,7 @@ exports[`classValidatorResolver > should return all the errors from classValidat "type": "isLength", "types": { "isLength": "username must be longer than or equal to 3 characters", - "matches": "username must match /^\\\\w+$/ regular expression", + "matches": "username must match /^\\w+$/ regular expression", }, }, }, @@ -198,7 +198,7 @@ exports[`classValidatorResolver > should return all the errors from classValidat "type": "isLength", "types": { "isLength": "username must be longer than or equal to 3 characters", - "matches": "username must match /^\\\\w+$/ regular expression", + "matches": "username must match /^\\w+$/ regular expression", }, }, }, diff --git a/class-validator/src/__tests__/class-validator.ts b/class-validator/src/__tests__/class-validator.ts index 6516c51e..efbde492 100644 --- a/class-validator/src/__tests__/class-validator.ts +++ b/class-validator/src/__tests__/class-validator.ts @@ -1,9 +1,9 @@ -/* eslint-disable no-console, @typescript-eslint/ban-ts-comment */ -import { classValidatorResolver } from '..'; -import { Schema, validData, fields, invalidData } from './__fixtures__/data'; -import * as classValidator from 'class-validator'; import { Expose, Type } from 'class-transformer'; +import * as classValidator from 'class-validator'; import { IsDefined, IsNumber, Max, Min } from 'class-validator'; +/* eslint-disable no-console, @typescript-eslint/ban-ts-comment */ +import { classValidatorResolver } from '..'; +import { Schema, fields, invalidData, validData } from './__fixtures__/data'; const shouldUseNativeValidation = false; diff --git a/class-validator/src/class-validator.ts b/class-validator/src/class-validator.ts index cd103707..742eaf65 100644 --- a/class-validator/src/class-validator.ts +++ b/class-validator/src/class-validator.ts @@ -1,7 +1,7 @@ -import { FieldErrors } from 'react-hook-form'; import { toNestErrors, validateFieldsNatively } from '@hookform/resolvers'; import { plainToClass } from 'class-transformer'; -import { validate, validateSync, ValidationError } from 'class-validator'; +import { ValidationError, validate, validateSync } from 'class-validator'; +import { FieldErrors } from 'react-hook-form'; import type { Resolver } from './types'; const parseErrors = ( diff --git a/class-validator/src/types.ts b/class-validator/src/types.ts index a0acf573..dd43d759 100644 --- a/class-validator/src/types.ts +++ b/class-validator/src/types.ts @@ -1,6 +1,6 @@ -import { FieldValues, ResolverOptions, ResolverResult } from 'react-hook-form'; -import { ValidatorOptions } from 'class-validator'; import { ClassConstructor, ClassTransformOptions } from 'class-transformer'; +import { ValidatorOptions } from 'class-validator'; +import { FieldValues, ResolverOptions, ResolverResult } from 'react-hook-form'; export type Resolver = ( schema: ClassConstructor, diff --git a/computed-types/src/__tests__/Form-native-validation.tsx b/computed-types/src/__tests__/Form-native-validation.tsx index 3bc6e9f0..75e53ecc 100644 --- a/computed-types/src/__tests__/Form-native-validation.tsx +++ b/computed-types/src/__tests__/Form-native-validation.tsx @@ -1,8 +1,8 @@ -import React from 'react'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; -import { useForm } from 'react-hook-form'; import Schema, { Type, string } from 'computed-types'; +import React from 'react'; +import { useForm } from 'react-hook-form'; import { computedTypesResolver } from '..'; const USERNAME_REQUIRED_MESSAGE = 'username field is required'; diff --git a/computed-types/src/__tests__/Form.tsx b/computed-types/src/__tests__/Form.tsx index ba09983b..7989e2db 100644 --- a/computed-types/src/__tests__/Form.tsx +++ b/computed-types/src/__tests__/Form.tsx @@ -1,8 +1,8 @@ -import React from 'react'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; -import { useForm } from 'react-hook-form'; import Schema, { Type, string } from 'computed-types'; +import React from 'react'; +import { useForm } from 'react-hook-form'; import { computedTypesResolver } from '..'; const schema = Schema({ diff --git a/computed-types/src/__tests__/__fixtures__/data.ts b/computed-types/src/__tests__/__fixtures__/data.ts index afe25a89..8c0b9f02 100644 --- a/computed-types/src/__tests__/__fixtures__/data.ts +++ b/computed-types/src/__tests__/__fixtures__/data.ts @@ -1,5 +1,5 @@ -import { Field, InternalFieldName } from 'react-hook-form'; import Schema, { Type, string, number, array, boolean } from 'computed-types'; +import { Field, InternalFieldName } from 'react-hook-form'; export const schema = Schema({ username: string.regexp(/^\w+$/).min(3).max(30), diff --git a/computed-types/src/__tests__/__snapshots__/computed-types.ts.snap b/computed-types/src/__tests__/__snapshots__/computed-types.ts.snap index eeba8f1c..d4ccb3a6 100644 --- a/computed-types/src/__tests__/__snapshots__/computed-types.ts.snap +++ b/computed-types/src/__tests__/__snapshots__/computed-types.ts.snap @@ -16,7 +16,7 @@ exports[`computedTypesResolver > should return a single error from computedTypes }, }, "birthYear": { - "message": "Expect value to be \\"number\\"", + "message": "Expect value to be "number"", "ref": undefined, "type": "ValidationError", }, @@ -28,18 +28,18 @@ exports[`computedTypesResolver > should return a single error from computedTypes "type": "ValidationError", }, "enabled": { - "message": "Expect value to be \\"boolean\\"", + "message": "Expect value to be "boolean"", "ref": undefined, "type": "ValidationError", }, "like": { "id": { - "message": "Expect value to be \\"number\\"", + "message": "Expect value to be "number"", "ref": undefined, "type": "ValidationError", }, "name": { - "message": "Expect value to be \\"string\\"", + "message": "Expect value to be "string"", "ref": undefined, "type": "ValidationError", }, @@ -52,7 +52,7 @@ exports[`computedTypesResolver > should return a single error from computedTypes "type": "ValidationError", }, "repeatPassword": { - "message": "Expect value to be \\"string\\"", + "message": "Expect value to be "string"", "ref": undefined, "type": "ValidationError", }, @@ -62,7 +62,7 @@ exports[`computedTypesResolver > should return a single error from computedTypes "type": "ValidationError", }, "username": { - "message": "Expect value to be \\"string\\"", + "message": "Expect value to be "string"", "ref": { "name": "username", }, diff --git a/computed-types/src/__tests__/computed-types.ts b/computed-types/src/__tests__/computed-types.ts index d5c97c61..262061e1 100644 --- a/computed-types/src/__tests__/computed-types.ts +++ b/computed-types/src/__tests__/computed-types.ts @@ -1,5 +1,5 @@ import { computedTypesResolver } from '..'; -import { schema, validData, invalidData, fields } from './__fixtures__/data'; +import { fields, invalidData, schema, validData } from './__fixtures__/data'; const shouldUseNativeValidation = false; diff --git a/computed-types/src/computed-types.ts b/computed-types/src/computed-types.ts index 1cf1306a..d0efa48e 100644 --- a/computed-types/src/computed-types.ts +++ b/computed-types/src/computed-types.ts @@ -1,7 +1,7 @@ -import type { FieldErrors } from 'react-hook-form'; import { toNestErrors, validateFieldsNatively } from '@hookform/resolvers'; -import type { Resolver } from './types'; import type { ValidationError } from 'computed-types'; +import type { FieldErrors } from 'react-hook-form'; +import type { Resolver } from './types'; const isValidationError = (error: any): error is ValidationError => error.errors != null; diff --git a/computed-types/src/types.ts b/computed-types/src/types.ts index fcb8c4c7..2c3ff74f 100644 --- a/computed-types/src/types.ts +++ b/computed-types/src/types.ts @@ -1,7 +1,7 @@ import type { FieldValues, - ResolverResult, ResolverOptions, + ResolverResult, } from 'react-hook-form'; export type Resolver = ( diff --git a/effect-ts/src/__tests__/Form-native-validation.tsx b/effect-ts/src/__tests__/Form-native-validation.tsx index a9a6373b..2f7ef231 100644 --- a/effect-ts/src/__tests__/Form-native-validation.tsx +++ b/effect-ts/src/__tests__/Form-native-validation.tsx @@ -1,9 +1,9 @@ -import React from 'react'; +import { Schema } from '@effect/schema'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; +import React from 'react'; import { useForm } from 'react-hook-form'; import { effectTsResolver } from '..'; -import { Schema } from '@effect/schema'; const USERNAME_REQUIRED_MESSAGE = 'username field is required'; const PASSWORD_REQUIRED_MESSAGE = 'password field is required'; diff --git a/effect-ts/src/__tests__/Form.tsx b/effect-ts/src/__tests__/Form.tsx index bd6c658e..ee6a84a5 100644 --- a/effect-ts/src/__tests__/Form.tsx +++ b/effect-ts/src/__tests__/Form.tsx @@ -1,9 +1,9 @@ -import React from 'react'; +import { Schema } from '@effect/schema'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; +import React from 'react'; import { useForm } from 'react-hook-form'; import { effectTsResolver } from '..'; -import { Schema } from '@effect/schema'; const USERNAME_REQUIRED_MESSAGE = 'username field is required'; const PASSWORD_REQUIRED_MESSAGE = 'password field is required'; diff --git a/effect-ts/src/__tests__/__snapshots__/effect-ts.ts.snap b/effect-ts/src/__tests__/__snapshots__/effect-ts.ts.snap index 25e208b5..6d97f0e1 100644 --- a/effect-ts/src/__tests__/__snapshots__/effect-ts.ts.snap +++ b/effect-ts/src/__tests__/__snapshots__/effect-ts.ts.snap @@ -4,7 +4,7 @@ exports[`effectTsResolver > should return a single error from effectTsResolver w { "errors": { "animal": { - "message": "Expected \\"snake\\", actual [\\"dog\\"]", + "message": "Expected "snake", actual ["dog"]", "ref": undefined, "type": "Type", }, @@ -12,7 +12,7 @@ exports[`effectTsResolver > should return a single error from effectTsResolver w , , { - "message": "Expected a number, actual \\"3\\"", + "message": "Expected number, actual "3"", "ref": undefined, "type": "Type", }, diff --git a/effect-ts/src/__tests__/effect-ts.ts b/effect-ts/src/__tests__/effect-ts.ts index 344284c7..409adacd 100644 --- a/effect-ts/src/__tests__/effect-ts.ts +++ b/effect-ts/src/__tests__/effect-ts.ts @@ -1,5 +1,5 @@ import { effectTsResolver } from '..'; -import { schema, validData, fields, invalidData } from './__fixtures__/data'; +import { fields, invalidData, schema, validData } from './__fixtures__/data'; const shouldUseNativeValidation = false; diff --git a/effect-ts/src/effect-ts.ts b/effect-ts/src/effect-ts.ts index 6fc6a6e1..0dc8f818 100644 --- a/effect-ts/src/effect-ts.ts +++ b/effect-ts/src/effect-ts.ts @@ -1,5 +1,5 @@ -import { decodeUnknown } from '@effect/schema/ParseResult'; import { formatIssue } from '@effect/schema/ArrayFormatter'; +import { decodeUnknown } from '@effect/schema/ParseResult'; import { toNestErrors, validateFieldsNatively } from '@hookform/resolvers'; import * as Effect from 'effect/Effect'; import type { FieldErrors } from 'react-hook-form'; diff --git a/io-ts/src/__tests__/Form-native-validation.tsx b/io-ts/src/__tests__/Form-native-validation.tsx index 60ce18f7..bf8ce0a9 100644 --- a/io-ts/src/__tests__/Form-native-validation.tsx +++ b/io-ts/src/__tests__/Form-native-validation.tsx @@ -1,9 +1,9 @@ -import React from 'react'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; -import { useForm } from 'react-hook-form'; import * as t from 'io-ts'; import * as tt from 'io-ts-types'; +import React from 'react'; +import { useForm } from 'react-hook-form'; import { ioTsResolver } from '..'; const USERNAME_REQUIRED_MESSAGE = 'username field is required'; diff --git a/io-ts/src/__tests__/Form.tsx b/io-ts/src/__tests__/Form.tsx index 14a3463e..c641dfcb 100644 --- a/io-ts/src/__tests__/Form.tsx +++ b/io-ts/src/__tests__/Form.tsx @@ -1,9 +1,9 @@ -import React from 'react'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; -import { useForm } from 'react-hook-form'; import * as t from 'io-ts'; import * as tt from 'io-ts-types'; +import React from 'react'; +import { useForm } from 'react-hook-form'; import { ioTsResolver } from '..'; const schema = t.type({ diff --git a/io-ts/src/__tests__/__snapshots__/io-ts.ts.snap b/io-ts/src/__tests__/__snapshots__/io-ts.ts.snap index d64003dc..badecbd4 100644 --- a/io-ts/src/__tests__/__snapshots__/io-ts.ts.snap +++ b/io-ts/src/__tests__/__snapshots__/io-ts.ts.snap @@ -4,7 +4,7 @@ exports[`ioTsResolver > should return a single error from ioTsResolver when vali { "errors": { "animal": { - "message": "expected string but got [\\"dog\\"]", + "message": "expected string but got ["dog"]", "ref": undefined, "type": "string", }, @@ -21,7 +21,7 @@ exports[`ioTsResolver > should return a single error from ioTsResolver when vali , , { - "message": "expected number but got \\"3\\"", + "message": "expected number but got "3"", "ref": undefined, "type": "number", }, @@ -45,14 +45,14 @@ exports[`ioTsResolver > should return all the errors from ioTsResolver when vali { "errors": { "animal": { - "message": "expected \\"snake\\" but got [\\"dog\\"]", + "message": "expected "snake" but got ["dog"]", "ref": undefined, - "type": "\\"snake\\"", + "type": ""snake"", "types": { - "\\"bird\\"": "expected \\"bird\\" but got [\\"dog\\"]", - "\\"snake\\"": "expected \\"snake\\" but got [\\"dog\\"]", - "number": "expected number but got [\\"dog\\"]", - "string": "expected string but got [\\"dog\\"]", + ""bird"": "expected "bird" but got ["dog"]", + ""snake"": "expected "snake" but got ["dog"]", + "number": "expected number but got ["dog"]", + "string": "expected string but got ["dog"]", }, }, "like": [ @@ -68,7 +68,7 @@ exports[`ioTsResolver > should return all the errors from ioTsResolver when vali , , { - "message": "expected number but got \\"3\\"", + "message": "expected number but got "3"", "ref": undefined, "type": "number", }, diff --git a/io-ts/src/__tests__/errorsToRecord.ts b/io-ts/src/__tests__/errorsToRecord.ts index 06a5f46d..9174a952 100644 --- a/io-ts/src/__tests__/errorsToRecord.ts +++ b/io-ts/src/__tests__/errorsToRecord.ts @@ -1,47 +1,57 @@ -import * as t from 'io-ts'; import { isLeft } from 'fp-ts/Either'; +import * as t from 'io-ts'; import errorsToRecord from '../errorsToRecord'; const assertLeft = (result: t.Validation) => { expect(isLeft(result)).toBe(true); - if (!isLeft(result)) {throw new Error('panic! error is not of the "left" type, should be unreachable');} + if (!isLeft(result)) { + throw new Error( + 'panic! error is not of the "left" type, should be unreachable', + ); + } return result.left; }; const FIRST_NAME_FIELD_PATH = 'firstName' as const; -const FIRST_NAME_ERROR_SHAPE = {message: 'expected string but got undefined', type: 'string'}; +const FIRST_NAME_ERROR_SHAPE = { + message: 'expected string but got undefined', + type: 'string', +}; describe('errorsToRecord', () => { it('should return a correct error for an exact intersection type error object', () => { // a recommended pattern from https://github.com/gcanti/io-ts/blob/master/index.md#mixing-required-and-optional-props - const schema = t.exact(t.intersection([ - t.type({ - [FIRST_NAME_FIELD_PATH]: t.string - }), - t.partial({ - lastName: t.string - }) - ])); + const schema = t.exact( + t.intersection([ + t.type({ + [FIRST_NAME_FIELD_PATH]: t.string, + }), + t.partial({ + lastName: t.string, + }), + ]), + ); const error = assertLeft(schema.decode({})); const record = errorsToRecord(false)(error); expect(record[FIRST_NAME_FIELD_PATH]).toMatchObject(FIRST_NAME_ERROR_SHAPE); }); it('should return a correct error for a branded intersection', () => { interface Brand { - readonly Brand: unique symbol + readonly Brand: unique symbol; } - const schema = t.brand(t.intersection([ + const schema = t.brand( + t.intersection([ t.type({ - [FIRST_NAME_FIELD_PATH]: t.string + [FIRST_NAME_FIELD_PATH]: t.string, }), t.type({ - lastName: t.string - }) + lastName: t.string, + }), ]), (_x): _x is t.Branded => true, - 'Brand' + 'Brand', ); const error = assertLeft(schema.decode({})); const record = errorsToRecord(false)(error); expect(record[FIRST_NAME_FIELD_PATH]).toMatchObject(FIRST_NAME_ERROR_SHAPE); - }) -}); \ No newline at end of file + }); +}); diff --git a/io-ts/src/__tests__/io-ts.ts b/io-ts/src/__tests__/io-ts.ts index dc7160f8..0b1d1d31 100644 --- a/io-ts/src/__tests__/io-ts.ts +++ b/io-ts/src/__tests__/io-ts.ts @@ -1,5 +1,5 @@ import { ioTsResolver } from '..'; -import { schema, validData, fields, invalidData } from './__fixtures__/data'; +import { fields, invalidData, schema, validData } from './__fixtures__/data'; const shouldUseNativeValidation = false; diff --git a/io-ts/src/errorsToRecord.ts b/io-ts/src/errorsToRecord.ts index 3d8a07cd..1828cd00 100644 --- a/io-ts/src/errorsToRecord.ts +++ b/io-ts/src/errorsToRecord.ts @@ -1,3 +1,9 @@ +import * as Either from 'fp-ts/Either'; +import * as Option from 'fp-ts/Option'; +import * as ReadonlyArray from 'fp-ts/ReadonlyArray'; +import * as ReadonlyRecord from 'fp-ts/ReadonlyRecord'; +import * as SemiGroup from 'fp-ts/Semigroup'; +import { absurd, flow, identity, not, pipe } from 'fp-ts/function'; import * as t from 'io-ts'; import { ExactType, @@ -5,27 +11,30 @@ import { RefinementType, TaggedUnionType, UnionType, - ValidationError + ValidationError, } from 'io-ts'; -import { absurd, flow, identity, not, pipe } from 'fp-ts/function'; -import * as ReadonlyArray from 'fp-ts/ReadonlyArray'; -import * as Option from 'fp-ts/Option'; -import * as Either from 'fp-ts/Either'; -import * as SemiGroup from 'fp-ts/Semigroup'; import arrayToPath from './arrayToPath'; -import * as ReadonlyRecord from 'fp-ts/ReadonlyRecord'; import { ErrorObject, FieldErrorWithPath } from './types'; -const INSTANCE_TYPES_TO_FILTER = [TaggedUnionType, UnionType, IntersectionType, ExactType, RefinementType]; +const INSTANCE_TYPES_TO_FILTER = [ + TaggedUnionType, + UnionType, + IntersectionType, + ExactType, + RefinementType, +]; const formatErrorPath = (context: t.Context): string => pipe( context, ReadonlyArray.filterMapWithIndex((index, contextEntry) => { const previousIndex = index - 1; - const previousContextEntry = previousIndex === -1 ? undefined : context[previousIndex]; + const previousContextEntry = + previousIndex === -1 ? undefined : context[previousIndex]; const shouldBeFiltered = previousContextEntry === undefined || - INSTANCE_TYPES_TO_FILTER.some((type) => previousContextEntry.type instanceof type) + INSTANCE_TYPES_TO_FILTER.some( + (type) => previousContextEntry.type instanceof type, + ); return shouldBeFiltered ? Option.none : Option.some(contextEntry); }), diff --git a/io-ts/src/io-ts.ts b/io-ts/src/io-ts.ts index c03c1e05..02ddb8e1 100644 --- a/io-ts/src/io-ts.ts +++ b/io-ts/src/io-ts.ts @@ -1,6 +1,6 @@ +import { toNestErrors, validateFieldsNatively } from '@hookform/resolvers'; import * as Either from 'fp-ts/Either'; import { pipe } from 'fp-ts/function'; -import { toNestErrors, validateFieldsNatively } from '@hookform/resolvers'; import errorsToRecord from './errorsToRecord'; import { Resolver } from './types'; diff --git a/joi/src/__tests__/Form-native-validation.tsx b/joi/src/__tests__/Form-native-validation.tsx index 4cfcfe33..f4a2e83c 100644 --- a/joi/src/__tests__/Form-native-validation.tsx +++ b/joi/src/__tests__/Form-native-validation.tsx @@ -1,8 +1,8 @@ -import React from 'react'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; -import { useForm } from 'react-hook-form'; import * as Joi from 'joi'; +import React from 'react'; +import { useForm } from 'react-hook-form'; import { joiResolver } from '..'; const schema = Joi.object({ diff --git a/joi/src/__tests__/Form.tsx b/joi/src/__tests__/Form.tsx index d9edafcf..038fe9d2 100644 --- a/joi/src/__tests__/Form.tsx +++ b/joi/src/__tests__/Form.tsx @@ -1,8 +1,8 @@ -import React from 'react'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; -import { useForm } from 'react-hook-form'; import * as Joi from 'joi'; +import React from 'react'; +import { useForm } from 'react-hook-form'; import { joiResolver } from '..'; const schema = Joi.object({ diff --git a/joi/src/__tests__/__snapshots__/joi.ts.snap b/joi/src/__tests__/__snapshots__/joi.ts.snap index 8fa95984..06dee50b 100644 --- a/joi/src/__tests__/__snapshots__/joi.ts.snap +++ b/joi/src/__tests__/__snapshots__/joi.ts.snap @@ -4,50 +4,50 @@ exports[`joiResolver > should return a single error from joiResolver when valida { "errors": { "birthYear": { - "message": "\\"birthYear\\" must be a number", + "message": ""birthYear" must be a number", "ref": undefined, "type": "number.base", }, "email": { - "message": "\\"email\\" is not allowed to be empty", + "message": ""email" is not allowed to be empty", "ref": { "name": "email", }, "type": "string.empty", }, "enabled": { - "message": "\\"enabled\\" is required", + "message": ""enabled" is required", "ref": undefined, "type": "any.required", }, "like": [ { "id": { - "message": "\\"like[0].id\\" must be a number", + "message": ""like[0].id" must be a number", "ref": undefined, "type": "number.base", }, "name": { - "message": "\\"like[0].name\\" length must be 4 characters long", + "message": ""like[0].name" length must be 4 characters long", "ref": undefined, "type": "string.length", }, }, ], "password": { - "message": "\\"password\\" with value \\"___\\" fails to match the One uppercase character pattern", + "message": ""password" with value "___" fails to match the One uppercase character pattern", "ref": { "name": "password", }, "type": "string.pattern.name", }, "tags": { - "message": "\\"tags\\" is required", + "message": ""tags" is required", "ref": undefined, "type": "any.required", }, "username": { - "message": "\\"username\\" is required", + "message": ""username" is required", "ref": { "name": "username", }, @@ -62,50 +62,50 @@ exports[`joiResolver > should return a single error from joiResolver with \`mode { "errors": { "birthYear": { - "message": "\\"birthYear\\" must be a number", + "message": ""birthYear" must be a number", "ref": undefined, "type": "number.base", }, "email": { - "message": "\\"email\\" is not allowed to be empty", + "message": ""email" is not allowed to be empty", "ref": { "name": "email", }, "type": "string.empty", }, "enabled": { - "message": "\\"enabled\\" is required", + "message": ""enabled" is required", "ref": undefined, "type": "any.required", }, "like": [ { "id": { - "message": "\\"like[0].id\\" must be a number", + "message": ""like[0].id" must be a number", "ref": undefined, "type": "number.base", }, "name": { - "message": "\\"like[0].name\\" length must be 4 characters long", + "message": ""like[0].name" length must be 4 characters long", "ref": undefined, "type": "string.length", }, }, ], "password": { - "message": "\\"password\\" with value \\"___\\" fails to match the One uppercase character pattern", + "message": ""password" with value "___" fails to match the One uppercase character pattern", "ref": { "name": "password", }, "type": "string.pattern.name", }, "tags": { - "message": "\\"tags\\" is required", + "message": ""tags" is required", "ref": undefined, "type": "any.required", }, "username": { - "message": "\\"username\\" is required", + "message": ""username" is required", "ref": { "name": "username", }, @@ -120,83 +120,83 @@ exports[`joiResolver > should return all the errors from joiResolver when valida { "errors": { "birthYear": { - "message": "\\"birthYear\\" must be a number", + "message": ""birthYear" must be a number", "ref": undefined, "type": "number.base", "types": { - "number.base": "\\"birthYear\\" must be a number", + "number.base": ""birthYear" must be a number", }, }, "email": { - "message": "\\"email\\" is not allowed to be empty", + "message": ""email" is not allowed to be empty", "ref": { "name": "email", }, "type": "string.empty", "types": { - "string.empty": "\\"email\\" is not allowed to be empty", + "string.empty": ""email" is not allowed to be empty", }, }, "enabled": { - "message": "\\"enabled\\" is required", + "message": ""enabled" is required", "ref": undefined, "type": "any.required", "types": { - "any.required": "\\"enabled\\" is required", + "any.required": ""enabled" is required", }, }, "like": [ { "id": { - "message": "\\"like[0].id\\" must be a number", + "message": ""like[0].id" must be a number", "ref": undefined, "type": "number.base", "types": { - "number.base": "\\"like[0].id\\" must be a number", + "number.base": ""like[0].id" must be a number", }, }, "name": { - "message": "\\"like[0].name\\" length must be 4 characters long", + "message": ""like[0].name" length must be 4 characters long", "ref": undefined, "type": "string.length", "types": { - "string.length": "\\"like[0].name\\" length must be 4 characters long", - "string.pattern.base": "\\"like[0].name\\" with value \\"r\\" fails to match the required pattern: /a/", + "string.length": ""like[0].name" length must be 4 characters long", + "string.pattern.base": ""like[0].name" with value "r" fails to match the required pattern: /a/", }, }, }, ], "password": { - "message": "\\"password\\" with value \\"___\\" fails to match the One uppercase character pattern", + "message": ""password" with value "___" fails to match the One uppercase character pattern", "ref": { "name": "password", }, "type": "string.pattern.name", "types": { - "string.min": "\\"password\\" length must be at least 8 characters long", + "string.min": ""password" length must be at least 8 characters long", "string.pattern.name": [ - "\\"password\\" with value \\"___\\" fails to match the One uppercase character pattern", - "\\"password\\" with value \\"___\\" fails to match the One lowercase character pattern", - "\\"password\\" with value \\"___\\" fails to match the One number pattern", + ""password" with value "___" fails to match the One uppercase character pattern", + ""password" with value "___" fails to match the One lowercase character pattern", + ""password" with value "___" fails to match the One number pattern", ], }, }, "tags": { - "message": "\\"tags\\" is required", + "message": ""tags" is required", "ref": undefined, "type": "any.required", "types": { - "any.required": "\\"tags\\" is required", + "any.required": ""tags" is required", }, }, "username": { - "message": "\\"username\\" is required", + "message": ""username" is required", "ref": { "name": "username", }, "type": "any.required", "types": { - "any.required": "\\"username\\" is required", + "any.required": ""username" is required", }, }, }, @@ -208,83 +208,83 @@ exports[`joiResolver > should return all the errors from joiResolver when valida { "errors": { "birthYear": { - "message": "\\"birthYear\\" must be a number", + "message": ""birthYear" must be a number", "ref": undefined, "type": "number.base", "types": { - "number.base": "\\"birthYear\\" must be a number", + "number.base": ""birthYear" must be a number", }, }, "email": { - "message": "\\"email\\" is not allowed to be empty", + "message": ""email" is not allowed to be empty", "ref": { "name": "email", }, "type": "string.empty", "types": { - "string.empty": "\\"email\\" is not allowed to be empty", + "string.empty": ""email" is not allowed to be empty", }, }, "enabled": { - "message": "\\"enabled\\" is required", + "message": ""enabled" is required", "ref": undefined, "type": "any.required", "types": { - "any.required": "\\"enabled\\" is required", + "any.required": ""enabled" is required", }, }, "like": [ { "id": { - "message": "\\"like[0].id\\" must be a number", + "message": ""like[0].id" must be a number", "ref": undefined, "type": "number.base", "types": { - "number.base": "\\"like[0].id\\" must be a number", + "number.base": ""like[0].id" must be a number", }, }, "name": { - "message": "\\"like[0].name\\" length must be 4 characters long", + "message": ""like[0].name" length must be 4 characters long", "ref": undefined, "type": "string.length", "types": { - "string.length": "\\"like[0].name\\" length must be 4 characters long", - "string.pattern.base": "\\"like[0].name\\" with value \\"r\\" fails to match the required pattern: /a/", + "string.length": ""like[0].name" length must be 4 characters long", + "string.pattern.base": ""like[0].name" with value "r" fails to match the required pattern: /a/", }, }, }, ], "password": { - "message": "\\"password\\" with value \\"___\\" fails to match the One uppercase character pattern", + "message": ""password" with value "___" fails to match the One uppercase character pattern", "ref": { "name": "password", }, "type": "string.pattern.name", "types": { - "string.min": "\\"password\\" length must be at least 8 characters long", + "string.min": ""password" length must be at least 8 characters long", "string.pattern.name": [ - "\\"password\\" with value \\"___\\" fails to match the One uppercase character pattern", - "\\"password\\" with value \\"___\\" fails to match the One lowercase character pattern", - "\\"password\\" with value \\"___\\" fails to match the One number pattern", + ""password" with value "___" fails to match the One uppercase character pattern", + ""password" with value "___" fails to match the One lowercase character pattern", + ""password" with value "___" fails to match the One number pattern", ], }, }, "tags": { - "message": "\\"tags\\" is required", + "message": ""tags" is required", "ref": undefined, "type": "any.required", "types": { - "any.required": "\\"tags\\" is required", + "any.required": ""tags" is required", }, }, "username": { - "message": "\\"username\\" is required", + "message": ""username" is required", "ref": { "name": "username", }, "type": "any.required", "types": { - "any.required": "\\"username\\" is required", + "any.required": ""username" is required", }, }, }, diff --git a/joi/src/__tests__/joi.ts b/joi/src/__tests__/joi.ts index d01ca94f..36dc28b9 100644 --- a/joi/src/__tests__/joi.ts +++ b/joi/src/__tests__/joi.ts @@ -1,5 +1,5 @@ import { joiResolver } from '..'; -import { schema, validData, fields, invalidData } from './__fixtures__/data'; +import { fields, invalidData, schema, validData } from './__fixtures__/data'; const shouldUseNativeValidation = false; diff --git a/joi/src/joi.ts b/joi/src/joi.ts index 5b4baf4e..bdcd73d0 100644 --- a/joi/src/joi.ts +++ b/joi/src/joi.ts @@ -1,6 +1,6 @@ -import { appendErrors, FieldError } from 'react-hook-form'; import { toNestErrors, validateFieldsNatively } from '@hookform/resolvers'; import type { ValidationError } from 'joi'; +import { FieldError, appendErrors } from 'react-hook-form'; import { Resolver } from './types'; const parseErrorSchema = ( diff --git a/joi/src/types.ts b/joi/src/types.ts index 8047b81a..262c5cf4 100644 --- a/joi/src/types.ts +++ b/joi/src/types.ts @@ -1,9 +1,5 @@ -import { - FieldValues, - ResolverOptions, - ResolverResult, -} from 'react-hook-form'; import type { AsyncValidationOptions, Schema } from 'joi'; +import { FieldValues, ResolverOptions, ResolverResult } from 'react-hook-form'; export type Resolver = ( schema: T, diff --git a/lefthook.yml b/lefthook.yml new file mode 100644 index 00000000..2675a95c --- /dev/null +++ b/lefthook.yml @@ -0,0 +1,23 @@ +# EXAMPLE USAGE: +# +# Refer for explanation to following link: +# https://github.com/evilmartians/lefthook/blob/master/docs/configuration.md +# +# pre-push: +# commands: +# packages-audit: +# tags: frontend security +# run: yarn audit +# gems-audit: +# tags: backend security +# run: bundle audit +# +pre-commit: + parallel: true + commands: + lint: + glob: '*.{js,ts,jsx,tsx}' + run: bun lint {staged_files} + typescript: + glob: '*.{ts,tsx}' + run: bun tsc --noEmit diff --git a/nope/src/__tests__/Form-native-validation.tsx b/nope/src/__tests__/Form-native-validation.tsx index 986df89d..e0635b30 100644 --- a/nope/src/__tests__/Form-native-validation.tsx +++ b/nope/src/__tests__/Form-native-validation.tsx @@ -1,8 +1,8 @@ -import React from 'react'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; -import { useForm } from 'react-hook-form'; import Nope from 'nope-validator'; +import React from 'react'; +import { useForm } from 'react-hook-form'; import { nopeResolver } from '..'; const USERNAME_REQUIRED_MESSAGE = 'username field is required'; diff --git a/nope/src/__tests__/Form.tsx b/nope/src/__tests__/Form.tsx index e8980d3c..08194a53 100644 --- a/nope/src/__tests__/Form.tsx +++ b/nope/src/__tests__/Form.tsx @@ -1,8 +1,8 @@ -import React from 'react'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; -import { useForm } from 'react-hook-form'; import Nope from 'nope-validator'; +import React from 'react'; +import { useForm } from 'react-hook-form'; import { nopeResolver } from '..'; const schema = Nope.object().shape({ diff --git a/nope/src/__tests__/__fixtures__/data.ts b/nope/src/__tests__/__fixtures__/data.ts index c47fd60f..7068b578 100644 --- a/nope/src/__tests__/__fixtures__/data.ts +++ b/nope/src/__tests__/__fixtures__/data.ts @@ -1,5 +1,5 @@ -import { Field, InternalFieldName } from 'react-hook-form'; import Nope from 'nope-validator'; +import { Field, InternalFieldName } from 'react-hook-form'; export const schema = Nope.object().shape({ username: Nope.string().regex(/^\w+$/).min(2).max(30).required(), diff --git a/nope/src/__tests__/nope.ts b/nope/src/__tests__/nope.ts index d6aafefe..0aee7493 100644 --- a/nope/src/__tests__/nope.ts +++ b/nope/src/__tests__/nope.ts @@ -1,6 +1,6 @@ /* eslint-disable no-console, @typescript-eslint/ban-ts-comment */ import { nopeResolver } from '..'; -import { schema, validData, fields, invalidData } from './__fixtures__/data'; +import { fields, invalidData, schema, validData } from './__fixtures__/data'; const shouldUseNativeValidation = false; diff --git a/nope/src/nope.ts b/nope/src/nope.ts index dc9b5bc4..dd082b9c 100644 --- a/nope/src/nope.ts +++ b/nope/src/nope.ts @@ -1,6 +1,6 @@ -import type { FieldError, FieldErrors } from 'react-hook-form'; import { toNestErrors, validateFieldsNatively } from '@hookform/resolvers'; import type { ShapeErrors } from 'nope-validator/lib/cjs/types'; +import type { FieldError, FieldErrors } from 'react-hook-form'; import type { Resolver } from './types'; const parseErrors = ( diff --git a/nope/src/types.ts b/nope/src/types.ts index 6a927107..ced0f29b 100644 --- a/nope/src/types.ts +++ b/nope/src/types.ts @@ -1,9 +1,9 @@ +import type { NopeObject } from 'nope-validator/lib/cjs/NopeObject'; import type { FieldValues, ResolverOptions, ResolverResult, } from 'react-hook-form'; -import type { NopeObject } from 'nope-validator/lib/cjs/NopeObject'; type ValidateOptions = Parameters[2]; type Context = Parameters[1]; @@ -11,7 +11,7 @@ type Context = Parameters[1]; export type Resolver = ( schema: T, schemaOptions?: ValidateOptions, - resolverOptions?: { mode?: 'async' | 'sync', rawValues?: boolean; }, + resolverOptions?: { mode?: 'async' | 'sync'; rawValues?: boolean }, ) => ( values: TFieldValues, context: TContext | undefined, diff --git a/package.json b/package.json index 77b967a7..f9ab7b96 100644 --- a/package.json +++ b/package.json @@ -181,7 +181,7 @@ "access": "public" }, "scripts": { - "prepare": "run-s build:src build && check-export-map && husky install", + "prepare": "run-s build:src build && check-export-map", "build": "cross-env npm-run-all --parallel 'build:*'", "build:src": "microbundle build --globals react-hook-form=ReactHookForm", "build:zod": "microbundle --cwd zod --globals @hookform/resolvers=hookformResolvers,react-hook-form=ReactHookForm", @@ -195,14 +195,14 @@ "build:computed-types": "microbundle --cwd computed-types --globals @hookform/resolvers=hookformResolvers,react-hook-form=ReactHookForm", "build:typanion": "microbundle --cwd typanion --globals @hookform/resolvers=hookformResolvers,react-hook-form=ReactHookForm", "build:ajv": "microbundle --cwd ajv --globals @hookform/resolvers=hookformResolvers,react-hook-form=ReactHookForm", - "build:typebox": "microbundle --cwd typebox --globals @hookform/resolvers=hookformResolvers,react-hook-form=ReactHookForm,@sinclair/typebox/value=value", + "build:typebox": "microbundle --cwd typebox --globals @hookform/resolvers=hookformResolvers,react-hook-form=ReactHookForm,@sinclair/typebox/value=value,@sinclair/typebox/compiler=compiler", "build:arktype": "microbundle --cwd arktype --globals @hookform/resolvers=hookformResolvers,react-hook-form=ReactHookForm", "build:valibot": "microbundle --cwd valibot --globals @hookform/resolvers=hookformResolvers,react-hook-form=ReactHookForm", - "build:typeschema": "microbundle --cwd typeschema --globals @hookform/resolvers=hookformResolvers,react-hook-form=ReactHookForm", - "build:effect-ts": "microbundle --cwd effect-ts --globals @hookform/resolvers=hookformResolvers,react-hook-form=ReactHookForm,@effect/schema=EffectSchema,@effect/schema/AST=EffectSchemaAST,@effect/schema/ArrayFormatter=EffectSchemaArrayFormatter", + "build:typeschema": "microbundle --cwd typeschema --globals @hookform/resolvers=hookformResolvers,react-hook-form=ReactHookForm,@typeschema/main=main", + "build:effect-ts": "microbundle --cwd effect-ts --globals @hookform/resolvers=hookformResolvers,react-hook-form=ReactHookForm,@effect/schema=EffectSchema,@effect/schema/AST=EffectSchemaAST,@effect/schema/ArrayFormatter=EffectSchemaArrayFormatter,@effect/schema/ParseResult=EffectSchemaArrayFormatter,effect/Effect=Effect", "build:vine": "microbundle --cwd vine --globals @hookform/resolvers=hookformResolvers,react-hook-form=ReactHookForm,@vinejs/vine=vine", "postbuild": "node ./config/node-13-exports.js", - "lint": "eslint . --ext .ts,.js --ignore-path .gitignore", + "lint": "bunx @biomejs/biome check --write --vcs-use-ignore-file=true .", "lint:types": "tsc", "test": "vitest run", "test:watch": "vitest watch", @@ -245,69 +245,55 @@ }, "homepage": "https://react-hook-form.com", "devDependencies": { - "@effect/schema": "^0.66.16", - "@sinclair/typebox": "^0.31.28", - "@testing-library/dom": "^9.3.4", + "@effect/schema": "^0.68.15", + "@sinclair/typebox": "^0.32.34", + "@testing-library/dom": "^10.3.0", "@testing-library/jest-dom": "^6.4.6", - "@testing-library/react": "^14.3.1", + "@testing-library/react": "^16.0.0", "@testing-library/user-event": "^14.5.2", "@types/node": "^20.14.9", "@types/react": "^18.3.3", "@typeschema/core": "^0.13.2", "@typeschema/main": "^0.13.10", "@typeschema/zod": "^0.13.3", - "@typescript-eslint/eslint-plugin": "^6.21.0", - "@typescript-eslint/parser": "^6.21.0", "@vinejs/vine": "^2.1.0", "@vitejs/plugin-react": "^4.3.1", "ajv": "^8.16.0", "ajv-errors": "^3.0.0", - "arktype": "2.0.0-dev.14", + "arktype": "2.0.0-dev.26", "check-export-map": "^1.3.1", "class-transformer": "^0.5.1", "class-validator": "^0.14.1", "computed-types": "^1.11.2", "cross-env": "^7.0.3", "effect": "^3.4.6", - "eslint": "^8.57.0", - "eslint-config-prettier": "^9.1.0", "fp-ts": "^2.16.7", - "husky": "^8.0.3", "io-ts": "^2.2.21", "io-ts-types": "^0.5.19", "joi": "^17.13.3", - "jsdom": "^22.1.0", - "lint-staged": "^14.0.1", + "jsdom": "^24.1.0", + "lefthook": "^1.6.18", "microbundle": "^0.15.1", "monocle-ts": "^2.3.13", "newtype-ts": "^0.3.5", "nope-validator": "^1.0.4", "npm-run-all": "^4.1.5", - "prettier": "^3.3.2", "react": "^18.3.1", "react-dom": "^18.3.1", "react-hook-form": "^7.52.1", - "reflect-metadata": "^0.1.14", + "reflect-metadata": "^0.2.2", "superstruct": "^1.0.4", "typanion": "^3.14.0", "typescript": "^5.5.3", "valibot": "0.35.0", - "vest": "^4.6.11", - "vite": "^4.5.3", + "vest": "^5.3.0", + "vite": "^5.3.3", "vite-tsconfig-paths": "^4.3.2", - "vitest": "^0.34.6", + "vitest": "^1.6.0", "yup": "^1.4.0", "zod": "^3.23.8" }, "peerDependencies": { "react-hook-form": "^7.0.0" - }, - "lint-staged": { - "*.{js,ts}": [ - "pnpm lint --fix" - ], - "*.{md,json,yml}": [ - "prettier --write" - ] } -} +} \ No newline at end of file diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml deleted file mode 100644 index c9b99e41..00000000 --- a/pnpm-lock.yaml +++ /dev/null @@ -1,8080 +0,0 @@ -lockfileVersion: '9.0' - -settings: - autoInstallPeers: true - excludeLinksFromLockfile: false - -importers: - - .: - devDependencies: - '@effect/schema': - specifier: ^0.66.16 - version: 0.66.16(effect@3.4.6)(fast-check@3.18.0) - '@sinclair/typebox': - specifier: ^0.31.28 - version: 0.31.28 - '@testing-library/dom': - specifier: ^9.3.4 - version: 9.3.4 - '@testing-library/jest-dom': - specifier: ^6.4.6 - version: 6.4.6(vitest@0.34.6(jsdom@22.1.0)(terser@5.19.2)) - '@testing-library/react': - specifier: ^14.3.1 - version: 14.3.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@testing-library/user-event': - specifier: ^14.5.2 - version: 14.5.2(@testing-library/dom@9.3.4) - '@types/node': - specifier: ^20.14.9 - version: 20.14.9 - '@types/react': - specifier: ^18.3.3 - version: 18.3.3 - '@typeschema/core': - specifier: ^0.13.2 - version: 0.13.2(@types/json-schema@7.0.15) - '@typeschema/main': - specifier: ^0.13.10 - version: 0.13.10(@types/json-schema@7.0.15)(@typeschema/zod@0.13.3(@types/json-schema@7.0.15)(zod@3.23.8)) - '@typeschema/zod': - specifier: ^0.13.3 - version: 0.13.3(@types/json-schema@7.0.15)(zod@3.23.8) - '@typescript-eslint/eslint-plugin': - specifier: ^6.21.0 - version: 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.3))(eslint@8.57.0)(typescript@5.5.3) - '@typescript-eslint/parser': - specifier: ^6.21.0 - version: 6.21.0(eslint@8.57.0)(typescript@5.5.3) - '@vinejs/vine': - specifier: ^2.1.0 - version: 2.1.0 - '@vitejs/plugin-react': - specifier: ^4.3.1 - version: 4.3.1(vite@4.5.3(@types/node@20.14.9)(terser@5.19.2)) - ajv: - specifier: ^8.16.0 - version: 8.16.0 - ajv-errors: - specifier: ^3.0.0 - version: 3.0.0(ajv@8.16.0) - arktype: - specifier: 2.0.0-dev.14 - version: 2.0.0-dev.14 - check-export-map: - specifier: ^1.3.1 - version: 1.3.1 - class-transformer: - specifier: ^0.5.1 - version: 0.5.1 - class-validator: - specifier: ^0.14.1 - version: 0.14.1 - computed-types: - specifier: ^1.11.2 - version: 1.11.2 - cross-env: - specifier: ^7.0.3 - version: 7.0.3 - effect: - specifier: ^3.4.6 - version: 3.4.6 - eslint: - specifier: ^8.57.0 - version: 8.57.0 - eslint-config-prettier: - specifier: ^9.1.0 - version: 9.1.0(eslint@8.57.0) - fp-ts: - specifier: ^2.16.7 - version: 2.16.7 - husky: - specifier: ^8.0.3 - version: 8.0.3 - io-ts: - specifier: ^2.2.21 - version: 2.2.21(fp-ts@2.16.7) - io-ts-types: - specifier: ^0.5.19 - version: 0.5.19(fp-ts@2.16.7)(io-ts@2.2.21(fp-ts@2.16.7))(monocle-ts@2.3.13(fp-ts@2.16.7))(newtype-ts@0.3.5(fp-ts@2.16.7)(monocle-ts@2.3.13(fp-ts@2.16.7))) - joi: - specifier: ^17.13.3 - version: 17.13.3 - jsdom: - specifier: ^22.1.0 - version: 22.1.0 - lint-staged: - specifier: ^14.0.1 - version: 14.0.1 - microbundle: - specifier: ^0.15.1 - version: 0.15.1(@types/babel__core@7.20.5) - monocle-ts: - specifier: ^2.3.13 - version: 2.3.13(fp-ts@2.16.7) - newtype-ts: - specifier: ^0.3.5 - version: 0.3.5(fp-ts@2.16.7)(monocle-ts@2.3.13(fp-ts@2.16.7)) - nope-validator: - specifier: ^1.0.4 - version: 1.0.4 - npm-run-all: - specifier: ^4.1.5 - version: 4.1.5 - prettier: - specifier: ^3.3.2 - version: 3.3.2 - react: - specifier: ^18.3.1 - version: 18.3.1 - react-dom: - specifier: ^18.3.1 - version: 18.3.1(react@18.3.1) - react-hook-form: - specifier: ^7.52.1 - version: 7.52.1(react@18.3.1) - reflect-metadata: - specifier: ^0.1.14 - version: 0.1.14 - superstruct: - specifier: ^1.0.4 - version: 1.0.4 - typanion: - specifier: ^3.14.0 - version: 3.14.0 - typescript: - specifier: ^5.5.3 - version: 5.5.3 - valibot: - specifier: 0.35.0 - version: 0.35.0 - vest: - specifier: ^4.6.11 - version: 4.6.11 - vite: - specifier: ^4.5.3 - version: 4.5.3(@types/node@20.14.9)(terser@5.19.2) - vite-tsconfig-paths: - specifier: ^4.3.2 - version: 4.3.2(typescript@5.5.3)(vite@4.5.3(@types/node@20.14.9)(terser@5.19.2)) - vitest: - specifier: ^0.34.6 - version: 0.34.6(jsdom@22.1.0)(terser@5.19.2) - yup: - specifier: ^1.4.0 - version: 1.4.0 - zod: - specifier: ^3.23.8 - version: 3.23.8 - -packages: - - '@aashutoshrathi/word-wrap@1.2.6': - resolution: {integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==} - engines: {node: '>=0.10.0'} - - '@adobe/css-tools@4.4.0': - resolution: {integrity: sha512-Ff9+ksdQQB3rMncgqDK78uLznstjyfIf2Arnh22pW8kBpLs6rpKDwgnZT46hin5Hl1WzazzK64DOrhSwYpS7bQ==} - - '@ampproject/remapping@2.2.1': - resolution: {integrity: sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==} - engines: {node: '>=6.0.0'} - - '@ampproject/remapping@2.3.0': - resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} - engines: {node: '>=6.0.0'} - - '@arktype/schema@0.1.6': - resolution: {integrity: sha512-VqNFO2iEFfdVTHmWtUB0DKt9ieO+2PP57jPXU/iF58m3Rmm6vMNOMqNxpi5M7hl0Xskj0M1/xErGYmTpM8gReg==} - - '@arktype/util@0.0.44': - resolution: {integrity: sha512-zC5E/+fPtc4q+yQdSnQvRzoJQkYq42QH5chKL4TSB1uFdZPTRS0FpoOnNoIZMnpFAUUt6eI6tRGV5uMa3RGTyA==} - - '@babel/code-frame@7.22.10': - resolution: {integrity: sha512-/KKIMG4UEL35WmI9OlvMhurwtytjvXoFcGNrOvyG9zIzA8YmPjVtIZUf7b05+TPO7G7/GEmLHDaoCgACHl9hhA==} - engines: {node: '>=6.9.0'} - - '@babel/code-frame@7.24.7': - resolution: {integrity: sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==} - engines: {node: '>=6.9.0'} - - '@babel/compat-data@7.22.9': - resolution: {integrity: sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==} - engines: {node: '>=6.9.0'} - - '@babel/compat-data@7.24.7': - resolution: {integrity: sha512-qJzAIcv03PyaWqxRgO4mSU3lihncDT296vnyuE2O8uA4w3UHWI4S3hgeZd1L8W1Bft40w9JxJ2b412iDUFFRhw==} - engines: {node: '>=6.9.0'} - - '@babel/core@7.22.10': - resolution: {integrity: sha512-fTmqbbUBAwCcre6zPzNngvsI0aNrPZe77AeqvDxWM9Nm+04RrJ3CAmGHA9f7lJQY6ZMhRztNemy4uslDxTX4Qw==} - engines: {node: '>=6.9.0'} - - '@babel/core@7.24.7': - resolution: {integrity: sha512-nykK+LEK86ahTkX/3TgauT0ikKoNCfKHEaZYTUVupJdTLzGNvrblu4u6fa7DhZONAltdf8e662t/abY8idrd/g==} - engines: {node: '>=6.9.0'} - - '@babel/generator@7.22.10': - resolution: {integrity: sha512-79KIf7YiWjjdZ81JnLujDRApWtl7BxTqWD88+FFdQEIOG8LJ0etDOM7CXuIgGJa55sGOwZVwuEsaLEm0PJ5/+A==} - engines: {node: '>=6.9.0'} - - '@babel/generator@7.24.7': - resolution: {integrity: sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-annotate-as-pure@7.22.5': - resolution: {integrity: sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==} - engines: {node: '>=6.9.0'} - - '@babel/helper-builder-binary-assignment-operator-visitor@7.22.10': - resolution: {integrity: sha512-Av0qubwDQxC56DoUReVDeLfMEjYYSN1nZrTUrWkXd7hpU73ymRANkbuDm3yni9npkn+RXy9nNbEJZEzXr7xrfQ==} - engines: {node: '>=6.9.0'} - - '@babel/helper-compilation-targets@7.22.10': - resolution: {integrity: sha512-JMSwHD4J7SLod0idLq5PKgI+6g/hLD/iuWBq08ZX49xE14VpVEojJ5rHWptpirV2j020MvypRLAXAO50igCJ5Q==} - engines: {node: '>=6.9.0'} - - '@babel/helper-compilation-targets@7.24.7': - resolution: {integrity: sha512-ctSdRHBi20qWOfy27RUb4Fhp07KSJ3sXcuSvTrXrc4aG8NSYDo1ici3Vhg9bg69y5bj0Mr1lh0aeEgTvc12rMg==} - engines: {node: '>=6.9.0'} - - '@babel/helper-create-class-features-plugin@7.22.10': - resolution: {integrity: sha512-5IBb77txKYQPpOEdUdIhBx8VrZyDCQ+H82H0+5dX1TmuscP5vJKEE3cKurjtIw/vFwzbVH48VweE78kVDBrqjA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-create-regexp-features-plugin@7.22.9': - resolution: {integrity: sha512-+svjVa/tFwsNSG4NEy1h85+HQ5imbT92Q5/bgtS7P0GTQlP8WuFdqsiABmQouhiFGyV66oGxZFpeYHza1rNsKw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-define-polyfill-provider@0.4.2': - resolution: {integrity: sha512-k0qnnOqHn5dK9pZpfD5XXZ9SojAITdCKRn2Lp6rnDGzIbaP0rHyMPk/4wsSxVBVz4RfN0q6VpXWP2pDGIoQ7hw==} - peerDependencies: - '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - - '@babel/helper-environment-visitor@7.22.5': - resolution: {integrity: sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==} - engines: {node: '>=6.9.0'} - - '@babel/helper-environment-visitor@7.24.7': - resolution: {integrity: sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==} - engines: {node: '>=6.9.0'} - - '@babel/helper-function-name@7.22.5': - resolution: {integrity: sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==} - engines: {node: '>=6.9.0'} - - '@babel/helper-function-name@7.24.7': - resolution: {integrity: sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-hoist-variables@7.22.5': - resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} - engines: {node: '>=6.9.0'} - - '@babel/helper-hoist-variables@7.24.7': - resolution: {integrity: sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ==} - engines: {node: '>=6.9.0'} - - '@babel/helper-member-expression-to-functions@7.22.5': - resolution: {integrity: sha512-aBiH1NKMG0H2cGZqspNvsaBe6wNGjbJjuLy29aU+eDZjSbbN53BaxlpB02xm9v34pLTZ1nIQPFYn2qMZoa5BQQ==} - engines: {node: '>=6.9.0'} - - '@babel/helper-module-imports@7.22.5': - resolution: {integrity: sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==} - engines: {node: '>=6.9.0'} - - '@babel/helper-module-imports@7.24.7': - resolution: {integrity: sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-module-transforms@7.22.9': - resolution: {integrity: sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-module-transforms@7.24.7': - resolution: {integrity: sha512-1fuJEwIrp+97rM4RWdO+qrRsZlAeL1lQJoPqtCYWv0NL115XM93hIH4CSRln2w52SqvmY5hqdtauB6QFCDiZNQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-optimise-call-expression@7.22.5': - resolution: {integrity: sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==} - engines: {node: '>=6.9.0'} - - '@babel/helper-plugin-utils@7.22.5': - resolution: {integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==} - engines: {node: '>=6.9.0'} - - '@babel/helper-plugin-utils@7.24.7': - resolution: {integrity: sha512-Rq76wjt7yz9AAc1KnlRKNAi/dMSVWgDRx43FHoJEbcYU6xOWaE2dVPwcdTukJrjxS65GITyfbvEYHvkirZ6uEg==} - engines: {node: '>=6.9.0'} - - '@babel/helper-remap-async-to-generator@7.22.9': - resolution: {integrity: sha512-8WWC4oR4Px+tr+Fp0X3RHDVfINGpF3ad1HIbrc8A77epiR6eMMc6jsgozkzT2uDiOOdoS9cLIQ+XD2XvI2WSmQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-replace-supers@7.22.9': - resolution: {integrity: sha512-LJIKvvpgPOPUThdYqcX6IXRuIcTkcAub0IaDRGCZH0p5GPUp7PhRU9QVgFcDDd51BaPkk77ZjqFwh6DZTAEmGg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-simple-access@7.22.5': - resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==} - engines: {node: '>=6.9.0'} - - '@babel/helper-simple-access@7.24.7': - resolution: {integrity: sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==} - engines: {node: '>=6.9.0'} - - '@babel/helper-skip-transparent-expression-wrappers@7.22.5': - resolution: {integrity: sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==} - engines: {node: '>=6.9.0'} - - '@babel/helper-split-export-declaration@7.22.6': - resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==} - engines: {node: '>=6.9.0'} - - '@babel/helper-split-export-declaration@7.24.7': - resolution: {integrity: sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-string-parser@7.22.5': - resolution: {integrity: sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==} - engines: {node: '>=6.9.0'} - - '@babel/helper-string-parser@7.24.7': - resolution: {integrity: sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==} - engines: {node: '>=6.9.0'} - - '@babel/helper-validator-identifier@7.22.5': - resolution: {integrity: sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==} - engines: {node: '>=6.9.0'} - - '@babel/helper-validator-identifier@7.24.7': - resolution: {integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==} - engines: {node: '>=6.9.0'} - - '@babel/helper-validator-option@7.22.5': - resolution: {integrity: sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==} - engines: {node: '>=6.9.0'} - - '@babel/helper-validator-option@7.24.7': - resolution: {integrity: sha512-yy1/KvjhV/ZCL+SM7hBrvnZJ3ZuT9OuZgIJAGpPEToANvc3iM6iDvBnRjtElWibHU6n8/LPR/EjX9EtIEYO3pw==} - engines: {node: '>=6.9.0'} - - '@babel/helper-wrap-function@7.22.10': - resolution: {integrity: sha512-OnMhjWjuGYtdoO3FmsEFWvBStBAe2QOgwOLsLNDjN+aaiMD8InJk1/O3HSD8lkqTjCgg5YI34Tz15KNNA3p+nQ==} - engines: {node: '>=6.9.0'} - - '@babel/helpers@7.22.10': - resolution: {integrity: sha512-a41J4NW8HyZa1I1vAndrraTlPZ/eZoga2ZgS7fEr0tZJGVU4xqdE80CEm0CcNjha5EZ8fTBYLKHF0kqDUuAwQw==} - engines: {node: '>=6.9.0'} - - '@babel/helpers@7.24.7': - resolution: {integrity: sha512-NlmJJtvcw72yRJRcnCmGvSi+3jDEg8qFu3z0AFoymmzLx5ERVWyzd9kVXr7Th9/8yIJi2Zc6av4Tqz3wFs8QWg==} - engines: {node: '>=6.9.0'} - - '@babel/highlight@7.22.10': - resolution: {integrity: sha512-78aUtVcT7MUscr0K5mIEnkwxPE0MaxkR5RxRwuHaQ+JuU5AmTPhY+do2mdzVTnIJJpyBglql2pehuBIWHug+WQ==} - engines: {node: '>=6.9.0'} - - '@babel/highlight@7.24.7': - resolution: {integrity: sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==} - engines: {node: '>=6.9.0'} - - '@babel/parser@7.22.10': - resolution: {integrity: sha512-lNbdGsQb9ekfsnjFGhEiF4hfFqGgfOP3H3d27re3n+CGhNuTSUEQdfWk556sTLNTloczcdM5TYF2LhzmDQKyvQ==} - engines: {node: '>=6.0.0'} - hasBin: true - - '@babel/parser@7.24.7': - resolution: {integrity: sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==} - engines: {node: '>=6.0.0'} - hasBin: true - - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.22.5': - resolution: {integrity: sha512-NP1M5Rf+u2Gw9qfSO4ihjcTGW5zXTi36ITLd4/EoAcEhIZ0yjMqmftDNl3QC19CX7olhrjpyU454g/2W7X0jvQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.22.5': - resolution: {integrity: sha512-31Bb65aZaUwqCbWMnZPduIZxCBngHFlzyN6Dq6KAJjtx+lx6ohKHubc61OomYi7XwVD4Ol0XCVz4h+pYFR048g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.13.0 - - '@babel/plugin-proposal-class-properties@7.12.1': - resolution: {integrity: sha512-cKp3dlQsFsEs5CWKnN7BnSHOd0EOW8EKpEjkoz1pO2E5KzIDNV9Ros1b0CnmbVgAGXJubOYVBOGCT1OmJwOI7w==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2': - resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-async-generators@7.8.4': - resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-class-properties@7.12.13': - resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-class-static-block@7.14.5': - resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-dynamic-import@7.8.3': - resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-export-namespace-from@7.8.3': - resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-flow@7.22.5': - resolution: {integrity: sha512-9RdCl0i+q0QExayk2nOS7853w08yLucnnPML6EN9S8fgMPVtdLDCdx/cOQ/i44Lb9UeQX9A35yaqBBOMMZxPxQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-import-assertions@7.22.5': - resolution: {integrity: sha512-rdV97N7KqsRzeNGoWUOK6yUsWarLjE5Su/Snk9IYPU9CwkWHs4t+rTGOvffTR8XGkJMTAdLfO0xVnXm8wugIJg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-import-attributes@7.22.5': - resolution: {integrity: sha512-KwvoWDeNKPETmozyFE0P2rOLqh39EoQHNjqizrI5B8Vt0ZNS7M56s7dAiAqbYfiAYOuIzIh96z3iR2ktgu3tEg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-import-meta@7.10.4': - resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-json-strings@7.8.3': - resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-jsx@7.22.5': - resolution: {integrity: sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-logical-assignment-operators@7.10.4': - resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3': - resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-numeric-separator@7.10.4': - resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-object-rest-spread@7.8.3': - resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-optional-catch-binding@7.8.3': - resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-optional-chaining@7.8.3': - resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-private-property-in-object@7.14.5': - resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-top-level-await@7.14.5': - resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-unicode-sets-regex@7.18.6': - resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/plugin-transform-arrow-functions@7.22.5': - resolution: {integrity: sha512-26lTNXoVRdAnsaDXPpvCNUq+OVWEVC6bx7Vvz9rC53F2bagUWW4u4ii2+h8Fejfh7RYqPxn+libeFBBck9muEw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-async-generator-functions@7.22.10': - resolution: {integrity: sha512-eueE8lvKVzq5wIObKK/7dvoeKJ+xc6TvRn6aysIjS6pSCeLy7S/eVi7pEQknZqyqvzaNKdDtem8nUNTBgDVR2g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-async-to-generator@7.22.5': - resolution: {integrity: sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-block-scoped-functions@7.22.5': - resolution: {integrity: sha512-tdXZ2UdknEKQWKJP1KMNmuF5Lx3MymtMN/pvA+p/VEkhK8jVcQ1fzSy8KM9qRYhAf2/lV33hoMPKI/xaI9sADA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-block-scoping@7.22.10': - resolution: {integrity: sha512-1+kVpGAOOI1Albt6Vse7c8pHzcZQdQKW+wJH+g8mCaszOdDVwRXa/slHPqIw+oJAJANTKDMuM2cBdV0Dg618Vg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-class-properties@7.22.5': - resolution: {integrity: sha512-nDkQ0NfkOhPTq8YCLiWNxp1+f9fCobEjCb0n8WdbNUBc4IB5V7P1QnX9IjpSoquKrXF5SKojHleVNs2vGeHCHQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-class-static-block@7.22.5': - resolution: {integrity: sha512-SPToJ5eYZLxlnp1UzdARpOGeC2GbHvr9d/UV0EukuVx8atktg194oe+C5BqQ8jRTkgLRVOPYeXRSBg1IlMoVRA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.12.0 - - '@babel/plugin-transform-classes@7.22.6': - resolution: {integrity: sha512-58EgM6nuPNG6Py4Z3zSuu0xWu2VfodiMi72Jt5Kj2FECmaYk1RrTXA45z6KBFsu9tRgwQDwIiY4FXTt+YsSFAQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-computed-properties@7.22.5': - resolution: {integrity: sha512-4GHWBgRf0krxPX+AaPtgBAlTgTeZmqDynokHOX7aqqAB4tHs3U2Y02zH6ETFdLZGcg9UQSD1WCmkVrE9ErHeOg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-destructuring@7.22.10': - resolution: {integrity: sha512-dPJrL0VOyxqLM9sritNbMSGx/teueHF/htMKrPT7DNxccXxRDPYqlgPFFdr8u+F+qUZOkZoXue/6rL5O5GduEw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-dotall-regex@7.22.5': - resolution: {integrity: sha512-5/Yk9QxCQCl+sOIB1WelKnVRxTJDSAIxtJLL2/pqL14ZVlbH0fUQUZa/T5/UnQtBNgghR7mfB8ERBKyKPCi7Vw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-duplicate-keys@7.22.5': - resolution: {integrity: sha512-dEnYD+9BBgld5VBXHnF/DbYGp3fqGMsyxKbtD1mDyIA7AkTSpKXFhCVuj/oQVOoALfBs77DudA0BE4d5mcpmqw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-dynamic-import@7.22.5': - resolution: {integrity: sha512-0MC3ppTB1AMxd8fXjSrbPa7LT9hrImt+/fcj+Pg5YMD7UQyWp/02+JWpdnCymmsXwIx5Z+sYn1bwCn4ZJNvhqQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-exponentiation-operator@7.22.5': - resolution: {integrity: sha512-vIpJFNM/FjZ4rh1myqIya9jXwrwwgFRHPjT3DkUA9ZLHuzox8jiXkOLvwm1H+PQIP3CqfC++WPKeuDi0Sjdj1g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-export-namespace-from@7.22.5': - resolution: {integrity: sha512-X4hhm7FRnPgd4nDA4b/5V280xCx6oL7Oob5+9qVS5C13Zq4bh1qq7LU0GgRU6b5dBWBvhGaXYVB4AcN6+ol6vg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-flow-strip-types@7.22.5': - resolution: {integrity: sha512-tujNbZdxdG0/54g/oua8ISToaXTFBf8EnSb5PgQSciIXWOWKX3S4+JR7ZE9ol8FZwf9kxitzkGQ+QWeov/mCiA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-for-of@7.22.5': - resolution: {integrity: sha512-3kxQjX1dU9uudwSshyLeEipvrLjBCVthCgeTp6CzE/9JYrlAIaeekVxRpCWsDDfYTfRZRoCeZatCQvwo+wvK8A==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-function-name@7.22.5': - resolution: {integrity: sha512-UIzQNMS0p0HHiQm3oelztj+ECwFnj+ZRV4KnguvlsD2of1whUeM6o7wGNj6oLwcDoAXQ8gEqfgC24D+VdIcevg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-json-strings@7.22.5': - resolution: {integrity: sha512-DuCRB7fu8MyTLbEQd1ew3R85nx/88yMoqo2uPSjevMj3yoN7CDM8jkgrY0wmVxfJZyJ/B9fE1iq7EQppWQmR5A==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-literals@7.22.5': - resolution: {integrity: sha512-fTLj4D79M+mepcw3dgFBTIDYpbcB9Sm0bpm4ppXPaO+U+PKFFyV9MGRvS0gvGw62sd10kT5lRMKXAADb9pWy8g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-logical-assignment-operators@7.22.5': - resolution: {integrity: sha512-MQQOUW1KL8X0cDWfbwYP+TbVbZm16QmQXJQ+vndPtH/BoO0lOKpVoEDMI7+PskYxH+IiE0tS8xZye0qr1lGzSA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-member-expression-literals@7.22.5': - resolution: {integrity: sha512-RZEdkNtzzYCFl9SE9ATaUMTj2hqMb4StarOJLrZRbqqU4HSBE7UlBw9WBWQiDzrJZJdUWiMTVDI6Gv/8DPvfew==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-modules-amd@7.22.5': - resolution: {integrity: sha512-R+PTfLTcYEmb1+kK7FNkhQ1gP4KgjpSO6HfH9+f8/yfp2Nt3ggBjiVpRwmwTlfqZLafYKJACy36yDXlEmI9HjQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-modules-commonjs@7.22.5': - resolution: {integrity: sha512-B4pzOXj+ONRmuaQTg05b3y/4DuFz3WcCNAXPLb2Q0GT0TrGKGxNKV4jwsXts+StaM0LQczZbOpj8o1DLPDJIiA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-modules-systemjs@7.22.5': - resolution: {integrity: sha512-emtEpoaTMsOs6Tzz+nbmcePl6AKVtS1yC4YNAeMun9U8YCsgadPNxnOPQ8GhHFB2qdx+LZu9LgoC0Lthuu05DQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-modules-umd@7.22.5': - resolution: {integrity: sha512-+S6kzefN/E1vkSsKx8kmQuqeQsvCKCd1fraCM7zXm4SFoggI099Tr4G8U81+5gtMdUeMQ4ipdQffbKLX0/7dBQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-named-capturing-groups-regex@7.22.5': - resolution: {integrity: sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/plugin-transform-new-target@7.22.5': - resolution: {integrity: sha512-AsF7K0Fx/cNKVyk3a+DW0JLo+Ua598/NxMRvxDnkpCIGFh43+h/v2xyhRUYf6oD8gE4QtL83C7zZVghMjHd+iw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-nullish-coalescing-operator@7.22.5': - resolution: {integrity: sha512-6CF8g6z1dNYZ/VXok5uYkkBBICHZPiGEl7oDnAx2Mt1hlHVHOSIKWJaXHjQJA5VB43KZnXZDIexMchY4y2PGdA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-numeric-separator@7.22.5': - resolution: {integrity: sha512-NbslED1/6M+sXiwwtcAB/nieypGw02Ejf4KtDeMkCEpP6gWFMX1wI9WKYua+4oBneCCEmulOkRpwywypVZzs/g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-object-rest-spread@7.22.5': - resolution: {integrity: sha512-Kk3lyDmEslH9DnvCDA1s1kkd3YWQITiBOHngOtDL9Pt6BZjzqb6hiOlb8VfjiiQJ2unmegBqZu0rx5RxJb5vmQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-object-super@7.22.5': - resolution: {integrity: sha512-klXqyaT9trSjIUrcsYIfETAzmOEZL3cBYqOYLJxBHfMFFggmXOv+NYSX/Jbs9mzMVESw/WycLFPRx8ba/b2Ipw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-optional-catch-binding@7.22.5': - resolution: {integrity: sha512-pH8orJahy+hzZje5b8e2QIlBWQvGpelS76C63Z+jhZKsmzfNaPQ+LaW6dcJ9bxTpo1mtXbgHwy765Ro3jftmUg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-optional-chaining@7.22.10': - resolution: {integrity: sha512-MMkQqZAZ+MGj+jGTG3OTuhKeBpNcO+0oCEbrGNEaOmiEn+1MzRyQlYsruGiU8RTK3zV6XwrVJTmwiDOyYK6J9g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-parameters@7.22.5': - resolution: {integrity: sha512-AVkFUBurORBREOmHRKo06FjHYgjrabpdqRSwq6+C7R5iTCZOsM4QbcB27St0a4U6fffyAOqh3s/qEfybAhfivg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-private-methods@7.22.5': - resolution: {integrity: sha512-PPjh4gyrQnGe97JTalgRGMuU4icsZFnWkzicB/fUtzlKUqvsWBKEpPPfr5a2JiyirZkHxnAqkQMO5Z5B2kK3fA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-private-property-in-object@7.22.5': - resolution: {integrity: sha512-/9xnaTTJcVoBtSSmrVyhtSvO3kbqS2ODoh2juEU72c3aYonNF0OMGiaz2gjukyKM2wBBYJP38S4JiE0Wfb5VMQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-property-literals@7.22.5': - resolution: {integrity: sha512-TiOArgddK3mK/x1Qwf5hay2pxI6wCZnvQqrFSqbtg1GLl2JcNMitVH/YnqjP+M31pLUeTfzY1HAXFDnUBV30rQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-react-display-name@7.22.5': - resolution: {integrity: sha512-PVk3WPYudRF5z4GKMEYUrLjPl38fJSKNaEOkFuoprioowGuWN6w2RKznuFNSlJx7pzzXXStPUnNSOEO0jL5EVw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-react-jsx-development@7.22.5': - resolution: {integrity: sha512-bDhuzwWMuInwCYeDeMzyi7TaBgRQei6DqxhbyniL7/VG4RSS7HtSL2QbY4eESy1KJqlWt8g3xeEBGPuo+XqC8A==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-react-jsx-self@7.24.7': - resolution: {integrity: sha512-fOPQYbGSgH0HUp4UJO4sMBFjY6DuWq+2i8rixyUMb3CdGixs/gccURvYOAhajBdKDoGajFr3mUq5rH3phtkGzw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-react-jsx-source@7.24.7': - resolution: {integrity: sha512-J2z+MWzZHVOemyLweMqngXrgGC42jQ//R0KdxqkIz/OrbVIIlhFI3WigZ5fO+nwFvBlncr4MGapd8vTyc7RPNQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-react-jsx@7.22.5': - resolution: {integrity: sha512-rog5gZaVbUip5iWDMTYbVM15XQq+RkUKhET/IHR6oizR+JEoN6CAfTTuHcK4vwUyzca30qqHqEpzBOnaRMWYMA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-react-pure-annotations@7.22.5': - resolution: {integrity: sha512-gP4k85wx09q+brArVinTXhWiyzLl9UpmGva0+mWyKxk6JZequ05x3eUcIUE+FyttPKJFRRVtAvQaJ6YF9h1ZpA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-regenerator@7.22.10': - resolution: {integrity: sha512-F28b1mDt8KcT5bUyJc/U9nwzw6cV+UmTeRlXYIl2TNqMMJif0Jeey9/RQ3C4NOd2zp0/TRsDns9ttj2L523rsw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-reserved-words@7.22.5': - resolution: {integrity: sha512-DTtGKFRQUDm8svigJzZHzb/2xatPc6TzNvAIJ5GqOKDsGFYgAskjRulbR/vGsPKq3OPqtexnz327qYpP57RFyA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-shorthand-properties@7.22.5': - resolution: {integrity: sha512-vM4fq9IXHscXVKzDv5itkO1X52SmdFBFcMIBZ2FRn2nqVYqw6dBexUgMvAjHW+KXpPPViD/Yo3GrDEBaRC0QYA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-spread@7.22.5': - resolution: {integrity: sha512-5ZzDQIGyvN4w8+dMmpohL6MBo+l2G7tfC/O2Dg7/hjpgeWvUx8FzfeOKxGog9IimPa4YekaQ9PlDqTLOljkcxg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-sticky-regex@7.22.5': - resolution: {integrity: sha512-zf7LuNpHG0iEeiyCNwX4j3gDg1jgt1k3ZdXBKbZSoA3BbGQGvMiSvfbZRR3Dr3aeJe3ooWFZxOOG3IRStYp2Bw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-template-literals@7.22.5': - resolution: {integrity: sha512-5ciOehRNf+EyUeewo8NkbQiUs4d6ZxiHo6BcBcnFlgiJfu16q0bQUw9Jvo0b0gBKFG1SMhDSjeKXSYuJLeFSMA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-typeof-symbol@7.22.5': - resolution: {integrity: sha512-bYkI5lMzL4kPii4HHEEChkD0rkc+nvnlR6+o/qdqR6zrm0Sv/nodmyLhlq2DO0YKLUNd2VePmPRjJXSBh9OIdA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-unicode-escapes@7.22.10': - resolution: {integrity: sha512-lRfaRKGZCBqDlRU3UIFovdp9c9mEvlylmpod0/OatICsSfuQ9YFthRo1tpTkGsklEefZdqlEFdY4A2dwTb6ohg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-unicode-property-regex@7.22.5': - resolution: {integrity: sha512-HCCIb+CbJIAE6sXn5CjFQXMwkCClcOfPCzTlilJ8cUatfzwHlWQkbtV0zD338u9dZskwvuOYTuuaMaA8J5EI5A==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-unicode-regex@7.22.5': - resolution: {integrity: sha512-028laaOKptN5vHJf9/Arr/HiJekMd41hOEZYvNsrsXqJ7YPYuX2bQxh31fkZzGmq3YqHRJzYFFAVYvKfMPKqyg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-unicode-sets-regex@7.22.5': - resolution: {integrity: sha512-lhMfi4FC15j13eKrh3DnYHjpGj6UKQHtNKTbtc1igvAhRy4+kLhV07OpLcsN0VgDEw/MjAvJO4BdMJsHwMhzCg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/preset-env@7.22.10': - resolution: {integrity: sha512-riHpLb1drNkpLlocmSyEg4oYJIQFeXAK/d7rI6mbD0XsvoTOOweXDmQPG/ErxsEhWk3rl3Q/3F6RFQlVFS8m0A==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/preset-flow@7.22.5': - resolution: {integrity: sha512-ta2qZ+LSiGCrP5pgcGt8xMnnkXQrq8Sa4Ulhy06BOlF5QbLw9q5hIx7bn5MrsvyTGAfh6kTOo07Q+Pfld/8Y5Q==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/preset-modules@0.1.6-no-external-plugins': - resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==} - peerDependencies: - '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0 - - '@babel/preset-react@7.22.5': - resolution: {integrity: sha512-M+Is3WikOpEJHgR385HbuCITPTaPRaNkibTEa9oiofmJvIsrceb4yp9RL9Kb+TE8LznmeyZqpP+Lopwcx59xPQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/regjsgen@0.8.0': - resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==} - - '@babel/runtime@7.22.10': - resolution: {integrity: sha512-21t/fkKLMZI4pqP2wlmsQAWnYW1PDyKyyUV4vCi+B25ydmdaYTKXPwCj0BzSUnZf4seIiYvSA3jcZ3gdsMFkLQ==} - engines: {node: '>=6.9.0'} - - '@babel/template@7.22.5': - resolution: {integrity: sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==} - engines: {node: '>=6.9.0'} - - '@babel/template@7.24.7': - resolution: {integrity: sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig==} - engines: {node: '>=6.9.0'} - - '@babel/traverse@7.22.10': - resolution: {integrity: sha512-Q/urqV4pRByiNNpb/f5OSv28ZlGJiFiiTh+GAHktbIrkPhPbl90+uW6SmpoLyZqutrg9AEaEf3Q/ZBRHBXgxig==} - engines: {node: '>=6.9.0'} - - '@babel/traverse@7.24.7': - resolution: {integrity: sha512-yb65Ed5S/QAcewNPh0nZczy9JdYXkkAbIsEo+P7BE7yO3txAY30Y/oPa3QkQ5It3xVG2kpKMg9MsdxZaO31uKA==} - engines: {node: '>=6.9.0'} - - '@babel/types@7.22.10': - resolution: {integrity: sha512-obaoigiLrlDZ7TUQln/8m4mSqIW2QFeOrCQc9r+xsaHGNoplVNYlRVpsfE8Vj35GEm2ZH4ZhrNYogs/3fj85kg==} - engines: {node: '>=6.9.0'} - - '@babel/types@7.24.7': - resolution: {integrity: sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==} - engines: {node: '>=6.9.0'} - - '@effect/schema@0.66.16': - resolution: {integrity: sha512-sT/k5NOgKslGPzs3DUaCFuM6g2JQoIIT8jpwEorAZooplPIMK2xIspr7ECz6pp6Dc7Wz/ppXGk7HVyGZQsIYEQ==} - peerDependencies: - effect: ^3.1.3 - fast-check: ^3.13.2 - - '@esbuild/android-arm64@0.18.20': - resolution: {integrity: sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==} - engines: {node: '>=12'} - cpu: [arm64] - os: [android] - - '@esbuild/android-arm@0.18.20': - resolution: {integrity: sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==} - engines: {node: '>=12'} - cpu: [arm] - os: [android] - - '@esbuild/android-x64@0.18.20': - resolution: {integrity: sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==} - engines: {node: '>=12'} - cpu: [x64] - os: [android] - - '@esbuild/darwin-arm64@0.18.20': - resolution: {integrity: sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==} - engines: {node: '>=12'} - cpu: [arm64] - os: [darwin] - - '@esbuild/darwin-x64@0.18.20': - resolution: {integrity: sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [darwin] - - '@esbuild/freebsd-arm64@0.18.20': - resolution: {integrity: sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==} - engines: {node: '>=12'} - cpu: [arm64] - os: [freebsd] - - '@esbuild/freebsd-x64@0.18.20': - resolution: {integrity: sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [freebsd] - - '@esbuild/linux-arm64@0.18.20': - resolution: {integrity: sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==} - engines: {node: '>=12'} - cpu: [arm64] - os: [linux] - - '@esbuild/linux-arm@0.18.20': - resolution: {integrity: sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==} - engines: {node: '>=12'} - cpu: [arm] - os: [linux] - - '@esbuild/linux-ia32@0.18.20': - resolution: {integrity: sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==} - engines: {node: '>=12'} - cpu: [ia32] - os: [linux] - - '@esbuild/linux-loong64@0.18.20': - resolution: {integrity: sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==} - engines: {node: '>=12'} - cpu: [loong64] - os: [linux] - - '@esbuild/linux-mips64el@0.18.20': - resolution: {integrity: sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==} - engines: {node: '>=12'} - cpu: [mips64el] - os: [linux] - - '@esbuild/linux-ppc64@0.18.20': - resolution: {integrity: sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==} - engines: {node: '>=12'} - cpu: [ppc64] - os: [linux] - - '@esbuild/linux-riscv64@0.18.20': - resolution: {integrity: sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==} - engines: {node: '>=12'} - cpu: [riscv64] - os: [linux] - - '@esbuild/linux-s390x@0.18.20': - resolution: {integrity: sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==} - engines: {node: '>=12'} - cpu: [s390x] - os: [linux] - - '@esbuild/linux-x64@0.18.20': - resolution: {integrity: sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==} - engines: {node: '>=12'} - cpu: [x64] - os: [linux] - - '@esbuild/netbsd-x64@0.18.20': - resolution: {integrity: sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==} - engines: {node: '>=12'} - cpu: [x64] - os: [netbsd] - - '@esbuild/openbsd-x64@0.18.20': - resolution: {integrity: sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==} - engines: {node: '>=12'} - cpu: [x64] - os: [openbsd] - - '@esbuild/sunos-x64@0.18.20': - resolution: {integrity: sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [sunos] - - '@esbuild/win32-arm64@0.18.20': - resolution: {integrity: sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==} - engines: {node: '>=12'} - cpu: [arm64] - os: [win32] - - '@esbuild/win32-ia32@0.18.20': - resolution: {integrity: sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==} - engines: {node: '>=12'} - cpu: [ia32] - os: [win32] - - '@esbuild/win32-x64@0.18.20': - resolution: {integrity: sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [win32] - - '@eslint-community/eslint-utils@4.4.0': - resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - - '@eslint-community/regexpp@4.6.2': - resolution: {integrity: sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==} - engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - - '@eslint-community/regexpp@4.7.0': - resolution: {integrity: sha512-+HencqxU7CFJnQb7IKtuNBqS6Yx3Tz4kOL8BJXo+JyeiBm5MEX6pO8onXDkjrkCRlfYXS1Axro15ZjVFe9YgsA==} - engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - - '@eslint/eslintrc@2.1.4': - resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - '@eslint/js@8.57.0': - resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - '@hapi/hoek@9.3.0': - resolution: {integrity: sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==} - - '@hapi/topo@5.1.0': - resolution: {integrity: sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==} - - '@humanwhocodes/config-array@0.11.14': - resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==} - engines: {node: '>=10.10.0'} - deprecated: Use @eslint/config-array instead - - '@humanwhocodes/module-importer@1.0.1': - resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} - engines: {node: '>=12.22'} - - '@humanwhocodes/object-schema@2.0.3': - resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==} - deprecated: Use @eslint/object-schema instead - - '@jest/schemas@29.6.3': - resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jridgewell/gen-mapping@0.3.3': - resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==} - engines: {node: '>=6.0.0'} - - '@jridgewell/gen-mapping@0.3.5': - resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} - engines: {node: '>=6.0.0'} - - '@jridgewell/resolve-uri@3.1.1': - resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==} - engines: {node: '>=6.0.0'} - - '@jridgewell/resolve-uri@3.1.2': - resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} - engines: {node: '>=6.0.0'} - - '@jridgewell/set-array@1.1.2': - resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} - engines: {node: '>=6.0.0'} - - '@jridgewell/set-array@1.2.1': - resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} - engines: {node: '>=6.0.0'} - - '@jridgewell/source-map@0.3.5': - resolution: {integrity: sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==} - - '@jridgewell/sourcemap-codec@1.4.15': - resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} - - '@jridgewell/trace-mapping@0.3.19': - resolution: {integrity: sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==} - - '@jridgewell/trace-mapping@0.3.25': - resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} - - '@nodelib/fs.scandir@2.1.5': - resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} - engines: {node: '>= 8'} - - '@nodelib/fs.stat@2.0.5': - resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} - engines: {node: '>= 8'} - - '@nodelib/fs.walk@1.2.8': - resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} - engines: {node: '>= 8'} - - '@poppinss/macroable@1.0.2': - resolution: {integrity: sha512-xhhEcEvhQC8mP5oOr5hbE4CmUgmw/IPV1jhpGg2xSkzoFrt9i8YVqBQt9744EFesi5F7pBheWozg63RUBM/5JA==} - engines: {node: '>=18.16.0'} - - '@rollup/plugin-alias@3.1.9': - resolution: {integrity: sha512-QI5fsEvm9bDzt32k39wpOwZhVzRcL5ydcffUHMyLVaVaLeC70I8TJZ17F1z1eMoLu4E/UOcH9BWVkKpIKdrfiw==} - engines: {node: '>=8.0.0'} - peerDependencies: - rollup: ^1.20.0||^2.0.0 - - '@rollup/plugin-babel@5.3.1': - resolution: {integrity: sha512-WFfdLWU/xVWKeRQnKmIAQULUI7Il0gZnBIH/ZFO069wYIfPu+8zrfp/KMW0atmELoRDq8FbiP3VCss9MhCut7Q==} - engines: {node: '>= 10.0.0'} - peerDependencies: - '@babel/core': ^7.0.0 - '@types/babel__core': ^7.1.9 - rollup: ^1.20.0||^2.0.0 - peerDependenciesMeta: - '@types/babel__core': - optional: true - - '@rollup/plugin-commonjs@17.1.0': - resolution: {integrity: sha512-PoMdXCw0ZyvjpCMT5aV4nkL0QywxP29sODQsSGeDpr/oI49Qq9tRtAsb/LbYbDzFlOydVEqHmmZWFtXJEAX9ew==} - engines: {node: '>= 8.0.0'} - peerDependencies: - rollup: ^2.30.0 - - '@rollup/plugin-json@4.1.0': - resolution: {integrity: sha512-yfLbTdNS6amI/2OpmbiBoW12vngr5NW2jCJVZSBEz+H5KfUJZ2M7sDjk0U6GOOdCWFVScShte29o9NezJ53TPw==} - peerDependencies: - rollup: ^1.20.0 || ^2.0.0 - - '@rollup/plugin-node-resolve@11.2.1': - resolution: {integrity: sha512-yc2n43jcqVyGE2sqV5/YCmocy9ArjVAP/BeXyTtADTBBX6V0e5UMqwO8CdQ0kzjb6zu5P1qMzsScCMRvE9OlVg==} - engines: {node: '>= 10.0.0'} - peerDependencies: - rollup: ^1.20.0||^2.0.0 - - '@rollup/pluginutils@3.1.0': - resolution: {integrity: sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==} - engines: {node: '>= 8.0.0'} - peerDependencies: - rollup: ^1.20.0||^2.0.0 - - '@rollup/pluginutils@4.2.1': - resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==} - engines: {node: '>= 8.0.0'} - - '@sideway/address@4.1.5': - resolution: {integrity: sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q==} - - '@sideway/formula@3.0.1': - resolution: {integrity: sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==} - - '@sideway/pinpoint@2.0.0': - resolution: {integrity: sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==} - - '@sinclair/typebox@0.27.8': - resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} - - '@sinclair/typebox@0.31.28': - resolution: {integrity: sha512-/s55Jujywdw/Jpan+vsy6JZs1z2ZTGxTmbZTPiuSL2wz9mfzA2gN1zzaqmvfi4pq+uOt7Du85fkiwv5ymW84aQ==} - - '@surma/rollup-plugin-off-main-thread@2.2.3': - resolution: {integrity: sha512-lR8q/9W7hZpMWweNiAKU7NQerBnzQQLvi8qnTDU/fxItPhtZVMbPV3lbCwjhIlNBe9Bbr5V+KHshvWmVSG9cxQ==} - - '@testing-library/dom@9.3.4': - resolution: {integrity: sha512-FlS4ZWlp97iiNWig0Muq8p+3rVDjRiYE+YKGbAqXOu9nwJFFOdL00kFpz42M+4huzYi86vAK1sOOfyOG45muIQ==} - engines: {node: '>=14'} - - '@testing-library/jest-dom@6.4.6': - resolution: {integrity: sha512-8qpnGVincVDLEcQXWaHOf6zmlbwTKc6Us6PPu4CRnPXCzo2OGBS5cwgMMOWdxDpEz1mkbvXHpEy99M5Yvt682w==} - engines: {node: '>=14', npm: '>=6', yarn: '>=1'} - peerDependencies: - '@jest/globals': '>= 28' - '@types/bun': latest - '@types/jest': '>= 28' - jest: '>= 28' - vitest: '>= 0.32' - peerDependenciesMeta: - '@jest/globals': - optional: true - '@types/bun': - optional: true - '@types/jest': - optional: true - jest: - optional: true - vitest: - optional: true - - '@testing-library/react@14.3.1': - resolution: {integrity: sha512-H99XjUhWQw0lTgyMN05W3xQG1Nh4lq574D8keFf1dDoNTJgp66VbJozRaczoF+wsiaPJNt/TcnfpLGufGxSrZQ==} - engines: {node: '>=14'} - peerDependencies: - react: ^18.0.0 - react-dom: ^18.0.0 - - '@testing-library/user-event@14.5.2': - resolution: {integrity: sha512-YAh82Wh4TIrxYLmfGcixwD18oIjyC1pFQC2Y01F2lzV2HTMiYrI0nze0FD0ocB//CKS/7jIUgae+adPqxK5yCQ==} - engines: {node: '>=12', npm: '>=6'} - peerDependencies: - '@testing-library/dom': '>=7.21.4' - - '@tootallnate/once@2.0.0': - resolution: {integrity: sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==} - engines: {node: '>= 10'} - - '@trysound/sax@0.2.0': - resolution: {integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==} - engines: {node: '>=10.13.0'} - - '@types/aria-query@5.0.1': - resolution: {integrity: sha512-XTIieEY+gvJ39ChLcB4If5zHtPxt3Syj5rgZR+e1ctpmK8NjPf0zFqsz4JpLJT0xla9GFDKjy8Cpu331nrmE1Q==} - - '@types/babel__core@7.20.5': - resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} - - '@types/babel__generator@7.6.8': - resolution: {integrity: sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==} - - '@types/babel__template@7.4.4': - resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==} - - '@types/babel__traverse@7.20.6': - resolution: {integrity: sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==} - - '@types/chai-subset@1.3.3': - resolution: {integrity: sha512-frBecisrNGz+F4T6bcc+NLeolfiojh5FxW2klu669+8BARtyQv2C/GkNW6FUodVe4BroGMP/wER/YDGc7rEllw==} - - '@types/chai@4.3.5': - resolution: {integrity: sha512-mEo1sAde+UCE6b2hxn332f1g1E8WfYRu6p5SvTKr2ZKC1f7gFJXk4h5PyGP9Dt6gCaG8y8XhwnXWC6Iy2cmBng==} - - '@types/estree@0.0.39': - resolution: {integrity: sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==} - - '@types/estree@1.0.1': - resolution: {integrity: sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==} - - '@types/json-schema@7.0.15': - resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} - - '@types/node@20.14.9': - resolution: {integrity: sha512-06OCtnTXtWOZBJlRApleWndH4JsRVs1pDCc8dLSQp+7PpUpX3ePdHyeNSFTeSe7FtKyQkrlPvHwJOW3SLd8Oyg==} - - '@types/parse-json@4.0.0': - resolution: {integrity: sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==} - - '@types/prop-types@15.7.5': - resolution: {integrity: sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==} - - '@types/react-dom@18.2.7': - resolution: {integrity: sha512-GRaAEriuT4zp9N4p1i8BDBYmEyfo+xQ3yHjJU4eiK5NDa1RmUZG+unZABUTK4/Ox/M+GaHwb6Ow8rUITrtjszA==} - - '@types/react@18.3.3': - resolution: {integrity: sha512-hti/R0pS0q1/xx+TsI73XIqk26eBsISZ2R0wUijXIngRK9R/e7Xw/cXVxQK7R5JjW+SV4zGcn5hXjudkN/pLIw==} - - '@types/resolve@1.17.1': - resolution: {integrity: sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==} - - '@types/semver@7.5.8': - resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==} - - '@types/validator@13.11.10': - resolution: {integrity: sha512-e2PNXoXLr6Z+dbfx5zSh9TRlXJrELycxiaXznp4S5+D2M3b9bqJEitNHA5923jhnB2zzFiZHa2f0SI1HoIahpg==} - - '@types/validator@13.12.0': - resolution: {integrity: sha512-nH45Lk7oPIJ1RVOF6JgFI6Dy0QpHEzq4QecZhvguxYPDwT8c93prCMqAtiIttm39voZ+DDR+qkNnMpJmMBRqag==} - - '@typeschema/core@0.13.2': - resolution: {integrity: sha512-pAt0MK249/9szYaoPuvzhSfOd3smrLhhwCCpUNB4onX32mRx5F3lzDIveIYGQkLYRq58xOX5sjoW+n72f/MLLw==} - peerDependencies: - '@types/json-schema': ^7.0.15 - peerDependenciesMeta: - '@types/json-schema': - optional: true - - '@typeschema/main@0.13.10': - resolution: {integrity: sha512-ArdFC4GbgdVWWgPKg2tymxx2KHMus3xZ8I2kHwqw/0P4FtWBXCmSNAiBqDtpoXXF8h9cbcm7fVpcs5ftoWT9+A==} - peerDependencies: - '@typeschema/arktype': 0.13.2 - '@typeschema/class-validator': 0.1.2 - '@typeschema/deepkit': 0.13.4 - '@typeschema/effect': 0.13.4 - '@typeschema/fastest-validator': 0.1.0 - '@typeschema/function': 0.13.2 - '@typeschema/io-ts': 0.13.3 - '@typeschema/joi': 0.13.3 - '@typeschema/json': 0.13.3 - '@typeschema/ow': 0.13.3 - '@typeschema/runtypes': 0.13.2 - '@typeschema/superstruct': 0.13.2 - '@typeschema/suretype': 0.1.0 - '@typeschema/typebox': 0.13.4 - '@typeschema/valibot': 0.13.5 - '@typeschema/valita': 0.1.0 - '@typeschema/vine': 0.1.0 - '@typeschema/yup': 0.13.3 - '@typeschema/zod': 0.13.3 - peerDependenciesMeta: - '@typeschema/arktype': - optional: true - '@typeschema/class-validator': - optional: true - '@typeschema/deepkit': - optional: true - '@typeschema/effect': - optional: true - '@typeschema/fastest-validator': - optional: true - '@typeschema/function': - optional: true - '@typeschema/io-ts': - optional: true - '@typeschema/joi': - optional: true - '@typeschema/json': - optional: true - '@typeschema/ow': - optional: true - '@typeschema/runtypes': - optional: true - '@typeschema/superstruct': - optional: true - '@typeschema/suretype': - optional: true - '@typeschema/typebox': - optional: true - '@typeschema/valibot': - optional: true - '@typeschema/valita': - optional: true - '@typeschema/vine': - optional: true - '@typeschema/yup': - optional: true - '@typeschema/zod': - optional: true - - '@typeschema/zod@0.13.3': - resolution: {integrity: sha512-p5Hs22WIKkM/vZTAvw5QOLSA0EJ6QBUsQMGUrXlYnTAE2LSR/F5MLsDUb18O6S5VxGjrzU7x3VIznD5qOafJRw==} - peerDependencies: - zod: ^3.22.4 - zod-to-json-schema: ^3.22.4 - peerDependenciesMeta: - zod: - optional: true - zod-to-json-schema: - optional: true - - '@typescript-eslint/eslint-plugin@6.21.0': - resolution: {integrity: sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha - eslint: ^7.0.0 || ^8.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/parser@6.21.0': - resolution: {integrity: sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - eslint: ^7.0.0 || ^8.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/scope-manager@6.21.0': - resolution: {integrity: sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==} - engines: {node: ^16.0.0 || >=18.0.0} - - '@typescript-eslint/type-utils@6.21.0': - resolution: {integrity: sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - eslint: ^7.0.0 || ^8.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/types@6.21.0': - resolution: {integrity: sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==} - engines: {node: ^16.0.0 || >=18.0.0} - - '@typescript-eslint/typescript-estree@6.21.0': - resolution: {integrity: sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/utils@6.21.0': - resolution: {integrity: sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - eslint: ^7.0.0 || ^8.0.0 - - '@typescript-eslint/visitor-keys@6.21.0': - resolution: {integrity: sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==} - engines: {node: ^16.0.0 || >=18.0.0} - - '@ungap/structured-clone@1.2.0': - resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} - - '@vinejs/compiler@2.5.0': - resolution: {integrity: sha512-hg4ekaB5Y2zh+IWzBiC/WCDWrIfpVnKu/ubUvelKlidc/VbulsexoFRw5kJGHZenPVI5YzNnDeTdYSALkTV7jQ==} - engines: {node: '>=18.0.0'} - - '@vinejs/vine@2.1.0': - resolution: {integrity: sha512-09aJ2OauxpblqiNqd8qC9RAzzm5SV6fTqZhE4e25j4cM7fmNoXRTjM7Oo8llFADMO4eSA44HqYEO3mkRRYdbYw==} - engines: {node: '>=18.16.0'} - - '@vitejs/plugin-react@4.3.1': - resolution: {integrity: sha512-m/V2syj5CuVnaxcUJOQRel/Wr31FFXRFlnOoq1TVtkCxsY5veGMTEmpWHndrhB2U8ScHtCQB1e+4hWYExQc6Lg==} - engines: {node: ^14.18.0 || >=16.0.0} - peerDependencies: - vite: ^4.2.0 || ^5.0.0 - - '@vitest/expect@0.34.6': - resolution: {integrity: sha512-QUzKpUQRc1qC7qdGo7rMK3AkETI7w18gTCUrsNnyjjJKYiuUB9+TQK3QnR1unhCnWRC0AbKv2omLGQDF/mIjOw==} - - '@vitest/runner@0.34.6': - resolution: {integrity: sha512-1CUQgtJSLF47NnhN+F9X2ycxUP0kLHQ/JWvNHbeBfwW8CzEGgeskzNnHDyv1ieKTltuR6sdIHV+nmR6kPxQqzQ==} - - '@vitest/snapshot@0.34.6': - resolution: {integrity: sha512-B3OZqYn6k4VaN011D+ve+AA4whM4QkcwcrwaKwAbyyvS/NB1hCWjFIBQxAQQSQir9/RtyAAGuq+4RJmbn2dH4w==} - - '@vitest/spy@0.34.6': - resolution: {integrity: sha512-xaCvneSaeBw/cz8ySmF7ZwGvL0lBjfvqc1LpQ/vcdHEvpLn3Ff1vAvjw+CoGn0802l++5L/pxb7whwcWAw+DUQ==} - - '@vitest/utils@0.34.6': - resolution: {integrity: sha512-IG5aDD8S6zlvloDsnzHw0Ut5xczlF+kv2BOTo+iXfPr54Yhi5qbVOgGB1hZaVq4iJ4C/MZ2J0y15IlsV/ZcI0A==} - - abab@2.0.6: - resolution: {integrity: sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==} - - acorn-jsx@5.3.2: - resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} - peerDependencies: - acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - - acorn-walk@8.2.0: - resolution: {integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==} - engines: {node: '>=0.4.0'} - - acorn@8.10.0: - resolution: {integrity: sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==} - engines: {node: '>=0.4.0'} - hasBin: true - - acorn@8.12.0: - resolution: {integrity: sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw==} - engines: {node: '>=0.4.0'} - hasBin: true - - agent-base@6.0.2: - resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} - engines: {node: '>= 6.0.0'} - - ajv-errors@3.0.0: - resolution: {integrity: sha512-V3wD15YHfHz6y0KdhYFjyy9vWtEVALT9UrxfN3zqlI6dMioHnJrqOYfyPKol3oqrnCM9uwkcdCwkJ0WUcbLMTQ==} - peerDependencies: - ajv: ^8.0.1 - - ajv@6.12.6: - resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} - - ajv@8.16.0: - resolution: {integrity: sha512-F0twR8U1ZU67JIEtekUcLkXkoO5mMMmgGD8sK/xUFzJ805jxHQl92hImFAqqXMyMYjSPOyUPAwHYhB72g5sTXw==} - - ansi-escapes@5.0.0: - resolution: {integrity: sha512-5GFMVX8HqE/TB+FuBJGuO5XG0WrsA6ptUqoODaT/n9mmUaZFkqnBueB4leqGBCmrUHnCnC4PCZTCd0E7QQ83bA==} - engines: {node: '>=12'} - - ansi-regex@2.1.1: - resolution: {integrity: sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==} - engines: {node: '>=0.10.0'} - - ansi-regex@5.0.1: - resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} - engines: {node: '>=8'} - - ansi-regex@6.0.1: - resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} - engines: {node: '>=12'} - - ansi-styles@2.2.1: - resolution: {integrity: sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==} - engines: {node: '>=0.10.0'} - - ansi-styles@3.2.1: - resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} - engines: {node: '>=4'} - - ansi-styles@4.3.0: - resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} - engines: {node: '>=8'} - - ansi-styles@5.2.0: - resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} - engines: {node: '>=10'} - - ansi-styles@6.2.1: - resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} - engines: {node: '>=12'} - - argparse@2.0.1: - resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} - - aria-query@5.1.3: - resolution: {integrity: sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==} - - aria-query@5.3.0: - resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} - - arktype@2.0.0-dev.14: - resolution: {integrity: sha512-Iu0xsil97Xps+AobQAQgCeL1plDcq9iwFiLwxvTt+xvT38BbPCr2CVSW/fMeiim+9eKfUCuqZ0Bq6m7kcVfIXA==} - - array-buffer-byte-length@1.0.0: - resolution: {integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==} - - array-union@2.1.0: - resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} - engines: {node: '>=8'} - - arraybuffer.prototype.slice@1.0.1: - resolution: {integrity: sha512-09x0ZWFEjj4WD8PDbykUwo3t9arLn8NIzmmYEJFpYekOAQjpkGSyrQhNoRTcwwcFRu+ycWF78QZ63oWTqSjBcw==} - engines: {node: '>= 0.4'} - - assertion-error@1.1.0: - resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} - - async@3.2.4: - resolution: {integrity: sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==} - - asynckit@0.4.0: - resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} - - asyncro@3.0.0: - resolution: {integrity: sha512-nEnWYfrBmA3taTiuiOoZYmgJ/CNrSoQLeLs29SeLcPu60yaw/mHDBHV0iOZ051fTvsTHxpCY+gXibqT9wbQYfg==} - - autoprefixer@10.4.15: - resolution: {integrity: sha512-KCuPB8ZCIqFdA4HwKXsvz7j6gvSDNhDP7WnUjBleRkKjPdvCmHFuQ77ocavI8FT6NdvlBnE2UFr2H4Mycn8Vew==} - engines: {node: ^10 || ^12 || >=14} - hasBin: true - peerDependencies: - postcss: ^8.1.0 - - available-typed-arrays@1.0.5: - resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} - engines: {node: '>= 0.4'} - - babel-plugin-macros@3.1.0: - resolution: {integrity: sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==} - engines: {node: '>=10', npm: '>=6'} - - babel-plugin-polyfill-corejs2@0.4.5: - resolution: {integrity: sha512-19hwUH5FKl49JEsvyTcoHakh6BE0wgXLLptIyKZ3PijHc/Ci521wygORCUCCred+E/twuqRyAkE02BAWPmsHOg==} - peerDependencies: - '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - - babel-plugin-polyfill-corejs3@0.8.3: - resolution: {integrity: sha512-z41XaniZL26WLrvjy7soabMXrfPWARN25PZoriDEiLMxAp50AUW3t35BGQUMg5xK3UrpVTtagIDklxYa+MhiNA==} - peerDependencies: - '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - - babel-plugin-polyfill-regenerator@0.5.2: - resolution: {integrity: sha512-tAlOptU0Xj34V1Y2PNTL4Y0FOJMDB6bZmoW39FeCQIhigGLkqu3Fj6uiXpxIf6Ij274ENdYx64y6Au+ZKlb1IA==} - peerDependencies: - '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - - babel-plugin-transform-async-to-promises@0.8.18: - resolution: {integrity: sha512-WpOrF76nUHijnNn10eBGOHZmXQC8JYRME9rOLxStOga7Av2VO53ehVFvVNImMksVtQuL2/7ZNxEgxnx7oo/3Hw==} - - babel-plugin-transform-replace-expressions@0.2.0: - resolution: {integrity: sha512-Eh1rRd9hWEYgkgoA3D0kGp7xJ/wgVshgsqmq60iC4HVWD+Lux+fNHSHBa2v1Hsv+dHflShC71qKhiH40OiPtDA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - balanced-match@1.0.2: - resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} - - boolbase@1.0.0: - resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} - - brace-expansion@1.1.11: - resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} - - brace-expansion@2.0.1: - resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} - - braces@3.0.2: - resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} - engines: {node: '>=8'} - - braces@3.0.3: - resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} - engines: {node: '>=8'} - - brotli-size@4.0.0: - resolution: {integrity: sha512-uA9fOtlTRC0iqKfzff1W34DXUA3GyVqbUaeo3Rw3d4gd1eavKVCETXrn3NzO74W+UVkG3UHu8WxUi+XvKI/huA==} - engines: {node: '>= 10.16.0'} - - browserslist@4.21.10: - resolution: {integrity: sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==} - engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} - hasBin: true - - browserslist@4.23.1: - resolution: {integrity: sha512-TUfofFo/KsK/bWZ9TWQ5O26tsWW4Uhmt8IYklbnUa70udB6P2wA7w7o4PY4muaEPBQaAX+CEnmmIA41NVHtPVw==} - engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} - hasBin: true - - buffer-from@1.1.2: - resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} - - builtin-modules@3.3.0: - resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==} - engines: {node: '>=6'} - - cac@6.7.14: - resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} - engines: {node: '>=8'} - - call-bind@1.0.2: - resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==} - - callsites@3.1.0: - resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} - engines: {node: '>=6'} - - camelcase@6.3.0: - resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} - engines: {node: '>=10'} - - camelcase@8.0.0: - resolution: {integrity: sha512-8WB3Jcas3swSvjIeA2yvCJ+Miyz5l1ZmB6HFb9R1317dt9LCQoswg/BGrmAmkWVEszSrrg4RwmO46qIm2OEnSA==} - engines: {node: '>=16'} - - caniuse-api@3.0.0: - resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==} - - caniuse-lite@1.0.30001640: - resolution: {integrity: sha512-lA4VMpW0PSUrFnkmVuEKBUovSWKhj7puyCg8StBChgu298N1AtuF1sKWEvfDuimSEDbhlb/KqPKC3fs1HbuQUA==} - - chai@4.4.1: - resolution: {integrity: sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==} - engines: {node: '>=4'} - - chalk@1.1.3: - resolution: {integrity: sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==} - engines: {node: '>=0.10.0'} - - chalk@2.4.2: - resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} - engines: {node: '>=4'} - - chalk@3.0.0: - resolution: {integrity: sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==} - engines: {node: '>=8'} - - chalk@4.1.2: - resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} - engines: {node: '>=10'} - - chalk@5.3.0: - resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==} - engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} - - check-error@1.0.3: - resolution: {integrity: sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==} - - check-export-map@1.3.1: - resolution: {integrity: sha512-HX3ZRYk8/CLBJ6kjf7B3U4RGbhcbboswAq9CVsbuEIDQ0OoRI15ms2h3z3RL7sOo6KEVgVb/BiVGw/XMdCLAJg==} - hasBin: true - - class-transformer@0.5.1: - resolution: {integrity: sha512-SQa1Ws6hUbfC98vKGxZH3KFY0Y1lm5Zm0SY8XX9zbK7FJCyVEac3ATW0RIpwzW+oOfmHE5PMPufDG9hCfoEOMw==} - - class-validator@0.14.1: - resolution: {integrity: sha512-2VEG9JICxIqTpoK1eMzZqaV+u/EiwEJkMGzTrZf6sU/fwsnOITVgYJ8yojSy6CaXtO9V0Cc6ZQZ8h8m4UBuLwQ==} - - cli-cursor@4.0.0: - resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - cli-truncate@3.1.0: - resolution: {integrity: sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - cliui@8.0.1: - resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} - engines: {node: '>=12'} - - color-convert@1.9.3: - resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} - - color-convert@2.0.1: - resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} - engines: {node: '>=7.0.0'} - - color-name@1.1.3: - resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} - - color-name@1.1.4: - resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} - - colord@2.9.3: - resolution: {integrity: sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==} - - colorette@2.0.20: - resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} - - combined-stream@1.0.8: - resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} - engines: {node: '>= 0.8'} - - commander@11.0.0: - resolution: {integrity: sha512-9HMlXtt/BNoYr8ooyjjNRdIilOTkVJXB+GhxMTtOKwk0R4j4lS4NpjuqmRxroBfnfTSHQIHQB7wryHhXarNjmQ==} - engines: {node: '>=16'} - - commander@2.20.3: - resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} - - commander@7.2.0: - resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} - engines: {node: '>= 10'} - - commondir@1.0.1: - resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} - - computed-types@1.11.2: - resolution: {integrity: sha512-5KK7nQrJDtm0dByaXTY1ZnTmZchilV2cew2LqIDLQo9JGvrkSqbikfk0m+MpiEgTVTPPx3dFQmwKSkK6Iae5Jw==} - - concat-map@0.0.1: - resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} - - concat-with-sourcemaps@1.1.0: - resolution: {integrity: sha512-4gEjHJFT9e+2W/77h/DS5SGUgwDaOwprX8L/gl5+3ixnzkVJJsZWDSelmN3Oilw3LNDZjZV0yqH1hLG3k6nghg==} - - confbox@0.1.7: - resolution: {integrity: sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==} - - context@3.0.7: - resolution: {integrity: sha512-ceW8mQwFhOin5ih5Sm6jq9mju7+p/usZFkf+PwNPXcpARplz1eAE4PB0V90Os/STyd1387Gu4C8I5Jmy3wDoIA==} - - convert-source-map@1.9.0: - resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} - - convert-source-map@2.0.0: - resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - - core-js-compat@3.32.0: - resolution: {integrity: sha512-7a9a3D1k4UCVKnLhrgALyFcP7YCsLOQIxPd0dKjf/6GuPcgyiGP70ewWdCGrSK7evyhymi0qO4EqCmSJofDeYw==} - - cosmiconfig@7.1.0: - resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==} - engines: {node: '>=10'} - - cross-env@7.0.3: - resolution: {integrity: sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==} - engines: {node: '>=10.14', npm: '>=6', yarn: '>=1'} - hasBin: true - - cross-spawn@6.0.5: - resolution: {integrity: sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==} - engines: {node: '>=4.8'} - - cross-spawn@7.0.3: - resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} - engines: {node: '>= 8'} - - css-declaration-sorter@6.4.1: - resolution: {integrity: sha512-rtdthzxKuyq6IzqX6jEcIzQF/YqccluefyCYheovBOLhFT/drQA9zj/UbRAa9J7C0o6EG6u3E6g+vKkay7/k3g==} - engines: {node: ^10 || ^12 || >=14} - peerDependencies: - postcss: ^8.0.9 - - css-select@4.3.0: - resolution: {integrity: sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==} - - css-tree@1.1.3: - resolution: {integrity: sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==} - engines: {node: '>=8.0.0'} - - css-what@6.1.0: - resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==} - engines: {node: '>= 6'} - - css.escape@1.5.1: - resolution: {integrity: sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==} - - cssesc@3.0.0: - resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} - engines: {node: '>=4'} - hasBin: true - - cssnano-preset-default@5.2.14: - resolution: {integrity: sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - cssnano-utils@3.1.0: - resolution: {integrity: sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - cssnano@5.1.15: - resolution: {integrity: sha512-j+BKgDcLDQA+eDifLx0EO4XSA56b7uut3BQFH+wbSaSTuGLuiyTa/wbRYthUXX8LC9mLg+WWKe8h+qJuwTAbHw==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - csso@4.2.0: - resolution: {integrity: sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==} - engines: {node: '>=8.0.0'} - - cssstyle@3.0.0: - resolution: {integrity: sha512-N4u2ABATi3Qplzf0hWbVCdjenim8F3ojEXpBDF5hBpjzW182MjNGLqfmQ0SkSPeQ+V86ZXgeH8aXj6kayd4jgg==} - engines: {node: '>=14'} - - csstype@3.1.2: - resolution: {integrity: sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==} - - data-urls@4.0.0: - resolution: {integrity: sha512-/mMTei/JXPqvFqQtfyTowxmJVwr2PVAeCcDxyFf6LhoOu/09TX2OX3kb2wzi4DMXcfj4OItwDOnhl5oziPnT6g==} - engines: {node: '>=14'} - - dayjs@1.11.11: - resolution: {integrity: sha512-okzr3f11N6WuqYtZSvm+F776mB41wRZMhKP+hc34YdW+KmtYYK9iqvHSwo2k9FEH3fhGXvOPV6yz2IcSrfRUDg==} - - debug@4.3.4: - resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} - engines: {node: '>=6.0'} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - - debug@4.3.5: - resolution: {integrity: sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==} - engines: {node: '>=6.0'} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - - decimal.js@10.4.3: - resolution: {integrity: sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==} - - deep-eql@4.1.4: - resolution: {integrity: sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg==} - engines: {node: '>=6'} - - deep-equal@2.2.2: - resolution: {integrity: sha512-xjVyBf0w5vH0I42jdAZzOKVldmPgSulmiyPRywoyq7HXC9qdgo17kxJE+rdnif5Tz6+pIrpJI8dCpMNLIGkUiA==} - - deep-is@0.1.4: - resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} - - deepmerge@4.3.1: - resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} - engines: {node: '>=0.10.0'} - - define-lazy-prop@2.0.0: - resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==} - engines: {node: '>=8'} - - define-properties@1.2.0: - resolution: {integrity: sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==} - engines: {node: '>= 0.4'} - - delayed-stream@1.0.0: - resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} - engines: {node: '>=0.4.0'} - - dequal@2.0.3: - resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} - engines: {node: '>=6'} - - diff-sequences@29.6.3: - resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - dir-glob@3.0.1: - resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} - engines: {node: '>=8'} - - dlv@1.1.3: - resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} - - doctrine@3.0.0: - resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} - engines: {node: '>=6.0.0'} - - dom-accessibility-api@0.5.16: - resolution: {integrity: sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==} - - dom-accessibility-api@0.6.3: - resolution: {integrity: sha512-7ZgogeTnjuHbo+ct10G9Ffp0mif17idi0IyWNVA/wcwcm7NPOD/WEHVP3n7n3MhXqxoIYm8d6MuZohYWIZ4T3w==} - - dom-serializer@1.4.1: - resolution: {integrity: sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==} - - domelementtype@2.3.0: - resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==} - - domexception@4.0.0: - resolution: {integrity: sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw==} - engines: {node: '>=12'} - - domhandler@4.3.1: - resolution: {integrity: sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==} - engines: {node: '>= 4'} - - domutils@2.8.0: - resolution: {integrity: sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==} - - duplexer@0.1.1: - resolution: {integrity: sha512-sxNZ+ljy+RA1maXoUReeqBBpBC6RLKmg5ewzV+x+mSETmWNoKdZN6vcQjpFROemza23hGFskJtFNoUWUaQ+R4Q==} - - duplexer@0.1.2: - resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==} - - eastasianwidth@0.2.0: - resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - - effect@3.4.6: - resolution: {integrity: sha512-xmtAJVMBDPzuYWmOPHHYhT9OHUNvKTq9eMjvKKQQLdsNym+/Zarlh+39Y9bMSZ8c+yMrP8YCdLNl7B3cpzRrnA==} - - ejs@3.1.9: - resolution: {integrity: sha512-rC+QVNMJWv+MtPgkt0y+0rVEIdbtxVADApW9JXrUVlzHetgcyczP/E7DJmWJ4fJCZF2cPcBk0laWO9ZHMG3DmQ==} - engines: {node: '>=0.10.0'} - hasBin: true - - electron-to-chromium@1.4.494: - resolution: {integrity: sha512-KF7wtsFFDu4ws1ZsSOt4pdmO1yWVNWCFtijVYZPUeW4SV7/hy/AESjLn/+qIWgq7mHscNOKAwN5AIM1+YAy+Ww==} - - electron-to-chromium@1.4.816: - resolution: {integrity: sha512-EKH5X5oqC6hLmiS7/vYtZHZFTNdhsYG5NVPRN6Yn0kQHNBlT59+xSM8HBy66P5fxWpKgZbPqb+diC64ng295Jw==} - - emoji-regex@8.0.0: - resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} - - emoji-regex@9.2.2: - resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} - - entities@2.2.0: - resolution: {integrity: sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==} - - entities@4.5.0: - resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} - engines: {node: '>=0.12'} - - error-ex@1.3.2: - resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} - - es-abstract@1.22.1: - resolution: {integrity: sha512-ioRRcXMO6OFyRpyzV3kE1IIBd4WG5/kltnzdxSCqoP8CMGs/Li+M1uF5o7lOkZVFjDs+NLesthnF66Pg/0q0Lw==} - engines: {node: '>= 0.4'} - - es-get-iterator@1.1.3: - resolution: {integrity: sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==} - - es-set-tostringtag@2.0.1: - resolution: {integrity: sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==} - engines: {node: '>= 0.4'} - - es-to-primitive@1.2.1: - resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} - engines: {node: '>= 0.4'} - - esbuild@0.18.20: - resolution: {integrity: sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==} - engines: {node: '>=12'} - hasBin: true - - escalade@3.1.1: - resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} - engines: {node: '>=6'} - - escalade@3.1.2: - resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==} - engines: {node: '>=6'} - - escape-string-regexp@1.0.5: - resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} - engines: {node: '>=0.8.0'} - - escape-string-regexp@4.0.0: - resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} - engines: {node: '>=10'} - - eslint-config-prettier@9.1.0: - resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==} - hasBin: true - peerDependencies: - eslint: '>=7.0.0' - - eslint-scope@7.2.2: - resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - eslint-visitor-keys@3.4.3: - resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - eslint@8.57.0: - resolution: {integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - hasBin: true - - espree@9.6.1: - resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - esquery@1.5.0: - resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==} - engines: {node: '>=0.10'} - - esrecurse@4.3.0: - resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} - engines: {node: '>=4.0'} - - estraverse@5.3.0: - resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} - engines: {node: '>=4.0'} - - estree-walker@0.6.1: - resolution: {integrity: sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==} - - estree-walker@1.0.1: - resolution: {integrity: sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==} - - estree-walker@2.0.2: - resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} - - esutils@2.0.3: - resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} - engines: {node: '>=0.10.0'} - - eventemitter3@4.0.7: - resolution: {integrity: sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==} - - eventemitter3@5.0.1: - resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} - - execa@7.2.0: - resolution: {integrity: sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==} - engines: {node: ^14.18.0 || ^16.14.0 || >=18.0.0} - - fast-check@3.18.0: - resolution: {integrity: sha512-/951xaT0kA40w0GXRsZXEwSTE7LugjZtSA/8vPgFkiPQ8wNp8tRvqWuNDHBgLxJYXtsK11e/7Q4ObkKW5BdTFQ==} - engines: {node: '>=8.0.0'} - - fast-deep-equal@3.1.3: - resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} - - fast-glob@3.3.2: - resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} - engines: {node: '>=8.6.0'} - - fast-json-stable-stringify@2.1.0: - resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} - - fast-levenshtein@2.0.6: - resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} - - fastq@1.15.0: - resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==} - - figures@1.7.0: - resolution: {integrity: sha512-UxKlfCRuCBxSXU4C6t9scbDyWZ4VlaFFdojKtzJuSkuOBQ5CNFum+zZXFwHjo+CxBC1t6zlYPgHIgFjL8ggoEQ==} - engines: {node: '>=0.10.0'} - - file-entry-cache@6.0.1: - resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} - engines: {node: ^10.12.0 || >=12.0.0} - - filelist@1.0.4: - resolution: {integrity: sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==} - - filesize@6.4.0: - resolution: {integrity: sha512-mjFIpOHC4jbfcTfoh4rkWpI31mF7viw9ikj/JyLoKzqlwG/YsefKfvYlYhdYdg/9mtK2z1AzgN/0LvVQ3zdlSQ==} - engines: {node: '>= 0.4.0'} - - fill-range@7.0.1: - resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} - engines: {node: '>=8'} - - fill-range@7.1.1: - resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} - engines: {node: '>=8'} - - find-cache-dir@3.3.2: - resolution: {integrity: sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==} - engines: {node: '>=8'} - - find-up@4.1.0: - resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} - engines: {node: '>=8'} - - find-up@5.0.0: - resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} - engines: {node: '>=10'} - - flat-cache@3.0.4: - resolution: {integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==} - engines: {node: ^10.12.0 || >=12.0.0} - - flatted@3.2.7: - resolution: {integrity: sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==} - - for-each@0.3.3: - resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} - - form-data@4.0.0: - resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} - engines: {node: '>= 6'} - - fp-ts@2.16.7: - resolution: {integrity: sha512-Xiux+4mHHPj32/mrqN3XIIqEKk/MousgoC2FIaCwehpPjBI4oDrLvQEyQ/2T1sbTe0s/YIQqF98z+uHJLVoS9Q==} - - fraction.js@4.2.0: - resolution: {integrity: sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==} - - fs-extra@10.1.0: - resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} - engines: {node: '>=12'} - - fs.realpath@1.0.0: - resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} - - fsevents@2.3.3: - resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} - engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} - os: [darwin] - - function-bind@1.1.1: - resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} - - function.prototype.name@1.1.5: - resolution: {integrity: sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==} - engines: {node: '>= 0.4'} - - functions-have-names@1.2.3: - resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} - - generic-names@4.0.0: - resolution: {integrity: sha512-ySFolZQfw9FoDb3ed9d80Cm9f0+r7qj+HJkWjeD9RBfpxEVTlVhol+gvaQB/78WbwYfbnNh8nWHHBSlg072y6A==} - - gensync@1.0.0-beta.2: - resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} - engines: {node: '>=6.9.0'} - - get-caller-file@2.0.5: - resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} - engines: {node: 6.* || 8.* || >= 10.*} - - get-func-name@2.0.2: - resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==} - - get-intrinsic@1.2.1: - resolution: {integrity: sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==} - - get-stream@6.0.1: - resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} - engines: {node: '>=10'} - - get-symbol-description@1.0.0: - resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==} - engines: {node: '>= 0.4'} - - glob-parent@5.1.2: - resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} - engines: {node: '>= 6'} - - glob-parent@6.0.2: - resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} - engines: {node: '>=10.13.0'} - - glob@7.2.3: - resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} - - globals@11.12.0: - resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} - engines: {node: '>=4'} - - globals@13.21.0: - resolution: {integrity: sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==} - engines: {node: '>=8'} - - globalthis@1.0.3: - resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} - engines: {node: '>= 0.4'} - - globalyzer@0.1.0: - resolution: {integrity: sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==} - - globby@11.1.0: - resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} - engines: {node: '>=10'} - - globrex@0.1.2: - resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==} - - gopd@1.0.1: - resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} - - graceful-fs@4.2.11: - resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} - - graphemer@1.4.0: - resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} - - gzip-size@3.0.0: - resolution: {integrity: sha512-6s8trQiK+OMzSaCSVXX+iqIcLV9tC+E73jrJrJTyS4h/AJhlxHvzFKqM1YLDJWRGgHX8uLkBeXkA0njNj39L4w==} - engines: {node: '>=0.12.0'} - - gzip-size@6.0.0: - resolution: {integrity: sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==} - engines: {node: '>=10'} - - has-ansi@2.0.0: - resolution: {integrity: sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==} - engines: {node: '>=0.10.0'} - - has-bigints@1.0.2: - resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} - - has-flag@3.0.0: - resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} - engines: {node: '>=4'} - - has-flag@4.0.0: - resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} - engines: {node: '>=8'} - - has-property-descriptors@1.0.0: - resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==} - - has-proto@1.0.1: - resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==} - engines: {node: '>= 0.4'} - - has-symbols@1.0.3: - resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} - engines: {node: '>= 0.4'} - - has-tostringtag@1.0.0: - resolution: {integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==} - engines: {node: '>= 0.4'} - - has@1.0.3: - resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} - engines: {node: '>= 0.4.0'} - - hosted-git-info@2.8.9: - resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} - - html-encoding-sniffer@3.0.0: - resolution: {integrity: sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA==} - engines: {node: '>=12'} - - http-proxy-agent@5.0.0: - resolution: {integrity: sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==} - engines: {node: '>= 6'} - - https-proxy-agent@5.0.1: - resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} - engines: {node: '>= 6'} - - human-signals@4.3.1: - resolution: {integrity: sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==} - engines: {node: '>=14.18.0'} - - husky@8.0.3: - resolution: {integrity: sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==} - engines: {node: '>=14'} - hasBin: true - - iconv-lite@0.6.3: - resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} - engines: {node: '>=0.10.0'} - - icss-replace-symbols@1.1.0: - resolution: {integrity: sha512-chIaY3Vh2mh2Q3RGXttaDIzeiPvaVXJ+C4DAh/w3c37SKZ/U6PGMmuicR2EQQp9bKG8zLMCl7I+PtIoOOPp8Gg==} - - icss-utils@5.1.0: - resolution: {integrity: sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==} - engines: {node: ^10 || ^12 || >= 14} - peerDependencies: - postcss: ^8.1.0 - - ignore@5.2.4: - resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} - engines: {node: '>= 4'} - - ignore@5.3.1: - resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==} - engines: {node: '>= 4'} - - import-cwd@3.0.0: - resolution: {integrity: sha512-4pnzH16plW+hgvRECbDWpQl3cqtvSofHWh44met7ESfZ8UZOWWddm8hEyDTqREJ9RbYHY8gi8DqmaelApoOGMg==} - engines: {node: '>=8'} - - import-fresh@3.3.0: - resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} - engines: {node: '>=6'} - - import-from@3.0.0: - resolution: {integrity: sha512-CiuXOFFSzkU5x/CR0+z7T91Iht4CXgfCxVOFRhh2Zyhg5wOpWvvDLQUsWl+gcN+QscYBjez8hDCt85O7RLDttQ==} - engines: {node: '>=8'} - - imurmurhash@0.1.4: - resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} - engines: {node: '>=0.8.19'} - - indent-string@4.0.0: - resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} - engines: {node: '>=8'} - - inflight@1.0.6: - resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} - - inherits@2.0.4: - resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} - - internal-slot@1.0.5: - resolution: {integrity: sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==} - engines: {node: '>= 0.4'} - - io-ts-types@0.5.19: - resolution: {integrity: sha512-kQOYYDZG5vKre+INIDZbLeDJe+oM+4zLpUkjXyTMyUfoCpjJNyi29ZLkuEAwcPufaYo3yu/BsemZtbdD+NtRfQ==} - peerDependencies: - fp-ts: ^2.0.0 - io-ts: ^2.0.0 - monocle-ts: ^2.0.0 - newtype-ts: ^0.3.2 - - io-ts@2.2.21: - resolution: {integrity: sha512-zz2Z69v9ZIC3mMLYWIeoUcwWD6f+O7yP92FMVVaXEOSZH1jnVBmET/urd/uoarD1WGBY4rCj8TAyMPzsGNzMFQ==} - peerDependencies: - fp-ts: ^2.5.0 - - is-arguments@1.1.1: - resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==} - engines: {node: '>= 0.4'} - - is-array-buffer@3.0.2: - resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==} - - is-arrayish@0.2.1: - resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} - - is-bigint@1.0.4: - resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} - - is-boolean-object@1.1.2: - resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} - engines: {node: '>= 0.4'} - - is-callable@1.2.7: - resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} - engines: {node: '>= 0.4'} - - is-core-module@2.13.0: - resolution: {integrity: sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==} - - is-date-object@1.0.5: - resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} - engines: {node: '>= 0.4'} - - is-docker@2.2.1: - resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} - engines: {node: '>=8'} - hasBin: true - - is-extglob@2.1.1: - resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} - engines: {node: '>=0.10.0'} - - is-fullwidth-code-point@3.0.0: - resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} - engines: {node: '>=8'} - - is-fullwidth-code-point@4.0.0: - resolution: {integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==} - engines: {node: '>=12'} - - is-glob@4.0.3: - resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} - engines: {node: '>=0.10.0'} - - is-map@2.0.2: - resolution: {integrity: sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==} - - is-module@1.0.0: - resolution: {integrity: sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==} - - is-negative-zero@2.0.2: - resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} - engines: {node: '>= 0.4'} - - is-number-object@1.0.7: - resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} - engines: {node: '>= 0.4'} - - is-number@7.0.0: - resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} - engines: {node: '>=0.12.0'} - - is-path-inside@3.0.3: - resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} - engines: {node: '>=8'} - - is-potential-custom-element-name@1.0.1: - resolution: {integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==} - - is-reference@1.2.1: - resolution: {integrity: sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==} - - is-regex@1.1.4: - resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} - engines: {node: '>= 0.4'} - - is-set@2.0.2: - resolution: {integrity: sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==} - - is-shared-array-buffer@1.0.2: - resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==} - - is-stream@3.0.0: - resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - is-string@1.0.7: - resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} - engines: {node: '>= 0.4'} - - is-symbol@1.0.4: - resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} - engines: {node: '>= 0.4'} - - is-typed-array@1.1.12: - resolution: {integrity: sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==} - engines: {node: '>= 0.4'} - - is-weakmap@2.0.1: - resolution: {integrity: sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==} - - is-weakref@1.0.2: - resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} - - is-weakset@2.0.2: - resolution: {integrity: sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==} - - is-wsl@2.2.0: - resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==} - engines: {node: '>=8'} - - isarray@2.0.5: - resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} - - isexe@2.0.0: - resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} - - jake@10.8.7: - resolution: {integrity: sha512-ZDi3aP+fG/LchyBzUM804VjddnwfSfsdeYkwt8NcbKRvo4rFkjhs456iLFn3k2ZUWvNe4i48WACDbza8fhq2+w==} - engines: {node: '>=10'} - hasBin: true - - jest-worker@26.6.2: - resolution: {integrity: sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==} - engines: {node: '>= 10.13.0'} - - joi@17.13.3: - resolution: {integrity: sha512-otDA4ldcIx+ZXsKHWmp0YizCweVRZG96J10b0FevjfuncLO1oX59THoAmHkNubYJ+9gWsYsp5k8v4ib6oDv1fA==} - - js-tokens@4.0.0: - resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - - js-yaml@4.1.0: - resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} - hasBin: true - - jsdom@22.1.0: - resolution: {integrity: sha512-/9AVW7xNbsBv6GfWho4TTNjEo9fe6Zhf9O7s0Fhhr3u+awPwAJMKwAMXnkk5vBxflqLW9hTHX/0cs+P3gW+cQw==} - engines: {node: '>=16'} - peerDependencies: - canvas: ^2.5.0 - peerDependenciesMeta: - canvas: - optional: true - - jsesc@0.5.0: - resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==} - hasBin: true - - jsesc@2.5.2: - resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} - engines: {node: '>=4'} - hasBin: true - - json-parse-better-errors@1.0.2: - resolution: {integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==} - - json-parse-even-better-errors@2.3.1: - resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} - - json-schema-traverse@0.4.1: - resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} - - json-schema-traverse@1.0.0: - resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} - - json-stable-stringify-without-jsonify@1.0.1: - resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} - - json5@2.2.3: - resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} - engines: {node: '>=6'} - hasBin: true - - jsonfile@6.1.0: - resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} - - kleur@4.1.5: - resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} - engines: {node: '>=6'} - - kolorist@1.8.0: - resolution: {integrity: sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==} - - levn@0.4.1: - resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} - engines: {node: '>= 0.8.0'} - - libphonenumber-js@1.11.4: - resolution: {integrity: sha512-F/R50HQuWWYcmU/esP5jrH5LiWYaN7DpN0a/99U8+mnGGtnx8kmRE+649dQh3v+CowXXZc8vpkf5AmYkO0AQ7Q==} - - lilconfig@2.1.0: - resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} - engines: {node: '>=10'} - - lines-and-columns@1.2.4: - resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} - - lint-staged@14.0.1: - resolution: {integrity: sha512-Mw0cL6HXnHN1ag0mN/Dg4g6sr8uf8sn98w2Oc1ECtFto9tvRF7nkXGJRbx8gPlHyoR0pLyBr2lQHbWwmUHe1Sw==} - engines: {node: ^16.14.0 || >=18.0.0} - hasBin: true - - listr2@6.6.1: - resolution: {integrity: sha512-+rAXGHh0fkEWdXBmX+L6mmfmXmXvDGEKzkjxO+8mP3+nI/r/CWznVBvsibXdxda9Zz0OW2e2ikphN3OwCT/jSg==} - engines: {node: '>=16.0.0'} - peerDependencies: - enquirer: '>= 2.3.0 < 3' - peerDependenciesMeta: - enquirer: - optional: true - - load-json-file@4.0.0: - resolution: {integrity: sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==} - engines: {node: '>=4'} - - loader-utils@3.2.1: - resolution: {integrity: sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==} - engines: {node: '>= 12.13.0'} - - local-pkg@0.4.3: - resolution: {integrity: sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==} - engines: {node: '>=14'} - - locate-path@5.0.0: - resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} - engines: {node: '>=8'} - - locate-path@6.0.0: - resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} - engines: {node: '>=10'} - - lodash.camelcase@4.3.0: - resolution: {integrity: sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==} - - lodash.debounce@4.0.8: - resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} - - lodash.memoize@4.1.2: - resolution: {integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==} - - lodash.merge@4.6.2: - resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} - - lodash.uniq@4.5.0: - resolution: {integrity: sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==} - - lodash@4.17.21: - resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} - - log-update@5.0.1: - resolution: {integrity: sha512-5UtUDQ/6edw4ofyljDNcOVJQ4c7OjDro4h3y8e1GQL5iYElYclVHJ3zeWchylvMaKnDbDilC8irOVyexnA/Slw==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - loose-envify@1.4.0: - resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} - hasBin: true - - loupe@2.3.7: - resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==} - - lru-cache@5.1.1: - resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} - - lru-cache@6.0.0: - resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} - engines: {node: '>=10'} - - lz-string@1.5.0: - resolution: {integrity: sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==} - hasBin: true - - magic-string@0.25.9: - resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==} - - magic-string@0.30.2: - resolution: {integrity: sha512-lNZdu7pewtq/ZvWUp9Wpf/x7WzMTsR26TWV03BRZrXFsv+BI6dy8RAiKgm1uM/kyR0rCfUcqvOlXKG66KhIGug==} - engines: {node: '>=12'} - - make-dir@3.1.0: - resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} - engines: {node: '>=8'} - - maxmin@2.1.0: - resolution: {integrity: sha512-NWlApBjW9az9qRPaeg7CX4sQBWwytqz32bIEo1PW9pRW+kBP9KLRfJO3UC+TV31EcQZEUq7eMzikC7zt3zPJcw==} - engines: {node: '>=0.12'} - - mdn-data@2.0.14: - resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==} - - memorystream@0.3.1: - resolution: {integrity: sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==} - engines: {node: '>= 0.10.0'} - - merge-stream@2.0.0: - resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} - - merge2@1.4.1: - resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} - engines: {node: '>= 8'} - - microbundle@0.15.1: - resolution: {integrity: sha512-aAF+nwFbkSIJGfrJk+HyzmJOq3KFaimH6OIFBU6J2DPjQeg1jXIYlIyEv81Gyisb9moUkudn+wj7zLNYMOv75Q==} - hasBin: true - - micromatch@4.0.5: - resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} - engines: {node: '>=8.6'} - - micromatch@4.0.7: - resolution: {integrity: sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==} - engines: {node: '>=8.6'} - - mime-db@1.52.0: - resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} - engines: {node: '>= 0.6'} - - mime-types@2.1.35: - resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} - engines: {node: '>= 0.6'} - - mimic-fn@2.1.0: - resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} - engines: {node: '>=6'} - - mimic-fn@4.0.0: - resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} - engines: {node: '>=12'} - - min-indent@1.0.1: - resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} - engines: {node: '>=4'} - - minimatch@3.1.2: - resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} - - minimatch@5.1.6: - resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} - engines: {node: '>=10'} - - minimatch@9.0.3: - resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} - engines: {node: '>=16 || 14 >=14.17'} - - mlly@1.7.1: - resolution: {integrity: sha512-rrVRZRELyQzrIUAVMHxP97kv+G786pHmOKzuFII8zDYahFBS7qnHh2AlYSl1GAHhaMPCz6/oHjVMcfFYgFYHgA==} - - monocle-ts@2.3.13: - resolution: {integrity: sha512-D5Ygd3oulEoAm3KuGO0eeJIrhFf1jlQIoEVV2DYsZUMz42j4tGxgct97Aq68+F8w4w4geEnwFa8HayTS/7lpKQ==} - peerDependencies: - fp-ts: ^2.5.0 - - mri@1.2.0: - resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} - engines: {node: '>=4'} - - ms@2.1.2: - resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} - - n4s@4.3.7: - resolution: {integrity: sha512-uzm6CL9cBMHaB/YuGBHRDRa6RuvpZ/xXgyoWgVS/+8/E0zQC3IyZVnIOPCOavCs/UOm4zomn99T4ng9HWcL7Cw==} - - nanoid@3.3.6: - resolution: {integrity: sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==} - engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} - hasBin: true - - natural-compare@1.4.0: - resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} - - newtype-ts@0.3.5: - resolution: {integrity: sha512-v83UEQMlVR75yf1OUdoSFssjitxzjZlqBAjiGQ4WJaML8Jdc68LJ+BaSAXUmKY4bNzp7hygkKLYTsDi14PxI2g==} - peerDependencies: - fp-ts: ^2.0.0 - monocle-ts: ^2.0.0 - - nice-try@1.0.5: - resolution: {integrity: sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==} - - node-releases@2.0.13: - resolution: {integrity: sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==} - - node-releases@2.0.14: - resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} - - nope-validator@1.0.4: - resolution: {integrity: sha512-+ooCIlPpDJbD8H9oz+izVqe28ZO+Km6WCGYJnkm+DOLkAWunhDwxV9PyZ5J2gZ/URFeX3u1Mk+yz7kIra5wayg==} - - normalize-package-data@2.5.0: - resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} - - normalize-range@0.1.2: - resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} - engines: {node: '>=0.10.0'} - - normalize-url@6.1.0: - resolution: {integrity: sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==} - engines: {node: '>=10'} - - normalize-url@8.0.1: - resolution: {integrity: sha512-IO9QvjUMWxPQQhs60oOu10CRkWCiZzSUkzbXGGV9pviYl1fXYcvkzQ5jV9z8Y6un8ARoVRl4EtC6v6jNqbaJ/w==} - engines: {node: '>=14.16'} - - npm-run-all@4.1.5: - resolution: {integrity: sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==} - engines: {node: '>= 4'} - hasBin: true - - npm-run-path@5.1.0: - resolution: {integrity: sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - nth-check@2.1.1: - resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} - - number-is-nan@1.0.1: - resolution: {integrity: sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==} - engines: {node: '>=0.10.0'} - - nwsapi@2.2.7: - resolution: {integrity: sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ==} - - object-assign@4.1.1: - resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} - engines: {node: '>=0.10.0'} - - object-inspect@1.12.3: - resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==} - - object-is@1.1.5: - resolution: {integrity: sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==} - engines: {node: '>= 0.4'} - - object-keys@1.1.1: - resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} - engines: {node: '>= 0.4'} - - object.assign@4.1.4: - resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==} - engines: {node: '>= 0.4'} - - once@1.4.0: - resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} - - onetime@5.1.2: - resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} - engines: {node: '>=6'} - - onetime@6.0.0: - resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} - engines: {node: '>=12'} - - open@8.4.2: - resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==} - engines: {node: '>=12'} - - optionator@0.9.3: - resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==} - engines: {node: '>= 0.8.0'} - - p-finally@1.0.0: - resolution: {integrity: sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==} - engines: {node: '>=4'} - - p-limit@2.3.0: - resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} - engines: {node: '>=6'} - - p-limit@3.1.0: - resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} - engines: {node: '>=10'} - - p-limit@4.0.0: - resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - p-locate@4.1.0: - resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} - engines: {node: '>=8'} - - p-locate@5.0.0: - resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} - engines: {node: '>=10'} - - p-queue@6.6.2: - resolution: {integrity: sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ==} - engines: {node: '>=8'} - - p-timeout@3.2.0: - resolution: {integrity: sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==} - engines: {node: '>=8'} - - p-try@2.2.0: - resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} - engines: {node: '>=6'} - - parent-module@1.0.1: - resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} - engines: {node: '>=6'} - - parse-json@4.0.0: - resolution: {integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==} - engines: {node: '>=4'} - - parse-json@5.2.0: - resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} - engines: {node: '>=8'} - - parse5@7.1.2: - resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==} - - path-exists@4.0.0: - resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} - engines: {node: '>=8'} - - path-is-absolute@1.0.1: - resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} - engines: {node: '>=0.10.0'} - - path-key@2.0.1: - resolution: {integrity: sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==} - engines: {node: '>=4'} - - path-key@3.1.1: - resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} - engines: {node: '>=8'} - - path-key@4.0.0: - resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} - engines: {node: '>=12'} - - path-parse@1.0.7: - resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} - - path-type@3.0.0: - resolution: {integrity: sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==} - engines: {node: '>=4'} - - path-type@4.0.0: - resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} - engines: {node: '>=8'} - - pathe@1.1.1: - resolution: {integrity: sha512-d+RQGp0MAYTIaDBIMmOfMwz3E+LOZnxx1HZd5R18mmCZY0QBlK0LDZfPc8FW8Ed2DlvsuE6PRjroDY+wg4+j/Q==} - - pathe@1.1.2: - resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} - - pathval@1.1.1: - resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==} - - picocolors@1.0.0: - resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} - - picocolors@1.0.1: - resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==} - - picomatch@2.3.1: - resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} - engines: {node: '>=8.6'} - - pidtree@0.3.1: - resolution: {integrity: sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==} - engines: {node: '>=0.10'} - hasBin: true - - pidtree@0.6.0: - resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==} - engines: {node: '>=0.10'} - hasBin: true - - pify@3.0.0: - resolution: {integrity: sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==} - engines: {node: '>=4'} - - pify@5.0.0: - resolution: {integrity: sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==} - engines: {node: '>=10'} - - pkg-dir@4.2.0: - resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} - engines: {node: '>=8'} - - pkg-types@1.1.3: - resolution: {integrity: sha512-+JrgthZG6m3ckicaOB74TwQ+tBWsFl3qVQg7mN8ulwSOElJ7gBhKzj2VkCPnZ4NlF6kEquYU+RIYNVAvzd54UA==} - - postcss-calc@8.2.4: - resolution: {integrity: sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==} - peerDependencies: - postcss: ^8.2.2 - - postcss-colormin@5.3.1: - resolution: {integrity: sha512-UsWQG0AqTFQmpBegeLLc1+c3jIqBNB0zlDGRWR+dQ3pRKJL1oeMzyqmH3o2PIfn9MBdNrVPWhDbT769LxCTLJQ==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - postcss-convert-values@5.1.3: - resolution: {integrity: sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - postcss-discard-comments@5.1.2: - resolution: {integrity: sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - postcss-discard-duplicates@5.1.0: - resolution: {integrity: sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - postcss-discard-empty@5.1.1: - resolution: {integrity: sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - postcss-discard-overridden@5.1.0: - resolution: {integrity: sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - postcss-load-config@3.1.4: - resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==} - engines: {node: '>= 10'} - peerDependencies: - postcss: '>=8.0.9' - ts-node: '>=9.0.0' - peerDependenciesMeta: - postcss: - optional: true - ts-node: - optional: true - - postcss-merge-longhand@5.1.7: - resolution: {integrity: sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - postcss-merge-rules@5.1.4: - resolution: {integrity: sha512-0R2IuYpgU93y9lhVbO/OylTtKMVcHb67zjWIfCiKR9rWL3GUk1677LAqD/BcHizukdZEjT8Ru3oHRoAYoJy44g==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - postcss-minify-font-values@5.1.0: - resolution: {integrity: sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - postcss-minify-gradients@5.1.1: - resolution: {integrity: sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - postcss-minify-params@5.1.4: - resolution: {integrity: sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - postcss-minify-selectors@5.2.1: - resolution: {integrity: sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - postcss-modules-extract-imports@3.0.0: - resolution: {integrity: sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==} - engines: {node: ^10 || ^12 || >= 14} - peerDependencies: - postcss: ^8.1.0 - - postcss-modules-local-by-default@4.0.3: - resolution: {integrity: sha512-2/u2zraspoACtrbFRnTijMiQtb4GW4BvatjaG/bCjYQo8kLTdevCUlwuBHx2sCnSyrI3x3qj4ZK1j5LQBgzmwA==} - engines: {node: ^10 || ^12 || >= 14} - peerDependencies: - postcss: ^8.1.0 - - postcss-modules-scope@3.0.0: - resolution: {integrity: sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==} - engines: {node: ^10 || ^12 || >= 14} - peerDependencies: - postcss: ^8.1.0 - - postcss-modules-values@4.0.0: - resolution: {integrity: sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==} - engines: {node: ^10 || ^12 || >= 14} - peerDependencies: - postcss: ^8.1.0 - - postcss-modules@4.3.1: - resolution: {integrity: sha512-ItUhSUxBBdNamkT3KzIZwYNNRFKmkJrofvC2nWab3CPKhYBQ1f27XXh1PAPE27Psx58jeelPsxWB/+og+KEH0Q==} - peerDependencies: - postcss: ^8.0.0 - - postcss-normalize-charset@5.1.0: - resolution: {integrity: sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - postcss-normalize-display-values@5.1.0: - resolution: {integrity: sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - postcss-normalize-positions@5.1.1: - resolution: {integrity: sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - postcss-normalize-repeat-style@5.1.1: - resolution: {integrity: sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - postcss-normalize-string@5.1.0: - resolution: {integrity: sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - postcss-normalize-timing-functions@5.1.0: - resolution: {integrity: sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - postcss-normalize-unicode@5.1.1: - resolution: {integrity: sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - postcss-normalize-url@5.1.0: - resolution: {integrity: sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - postcss-normalize-whitespace@5.1.1: - resolution: {integrity: sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - postcss-ordered-values@5.1.3: - resolution: {integrity: sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - postcss-reduce-initial@5.1.2: - resolution: {integrity: sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - postcss-reduce-transforms@5.1.0: - resolution: {integrity: sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - postcss-selector-parser@6.0.13: - resolution: {integrity: sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==} - engines: {node: '>=4'} - - postcss-svgo@5.1.0: - resolution: {integrity: sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - postcss-unique-selectors@5.1.1: - resolution: {integrity: sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - postcss-value-parser@4.2.0: - resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} - - postcss@8.4.31: - resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} - engines: {node: ^10 || ^12 || >=14} - - prelude-ls@1.2.1: - resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} - engines: {node: '>= 0.8.0'} - - prettier@3.3.2: - resolution: {integrity: sha512-rAVeHYMcv8ATV5d508CFdn+8/pHPpXeIid1DdrPwXnaAdH7cqjVbpJaT5eq4yRAFU/lsbwYwSF/n5iNrdJHPQA==} - engines: {node: '>=14'} - hasBin: true - - pretty-bytes@3.0.1: - resolution: {integrity: sha512-eb7ZAeUTgfh294cElcu51w+OTRp/6ItW758LjwJSK72LDevcuJn0P4eD71PLMDGPwwatXmAmYHTkzvpKlJE3ow==} - engines: {node: '>=0.10.0'} - - pretty-bytes@5.6.0: - resolution: {integrity: sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==} - engines: {node: '>=6'} - - pretty-format@27.5.1: - resolution: {integrity: sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - - pretty-format@29.7.0: - resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - promise.series@0.2.0: - resolution: {integrity: sha512-VWQJyU2bcDTgZw8kpfBpB/ejZASlCrzwz5f2hjb/zlujOEB4oeiAhHygAWq8ubsX2GVkD4kCU5V2dwOTaCY5EQ==} - engines: {node: '>=0.12'} - - property-expr@2.0.5: - resolution: {integrity: sha512-IJUkICM5dP5znhCckHSv30Q4b5/JA5enCtkRHYaOVOAocnH/1BQEYTC5NMfT3AVl/iXKdr3aqQbQn9DxyWknwA==} - - psl@1.9.0: - resolution: {integrity: sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==} - - punycode@2.3.0: - resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} - engines: {node: '>=6'} - - pure-rand@6.1.0: - resolution: {integrity: sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==} - - querystringify@2.2.0: - resolution: {integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==} - - queue-microtask@1.2.3: - resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} - - randombytes@2.1.0: - resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} - - react-dom@18.3.1: - resolution: {integrity: sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==} - peerDependencies: - react: ^18.3.1 - - react-hook-form@7.52.1: - resolution: {integrity: sha512-uNKIhaoICJ5KQALYZ4TOaOLElyM+xipord+Ha3crEFhTntdLvWZqVY49Wqd/0GiVCA/f9NjemLeiNPjG7Hpurg==} - engines: {node: '>=12.22.0'} - peerDependencies: - react: ^16.8.0 || ^17 || ^18 || ^19 - - react-is@17.0.2: - resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} - - react-is@18.3.1: - resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==} - - react-refresh@0.14.2: - resolution: {integrity: sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==} - engines: {node: '>=0.10.0'} - - react@18.3.1: - resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==} - engines: {node: '>=0.10.0'} - - read-pkg@3.0.0: - resolution: {integrity: sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==} - engines: {node: '>=4'} - - redent@3.0.0: - resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==} - engines: {node: '>=8'} - - reflect-metadata@0.1.14: - resolution: {integrity: sha512-ZhYeb6nRaXCfhnndflDK8qI6ZQ/YcWZCISRAWICW9XYqMUwjZM9Z0DveWX/ABN01oxSHwVxKQmxeYZSsm0jh5A==} - - regenerate-unicode-properties@10.1.0: - resolution: {integrity: sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==} - engines: {node: '>=4'} - - regenerate@1.4.2: - resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==} - - regenerator-runtime@0.14.0: - resolution: {integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==} - - regenerator-transform@0.15.2: - resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==} - - regexp.prototype.flags@1.5.0: - resolution: {integrity: sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==} - engines: {node: '>= 0.4'} - - regexpu-core@5.3.2: - resolution: {integrity: sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==} - engines: {node: '>=4'} - - regjsparser@0.9.1: - resolution: {integrity: sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==} - hasBin: true - - require-directory@2.1.1: - resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} - engines: {node: '>=0.10.0'} - - require-from-string@2.0.2: - resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} - engines: {node: '>=0.10.0'} - - requires-port@1.0.0: - resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==} - - resolve-from@4.0.0: - resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} - engines: {node: '>=4'} - - resolve-from@5.0.0: - resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} - engines: {node: '>=8'} - - resolve@1.22.4: - resolution: {integrity: sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==} - hasBin: true - - restore-cursor@4.0.0: - resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - reusify@1.0.4: - resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} - engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - - rfdc@1.3.0: - resolution: {integrity: sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==} - - rimraf@3.0.2: - resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} - hasBin: true - - rollup-plugin-bundle-size@1.0.3: - resolution: {integrity: sha512-aWj0Pvzq90fqbI5vN1IvUrlf4utOqy+AERYxwWjegH1G8PzheMnrRIgQ5tkwKVtQMDP0bHZEACW/zLDF+XgfXQ==} - - rollup-plugin-postcss@4.0.2: - resolution: {integrity: sha512-05EaY6zvZdmvPUDi3uCcAQoESDcYnv8ogJJQRp6V5kZ6J6P7uAVJlrTZcaaA20wTH527YTnKfkAoPxWI/jPp4w==} - engines: {node: '>=10'} - peerDependencies: - postcss: 8.x - - rollup-plugin-terser@7.0.2: - resolution: {integrity: sha512-w3iIaU4OxcF52UUXiZNsNeuXIMDvFrr+ZXK6bFZ0Q60qyVfq4uLptoS4bbq3paG3x216eQllFZX7zt6TIImguQ==} - deprecated: This package has been deprecated and is no longer maintained. Please use @rollup/plugin-terser - peerDependencies: - rollup: ^2.0.0 - - rollup-plugin-typescript2@0.32.1: - resolution: {integrity: sha512-RanO8bp1WbeMv0bVlgcbsFNCn+Y3rX7wF97SQLDxf0fMLsg0B/QFF005t4AsGUcDgF3aKJHoqt4JF2xVaABeKw==} - peerDependencies: - rollup: '>=1.26.3' - typescript: '>=2.4.0' - - rollup-plugin-visualizer@5.9.2: - resolution: {integrity: sha512-waHktD5mlWrYFrhOLbti4YgQCn1uR24nYsNuXxg7LkPH8KdTXVWR9DNY1WU0QqokyMixVXJS4J04HNrVTMP01A==} - engines: {node: '>=14'} - hasBin: true - peerDependencies: - rollup: 2.x || 3.x - peerDependenciesMeta: - rollup: - optional: true - - rollup-pluginutils@2.8.2: - resolution: {integrity: sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ==} - - rollup@2.79.1: - resolution: {integrity: sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==} - engines: {node: '>=10.0.0'} - hasBin: true - - rollup@3.28.0: - resolution: {integrity: sha512-d7zhvo1OUY2SXSM6pfNjgD5+d0Nz87CUp4mt8l/GgVP3oBsPwzNvSzyu1me6BSG9JIgWNTVcafIXBIyM8yQ3yw==} - engines: {node: '>=14.18.0', npm: '>=8.0.0'} - hasBin: true - - rrweb-cssom@0.6.0: - resolution: {integrity: sha512-APM0Gt1KoXBz0iIkkdB/kfvGOwC4UuJFeG/c+yV7wSc7q96cG/kJ0HiYCnzivD9SB53cLV1MlHFNfOuPaadYSw==} - - run-parallel@1.2.0: - resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} - - sade@1.8.1: - resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==} - engines: {node: '>=6'} - - safe-array-concat@1.0.0: - resolution: {integrity: sha512-9dVEFruWIsnie89yym+xWTAYASdpw3CJV7Li/6zBewGf9z2i1j31rP6jnY0pHEO4QZh6N0K11bFjWmdR8UGdPQ==} - engines: {node: '>=0.4'} - - safe-buffer@5.2.1: - resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} - - safe-identifier@0.4.2: - resolution: {integrity: sha512-6pNbSMW6OhAi9j+N8V+U715yBQsaWJ7eyEUaOrawX+isg5ZxhUlV1NipNtgaKHmFGiABwt+ZF04Ii+3Xjkg+8w==} - - safe-regex-test@1.0.0: - resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==} - - safer-buffer@2.1.2: - resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} - - saxes@6.0.0: - resolution: {integrity: sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==} - engines: {node: '>=v12.22.7'} - - scheduler@0.23.2: - resolution: {integrity: sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==} - - semver@5.7.2: - resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} - hasBin: true - - semver@6.3.1: - resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} - hasBin: true - - semver@7.5.4: - resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} - engines: {node: '>=10'} - hasBin: true - - semver@7.6.2: - resolution: {integrity: sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==} - engines: {node: '>=10'} - hasBin: true - - serialize-javascript@4.0.0: - resolution: {integrity: sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==} - - shebang-command@1.2.0: - resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==} - engines: {node: '>=0.10.0'} - - shebang-command@2.0.0: - resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} - engines: {node: '>=8'} - - shebang-regex@1.0.0: - resolution: {integrity: sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==} - engines: {node: '>=0.10.0'} - - shebang-regex@3.0.0: - resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} - engines: {node: '>=8'} - - shell-quote@1.8.1: - resolution: {integrity: sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==} - - side-channel@1.0.4: - resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} - - siginfo@2.0.0: - resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} - - signal-exit@3.0.7: - resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} - - slash@3.0.0: - resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} - engines: {node: '>=8'} - - slice-ansi@5.0.0: - resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==} - engines: {node: '>=12'} - - source-map-js@1.0.2: - resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} - engines: {node: '>=0.10.0'} - - source-map-support@0.5.21: - resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} - - source-map@0.6.1: - resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} - engines: {node: '>=0.10.0'} - - source-map@0.7.4: - resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==} - engines: {node: '>= 8'} - - sourcemap-codec@1.4.8: - resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==} - deprecated: Please use @jridgewell/sourcemap-codec instead - - spdx-correct@3.2.0: - resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==} - - spdx-exceptions@2.3.0: - resolution: {integrity: sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==} - - spdx-expression-parse@3.0.1: - resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} - - spdx-license-ids@3.0.13: - resolution: {integrity: sha512-XkD+zwiqXHikFZm4AX/7JSCXA98U5Db4AFd5XUg/+9UNtnH75+Z9KxtpYiJZx36mUDVOwH83pl7yvCer6ewM3w==} - - stable@0.1.8: - resolution: {integrity: sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==} - deprecated: 'Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility' - - stackback@0.0.2: - resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} - - std-env@3.4.0: - resolution: {integrity: sha512-YqHeQIIQ8r1VtUZOTOyjsAXAsjr369SplZ5rlQaiJTBsvodvPSCME7vuz8pnQltbQ0Cw0lyFo5Q8uyNwYQ58Xw==} - - stop-iteration-iterator@1.0.0: - resolution: {integrity: sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==} - engines: {node: '>= 0.4'} - - string-argv@0.3.2: - resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==} - engines: {node: '>=0.6.19'} - - string-hash@1.1.3: - resolution: {integrity: sha512-kJUvRUFK49aub+a7T1nNE66EJbZBMnBgoC1UbCZ5n6bsZKBRga4KgBRTMn/pFkeCZSYtNeSyMxPDM0AXWELk2A==} - - string-width@4.2.3: - resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} - engines: {node: '>=8'} - - string-width@5.1.2: - resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} - engines: {node: '>=12'} - - string.prototype.matchall@4.0.8: - resolution: {integrity: sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==} - - string.prototype.padend@3.1.4: - resolution: {integrity: sha512-67otBXoksdjsnXXRUq+KMVTdlVRZ2af422Y0aTyTjVaoQkGr3mxl2Bc5emi7dOQ3OGVVQQskmLEWwFXwommpNw==} - engines: {node: '>= 0.4'} - - string.prototype.trim@1.2.7: - resolution: {integrity: sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==} - engines: {node: '>= 0.4'} - - string.prototype.trimend@1.0.6: - resolution: {integrity: sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==} - - string.prototype.trimstart@1.0.6: - resolution: {integrity: sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==} - - strip-ansi@3.0.1: - resolution: {integrity: sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==} - engines: {node: '>=0.10.0'} - - strip-ansi@6.0.1: - resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} - engines: {node: '>=8'} - - strip-ansi@7.1.0: - resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} - engines: {node: '>=12'} - - strip-bom@3.0.0: - resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} - engines: {node: '>=4'} - - strip-final-newline@3.0.0: - resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} - engines: {node: '>=12'} - - strip-indent@3.0.0: - resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} - engines: {node: '>=8'} - - strip-json-comments@3.1.1: - resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} - engines: {node: '>=8'} - - strip-literal@1.3.0: - resolution: {integrity: sha512-PugKzOsyXpArk0yWmUwqOZecSO0GH0bPoctLcqNDH9J04pVW3lflYE0ujElBGTloevcxF5MofAOZ7C5l2b+wLg==} - - style-inject@0.3.0: - resolution: {integrity: sha512-IezA2qp+vcdlhJaVm5SOdPPTUu0FCEqfNSli2vRuSIBbu5Nq5UvygTk/VzeCqfLz2Atj3dVII5QBKGZRZ0edzw==} - - stylehacks@5.1.1: - resolution: {integrity: sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==} - engines: {node: ^10 || ^12 || >=14.0} - peerDependencies: - postcss: ^8.2.15 - - superstruct@1.0.4: - resolution: {integrity: sha512-7JpaAoX2NGyoFlI9NBh66BQXGONc+uE+MRS5i2iOBKuS4e+ccgMDjATgZldkah+33DakBxDHiss9kvUcGAO8UQ==} - engines: {node: '>=14.0.0'} - - supports-color@2.0.0: - resolution: {integrity: sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==} - engines: {node: '>=0.8.0'} - - supports-color@5.5.0: - resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} - engines: {node: '>=4'} - - supports-color@7.2.0: - resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} - engines: {node: '>=8'} - - supports-preserve-symlinks-flag@1.0.0: - resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} - engines: {node: '>= 0.4'} - - svgo@2.8.0: - resolution: {integrity: sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==} - engines: {node: '>=10.13.0'} - hasBin: true - - symbol-tree@3.2.4: - resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==} - - terser@5.19.2: - resolution: {integrity: sha512-qC5+dmecKJA4cpYxRa5aVkKehYsQKc+AHeKl0Oe62aYjBL8ZA33tTljktDHJSaxxMnbI5ZYw+o/S2DxxLu8OfA==} - engines: {node: '>=10'} - hasBin: true - - text-table@0.2.0: - resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} - - tiny-case@1.0.3: - resolution: {integrity: sha512-Eet/eeMhkO6TX8mnUteS9zgPbUMQa4I6Kkp5ORiBD5476/m+PIRiumP5tmh5ioJpH7k51Kehawy2UDfsnxxY8Q==} - - tiny-glob@0.2.9: - resolution: {integrity: sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==} - - tinybench@2.5.0: - resolution: {integrity: sha512-kRwSG8Zx4tjF9ZiyH4bhaebu+EDz1BOx9hOigYHlUW4xxI/wKIUQUqo018UlU4ar6ATPBsaMrdbKZ+tmPdohFA==} - - tinypool@0.7.0: - resolution: {integrity: sha512-zSYNUlYSMhJ6Zdou4cJwo/p7w5nmAH17GRfU/ui3ctvjXFErXXkruT4MWW6poDeXgCaIBlGLrfU6TbTXxyGMww==} - engines: {node: '>=14.0.0'} - - tinyspy@2.2.1: - resolution: {integrity: sha512-KYad6Vy5VDWV4GH3fjpseMQ/XU2BhIYP7Vzd0LG44qRWm/Yt2WCOTicFdvmgo6gWaqooMQCawTtILVQJupKu7A==} - engines: {node: '>=14.0.0'} - - to-fast-properties@2.0.0: - resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} - engines: {node: '>=4'} - - to-regex-range@5.0.1: - resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} - engines: {node: '>=8.0'} - - toposort@2.0.2: - resolution: {integrity: sha512-0a5EOkAUp8D4moMi2W8ZF8jcga7BgZd91O/yabJCFY8az+XSzeGyTKs0Aoo897iV1Nj6guFq8orWDS96z91oGg==} - - tough-cookie@4.1.3: - resolution: {integrity: sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==} - engines: {node: '>=6'} - - tr46@4.1.1: - resolution: {integrity: sha512-2lv/66T7e5yNyhAAC4NaKe5nVavzuGJQVVtRYLyQ2OI8tsJ61PMLlelehb0wi2Hx6+hT/OJUWZcw8MjlSRnxvw==} - engines: {node: '>=14'} - - ts-api-utils@1.0.2: - resolution: {integrity: sha512-Cbu4nIqnEdd+THNEsBdkolnOXhg0I8XteoHaEKgvsxpsbWda4IsUut2c187HxywQCvveojow0Dgw/amxtSKVkQ==} - engines: {node: '>=16.13.0'} - peerDependencies: - typescript: '>=4.2.0' - - ts-api-utils@1.3.0: - resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==} - engines: {node: '>=16'} - peerDependencies: - typescript: '>=4.2.0' - - tsconfck@3.1.1: - resolution: {integrity: sha512-00eoI6WY57SvZEVjm13stEVE90VkEdJAFGgpFLTsZbJyW/LwFQ7uQxJHWpZ2hzSWgCPKc9AnBnNP+0X7o3hAmQ==} - engines: {node: ^18 || >=20} - hasBin: true - peerDependencies: - typescript: ^5.0.0 - peerDependenciesMeta: - typescript: - optional: true - - tslib@2.6.1: - resolution: {integrity: sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig==} - - typanion@3.14.0: - resolution: {integrity: sha512-ZW/lVMRabETuYCd9O9ZvMhAh8GslSqaUjxmK/JLPCh6l73CvLBiuXswj/+7LdnWOgYsQ130FqLzFz5aGT4I3Ug==} - - type-check@0.4.0: - resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} - engines: {node: '>= 0.8.0'} - - type-detect@4.0.8: - resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==} - engines: {node: '>=4'} - - type-fest@0.20.2: - resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} - engines: {node: '>=10'} - - type-fest@1.4.0: - resolution: {integrity: sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==} - engines: {node: '>=10'} - - type-fest@2.19.0: - resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} - engines: {node: '>=12.20'} - - typed-array-buffer@1.0.0: - resolution: {integrity: sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==} - engines: {node: '>= 0.4'} - - typed-array-byte-length@1.0.0: - resolution: {integrity: sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==} - engines: {node: '>= 0.4'} - - typed-array-byte-offset@1.0.0: - resolution: {integrity: sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==} - engines: {node: '>= 0.4'} - - typed-array-length@1.0.4: - resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} - - typescript@4.9.5: - resolution: {integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==} - engines: {node: '>=4.2.0'} - hasBin: true - - typescript@5.5.3: - resolution: {integrity: sha512-/hreyEujaB0w76zKo6717l3L0o/qEUtRgdvUBvlkhoWeOVMjMuHNHk0BRBzikzuGDqNmPQbg5ifMEqsHLiIUcQ==} - engines: {node: '>=14.17'} - hasBin: true - - ufo@1.5.3: - resolution: {integrity: sha512-Y7HYmWaFwPUmkoQCUIAYpKqkOf+SbVj/2fJJZ4RJMCfZp0rTGwRbzQD+HghfnhKOjL9E01okqz+ncJskGYfBNw==} - - unbox-primitive@1.0.2: - resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} - - undici-types@5.26.5: - resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} - - unicode-canonical-property-names-ecmascript@2.0.0: - resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==} - engines: {node: '>=4'} - - unicode-match-property-ecmascript@2.0.0: - resolution: {integrity: sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==} - engines: {node: '>=4'} - - unicode-match-property-value-ecmascript@2.1.0: - resolution: {integrity: sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==} - engines: {node: '>=4'} - - unicode-property-aliases-ecmascript@2.1.0: - resolution: {integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==} - engines: {node: '>=4'} - - universalify@0.2.0: - resolution: {integrity: sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==} - engines: {node: '>= 4.0.0'} - - universalify@2.0.0: - resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==} - engines: {node: '>= 10.0.0'} - - update-browserslist-db@1.0.11: - resolution: {integrity: sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==} - hasBin: true - peerDependencies: - browserslist: '>= 4.21.0' - - update-browserslist-db@1.1.0: - resolution: {integrity: sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==} - hasBin: true - peerDependencies: - browserslist: '>= 4.21.0' - - uri-js@4.4.1: - resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} - - url-parse@1.5.10: - resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==} - - util-deprecate@1.0.2: - resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} - - valibot@0.35.0: - resolution: {integrity: sha512-+i2aCRkReTrd5KBN/dW2BrPOvFnU5LXTV2xjZnjnqUIO8YUx6P2+MgRrkwF2FhkexgyKq/NIZdPdknhHf5A/Ww==} - - validate-npm-package-license@3.0.4: - resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==} - - validator@13.11.0: - resolution: {integrity: sha512-Ii+sehpSfZy+At5nPdnyMhx78fEoPDkR2XW/zimHEL3MyGJQOCQ7WeP20jPYRz7ZCpcKLB21NxuXHF3bxjStBQ==} - engines: {node: '>= 0.10'} - - vast@1.0.17: - resolution: {integrity: sha512-D2fZtQp8RfZ8WMfzC0izcrrmOsZ8Dmc4B57G/J3z4wCAuvAZskyPOXBKLR5QRoQ4nb7doB/ueihEMnpDcXl7JA==} - - vest-utils@0.1.1: - resolution: {integrity: sha512-dsH4zt4IsBvDY3BhUo6mNgwN9WVIfUP8jwBp2XEZQAq7XYAuVQnGTCrdF8+/OtoP141jCxMppXYpO4xbMWYwhA==} - - vest@4.6.11: - resolution: {integrity: sha512-2C2PfDselDX5cgaxZmp4v1IaAhnGzlSkuQSSYIsOac3TW1+N6QFHoUx2n5qkLpe0thJLZjEWT4fM4anQSSjP2Q==} - - vite-node@0.34.6: - resolution: {integrity: sha512-nlBMJ9x6n7/Amaz6F3zJ97EBwR2FkzhBRxF5e+jE6LA3yi6Wtc2lyTij1OnDMIr34v5g/tVQtsVAzhT0jc5ygA==} - engines: {node: '>=v14.18.0'} - hasBin: true - - vite-tsconfig-paths@4.3.2: - resolution: {integrity: sha512-0Vd/a6po6Q+86rPlntHye7F31zA2URZMbH8M3saAZ/xR9QoGN/L21bxEGfXdWmFdNkqPpRdxFT7nmNe12e9/uA==} - peerDependencies: - vite: '*' - peerDependenciesMeta: - vite: - optional: true - - vite@4.5.3: - resolution: {integrity: sha512-kQL23kMeX92v3ph7IauVkXkikdDRsYMGTVl5KY2E9OY4ONLvkHf04MDTbnfo6NKxZiDLWzVpP5oTa8hQD8U3dg==} - engines: {node: ^14.18.0 || >=16.0.0} - hasBin: true - peerDependencies: - '@types/node': '>= 14' - less: '*' - lightningcss: ^1.21.0 - sass: '*' - stylus: '*' - sugarss: '*' - terser: ^5.4.0 - peerDependenciesMeta: - '@types/node': - optional: true - less: - optional: true - lightningcss: - optional: true - sass: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true - - vitest@0.34.6: - resolution: {integrity: sha512-+5CALsOvbNKnS+ZHMXtuUC7nL8/7F1F2DnHGjSsszX8zCjWSSviphCb/NuS9Nzf4Q03KyyDRBAXhF/8lffME4Q==} - engines: {node: '>=v14.18.0'} - hasBin: true - peerDependencies: - '@edge-runtime/vm': '*' - '@vitest/browser': '*' - '@vitest/ui': '*' - happy-dom: '*' - jsdom: '*' - playwright: '*' - safaridriver: '*' - webdriverio: '*' - peerDependenciesMeta: - '@edge-runtime/vm': - optional: true - '@vitest/browser': - optional: true - '@vitest/ui': - optional: true - happy-dom: - optional: true - jsdom: - optional: true - playwright: - optional: true - safaridriver: - optional: true - webdriverio: - optional: true - - w3c-xmlserializer@4.0.0: - resolution: {integrity: sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw==} - engines: {node: '>=14'} - - webidl-conversions@7.0.0: - resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==} - engines: {node: '>=12'} - - whatwg-encoding@2.0.0: - resolution: {integrity: sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==} - engines: {node: '>=12'} - - whatwg-mimetype@3.0.0: - resolution: {integrity: sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==} - engines: {node: '>=12'} - - whatwg-url@12.0.1: - resolution: {integrity: sha512-Ed/LrqB8EPlGxjS+TrsXcpUond1mhccS3pchLhzSgPCnTimUCKj3IZE75pAs5m6heB2U2TMerKFUXheyHY+VDQ==} - engines: {node: '>=14'} - - which-boxed-primitive@1.0.2: - resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} - - which-collection@1.0.1: - resolution: {integrity: sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==} - - which-typed-array@1.1.11: - resolution: {integrity: sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==} - engines: {node: '>= 0.4'} - - which@1.3.1: - resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==} - hasBin: true - - which@2.0.2: - resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} - engines: {node: '>= 8'} - hasBin: true - - why-is-node-running@2.2.2: - resolution: {integrity: sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA==} - engines: {node: '>=8'} - hasBin: true - - wrap-ansi@7.0.0: - resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} - engines: {node: '>=10'} - - wrap-ansi@8.1.0: - resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} - engines: {node: '>=12'} - - wrappy@1.0.2: - resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} - - ws@8.13.0: - resolution: {integrity: sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==} - engines: {node: '>=10.0.0'} - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: '>=5.0.2' - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - - xml-name-validator@4.0.0: - resolution: {integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==} - engines: {node: '>=12'} - - xmlchars@2.2.0: - resolution: {integrity: sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==} - - y18n@5.0.8: - resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} - engines: {node: '>=10'} - - yallist@3.1.1: - resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} - - yallist@4.0.0: - resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} - - yaml@1.10.2: - resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} - engines: {node: '>= 6'} - - yaml@2.3.1: - resolution: {integrity: sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ==} - engines: {node: '>= 14'} - - yargs-parser@21.1.1: - resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} - engines: {node: '>=12'} - - yargs@17.7.2: - resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} - engines: {node: '>=12'} - - yocto-queue@0.1.0: - resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} - engines: {node: '>=10'} - - yocto-queue@1.1.1: - resolution: {integrity: sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==} - engines: {node: '>=12.20'} - - yup@1.4.0: - resolution: {integrity: sha512-wPbgkJRCqIf+OHyiTBQoJiP5PFuAXaWiJK6AmYkzQAh5/c2K9hzSApBZG5wV9KoKSePF7sAxmNSvh/13YHkFDg==} - - zod@3.23.8: - resolution: {integrity: sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==} - -snapshots: - - '@aashutoshrathi/word-wrap@1.2.6': {} - - '@adobe/css-tools@4.4.0': {} - - '@ampproject/remapping@2.2.1': - dependencies: - '@jridgewell/gen-mapping': 0.3.3 - '@jridgewell/trace-mapping': 0.3.19 - - '@ampproject/remapping@2.3.0': - dependencies: - '@jridgewell/gen-mapping': 0.3.5 - '@jridgewell/trace-mapping': 0.3.25 - - '@arktype/schema@0.1.6': - dependencies: - '@arktype/util': 0.0.44 - - '@arktype/util@0.0.44': {} - - '@babel/code-frame@7.22.10': - dependencies: - '@babel/highlight': 7.22.10 - chalk: 2.4.2 - - '@babel/code-frame@7.24.7': - dependencies: - '@babel/highlight': 7.24.7 - picocolors: 1.0.1 - - '@babel/compat-data@7.22.9': {} - - '@babel/compat-data@7.24.7': {} - - '@babel/core@7.22.10': - dependencies: - '@ampproject/remapping': 2.2.1 - '@babel/code-frame': 7.22.10 - '@babel/generator': 7.22.10 - '@babel/helper-compilation-targets': 7.22.10 - '@babel/helper-module-transforms': 7.22.9(@babel/core@7.22.10) - '@babel/helpers': 7.22.10 - '@babel/parser': 7.22.10 - '@babel/template': 7.22.5 - '@babel/traverse': 7.22.10 - '@babel/types': 7.22.10 - convert-source-map: 1.9.0 - debug: 4.3.4 - gensync: 1.0.0-beta.2 - json5: 2.2.3 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - - '@babel/core@7.24.7': - dependencies: - '@ampproject/remapping': 2.3.0 - '@babel/code-frame': 7.24.7 - '@babel/generator': 7.24.7 - '@babel/helper-compilation-targets': 7.24.7 - '@babel/helper-module-transforms': 7.24.7(@babel/core@7.24.7) - '@babel/helpers': 7.24.7 - '@babel/parser': 7.24.7 - '@babel/template': 7.24.7 - '@babel/traverse': 7.24.7 - '@babel/types': 7.24.7 - convert-source-map: 2.0.0 - debug: 4.3.5 - gensync: 1.0.0-beta.2 - json5: 2.2.3 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - - '@babel/generator@7.22.10': - dependencies: - '@babel/types': 7.22.10 - '@jridgewell/gen-mapping': 0.3.3 - '@jridgewell/trace-mapping': 0.3.19 - jsesc: 2.5.2 - - '@babel/generator@7.24.7': - dependencies: - '@babel/types': 7.24.7 - '@jridgewell/gen-mapping': 0.3.5 - '@jridgewell/trace-mapping': 0.3.25 - jsesc: 2.5.2 - - '@babel/helper-annotate-as-pure@7.22.5': - dependencies: - '@babel/types': 7.22.10 - - '@babel/helper-builder-binary-assignment-operator-visitor@7.22.10': - dependencies: - '@babel/types': 7.22.10 - - '@babel/helper-compilation-targets@7.22.10': - dependencies: - '@babel/compat-data': 7.22.9 - '@babel/helper-validator-option': 7.22.5 - browserslist: 4.21.10 - lru-cache: 5.1.1 - semver: 6.3.1 - - '@babel/helper-compilation-targets@7.24.7': - dependencies: - '@babel/compat-data': 7.24.7 - '@babel/helper-validator-option': 7.24.7 - browserslist: 4.23.1 - lru-cache: 5.1.1 - semver: 6.3.1 - - '@babel/helper-create-class-features-plugin@7.22.10(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-environment-visitor': 7.22.5 - '@babel/helper-function-name': 7.22.5 - '@babel/helper-member-expression-to-functions': 7.22.5 - '@babel/helper-optimise-call-expression': 7.22.5 - '@babel/helper-replace-supers': 7.22.9(@babel/core@7.22.10) - '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 - semver: 6.3.1 - - '@babel/helper-create-regexp-features-plugin@7.22.9(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-annotate-as-pure': 7.22.5 - regexpu-core: 5.3.2 - semver: 6.3.1 - - '@babel/helper-define-polyfill-provider@0.4.2(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-compilation-targets': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - debug: 4.3.4 - lodash.debounce: 4.0.8 - resolve: 1.22.4 - transitivePeerDependencies: - - supports-color - - '@babel/helper-environment-visitor@7.22.5': {} - - '@babel/helper-environment-visitor@7.24.7': - dependencies: - '@babel/types': 7.24.7 - - '@babel/helper-function-name@7.22.5': - dependencies: - '@babel/template': 7.22.5 - '@babel/types': 7.22.10 - - '@babel/helper-function-name@7.24.7': - dependencies: - '@babel/template': 7.24.7 - '@babel/types': 7.24.7 - - '@babel/helper-hoist-variables@7.22.5': - dependencies: - '@babel/types': 7.22.10 - - '@babel/helper-hoist-variables@7.24.7': - dependencies: - '@babel/types': 7.24.7 - - '@babel/helper-member-expression-to-functions@7.22.5': - dependencies: - '@babel/types': 7.22.10 - - '@babel/helper-module-imports@7.22.5': - dependencies: - '@babel/types': 7.22.10 - - '@babel/helper-module-imports@7.24.7': - dependencies: - '@babel/traverse': 7.24.7 - '@babel/types': 7.24.7 - transitivePeerDependencies: - - supports-color - - '@babel/helper-module-transforms@7.22.9(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-environment-visitor': 7.22.5 - '@babel/helper-module-imports': 7.22.5 - '@babel/helper-simple-access': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 - '@babel/helper-validator-identifier': 7.22.5 - - '@babel/helper-module-transforms@7.24.7(@babel/core@7.24.7)': - dependencies: - '@babel/core': 7.24.7 - '@babel/helper-environment-visitor': 7.24.7 - '@babel/helper-module-imports': 7.24.7 - '@babel/helper-simple-access': 7.24.7 - '@babel/helper-split-export-declaration': 7.24.7 - '@babel/helper-validator-identifier': 7.24.7 - transitivePeerDependencies: - - supports-color - - '@babel/helper-optimise-call-expression@7.22.5': - dependencies: - '@babel/types': 7.22.10 - - '@babel/helper-plugin-utils@7.22.5': {} - - '@babel/helper-plugin-utils@7.24.7': {} - - '@babel/helper-remap-async-to-generator@7.22.9(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-environment-visitor': 7.22.5 - '@babel/helper-wrap-function': 7.22.10 - - '@babel/helper-replace-supers@7.22.9(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-environment-visitor': 7.22.5 - '@babel/helper-member-expression-to-functions': 7.22.5 - '@babel/helper-optimise-call-expression': 7.22.5 - - '@babel/helper-simple-access@7.22.5': - dependencies: - '@babel/types': 7.22.10 - - '@babel/helper-simple-access@7.24.7': - dependencies: - '@babel/traverse': 7.24.7 - '@babel/types': 7.24.7 - transitivePeerDependencies: - - supports-color - - '@babel/helper-skip-transparent-expression-wrappers@7.22.5': - dependencies: - '@babel/types': 7.22.10 - - '@babel/helper-split-export-declaration@7.22.6': - dependencies: - '@babel/types': 7.22.10 - - '@babel/helper-split-export-declaration@7.24.7': - dependencies: - '@babel/types': 7.24.7 - - '@babel/helper-string-parser@7.22.5': {} - - '@babel/helper-string-parser@7.24.7': {} - - '@babel/helper-validator-identifier@7.22.5': {} - - '@babel/helper-validator-identifier@7.24.7': {} - - '@babel/helper-validator-option@7.22.5': {} - - '@babel/helper-validator-option@7.24.7': {} - - '@babel/helper-wrap-function@7.22.10': - dependencies: - '@babel/helper-function-name': 7.22.5 - '@babel/template': 7.22.5 - '@babel/types': 7.22.10 - - '@babel/helpers@7.22.10': - dependencies: - '@babel/template': 7.22.5 - '@babel/traverse': 7.22.10 - '@babel/types': 7.22.10 - transitivePeerDependencies: - - supports-color - - '@babel/helpers@7.24.7': - dependencies: - '@babel/template': 7.24.7 - '@babel/types': 7.24.7 - - '@babel/highlight@7.22.10': - dependencies: - '@babel/helper-validator-identifier': 7.22.5 - chalk: 2.4.2 - js-tokens: 4.0.0 - - '@babel/highlight@7.24.7': - dependencies: - '@babel/helper-validator-identifier': 7.24.7 - chalk: 2.4.2 - js-tokens: 4.0.0 - picocolors: 1.0.1 - - '@babel/parser@7.22.10': - dependencies: - '@babel/types': 7.22.10 - - '@babel/parser@7.24.7': - dependencies: - '@babel/types': 7.24.7 - - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-transform-optional-chaining': 7.22.10(@babel/core@7.22.10) - - '@babel/plugin-proposal-class-properties@7.12.1(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-create-class-features-plugin': 7.22.10(@babel/core@7.22.10) - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - - '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-flow@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-import-assertions@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-import-attributes@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-jsx@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-create-regexp-features-plugin': 7.22.9(@babel/core@7.22.10) - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-arrow-functions@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-async-generator-functions@7.22.10(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-environment-visitor': 7.22.5 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-remap-async-to-generator': 7.22.9(@babel/core@7.22.10) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.22.10) - - '@babel/plugin-transform-async-to-generator@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-module-imports': 7.22.5 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-remap-async-to-generator': 7.22.9(@babel/core@7.22.10) - - '@babel/plugin-transform-block-scoped-functions@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-block-scoping@7.22.10(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-class-properties@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-create-class-features-plugin': 7.22.10(@babel/core@7.22.10) - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-class-static-block@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-create-class-features-plugin': 7.22.10(@babel/core@7.22.10) - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.22.10) - - '@babel/plugin-transform-classes@7.22.6(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-compilation-targets': 7.22.10 - '@babel/helper-environment-visitor': 7.22.5 - '@babel/helper-function-name': 7.22.5 - '@babel/helper-optimise-call-expression': 7.22.5 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-replace-supers': 7.22.9(@babel/core@7.22.10) - '@babel/helper-split-export-declaration': 7.22.6 - globals: 11.12.0 - - '@babel/plugin-transform-computed-properties@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/template': 7.22.5 - - '@babel/plugin-transform-destructuring@7.22.10(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-dotall-regex@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-create-regexp-features-plugin': 7.22.9(@babel/core@7.22.10) - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-duplicate-keys@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-dynamic-import@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.22.10) - - '@babel/plugin-transform-exponentiation-operator@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-builder-binary-assignment-operator-visitor': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-export-namespace-from@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.22.10) - - '@babel/plugin-transform-flow-strip-types@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-flow': 7.22.5(@babel/core@7.22.10) - - '@babel/plugin-transform-for-of@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-function-name@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-compilation-targets': 7.22.10 - '@babel/helper-function-name': 7.22.5 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-json-strings@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.22.10) - - '@babel/plugin-transform-literals@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-logical-assignment-operators@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.22.10) - - '@babel/plugin-transform-member-expression-literals@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-modules-amd@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-module-transforms': 7.22.9(@babel/core@7.22.10) - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-modules-commonjs@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-module-transforms': 7.22.9(@babel/core@7.22.10) - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-simple-access': 7.22.5 - - '@babel/plugin-transform-modules-systemjs@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-hoist-variables': 7.22.5 - '@babel/helper-module-transforms': 7.22.9(@babel/core@7.22.10) - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-validator-identifier': 7.22.5 - - '@babel/plugin-transform-modules-umd@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-module-transforms': 7.22.9(@babel/core@7.22.10) - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-named-capturing-groups-regex@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-create-regexp-features-plugin': 7.22.9(@babel/core@7.22.10) - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-new-target@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-nullish-coalescing-operator@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.22.10) - - '@babel/plugin-transform-numeric-separator@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.22.10) - - '@babel/plugin-transform-object-rest-spread@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/compat-data': 7.22.9 - '@babel/core': 7.22.10 - '@babel/helper-compilation-targets': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.22.10) - '@babel/plugin-transform-parameters': 7.22.5(@babel/core@7.22.10) - - '@babel/plugin-transform-object-super@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-replace-supers': 7.22.9(@babel/core@7.22.10) - - '@babel/plugin-transform-optional-catch-binding@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.22.10) - - '@babel/plugin-transform-optional-chaining@7.22.10(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.22.10) - - '@babel/plugin-transform-parameters@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-private-methods@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-create-class-features-plugin': 7.22.10(@babel/core@7.22.10) - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-private-property-in-object@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-create-class-features-plugin': 7.22.10(@babel/core@7.22.10) - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.22.10) - - '@babel/plugin-transform-property-literals@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-react-display-name@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-react-jsx-development@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/plugin-transform-react-jsx': 7.22.5(@babel/core@7.22.10) - - '@babel/plugin-transform-react-jsx-self@7.24.7(@babel/core@7.24.7)': - dependencies: - '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.7 - - '@babel/plugin-transform-react-jsx-source@7.24.7(@babel/core@7.24.7)': - dependencies: - '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.24.7 - - '@babel/plugin-transform-react-jsx@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-module-imports': 7.22.5 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.22.10) - '@babel/types': 7.22.10 - - '@babel/plugin-transform-react-pure-annotations@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-regenerator@7.22.10(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - regenerator-transform: 0.15.2 - - '@babel/plugin-transform-reserved-words@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-shorthand-properties@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-spread@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - - '@babel/plugin-transform-sticky-regex@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-template-literals@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-typeof-symbol@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-unicode-escapes@7.22.10(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-unicode-property-regex@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-create-regexp-features-plugin': 7.22.9(@babel/core@7.22.10) - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-unicode-regex@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-create-regexp-features-plugin': 7.22.9(@babel/core@7.22.10) - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-unicode-sets-regex@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-create-regexp-features-plugin': 7.22.9(@babel/core@7.22.10) - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/preset-env@7.22.10(@babel/core@7.22.10)': - dependencies: - '@babel/compat-data': 7.22.9 - '@babel/core': 7.22.10 - '@babel/helper-compilation-targets': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-validator-option': 7.22.5 - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.22.10) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.22.10) - '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.22.10) - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.22.10) - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.22.10) - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.22.10) - '@babel/plugin-syntax-import-assertions': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-syntax-import-attributes': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.22.10) - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.22.10) - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.22.10) - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.22.10) - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.22.10) - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.22.10) - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.22.10) - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.22.10) - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.22.10) - '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.22.10) - '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.22.10) - '@babel/plugin-transform-arrow-functions': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-async-generator-functions': 7.22.10(@babel/core@7.22.10) - '@babel/plugin-transform-async-to-generator': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-block-scoped-functions': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-block-scoping': 7.22.10(@babel/core@7.22.10) - '@babel/plugin-transform-class-properties': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-class-static-block': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-classes': 7.22.6(@babel/core@7.22.10) - '@babel/plugin-transform-computed-properties': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-destructuring': 7.22.10(@babel/core@7.22.10) - '@babel/plugin-transform-dotall-regex': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-duplicate-keys': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-dynamic-import': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-exponentiation-operator': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-export-namespace-from': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-for-of': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-function-name': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-json-strings': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-literals': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-logical-assignment-operators': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-member-expression-literals': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-modules-amd': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-modules-commonjs': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-modules-systemjs': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-modules-umd': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-new-target': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-nullish-coalescing-operator': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-numeric-separator': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-object-rest-spread': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-object-super': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-optional-catch-binding': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-optional-chaining': 7.22.10(@babel/core@7.22.10) - '@babel/plugin-transform-parameters': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-private-methods': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-private-property-in-object': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-property-literals': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-regenerator': 7.22.10(@babel/core@7.22.10) - '@babel/plugin-transform-reserved-words': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-shorthand-properties': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-spread': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-sticky-regex': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-template-literals': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-typeof-symbol': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-unicode-escapes': 7.22.10(@babel/core@7.22.10) - '@babel/plugin-transform-unicode-property-regex': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-unicode-regex': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-unicode-sets-regex': 7.22.5(@babel/core@7.22.10) - '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.22.10) - '@babel/types': 7.22.10 - babel-plugin-polyfill-corejs2: 0.4.5(@babel/core@7.22.10) - babel-plugin-polyfill-corejs3: 0.8.3(@babel/core@7.22.10) - babel-plugin-polyfill-regenerator: 0.5.2(@babel/core@7.22.10) - core-js-compat: 3.32.0 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - - '@babel/preset-flow@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-validator-option': 7.22.5 - '@babel/plugin-transform-flow-strip-types': 7.22.5(@babel/core@7.22.10) - - '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/types': 7.22.10 - esutils: 2.0.3 - - '@babel/preset-react@7.22.5(@babel/core@7.22.10)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-validator-option': 7.22.5 - '@babel/plugin-transform-react-display-name': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-react-jsx': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-react-jsx-development': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-react-pure-annotations': 7.22.5(@babel/core@7.22.10) - - '@babel/regjsgen@0.8.0': {} - - '@babel/runtime@7.22.10': - dependencies: - regenerator-runtime: 0.14.0 - - '@babel/template@7.22.5': - dependencies: - '@babel/code-frame': 7.22.10 - '@babel/parser': 7.22.10 - '@babel/types': 7.22.10 - - '@babel/template@7.24.7': - dependencies: - '@babel/code-frame': 7.24.7 - '@babel/parser': 7.24.7 - '@babel/types': 7.24.7 - - '@babel/traverse@7.22.10': - dependencies: - '@babel/code-frame': 7.22.10 - '@babel/generator': 7.22.10 - '@babel/helper-environment-visitor': 7.22.5 - '@babel/helper-function-name': 7.22.5 - '@babel/helper-hoist-variables': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 - '@babel/parser': 7.22.10 - '@babel/types': 7.22.10 - debug: 4.3.4 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color - - '@babel/traverse@7.24.7': - dependencies: - '@babel/code-frame': 7.24.7 - '@babel/generator': 7.24.7 - '@babel/helper-environment-visitor': 7.24.7 - '@babel/helper-function-name': 7.24.7 - '@babel/helper-hoist-variables': 7.24.7 - '@babel/helper-split-export-declaration': 7.24.7 - '@babel/parser': 7.24.7 - '@babel/types': 7.24.7 - debug: 4.3.5 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color - - '@babel/types@7.22.10': - dependencies: - '@babel/helper-string-parser': 7.22.5 - '@babel/helper-validator-identifier': 7.22.5 - to-fast-properties: 2.0.0 - - '@babel/types@7.24.7': - dependencies: - '@babel/helper-string-parser': 7.24.7 - '@babel/helper-validator-identifier': 7.24.7 - to-fast-properties: 2.0.0 - - '@effect/schema@0.66.16(effect@3.4.6)(fast-check@3.18.0)': - dependencies: - effect: 3.4.6 - fast-check: 3.18.0 - - '@esbuild/android-arm64@0.18.20': - optional: true - - '@esbuild/android-arm@0.18.20': - optional: true - - '@esbuild/android-x64@0.18.20': - optional: true - - '@esbuild/darwin-arm64@0.18.20': - optional: true - - '@esbuild/darwin-x64@0.18.20': - optional: true - - '@esbuild/freebsd-arm64@0.18.20': - optional: true - - '@esbuild/freebsd-x64@0.18.20': - optional: true - - '@esbuild/linux-arm64@0.18.20': - optional: true - - '@esbuild/linux-arm@0.18.20': - optional: true - - '@esbuild/linux-ia32@0.18.20': - optional: true - - '@esbuild/linux-loong64@0.18.20': - optional: true - - '@esbuild/linux-mips64el@0.18.20': - optional: true - - '@esbuild/linux-ppc64@0.18.20': - optional: true - - '@esbuild/linux-riscv64@0.18.20': - optional: true - - '@esbuild/linux-s390x@0.18.20': - optional: true - - '@esbuild/linux-x64@0.18.20': - optional: true - - '@esbuild/netbsd-x64@0.18.20': - optional: true - - '@esbuild/openbsd-x64@0.18.20': - optional: true - - '@esbuild/sunos-x64@0.18.20': - optional: true - - '@esbuild/win32-arm64@0.18.20': - optional: true - - '@esbuild/win32-ia32@0.18.20': - optional: true - - '@esbuild/win32-x64@0.18.20': - optional: true - - '@eslint-community/eslint-utils@4.4.0(eslint@8.57.0)': - dependencies: - eslint: 8.57.0 - eslint-visitor-keys: 3.4.3 - - '@eslint-community/regexpp@4.6.2': {} - - '@eslint-community/regexpp@4.7.0': {} - - '@eslint/eslintrc@2.1.4': - dependencies: - ajv: 6.12.6 - debug: 4.3.4 - espree: 9.6.1 - globals: 13.21.0 - ignore: 5.2.4 - import-fresh: 3.3.0 - js-yaml: 4.1.0 - minimatch: 3.1.2 - strip-json-comments: 3.1.1 - transitivePeerDependencies: - - supports-color - - '@eslint/js@8.57.0': {} - - '@hapi/hoek@9.3.0': {} - - '@hapi/topo@5.1.0': - dependencies: - '@hapi/hoek': 9.3.0 - - '@humanwhocodes/config-array@0.11.14': - dependencies: - '@humanwhocodes/object-schema': 2.0.3 - debug: 4.3.4 - minimatch: 3.1.2 - transitivePeerDependencies: - - supports-color - - '@humanwhocodes/module-importer@1.0.1': {} - - '@humanwhocodes/object-schema@2.0.3': {} - - '@jest/schemas@29.6.3': - dependencies: - '@sinclair/typebox': 0.27.8 - - '@jridgewell/gen-mapping@0.3.3': - dependencies: - '@jridgewell/set-array': 1.1.2 - '@jridgewell/sourcemap-codec': 1.4.15 - '@jridgewell/trace-mapping': 0.3.19 - - '@jridgewell/gen-mapping@0.3.5': - dependencies: - '@jridgewell/set-array': 1.2.1 - '@jridgewell/sourcemap-codec': 1.4.15 - '@jridgewell/trace-mapping': 0.3.25 - - '@jridgewell/resolve-uri@3.1.1': {} - - '@jridgewell/resolve-uri@3.1.2': {} - - '@jridgewell/set-array@1.1.2': {} - - '@jridgewell/set-array@1.2.1': {} - - '@jridgewell/source-map@0.3.5': - dependencies: - '@jridgewell/gen-mapping': 0.3.3 - '@jridgewell/trace-mapping': 0.3.19 - - '@jridgewell/sourcemap-codec@1.4.15': {} - - '@jridgewell/trace-mapping@0.3.19': - dependencies: - '@jridgewell/resolve-uri': 3.1.1 - '@jridgewell/sourcemap-codec': 1.4.15 - - '@jridgewell/trace-mapping@0.3.25': - dependencies: - '@jridgewell/resolve-uri': 3.1.2 - '@jridgewell/sourcemap-codec': 1.4.15 - - '@nodelib/fs.scandir@2.1.5': - dependencies: - '@nodelib/fs.stat': 2.0.5 - run-parallel: 1.2.0 - - '@nodelib/fs.stat@2.0.5': {} - - '@nodelib/fs.walk@1.2.8': - dependencies: - '@nodelib/fs.scandir': 2.1.5 - fastq: 1.15.0 - - '@poppinss/macroable@1.0.2': {} - - '@rollup/plugin-alias@3.1.9(rollup@2.79.1)': - dependencies: - rollup: 2.79.1 - slash: 3.0.0 - - '@rollup/plugin-babel@5.3.1(@babel/core@7.22.10)(@types/babel__core@7.20.5)(rollup@2.79.1)': - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-module-imports': 7.22.5 - '@rollup/pluginutils': 3.1.0(rollup@2.79.1) - rollup: 2.79.1 - optionalDependencies: - '@types/babel__core': 7.20.5 - - '@rollup/plugin-commonjs@17.1.0(rollup@2.79.1)': - dependencies: - '@rollup/pluginutils': 3.1.0(rollup@2.79.1) - commondir: 1.0.1 - estree-walker: 2.0.2 - glob: 7.2.3 - is-reference: 1.2.1 - magic-string: 0.25.9 - resolve: 1.22.4 - rollup: 2.79.1 - - '@rollup/plugin-json@4.1.0(rollup@2.79.1)': - dependencies: - '@rollup/pluginutils': 3.1.0(rollup@2.79.1) - rollup: 2.79.1 - - '@rollup/plugin-node-resolve@11.2.1(rollup@2.79.1)': - dependencies: - '@rollup/pluginutils': 3.1.0(rollup@2.79.1) - '@types/resolve': 1.17.1 - builtin-modules: 3.3.0 - deepmerge: 4.3.1 - is-module: 1.0.0 - resolve: 1.22.4 - rollup: 2.79.1 - - '@rollup/pluginutils@3.1.0(rollup@2.79.1)': - dependencies: - '@types/estree': 0.0.39 - estree-walker: 1.0.1 - picomatch: 2.3.1 - rollup: 2.79.1 - - '@rollup/pluginutils@4.2.1': - dependencies: - estree-walker: 2.0.2 - picomatch: 2.3.1 - - '@sideway/address@4.1.5': - dependencies: - '@hapi/hoek': 9.3.0 - - '@sideway/formula@3.0.1': {} - - '@sideway/pinpoint@2.0.0': {} - - '@sinclair/typebox@0.27.8': {} - - '@sinclair/typebox@0.31.28': {} - - '@surma/rollup-plugin-off-main-thread@2.2.3': - dependencies: - ejs: 3.1.9 - json5: 2.2.3 - magic-string: 0.25.9 - string.prototype.matchall: 4.0.8 - - '@testing-library/dom@9.3.4': - dependencies: - '@babel/code-frame': 7.22.10 - '@babel/runtime': 7.22.10 - '@types/aria-query': 5.0.1 - aria-query: 5.1.3 - chalk: 4.1.2 - dom-accessibility-api: 0.5.16 - lz-string: 1.5.0 - pretty-format: 27.5.1 - - '@testing-library/jest-dom@6.4.6(vitest@0.34.6(jsdom@22.1.0)(terser@5.19.2))': - dependencies: - '@adobe/css-tools': 4.4.0 - '@babel/runtime': 7.22.10 - aria-query: 5.3.0 - chalk: 3.0.0 - css.escape: 1.5.1 - dom-accessibility-api: 0.6.3 - lodash: 4.17.21 - redent: 3.0.0 - optionalDependencies: - vitest: 0.34.6(jsdom@22.1.0)(terser@5.19.2) - - '@testing-library/react@14.3.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': - dependencies: - '@babel/runtime': 7.22.10 - '@testing-library/dom': 9.3.4 - '@types/react-dom': 18.2.7 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - - '@testing-library/user-event@14.5.2(@testing-library/dom@9.3.4)': - dependencies: - '@testing-library/dom': 9.3.4 - - '@tootallnate/once@2.0.0': {} - - '@trysound/sax@0.2.0': {} - - '@types/aria-query@5.0.1': {} - - '@types/babel__core@7.20.5': - dependencies: - '@babel/parser': 7.24.7 - '@babel/types': 7.24.7 - '@types/babel__generator': 7.6.8 - '@types/babel__template': 7.4.4 - '@types/babel__traverse': 7.20.6 - - '@types/babel__generator@7.6.8': - dependencies: - '@babel/types': 7.24.7 - - '@types/babel__template@7.4.4': - dependencies: - '@babel/parser': 7.24.7 - '@babel/types': 7.24.7 - - '@types/babel__traverse@7.20.6': - dependencies: - '@babel/types': 7.24.7 - - '@types/chai-subset@1.3.3': - dependencies: - '@types/chai': 4.3.5 - - '@types/chai@4.3.5': {} - - '@types/estree@0.0.39': {} - - '@types/estree@1.0.1': {} - - '@types/json-schema@7.0.15': {} - - '@types/node@20.14.9': - dependencies: - undici-types: 5.26.5 - - '@types/parse-json@4.0.0': {} - - '@types/prop-types@15.7.5': {} - - '@types/react-dom@18.2.7': - dependencies: - '@types/react': 18.3.3 - - '@types/react@18.3.3': - dependencies: - '@types/prop-types': 15.7.5 - csstype: 3.1.2 - - '@types/resolve@1.17.1': - dependencies: - '@types/node': 20.14.9 - - '@types/semver@7.5.8': {} - - '@types/validator@13.11.10': {} - - '@types/validator@13.12.0': {} - - '@typeschema/core@0.13.2(@types/json-schema@7.0.15)': - optionalDependencies: - '@types/json-schema': 7.0.15 - - '@typeschema/main@0.13.10(@types/json-schema@7.0.15)(@typeschema/zod@0.13.3(@types/json-schema@7.0.15)(zod@3.23.8))': - dependencies: - '@typeschema/core': 0.13.2(@types/json-schema@7.0.15) - optionalDependencies: - '@typeschema/zod': 0.13.3(@types/json-schema@7.0.15)(zod@3.23.8) - transitivePeerDependencies: - - '@types/json-schema' - - '@typeschema/zod@0.13.3(@types/json-schema@7.0.15)(zod@3.23.8)': - dependencies: - '@typeschema/core': 0.13.2(@types/json-schema@7.0.15) - optionalDependencies: - zod: 3.23.8 - transitivePeerDependencies: - - '@types/json-schema' - - '@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.3))(eslint@8.57.0)(typescript@5.5.3)': - dependencies: - '@eslint-community/regexpp': 4.7.0 - '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.5.3) - '@typescript-eslint/scope-manager': 6.21.0 - '@typescript-eslint/type-utils': 6.21.0(eslint@8.57.0)(typescript@5.5.3) - '@typescript-eslint/utils': 6.21.0(eslint@8.57.0)(typescript@5.5.3) - '@typescript-eslint/visitor-keys': 6.21.0 - debug: 4.3.4 - eslint: 8.57.0 - graphemer: 1.4.0 - ignore: 5.2.4 - natural-compare: 1.4.0 - semver: 7.5.4 - ts-api-utils: 1.0.2(typescript@5.5.3) - optionalDependencies: - typescript: 5.5.3 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.3)': - dependencies: - '@typescript-eslint/scope-manager': 6.21.0 - '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.5.3) - '@typescript-eslint/visitor-keys': 6.21.0 - debug: 4.3.4 - eslint: 8.57.0 - optionalDependencies: - typescript: 5.5.3 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/scope-manager@6.21.0': - dependencies: - '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/visitor-keys': 6.21.0 - - '@typescript-eslint/type-utils@6.21.0(eslint@8.57.0)(typescript@5.5.3)': - dependencies: - '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.5.3) - '@typescript-eslint/utils': 6.21.0(eslint@8.57.0)(typescript@5.5.3) - debug: 4.3.4 - eslint: 8.57.0 - ts-api-utils: 1.0.2(typescript@5.5.3) - optionalDependencies: - typescript: 5.5.3 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/types@6.21.0': {} - - '@typescript-eslint/typescript-estree@6.21.0(typescript@5.5.3)': - 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.6.2 - ts-api-utils: 1.3.0(typescript@5.5.3) - optionalDependencies: - typescript: 5.5.3 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/utils@6.21.0(eslint@8.57.0)(typescript@5.5.3)': - dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - '@types/json-schema': 7.0.15 - '@types/semver': 7.5.8 - '@typescript-eslint/scope-manager': 6.21.0 - '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.5.3) - eslint: 8.57.0 - semver: 7.5.4 - transitivePeerDependencies: - - supports-color - - typescript - - '@typescript-eslint/visitor-keys@6.21.0': - dependencies: - '@typescript-eslint/types': 6.21.0 - eslint-visitor-keys: 3.4.3 - - '@ungap/structured-clone@1.2.0': {} - - '@vinejs/compiler@2.5.0': {} - - '@vinejs/vine@2.1.0': - dependencies: - '@poppinss/macroable': 1.0.2 - '@types/validator': 13.11.10 - '@vinejs/compiler': 2.5.0 - camelcase: 8.0.0 - dayjs: 1.11.11 - dlv: 1.1.3 - normalize-url: 8.0.1 - validator: 13.11.0 - - '@vitejs/plugin-react@4.3.1(vite@4.5.3(@types/node@20.14.9)(terser@5.19.2))': - dependencies: - '@babel/core': 7.24.7 - '@babel/plugin-transform-react-jsx-self': 7.24.7(@babel/core@7.24.7) - '@babel/plugin-transform-react-jsx-source': 7.24.7(@babel/core@7.24.7) - '@types/babel__core': 7.20.5 - react-refresh: 0.14.2 - vite: 4.5.3(@types/node@20.14.9)(terser@5.19.2) - transitivePeerDependencies: - - supports-color - - '@vitest/expect@0.34.6': - dependencies: - '@vitest/spy': 0.34.6 - '@vitest/utils': 0.34.6 - chai: 4.4.1 - - '@vitest/runner@0.34.6': - dependencies: - '@vitest/utils': 0.34.6 - p-limit: 4.0.0 - pathe: 1.1.1 - - '@vitest/snapshot@0.34.6': - dependencies: - magic-string: 0.30.2 - pathe: 1.1.1 - pretty-format: 29.7.0 - - '@vitest/spy@0.34.6': - dependencies: - tinyspy: 2.2.1 - - '@vitest/utils@0.34.6': - dependencies: - diff-sequences: 29.6.3 - loupe: 2.3.7 - pretty-format: 29.7.0 - - abab@2.0.6: {} - - acorn-jsx@5.3.2(acorn@8.10.0): - dependencies: - acorn: 8.10.0 - - acorn-walk@8.2.0: {} - - acorn@8.10.0: {} - - acorn@8.12.0: {} - - agent-base@6.0.2: - dependencies: - debug: 4.3.4 - transitivePeerDependencies: - - supports-color - - ajv-errors@3.0.0(ajv@8.16.0): - dependencies: - ajv: 8.16.0 - - ajv@6.12.6: - dependencies: - fast-deep-equal: 3.1.3 - fast-json-stable-stringify: 2.1.0 - json-schema-traverse: 0.4.1 - uri-js: 4.4.1 - - ajv@8.16.0: - dependencies: - fast-deep-equal: 3.1.3 - json-schema-traverse: 1.0.0 - require-from-string: 2.0.2 - uri-js: 4.4.1 - - ansi-escapes@5.0.0: - dependencies: - type-fest: 1.4.0 - - ansi-regex@2.1.1: {} - - ansi-regex@5.0.1: {} - - ansi-regex@6.0.1: {} - - ansi-styles@2.2.1: {} - - ansi-styles@3.2.1: - dependencies: - color-convert: 1.9.3 - - ansi-styles@4.3.0: - dependencies: - color-convert: 2.0.1 - - ansi-styles@5.2.0: {} - - ansi-styles@6.2.1: {} - - argparse@2.0.1: {} - - aria-query@5.1.3: - dependencies: - deep-equal: 2.2.2 - - aria-query@5.3.0: - dependencies: - dequal: 2.0.3 - - arktype@2.0.0-dev.14: - dependencies: - '@arktype/schema': 0.1.6 - '@arktype/util': 0.0.44 - - array-buffer-byte-length@1.0.0: - dependencies: - call-bind: 1.0.2 - is-array-buffer: 3.0.2 - - array-union@2.1.0: {} - - arraybuffer.prototype.slice@1.0.1: - dependencies: - array-buffer-byte-length: 1.0.0 - call-bind: 1.0.2 - define-properties: 1.2.0 - get-intrinsic: 1.2.1 - is-array-buffer: 3.0.2 - is-shared-array-buffer: 1.0.2 - - assertion-error@1.1.0: {} - - async@3.2.4: {} - - asynckit@0.4.0: {} - - asyncro@3.0.0: {} - - autoprefixer@10.4.15(postcss@8.4.31): - dependencies: - browserslist: 4.21.10 - caniuse-lite: 1.0.30001640 - fraction.js: 4.2.0 - normalize-range: 0.1.2 - picocolors: 1.0.0 - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - - available-typed-arrays@1.0.5: {} - - babel-plugin-macros@3.1.0: - dependencies: - '@babel/runtime': 7.22.10 - cosmiconfig: 7.1.0 - resolve: 1.22.4 - - babel-plugin-polyfill-corejs2@0.4.5(@babel/core@7.22.10): - dependencies: - '@babel/compat-data': 7.22.9 - '@babel/core': 7.22.10 - '@babel/helper-define-polyfill-provider': 0.4.2(@babel/core@7.22.10) - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - - babel-plugin-polyfill-corejs3@0.8.3(@babel/core@7.22.10): - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-define-polyfill-provider': 0.4.2(@babel/core@7.22.10) - core-js-compat: 3.32.0 - transitivePeerDependencies: - - supports-color - - babel-plugin-polyfill-regenerator@0.5.2(@babel/core@7.22.10): - dependencies: - '@babel/core': 7.22.10 - '@babel/helper-define-polyfill-provider': 0.4.2(@babel/core@7.22.10) - transitivePeerDependencies: - - supports-color - - babel-plugin-transform-async-to-promises@0.8.18: {} - - babel-plugin-transform-replace-expressions@0.2.0(@babel/core@7.22.10): - dependencies: - '@babel/core': 7.22.10 - '@babel/parser': 7.22.10 - - balanced-match@1.0.2: {} - - boolbase@1.0.0: {} - - brace-expansion@1.1.11: - dependencies: - balanced-match: 1.0.2 - concat-map: 0.0.1 - - brace-expansion@2.0.1: - dependencies: - balanced-match: 1.0.2 - - braces@3.0.2: - dependencies: - fill-range: 7.0.1 - - braces@3.0.3: - dependencies: - fill-range: 7.1.1 - - brotli-size@4.0.0: - dependencies: - duplexer: 0.1.1 - - browserslist@4.21.10: - dependencies: - caniuse-lite: 1.0.30001640 - electron-to-chromium: 1.4.494 - node-releases: 2.0.13 - update-browserslist-db: 1.0.11(browserslist@4.21.10) - - browserslist@4.23.1: - dependencies: - caniuse-lite: 1.0.30001640 - electron-to-chromium: 1.4.816 - node-releases: 2.0.14 - update-browserslist-db: 1.1.0(browserslist@4.23.1) - - buffer-from@1.1.2: {} - - builtin-modules@3.3.0: {} - - cac@6.7.14: {} - - call-bind@1.0.2: - dependencies: - function-bind: 1.1.1 - get-intrinsic: 1.2.1 - - callsites@3.1.0: {} - - camelcase@6.3.0: {} - - camelcase@8.0.0: {} - - caniuse-api@3.0.0: - dependencies: - browserslist: 4.21.10 - caniuse-lite: 1.0.30001640 - lodash.memoize: 4.1.2 - lodash.uniq: 4.5.0 - - caniuse-lite@1.0.30001640: {} - - chai@4.4.1: - dependencies: - assertion-error: 1.1.0 - check-error: 1.0.3 - deep-eql: 4.1.4 - get-func-name: 2.0.2 - loupe: 2.3.7 - pathval: 1.1.1 - type-detect: 4.0.8 - - chalk@1.1.3: - dependencies: - ansi-styles: 2.2.1 - escape-string-regexp: 1.0.5 - has-ansi: 2.0.0 - strip-ansi: 3.0.1 - supports-color: 2.0.0 - - chalk@2.4.2: - dependencies: - ansi-styles: 3.2.1 - escape-string-regexp: 1.0.5 - supports-color: 5.5.0 - - chalk@3.0.0: - dependencies: - ansi-styles: 4.3.0 - supports-color: 7.2.0 - - chalk@4.1.2: - dependencies: - ansi-styles: 4.3.0 - supports-color: 7.2.0 - - chalk@5.3.0: {} - - check-error@1.0.3: - dependencies: - get-func-name: 2.0.2 - - check-export-map@1.3.1: - dependencies: - kolorist: 1.8.0 - mri: 1.2.0 - - class-transformer@0.5.1: {} - - class-validator@0.14.1: - dependencies: - '@types/validator': 13.12.0 - libphonenumber-js: 1.11.4 - validator: 13.11.0 - - cli-cursor@4.0.0: - dependencies: - restore-cursor: 4.0.0 - - cli-truncate@3.1.0: - dependencies: - slice-ansi: 5.0.0 - string-width: 5.1.2 - - cliui@8.0.1: - dependencies: - string-width: 4.2.3 - strip-ansi: 6.0.1 - wrap-ansi: 7.0.0 - - color-convert@1.9.3: - dependencies: - color-name: 1.1.3 - - color-convert@2.0.1: - dependencies: - color-name: 1.1.4 - - color-name@1.1.3: {} - - color-name@1.1.4: {} - - colord@2.9.3: {} - - colorette@2.0.20: {} - - combined-stream@1.0.8: - dependencies: - delayed-stream: 1.0.0 - - commander@11.0.0: {} - - commander@2.20.3: {} - - commander@7.2.0: {} - - commondir@1.0.1: {} - - computed-types@1.11.2: {} - - concat-map@0.0.1: {} - - concat-with-sourcemaps@1.1.0: - dependencies: - source-map: 0.6.1 - - confbox@0.1.7: {} - - context@3.0.7: - dependencies: - vest-utils: 0.1.1 - - convert-source-map@1.9.0: {} - - convert-source-map@2.0.0: {} - - core-js-compat@3.32.0: - dependencies: - browserslist: 4.21.10 - - cosmiconfig@7.1.0: - dependencies: - '@types/parse-json': 4.0.0 - import-fresh: 3.3.0 - parse-json: 5.2.0 - path-type: 4.0.0 - yaml: 1.10.2 - - cross-env@7.0.3: - dependencies: - cross-spawn: 7.0.3 - - cross-spawn@6.0.5: - dependencies: - nice-try: 1.0.5 - path-key: 2.0.1 - semver: 5.7.2 - shebang-command: 1.2.0 - which: 1.3.1 - - cross-spawn@7.0.3: - dependencies: - path-key: 3.1.1 - shebang-command: 2.0.0 - which: 2.0.2 - - css-declaration-sorter@6.4.1(postcss@8.4.31): - dependencies: - postcss: 8.4.31 - - css-select@4.3.0: - dependencies: - boolbase: 1.0.0 - css-what: 6.1.0 - domhandler: 4.3.1 - domutils: 2.8.0 - nth-check: 2.1.1 - - css-tree@1.1.3: - dependencies: - mdn-data: 2.0.14 - source-map: 0.6.1 - - css-what@6.1.0: {} - - css.escape@1.5.1: {} - - cssesc@3.0.0: {} - - cssnano-preset-default@5.2.14(postcss@8.4.31): - dependencies: - css-declaration-sorter: 6.4.1(postcss@8.4.31) - cssnano-utils: 3.1.0(postcss@8.4.31) - postcss: 8.4.31 - postcss-calc: 8.2.4(postcss@8.4.31) - postcss-colormin: 5.3.1(postcss@8.4.31) - postcss-convert-values: 5.1.3(postcss@8.4.31) - postcss-discard-comments: 5.1.2(postcss@8.4.31) - postcss-discard-duplicates: 5.1.0(postcss@8.4.31) - postcss-discard-empty: 5.1.1(postcss@8.4.31) - postcss-discard-overridden: 5.1.0(postcss@8.4.31) - postcss-merge-longhand: 5.1.7(postcss@8.4.31) - postcss-merge-rules: 5.1.4(postcss@8.4.31) - postcss-minify-font-values: 5.1.0(postcss@8.4.31) - postcss-minify-gradients: 5.1.1(postcss@8.4.31) - postcss-minify-params: 5.1.4(postcss@8.4.31) - postcss-minify-selectors: 5.2.1(postcss@8.4.31) - postcss-normalize-charset: 5.1.0(postcss@8.4.31) - postcss-normalize-display-values: 5.1.0(postcss@8.4.31) - postcss-normalize-positions: 5.1.1(postcss@8.4.31) - postcss-normalize-repeat-style: 5.1.1(postcss@8.4.31) - postcss-normalize-string: 5.1.0(postcss@8.4.31) - postcss-normalize-timing-functions: 5.1.0(postcss@8.4.31) - postcss-normalize-unicode: 5.1.1(postcss@8.4.31) - postcss-normalize-url: 5.1.0(postcss@8.4.31) - postcss-normalize-whitespace: 5.1.1(postcss@8.4.31) - postcss-ordered-values: 5.1.3(postcss@8.4.31) - postcss-reduce-initial: 5.1.2(postcss@8.4.31) - postcss-reduce-transforms: 5.1.0(postcss@8.4.31) - postcss-svgo: 5.1.0(postcss@8.4.31) - postcss-unique-selectors: 5.1.1(postcss@8.4.31) - - cssnano-utils@3.1.0(postcss@8.4.31): - dependencies: - postcss: 8.4.31 - - cssnano@5.1.15(postcss@8.4.31): - dependencies: - cssnano-preset-default: 5.2.14(postcss@8.4.31) - lilconfig: 2.1.0 - postcss: 8.4.31 - yaml: 1.10.2 - - csso@4.2.0: - dependencies: - css-tree: 1.1.3 - - cssstyle@3.0.0: - dependencies: - rrweb-cssom: 0.6.0 - - csstype@3.1.2: {} - - data-urls@4.0.0: - dependencies: - abab: 2.0.6 - whatwg-mimetype: 3.0.0 - whatwg-url: 12.0.1 - - dayjs@1.11.11: {} - - debug@4.3.4: - dependencies: - ms: 2.1.2 - - debug@4.3.5: - dependencies: - ms: 2.1.2 - - decimal.js@10.4.3: {} - - deep-eql@4.1.4: - dependencies: - type-detect: 4.0.8 - - deep-equal@2.2.2: - dependencies: - array-buffer-byte-length: 1.0.0 - call-bind: 1.0.2 - es-get-iterator: 1.1.3 - get-intrinsic: 1.2.1 - is-arguments: 1.1.1 - is-array-buffer: 3.0.2 - is-date-object: 1.0.5 - is-regex: 1.1.4 - is-shared-array-buffer: 1.0.2 - isarray: 2.0.5 - object-is: 1.1.5 - object-keys: 1.1.1 - object.assign: 4.1.4 - regexp.prototype.flags: 1.5.0 - side-channel: 1.0.4 - which-boxed-primitive: 1.0.2 - which-collection: 1.0.1 - which-typed-array: 1.1.11 - - deep-is@0.1.4: {} - - deepmerge@4.3.1: {} - - define-lazy-prop@2.0.0: {} - - define-properties@1.2.0: - dependencies: - has-property-descriptors: 1.0.0 - object-keys: 1.1.1 - - delayed-stream@1.0.0: {} - - dequal@2.0.3: {} - - diff-sequences@29.6.3: {} - - dir-glob@3.0.1: - dependencies: - path-type: 4.0.0 - - dlv@1.1.3: {} - - doctrine@3.0.0: - dependencies: - esutils: 2.0.3 - - dom-accessibility-api@0.5.16: {} - - dom-accessibility-api@0.6.3: {} - - dom-serializer@1.4.1: - dependencies: - domelementtype: 2.3.0 - domhandler: 4.3.1 - entities: 2.2.0 - - domelementtype@2.3.0: {} - - domexception@4.0.0: - dependencies: - webidl-conversions: 7.0.0 - - domhandler@4.3.1: - dependencies: - domelementtype: 2.3.0 - - domutils@2.8.0: - dependencies: - dom-serializer: 1.4.1 - domelementtype: 2.3.0 - domhandler: 4.3.1 - - duplexer@0.1.1: {} - - duplexer@0.1.2: {} - - eastasianwidth@0.2.0: {} - - effect@3.4.6: {} - - ejs@3.1.9: - dependencies: - jake: 10.8.7 - - electron-to-chromium@1.4.494: {} - - electron-to-chromium@1.4.816: {} - - emoji-regex@8.0.0: {} - - emoji-regex@9.2.2: {} - - entities@2.2.0: {} - - entities@4.5.0: {} - - error-ex@1.3.2: - dependencies: - is-arrayish: 0.2.1 - - es-abstract@1.22.1: - dependencies: - array-buffer-byte-length: 1.0.0 - arraybuffer.prototype.slice: 1.0.1 - available-typed-arrays: 1.0.5 - call-bind: 1.0.2 - es-set-tostringtag: 2.0.1 - es-to-primitive: 1.2.1 - function.prototype.name: 1.1.5 - get-intrinsic: 1.2.1 - get-symbol-description: 1.0.0 - globalthis: 1.0.3 - gopd: 1.0.1 - has: 1.0.3 - has-property-descriptors: 1.0.0 - has-proto: 1.0.1 - has-symbols: 1.0.3 - internal-slot: 1.0.5 - is-array-buffer: 3.0.2 - is-callable: 1.2.7 - is-negative-zero: 2.0.2 - is-regex: 1.1.4 - is-shared-array-buffer: 1.0.2 - is-string: 1.0.7 - is-typed-array: 1.1.12 - is-weakref: 1.0.2 - object-inspect: 1.12.3 - object-keys: 1.1.1 - object.assign: 4.1.4 - regexp.prototype.flags: 1.5.0 - safe-array-concat: 1.0.0 - safe-regex-test: 1.0.0 - string.prototype.trim: 1.2.7 - string.prototype.trimend: 1.0.6 - string.prototype.trimstart: 1.0.6 - typed-array-buffer: 1.0.0 - typed-array-byte-length: 1.0.0 - typed-array-byte-offset: 1.0.0 - typed-array-length: 1.0.4 - unbox-primitive: 1.0.2 - which-typed-array: 1.1.11 - - es-get-iterator@1.1.3: - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 - has-symbols: 1.0.3 - is-arguments: 1.1.1 - is-map: 2.0.2 - is-set: 2.0.2 - is-string: 1.0.7 - isarray: 2.0.5 - stop-iteration-iterator: 1.0.0 - - es-set-tostringtag@2.0.1: - dependencies: - get-intrinsic: 1.2.1 - has: 1.0.3 - has-tostringtag: 1.0.0 - - es-to-primitive@1.2.1: - dependencies: - is-callable: 1.2.7 - is-date-object: 1.0.5 - is-symbol: 1.0.4 - - esbuild@0.18.20: - optionalDependencies: - '@esbuild/android-arm': 0.18.20 - '@esbuild/android-arm64': 0.18.20 - '@esbuild/android-x64': 0.18.20 - '@esbuild/darwin-arm64': 0.18.20 - '@esbuild/darwin-x64': 0.18.20 - '@esbuild/freebsd-arm64': 0.18.20 - '@esbuild/freebsd-x64': 0.18.20 - '@esbuild/linux-arm': 0.18.20 - '@esbuild/linux-arm64': 0.18.20 - '@esbuild/linux-ia32': 0.18.20 - '@esbuild/linux-loong64': 0.18.20 - '@esbuild/linux-mips64el': 0.18.20 - '@esbuild/linux-ppc64': 0.18.20 - '@esbuild/linux-riscv64': 0.18.20 - '@esbuild/linux-s390x': 0.18.20 - '@esbuild/linux-x64': 0.18.20 - '@esbuild/netbsd-x64': 0.18.20 - '@esbuild/openbsd-x64': 0.18.20 - '@esbuild/sunos-x64': 0.18.20 - '@esbuild/win32-arm64': 0.18.20 - '@esbuild/win32-ia32': 0.18.20 - '@esbuild/win32-x64': 0.18.20 - - escalade@3.1.1: {} - - escalade@3.1.2: {} - - escape-string-regexp@1.0.5: {} - - escape-string-regexp@4.0.0: {} - - eslint-config-prettier@9.1.0(eslint@8.57.0): - dependencies: - eslint: 8.57.0 - - eslint-scope@7.2.2: - dependencies: - esrecurse: 4.3.0 - estraverse: 5.3.0 - - eslint-visitor-keys@3.4.3: {} - - eslint@8.57.0: - dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - '@eslint-community/regexpp': 4.6.2 - '@eslint/eslintrc': 2.1.4 - '@eslint/js': 8.57.0 - '@humanwhocodes/config-array': 0.11.14 - '@humanwhocodes/module-importer': 1.0.1 - '@nodelib/fs.walk': 1.2.8 - '@ungap/structured-clone': 1.2.0 - ajv: 6.12.6 - chalk: 4.1.2 - cross-spawn: 7.0.3 - debug: 4.3.4 - doctrine: 3.0.0 - escape-string-regexp: 4.0.0 - eslint-scope: 7.2.2 - eslint-visitor-keys: 3.4.3 - espree: 9.6.1 - esquery: 1.5.0 - esutils: 2.0.3 - fast-deep-equal: 3.1.3 - file-entry-cache: 6.0.1 - find-up: 5.0.0 - glob-parent: 6.0.2 - globals: 13.21.0 - graphemer: 1.4.0 - ignore: 5.2.4 - imurmurhash: 0.1.4 - is-glob: 4.0.3 - is-path-inside: 3.0.3 - js-yaml: 4.1.0 - json-stable-stringify-without-jsonify: 1.0.1 - levn: 0.4.1 - lodash.merge: 4.6.2 - minimatch: 3.1.2 - natural-compare: 1.4.0 - optionator: 0.9.3 - strip-ansi: 6.0.1 - text-table: 0.2.0 - transitivePeerDependencies: - - supports-color - - espree@9.6.1: - dependencies: - acorn: 8.10.0 - acorn-jsx: 5.3.2(acorn@8.10.0) - eslint-visitor-keys: 3.4.3 - - esquery@1.5.0: - dependencies: - estraverse: 5.3.0 - - esrecurse@4.3.0: - dependencies: - estraverse: 5.3.0 - - estraverse@5.3.0: {} - - estree-walker@0.6.1: {} - - estree-walker@1.0.1: {} - - estree-walker@2.0.2: {} - - esutils@2.0.3: {} - - eventemitter3@4.0.7: {} - - eventemitter3@5.0.1: {} - - execa@7.2.0: - dependencies: - cross-spawn: 7.0.3 - get-stream: 6.0.1 - human-signals: 4.3.1 - is-stream: 3.0.0 - merge-stream: 2.0.0 - npm-run-path: 5.1.0 - onetime: 6.0.0 - signal-exit: 3.0.7 - strip-final-newline: 3.0.0 - - fast-check@3.18.0: - dependencies: - pure-rand: 6.1.0 - - fast-deep-equal@3.1.3: {} - - fast-glob@3.3.2: - dependencies: - '@nodelib/fs.stat': 2.0.5 - '@nodelib/fs.walk': 1.2.8 - glob-parent: 5.1.2 - merge2: 1.4.1 - micromatch: 4.0.7 - - fast-json-stable-stringify@2.1.0: {} - - fast-levenshtein@2.0.6: {} - - fastq@1.15.0: - dependencies: - reusify: 1.0.4 - - figures@1.7.0: - dependencies: - escape-string-regexp: 1.0.5 - object-assign: 4.1.1 - - file-entry-cache@6.0.1: - dependencies: - flat-cache: 3.0.4 - - filelist@1.0.4: - dependencies: - minimatch: 5.1.6 - - filesize@6.4.0: {} - - fill-range@7.0.1: - dependencies: - to-regex-range: 5.0.1 - - fill-range@7.1.1: - dependencies: - to-regex-range: 5.0.1 - - find-cache-dir@3.3.2: - dependencies: - commondir: 1.0.1 - make-dir: 3.1.0 - pkg-dir: 4.2.0 - - find-up@4.1.0: - dependencies: - locate-path: 5.0.0 - path-exists: 4.0.0 - - find-up@5.0.0: - dependencies: - locate-path: 6.0.0 - path-exists: 4.0.0 - - flat-cache@3.0.4: - dependencies: - flatted: 3.2.7 - rimraf: 3.0.2 - - flatted@3.2.7: {} - - for-each@0.3.3: - dependencies: - is-callable: 1.2.7 - - form-data@4.0.0: - dependencies: - asynckit: 0.4.0 - combined-stream: 1.0.8 - mime-types: 2.1.35 - - fp-ts@2.16.7: {} - - fraction.js@4.2.0: {} - - fs-extra@10.1.0: - dependencies: - graceful-fs: 4.2.11 - jsonfile: 6.1.0 - universalify: 2.0.0 - - fs.realpath@1.0.0: {} - - fsevents@2.3.3: - optional: true - - function-bind@1.1.1: {} - - function.prototype.name@1.1.5: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - functions-have-names: 1.2.3 - - functions-have-names@1.2.3: {} - - generic-names@4.0.0: - dependencies: - loader-utils: 3.2.1 - - gensync@1.0.0-beta.2: {} - - get-caller-file@2.0.5: {} - - get-func-name@2.0.2: {} - - get-intrinsic@1.2.1: - dependencies: - function-bind: 1.1.1 - has: 1.0.3 - has-proto: 1.0.1 - has-symbols: 1.0.3 - - get-stream@6.0.1: {} - - get-symbol-description@1.0.0: - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 - - glob-parent@5.1.2: - dependencies: - is-glob: 4.0.3 - - glob-parent@6.0.2: - dependencies: - is-glob: 4.0.3 - - glob@7.2.3: - dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 3.1.2 - once: 1.4.0 - path-is-absolute: 1.0.1 - - globals@11.12.0: {} - - globals@13.21.0: - dependencies: - type-fest: 0.20.2 - - globalthis@1.0.3: - dependencies: - define-properties: 1.2.0 - - globalyzer@0.1.0: {} - - globby@11.1.0: - dependencies: - array-union: 2.1.0 - dir-glob: 3.0.1 - fast-glob: 3.3.2 - ignore: 5.3.1 - merge2: 1.4.1 - slash: 3.0.0 - - globrex@0.1.2: {} - - gopd@1.0.1: - dependencies: - get-intrinsic: 1.2.1 - - graceful-fs@4.2.11: {} - - graphemer@1.4.0: {} - - gzip-size@3.0.0: - dependencies: - duplexer: 0.1.2 - - gzip-size@6.0.0: - dependencies: - duplexer: 0.1.2 - - has-ansi@2.0.0: - dependencies: - ansi-regex: 2.1.1 - - has-bigints@1.0.2: {} - - has-flag@3.0.0: {} - - has-flag@4.0.0: {} - - has-property-descriptors@1.0.0: - dependencies: - get-intrinsic: 1.2.1 - - has-proto@1.0.1: {} - - has-symbols@1.0.3: {} - - has-tostringtag@1.0.0: - dependencies: - has-symbols: 1.0.3 - - has@1.0.3: - dependencies: - function-bind: 1.1.1 - - hosted-git-info@2.8.9: {} - - html-encoding-sniffer@3.0.0: - dependencies: - whatwg-encoding: 2.0.0 - - http-proxy-agent@5.0.0: - dependencies: - '@tootallnate/once': 2.0.0 - agent-base: 6.0.2 - debug: 4.3.4 - transitivePeerDependencies: - - supports-color - - https-proxy-agent@5.0.1: - dependencies: - agent-base: 6.0.2 - debug: 4.3.4 - transitivePeerDependencies: - - supports-color - - human-signals@4.3.1: {} - - husky@8.0.3: {} - - iconv-lite@0.6.3: - dependencies: - safer-buffer: 2.1.2 - - icss-replace-symbols@1.1.0: {} - - icss-utils@5.1.0(postcss@8.4.31): - dependencies: - postcss: 8.4.31 - - ignore@5.2.4: {} - - ignore@5.3.1: {} - - import-cwd@3.0.0: - dependencies: - import-from: 3.0.0 - - import-fresh@3.3.0: - dependencies: - parent-module: 1.0.1 - resolve-from: 4.0.0 - - import-from@3.0.0: - dependencies: - resolve-from: 5.0.0 - - imurmurhash@0.1.4: {} - - indent-string@4.0.0: {} - - inflight@1.0.6: - dependencies: - once: 1.4.0 - wrappy: 1.0.2 - - inherits@2.0.4: {} - - internal-slot@1.0.5: - dependencies: - get-intrinsic: 1.2.1 - has: 1.0.3 - side-channel: 1.0.4 - - io-ts-types@0.5.19(fp-ts@2.16.7)(io-ts@2.2.21(fp-ts@2.16.7))(monocle-ts@2.3.13(fp-ts@2.16.7))(newtype-ts@0.3.5(fp-ts@2.16.7)(monocle-ts@2.3.13(fp-ts@2.16.7))): - dependencies: - fp-ts: 2.16.7 - io-ts: 2.2.21(fp-ts@2.16.7) - monocle-ts: 2.3.13(fp-ts@2.16.7) - newtype-ts: 0.3.5(fp-ts@2.16.7)(monocle-ts@2.3.13(fp-ts@2.16.7)) - - io-ts@2.2.21(fp-ts@2.16.7): - dependencies: - fp-ts: 2.16.7 - - is-arguments@1.1.1: - dependencies: - call-bind: 1.0.2 - has-tostringtag: 1.0.0 - - is-array-buffer@3.0.2: - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 - is-typed-array: 1.1.12 - - is-arrayish@0.2.1: {} - - is-bigint@1.0.4: - dependencies: - has-bigints: 1.0.2 - - is-boolean-object@1.1.2: - dependencies: - call-bind: 1.0.2 - has-tostringtag: 1.0.0 - - is-callable@1.2.7: {} - - is-core-module@2.13.0: - dependencies: - has: 1.0.3 - - is-date-object@1.0.5: - dependencies: - has-tostringtag: 1.0.0 - - is-docker@2.2.1: {} - - is-extglob@2.1.1: {} - - is-fullwidth-code-point@3.0.0: {} - - is-fullwidth-code-point@4.0.0: {} - - is-glob@4.0.3: - dependencies: - is-extglob: 2.1.1 - - is-map@2.0.2: {} - - is-module@1.0.0: {} - - is-negative-zero@2.0.2: {} - - is-number-object@1.0.7: - dependencies: - has-tostringtag: 1.0.0 - - is-number@7.0.0: {} - - is-path-inside@3.0.3: {} - - is-potential-custom-element-name@1.0.1: {} - - is-reference@1.2.1: - dependencies: - '@types/estree': 1.0.1 - - is-regex@1.1.4: - dependencies: - call-bind: 1.0.2 - has-tostringtag: 1.0.0 - - is-set@2.0.2: {} - - is-shared-array-buffer@1.0.2: - dependencies: - call-bind: 1.0.2 - - is-stream@3.0.0: {} - - is-string@1.0.7: - dependencies: - has-tostringtag: 1.0.0 - - is-symbol@1.0.4: - dependencies: - has-symbols: 1.0.3 - - is-typed-array@1.1.12: - dependencies: - which-typed-array: 1.1.11 - - is-weakmap@2.0.1: {} - - is-weakref@1.0.2: - dependencies: - call-bind: 1.0.2 - - is-weakset@2.0.2: - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 - - is-wsl@2.2.0: - dependencies: - is-docker: 2.2.1 - - isarray@2.0.5: {} - - isexe@2.0.0: {} - - jake@10.8.7: - dependencies: - async: 3.2.4 - chalk: 4.1.2 - filelist: 1.0.4 - minimatch: 3.1.2 - - jest-worker@26.6.2: - dependencies: - '@types/node': 20.14.9 - merge-stream: 2.0.0 - supports-color: 7.2.0 - - joi@17.13.3: - dependencies: - '@hapi/hoek': 9.3.0 - '@hapi/topo': 5.1.0 - '@sideway/address': 4.1.5 - '@sideway/formula': 3.0.1 - '@sideway/pinpoint': 2.0.0 - - js-tokens@4.0.0: {} - - js-yaml@4.1.0: - dependencies: - argparse: 2.0.1 - - jsdom@22.1.0: - dependencies: - abab: 2.0.6 - cssstyle: 3.0.0 - data-urls: 4.0.0 - decimal.js: 10.4.3 - domexception: 4.0.0 - form-data: 4.0.0 - html-encoding-sniffer: 3.0.0 - http-proxy-agent: 5.0.0 - https-proxy-agent: 5.0.1 - is-potential-custom-element-name: 1.0.1 - nwsapi: 2.2.7 - parse5: 7.1.2 - rrweb-cssom: 0.6.0 - saxes: 6.0.0 - symbol-tree: 3.2.4 - tough-cookie: 4.1.3 - w3c-xmlserializer: 4.0.0 - webidl-conversions: 7.0.0 - whatwg-encoding: 2.0.0 - whatwg-mimetype: 3.0.0 - whatwg-url: 12.0.1 - ws: 8.13.0 - xml-name-validator: 4.0.0 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - - jsesc@0.5.0: {} - - jsesc@2.5.2: {} - - json-parse-better-errors@1.0.2: {} - - json-parse-even-better-errors@2.3.1: {} - - json-schema-traverse@0.4.1: {} - - json-schema-traverse@1.0.0: {} - - json-stable-stringify-without-jsonify@1.0.1: {} - - json5@2.2.3: {} - - jsonfile@6.1.0: - dependencies: - universalify: 2.0.0 - optionalDependencies: - graceful-fs: 4.2.11 - - kleur@4.1.5: {} - - kolorist@1.8.0: {} - - levn@0.4.1: - dependencies: - prelude-ls: 1.2.1 - type-check: 0.4.0 - - libphonenumber-js@1.11.4: {} - - lilconfig@2.1.0: {} - - lines-and-columns@1.2.4: {} - - lint-staged@14.0.1: - dependencies: - chalk: 5.3.0 - commander: 11.0.0 - debug: 4.3.4 - execa: 7.2.0 - lilconfig: 2.1.0 - listr2: 6.6.1 - micromatch: 4.0.5 - pidtree: 0.6.0 - string-argv: 0.3.2 - yaml: 2.3.1 - transitivePeerDependencies: - - enquirer - - supports-color - - listr2@6.6.1: - dependencies: - cli-truncate: 3.1.0 - colorette: 2.0.20 - eventemitter3: 5.0.1 - log-update: 5.0.1 - rfdc: 1.3.0 - wrap-ansi: 8.1.0 - - load-json-file@4.0.0: - dependencies: - graceful-fs: 4.2.11 - parse-json: 4.0.0 - pify: 3.0.0 - strip-bom: 3.0.0 - - loader-utils@3.2.1: {} - - local-pkg@0.4.3: {} - - locate-path@5.0.0: - dependencies: - p-locate: 4.1.0 - - locate-path@6.0.0: - dependencies: - p-locate: 5.0.0 - - lodash.camelcase@4.3.0: {} - - lodash.debounce@4.0.8: {} - - lodash.memoize@4.1.2: {} - - lodash.merge@4.6.2: {} - - lodash.uniq@4.5.0: {} - - lodash@4.17.21: {} - - log-update@5.0.1: - dependencies: - ansi-escapes: 5.0.0 - cli-cursor: 4.0.0 - slice-ansi: 5.0.0 - strip-ansi: 7.1.0 - wrap-ansi: 8.1.0 - - loose-envify@1.4.0: - dependencies: - js-tokens: 4.0.0 - - loupe@2.3.7: - dependencies: - get-func-name: 2.0.2 - - lru-cache@5.1.1: - dependencies: - yallist: 3.1.1 - - lru-cache@6.0.0: - dependencies: - yallist: 4.0.0 - - lz-string@1.5.0: {} - - magic-string@0.25.9: - dependencies: - sourcemap-codec: 1.4.8 - - magic-string@0.30.2: - dependencies: - '@jridgewell/sourcemap-codec': 1.4.15 - - make-dir@3.1.0: - dependencies: - semver: 6.3.1 - - maxmin@2.1.0: - dependencies: - chalk: 1.1.3 - figures: 1.7.0 - gzip-size: 3.0.0 - pretty-bytes: 3.0.1 - - mdn-data@2.0.14: {} - - memorystream@0.3.1: {} - - merge-stream@2.0.0: {} - - merge2@1.4.1: {} - - microbundle@0.15.1(@types/babel__core@7.20.5): - dependencies: - '@babel/core': 7.22.10 - '@babel/plugin-proposal-class-properties': 7.12.1(@babel/core@7.22.10) - '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.22.10) - '@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-flow-strip-types': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-react-jsx': 7.22.5(@babel/core@7.22.10) - '@babel/plugin-transform-regenerator': 7.22.10(@babel/core@7.22.10) - '@babel/preset-env': 7.22.10(@babel/core@7.22.10) - '@babel/preset-flow': 7.22.5(@babel/core@7.22.10) - '@babel/preset-react': 7.22.5(@babel/core@7.22.10) - '@rollup/plugin-alias': 3.1.9(rollup@2.79.1) - '@rollup/plugin-babel': 5.3.1(@babel/core@7.22.10)(@types/babel__core@7.20.5)(rollup@2.79.1) - '@rollup/plugin-commonjs': 17.1.0(rollup@2.79.1) - '@rollup/plugin-json': 4.1.0(rollup@2.79.1) - '@rollup/plugin-node-resolve': 11.2.1(rollup@2.79.1) - '@surma/rollup-plugin-off-main-thread': 2.2.3 - asyncro: 3.0.0 - autoprefixer: 10.4.15(postcss@8.4.31) - babel-plugin-macros: 3.1.0 - babel-plugin-transform-async-to-promises: 0.8.18 - babel-plugin-transform-replace-expressions: 0.2.0(@babel/core@7.22.10) - brotli-size: 4.0.0 - builtin-modules: 3.3.0 - camelcase: 6.3.0 - escape-string-regexp: 4.0.0 - filesize: 6.4.0 - gzip-size: 6.0.0 - kleur: 4.1.5 - lodash.merge: 4.6.2 - postcss: 8.4.31 - pretty-bytes: 5.6.0 - rollup: 2.79.1 - rollup-plugin-bundle-size: 1.0.3 - rollup-plugin-postcss: 4.0.2(postcss@8.4.31) - rollup-plugin-terser: 7.0.2(rollup@2.79.1) - rollup-plugin-typescript2: 0.32.1(rollup@2.79.1)(typescript@4.9.5) - rollup-plugin-visualizer: 5.9.2(rollup@2.79.1) - sade: 1.8.1 - terser: 5.19.2 - tiny-glob: 0.2.9 - tslib: 2.6.1 - typescript: 4.9.5 - transitivePeerDependencies: - - '@types/babel__core' - - supports-color - - ts-node - - micromatch@4.0.5: - dependencies: - braces: 3.0.2 - picomatch: 2.3.1 - - micromatch@4.0.7: - dependencies: - braces: 3.0.3 - picomatch: 2.3.1 - - mime-db@1.52.0: {} - - mime-types@2.1.35: - dependencies: - mime-db: 1.52.0 - - mimic-fn@2.1.0: {} - - mimic-fn@4.0.0: {} - - min-indent@1.0.1: {} - - minimatch@3.1.2: - dependencies: - brace-expansion: 1.1.11 - - minimatch@5.1.6: - dependencies: - brace-expansion: 2.0.1 - - minimatch@9.0.3: - dependencies: - brace-expansion: 2.0.1 - - mlly@1.7.1: - dependencies: - acorn: 8.12.0 - pathe: 1.1.2 - pkg-types: 1.1.3 - ufo: 1.5.3 - - monocle-ts@2.3.13(fp-ts@2.16.7): - dependencies: - fp-ts: 2.16.7 - - mri@1.2.0: {} - - ms@2.1.2: {} - - n4s@4.3.7: - dependencies: - context: 3.0.7 - vest-utils: 0.1.1 - - nanoid@3.3.6: {} - - natural-compare@1.4.0: {} - - newtype-ts@0.3.5(fp-ts@2.16.7)(monocle-ts@2.3.13(fp-ts@2.16.7)): - dependencies: - fp-ts: 2.16.7 - monocle-ts: 2.3.13(fp-ts@2.16.7) - - nice-try@1.0.5: {} - - node-releases@2.0.13: {} - - node-releases@2.0.14: {} - - nope-validator@1.0.4: {} - - normalize-package-data@2.5.0: - dependencies: - hosted-git-info: 2.8.9 - resolve: 1.22.4 - semver: 5.7.2 - validate-npm-package-license: 3.0.4 - - normalize-range@0.1.2: {} - - normalize-url@6.1.0: {} - - normalize-url@8.0.1: {} - - npm-run-all@4.1.5: - dependencies: - ansi-styles: 3.2.1 - chalk: 2.4.2 - cross-spawn: 6.0.5 - memorystream: 0.3.1 - minimatch: 3.1.2 - pidtree: 0.3.1 - read-pkg: 3.0.0 - shell-quote: 1.8.1 - string.prototype.padend: 3.1.4 - - npm-run-path@5.1.0: - dependencies: - path-key: 4.0.0 - - nth-check@2.1.1: - dependencies: - boolbase: 1.0.0 - - number-is-nan@1.0.1: {} - - nwsapi@2.2.7: {} - - object-assign@4.1.1: {} - - object-inspect@1.12.3: {} - - object-is@1.1.5: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - - object-keys@1.1.1: {} - - object.assign@4.1.4: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - has-symbols: 1.0.3 - object-keys: 1.1.1 - - once@1.4.0: - dependencies: - wrappy: 1.0.2 - - onetime@5.1.2: - dependencies: - mimic-fn: 2.1.0 - - onetime@6.0.0: - dependencies: - mimic-fn: 4.0.0 - - open@8.4.2: - dependencies: - define-lazy-prop: 2.0.0 - is-docker: 2.2.1 - is-wsl: 2.2.0 - - optionator@0.9.3: - dependencies: - '@aashutoshrathi/word-wrap': 1.2.6 - deep-is: 0.1.4 - fast-levenshtein: 2.0.6 - levn: 0.4.1 - prelude-ls: 1.2.1 - type-check: 0.4.0 - - p-finally@1.0.0: {} - - p-limit@2.3.0: - dependencies: - p-try: 2.2.0 - - p-limit@3.1.0: - dependencies: - yocto-queue: 0.1.0 - - p-limit@4.0.0: - dependencies: - yocto-queue: 1.1.1 - - p-locate@4.1.0: - dependencies: - p-limit: 2.3.0 - - p-locate@5.0.0: - dependencies: - p-limit: 3.1.0 - - p-queue@6.6.2: - dependencies: - eventemitter3: 4.0.7 - p-timeout: 3.2.0 - - p-timeout@3.2.0: - dependencies: - p-finally: 1.0.0 - - p-try@2.2.0: {} - - parent-module@1.0.1: - dependencies: - callsites: 3.1.0 - - parse-json@4.0.0: - dependencies: - error-ex: 1.3.2 - json-parse-better-errors: 1.0.2 - - parse-json@5.2.0: - dependencies: - '@babel/code-frame': 7.22.10 - error-ex: 1.3.2 - json-parse-even-better-errors: 2.3.1 - lines-and-columns: 1.2.4 - - parse5@7.1.2: - dependencies: - entities: 4.5.0 - - path-exists@4.0.0: {} - - path-is-absolute@1.0.1: {} - - path-key@2.0.1: {} - - path-key@3.1.1: {} - - path-key@4.0.0: {} - - path-parse@1.0.7: {} - - path-type@3.0.0: - dependencies: - pify: 3.0.0 - - path-type@4.0.0: {} - - pathe@1.1.1: {} - - pathe@1.1.2: {} - - pathval@1.1.1: {} - - picocolors@1.0.0: {} - - picocolors@1.0.1: {} - - picomatch@2.3.1: {} - - pidtree@0.3.1: {} - - pidtree@0.6.0: {} - - pify@3.0.0: {} - - pify@5.0.0: {} - - pkg-dir@4.2.0: - dependencies: - find-up: 4.1.0 - - pkg-types@1.1.3: - dependencies: - confbox: 0.1.7 - mlly: 1.7.1 - pathe: 1.1.2 - - postcss-calc@8.2.4(postcss@8.4.31): - dependencies: - postcss: 8.4.31 - postcss-selector-parser: 6.0.13 - postcss-value-parser: 4.2.0 - - postcss-colormin@5.3.1(postcss@8.4.31): - dependencies: - browserslist: 4.21.10 - caniuse-api: 3.0.0 - colord: 2.9.3 - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - - postcss-convert-values@5.1.3(postcss@8.4.31): - dependencies: - browserslist: 4.21.10 - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - - postcss-discard-comments@5.1.2(postcss@8.4.31): - dependencies: - postcss: 8.4.31 - - postcss-discard-duplicates@5.1.0(postcss@8.4.31): - dependencies: - postcss: 8.4.31 - - postcss-discard-empty@5.1.1(postcss@8.4.31): - dependencies: - postcss: 8.4.31 - - postcss-discard-overridden@5.1.0(postcss@8.4.31): - dependencies: - postcss: 8.4.31 - - postcss-load-config@3.1.4(postcss@8.4.31): - dependencies: - lilconfig: 2.1.0 - yaml: 1.10.2 - optionalDependencies: - postcss: 8.4.31 - - postcss-merge-longhand@5.1.7(postcss@8.4.31): - dependencies: - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - stylehacks: 5.1.1(postcss@8.4.31) - - postcss-merge-rules@5.1.4(postcss@8.4.31): - dependencies: - browserslist: 4.21.10 - caniuse-api: 3.0.0 - cssnano-utils: 3.1.0(postcss@8.4.31) - postcss: 8.4.31 - postcss-selector-parser: 6.0.13 - - postcss-minify-font-values@5.1.0(postcss@8.4.31): - dependencies: - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - - postcss-minify-gradients@5.1.1(postcss@8.4.31): - dependencies: - colord: 2.9.3 - cssnano-utils: 3.1.0(postcss@8.4.31) - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - - postcss-minify-params@5.1.4(postcss@8.4.31): - dependencies: - browserslist: 4.21.10 - cssnano-utils: 3.1.0(postcss@8.4.31) - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - - postcss-minify-selectors@5.2.1(postcss@8.4.31): - dependencies: - postcss: 8.4.31 - postcss-selector-parser: 6.0.13 - - postcss-modules-extract-imports@3.0.0(postcss@8.4.31): - dependencies: - postcss: 8.4.31 - - postcss-modules-local-by-default@4.0.3(postcss@8.4.31): - dependencies: - icss-utils: 5.1.0(postcss@8.4.31) - postcss: 8.4.31 - postcss-selector-parser: 6.0.13 - postcss-value-parser: 4.2.0 - - postcss-modules-scope@3.0.0(postcss@8.4.31): - dependencies: - postcss: 8.4.31 - postcss-selector-parser: 6.0.13 - - postcss-modules-values@4.0.0(postcss@8.4.31): - dependencies: - icss-utils: 5.1.0(postcss@8.4.31) - postcss: 8.4.31 - - postcss-modules@4.3.1(postcss@8.4.31): - dependencies: - generic-names: 4.0.0 - icss-replace-symbols: 1.1.0 - lodash.camelcase: 4.3.0 - postcss: 8.4.31 - postcss-modules-extract-imports: 3.0.0(postcss@8.4.31) - postcss-modules-local-by-default: 4.0.3(postcss@8.4.31) - postcss-modules-scope: 3.0.0(postcss@8.4.31) - postcss-modules-values: 4.0.0(postcss@8.4.31) - string-hash: 1.1.3 - - postcss-normalize-charset@5.1.0(postcss@8.4.31): - dependencies: - postcss: 8.4.31 - - postcss-normalize-display-values@5.1.0(postcss@8.4.31): - dependencies: - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - - postcss-normalize-positions@5.1.1(postcss@8.4.31): - dependencies: - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - - postcss-normalize-repeat-style@5.1.1(postcss@8.4.31): - dependencies: - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - - postcss-normalize-string@5.1.0(postcss@8.4.31): - dependencies: - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - - postcss-normalize-timing-functions@5.1.0(postcss@8.4.31): - dependencies: - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - - postcss-normalize-unicode@5.1.1(postcss@8.4.31): - dependencies: - browserslist: 4.21.10 - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - - postcss-normalize-url@5.1.0(postcss@8.4.31): - dependencies: - normalize-url: 6.1.0 - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - - postcss-normalize-whitespace@5.1.1(postcss@8.4.31): - dependencies: - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - - postcss-ordered-values@5.1.3(postcss@8.4.31): - dependencies: - cssnano-utils: 3.1.0(postcss@8.4.31) - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - - postcss-reduce-initial@5.1.2(postcss@8.4.31): - dependencies: - browserslist: 4.21.10 - caniuse-api: 3.0.0 - postcss: 8.4.31 - - postcss-reduce-transforms@5.1.0(postcss@8.4.31): - dependencies: - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - - postcss-selector-parser@6.0.13: - dependencies: - cssesc: 3.0.0 - util-deprecate: 1.0.2 - - postcss-svgo@5.1.0(postcss@8.4.31): - dependencies: - postcss: 8.4.31 - postcss-value-parser: 4.2.0 - svgo: 2.8.0 - - postcss-unique-selectors@5.1.1(postcss@8.4.31): - dependencies: - postcss: 8.4.31 - postcss-selector-parser: 6.0.13 - - postcss-value-parser@4.2.0: {} - - postcss@8.4.31: - dependencies: - nanoid: 3.3.6 - picocolors: 1.0.0 - source-map-js: 1.0.2 - - prelude-ls@1.2.1: {} - - prettier@3.3.2: {} - - pretty-bytes@3.0.1: - dependencies: - number-is-nan: 1.0.1 - - pretty-bytes@5.6.0: {} - - pretty-format@27.5.1: - dependencies: - ansi-regex: 5.0.1 - ansi-styles: 5.2.0 - react-is: 17.0.2 - - pretty-format@29.7.0: - dependencies: - '@jest/schemas': 29.6.3 - ansi-styles: 5.2.0 - react-is: 18.3.1 - - promise.series@0.2.0: {} - - property-expr@2.0.5: {} - - psl@1.9.0: {} - - punycode@2.3.0: {} - - pure-rand@6.1.0: {} - - querystringify@2.2.0: {} - - queue-microtask@1.2.3: {} - - randombytes@2.1.0: - dependencies: - safe-buffer: 5.2.1 - - react-dom@18.3.1(react@18.3.1): - dependencies: - loose-envify: 1.4.0 - react: 18.3.1 - scheduler: 0.23.2 - - react-hook-form@7.52.1(react@18.3.1): - dependencies: - react: 18.3.1 - - react-is@17.0.2: {} - - react-is@18.3.1: {} - - react-refresh@0.14.2: {} - - react@18.3.1: - dependencies: - loose-envify: 1.4.0 - - read-pkg@3.0.0: - dependencies: - load-json-file: 4.0.0 - normalize-package-data: 2.5.0 - path-type: 3.0.0 - - redent@3.0.0: - dependencies: - indent-string: 4.0.0 - strip-indent: 3.0.0 - - reflect-metadata@0.1.14: {} - - regenerate-unicode-properties@10.1.0: - dependencies: - regenerate: 1.4.2 - - regenerate@1.4.2: {} - - regenerator-runtime@0.14.0: {} - - regenerator-transform@0.15.2: - dependencies: - '@babel/runtime': 7.22.10 - - regexp.prototype.flags@1.5.0: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - functions-have-names: 1.2.3 - - regexpu-core@5.3.2: - dependencies: - '@babel/regjsgen': 0.8.0 - regenerate: 1.4.2 - regenerate-unicode-properties: 10.1.0 - regjsparser: 0.9.1 - unicode-match-property-ecmascript: 2.0.0 - unicode-match-property-value-ecmascript: 2.1.0 - - regjsparser@0.9.1: - dependencies: - jsesc: 0.5.0 - - require-directory@2.1.1: {} - - require-from-string@2.0.2: {} - - requires-port@1.0.0: {} - - resolve-from@4.0.0: {} - - resolve-from@5.0.0: {} - - resolve@1.22.4: - dependencies: - is-core-module: 2.13.0 - path-parse: 1.0.7 - supports-preserve-symlinks-flag: 1.0.0 - - restore-cursor@4.0.0: - dependencies: - onetime: 5.1.2 - signal-exit: 3.0.7 - - reusify@1.0.4: {} - - rfdc@1.3.0: {} - - rimraf@3.0.2: - dependencies: - glob: 7.2.3 - - rollup-plugin-bundle-size@1.0.3: - dependencies: - chalk: 1.1.3 - maxmin: 2.1.0 - - rollup-plugin-postcss@4.0.2(postcss@8.4.31): - dependencies: - chalk: 4.1.2 - concat-with-sourcemaps: 1.1.0 - cssnano: 5.1.15(postcss@8.4.31) - import-cwd: 3.0.0 - p-queue: 6.6.2 - pify: 5.0.0 - postcss: 8.4.31 - postcss-load-config: 3.1.4(postcss@8.4.31) - postcss-modules: 4.3.1(postcss@8.4.31) - promise.series: 0.2.0 - resolve: 1.22.4 - rollup-pluginutils: 2.8.2 - safe-identifier: 0.4.2 - style-inject: 0.3.0 - transitivePeerDependencies: - - ts-node - - rollup-plugin-terser@7.0.2(rollup@2.79.1): - dependencies: - '@babel/code-frame': 7.22.10 - jest-worker: 26.6.2 - rollup: 2.79.1 - serialize-javascript: 4.0.0 - terser: 5.19.2 - - rollup-plugin-typescript2@0.32.1(rollup@2.79.1)(typescript@4.9.5): - dependencies: - '@rollup/pluginutils': 4.2.1 - find-cache-dir: 3.3.2 - fs-extra: 10.1.0 - resolve: 1.22.4 - rollup: 2.79.1 - tslib: 2.6.1 - typescript: 4.9.5 - - rollup-plugin-visualizer@5.9.2(rollup@2.79.1): - dependencies: - open: 8.4.2 - picomatch: 2.3.1 - source-map: 0.7.4 - yargs: 17.7.2 - optionalDependencies: - rollup: 2.79.1 - - rollup-pluginutils@2.8.2: - dependencies: - estree-walker: 0.6.1 - - rollup@2.79.1: - optionalDependencies: - fsevents: 2.3.3 - - rollup@3.28.0: - optionalDependencies: - fsevents: 2.3.3 - - rrweb-cssom@0.6.0: {} - - run-parallel@1.2.0: - dependencies: - queue-microtask: 1.2.3 - - sade@1.8.1: - dependencies: - mri: 1.2.0 - - safe-array-concat@1.0.0: - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 - has-symbols: 1.0.3 - isarray: 2.0.5 - - safe-buffer@5.2.1: {} - - safe-identifier@0.4.2: {} - - safe-regex-test@1.0.0: - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 - is-regex: 1.1.4 - - safer-buffer@2.1.2: {} - - saxes@6.0.0: - dependencies: - xmlchars: 2.2.0 - - scheduler@0.23.2: - dependencies: - loose-envify: 1.4.0 - - semver@5.7.2: {} - - semver@6.3.1: {} - - semver@7.5.4: - dependencies: - lru-cache: 6.0.0 - - semver@7.6.2: {} - - serialize-javascript@4.0.0: - dependencies: - randombytes: 2.1.0 - - shebang-command@1.2.0: - dependencies: - shebang-regex: 1.0.0 - - shebang-command@2.0.0: - dependencies: - shebang-regex: 3.0.0 - - shebang-regex@1.0.0: {} - - shebang-regex@3.0.0: {} - - shell-quote@1.8.1: {} - - side-channel@1.0.4: - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 - object-inspect: 1.12.3 - - siginfo@2.0.0: {} - - signal-exit@3.0.7: {} - - slash@3.0.0: {} - - slice-ansi@5.0.0: - dependencies: - ansi-styles: 6.2.1 - is-fullwidth-code-point: 4.0.0 - - source-map-js@1.0.2: {} - - source-map-support@0.5.21: - dependencies: - buffer-from: 1.1.2 - source-map: 0.6.1 - - source-map@0.6.1: {} - - source-map@0.7.4: {} - - sourcemap-codec@1.4.8: {} - - spdx-correct@3.2.0: - dependencies: - spdx-expression-parse: 3.0.1 - spdx-license-ids: 3.0.13 - - spdx-exceptions@2.3.0: {} - - spdx-expression-parse@3.0.1: - dependencies: - spdx-exceptions: 2.3.0 - spdx-license-ids: 3.0.13 - - spdx-license-ids@3.0.13: {} - - stable@0.1.8: {} - - stackback@0.0.2: {} - - std-env@3.4.0: {} - - stop-iteration-iterator@1.0.0: - dependencies: - internal-slot: 1.0.5 - - string-argv@0.3.2: {} - - string-hash@1.1.3: {} - - string-width@4.2.3: - dependencies: - emoji-regex: 8.0.0 - is-fullwidth-code-point: 3.0.0 - strip-ansi: 6.0.1 - - string-width@5.1.2: - dependencies: - eastasianwidth: 0.2.0 - emoji-regex: 9.2.2 - strip-ansi: 7.1.0 - - string.prototype.matchall@4.0.8: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - get-intrinsic: 1.2.1 - has-symbols: 1.0.3 - internal-slot: 1.0.5 - regexp.prototype.flags: 1.5.0 - side-channel: 1.0.4 - - string.prototype.padend@3.1.4: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - - string.prototype.trim@1.2.7: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - - string.prototype.trimend@1.0.6: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - - string.prototype.trimstart@1.0.6: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - - strip-ansi@3.0.1: - dependencies: - ansi-regex: 2.1.1 - - strip-ansi@6.0.1: - dependencies: - ansi-regex: 5.0.1 - - strip-ansi@7.1.0: - dependencies: - ansi-regex: 6.0.1 - - strip-bom@3.0.0: {} - - strip-final-newline@3.0.0: {} - - strip-indent@3.0.0: - dependencies: - min-indent: 1.0.1 - - strip-json-comments@3.1.1: {} - - strip-literal@1.3.0: - dependencies: - acorn: 8.10.0 - - style-inject@0.3.0: {} - - stylehacks@5.1.1(postcss@8.4.31): - dependencies: - browserslist: 4.21.10 - postcss: 8.4.31 - postcss-selector-parser: 6.0.13 - - superstruct@1.0.4: {} - - supports-color@2.0.0: {} - - supports-color@5.5.0: - dependencies: - has-flag: 3.0.0 - - supports-color@7.2.0: - dependencies: - has-flag: 4.0.0 - - supports-preserve-symlinks-flag@1.0.0: {} - - svgo@2.8.0: - dependencies: - '@trysound/sax': 0.2.0 - commander: 7.2.0 - css-select: 4.3.0 - css-tree: 1.1.3 - csso: 4.2.0 - picocolors: 1.0.0 - stable: 0.1.8 - - symbol-tree@3.2.4: {} - - terser@5.19.2: - dependencies: - '@jridgewell/source-map': 0.3.5 - acorn: 8.10.0 - commander: 2.20.3 - source-map-support: 0.5.21 - - text-table@0.2.0: {} - - tiny-case@1.0.3: {} - - tiny-glob@0.2.9: - dependencies: - globalyzer: 0.1.0 - globrex: 0.1.2 - - tinybench@2.5.0: {} - - tinypool@0.7.0: {} - - tinyspy@2.2.1: {} - - to-fast-properties@2.0.0: {} - - to-regex-range@5.0.1: - dependencies: - is-number: 7.0.0 - - toposort@2.0.2: {} - - tough-cookie@4.1.3: - dependencies: - psl: 1.9.0 - punycode: 2.3.0 - universalify: 0.2.0 - url-parse: 1.5.10 - - tr46@4.1.1: - dependencies: - punycode: 2.3.0 - - ts-api-utils@1.0.2(typescript@5.5.3): - dependencies: - typescript: 5.5.3 - - ts-api-utils@1.3.0(typescript@5.5.3): - dependencies: - typescript: 5.5.3 - - tsconfck@3.1.1(typescript@5.5.3): - optionalDependencies: - typescript: 5.5.3 - - tslib@2.6.1: {} - - typanion@3.14.0: {} - - type-check@0.4.0: - dependencies: - prelude-ls: 1.2.1 - - type-detect@4.0.8: {} - - type-fest@0.20.2: {} - - type-fest@1.4.0: {} - - type-fest@2.19.0: {} - - typed-array-buffer@1.0.0: - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 - is-typed-array: 1.1.12 - - typed-array-byte-length@1.0.0: - dependencies: - call-bind: 1.0.2 - for-each: 0.3.3 - has-proto: 1.0.1 - is-typed-array: 1.1.12 - - typed-array-byte-offset@1.0.0: - 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.12 - - typed-array-length@1.0.4: - dependencies: - call-bind: 1.0.2 - for-each: 0.3.3 - is-typed-array: 1.1.12 - - typescript@4.9.5: {} - - typescript@5.5.3: {} - - ufo@1.5.3: {} - - unbox-primitive@1.0.2: - dependencies: - call-bind: 1.0.2 - has-bigints: 1.0.2 - has-symbols: 1.0.3 - which-boxed-primitive: 1.0.2 - - undici-types@5.26.5: {} - - unicode-canonical-property-names-ecmascript@2.0.0: {} - - unicode-match-property-ecmascript@2.0.0: - dependencies: - unicode-canonical-property-names-ecmascript: 2.0.0 - unicode-property-aliases-ecmascript: 2.1.0 - - unicode-match-property-value-ecmascript@2.1.0: {} - - unicode-property-aliases-ecmascript@2.1.0: {} - - universalify@0.2.0: {} - - universalify@2.0.0: {} - - update-browserslist-db@1.0.11(browserslist@4.21.10): - dependencies: - browserslist: 4.21.10 - escalade: 3.1.1 - picocolors: 1.0.0 - - update-browserslist-db@1.1.0(browserslist@4.23.1): - dependencies: - browserslist: 4.23.1 - escalade: 3.1.2 - picocolors: 1.0.1 - - uri-js@4.4.1: - dependencies: - punycode: 2.3.0 - - url-parse@1.5.10: - dependencies: - querystringify: 2.2.0 - requires-port: 1.0.0 - - util-deprecate@1.0.2: {} - - valibot@0.35.0: {} - - validate-npm-package-license@3.0.4: - dependencies: - spdx-correct: 3.2.0 - spdx-expression-parse: 3.0.1 - - validator@13.11.0: {} - - vast@1.0.17: - dependencies: - vest-utils: 0.1.1 - - vest-utils@0.1.1: {} - - vest@4.6.11: - dependencies: - context: 3.0.7 - n4s: 4.3.7 - vast: 1.0.17 - vest-utils: 0.1.1 - - vite-node@0.34.6(@types/node@20.14.9)(terser@5.19.2): - dependencies: - cac: 6.7.14 - debug: 4.3.4 - mlly: 1.7.1 - pathe: 1.1.1 - picocolors: 1.0.0 - vite: 4.5.3(@types/node@20.14.9)(terser@5.19.2) - transitivePeerDependencies: - - '@types/node' - - less - - lightningcss - - sass - - stylus - - sugarss - - supports-color - - terser - - vite-tsconfig-paths@4.3.2(typescript@5.5.3)(vite@4.5.3(@types/node@20.14.9)(terser@5.19.2)): - dependencies: - debug: 4.3.4 - globrex: 0.1.2 - tsconfck: 3.1.1(typescript@5.5.3) - optionalDependencies: - vite: 4.5.3(@types/node@20.14.9)(terser@5.19.2) - transitivePeerDependencies: - - supports-color - - typescript - - vite@4.5.3(@types/node@20.14.9)(terser@5.19.2): - dependencies: - esbuild: 0.18.20 - postcss: 8.4.31 - rollup: 3.28.0 - optionalDependencies: - '@types/node': 20.14.9 - fsevents: 2.3.3 - terser: 5.19.2 - - vitest@0.34.6(jsdom@22.1.0)(terser@5.19.2): - dependencies: - '@types/chai': 4.3.5 - '@types/chai-subset': 1.3.3 - '@types/node': 20.14.9 - '@vitest/expect': 0.34.6 - '@vitest/runner': 0.34.6 - '@vitest/snapshot': 0.34.6 - '@vitest/spy': 0.34.6 - '@vitest/utils': 0.34.6 - acorn: 8.10.0 - acorn-walk: 8.2.0 - cac: 6.7.14 - chai: 4.4.1 - debug: 4.3.4 - local-pkg: 0.4.3 - magic-string: 0.30.2 - pathe: 1.1.1 - picocolors: 1.0.0 - std-env: 3.4.0 - strip-literal: 1.3.0 - tinybench: 2.5.0 - tinypool: 0.7.0 - vite: 4.5.3(@types/node@20.14.9)(terser@5.19.2) - vite-node: 0.34.6(@types/node@20.14.9)(terser@5.19.2) - why-is-node-running: 2.2.2 - optionalDependencies: - jsdom: 22.1.0 - transitivePeerDependencies: - - less - - lightningcss - - sass - - stylus - - sugarss - - supports-color - - terser - - w3c-xmlserializer@4.0.0: - dependencies: - xml-name-validator: 4.0.0 - - webidl-conversions@7.0.0: {} - - whatwg-encoding@2.0.0: - dependencies: - iconv-lite: 0.6.3 - - whatwg-mimetype@3.0.0: {} - - whatwg-url@12.0.1: - dependencies: - tr46: 4.1.1 - webidl-conversions: 7.0.0 - - which-boxed-primitive@1.0.2: - dependencies: - is-bigint: 1.0.4 - is-boolean-object: 1.1.2 - is-number-object: 1.0.7 - is-string: 1.0.7 - is-symbol: 1.0.4 - - which-collection@1.0.1: - dependencies: - is-map: 2.0.2 - is-set: 2.0.2 - is-weakmap: 2.0.1 - is-weakset: 2.0.2 - - which-typed-array@1.1.11: - dependencies: - available-typed-arrays: 1.0.5 - call-bind: 1.0.2 - for-each: 0.3.3 - gopd: 1.0.1 - has-tostringtag: 1.0.0 - - which@1.3.1: - dependencies: - isexe: 2.0.0 - - which@2.0.2: - dependencies: - isexe: 2.0.0 - - why-is-node-running@2.2.2: - dependencies: - siginfo: 2.0.0 - stackback: 0.0.2 - - wrap-ansi@7.0.0: - dependencies: - ansi-styles: 4.3.0 - string-width: 4.2.3 - strip-ansi: 6.0.1 - - wrap-ansi@8.1.0: - dependencies: - ansi-styles: 6.2.1 - string-width: 5.1.2 - strip-ansi: 7.1.0 - - wrappy@1.0.2: {} - - ws@8.13.0: {} - - xml-name-validator@4.0.0: {} - - xmlchars@2.2.0: {} - - y18n@5.0.8: {} - - yallist@3.1.1: {} - - yallist@4.0.0: {} - - yaml@1.10.2: {} - - yaml@2.3.1: {} - - yargs-parser@21.1.1: {} - - yargs@17.7.2: - 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.8 - yargs-parser: 21.1.1 - - yocto-queue@0.1.0: {} - - yocto-queue@1.1.1: {} - - yup@1.4.0: - dependencies: - property-expr: 2.0.5 - tiny-case: 1.0.3 - toposort: 2.0.2 - type-fest: 2.19.0 - - zod@3.23.8: {} diff --git a/prettier.config.cjs b/prettier.config.cjs deleted file mode 100644 index de2f53cd..00000000 --- a/prettier.config.cjs +++ /dev/null @@ -1,4 +0,0 @@ -module.exports = { - singleQuote: true, - trailingComma: 'all', -}; diff --git a/src/__tests__/validateFieldsNatively.ts b/src/__tests__/validateFieldsNatively.ts index 36df3317..95386f61 100644 --- a/src/__tests__/validateFieldsNatively.ts +++ b/src/__tests__/validateFieldsNatively.ts @@ -31,7 +31,7 @@ const getfields = (mockReportValidity: any, mockSetCustomValidity: any) => }, ], }, - } as any as Record); + }) as any as Record; test('validates natively fields', () => { const mockReportValidity = vi.fn(); diff --git a/src/toNestErrors.ts b/src/toNestErrors.ts index 908db46f..6e06c897 100644 --- a/src/toNestErrors.ts +++ b/src/toNestErrors.ts @@ -1,16 +1,18 @@ import { - get, - FieldErrors, Field, - ResolverOptions, + FieldErrors, FieldValues, InternalFieldName, + ResolverOptions, + get, } from 'react-hook-form'; import { validateFieldsNatively } from './validateFieldsNatively'; -export const isDateObject = (value: unknown): value is Date => value instanceof Date; +export const isDateObject = (value: unknown): value is Date => + value instanceof Date; -export const isNullOrUndefined = (value: unknown): value is null | undefined => value == null; +export const isNullOrUndefined = (value: unknown): value is null | undefined => + value == null; export const isObjectType = (value: unknown): value is object => typeof value === 'object'; @@ -54,7 +56,6 @@ const set = (object: FieldValues, path: string, value?: unknown) => { return object; }; - export const toNestErrors = ( errors: FieldErrors, options: ResolverOptions, diff --git a/src/validateFieldsNatively.ts b/src/validateFieldsNatively.ts index 3039c320..6729d359 100644 --- a/src/validateFieldsNatively.ts +++ b/src/validateFieldsNatively.ts @@ -1,10 +1,10 @@ import { - get, FieldError, - ResolverOptions, - Ref, FieldErrors, FieldValues, + Ref, + ResolverOptions, + get, } from 'react-hook-form'; const setCustomValidity = ( diff --git a/superstruct/src/__tests__/Form-native-validation.tsx b/superstruct/src/__tests__/Form-native-validation.tsx index b13b08d5..b09f9a3c 100644 --- a/superstruct/src/__tests__/Form-native-validation.tsx +++ b/superstruct/src/__tests__/Form-native-validation.tsx @@ -1,8 +1,8 @@ -import React from 'react'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; +import React from 'react'; import { useForm } from 'react-hook-form'; -import { object, string, Infer, size } from 'superstruct'; +import { Infer, object, size, string } from 'superstruct'; import { superstructResolver } from '..'; const schema = object({ diff --git a/superstruct/src/__tests__/Form.tsx b/superstruct/src/__tests__/Form.tsx index d2d63abf..6ff8e24a 100644 --- a/superstruct/src/__tests__/Form.tsx +++ b/superstruct/src/__tests__/Form.tsx @@ -1,8 +1,8 @@ -import React from 'react'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; +import React from 'react'; import { useForm } from 'react-hook-form'; -import { object, string, Infer, size } from 'superstruct'; +import { Infer, object, size, string } from 'superstruct'; import { superstructResolver } from '..'; const schema = object({ diff --git a/superstruct/src/__tests__/__fixtures__/data.ts b/superstruct/src/__tests__/__fixtures__/data.ts index 40a7b8e3..d5cc6e7d 100644 --- a/superstruct/src/__tests__/__fixtures__/data.ts +++ b/superstruct/src/__tests__/__fixtures__/data.ts @@ -1,18 +1,18 @@ import { Field, InternalFieldName } from 'react-hook-form'; import { - object, + Infer, + array, + boolean, + define, + max, + min, number, - string, + object, optional, pattern, size, + string, union, - min, - max, - Infer, - define, - array, - boolean, } from 'superstruct'; const Password = define( diff --git a/superstruct/src/__tests__/__snapshots__/superstruct.ts.snap b/superstruct/src/__tests__/__snapshots__/superstruct.ts.snap index 843ed3fc..55bbc92e 100644 --- a/superstruct/src/__tests__/__snapshots__/superstruct.ts.snap +++ b/superstruct/src/__tests__/__snapshots__/superstruct.ts.snap @@ -4,12 +4,12 @@ exports[`superstructResolver > should return a single error from superstructReso { "errors": { "birthYear": { - "message": "Expected a number, but received: \\"birthYear\\"", + "message": "Expected a number, but received: "birthYear"", "ref": undefined, "type": "number", }, "email": { - "message": "Expected a string matching \`/^[\\\\w-\\\\.]+@([\\\\w-]+\\\\.)+[\\\\w-]{2,4}$/\` but received \\"\\"", + "message": "Expected a string matching \`/^[\\w-\\.]+@([\\w-]+\\.)+[\\w-]{2,4}$/\` but received """, "ref": { "name": "email", }, @@ -23,7 +23,7 @@ exports[`superstructResolver > should return a single error from superstructReso "like": [ { "id": { - "message": "Expected a number, but received: \\"z\\"", + "message": "Expected a number, but received: "z"", "ref": undefined, "type": "number", }, @@ -35,7 +35,7 @@ exports[`superstructResolver > should return a single error from superstructReso }, ], "password": { - "message": "Expected a string matching \`/^[a-zA-Z0-9]{3,30}/\` but received \\"___\\"", + "message": "Expected a string matching \`/^[a-zA-Z0-9]{3,30}/\` but received "___"", "ref": { "name": "password", }, diff --git a/superstruct/src/__tests__/superstruct.ts b/superstruct/src/__tests__/superstruct.ts index 4be7e5c4..cf95b411 100644 --- a/superstruct/src/__tests__/superstruct.ts +++ b/superstruct/src/__tests__/superstruct.ts @@ -1,5 +1,5 @@ import { superstructResolver } from '..'; -import { invalidData, schema, validData, fields } from './__fixtures__/data'; +import { fields, invalidData, schema, validData } from './__fixtures__/data'; const shouldUseNativeValidation = false; diff --git a/superstruct/src/superstruct.ts b/superstruct/src/superstruct.ts index 9704891f..2ee47d99 100644 --- a/superstruct/src/superstruct.ts +++ b/superstruct/src/superstruct.ts @@ -1,5 +1,5 @@ -import { FieldError } from 'react-hook-form'; import { toNestErrors, validateFieldsNatively } from '@hookform/resolvers'; +import { FieldError } from 'react-hook-form'; import { StructError, validate } from 'superstruct'; import { Resolver } from './types'; diff --git a/superstruct/src/types.ts b/superstruct/src/types.ts index 075bace3..5e29da91 100644 --- a/superstruct/src/types.ts +++ b/superstruct/src/types.ts @@ -1,5 +1,5 @@ import { FieldValues, ResolverOptions, ResolverResult } from 'react-hook-form'; -import { validate, Struct } from 'superstruct'; +import { Struct, validate } from 'superstruct'; type Options = Parameters[2]; diff --git a/typanion/src/__tests__/Form-native-validation.tsx b/typanion/src/__tests__/Form-native-validation.tsx index a89fde3d..1a734725 100644 --- a/typanion/src/__tests__/Form-native-validation.tsx +++ b/typanion/src/__tests__/Form-native-validation.tsx @@ -1,6 +1,6 @@ -import React from 'react'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; +import React from 'react'; import { useForm } from 'react-hook-form'; import * as t from 'typanion'; import { typanionResolver } from '..'; diff --git a/typanion/src/__tests__/Form.tsx b/typanion/src/__tests__/Form.tsx index 3f97ffd0..339439ab 100644 --- a/typanion/src/__tests__/Form.tsx +++ b/typanion/src/__tests__/Form.tsx @@ -1,6 +1,6 @@ -import React from 'react'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; +import React from 'react'; import { useForm } from 'react-hook-form'; import * as t from 'typanion'; import { typanionResolver } from '..'; diff --git a/typanion/src/__tests__/__fixtures__/data.ts b/typanion/src/__tests__/__fixtures__/data.ts index 06ba7a30..ccb6f89f 100644 --- a/typanion/src/__tests__/__fixtures__/data.ts +++ b/typanion/src/__tests__/__fixtures__/data.ts @@ -1,8 +1,6 @@ import { Field, InternalFieldName } from 'react-hook-form'; import * as t from 'typanion'; - - export const isSchema = t.isObject({ username: t.applyCascade(t.isString(), [ t.matchesRegExp(/^\w+$/), @@ -13,24 +11,31 @@ export const isSchema = t.isObject({ t.matchesRegExp(new RegExp('.*[A-Z].*')), // one uppercase character t.matchesRegExp(new RegExp('.*[a-z].*')), // one lowercase character t.matchesRegExp(new RegExp('.*\\d.*')), // one number - t.matchesRegExp(new RegExp('.*[`~<>?,./!@#$%^&*()\\-_+="\'|{}\\[\\];:\\\\].*')), // one special character + t.matchesRegExp( + new RegExp('.*[`~<>?,./!@#$%^&*()\\-_+="\'|{}\\[\\];:\\\\].*'), + ), // one special character t.hasMinLength(8), // Must be at least 8 characters in length ]), repeatPassword: t.applyCascade(t.isString(), [ t.matchesRegExp(new RegExp('.*[A-Z].*')), // one uppercase character t.matchesRegExp(new RegExp('.*[a-z].*')), // one lowercase character t.matchesRegExp(new RegExp('.*\\d.*')), // one number - t.matchesRegExp(new RegExp('.*[`~<>?,./!@#$%^&*()\\-_+="\'|{}\\[\\];:\\\\].*')), // one special character + t.matchesRegExp( + new RegExp('.*[`~<>?,./!@#$%^&*()\\-_+="\'|{}\\[\\];:\\\\].*'), + ), // one special character t.hasMinLength(8), // Must be at least 8 characters in length ]), accessToken: t.isString(), - birthYear: t.applyCascade(t.isNumber(), [t.isInteger(), t.isInInclusiveRange(1900, 2013)]), + birthYear: t.applyCascade(t.isNumber(), [ + t.isInteger(), + t.isInInclusiveRange(1900, 2013), + ]), email: t.applyCascade(t.isString(), [t.matchesRegExp(/^\S+@\S+$/)]), - tags: t.isArray(t.isString()), + tags: t.isArray(t.isString()), enabled: t.isBoolean(), like: t.isObject({ id: t.applyCascade(t.isNumber(), [t.isInteger(), t.isPositive()]), - name: t.applyCascade(t.isString(), [t.hasMinLength(4)]) + name: t.applyCascade(t.isString(), [t.hasMinLength(4)]), }), }); diff --git a/typanion/src/__tests__/__snapshots__/typanion.ts.snap b/typanion/src/__tests__/__snapshots__/typanion.ts.snap index c1c43d00..a2e888e1 100644 --- a/typanion/src/__tests__/__snapshots__/typanion.ts.snap +++ b/typanion/src/__tests__/__snapshots__/typanion.ts.snap @@ -8,11 +8,11 @@ exports[`typanionResolver > should return a single error from typanionResolver w "ref": undefined, }, "birthYear": { - "message": "Expected a number (got \\"birthYear\\")", + "message": "Expected a number (got "birthYear")", "ref": undefined, }, "email": { - "message": "Expected to match the pattern /^\\\\S+@\\\\S+$/ (got an empty string)", + "message": "Expected to match the pattern /^\\S+@\\S+$/ (got an empty string)", "ref": { "name": "email", }, @@ -23,7 +23,7 @@ exports[`typanionResolver > should return a single error from typanionResolver w }, "like": { "id": { - "message": "Expected a number (got \\"z\\")", + "message": "Expected a number (got "z")", "ref": undefined, }, "name": { @@ -32,7 +32,7 @@ exports[`typanionResolver > should return a single error from typanionResolver w }, }, "password": { - "message": "Expected to match the pattern /.*[A-Z].*/ (got \\"___\\")", + "message": "Expected to match the pattern /.*[A-Z].*/ (got "___")", "ref": { "name": "password", }, diff --git a/typanion/src/__tests__/typanion.ts b/typanion/src/__tests__/typanion.ts index 67a39e92..ff55961c 100644 --- a/typanion/src/__tests__/typanion.ts +++ b/typanion/src/__tests__/typanion.ts @@ -1,5 +1,5 @@ import { typanionResolver } from '..'; -import { isSchema, validData, fields, invalidData } from './__fixtures__/data'; +import { fields, invalidData, isSchema, validData } from './__fixtures__/data'; const tmpObj = { validate: isSchema, diff --git a/typanion/src/typanion.ts b/typanion/src/typanion.ts index 2fc7437b..12906305 100644 --- a/typanion/src/typanion.ts +++ b/typanion/src/typanion.ts @@ -1,5 +1,5 @@ -import type { FieldError, FieldErrors } from 'react-hook-form'; import { toNestErrors, validateFieldsNatively } from '@hookform/resolvers'; +import type { FieldError, FieldErrors } from 'react-hook-form'; import type { Resolver } from './types'; const parseErrors = (errors: string[], parsedErrors: FieldErrors = {}) => { diff --git a/typanion/src/types.ts b/typanion/src/types.ts index 4fdbc232..f767586f 100644 --- a/typanion/src/types.ts +++ b/typanion/src/types.ts @@ -3,9 +3,9 @@ import type { ResolverOptions, ResolverResult, } from 'react-hook-form'; -import { ValidationState, AnyStrictValidator} from 'typanion' +import { AnyStrictValidator, ValidationState } from 'typanion'; -type ValidateOptions = Pick +type ValidateOptions = Pick; type RHFResolver = ( values: TFieldValues, @@ -16,5 +16,5 @@ type RHFResolver = ( export type Resolver = ( validator: UnknownValidator, validatorOptions?: ValidateOptions, - resolverOptions?: { mode?: 'async' | 'sync', rawValues?: boolean; }, -)=> RHFResolver + resolverOptions?: { mode?: 'async' | 'sync'; rawValues?: boolean }, +) => RHFResolver; diff --git a/typebox/src/__tests__/Form-compiler.tsx b/typebox/src/__tests__/Form-compiler.tsx index a94781e1..15363831 100644 --- a/typebox/src/__tests__/Form-compiler.tsx +++ b/typebox/src/__tests__/Form-compiler.tsx @@ -1,17 +1,17 @@ -import React from 'react'; +import { Static, Type } from '@sinclair/typebox'; +import { TypeCompiler } from '@sinclair/typebox/compiler'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; +import React from 'react'; import { useForm } from 'react-hook-form'; import { typeboxResolver } from '..'; -import { Type, Static } from '@sinclair/typebox'; -import { TypeCompiler } from '@sinclair/typebox/compiler'; const schema = Type.Object({ username: Type.String({ minLength: 1 }), password: Type.String({ minLength: 1 }), }); -const typecheck = TypeCompiler.Compile(schema) +const typecheck = TypeCompiler.Compile(schema); type FormData = Static & { unusedProperty: string }; diff --git a/typebox/src/__tests__/Form-native-validation-compiler.tsx b/typebox/src/__tests__/Form-native-validation-compiler.tsx index c5e74c8c..2b2895fa 100644 --- a/typebox/src/__tests__/Form-native-validation-compiler.tsx +++ b/typebox/src/__tests__/Form-native-validation-compiler.tsx @@ -1,10 +1,10 @@ -import React from 'react'; -import { useForm } from 'react-hook-form'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; +import React from 'react'; +import { useForm } from 'react-hook-form'; import { typeboxResolver } from '..'; -import { Type, Static } from '@sinclair/typebox'; +import { Static, Type } from '@sinclair/typebox'; import { TypeCompiler } from '@sinclair/typebox/compiler'; const schema = Type.Object({ @@ -12,7 +12,7 @@ const schema = Type.Object({ password: Type.String({ minLength: 1 }), }); -const typecheck = TypeCompiler.Compile(schema) +const typecheck = TypeCompiler.Compile(schema); type FormData = Static; diff --git a/typebox/src/__tests__/Form-native-validation.tsx b/typebox/src/__tests__/Form-native-validation.tsx index 460aa5fe..b0d4de6d 100644 --- a/typebox/src/__tests__/Form-native-validation.tsx +++ b/typebox/src/__tests__/Form-native-validation.tsx @@ -1,10 +1,10 @@ -import React from 'react'; -import { useForm } from 'react-hook-form'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; +import React from 'react'; +import { useForm } from 'react-hook-form'; import { typeboxResolver } from '..'; -import { Type, Static } from '@sinclair/typebox'; +import { Static, Type } from '@sinclair/typebox'; const schema = Type.Object({ username: Type.String({ minLength: 1 }), diff --git a/typebox/src/__tests__/Form.tsx b/typebox/src/__tests__/Form.tsx index ce7a5729..c4919aa8 100644 --- a/typebox/src/__tests__/Form.tsx +++ b/typebox/src/__tests__/Form.tsx @@ -1,9 +1,9 @@ -import React from 'react'; +import { Static, Type } from '@sinclair/typebox'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; +import React from 'react'; import { useForm } from 'react-hook-form'; import { typeboxResolver } from '..'; -import { Type, Static } from '@sinclair/typebox'; const schema = Type.Object({ username: Type.String({ minLength: 1 }), diff --git a/typebox/src/__tests__/__fixtures__/data.ts b/typebox/src/__tests__/__fixtures__/data.ts index 3cae6a9d..113c8064 100644 --- a/typebox/src/__tests__/__fixtures__/data.ts +++ b/typebox/src/__tests__/__fixtures__/data.ts @@ -1,5 +1,5 @@ -import { Field, InternalFieldName } from 'react-hook-form'; import { Static, Type } from '@sinclair/typebox'; +import { Field, InternalFieldName } from 'react-hook-form'; export const schema = Type.Object({ username: Type.String({ @@ -19,7 +19,11 @@ export const schema = Type.Object({ maximum: 2013, }), ), - email: Type.Optional(Type.RegExp(/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i)), + email: Type.Optional( + Type.RegExp( + /^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i, + ), + ), tags: Type.Array(Type.String()), enabled: Type.Boolean(), like: Type.Optional( diff --git a/typebox/src/__tests__/__snapshots__/typebox-compiler.ts.snap b/typebox/src/__tests__/__snapshots__/typebox-compiler.ts.snap index 44e4eec9..c5f60cd5 100644 --- a/typebox/src/__tests__/__snapshots__/typebox-compiler.ts.snap +++ b/typebox/src/__tests__/__snapshots__/typebox-compiler.ts.snap @@ -19,11 +19,11 @@ exports[`typeboxResolver (with compiler) > should return a single error from typ "type": "45", }, "email": { - "message": "Expected string to match '^[a-z0-9!#$%&'*+/=?^_\`{|}~-]+(?:\\\\.[a-z0-9!#$%&'*+/=?^_\`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$'", + "message": "Expected string to match regular expression", "ref": { "name": "email", }, - "type": "52", + "type": "48", }, "enabled": { "message": "Required property", @@ -49,7 +49,7 @@ exports[`typeboxResolver (with compiler) > should return a single error from typ "ref": { "name": "password", }, - "type": "51", + "type": "52", }, "repeatPassword": { "message": "Required property", @@ -82,7 +82,7 @@ exports[`typeboxResolver (with compiler) > should return all the errors from typ "type": "45", "types": { "45": "Required property", - "61": "Expected union value", + "62": "Expected union value", }, }, "birthYear": { @@ -103,13 +103,13 @@ exports[`typeboxResolver (with compiler) > should return all the errors from typ }, }, "email": { - "message": "Expected string to match '^[a-z0-9!#$%&'*+/=?^_\`{|}~-]+(?:\\\\.[a-z0-9!#$%&'*+/=?^_\`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$'", + "message": "Expected string to match regular expression", "ref": { "name": "email", }, - "type": "52", + "type": "48", "types": { - "52": "Expected string to match '^[a-z0-9!#$%&'*+/=?^_\`{|}~-]+(?:\\\\.[a-z0-9!#$%&'*+/=?^_\`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$'", + "48": "Expected string to match regular expression", }, }, "enabled": { @@ -137,7 +137,7 @@ exports[`typeboxResolver (with compiler) > should return all the errors from typ "type": "45", "types": { "45": "Required property", - "53": "Expected string", + "54": "Expected string", }, }, }, @@ -147,10 +147,10 @@ exports[`typeboxResolver (with compiler) > should return all the errors from typ "ref": { "name": "password", }, - "type": "51", + "type": "52", "types": { - "51": "Expected string length greater or equal to 8", - "52": "Expected string to match '^(.*[A-Za-z\\\\d].*)$'", + "52": "Expected string length greater or equal to 8", + "53": "Expected string to match '^(.*[A-Za-z\\d].*)$'", }, }, "repeatPassword": { @@ -159,7 +159,7 @@ exports[`typeboxResolver (with compiler) > should return all the errors from typ "type": "45", "types": { "45": "Required property", - "53": "Expected string", + "54": "Expected string", }, }, "tags": { @@ -179,7 +179,7 @@ exports[`typeboxResolver (with compiler) > should return all the errors from typ "type": "45", "types": { "45": "Required property", - "53": "Expected string", + "54": "Expected string", }, }, }, diff --git a/typebox/src/__tests__/__snapshots__/typebox.ts.snap b/typebox/src/__tests__/__snapshots__/typebox.ts.snap index 3c36be56..7addc74a 100644 --- a/typebox/src/__tests__/__snapshots__/typebox.ts.snap +++ b/typebox/src/__tests__/__snapshots__/typebox.ts.snap @@ -19,11 +19,11 @@ exports[`typeboxResolver > should return a single error from typeboxResolver whe "type": "45", }, "email": { - "message": "Expected string to match '^[a-z0-9!#$%&'*+/=?^_\`{|}~-]+(?:\\\\.[a-z0-9!#$%&'*+/=?^_\`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$'", + "message": "Expected string to match regular expression", "ref": { "name": "email", }, - "type": "52", + "type": "48", }, "enabled": { "message": "Required property", @@ -49,7 +49,7 @@ exports[`typeboxResolver > should return a single error from typeboxResolver whe "ref": { "name": "password", }, - "type": "51", + "type": "52", }, "repeatPassword": { "message": "Required property", @@ -82,7 +82,7 @@ exports[`typeboxResolver > should return all the errors from typeboxResolver whe "type": "45", "types": { "45": "Required property", - "61": "Expected union value", + "62": "Expected union value", }, }, "birthYear": { @@ -103,13 +103,13 @@ exports[`typeboxResolver > should return all the errors from typeboxResolver whe }, }, "email": { - "message": "Expected string to match '^[a-z0-9!#$%&'*+/=?^_\`{|}~-]+(?:\\\\.[a-z0-9!#$%&'*+/=?^_\`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$'", + "message": "Expected string to match regular expression", "ref": { "name": "email", }, - "type": "52", + "type": "48", "types": { - "52": "Expected string to match '^[a-z0-9!#$%&'*+/=?^_\`{|}~-]+(?:\\\\.[a-z0-9!#$%&'*+/=?^_\`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$'", + "48": "Expected string to match regular expression", }, }, "enabled": { @@ -137,7 +137,7 @@ exports[`typeboxResolver > should return all the errors from typeboxResolver whe "type": "45", "types": { "45": "Required property", - "53": "Expected string", + "54": "Expected string", }, }, }, @@ -147,10 +147,10 @@ exports[`typeboxResolver > should return all the errors from typeboxResolver whe "ref": { "name": "password", }, - "type": "51", + "type": "52", "types": { - "51": "Expected string length greater or equal to 8", - "52": "Expected string to match '^(.*[A-Za-z\\\\d].*)$'", + "52": "Expected string length greater or equal to 8", + "53": "Expected string to match '^(.*[A-Za-z\\d].*)$'", }, }, "repeatPassword": { @@ -159,7 +159,7 @@ exports[`typeboxResolver > should return all the errors from typeboxResolver whe "type": "45", "types": { "45": "Required property", - "53": "Expected string", + "54": "Expected string", }, }, "tags": { @@ -179,7 +179,7 @@ exports[`typeboxResolver > should return all the errors from typeboxResolver whe "type": "45", "types": { "45": "Required property", - "53": "Expected string", + "54": "Expected string", }, }, }, diff --git a/typebox/src/__tests__/typebox-compiler.ts b/typebox/src/__tests__/typebox-compiler.ts index e95d2d85..fce2c1b4 100644 --- a/typebox/src/__tests__/typebox-compiler.ts +++ b/typebox/src/__tests__/typebox-compiler.ts @@ -1,12 +1,11 @@ import { TypeCompiler } from '@sinclair/typebox/compiler'; import { typeboxResolver } from '..'; -import { schema, validData, invalidData, fields } from './__fixtures__/data'; +import { fields, invalidData, schema, validData } from './__fixtures__/data'; const shouldUseNativeValidation = false; describe('typeboxResolver (with compiler)', () => { - - const typecheck = TypeCompiler.Compile(schema) + const typecheck = TypeCompiler.Compile(schema); it('should return a single error from typeboxResolver when validation fails', async () => { const result = await typeboxResolver(typecheck)(invalidData, undefined, { diff --git a/typebox/src/__tests__/typebox.ts b/typebox/src/__tests__/typebox.ts index 0afb7914..be1c4ea5 100644 --- a/typebox/src/__tests__/typebox.ts +++ b/typebox/src/__tests__/typebox.ts @@ -1,5 +1,5 @@ import { typeboxResolver } from '..'; -import { schema, validData, invalidData, fields } from './__fixtures__/data'; +import { fields, invalidData, schema, validData } from './__fixtures__/data'; const shouldUseNativeValidation = false; diff --git a/typebox/src/typebox.ts b/typebox/src/typebox.ts index cf776525..367b2e65 100644 --- a/typebox/src/typebox.ts +++ b/typebox/src/typebox.ts @@ -1,8 +1,8 @@ -import { appendErrors, FieldError, FieldErrors } from 'react-hook-form'; import { toNestErrors, validateFieldsNatively } from '@hookform/resolvers'; -import type { Resolver } from './types'; -import { Value, type ValueError } from '@sinclair/typebox/value'; import { TypeCheck } from '@sinclair/typebox/compiler'; +import { Value, type ValueError } from '@sinclair/typebox/value'; +import { FieldError, FieldErrors, appendErrors } from 'react-hook-form'; +import type { Resolver } from './types'; const parseErrorSchema = ( _errors: ValueError[], @@ -41,7 +41,11 @@ const parseErrorSchema = ( export const typeboxResolver: Resolver = (schema) => async (values, _, options) => { - const errors = Array.from(schema instanceof TypeCheck ? schema.Errors(values) : Value.Errors(schema, values)); + const errors = Array.from( + schema instanceof TypeCheck + ? schema.Errors(values) + : Value.Errors(schema, values), + ); options.shouldUseNativeValidation && validateFieldsNatively({}, options); diff --git a/typebox/src/types.ts b/typebox/src/types.ts index ecae5cde..8bb580b6 100644 --- a/typebox/src/types.ts +++ b/typebox/src/types.ts @@ -1,6 +1,6 @@ import { Type } from '@sinclair/typebox'; -import type { TypeCheck } from '@sinclair/typebox/compiler/compiler'; -import { FieldValues, ResolverResult, ResolverOptions } from 'react-hook-form'; +import type { TypeCheck } from '@sinclair/typebox/compiler'; +import { FieldValues, ResolverOptions, ResolverResult } from 'react-hook-form'; export type Resolver = >( schema: T | TypeCheck, diff --git a/typeschema/src/__tests__/Form-native-validation.tsx b/typeschema/src/__tests__/Form-native-validation.tsx index 9488910d..a1b87327 100644 --- a/typeschema/src/__tests__/Form-native-validation.tsx +++ b/typeschema/src/__tests__/Form-native-validation.tsx @@ -1,8 +1,8 @@ -import React from 'react'; -import { useForm } from 'react-hook-form'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; import type { Infer } from '@typeschema/main'; +import React from 'react'; +import { useForm } from 'react-hook-form'; import { z } from 'zod'; import { typeschemaResolver } from '..'; diff --git a/typeschema/src/__tests__/Form.tsx b/typeschema/src/__tests__/Form.tsx index 90bffba9..e6a83839 100644 --- a/typeschema/src/__tests__/Form.tsx +++ b/typeschema/src/__tests__/Form.tsx @@ -1,8 +1,8 @@ -import React from 'react'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; -import { useForm } from 'react-hook-form'; import type { Infer } from '@typeschema/main'; +import React from 'react'; +import { useForm } from 'react-hook-form'; import { z } from 'zod'; import { typeschemaResolver } from '..'; diff --git a/typeschema/src/__tests__/typeschema.ts b/typeschema/src/__tests__/typeschema.ts index b2c13fdd..dc31f778 100644 --- a/typeschema/src/__tests__/typeschema.ts +++ b/typeschema/src/__tests__/typeschema.ts @@ -1,6 +1,6 @@ -import { typeschemaResolver } from '..'; -import { schema, validData, invalidData, fields } from './__fixtures__/data'; import * as typeschema from '@typeschema/main'; +import { typeschemaResolver } from '..'; +import { fields, invalidData, schema, validData } from './__fixtures__/data'; const shouldUseNativeValidation = false; diff --git a/typeschema/src/types.ts b/typeschema/src/types.ts index bd33569f..4f1288f9 100644 --- a/typeschema/src/types.ts +++ b/typeschema/src/types.ts @@ -1,5 +1,5 @@ -import { FieldValues, ResolverResult, ResolverOptions } from 'react-hook-form'; import type { Schema } from '@typeschema/main'; +import { FieldValues, ResolverOptions, ResolverResult } from 'react-hook-form'; export type Resolver = ( schema: T, diff --git a/typeschema/src/typeschema.ts b/typeschema/src/typeschema.ts index 766730d0..e0a92d67 100644 --- a/typeschema/src/typeschema.ts +++ b/typeschema/src/typeschema.ts @@ -1,8 +1,8 @@ -import { appendErrors, FieldError, FieldErrors } from 'react-hook-form'; import { toNestErrors, validateFieldsNatively } from '@hookform/resolvers'; -import type { Resolver } from './types'; import type { ValidationIssue } from '@typeschema/core'; import { validate } from '@typeschema/main'; +import { FieldError, FieldErrors, appendErrors } from 'react-hook-form'; +import type { Resolver } from './types'; const parseErrorSchema = ( typeschemaErrors: ValidationIssue[], diff --git a/valibot/src/__tests__/Form-native-validation.tsx b/valibot/src/__tests__/Form-native-validation.tsx index 2e7c4f49..cabf71e5 100644 --- a/valibot/src/__tests__/Form-native-validation.tsx +++ b/valibot/src/__tests__/Form-native-validation.tsx @@ -1,7 +1,7 @@ -import React from 'react'; -import { useForm } from 'react-hook-form'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; +import React from 'react'; +import { useForm } from 'react-hook-form'; import * as v from 'valibot'; import { valibotResolver } from '..'; diff --git a/valibot/src/__tests__/Form.tsx b/valibot/src/__tests__/Form.tsx index eb66bb6d..34dcaaae 100644 --- a/valibot/src/__tests__/Form.tsx +++ b/valibot/src/__tests__/Form.tsx @@ -1,6 +1,6 @@ -import React from 'react'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; +import React from 'react'; import { useForm } from 'react-hook-form'; import * as v from 'valibot'; import { valibotResolver } from '..'; diff --git a/valibot/src/__tests__/valibot.ts b/valibot/src/__tests__/valibot.ts index 8651b6eb..d91beb30 100644 --- a/valibot/src/__tests__/valibot.ts +++ b/valibot/src/__tests__/valibot.ts @@ -1,15 +1,15 @@ +import * as valibot from 'valibot'; /* eslint-disable no-console, @typescript-eslint/ban-ts-comment */ import { valibotResolver } from '..'; import { - schema, - validData, fields, invalidData, + invalidSchemaErrorData, + schema, schemaError, + validData, validSchemaErrorData, - invalidSchemaErrorData, } from './__fixtures__/data'; -import * as valibot from 'valibot'; const shouldUseNativeValidation = false; describe('valibotResolver', () => { diff --git a/valibot/src/types.ts b/valibot/src/types.ts index 5f192cb0..be1442c7 100644 --- a/valibot/src/types.ts +++ b/valibot/src/types.ts @@ -1,4 +1,4 @@ -import { FieldValues, ResolverResult, ResolverOptions } from 'react-hook-form'; +import { FieldValues, ResolverOptions, ResolverResult } from 'react-hook-form'; import { BaseIssue, BaseSchema, diff --git a/valibot/src/valibot.ts b/valibot/src/valibot.ts index e1ce874c..bcd9a410 100644 --- a/valibot/src/valibot.ts +++ b/valibot/src/valibot.ts @@ -1,5 +1,5 @@ import { toNestErrors } from '@hookform/resolvers'; -import { FieldError, appendErrors, FieldValues } from 'react-hook-form'; +import { FieldError, FieldValues, appendErrors } from 'react-hook-form'; import { getDotPath, safeParseAsync } from 'valibot'; import type { Resolver } from './types'; diff --git a/vest/src/__tests__/Form-native-validation.tsx b/vest/src/__tests__/Form-native-validation.tsx index 41c31a1a..d00b6ba9 100644 --- a/vest/src/__tests__/Form-native-validation.tsx +++ b/vest/src/__tests__/Form-native-validation.tsx @@ -1,6 +1,6 @@ -import React from 'react'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; +import React from 'react'; import { useForm } from 'react-hook-form'; import * as vest from 'vest'; import { vestResolver } from '..'; diff --git a/vest/src/__tests__/Form.tsx b/vest/src/__tests__/Form.tsx index f00d3daa..44372e01 100644 --- a/vest/src/__tests__/Form.tsx +++ b/vest/src/__tests__/Form.tsx @@ -1,6 +1,6 @@ -import React from 'react'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; +import React from 'react'; import { useForm } from 'react-hook-form'; import * as vest from 'vest'; import { vestResolver } from '..'; diff --git a/vest/src/__tests__/__snapshots__/vest.ts.snap b/vest/src/__tests__/__snapshots__/vest.ts.snap index 36e1ee97..110992ff 100644 --- a/vest/src/__tests__/__snapshots__/vest.ts.snap +++ b/vest/src/__tests__/__snapshots__/vest.ts.snap @@ -21,8 +21,6 @@ exports[`vestResolver > should return all the error messages from vestResolver w "type": "", "types": { "0": "Password must be at least 5 chars", - "1": "Password must contain a digit", - "2": "Password must contain a symbol", }, }, "username": { @@ -33,7 +31,6 @@ exports[`vestResolver > should return all the error messages from vestResolver w "type": "", "types": { "0": "Username is required", - "1": "Must be longer than 3 chars", }, }, }, @@ -62,8 +59,6 @@ exports[`vestResolver > should return all the error messages from vestResolver w "type": "", "types": { "0": "Password must be at least 5 chars", - "1": "Password must contain a digit", - "2": "Password must contain a symbol", }, }, "username": { @@ -74,7 +69,6 @@ exports[`vestResolver > should return all the error messages from vestResolver w "type": "", "types": { "0": "Username is required", - "1": "Must be longer than 3 chars", }, }, }, diff --git a/vest/src/__tests__/vest.ts b/vest/src/__tests__/vest.ts index 2edc5207..36cbcfea 100644 --- a/vest/src/__tests__/vest.ts +++ b/vest/src/__tests__/vest.ts @@ -1,9 +1,9 @@ import { vestResolver } from '..'; import { + fields, invalidData, - validationSuite, validData, - fields, + validationSuite, } from './__fixtures__/data'; const shouldUseNativeValidation = false; @@ -72,13 +72,19 @@ describe('vestResolver', () => { it('should call a suite with values, validated field names and a context as arguments', async () => { const suite = vi.fn(validationSuite) as any as typeof validationSuite; - await vestResolver(suite)(validData, { some: 'context' }, { - fields: { username: fields.username }, - names: ['username'], - shouldUseNativeValidation, - }); + await vestResolver(suite)( + validData, + { some: 'context' }, + { + fields: { username: fields.username }, + names: ['username'], + shouldUseNativeValidation, + }, + ); expect(suite).toHaveBeenCalledTimes(1); - expect(suite).toHaveBeenCalledWith(validData, ['username'], { some: 'context' }); + expect(suite).toHaveBeenCalledWith(validData, ['username'], { + some: 'context', + }); }); }); diff --git a/vest/src/types.ts b/vest/src/types.ts index 8737925f..91084bac 100644 --- a/vest/src/types.ts +++ b/vest/src/types.ts @@ -1,19 +1,26 @@ import { - FieldValues, FieldName, + FieldValues, ResolverOptions, ResolverResult, } from 'react-hook-form'; import * as Vest from 'vest'; -export type ICreateResult = ReturnType< - typeof Vest.create<(values: TValues, names?: FieldName[], context?: TContext) => void> +export type ICreateResult< + TValues extends FieldValues = FieldValues, + TContext = any, +> = ReturnType< + typeof Vest.create< + any, + any, + (values: TValues, names?: FieldName[], context?: TContext) => void + > >; export type Resolver = ( schema: ICreateResult, schemaOptions?: never, - factoryOptions?: { mode?: 'async' | 'sync', rawValues?: boolean; }, + factoryOptions?: { mode?: 'async' | 'sync'; rawValues?: boolean }, ) => ( values: TValues, context: TContext | undefined, diff --git a/vest/src/vest.ts b/vest/src/vest.ts index ea750cc7..58e64a43 100644 --- a/vest/src/vest.ts +++ b/vest/src/vest.ts @@ -1,7 +1,7 @@ import { toNestErrors, validateFieldsNatively } from '@hookform/resolvers'; import { FieldError } from 'react-hook-form'; import promisify from 'vest/promisify'; -import type { VestErrors, Resolver } from './types'; +import type { Resolver, VestErrors } from './types'; const parseErrorSchema = ( vestError: VestErrors, diff --git a/vine/src/__tests__/Form-native-validation.tsx b/vine/src/__tests__/Form-native-validation.tsx index e7ec4a4b..999ce735 100644 --- a/vine/src/__tests__/Form-native-validation.tsx +++ b/vine/src/__tests__/Form-native-validation.tsx @@ -1,10 +1,10 @@ -import React from 'react'; -import { useForm } from 'react-hook-form'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; -import { vineResolver } from '..'; import vine from '@vinejs/vine'; import { Infer } from '@vinejs/vine/build/src/types'; +import React from 'react'; +import { useForm } from 'react-hook-form'; +import { vineResolver } from '..'; const schema = vine.compile( vine.object({ @@ -59,12 +59,16 @@ test("form's native validation with Zod", async () => { // username usernameField = screen.getByPlaceholderText(/username/i) as HTMLInputElement; expect(usernameField.validity.valid).toBe(false); - expect(usernameField.validationMessage).toBe('The username field must have at least 1 characters'); + expect(usernameField.validationMessage).toBe( + 'The username field must have at least 1 characters', + ); // password passwordField = screen.getByPlaceholderText(/password/i) as HTMLInputElement; expect(passwordField.validity.valid).toBe(false); - expect(passwordField.validationMessage).toBe('The password field must have at least 1 characters'); + expect(passwordField.validationMessage).toBe( + 'The password field must have at least 1 characters', + ); await user.type(screen.getByPlaceholderText(/username/i), 'joe'); await user.type(screen.getByPlaceholderText(/password/i), 'password'); diff --git a/vine/src/__tests__/Form.tsx b/vine/src/__tests__/Form.tsx index 736f9c4d..de664beb 100644 --- a/vine/src/__tests__/Form.tsx +++ b/vine/src/__tests__/Form.tsx @@ -1,10 +1,10 @@ -import React from 'react'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; -import { useForm } from 'react-hook-form'; -import { vineResolver } from '..'; import vine from '@vinejs/vine'; import { Infer } from '@vinejs/vine/build/src/types'; +import React from 'react'; +import { useForm } from 'react-hook-form'; +import { vineResolver } from '..'; const schema = vine.compile( vine.object({ @@ -49,7 +49,11 @@ test("form's validation with Vine and TypeScript's integration", async () => { await user.click(screen.getByText(/submit/i)); - expect(screen.getByText(/The username field must have at least 1 characters/i)).toBeInTheDocument(); - expect(screen.getByText(/The password field must have at least 1 characters/i)).toBeInTheDocument(); + expect( + screen.getByText(/The username field must have at least 1 characters/i), + ).toBeInTheDocument(); + expect( + screen.getByText(/The password field must have at least 1 characters/i), + ).toBeInTheDocument(); expect(handleSubmit).not.toHaveBeenCalled(); }); diff --git a/vine/src/__tests__/__fixtures__/data.ts b/vine/src/__tests__/__fixtures__/data.ts index 97717525..f4078574 100644 --- a/vine/src/__tests__/__fixtures__/data.ts +++ b/vine/src/__tests__/__fixtures__/data.ts @@ -1,6 +1,6 @@ -import { Field, InternalFieldName } from 'react-hook-form'; import vine from '@vinejs/vine'; import { Infer } from '@vinejs/vine/build/src/types'; +import { Field, InternalFieldName } from 'react-hook-form'; export const schema = vine.compile( vine.object({ @@ -25,7 +25,9 @@ export const schema = vine.compile( name: vine.string().fixedLength(4), }), ), - dateStr: vine.string().transform((value: string) => new Date(value).toISOString()), + dateStr: vine + .string() + .transform((value: string) => new Date(value).toISOString()), }), ); diff --git a/vine/src/__tests__/vine.ts b/vine/src/__tests__/vine.ts index a95f7dd3..f1f35433 100644 --- a/vine/src/__tests__/vine.ts +++ b/vine/src/__tests__/vine.ts @@ -1,5 +1,5 @@ import { vineResolver } from '..'; -import { schema, validData, fields, invalidData } from './__fixtures__/data'; +import { fields, invalidData, schema, validData } from './__fixtures__/data'; const shouldUseNativeValidation = false; diff --git a/vine/src/types.ts b/vine/src/types.ts index e7d50bdd..59ed349d 100644 --- a/vine/src/types.ts +++ b/vine/src/types.ts @@ -1,6 +1,6 @@ -import { FieldValues, ResolverResult, ResolverOptions } from 'react-hook-form'; import { VineValidator } from '@vinejs/vine'; import { ValidationOptions } from '@vinejs/vine/build/src/types'; +import { FieldValues, ResolverOptions, ResolverResult } from 'react-hook-form'; export type Resolver = >( schema: T, diff --git a/vine/src/vine.ts b/vine/src/vine.ts index 88ef1c85..b59f4feb 100644 --- a/vine/src/vine.ts +++ b/vine/src/vine.ts @@ -1,6 +1,6 @@ -import { appendErrors, FieldError, FieldErrors } from 'react-hook-form'; import { toNestErrors, validateFieldsNatively } from '@hookform/resolvers'; import { SimpleErrorReporter, errors } from '@vinejs/vine'; +import { FieldError, FieldErrors, appendErrors } from 'react-hook-form'; import type { Resolver } from './types'; const parseErrorSchema = ( diff --git a/vitest.config.ts b/vitest.config.ts index 6040dbf3..0e8751c1 100644 --- a/vitest.config.ts +++ b/vitest.config.ts @@ -1,9 +1,9 @@ /// /// -import { defineConfig } from 'vitest/config'; import react from '@vitejs/plugin-react'; import tsconfigPaths from 'vite-tsconfig-paths'; +import { defineConfig } from 'vitest/config'; export default defineConfig({ plugins: [react(), tsconfigPaths()], diff --git a/yup/src/__tests__/Form-native-validation.tsx b/yup/src/__tests__/Form-native-validation.tsx index 061b5edf..a479e9b6 100644 --- a/yup/src/__tests__/Form-native-validation.tsx +++ b/yup/src/__tests__/Form-native-validation.tsx @@ -1,6 +1,6 @@ -import React from 'react'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; +import React from 'react'; import { useForm } from 'react-hook-form'; import * as Yup from 'yup'; import { yupResolver } from '..'; diff --git a/yup/src/__tests__/Form.tsx b/yup/src/__tests__/Form.tsx index a3a822ae..75f82d9f 100644 --- a/yup/src/__tests__/Form.tsx +++ b/yup/src/__tests__/Form.tsx @@ -1,6 +1,6 @@ -import React from 'react'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; +import React from 'react'; import { SubmitHandler, useForm } from 'react-hook-form'; import * as Yup from 'yup'; import { yupResolver } from '..'; diff --git a/yup/src/__tests__/__snapshots__/yup.ts.snap b/yup/src/__tests__/__snapshots__/yup.ts.snap index 30ff796c..076491d3 100644 --- a/yup/src/__tests__/__snapshots__/yup.ts.snap +++ b/yup/src/__tests__/__snapshots__/yup.ts.snap @@ -4,14 +4,14 @@ exports[`yupResolver > should return a single error from yupResolver when valida { "errors": { "birthYear": { - "message": "birthYear must be a \`number\` type, but the final value was: \`NaN\` (cast from the value \`\\"birthYear\\"\`).", + "message": "birthYear must be a \`number\` type, but the final value was: \`NaN\` (cast from the value \`"birthYear"\`).", "ref": undefined, "type": "typeError", }, "like": [ { "id": { - "message": "like[0].id must be a \`number\` type, but the final value was: \`NaN\` (cast from the value \`\\"z\\"\`).", + "message": "like[0].id must be a \`number\` type, but the final value was: \`NaN\` (cast from the value \`"z"\`).", "ref": undefined, "type": "typeError", }, @@ -45,14 +45,14 @@ exports[`yupResolver > should return a single error from yupResolver with \`mode { "errors": { "birthYear": { - "message": "birthYear must be a \`number\` type, but the final value was: \`NaN\` (cast from the value \`\\"birthYear\\"\`).", + "message": "birthYear must be a \`number\` type, but the final value was: \`NaN\` (cast from the value \`"birthYear"\`).", "ref": undefined, "type": "typeError", }, "like": [ { "id": { - "message": "like[0].id must be a \`number\` type, but the final value was: \`NaN\` (cast from the value \`\\"z\\"\`).", + "message": "like[0].id must be a \`number\` type, but the final value was: \`NaN\` (cast from the value \`"z"\`).", "ref": undefined, "type": "typeError", }, @@ -86,21 +86,21 @@ exports[`yupResolver > should return all the errors from yupResolver when valida { "errors": { "birthYear": { - "message": "birthYear must be a \`number\` type, but the final value was: \`NaN\` (cast from the value \`\\"birthYear\\"\`).", + "message": "birthYear must be a \`number\` type, but the final value was: \`NaN\` (cast from the value \`"birthYear"\`).", "ref": undefined, "type": "typeError", "types": { - "typeError": "birthYear must be a \`number\` type, but the final value was: \`NaN\` (cast from the value \`\\"birthYear\\"\`).", + "typeError": "birthYear must be a \`number\` type, but the final value was: \`NaN\` (cast from the value \`"birthYear"\`).", }, }, "like": [ { "id": { - "message": "like[0].id must be a \`number\` type, but the final value was: \`NaN\` (cast from the value \`\\"z\\"\`).", + "message": "like[0].id must be a \`number\` type, but the final value was: \`NaN\` (cast from the value \`"z"\`).", "ref": undefined, "type": "typeError", "types": { - "typeError": "like[0].id must be a \`number\` type, but the final value was: \`NaN\` (cast from the value \`\\"z\\"\`).", + "typeError": "like[0].id must be a \`number\` type, but the final value was: \`NaN\` (cast from the value \`"z"\`).", }, }, "name": { @@ -147,21 +147,21 @@ exports[`yupResolver > should return all the errors from yupResolver when valida { "errors": { "birthYear": { - "message": "birthYear must be a \`number\` type, but the final value was: \`NaN\` (cast from the value \`\\"birthYear\\"\`).", + "message": "birthYear must be a \`number\` type, but the final value was: \`NaN\` (cast from the value \`"birthYear"\`).", "ref": undefined, "type": "typeError", "types": { - "typeError": "birthYear must be a \`number\` type, but the final value was: \`NaN\` (cast from the value \`\\"birthYear\\"\`).", + "typeError": "birthYear must be a \`number\` type, but the final value was: \`NaN\` (cast from the value \`"birthYear"\`).", }, }, "like": [ { "id": { - "message": "like[0].id must be a \`number\` type, but the final value was: \`NaN\` (cast from the value \`\\"z\\"\`).", + "message": "like[0].id must be a \`number\` type, but the final value was: \`NaN\` (cast from the value \`"z"\`).", "ref": undefined, "type": "typeError", "types": { - "typeError": "like[0].id must be a \`number\` type, but the final value was: \`NaN\` (cast from the value \`\\"z\\"\`).", + "typeError": "like[0].id must be a \`number\` type, but the final value was: \`NaN\` (cast from the value \`"z"\`).", }, }, "name": { @@ -234,7 +234,7 @@ exports[`yupResolver > should throw an error without inner property 1`] = ` { "errors": { "value": { - "message": "value must be a \`number\` type, but the final value was: \`NaN\` (cast from the value \`\\"\\"\`).", + "message": "value must be a \`number\` type, but the final value was: \`NaN\` (cast from the value \`""\`).", "ref": undefined, "type": "typeError", }, diff --git a/yup/src/__tests__/yup.ts b/yup/src/__tests__/yup.ts index 8d7750ef..5b33da3a 100644 --- a/yup/src/__tests__/yup.ts +++ b/yup/src/__tests__/yup.ts @@ -2,11 +2,11 @@ import * as yup from 'yup'; import { yupResolver } from '..'; import { - schema, - validData, fields, invalidData, + schema, schemaWithWhen, + validData, } from './__fixtures__/data'; const shouldUseNativeValidation = false; @@ -191,20 +191,22 @@ describe('yupResolver', () => { }); it('shoud validate a lazy schema with success', async () => { - const lazySchema = yup.lazy(() => yup.object().shape({ firstName: yup.string().optional() })); + const lazySchema = yup.lazy(() => + yup.object().shape({ firstName: yup.string().optional() }), + ); const schemaSpy = vi.spyOn(lazySchema, 'validate'); const schemaSyncSpy = vi.spyOn(lazySchema, 'validateSync'); - const result = await yupResolver(lazySchema, undefined,)( - { firstName: "resolver" }, + const result = await yupResolver(lazySchema, undefined)( + { firstName: 'resolver' }, undefined, { fields: { firstName: { ref: { name: 'firstName' }, name: 'firstName', - } + }, }, shouldUseNativeValidation, }, @@ -212,6 +214,6 @@ describe('yupResolver', () => { expect(schemaSpy).toHaveBeenCalledTimes(1); expect(schemaSyncSpy).not.toHaveBeenCalled(); - expect(result).toEqual({ errors: {}, values: { firstName: "resolver" } }); + expect(result).toEqual({ errors: {}, values: { firstName: 'resolver' } }); }); }); diff --git a/yup/src/yup.ts b/yup/src/yup.ts index 137af3f8..9aabf664 100644 --- a/yup/src/yup.ts +++ b/yup/src/yup.ts @@ -1,11 +1,11 @@ -import * as Yup from 'yup'; import { toNestErrors, validateFieldsNatively } from '@hookform/resolvers'; import { - appendErrors, FieldError, FieldValues, Resolver, + appendErrors, } from 'react-hook-form'; +import * as Yup from 'yup'; /** * Why `path!` ? because it could be `undefined` in some case diff --git a/zod/src/__tests__/Form-native-validation.tsx b/zod/src/__tests__/Form-native-validation.tsx index 76b9000b..3ac296f9 100644 --- a/zod/src/__tests__/Form-native-validation.tsx +++ b/zod/src/__tests__/Form-native-validation.tsx @@ -1,7 +1,7 @@ -import React from 'react'; -import { useForm } from 'react-hook-form'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; +import React from 'react'; +import { useForm } from 'react-hook-form'; import { z } from 'zod'; import { zodResolver } from '..'; diff --git a/zod/src/__tests__/Form.tsx b/zod/src/__tests__/Form.tsx index 39e5fc54..8b792c79 100644 --- a/zod/src/__tests__/Form.tsx +++ b/zod/src/__tests__/Form.tsx @@ -1,6 +1,6 @@ -import React from 'react'; import { render, screen } from '@testing-library/react'; import user from '@testing-library/user-event'; +import React from 'react'; import { useForm } from 'react-hook-form'; import { z } from 'zod'; import { zodResolver } from '..'; diff --git a/zod/src/__tests__/zod.ts b/zod/src/__tests__/zod.ts index 51698216..c272c809 100644 --- a/zod/src/__tests__/zod.ts +++ b/zod/src/__tests__/zod.ts @@ -1,5 +1,5 @@ import { zodResolver } from '..'; -import { schema, validData, invalidData, fields } from './__fixtures__/data'; +import { fields, invalidData, schema, validData } from './__fixtures__/data'; const shouldUseNativeValidation = false; diff --git a/zod/src/types.ts b/zod/src/types.ts index eae802ce..162e649d 100644 --- a/zod/src/types.ts +++ b/zod/src/types.ts @@ -1,4 +1,4 @@ -import { FieldValues, ResolverResult, ResolverOptions } from 'react-hook-form'; +import { FieldValues, ResolverOptions, ResolverResult } from 'react-hook-form'; import { z } from 'zod'; export type Resolver = >( diff --git a/zod/src/zod.ts b/zod/src/zod.ts index e1c94bbc..0cdfcb33 100644 --- a/zod/src/zod.ts +++ b/zod/src/zod.ts @@ -1,9 +1,10 @@ -import { appendErrors, FieldError, FieldErrors } from 'react-hook-form'; -import { z, ZodError } from 'zod'; import { toNestErrors, validateFieldsNatively } from '@hookform/resolvers'; +import { FieldError, FieldErrors, appendErrors } from 'react-hook-form'; +import { ZodError, z } from 'zod'; import type { Resolver } from './types'; -const isZodError = (error: any): error is ZodError => Array.isArray(error?.errors); +const isZodError = (error: any): error is ZodError => + Array.isArray(error?.errors); const parseErrorSchema = ( zodErrors: z.ZodIssue[],