diff --git a/.babel.cjs.json b/.babel.cjs.json deleted file mode 100644 index 6968743..0000000 --- a/.babel.cjs.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "plugins": [ - ["@effect/babel-plugin"], - ["@babel/transform-modules-commonjs"], - ["annotate-pure-calls"] - ] -} diff --git a/.babel.mjs.json b/.babel.mjs.json deleted file mode 100644 index b50cc32..0000000 --- a/.babel.mjs.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "plugins": [["@effect/babel-plugin"], ["annotate-pure-calls"]] -} diff --git a/.devcontainer.json b/.devcontainer.json deleted file mode 100644 index 4b13a55..0000000 --- a/.devcontainer.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "image": "mcr.microsoft.com/vscode/devcontainers/typescript-node:16", - "customizations": { - "vscode": { - "extensions": [ - "dbaeumer.vscode-eslint" - ] - } - }, - "initializeCommand": "npm install -g pnpm && pnpm install && pnpm run build" -} diff --git a/.eslintrc.cjs b/.eslintrc.cjs index edb09c7..f162842 100644 --- a/.eslintrc.cjs +++ b/.eslintrc.cjs @@ -1,33 +1,33 @@ /* eslint-disable no-undef */ module.exports = { - ignorePatterns: ["build", "dist", "*.mjs", "docs", "*.md"], + ignorePatterns: ["dist", "build", "*.md"], parser: "@typescript-eslint/parser", parserOptions: { ecmaVersion: 2018, - sourceType: "module", + sourceType: "module" }, settings: { "import/parsers": { - "@typescript-eslint/parser": [".ts", ".tsx"], + "@typescript-eslint/parser": [".ts", ".tsx"] }, "import/resolver": { typescript: { - alwaysTryTypes: true, - }, - }, + alwaysTryTypes: true + } + } }, extends: [ "eslint:recommended", "plugin:@typescript-eslint/eslint-recommended", "plugin:@typescript-eslint/recommended", - "plugin:@repo-tooling/dprint/recommended", + "plugin:@effect/recommended" ], plugins: [ "deprecation", "import", "sort-destructure-keys", "simple-import-sort", - "codegen", + "codegen" ], rules: { "codegen/codegen": "error", @@ -45,13 +45,12 @@ module.exports = { "import/no-duplicates": "error", "import/no-unresolved": "off", "import/order": "off", - "linebreak-style": ["error", "unix"], "simple-import-sort/imports": "off", "sort-destructure-keys/sort-destructure-keys": "error", "deprecation/deprecation": "off", "@typescript-eslint/array-type": [ "warn", - { default: "generic", readonly: "generic" }, + { default: "generic", readonly: "generic" } ], "@typescript-eslint/member-delimiter-style": 0, "@typescript-eslint/no-non-null-assertion": "off", @@ -63,8 +62,8 @@ module.exports = { "error", { argsIgnorePattern: "^_", - varsIgnorePattern: "^_", - }, + varsIgnorePattern: "^_" + } ], "@typescript-eslint/ban-ts-comment": "off", "@typescript-eslint/camelcase": "off", @@ -74,7 +73,7 @@ module.exports = { "@typescript-eslint/no-array-constructor": "off", "@typescript-eslint/no-use-before-define": "off", "@typescript-eslint/no-namespace": "off", - "@repo-tooling/dprint/dprint": [ + "@effect/dprint": [ "error", { config: { @@ -84,9 +83,9 @@ module.exports = { quoteStyle: "alwaysDouble", trailingCommas: "never", operatorPosition: "maintain", - "arrowFunction.useParentheses": "force", - }, - }, - ], - }, -}; + "arrowFunction.useParentheses": "force" + } + } + ] + } +} diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml index 0e20293..1b799d6 100644 --- a/.github/workflows/pr.yml +++ b/.github/workflows/pr.yml @@ -49,4 +49,4 @@ jobs: - run: pnpm run circular - run: pnpm run test --coverage - run: pnpm run lint - - run: pnpm run docs + - run: pnpm run docgen diff --git a/.gitpod.yml b/.gitpod.yml deleted file mode 100644 index 134a68a..0000000 --- a/.gitpod.yml +++ /dev/null @@ -1,9 +0,0 @@ ---- -tasks: - - init: npm install -g pnpm && pnpm install && pnpm build -github: - prebuilds: - addCheck: true -vscode: - extensions: - - dbaeumer.vscode-eslint diff --git a/.madgerc b/.madgerc new file mode 100644 index 0000000..b407c6b --- /dev/null +++ b/.madgerc @@ -0,0 +1,7 @@ +{ + "detectiveOptions": { + "ts": { + "skipTypeImports": true + } + } +} diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml deleted file mode 100644 index 5fe9379..0000000 --- a/.pre-commit-config.yaml +++ /dev/null @@ -1,29 +0,0 @@ ---- -repos: - - repo: https://github.com/pre-commit/pre-commit-hooks.git - rev: v4.4.0 - hooks: - - id: no-commit-to-branch - - id: check-merge-conflict - - id: check-symlinks - - id: check-json - - id: check-yaml - args: [--allow-multiple-documents] - - id: check-toml - - id: end-of-file-fixer - - id: mixed-line-ending - - id: trailing-whitespace - - - repo: https://github.com/jumanjihouse/pre-commit-hook-yamlfmt.git - rev: 0.2.3 - hooks: - - id: yamlfmt - exclude: ^pnpm-lock.yaml$ - args: - - --mapping - - '2' - - --sequence - - '4' - - --offset - - '2' - - --explicit_start diff --git a/docgen.json b/docgen.json index ce15011..e64a092 100644 --- a/docgen.json +++ b/docgen.json @@ -1,28 +1,3 @@ { - "exclude": ["src/internal_effect_untraced/**/*.ts"], - "theme": "mikearnaldi/just-the-docs", - "parseCompilerOptions": { - "strict": true, - "noEmit": true, - "target": "ES2021", - "lib": ["ES2021"], - "paths": { - "@effect/parser": ["./src/index.ts"], - "@effect/parser/test/*": ["./test/*"], - "@effect/parser/examples/*": ["./examples/*"], - "@effect/parser/*": ["./src/*"] - } - }, - "examplesCompilerOptions": { - "strict": true, - "noEmit": true, - "target": "ES2021", - "lib": ["ES2021"], - "paths": { - "@effect/parser": ["../../src/index.ts"], - "@effect/parser/test/*": ["../../test/*"], - "@effect/parser/examples/*": ["../../examples/*"], - "@effect/parser/*": ["../../src/*"] - } - } + "exclude": ["src/internal/**/*.ts"] } diff --git a/docs/_config.yml b/docs/_config.yml index cdc426a..67fc7a5 100644 --- a/docs/_config.yml +++ b/docs/_config.yml @@ -1,10 +1,9 @@ ---- remote_theme: mikearnaldi/just-the-docs + +# Enable or disable the site search search_enabled: true + +# Aux links for the upper right navigation aux_links: - Docs: - - //effect-ts.github.io/io - API Reference: - - //effect-ts.github.io/io/docs/modules - GitHub: - - //github.com/effect-ts/io +'@effect/parser on GitHub': + - 'https://github.com/Effect-TS/parser' \ No newline at end of file diff --git a/docs/index.md b/docs/index.md index 4ee0bec..d77a441 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,9 +1,4 @@ --- -title: Introduction -permalink: / +title: Home nav_order: 1 -has_children: false -has_toc: false --- - -## Work In Progress diff --git a/docs/modules/BitSet.ts.md b/docs/modules/BitSet.ts.md index 3ccb192..18c42b2 100644 --- a/docs/modules/BitSet.ts.md +++ b/docs/modules/BitSet.ts.md @@ -15,7 +15,6 @@ Added in v1.0.0 - [constructors](#constructors) - [allChars](#allchars) - [fromIterable](#fromiterable) - - [make](#make) - [models](#models) - [BitSet (interface)](#bitset-interface) @@ -43,16 +42,6 @@ export declare const fromIterable: (bits: Iterable) => BitSet Added in v1.0.0 -## make - -**Signature** - -```ts -export declare const make: (...bits: ReadonlyArray) => BitSet -``` - -Added in v1.0.0 - # models ## BitSet (interface) diff --git a/docs/modules/Target/Chunk.ts.md b/docs/modules/ChunkTarget.ts.md similarity index 58% rename from docs/modules/Target/Chunk.ts.md rename to docs/modules/ChunkTarget.ts.md index a902404..ddefcd8 100644 --- a/docs/modules/Target/Chunk.ts.md +++ b/docs/modules/ChunkTarget.ts.md @@ -1,10 +1,10 @@ --- -title: Target/Chunk.ts -nav_order: 8 +title: ChunkTarget.ts +nav_order: 2 parent: Modules --- -## Chunk overview +## ChunkTarget overview Added in v1.0.0 @@ -16,6 +16,9 @@ Added in v1.0.0 - [make](#make) - [models](#models) - [ChunkTarget (interface)](#chunktarget-interface) +- [utils](#utils) + - [ChunkTarget (namespace)](#chunktarget-namespace) + - [Capture (interface)](#capture-interface) --- @@ -42,3 +45,21 @@ export interface ChunkTarget extends Target, ``` Added in v1.0.0 + +# utils + +## ChunkTarget (namespace) + +Added in v1.0.0 + +### Capture (interface) + +**Signature** + +```ts +export interface Capture { + readonly subBuilder: Array +} +``` + +Added in v1.0.0 diff --git a/docs/modules/Parser.ts.md b/docs/modules/Parser.ts.md index 786af38..b9f4481 100644 --- a/docs/modules/Parser.ts.md +++ b/docs/modules/Parser.ts.md @@ -1,6 +1,6 @@ --- title: Parser.ts -nav_order: 2 +nav_order: 4 parent: Modules --- @@ -24,6 +24,7 @@ Added in v1.0.0 - [filter](#filter) - [flatMap](#flatmap) - [flatten](#flatten) + - [flattenNonEmpty](#flattennonempty) - [manualBacktracking](#manualbacktracking) - [map](#map) - [mapError](#maperror) @@ -52,18 +53,20 @@ Added in v1.0.0 - [anything](#anything) - [char](#char) - [charIn](#charin) + - [charNot](#charnot) + - [charNotIn](#charnotin) - [digit](#digit) - [end](#end) - [fail](#fail) - [ignoreRest](#ignorerest) - [index](#index) - [letter](#letter) - - [notChar](#notchar) - [regex](#regex) - [regexChar](#regexchar) - [regexDiscard](#regexdiscard) - [string](#string) - [succeed](#succeed) + - [suspend](#suspend) - [unit](#unit) - [unsafeRegex](#unsaferegex) - [unsafeRegexChar](#unsaferegexchar) @@ -75,8 +78,12 @@ Added in v1.0.0 - [models](#models) - [Parser (interface)](#parser-interface) - [symbols](#symbols) - - [ParserTypeId](#parsertypeid) - - [ParserTypeId (type alias)](#parsertypeid-type-alias) + - [TypeId](#typeid) + - [TypeId (type alias)](#typeid-type-alias) +- [utils](#utils) + - [Parser (namespace)](#parser-namespace) + - [Variance (interface)](#variance-interface) + - [Implementation (type alias)](#implementation-type-alias) --- @@ -84,15 +91,15 @@ Added in v1.0.0 ## as -Ignores the parser's successful result and result in 'result' instead +Transforms a `Syntax` that results in `void` in a `Syntax` that results in `value` **Signature** ```ts export declare const as: { - (result: Result2): ( - self: Parser - ) => Parser + ( + result: Result2 + ): (self: Parser) => Parser (self: Parser, result: Result2): Parser } ``` @@ -101,7 +108,7 @@ Added in v1.0.0 ## asUnit -Maps the result of this parser to the unit value. +Transforms a `Syntax` that results in `from` in a `Syntax` that results in `void` **Signature** @@ -226,9 +233,10 @@ specified predicate is `false`, the parser fails with the given error. ```ts export declare const filter: { - (predicate: Predicate, error: Error2): ( - self: Parser - ) => Parser + ( + predicate: Predicate, + error: Error2 + ): (self: Parser) => Parser ( self: Parser, predicate: Predicate, @@ -247,9 +255,9 @@ Determines the continuation of the parser by the result of this parser. ```ts export declare const flatMap: { - (f: (result: Result) => Parser): ( - self: Parser - ) => Parser + ( + f: (result: Result) => Parser + ): (self: Parser) => Parser ( self: Parser, f: (result: Result) => Parser @@ -271,6 +279,20 @@ export declare const flatten: (self: Parser( + self: Parser> +) => Parser +``` + +Added in v1.0.0 + ## manualBacktracking Disables auto-backtracking for this parser. @@ -293,14 +315,13 @@ Maps the parser's successful result with the specified function. ```ts export declare const map: { - (f: (result: Result) => Result2): ( - self: Parser - ) => Parser - (self: Parser, f: (result: Result) => Result2): Parser< - Input, - Error, - Result2 - > + ( + f: (result: Result) => Result2 + ): (self: Parser) => Parser + ( + self: Parser, + f: (result: Result) => Result2 + ): Parser } ``` @@ -314,14 +335,13 @@ Maps the over the error channel of a parser with the specified function. ```ts export declare const mapError: { - (f: (error: Error) => Error2): ( - self: Parser - ) => Parser - (self: Parser, f: (error: Error) => Error2): Parser< - Input, - Error2, - Result - > + ( + f: (error: Error) => Error2 + ): (self: Parser) => Parser + ( + self: Parser, + f: (error: Error) => Error2 + ): Parser } ``` @@ -388,7 +408,9 @@ If auto-backtracking is on, this parser will backtrack before trying `that` pars ```ts export declare const orElse: { - (that: LazyArg>): ( + ( + that: LazyArg> + ): ( self: Parser ) => Parser ( @@ -418,7 +440,9 @@ parser. ```ts export declare const orElseEither: { - (that: LazyArg>): ( + ( + that: LazyArg> + ): ( self: Parser ) => Parser> ( @@ -474,9 +498,9 @@ Repeats this parser until the given `stopCondition` parser succeeds. ```ts export declare const repeatUntil: { - (stopCondition: Parser): ( - self: Parser - ) => Parser> + ( + stopCondition: Parser + ): (self: Parser) => Parser> ( self: Parser, stopCondition: Parser @@ -495,9 +519,9 @@ element, the `separator` parser succeeds. ```ts export declare const repeatWithSeparator: { - (separator: Parser): ( - self: Parser - ) => Parser> + ( + separator: Parser + ): (self: Parser) => Parser> ( self: Parser, separator: Parser @@ -516,7 +540,9 @@ the `separator` parser succeeds. ```ts export declare const repeatWithSeparator1: { - (separator: Parser): ( + ( + separator: Parser + ): ( self: Parser ) => Parser> ( @@ -552,9 +578,9 @@ result. ```ts export declare const surroundedBy: { - (other: Parser): ( - self: Parser - ) => Parser + ( + other: Parser + ): (self: Parser) => Parser ( self: Parser, other: Parser @@ -573,9 +599,9 @@ fails or produces a new result value. ```ts export declare const transformEither: { - (f: (result: Result) => Either): ( - self: Parser - ) => Parser + ( + f: (result: Result) => Either + ): (self: Parser) => Parser ( self: Parser, f: (result: Result) => Either @@ -595,14 +621,13 @@ value `None`. ```ts export declare const transformOption: { - (pf: (result: Result) => Option): ( - self: Parser - ) => Parser, Result2> - (self: Parser, pf: (result: Result) => Option): Parser< - Input, - Option, - Result2 - > + ( + pf: (result: Result) => Option + ): (self: Parser) => Parser, Result2> + ( + self: Parser, + pf: (result: Result) => Option + ): Parser, Result2> } ``` @@ -617,7 +642,9 @@ the result is a pair of the results. ```ts export declare const zip: { - (that: Parser): ( + ( + that: Parser + ): ( self: Parser ) => Parser ( @@ -638,9 +665,9 @@ the result is the result of this parser. Otherwise the parser fails. ```ts export declare const zipLeft: { - (that: Parser): ( - self: Parser - ) => Parser + ( + that: Parser + ): (self: Parser) => Parser ( self: Parser, that: Parser @@ -659,9 +686,9 @@ the result is the result of `that` parser. Otherwise the parser fails. ```ts export declare const zipRight: { - (that: Parser): ( - self: Parser - ) => Parser + ( + that: Parser + ): (self: Parser) => Parser ( self: Parser, that: Parser @@ -771,6 +798,32 @@ export declare const charIn: (chars: Iterable) => Parser(char: string, error?: Error | undefined) => Parser +``` + +Added in v1.0.0 + +## charNotIn + +Constructs a `Parser` that consumes a single character and succeeds with it +if it is **NOT** one of the specified characters. + +**Signature** + +```ts +export declare const charNotIn: (chars: Iterable) => Parser +``` + +Added in v1.0.0 + ## digit Constructs a `Parser` of a single digit. @@ -846,19 +899,6 @@ export declare const letter: Parser Added in v1.0.0 -## notChar - -Constructs a `Parser` that consumes a single character and fails with the -specified `error` if it matches the specified character. - -**Signature** - -```ts -export declare const notChar: (char: string, error?: Error | undefined) => Parser -``` - -Added in v1.0.0 - ## regex Constructs a `Parser` that executes a regular expression on the input and @@ -927,6 +967,20 @@ export declare const succeed: (result: Result) => Parser( + parser: LazyArg> +) => Parser +``` + +Added in v1.0.0 + ## unit Constructs a `Parser` that does not consume the input and results in unit. @@ -1019,9 +1073,10 @@ implementation. ```ts export declare const parseStringWith: { - (input: string, implementation: Parser.Implementation): ( - self: Parser - ) => Either, Result> + ( + input: string, + implementation: Parser.Implementation + ): (self: Parser) => Either, Result> ( self: Parser, input: string, @@ -1064,22 +1119,54 @@ Added in v1.0.0 # symbols -## ParserTypeId +## TypeId + +**Signature** + +```ts +export declare const TypeId: typeof TypeId +``` + +Added in v1.0.0 + +## TypeId (type alias) **Signature** ```ts -export declare const ParserTypeId: typeof ParserTypeId +export type TypeId = typeof TypeId +``` + +Added in v1.0.0 + +# utils + +## Parser (namespace) + +Added in v1.0.0 + +### Variance (interface) + +**Signature** + +```ts +export interface Variance { + readonly [TypeId]: { + readonly _Input: Types.Contravariant + readonly _Error: Types.Covariant + readonly _Result: Types.Covariant + } +} ``` Added in v1.0.0 -## ParserTypeId (type alias) +### Implementation (type alias) **Signature** ```ts -export type ParserTypeId = typeof ParserTypeId +export type Implementation = "stack-safe" | "recursive" ``` Added in v1.0.0 diff --git a/docs/modules/ParserError.ts.md b/docs/modules/ParserError.ts.md index d2c01d0..8220211 100644 --- a/docs/modules/ParserError.ts.md +++ b/docs/modules/ParserError.ts.md @@ -1,6 +1,6 @@ --- title: ParserError.ts -nav_order: 3 +nav_order: 5 parent: Modules --- @@ -36,8 +36,11 @@ Added in v1.0.0 - [isUnexpectedEndOfInput](#isunexpectedendofinput) - [isUnknownFailure](#isunknownfailure) - [symbols](#symbols) - - [ParserErrorTypeId](#parsererrortypeid) - - [ParserErrorTypeId (type alias)](#parsererrortypeid-type-alias) + - [TypeId](#typeid) + - [TypeId (type alias)](#typeid-type-alias) +- [utils](#utils) + - [ParserError (namespace)](#parsererror-namespace) + - [Proto (interface)](#proto-interface) --- @@ -159,7 +162,7 @@ Every failed branch's failure is preserved. ```ts export interface AllBranchesFailed extends ParserError.Proto { - readonly _tag: 'AllBranchesFailed' + readonly _tag: "AllBranchesFailed" /** * The parser error from the left branch of parsing. */ @@ -181,7 +184,7 @@ Represents a custom, user-defined parser error of type `Error`. ```ts export interface Failure extends ParserError.Proto { - readonly _tag: 'Failure' + readonly _tag: "Failure" /** * The stack of named parsers until reaching the failure. */ @@ -208,7 +211,7 @@ input but it does not consume all input. ```ts export interface NotConsumedAll extends ParserError.Proto { - readonly _tag: 'NotConsumedAll' + readonly _tag: "NotConsumedAll" /** * The last failure encountered in the `Parser`, if any. */ @@ -244,7 +247,7 @@ is done consuming input. ```ts export interface UnexpectedEndOfInput extends ParserError.Proto { - readonly _tag: 'UnexpectedEndOfInput' + readonly _tag: "UnexpectedEndOfInput" } ``` @@ -261,7 +264,7 @@ for example if the unsafe regex variants encounter an error. ```ts export interface UnknownFailure extends ParserError.Proto { - readonly _tag: 'UnknownFailure' + readonly _tag: "UnknownFailure" /** * The stack of named parsers until reaching the failure. */ @@ -351,22 +354,40 @@ Added in v1.0.0 # symbols -## ParserErrorTypeId +## TypeId **Signature** ```ts -export declare const ParserErrorTypeId: typeof ParserErrorTypeId +export declare const TypeId: typeof TypeId ``` Added in v1.0.0 -## ParserErrorTypeId (type alias) +## TypeId (type alias) **Signature** ```ts -export type ParserErrorTypeId = typeof ParserErrorTypeId +export type TypeId = typeof TypeId +``` + +Added in v1.0.0 + +# utils + +## ParserError (namespace) + +Added in v1.0.0 + +### Proto (interface) + +**Signature** + +```ts +export interface Proto { + readonly [TypeId]: TypeId +} ``` Added in v1.0.0 diff --git a/docs/modules/Printer.ts.md b/docs/modules/Printer.ts.md index 7418667..92b6f26 100644 --- a/docs/modules/Printer.ts.md +++ b/docs/modules/Printer.ts.md @@ -1,6 +1,6 @@ --- title: Printer.ts -nav_order: 4 +nav_order: 6 parent: Modules --- @@ -20,6 +20,7 @@ Added in v1.0.0 - [contramapTo](#contramapto) - [filterInput](#filterinput) - [flatten](#flatten) + - [flattenNonEmpty](#flattennonempty) - [mapError](#maperror) - [optional](#optional) - [orElse](#orelse) @@ -68,8 +69,11 @@ Added in v1.0.0 - [models](#models) - [Printer (interface)](#printer-interface) - [symbols](#symbols) - - [PrinterTypeId](#printertypeid) - - [PrinterTypeId (type alias)](#printertypeid-type-alias) + - [TypeId](#typeid) + - [TypeId (type alias)](#typeid-type-alias) +- [utils](#utils) + - [Printer (namespace)](#printer-namespace) + - [Variance (interface)](#variance-interface) --- @@ -77,20 +81,21 @@ Added in v1.0.0 ## asPrinted -Ignores the printer's result and input and use `matches` and `from` instead. +Transforms a `Syntax` that results in `from` in a `Syntax` that results in `value` **Signature** ```ts export declare const asPrinted: { - (matches: Input2, from: Input): ( - self: Printer - ) => Printer - (self: Printer, matches: Input2, from: Input): Printer< - Input2, - Error, - Output - > + ( + matches: Input2, + from: Input + ): (self: Printer) => Printer + ( + self: Printer, + matches: Input2, + from: Input + ): Printer } ``` @@ -105,11 +110,10 @@ be printed. ```ts export declare const between: { - (left: Printer, right: Printer): < - Input, - Error, - Output - >( + ( + left: Printer, + right: Printer + ): ( self: Printer ) => Printer ( @@ -130,14 +134,13 @@ Maps the printer's input value with the specified function. ```ts export declare const contramap: { - (from: (value: Input2) => Input): ( - self: Printer - ) => Printer - (self: Printer, from: (value: Input2) => Input): Printer< - Input2, - Error, - Output - > + ( + from: (value: Input2) => Input + ): (self: Printer) => Printer + ( + self: Printer, + from: (value: Input2) => Input + ): Printer } ``` @@ -152,9 +155,9 @@ an `Either`. ```ts export declare const contramapEither: { - (from: (value: Input2) => Either): ( - self: Printer - ) => Printer + ( + from: (value: Input2) => Either + ): (self: Printer) => Printer ( self: Printer, from: (value: Input2) => Either @@ -176,9 +179,10 @@ combined. ```ts export declare const contramapTo: { - (from: (value: Input2) => Option, error: Error2): ( - self: Printer - ) => Printer + ( + from: (value: Input2) => Option, + error: Error2 + ): (self: Printer) => Printer ( self: Printer, from: (value: Input2) => Option, @@ -198,9 +202,10 @@ case it evaluates to `false`, fails with the provided `error`. ```ts export declare const filterInput: { - (condition: Predicate, error: Error2): ( - self: Printer - ) => Printer + ( + condition: Predicate, + error: Error2 + ): (self: Printer) => Printer ( self: Printer, condition: Predicate, @@ -225,6 +230,20 @@ export declare const flatten: ( Added in v1.0.0 +## flattenNonEmpty + +Concatenates an input `Chunk` to a `string` to be printed. + +**Signature** + +```ts +export declare const flattenNonEmpty: ( + self: Printer, Error, Output> +) => Printer +``` + +Added in v1.0.0 + ## mapError Maps over the error channel with the specified function. @@ -233,14 +252,13 @@ Maps over the error channel with the specified function. ```ts export declare const mapError: { - (f: (error: Error) => Error2): ( - self: Printer - ) => Printer - (self: Printer, f: (error: Error) => Error2): Printer< - Input, - Error2, - Output - > + ( + f: (error: Error) => Error2 + ): (self: Printer) => Printer + ( + self: Printer, + f: (error: Error) => Error2 + ): Printer } ``` @@ -269,7 +287,9 @@ instead. ```ts export declare const orElse: { - (that: LazyArg>): ( + ( + that: LazyArg> + ): ( self: Printer ) => Printer ( @@ -290,7 +310,9 @@ Prints `self` if the input is `Left`, or print `that` if the input is ```ts export declare const orElseEither: { - (that: LazyArg>): ( + ( + that: LazyArg> + ): ( self: Printer ) => Printer, Error2 | Error, Output2 | Output> ( @@ -341,7 +363,9 @@ Repeat this printer for each element of the input chunk, verifying the ```ts export declare const repeatUntil: { - (stopCondition: Printer): ( + ( + stopCondition: Printer + ): ( self: Printer ) => Printer, Error2 | Error, Output2 | Output> ( @@ -364,7 +388,9 @@ The input chunk may not be empty. ```ts export declare const repeatWithSeparator: { - (separator: Printer): ( + ( + separator: Printer + ): ( self: Printer ) => Printer, Error2 | Error, Output2 | Output> ( @@ -387,7 +413,9 @@ The input chunk **must not** be empty. ```ts export declare const repeatWithSeparator1: { - (separator: Printer): ( + ( + separator: Printer + ): ( self: Printer ) => Printer, Error2 | Error, Output2 | Output> ( @@ -408,9 +436,9 @@ be printed. ```ts export declare const surroundedBy: { - (other: Printer): ( - self: Printer - ) => Printer + ( + other: Printer + ): (self: Printer) => Printer ( self: Printer, other: Printer @@ -430,14 +458,13 @@ Maps the printer's input value with `from`. ```ts export declare const transformOption: { - (from: (input: Input2) => Option): ( - self: Printer - ) => Printer, Output> - (self: Printer, from: (input: Input2) => Option): Printer< - Input2, - Option, - Output - > + ( + from: (input: Input2) => Option + ): (self: Printer) => Printer, Output> + ( + self: Printer, + from: (input: Input2) => Option + ): Printer, Output> } ``` @@ -452,7 +479,9 @@ right value with `that`. The result is a pair of both printer's results. ```ts export declare const zip: { - (that: Printer): ( + ( + that: Printer + ): ( self: Printer ) => Printer ( @@ -473,9 +502,9 @@ result is the `self` printer's result. ```ts export declare const zipLeft: { - (that: Printer): ( - self: Printer - ) => Printer + ( + that: Printer + ): (self: Printer) => Printer ( self: Printer, that: Printer @@ -494,9 +523,9 @@ result is `that` printer's result. ```ts export declare const zipRight: { - (that: Printer): ( - self: Printer - ) => Printer + ( + that: Printer + ): (self: Printer) => Printer ( self: Printer, that: Printer @@ -611,7 +640,7 @@ Added in v1.0.0 A `Printer` that emits the input if it is equals to the specified `value`, otherwise fails with the specified `error` (if provided). -**Note**: equality is checked using Equal.equals from `@effect/data`. +**Note**: equality is checked using Equal.equals from `effect`. **Signature** @@ -629,7 +658,7 @@ Added in v1.0.0 A `Printer` that emits the input unless it is equal to `value`, in which case it fails with the specified `error` (if provided). -**Note**: equality is checked using Equal.equals from `@effect/data`. +**Note**: equality is checked using Equal.equals from `effect`. **Signature** @@ -887,9 +916,10 @@ Print the specified input value to the given `target` implementation. ```ts export declare const printToTarget: { - >(input: Input, target: T): ( - self: Printer - ) => Either + >( + input: Input, + target: T + ): (self: Printer) => Either >( self: Printer, input: Input, @@ -920,22 +950,44 @@ Added in v1.0.0 # symbols -## PrinterTypeId +## TypeId + +**Signature** + +```ts +export declare const TypeId: typeof TypeId +``` + +Added in v1.0.0 + +## TypeId (type alias) **Signature** ```ts -export declare const PrinterTypeId: typeof PrinterTypeId +export type TypeId = typeof TypeId ``` Added in v1.0.0 -## PrinterTypeId (type alias) +# utils + +## Printer (namespace) + +Added in v1.0.0 + +### Variance (interface) **Signature** ```ts -export type PrinterTypeId = typeof PrinterTypeId +export interface Variance { + readonly [TypeId]: { + readonly _Input: Types.Contravariant + readonly _Error: Types.Covariant + readonly _Output: Types.Covariant + } +} ``` Added in v1.0.0 diff --git a/docs/modules/Regex.ts.md b/docs/modules/Regex.ts.md index 06f1eea..4f8bd3f 100644 --- a/docs/modules/Regex.ts.md +++ b/docs/modules/Regex.ts.md @@ -1,6 +1,6 @@ --- title: Regex.ts -nav_order: 5 +nav_order: 7 parent: Modules --- @@ -48,9 +48,12 @@ Added in v1.0.0 - [Sequence (interface)](#sequence-interface) - [Succeed (interface)](#succeed-interface) - [symbols](#symbols) - - [RegexTypeId](#regextypeid) - - [RegexTypeId (type alias)](#regextypeid-type-alias) + - [TypeId](#typeid) + - [TypeId (type alias)](#typeid-type-alias) - [utils](#utils) + - [Regex (namespace)](#regex-namespace) + - [Compiled (interface)](#compiled-interface) + - [Proto (interface)](#proto-interface) - [needMoreInput](#needmoreinput) - [notMatched](#notmatched) @@ -60,8 +63,8 @@ Added in v1.0.0 ## and -Composes this regex with the specified regex using intersection, returning -a regex that will match a prefix only if both this and the specified regex match it. +Composes this `Regex` with the specified `Regex` using intersection, +returning a `Regex` that will match a prefix only if both this and the specified one match it. **Signature** @@ -73,7 +76,7 @@ Added in v1.0.0 ## atLeast -Returns a new regex that matches at least `min` occurrences of this regex. +Returns a new `Regex` that matches at least `min` occurrences of this `Regex`. **Signature** @@ -85,7 +88,7 @@ Added in v1.0.0 ## atMost -Returns a new regex that matches at most `max` occurrences of this regex. +Returns a new `Regex` that matches at most `max` occurrences of this `Regex`. **Signature** @@ -97,8 +100,8 @@ Added in v1.0.0 ## between -Returns a new regex that matches between `min` and `max` occurrences of this -regex. +Returns a new `Regex` that matches between `min` and `max` occurrences of this +`Regex`. **Signature** @@ -126,8 +129,8 @@ Added in v1.0.0 ## or -Composes this regex with the specified regex using union, returning a regex -that will match a prefix only if either this or the specified regex match it. +Composes this `Regex` with the specified `Regex` using union, +returning a `Regex` that will match a prefix only if either this or the specified one matches it. **Signature** @@ -139,8 +142,8 @@ Added in v1.0.0 ## sequence -Sequentially composes this regex with the specified regex, returning a -regex that will first match this one, and then match the specified regex. +Composes this `Regex` with the specified `Regex` sequentially, +returning a `Regex` that will match this first, and then the specified one. **Signature** @@ -154,7 +157,7 @@ Added in v1.0.0 ## alphaNumerics -A regex that matches at least one letter or digit character. +A `Regex` that matches at least one letter or digit character. **Signature** @@ -166,7 +169,7 @@ Added in v1.0.0 ## anyAlphaNumeric -A regex that matches a single letter or digit character. +A `Regex` that matches a single letter or digit character. **Signature** @@ -178,7 +181,7 @@ Added in v1.0.0 ## anyChar -A regex that matches any single character. +A `Regex` that matches any single character. **Signature** @@ -190,7 +193,7 @@ Added in v1.0.0 ## anyDigit -A regex that matches any single digit character. +A `Regex` that matches any single digit character. **Signature** @@ -202,7 +205,7 @@ Added in v1.0.0 ## anyLetter -A regex that matches any single letter character. +A `Regex` that matches any single letter character. **Signature** @@ -214,7 +217,7 @@ Added in v1.0.0 ## anyWhitespace -A regex that matches any single whitespace character. +A `Regex` that matches any single whitespace character. **Signature** @@ -226,7 +229,7 @@ Added in v1.0.0 ## char -A regex that matches the specified character. +A `Regex` that matches the specified character. **Signature** @@ -238,7 +241,7 @@ Added in v1.0.0 ## charIn -A regex that matches one of the specified characters. +A `Regex` that matches one of the specified characters. **Signature** @@ -250,7 +253,7 @@ Added in v1.0.0 ## charNotIn -A regex that matches any character except of the specified ones +A `Regex` that matches any character except for the specified ones. **Signature** @@ -262,7 +265,7 @@ Added in v1.0.0 ## digits -A regex that matches one or more digit characters. +A `Regex` that matches one or more digit characters. **Signature** @@ -274,7 +277,7 @@ Added in v1.0.0 ## empty -A regex that matches the empty string, which will always succeed. +A `Regex` that matches the empty string, which will always succeed. **Signature** @@ -286,7 +289,7 @@ Added in v1.0.0 ## letters -A regex that matches any one or more letter characters. +A `Regex` that matches one or more letter characters. **Signature** @@ -310,7 +313,7 @@ Added in v1.0.0 ## whitespace -A regex that matches zero or more whitespace characters. +A `Regex` that matches zero or more whitespace characters. **Signature** @@ -324,7 +327,7 @@ Added in v1.0.0 ## compile -Compiles the regex to a form that allows efficient execution on chunks of +Compiles the `Regex` to a form that allows efficient execution on chunks of characters. **Signature** @@ -357,7 +360,7 @@ Added in v1.0.0 ```ts export interface And extends Regex.Proto { - readonly _tag: 'And' + readonly _tag: "And" readonly left: Regex readonly right: Regex } @@ -371,7 +374,7 @@ Added in v1.0.0 ```ts export interface OneOf extends Regex.Proto { - readonly _tag: 'OneOf' + readonly _tag: "OneOf" readonly bitset: BitSet } ``` @@ -384,7 +387,7 @@ Added in v1.0.0 ```ts export interface Or extends Regex.Proto { - readonly _tag: 'Or' + readonly _tag: "Or" readonly left: Regex readonly right: Regex } @@ -410,7 +413,7 @@ Added in v1.0.0 ```ts export interface Repeat extends Regex.Proto { - readonly _tag: 'Repeat' + readonly _tag: "Repeat" readonly regex: Regex readonly min: Option readonly max: Option @@ -425,7 +428,7 @@ Added in v1.0.0 ```ts export interface Sequence extends Regex.Proto { - readonly _tag: 'Sequence' + readonly _tag: "Sequence" readonly left: Regex readonly right: Regex } @@ -439,7 +442,7 @@ Added in v1.0.0 ```ts export interface Succeed extends Regex.Proto { - readonly _tag: 'Succeed' + readonly _tag: "Succeed" } ``` @@ -447,28 +450,67 @@ Added in v1.0.0 # symbols -## RegexTypeId +## TypeId **Signature** ```ts -export declare const RegexTypeId: typeof RegexTypeId +export declare const TypeId: typeof TypeId ``` Added in v1.0.0 -## RegexTypeId (type alias) +## TypeId (type alias) **Signature** ```ts -export type RegexTypeId = typeof RegexTypeId +export type TypeId = typeof TypeId ``` Added in v1.0.0 # utils +## Regex (namespace) + +Added in v1.0.0 + +### Compiled (interface) + +Represents a compiled regular expression. + +**Signature** + +```ts +export interface Compiled { + /** + * Tests the compiled regex against the specified character sequence. + * + * Returns the new index into the string. + */ + test(index: number, chars: string): number + /** + * Determines if the compiled regex matches the specified string. + */ + matches(string: string): boolean +} +``` + +Added in v1.0.0 + +### Proto (interface) + +**Signature** + +```ts +export interface Proto { + readonly [TypeId]: TypeId +} +``` + +Added in v1.0.0 + ## needMoreInput The result of testing a `Regex` against an input value where the input value diff --git a/docs/modules/Syntax.ts.md b/docs/modules/Syntax.ts.md index d623167..530461d 100644 --- a/docs/modules/Syntax.ts.md +++ b/docs/modules/Syntax.ts.md @@ -1,6 +1,6 @@ --- title: Syntax.ts -nav_order: 6 +nav_order: 8 parent: Modules --- @@ -17,12 +17,14 @@ Added in v1.0.0 - [asPrinted](#asprinted) - [asUnit](#asunit) - [atLeast](#atleast) + - [atMost](#atmost) - [autoBacktracking](#autobacktracking) - [backtrack](#backtrack) - [between](#between) - [captureString](#capturestring) - [filter](#filter) - [flatten](#flatten) + - [flattenNonEmpty](#flattennonempty) - [manualBacktracking](#manualbacktracking) - [mapError](#maperror) - [named](#named) @@ -50,6 +52,7 @@ Added in v1.0.0 - [anything](#anything) - [char](#char) - [charIn](#charin) + - [charNot](#charnot) - [charNotIn](#charnotin) - [digit](#digit) - [end](#end) @@ -57,12 +60,12 @@ Added in v1.0.0 - [filterChar](#filterchar) - [index](#index) - [letter](#letter) - - [notChar](#notchar) - [regex](#regex) - [regexChar](#regexchar) - [regexDiscard](#regexdiscard) - [string](#string) - [succeed](#succeed) + - [suspend](#suspend) - [unit](#unit) - [unsafeRegex](#unsaferegex) - [unsafeRegexChar](#unsaferegexchar) @@ -75,10 +78,13 @@ Added in v1.0.0 - [models](#models) - [Syntax (interface)](#syntax-interface) - [symbols](#symbols) - - [SyntaxTypeId](#syntaxtypeid) - - [SyntaxTypeId (type alias)](#syntaxtypeid-type-alias) + - [TypeId](#typeid) + - [TypeId (type alias)](#typeid-type-alias) - [transformTo](#transformto) - [transformTo](#transformto-1) +- [utils](#utils) + - [Syntax (namespace)](#syntax-namespace) + - [Variance (interface)](#variance-interface) --- @@ -86,21 +92,19 @@ Added in v1.0.0 ## as -Ignores the `Syntax`'s successful result and result in `value` instead +Transforms a `Syntax` that results in `void` in a `Syntax` that results in `value` **Signature** ```ts export declare const as: { - (value: Value2): ( - self: Syntax - ) => Syntax - (self: Syntax, value: Value2): Syntax< - Input, - Error, - Output, - Value2 - > + ( + value: Value2 + ): (self: Syntax) => Syntax + ( + self: Syntax, + value: Value2 + ): Syntax } ``` @@ -108,20 +112,20 @@ Added in v1.0.0 ## asPrinted -Sets the value of this `Syntax` to the specified `value` and the value to be -printed to `toPrint`. +Transforms a `Syntax` that results in `from` in a `Syntax` that results in `value` **Signature** ```ts export declare const asPrinted: { - (value: Value2, toPrint: Value): ( - self: Syntax - ) => Syntax + ( + value: Value2, + from: Value + ): (self: Syntax) => Syntax ( self: Syntax, value: Value2, - toPrint: Value + from: Value ): Syntax } ``` @@ -130,22 +134,19 @@ Added in v1.0.0 ## asUnit -Returns a new `Syntax` from the provided syntax that does not consume any -input but prints `printed` and results in `void`. +Transforms a `Syntax` that results in `from` in a `Syntax` that results in `void` **Signature** ```ts export declare const asUnit: { - (printed: Value): ( - self: Syntax - ) => Syntax - (self: Syntax, printed: Value): Syntax< - Input, - Error, - Output, - void - > + ( + from: Value + ): (self: Syntax) => Syntax + ( + self: Syntax, + from: Value + ): Syntax } ``` @@ -165,15 +166,37 @@ When printing, the input is a chunk of values and each element gets printed. ```ts export declare const atLeast: { - (min: number): ( + ( + min: number + ): ( + self: Syntax + ) => Syntax> + ( + self: Syntax, + min: number + ): Syntax> +} +``` + +Added in v1.0.0 + +## atMost + +Repeat this `Syntax` at most `max` number of times. + +**Signature** + +```ts +export declare const atMost: { + ( + max: number + ): ( self: Syntax ) => Syntax> - (self: Syntax, min: number): Syntax< - Input, - Error, - Output, - Chunk - > + ( + self: Syntax, + max: number + ): Syntax> } ``` @@ -268,9 +291,10 @@ mode and fails with the specified `error` if the predicate evaluates to ```ts export declare const filter: { - (predicate: Predicate, error: Error2): ( - self: Syntax - ) => Syntax + ( + predicate: Predicate, + error: Error2 + ): (self: Syntax) => Syntax ( self: Syntax, predicate: Predicate, @@ -295,6 +319,20 @@ export declare const flatten: ( Added in v1.0.0 +## flattenNonEmpty + +Flattens a result of parsed strings to a single string. + +**Signature** + +```ts +export declare const flattenNonEmpty: ( + self: Syntax> +) => Syntax +``` + +Added in v1.0.0 + ## manualBacktracking Disables auto-backtracking for this syntax. @@ -317,15 +355,13 @@ Maps the error with the specified function. ```ts export declare const mapError: { - (f: (error: Error) => Error2): ( - self: Syntax - ) => Syntax - (self: Syntax, f: (error: Error) => Error2): Syntax< - Input, - Error2, - Output, - Value - > + ( + f: (error: Error) => Error2 + ): (self: Syntax) => Syntax + ( + self: Syntax, + f: (error: Error) => Error2 + ): Syntax } ``` @@ -340,15 +376,13 @@ in case of failure to help debugging parser issues. ```ts export declare const named: { - (name: string): ( - self: Syntax - ) => Syntax - (self: Syntax, name: string): Syntax< - Input, - Error, - Output, - Value - > + ( + name: string + ): (self: Syntax) => Syntax + ( + self: Syntax, + name: string + ): Syntax } ``` @@ -363,15 +397,15 @@ syntax fails. ```ts export declare const not: { - (error: Error2): ( + ( + error: Error2 + ): ( self: Syntax ) => Syntax - (self: Syntax, error: Error2): Syntax< - Input, - Error | Error2, - Output, - void - > + ( + self: Syntax, + error: Error2 + ): Syntax } ``` @@ -410,7 +444,9 @@ variant, see `Syntax.orElseEither`. ```ts export declare const orElse: { - (that: LazyArg>): ( + ( + that: LazyArg> + ): ( self: Syntax ) => Syntax ( @@ -436,12 +472,9 @@ parser. ```ts export declare const orElseEither: { - (that: LazyArg>): < - Input, - Error, - Output, - Value - >( + ( + that: LazyArg> + ): ( self: Syntax ) => Syntax> ( @@ -502,7 +535,9 @@ element, results in success. ```ts export declare const repeatUntil: { - (stopCondition: Syntax): ( + ( + stopCondition: Syntax + ): ( self: Syntax ) => Syntax> ( @@ -523,7 +558,9 @@ between each element. ```ts export declare const repeatWithSeparator: { - (separator: Syntax): ( + ( + separator: Syntax + ): ( self: Syntax ) => Syntax> ( @@ -544,7 +581,9 @@ each element. ```ts export declare const repeatWithSeparator1: { - (separator: Syntax): ( + ( + separator: Syntax + ): ( self: Syntax ) => Syntax> ( @@ -564,15 +603,13 @@ Enables or disables auto-backtracking for this syntax. ```ts export declare const setAutoBacktracking: { - (enabled: boolean): ( - self: Syntax - ) => Syntax - (self: Syntax, enabled: boolean): Syntax< - Input, - Error, - Output, - Value - > + ( + enabled: boolean + ): (self: Syntax) => Syntax + ( + self: Syntax, + enabled: boolean + ): Syntax } ``` @@ -587,7 +624,9 @@ result. ```ts export declare const surroundedBy: { - (other: Syntax): ( + ( + other: Syntax + ): ( self: Syntax ) => Syntax ( @@ -608,9 +647,10 @@ the value to be printed with the given function `from`. ```ts export declare const transform: { - (to: (value: Value) => Value2, from: (value: Value2) => Value): ( - self: Syntax - ) => Syntax + ( + to: (value: Value) => Value2, + from: (value: Value2) => Value + ): (self: Syntax) => Syntax ( self: Syntax, to: (value: Value) => Value2, @@ -631,12 +671,10 @@ functions can fail the parser/printer. ```ts export declare const transformEither: { - (to: (value: Value) => Either, from: (value: Value2) => Either): < - Input, - Output - >( - self: Syntax - ) => Syntax + ( + to: (value: Value) => Either, + from: (value: Value2) => Either + ): (self: Syntax) => Syntax ( self: Syntax, to: (value: Value) => Either, @@ -658,9 +696,10 @@ channel by the value `None`. ```ts export declare const transformOption: { - (to: (value: Value) => Option, from: (value: Value2) => Option): ( - self: Syntax - ) => Syntax, Output, Value2> + ( + to: (value: Value) => Option, + from: (value: Value2) => Option + ): (self: Syntax) => Syntax, Output, Value2> ( self: Syntax, to: (value: Value) => Option, @@ -683,7 +722,9 @@ right value with `that`. ```ts export declare const zip: { - (that: Syntax): ( + ( + that: Syntax + ): ( self: Syntax ) => Syntax ( @@ -699,8 +740,8 @@ Added in v1.0.0 Concatenates this `Syntax` with `that` `Syntax`. If the parser of both syntaxes succeeds, the result is the result of this `Syntax`. Otherwise the -`Syntax` fails. The printer passes the value to be printed to this printer, -and also executes `that` printer with `void` as the input value. +`Syntax` fails. The printer executes `this` printer with `void` as the input value +and also passes the value to be printed to that printer. Note that the right syntax must have `Value` defined as `void`, because there is no way for the printer to reconstruct an arbitrary input for the right @@ -710,12 +751,14 @@ printer. ```ts export declare const zipLeft: { - (that: Syntax): ( + ( + that: Syntax + ): ( self: Syntax ) => Syntax - ( + ( self: Syntax, - that: Syntax + that: Syntax ): Syntax } ``` @@ -737,7 +780,9 @@ printer. ```ts export declare const zipRight: { - (that: Syntax): ( + ( + that: Syntax + ): ( self: Syntax ) => Syntax ( @@ -828,6 +873,19 @@ export declare const charIn: (chars: Iterable) => Syntax(char: string, error: Error) => Syntax +``` + +Added in v1.0.0 + ## charNotIn Constructs a `Syntax` that parses/prints a single character if it **DOES @@ -912,7 +970,7 @@ Added in v1.0.0 ## letter -Constructs a `Syntax` for a single digit. +Constructs a `Syntax` for a single letter. **Signature** @@ -922,19 +980,6 @@ export declare const letter: Syntax Added in v1.0.0 -## notChar - -Parse or print a single character and fail with the specified `error` if the -parsed character matches the specified character. - -**Signature** - -```ts -export declare const notChar: (char: string, error: Error) => Syntax -``` - -Added in v1.0.0 - ## regex Constructs a `Syntax` that executes a regular expression on the input and @@ -1011,6 +1056,38 @@ export declare const succeed: (value: Value) => Syntax( + self: LazyArg> +) => Syntax +``` + +**Example** + +```ts +import { pipe } from "effect/Function" +import * as Syntax from "@effect/parser/Syntax" + +const recursive: Syntax.Syntax = pipe( + Syntax.digit, + Syntax.zipLeft( + pipe( + Syntax.suspend(() => recursive), + Syntax.orElse(() => Syntax.letter), + Syntax.asUnit("?") + ) + ) +) +``` + +Added in v1.0.0 + ## unit Constructs a `Syntax` that results in `void`. @@ -1089,9 +1166,9 @@ Run this `Syntax`'s parser on the given `input` string. ```ts export declare const parseString: { - (input: string): ( - self: Syntax - ) => Either, Value> + ( + input: string + ): (self: Syntax) => Either, Value> (self: Syntax, input: string): Either, Value> } ``` @@ -1107,9 +1184,10 @@ parser implementation. ```ts export declare const parseStringWith: { - (input: string, implementation: Parser.Implementation): ( - self: Syntax - ) => Either, Value> + ( + input: string, + implementation: Parser.Implementation + ): (self: Syntax) => Either, Value> ( self: Syntax, input: string, @@ -1145,7 +1223,7 @@ to simultaneously build them up from smaller syntax fragments. **Signature** ```ts -export interface Syntax extends Syntax.Variance { +export interface Syntax extends Syntax.Variance, Pipeable { readonly parser: Parser readonly printer: Printer } @@ -1155,22 +1233,22 @@ Added in v1.0.0 # symbols -## SyntaxTypeId +## TypeId **Signature** ```ts -export declare const SyntaxTypeId: typeof SyntaxTypeId +export declare const TypeId: typeof TypeId ``` Added in v1.0.0 -## SyntaxTypeId (type alias) +## TypeId (type alias) **Signature** ```ts -export type SyntaxTypeId = typeof SyntaxTypeId +export type TypeId = typeof TypeId ``` Added in v1.0.0 @@ -1189,13 +1267,11 @@ This can be used to define separate syntaxes for subtypes, that can be later com ```ts export declare const transformTo: { - (to: (value: Value) => Value2, from: (value: Value2) => Option, error: Error2): < - Input, - Error, - Output - >( - self: Syntax - ) => Syntax + ( + to: (value: Value) => Value2, + from: (value: Value2) => Option, + error: Error2 + ): (self: Syntax) => Syntax ( self: Syntax, to: (value: Value) => Value2, @@ -1206,3 +1282,26 @@ export declare const transformTo: { ``` Added in v1.0.0 + +# utils + +## Syntax (namespace) + +Added in v1.0.0 + +### Variance (interface) + +**Signature** + +```ts +export interface Variance { + readonly [TypeId]: { + _Input: Types.Contravariant + _Error: Types.Covariant + _Output: Types.Covariant + _Value: Types.Invariant + } +} +``` + +Added in v1.0.0 diff --git a/docs/modules/Target.ts.md b/docs/modules/Target.ts.md index 89a3aa2..677aae1 100644 --- a/docs/modules/Target.ts.md +++ b/docs/modules/Target.ts.md @@ -1,6 +1,6 @@ --- title: Target.ts -nav_order: 7 +nav_order: 9 parent: Modules --- diff --git a/docs/modules/index.md b/docs/modules/index.md index 6cfaab3..d20a6b7 100644 --- a/docs/modules/index.md +++ b/docs/modules/index.md @@ -1,6 +1,6 @@ --- - title: Modules - has_children: true - permalink: /docs/modules - nav_order: 2 - --- +title: Modules +has_children: true +permalink: /docs/modules +nav_order: 2 +--- diff --git a/docs/modules/index.ts.md b/docs/modules/index.ts.md new file mode 100644 index 0000000..fc826f2 --- /dev/null +++ b/docs/modules/index.ts.md @@ -0,0 +1,123 @@ +--- +title: index.ts +nav_order: 3 +parent: Modules +--- + +## index overview + +Added in v1.0.0 + +--- + +

Table of contents

+ +- [exports](#exports) + - [From "./BitSet.js"](#from-bitsetjs) + - [From "./ChunkTarget.js"](#from-chunktargetjs) + - [From "./Parser.js"](#from-parserjs) + - [From "./ParserError.js"](#from-parsererrorjs) + - [From "./Printer.js"](#from-printerjs) + - [From "./Regex.js"](#from-regexjs) + - [From "./Syntax.js"](#from-syntaxjs) + - [From "./Target.js"](#from-targetjs) + +--- + +# exports + +## From "./BitSet.js" + +Re-exports all named exports from the "./BitSet.js" module as `BitSet`. + +**Signature** + +```ts +export * as BitSet from "./BitSet.js" +``` + +Added in v1.0.0 + +## From "./ChunkTarget.js" + +Re-exports all named exports from the "./ChunkTarget.js" module as `ChunkTarget`. + +**Signature** + +```ts +export * as ChunkTarget from "./ChunkTarget.js" +``` + +Added in v1.0.0 + +## From "./Parser.js" + +Re-exports all named exports from the "./Parser.js" module as `Parser`. + +**Signature** + +```ts +export * as Parser from "./Parser.js" +``` + +Added in v1.0.0 + +## From "./ParserError.js" + +Re-exports all named exports from the "./ParserError.js" module as `ParserError`. + +**Signature** + +```ts +export * as ParserError from "./ParserError.js" +``` + +Added in v1.0.0 + +## From "./Printer.js" + +Re-exports all named exports from the "./Printer.js" module as `Printer`. + +**Signature** + +```ts +export * as Printer from "./Printer.js" +``` + +Added in v1.0.0 + +## From "./Regex.js" + +Re-exports all named exports from the "./Regex.js" module as `Regex`. + +**Signature** + +```ts +export * as Regex from "./Regex.js" +``` + +Added in v1.0.0 + +## From "./Syntax.js" + +Re-exports all named exports from the "./Syntax.js" module as `Syntax`. + +**Signature** + +```ts +export * as Syntax from "./Syntax.js" +``` + +Added in v1.0.0 + +## From "./Target.js" + +Re-exports all named exports from the "./Target.js" module as `Target`. + +**Signature** + +```ts +export * as Target from "./Target.js" +``` + +Added in v1.0.0 diff --git a/flake.lock b/flake.lock index 2123fa0..79b637f 100644 --- a/flake.lock +++ b/flake.lock @@ -5,11 +5,11 @@ "systems": "systems" }, "locked": { - "lastModified": 1687171271, - "narHash": "sha256-BJlq+ozK2B1sJDQXS3tzJM5a+oVZmi1q0FlBK/Xqv7M=", + "lastModified": 1694529238, + "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=", "owner": "numtide", "repo": "flake-utils", - "rev": "abfb11bd1aec8ced1c9bb9adfe68018230f4fb3c", + "rev": "ff7b65b44d01cf9ba6a71320833626af21126384", "type": "github" }, "original": { @@ -20,11 +20,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1687274257, - "narHash": "sha256-TutzPriQcZ8FghDhEolnHcYU2oHIG5XWF+/SUBNnAOE=", + "lastModified": 1697009197, + "narHash": "sha256-viVRhBTFT8fPJTb1N3brQIpFZnttmwo3JVKNuWRVc3s=", "owner": "nixos", "repo": "nixpkgs", - "rev": "2c9ecd1f0400076a4d6b2193ad468ff0a7e7fdc5", + "rev": "01441e14af5e29c9d27ace398e6dd0b293e25a54", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index fe86c70..a50edf5 100644 --- a/flake.nix +++ b/flake.nix @@ -17,11 +17,20 @@ }: flake-utils.lib.eachDefaultSystem (system: let pkgs = nixpkgs.legacyPackages.${system}; + corepackEnable = pkgs.runCommand "corepack-enable" {} '' + mkdir -p $out/bin + ${pkgs.nodejs_20}/bin/corepack enable --install-directory $out/bin + ''; in { formatter = pkgs.alejandra; devShells = { - default = pkgs.callPackage "${self}/shell.nix" {inherit pkgs;}; + default = pkgs.mkShell { + buildInputs = with pkgs; [ + nodejs_20 + corepackEnable + ]; + }; }; }); } diff --git a/package.json b/package.json index 615ac79..a9fda12 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,8 @@ { "name": "@effect/parser", "version": "0.0.0", + "type": "module", + "packageManager": "pnpm@8.10.2", "publishConfig": { "access": "public", "directory": "dist" @@ -26,78 +28,65 @@ "algebraic-data-types", "functional-programming" ], + "sideEffects": false, + "effect": { + "generateExports": { + "include": [ + "**/*.ts" + ] + }, + "generateIndex": { + "include": [ + "**/*.ts" + ] + } + }, "scripts": { - "example": "ts-node --project tsconfig.examples.json", - "version": "changeset version && pnpm install --no-frozen-lockfile && pnpm run docs-update", - "release": "pnpm run build && changeset publish", - "clean": "rimraf build tsbuildinfo dist .cache", - "build": "pnpm build-all && pnpm build-pack", - "build-cjs": "babel build/esm --config-file ./.babel.cjs.json --out-dir build/cjs --out-file-extension .js --source-maps", - "build-mjs": "babel build/esm --config-file ./.babel.mjs.json --out-dir build/mjs --out-file-extension .mjs --source-maps", - "build-post": "build-utils pack-v4", - "build-pack": "concurrently \"pnpm build-cjs\" \"pnpm build-mjs\" && pnpm build-post", - "build-all": "tsc -b tsconfig.json", - "build-watch": "tsc -b tsconfig.json --watch", - "lint": "eslint src/**/* test/**/* examples/**/*", - "autofix": "pnpm lint --fix", - "tc": "tsc --noEmit", - "docs": "docgen", - "docs-update": "git add --force --all docs/modules || true", - "circular": "madge --ts-config ./tsconfig.madge.json --circular --no-color --no-spinner --warning build/esm", + "build": "pnpm build-prepare && pnpm build-esm && pnpm build-cjs && pnpm build-annotate && build-utils pack-v2", + "build-prepare": "build-utils prepare-v2", + "build-esm": "tsc -b tsconfig.build.json", + "build-cjs": "babel build/esm --plugins @babel/transform-export-namespace-from --plugins @babel/transform-modules-commonjs --out-dir build/cjs --source-maps", + "build-annotate": "babel build --plugins annotate-pure-calls --out-dir build --source-maps", + "clean": "rimraf build dist docs coverage .tsbuildinfo", + "lint": "eslint src test examples --ext .ts", + "lint-fix": "pnpm lint --fix", + "check": "tsc -b tsconfig.json", + "docgen": "docgen", + "circular": "madge --extensions ts --circular --no-color --no-spinner --warning src", "test": "vitest", "coverage": "vitest run --coverage" }, - "exports": { - ".": { - "require": "./build/cjs/index.js" - }, - "./*": { - "require": "./build/cjs/*.js", - "import": "./src/*.ts" - } - }, "dependencies": { - "@effect/data": "~0.17.1", - "@effect/io": "~0.36.1" + "effect": "^2.0.3" }, "devDependencies": { - "@babel/cli": "^7.22.9", - "@babel/core": "^7.22.9", - "@babel/plugin-transform-modules-commonjs": "^7.22.5", - "@changesets/changelog-github": "^0.4.8", - "@changesets/cli": "^2.26.2", - "@effect-ts/build-utils": "0.40.7", - "@effect-ts/core": "^0.60.5", - "@effect/babel-plugin": "^0.2.0", - "@effect/docgen": "^0.1.2", - "@effect/language-service": "^0.0.19", - "@repo-tooling/eslint-plugin-dprint": "^0.0.4", - "@types/node": "^20.4.5", - "@typescript-eslint/eslint-plugin": "^6.2.0", - "@typescript-eslint/parser": "^6.2.0", - "@vitejs/plugin-react": "^4.0.3", - "@vitest/coverage-v8": "^0.33.0", - "@vitest/ui": "^0.33.0", + "@babel/cli": "^7.23.4", + "@babel/core": "^7.23.7", + "@babel/plugin-transform-export-namespace-from": "^7.23.4", + "@babel/plugin-transform-modules-commonjs": "^7.23.3", + "@changesets/changelog-github": "^0.5.0", + "@changesets/cli": "^2.27.1", + "@effect/build-utils": "^0.7.1", + "@effect/docgen": "^0.3.8", + "@effect/eslint-plugin": "^0.1.2", + "@effect/language-service": "^0.1.0", + "@typescript-eslint/eslint-plugin": "^6.18.1", + "@typescript-eslint/parser": "^6.18.1", + "@vitest/coverage-v8": "^1.1.3", "babel-plugin-annotate-pure-calls": "^0.4.0", - "concurrently": "^8.2.0", - "eslint": "^8.46.0", - "eslint-import-resolver-typescript": "^3.5.5", - "eslint-plugin-codegen": "0.17.0", - "eslint-plugin-deprecation": "^1.5.0", - "eslint-plugin-import": "^2.28.0", + "eslint": "^8.56.0", + "eslint-import-resolver-typescript": "^3.6.1", + "eslint-plugin-codegen": "^0.21.0", + "eslint-plugin-deprecation": "^2.0.0", + "eslint-plugin-import": "^2.29.1", "eslint-plugin-simple-import-sort": "^10.0.0", "eslint-plugin-sort-destructure-keys": "^1.5.0", - "fast-check": "^3.12.0", + "fast-check": "^3.15.0", "madge": "^6.1.0", - "rimraf": "^5.0.1", - "ts-node": "^10.9.1", - "typescript": "^5.1.6", - "vite": "^4.4.7", - "vitest": "^0.33.0" - }, - "config": { - "side": [], - "modules": [], - "global": [] + "rimraf": "^5.0.5", + "tsx": "^4.7.0", + "typescript": "^5.3.3", + "vite": "^5.0.11", + "vitest": "^1.1.3" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b28d93d..4e261be 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -5,113 +5,95 @@ settings: excludeLinksFromLockfile: false dependencies: - '@effect/data': - specifier: ~0.17.1 - version: 0.17.1 - '@effect/io': - specifier: ~0.36.1 - version: 0.36.1 + effect: + specifier: ^2.0.3 + version: 2.0.3 devDependencies: '@babel/cli': - specifier: ^7.22.9 - version: 7.22.9(@babel/core@7.22.9) + specifier: ^7.23.4 + version: 7.23.4(@babel/core@7.23.7) '@babel/core': - specifier: ^7.22.9 - version: 7.22.9 + specifier: ^7.23.7 + version: 7.23.7 + '@babel/plugin-transform-export-namespace-from': + specifier: ^7.23.4 + version: 7.23.4(@babel/core@7.23.7) '@babel/plugin-transform-modules-commonjs': - specifier: ^7.22.5 - version: 7.22.5(@babel/core@7.22.9) + specifier: ^7.23.3 + version: 7.23.3(@babel/core@7.23.7) '@changesets/changelog-github': - specifier: ^0.4.8 - version: 0.4.8 + specifier: ^0.5.0 + version: 0.5.0 '@changesets/cli': - specifier: ^2.26.2 - version: 2.26.2 - '@effect-ts/build-utils': - specifier: 0.40.7 - version: 0.40.7(@effect-ts/core@0.60.5)(cpx@1.5.0)(picocolors@1.0.0) - '@effect-ts/core': - specifier: ^0.60.5 - version: 0.60.5 - '@effect/babel-plugin': - specifier: ^0.2.0 - version: 0.2.0(@babel/core@7.22.9) + specifier: ^2.27.1 + version: 2.27.1 + '@effect/build-utils': + specifier: ^0.7.1 + version: 0.7.1 '@effect/docgen': + specifier: ^0.3.8 + version: 0.3.8(tsx@4.7.0)(typescript@5.3.3) + '@effect/eslint-plugin': specifier: ^0.1.2 - version: 0.1.2(@types/node@20.4.5)(typescript@5.1.6) + version: 0.1.2 '@effect/language-service': - specifier: ^0.0.19 - version: 0.0.19 - '@repo-tooling/eslint-plugin-dprint': - specifier: ^0.0.4 - version: 0.0.4(typescript@5.1.6) - '@types/node': - specifier: ^20.4.5 - version: 20.4.5 + specifier: ^0.1.0 + version: 0.1.0 '@typescript-eslint/eslint-plugin': - specifier: ^6.2.0 - version: 6.2.0(@typescript-eslint/parser@6.2.0)(eslint@8.46.0)(typescript@5.1.6) + specifier: ^6.18.1 + version: 6.18.1(@typescript-eslint/parser@6.18.1)(eslint@8.56.0)(typescript@5.3.3) '@typescript-eslint/parser': - specifier: ^6.2.0 - version: 6.2.0(eslint@8.46.0)(typescript@5.1.6) - '@vitejs/plugin-react': - specifier: ^4.0.3 - version: 4.0.3(vite@4.4.7) + specifier: ^6.18.1 + version: 6.18.1(eslint@8.56.0)(typescript@5.3.3) '@vitest/coverage-v8': - specifier: ^0.33.0 - version: 0.33.0(vitest@0.33.0) - '@vitest/ui': - specifier: ^0.33.0 - version: 0.33.0(vitest@0.33.0) + specifier: ^1.1.3 + version: 1.1.3(vitest@1.1.3) babel-plugin-annotate-pure-calls: specifier: ^0.4.0 - version: 0.4.0(@babel/core@7.22.9) - concurrently: - specifier: ^8.2.0 - version: 8.2.0 + version: 0.4.0(@babel/core@7.23.7) eslint: - specifier: ^8.46.0 - version: 8.46.0 + specifier: ^8.56.0 + version: 8.56.0 eslint-import-resolver-typescript: - specifier: ^3.5.5 - version: 3.5.5(@typescript-eslint/parser@6.2.0)(eslint-plugin-import@2.28.0)(eslint@8.46.0) + specifier: ^3.6.1 + version: 3.6.1(@typescript-eslint/parser@6.18.1)(eslint-plugin-import@2.29.1)(eslint@8.56.0) eslint-plugin-codegen: - specifier: 0.17.0 - version: 0.17.0 + specifier: ^0.21.0 + version: 0.21.0(eslint@8.56.0) eslint-plugin-deprecation: - specifier: ^1.5.0 - version: 1.5.0(eslint@8.46.0)(typescript@5.1.6) + specifier: ^2.0.0 + version: 2.0.0(eslint@8.56.0)(typescript@5.3.3) eslint-plugin-import: - specifier: ^2.28.0 - version: 2.28.0(@typescript-eslint/parser@6.2.0)(eslint-import-resolver-typescript@3.5.5)(eslint@8.46.0) + specifier: ^2.29.1 + version: 2.29.1(@typescript-eslint/parser@6.18.1)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0) eslint-plugin-simple-import-sort: specifier: ^10.0.0 - version: 10.0.0(eslint@8.46.0) + version: 10.0.0(eslint@8.56.0) eslint-plugin-sort-destructure-keys: specifier: ^1.5.0 - version: 1.5.0(eslint@8.46.0) + version: 1.5.0(eslint@8.56.0) fast-check: - specifier: ^3.12.0 - version: 3.12.0 + specifier: ^3.15.0 + version: 3.15.0 madge: specifier: ^6.1.0 - version: 6.1.0(typescript@5.1.6) + version: 6.1.0(typescript@5.3.3) rimraf: - specifier: ^5.0.1 - version: 5.0.1 - ts-node: - specifier: ^10.9.1 - version: 10.9.1(@types/node@20.4.5)(typescript@5.1.6) + specifier: ^5.0.5 + version: 5.0.5 + tsx: + specifier: ^4.7.0 + version: 4.7.0 typescript: - specifier: ^5.1.6 - version: 5.1.6 + specifier: ^5.3.3 + version: 5.3.3 vite: - specifier: ^4.4.7 - version: 4.4.7(@types/node@20.4.5) + specifier: ^5.0.11 + version: 5.0.11 vitest: - specifier: ^0.33.0 - version: 0.33.0(@vitest/ui@0.33.0) + specifier: ^1.1.3 + version: 1.1.3 packages: @@ -125,20 +107,20 @@ packages: engines: {node: '>=6.0.0'} dependencies: '@jridgewell/gen-mapping': 0.3.3 - '@jridgewell/trace-mapping': 0.3.18 + '@jridgewell/trace-mapping': 0.3.20 dev: true - /@babel/cli@7.22.9(@babel/core@7.22.9): - resolution: {integrity: sha512-nb2O7AThqRo7/E53EGiuAkMaRbb7J5Qp3RvN+dmua1U+kydm0oznkhqbTEG15yk26G/C3yL6OdZjzgl+DMXVVA==} + /@babel/cli@7.23.4(@babel/core@7.23.7): + resolution: {integrity: sha512-j3luA9xGKCXVyCa5R7lJvOMM+Kc2JEnAEIgz2ggtjQ/j5YUVgfsg/WsG95bbsgq7YLHuiCOzMnoSasuY16qiCw==} engines: {node: '>=6.9.0'} hasBin: true peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 - '@jridgewell/trace-mapping': 0.3.18 + '@babel/core': 7.23.7 + '@jridgewell/trace-mapping': 0.3.20 commander: 4.1.1 - convert-source-map: 1.9.0 + convert-source-map: 2.0.0 fs-readdir-recursive: 1.1.0 glob: 7.2.3 make-dir: 2.1.0 @@ -148,33 +130,34 @@ packages: chokidar: 3.5.3 dev: true - /@babel/code-frame@7.22.5: - resolution: {integrity: sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==} + /@babel/code-frame@7.23.5: + resolution: {integrity: sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/highlight': 7.22.5 + '@babel/highlight': 7.23.4 + chalk: 2.4.2 dev: true - /@babel/compat-data@7.22.9: - resolution: {integrity: sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==} + /@babel/compat-data@7.23.5: + resolution: {integrity: sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==} engines: {node: '>=6.9.0'} dev: true - /@babel/core@7.22.9: - resolution: {integrity: sha512-G2EgeufBcYw27U4hhoIwFcgc1XU7TlXJ3mv04oOv1WCuo900U/anZSPzEqNjwdjgffkk2Gs0AN0dW1CKVLcG7w==} + /@babel/core@7.23.7: + resolution: {integrity: sha512-+UpDgowcmqe36d4NwqvKsyPMlOLNGMsfMmQ5WGCu+siCe3t3dfe9njrzGfdN4qq+bcNUt0+Vw6haRxBOycs4dw==} engines: {node: '>=6.9.0'} dependencies: '@ampproject/remapping': 2.2.1 - '@babel/code-frame': 7.22.5 - '@babel/generator': 7.22.9 - '@babel/helper-compilation-targets': 7.22.9(@babel/core@7.22.9) - '@babel/helper-module-transforms': 7.22.9(@babel/core@7.22.9) - '@babel/helpers': 7.22.6 - '@babel/parser': 7.22.7 - '@babel/template': 7.22.5 - '@babel/traverse': 7.22.8 - '@babel/types': 7.22.5 - convert-source-map: 1.9.0 + '@babel/code-frame': 7.23.5 + '@babel/generator': 7.23.6 + '@babel/helper-compilation-targets': 7.23.6 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.7) + '@babel/helpers': 7.23.7 + '@babel/parser': 7.23.6 + '@babel/template': 7.22.15 + '@babel/traverse': 7.23.7 + '@babel/types': 7.23.6 + convert-source-map: 2.0.0 debug: 4.3.4 gensync: 1.0.0-beta.2 json5: 2.2.3 @@ -186,100 +169,71 @@ packages: /@babel/generator@7.12.17: resolution: {integrity: sha512-DSA7ruZrY4WI8VxuS1jWSRezFnghEoYEFrZcw9BizQRmOZiUsiHl59+qEARGPqPikwA/GPTyRCi7isuCK/oyqg==} dependencies: - '@babel/types': 7.22.5 + '@babel/types': 7.23.6 jsesc: 2.5.2 source-map: 0.5.7 dev: true - /@babel/generator@7.22.7: - resolution: {integrity: sha512-p+jPjMG+SI8yvIaxGgeW24u7q9+5+TGpZh8/CuB7RhBKd7RCy8FayNEFNNKrNK/eUcY/4ExQqLmyrvBXKsIcwQ==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.22.5 - '@jridgewell/gen-mapping': 0.3.3 - '@jridgewell/trace-mapping': 0.3.18 - jsesc: 2.5.2 - dev: true - - /@babel/generator@7.22.9: - resolution: {integrity: sha512-KtLMbmicyuK2Ak/FTCJVbDnkN1SlT8/kceFTiuDiiRUUSMnHMidxSCdG4ndkTOHHpoomWe/4xkvHkEOncwjYIw==} + /@babel/generator@7.23.6: + resolution: {integrity: sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.22.5 + '@babel/types': 7.23.6 '@jridgewell/gen-mapping': 0.3.3 - '@jridgewell/trace-mapping': 0.3.18 + '@jridgewell/trace-mapping': 0.3.20 jsesc: 2.5.2 dev: true - /@babel/helper-compilation-targets@7.22.9(@babel/core@7.22.9): - resolution: {integrity: sha512-7qYrNM6HjpnPHJbopxmb8hSPoZ0gsX8IvUS32JGVoy+pU9e5N0nLr1VjJoR6kA4d9dmGLxNYOjeB8sUDal2WMw==} + /@babel/helper-compilation-targets@7.23.6: + resolution: {integrity: sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==} engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 dependencies: - '@babel/compat-data': 7.22.9 - '@babel/core': 7.22.9 - '@babel/helper-validator-option': 7.22.5 - browserslist: 4.21.9 + '@babel/compat-data': 7.23.5 + '@babel/helper-validator-option': 7.23.5 + browserslist: 4.22.2 lru-cache: 5.1.1 semver: 6.3.1 dev: true - /@babel/helper-environment-visitor@7.22.5: - resolution: {integrity: sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==} + /@babel/helper-environment-visitor@7.22.20: + resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==} engines: {node: '>=6.9.0'} dev: true - /@babel/helper-function-name@7.22.5: - resolution: {integrity: sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==} + /@babel/helper-function-name@7.23.0: + resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/template': 7.22.5 - '@babel/types': 7.22.5 + '@babel/template': 7.22.15 + '@babel/types': 7.23.6 dev: true /@babel/helper-hoist-variables@7.22.5: resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.22.5 + '@babel/types': 7.23.6 dev: true - /@babel/helper-module-imports@7.22.5: - resolution: {integrity: sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==} + /@babel/helper-module-imports@7.22.15: + resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.22.5 + '@babel/types': 7.23.3 dev: true - /@babel/helper-module-transforms@7.22.5: - resolution: {integrity: sha512-+hGKDt/Ze8GFExiVHno/2dvG5IdstpzCq0y4Qc9OJ25D4q3pKfiIP/4Vp3/JvhDkLKsDK2api3q3fpIgiIF5bw==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/helper-environment-visitor': 7.22.5 - '@babel/helper-module-imports': 7.22.5 - '@babel/helper-simple-access': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.5 - '@babel/helper-validator-identifier': 7.22.5 - '@babel/template': 7.22.5 - '@babel/traverse': 7.22.5 - '@babel/types': 7.22.5 - transitivePeerDependencies: - - supports-color - dev: true - - /@babel/helper-module-transforms@7.22.9(@babel/core@7.22.9): - resolution: {integrity: sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==} + /@babel/helper-module-transforms@7.23.3(@babel/core@7.23.7): + resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.22.9 - '@babel/helper-environment-visitor': 7.22.5 - '@babel/helper-module-imports': 7.22.5 + '@babel/core': 7.23.7 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-module-imports': 7.22.15 '@babel/helper-simple-access': 7.22.5 '@babel/helper-split-export-declaration': 7.22.6 - '@babel/helper-validator-identifier': 7.22.5 + '@babel/helper-validator-identifier': 7.22.20 dev: true /@babel/helper-plugin-utils@7.22.5: @@ -291,21 +245,14 @@ packages: resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.22.5 - dev: true - - /@babel/helper-split-export-declaration@7.22.5: - resolution: {integrity: sha512-thqK5QFghPKWLhAV321lxF95yCg2K3Ob5yw+M3VHWfdia0IkPXUtoLH8x/6Fh486QUvzhb8YOWHChTVen2/PoQ==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.22.5 + '@babel/types': 7.23.3 dev: true /@babel/helper-split-export-declaration@7.22.6: resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.22.5 + '@babel/types': 7.23.3 dev: true /@babel/helper-string-parser@7.22.5: @@ -313,151 +260,164 @@ packages: engines: {node: '>=6.9.0'} dev: true - /@babel/helper-validator-identifier@7.22.5: - resolution: {integrity: sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==} + /@babel/helper-string-parser@7.23.4: + resolution: {integrity: sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==} + engines: {node: '>=6.9.0'} + dev: true + + /@babel/helper-validator-identifier@7.22.20: + resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} engines: {node: '>=6.9.0'} dev: true - /@babel/helper-validator-option@7.22.5: - resolution: {integrity: sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==} + /@babel/helper-validator-option@7.23.5: + resolution: {integrity: sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==} engines: {node: '>=6.9.0'} dev: true - /@babel/helpers@7.22.6: - resolution: {integrity: sha512-YjDs6y/fVOYFV8hAf1rxd1QvR9wJe1pDBZ2AREKq/SDayfPzgk0PBnVuTCE5X1acEpMMNOVUqoe+OwiZGJ+OaA==} + /@babel/helpers@7.23.7: + resolution: {integrity: sha512-6AMnjCoC8wjqBzDHkuqpa7jAKwvMo4dC+lr/TFBz+ucfulO1XMpDnwWPGBNwClOKZ8h6xn5N81W/R5OrcKtCbQ==} engines: {node: '>=6.9.0'} dependencies: - '@babel/template': 7.22.5 - '@babel/traverse': 7.22.8 - '@babel/types': 7.22.5 + '@babel/template': 7.22.15 + '@babel/traverse': 7.23.7 + '@babel/types': 7.23.6 transitivePeerDependencies: - supports-color dev: true - /@babel/highlight@7.22.5: - resolution: {integrity: sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==} + /@babel/highlight@7.23.4: + resolution: {integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==} engines: {node: '>=6.9.0'} dependencies: - '@babel/helper-validator-identifier': 7.22.5 + '@babel/helper-validator-identifier': 7.22.20 chalk: 2.4.2 js-tokens: 4.0.0 dev: true - /@babel/parser@7.22.5: - resolution: {integrity: sha512-DFZMC9LJUG9PLOclRC32G63UXwzqS2koQC8dkx+PLdmt1xSePYpbT/NbsrJy8Q/muXz7o/h/d4A7Fuyixm559Q==} + /@babel/parser@7.23.3: + resolution: {integrity: sha512-uVsWNvlVsIninV2prNz/3lHCb+5CJ+e+IUBfbjToAHODtfGYLfCFuY4AU7TskI+dAKk+njsPiBjq1gKTvZOBaw==} engines: {node: '>=6.0.0'} hasBin: true dependencies: - '@babel/types': 7.22.5 + '@babel/types': 7.23.6 dev: true - /@babel/parser@7.22.7: - resolution: {integrity: sha512-7NF8pOkHP5o2vpmGgNGcfAeCvOYhGLyA3Z4eBQkT1RJlWu47n63bCs93QfJ2hIAFCil7L5P2IWhs1oToVgrL0Q==} + /@babel/parser@7.23.4: + resolution: {integrity: sha512-vf3Xna6UEprW+7t6EtOmFpHNAuxw3xqPZghy+brsnusscJRW5BMUzzHZc5ICjULee81WeUV2jjakG09MDglJXQ==} engines: {node: '>=6.0.0'} hasBin: true dependencies: - '@babel/types': 7.22.5 + '@babel/types': 7.23.6 dev: true - /@babel/plugin-transform-modules-commonjs@7.22.5(@babel/core@7.22.9): - resolution: {integrity: sha512-B4pzOXj+ONRmuaQTg05b3y/4DuFz3WcCNAXPLb2Q0GT0TrGKGxNKV4jwsXts+StaM0LQczZbOpj8o1DLPDJIiA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 + /@babel/parser@7.23.6: + resolution: {integrity: sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ==} + engines: {node: '>=6.0.0'} + hasBin: true dependencies: - '@babel/core': 7.22.9 - '@babel/helper-module-transforms': 7.22.5 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-simple-access': 7.22.5 - transitivePeerDependencies: - - supports-color + '@babel/types': 7.23.6 dev: true - /@babel/plugin-transform-react-jsx-self@7.22.5(@babel/core@7.22.9): - resolution: {integrity: sha512-nTh2ogNUtxbiSbxaT4Ds6aXnXEipHweN9YRgOX/oNXdf0cCrGn/+2LozFa3lnPV5D90MkjhgckCPBrsoSc1a7g==} - engines: {node: '>=6.9.0'} + /@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.23.7): + resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.7 '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-transform-react-jsx-source@7.22.5(@babel/core@7.22.9): - resolution: {integrity: sha512-yIiRO6yobeEIaI0RTbIr8iAK9FcBHLtZq0S89ZPjDLQXBA4xvghaKqI0etp/tF3htTM0sazJKKLz9oEiGRtu7w==} + /@babel/plugin-transform-export-namespace-from@7.23.4(@babel/core@7.23.7): + resolution: {integrity: sha512-GzuSBcKkx62dGzZI1WVgTWvkkz84FZO5TC5T8dl/Tht/rAla6Dg/Mz9Yhypg+ezVACf/rgDuQt3kbWEv7LdUDQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.7 '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.23.7) dev: true - /@babel/runtime@7.22.5: - resolution: {integrity: sha512-ecjvYlnAaZ/KVneE/OdKYBYfgXV3Ptu6zQWmgEF7vwKhQnvVS6bjMD2XYgj+SNvQ1GfK/pjgokfPkC/2CO8CuA==} + /@babel/plugin-transform-modules-commonjs@7.23.3(@babel/core@7.23.7): + resolution: {integrity: sha512-aVS0F65LKsdNOtcz6FRCpE4OgsP2OFnW46qNxNIX9h3wuzaNcSQsJysuMwqSibC98HPrf2vCgtxKNwS0DAlgcA==} engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 dependencies: - regenerator-runtime: 0.13.11 + '@babel/core': 7.23.7 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.7) + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-simple-access': 7.22.5 dev: true - /@babel/runtime@7.22.6: - resolution: {integrity: sha512-wDb5pWm4WDdF6LFUde3Jl8WzPA+3ZbxYqkC6xAXuD3irdEHN1k0NfTRrJD8ZD378SJ61miMLCqIOXYhd8x+AJQ==} + /@babel/runtime@7.23.4: + resolution: {integrity: sha512-2Yv65nlWnWlSpe3fXEyX5i7fx5kIKo4Qbcj+hMO0odwaneFjfXw5fdum+4yL20O0QiaHpia0cYQ9xpNMqrBwHg==} engines: {node: '>=6.9.0'} dependencies: - regenerator-runtime: 0.13.11 + regenerator-runtime: 0.14.0 dev: true - /@babel/template@7.22.5: - resolution: {integrity: sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==} + /@babel/template@7.22.15: + resolution: {integrity: sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==} engines: {node: '>=6.9.0'} dependencies: - '@babel/code-frame': 7.22.5 - '@babel/parser': 7.22.7 - '@babel/types': 7.22.5 + '@babel/code-frame': 7.23.5 + '@babel/parser': 7.23.6 + '@babel/types': 7.23.6 dev: true - /@babel/traverse@7.22.5: - resolution: {integrity: sha512-7DuIjPgERaNo6r+PZwItpjCZEa5vyw4eJGufeLxrPdBXBoLcCJCIasvK6pK/9DVNrLZTLFhUGqaC6X/PA007TQ==} + /@babel/traverse@7.23.4: + resolution: {integrity: sha512-IYM8wSUwunWTB6tFC2dkKZhxbIjHoWemdK+3f8/wq8aKhbUscxD5MX72ubd90fxvFknaLPeGw5ycU84V1obHJg==} engines: {node: '>=6.9.0'} dependencies: - '@babel/code-frame': 7.22.5 - '@babel/generator': 7.22.7 - '@babel/helper-environment-visitor': 7.22.5 - '@babel/helper-function-name': 7.22.5 + '@babel/code-frame': 7.23.5 + '@babel/generator': 7.23.6 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-function-name': 7.23.0 '@babel/helper-hoist-variables': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.5 - '@babel/parser': 7.22.5 - '@babel/types': 7.22.5 + '@babel/helper-split-export-declaration': 7.22.6 + '@babel/parser': 7.23.4 + '@babel/types': 7.23.6 debug: 4.3.4 globals: 11.12.0 transitivePeerDependencies: - supports-color dev: true - /@babel/traverse@7.22.8: - resolution: {integrity: sha512-y6LPR+wpM2I3qJrsheCTwhIinzkETbplIgPBbwvqPKc+uljeA5gP+3nP8irdYt1mjQaDnlIcG+dw8OjAco4GXw==} + /@babel/traverse@7.23.7: + resolution: {integrity: sha512-tY3mM8rH9jM0YHFGyfC0/xf+SB5eKUu7HPj7/k3fpi9dAlsMc5YbQvDi0Sh2QTPXqMhyaAtzAr807TIyfQrmyg==} engines: {node: '>=6.9.0'} dependencies: - '@babel/code-frame': 7.22.5 - '@babel/generator': 7.22.9 - '@babel/helper-environment-visitor': 7.22.5 - '@babel/helper-function-name': 7.22.5 + '@babel/code-frame': 7.23.5 + '@babel/generator': 7.23.6 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-function-name': 7.23.0 '@babel/helper-hoist-variables': 7.22.5 '@babel/helper-split-export-declaration': 7.22.6 - '@babel/parser': 7.22.7 - '@babel/types': 7.22.5 + '@babel/parser': 7.23.6 + '@babel/types': 7.23.6 debug: 4.3.4 globals: 11.12.0 transitivePeerDependencies: - supports-color dev: true - /@babel/types@7.22.5: - resolution: {integrity: sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA==} + /@babel/types@7.23.3: + resolution: {integrity: sha512-OZnvoH2l8PK5eUvEcUyCt/sXgr/h+UWpVuBbOljwcrAgUl6lpchoQ++PHGyQy1AtYnVA6CEq3y5xeEI10brpXw==} engines: {node: '>=6.9.0'} dependencies: '@babel/helper-string-parser': 7.22.5 - '@babel/helper-validator-identifier': 7.22.5 + '@babel/helper-validator-identifier': 7.22.20 + to-fast-properties: 2.0.0 + dev: true + + /@babel/types@7.23.6: + resolution: {integrity: sha512-+uarb83brBzPKN38NX1MkB6vb6+mwvR6amUulqAE7ccQw1pEl+bCia9TbdG1lsnFP7lZySvUn37CHyXQdfTwzg==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-string-parser': 7.23.4 + '@babel/helper-validator-identifier': 7.22.20 to-fast-properties: 2.0.0 dev: true @@ -465,14 +425,14 @@ packages: resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} dev: true - /@changesets/apply-release-plan@6.1.4: - resolution: {integrity: sha512-FMpKF1fRlJyCZVYHr3CbinpZZ+6MwvOtWUuO8uo+svcATEoc1zRDcj23pAurJ2TZ/uVz1wFHH6K3NlACy0PLew==} + /@changesets/apply-release-plan@7.0.0: + resolution: {integrity: sha512-vfi69JR416qC9hWmFGSxj7N6wA5J222XNBmezSVATPWDVPIF7gkd4d8CpbEbXmRWbVrkoli3oerGS6dcL/BGsQ==} dependencies: - '@babel/runtime': 7.22.6 - '@changesets/config': 2.3.1 - '@changesets/get-version-range-type': 0.3.2 - '@changesets/git': 2.0.0 - '@changesets/types': 5.2.1 + '@babel/runtime': 7.23.4 + '@changesets/config': 3.0.0 + '@changesets/get-version-range-type': 0.4.0 + '@changesets/git': 3.0.0 + '@changesets/types': 6.0.0 '@manypkg/get-packages': 1.1.3 detect-indent: 6.1.0 fs-extra: 7.0.1 @@ -480,171 +440,170 @@ packages: outdent: 0.5.0 prettier: 2.8.8 resolve-from: 5.0.0 - semver: 7.5.3 + semver: 7.5.4 dev: true - /@changesets/assemble-release-plan@5.2.4: - resolution: {integrity: sha512-xJkWX+1/CUaOUWTguXEbCDTyWJFECEhmdtbkjhn5GVBGxdP/JwaHBIU9sW3FR6gD07UwZ7ovpiPclQZs+j+mvg==} + /@changesets/assemble-release-plan@6.0.0: + resolution: {integrity: sha512-4QG7NuisAjisbW4hkLCmGW2lRYdPrKzro+fCtZaILX+3zdUELSvYjpL4GTv0E4aM9Mef3PuIQp89VmHJ4y2bfw==} dependencies: - '@babel/runtime': 7.22.6 - '@changesets/errors': 0.1.4 - '@changesets/get-dependents-graph': 1.3.6 - '@changesets/types': 5.2.1 + '@babel/runtime': 7.23.4 + '@changesets/errors': 0.2.0 + '@changesets/get-dependents-graph': 2.0.0 + '@changesets/types': 6.0.0 '@manypkg/get-packages': 1.1.3 - semver: 7.5.3 + semver: 7.5.4 dev: true - /@changesets/changelog-git@0.1.14: - resolution: {integrity: sha512-+vRfnKtXVWsDDxGctOfzJsPhaCdXRYoe+KyWYoq5X/GqoISREiat0l3L8B0a453B2B4dfHGcZaGyowHbp9BSaA==} + /@changesets/changelog-git@0.2.0: + resolution: {integrity: sha512-bHOx97iFI4OClIT35Lok3sJAwM31VbUM++gnMBV16fdbtBhgYu4dxsphBF/0AZZsyAHMrnM0yFcj5gZM1py6uQ==} dependencies: - '@changesets/types': 5.2.1 + '@changesets/types': 6.0.0 dev: true - /@changesets/changelog-github@0.4.8: - resolution: {integrity: sha512-jR1DHibkMAb5v/8ym77E4AMNWZKB5NPzw5a5Wtqm1JepAuIF+hrKp2u04NKM14oBZhHglkCfrla9uq8ORnK/dw==} + /@changesets/changelog-github@0.5.0: + resolution: {integrity: sha512-zoeq2LJJVcPJcIotHRJEEA2qCqX0AQIeFE+L21L8sRLPVqDhSXY8ZWAt2sohtBpFZkBwu+LUwMSKRr2lMy3LJA==} dependencies: - '@changesets/get-github-info': 0.5.2 - '@changesets/types': 5.2.1 + '@changesets/get-github-info': 0.6.0 + '@changesets/types': 6.0.0 dotenv: 8.6.0 transitivePeerDependencies: - encoding dev: true - /@changesets/cli@2.26.2: - resolution: {integrity: sha512-dnWrJTmRR8bCHikJHl9b9HW3gXACCehz4OasrXpMp7sx97ECuBGGNjJhjPhdZNCvMy9mn4BWdplI323IbqsRig==} + /@changesets/cli@2.27.1: + resolution: {integrity: sha512-iJ91xlvRnnrJnELTp4eJJEOPjgpF3NOh4qeQehM6Ugiz9gJPRZ2t+TsXun6E3AMN4hScZKjqVXl0TX+C7AB3ZQ==} hasBin: true dependencies: - '@babel/runtime': 7.22.6 - '@changesets/apply-release-plan': 6.1.4 - '@changesets/assemble-release-plan': 5.2.4 - '@changesets/changelog-git': 0.1.14 - '@changesets/config': 2.3.1 - '@changesets/errors': 0.1.4 - '@changesets/get-dependents-graph': 1.3.6 - '@changesets/get-release-plan': 3.0.17 - '@changesets/git': 2.0.0 - '@changesets/logger': 0.0.5 - '@changesets/pre': 1.0.14 - '@changesets/read': 0.5.9 - '@changesets/types': 5.2.1 - '@changesets/write': 0.2.3 + '@babel/runtime': 7.23.4 + '@changesets/apply-release-plan': 7.0.0 + '@changesets/assemble-release-plan': 6.0.0 + '@changesets/changelog-git': 0.2.0 + '@changesets/config': 3.0.0 + '@changesets/errors': 0.2.0 + '@changesets/get-dependents-graph': 2.0.0 + '@changesets/get-release-plan': 4.0.0 + '@changesets/git': 3.0.0 + '@changesets/logger': 0.1.0 + '@changesets/pre': 2.0.0 + '@changesets/read': 0.6.0 + '@changesets/types': 6.0.0 + '@changesets/write': 0.3.0 '@manypkg/get-packages': 1.1.3 - '@types/is-ci': 3.0.0 - '@types/semver': 7.5.0 + '@types/semver': 7.5.6 ansi-colors: 4.1.3 chalk: 2.4.2 - enquirer: 2.3.6 + ci-info: 3.9.0 + enquirer: 2.4.1 external-editor: 3.1.0 fs-extra: 7.0.1 human-id: 1.0.2 - is-ci: 3.0.1 meow: 6.1.1 outdent: 0.5.0 p-limit: 2.3.0 - preferred-pm: 3.0.3 + preferred-pm: 3.1.2 resolve-from: 5.0.0 - semver: 7.5.3 + semver: 7.5.4 spawndamnit: 2.0.0 term-size: 2.2.1 - tty-table: 4.2.1 + tty-table: 4.2.3 dev: true - /@changesets/config@2.3.1: - resolution: {integrity: sha512-PQXaJl82CfIXddUOppj4zWu+987GCw2M+eQcOepxN5s+kvnsZOwjEJO3DH9eVy+OP6Pg/KFEWdsECFEYTtbg6w==} + /@changesets/config@3.0.0: + resolution: {integrity: sha512-o/rwLNnAo/+j9Yvw9mkBQOZySDYyOr/q+wptRLcAVGlU6djOeP9v1nlalbL9MFsobuBVQbZCTp+dIzdq+CLQUA==} dependencies: - '@changesets/errors': 0.1.4 - '@changesets/get-dependents-graph': 1.3.6 - '@changesets/logger': 0.0.5 - '@changesets/types': 5.2.1 + '@changesets/errors': 0.2.0 + '@changesets/get-dependents-graph': 2.0.0 + '@changesets/logger': 0.1.0 + '@changesets/types': 6.0.0 '@manypkg/get-packages': 1.1.3 fs-extra: 7.0.1 micromatch: 4.0.5 dev: true - /@changesets/errors@0.1.4: - resolution: {integrity: sha512-HAcqPF7snsUJ/QzkWoKfRfXushHTu+K5KZLJWPb34s4eCZShIf8BFO3fwq6KU8+G7L5KdtN2BzQAXOSXEyiY9Q==} + /@changesets/errors@0.2.0: + resolution: {integrity: sha512-6BLOQUscTpZeGljvyQXlWOItQyU71kCdGz7Pi8H8zdw6BI0g3m43iL4xKUVPWtG+qrrL9DTjpdn8eYuCQSRpow==} dependencies: extendable-error: 0.1.7 dev: true - /@changesets/get-dependents-graph@1.3.6: - resolution: {integrity: sha512-Q/sLgBANmkvUm09GgRsAvEtY3p1/5OCzgBE5vX3vgb5CvW0j7CEljocx5oPXeQSNph6FXulJlXV3Re/v3K3P3Q==} + /@changesets/get-dependents-graph@2.0.0: + resolution: {integrity: sha512-cafUXponivK4vBgZ3yLu944mTvam06XEn2IZGjjKc0antpenkYANXiiE6GExV/yKdsCnE8dXVZ25yGqLYZmScA==} dependencies: - '@changesets/types': 5.2.1 + '@changesets/types': 6.0.0 '@manypkg/get-packages': 1.1.3 chalk: 2.4.2 fs-extra: 7.0.1 - semver: 7.5.3 + semver: 7.5.4 dev: true - /@changesets/get-github-info@0.5.2: - resolution: {integrity: sha512-JppheLu7S114aEs157fOZDjFqUDpm7eHdq5E8SSR0gUBTEK0cNSHsrSR5a66xs0z3RWuo46QvA3vawp8BxDHvg==} + /@changesets/get-github-info@0.6.0: + resolution: {integrity: sha512-v/TSnFVXI8vzX9/w3DU2Ol+UlTZcu3m0kXTjTT4KlAdwSvwutcByYwyYn9hwerPWfPkT2JfpoX0KgvCEi8Q/SA==} dependencies: dataloader: 1.4.0 - node-fetch: 2.6.11 + node-fetch: 2.7.0 transitivePeerDependencies: - encoding dev: true - /@changesets/get-release-plan@3.0.17: - resolution: {integrity: sha512-6IwKTubNEgoOZwDontYc2x2cWXfr6IKxP3IhKeK+WjyD6y3M4Gl/jdQvBw+m/5zWILSOCAaGLu2ZF6Q+WiPniw==} + /@changesets/get-release-plan@4.0.0: + resolution: {integrity: sha512-9L9xCUeD/Tb6L/oKmpm8nyzsOzhdNBBbt/ZNcjynbHC07WW4E1eX8NMGC5g5SbM5z/V+MOrYsJ4lRW41GCbg3w==} dependencies: - '@babel/runtime': 7.22.6 - '@changesets/assemble-release-plan': 5.2.4 - '@changesets/config': 2.3.1 - '@changesets/pre': 1.0.14 - '@changesets/read': 0.5.9 - '@changesets/types': 5.2.1 + '@babel/runtime': 7.23.4 + '@changesets/assemble-release-plan': 6.0.0 + '@changesets/config': 3.0.0 + '@changesets/pre': 2.0.0 + '@changesets/read': 0.6.0 + '@changesets/types': 6.0.0 '@manypkg/get-packages': 1.1.3 dev: true - /@changesets/get-version-range-type@0.3.2: - resolution: {integrity: sha512-SVqwYs5pULYjYT4op21F2pVbcrca4qA/bAA3FmFXKMN7Y+HcO8sbZUTx3TAy2VXulP2FACd1aC7f2nTuqSPbqg==} + /@changesets/get-version-range-type@0.4.0: + resolution: {integrity: sha512-hwawtob9DryoGTpixy1D3ZXbGgJu1Rhr+ySH2PvTLHvkZuQ7sRT4oQwMh0hbqZH1weAooedEjRsbrWcGLCeyVQ==} dev: true - /@changesets/git@2.0.0: - resolution: {integrity: sha512-enUVEWbiqUTxqSnmesyJGWfzd51PY4H7mH9yUw0hPVpZBJ6tQZFMU3F3mT/t9OJ/GjyiM4770i+sehAn6ymx6A==} + /@changesets/git@3.0.0: + resolution: {integrity: sha512-vvhnZDHe2eiBNRFHEgMiGd2CT+164dfYyrJDhwwxTVD/OW0FUD6G7+4DIx1dNwkwjHyzisxGAU96q0sVNBns0w==} dependencies: - '@babel/runtime': 7.22.6 - '@changesets/errors': 0.1.4 - '@changesets/types': 5.2.1 + '@babel/runtime': 7.23.4 + '@changesets/errors': 0.2.0 + '@changesets/types': 6.0.0 '@manypkg/get-packages': 1.1.3 is-subdir: 1.2.0 micromatch: 4.0.5 spawndamnit: 2.0.0 dev: true - /@changesets/logger@0.0.5: - resolution: {integrity: sha512-gJyZHomu8nASHpaANzc6bkQMO9gU/ib20lqew1rVx753FOxffnCrJlGIeQVxNWCqM+o6OOleCo/ivL8UAO5iFw==} + /@changesets/logger@0.1.0: + resolution: {integrity: sha512-pBrJm4CQm9VqFVwWnSqKEfsS2ESnwqwH+xR7jETxIErZcfd1u2zBSqrHbRHR7xjhSgep9x2PSKFKY//FAshA3g==} dependencies: chalk: 2.4.2 dev: true - /@changesets/parse@0.3.16: - resolution: {integrity: sha512-127JKNd167ayAuBjUggZBkmDS5fIKsthnr9jr6bdnuUljroiERW7FBTDNnNVyJ4l69PzR57pk6mXQdtJyBCJKg==} + /@changesets/parse@0.4.0: + resolution: {integrity: sha512-TS/9KG2CdGXS27S+QxbZXgr8uPsP4yNJYb4BC2/NeFUj80Rni3TeD2qwWmabymxmrLo7JEsytXH1FbpKTbvivw==} dependencies: - '@changesets/types': 5.2.1 + '@changesets/types': 6.0.0 js-yaml: 3.14.1 dev: true - /@changesets/pre@1.0.14: - resolution: {integrity: sha512-dTsHmxQWEQekHYHbg+M1mDVYFvegDh9j/kySNuDKdylwfMEevTeDouR7IfHNyVodxZXu17sXoJuf2D0vi55FHQ==} + /@changesets/pre@2.0.0: + resolution: {integrity: sha512-HLTNYX/A4jZxc+Sq8D1AMBsv+1qD6rmmJtjsCJa/9MSRybdxh0mjbTvE6JYZQ/ZiQ0mMlDOlGPXTm9KLTU3jyw==} dependencies: - '@babel/runtime': 7.22.6 - '@changesets/errors': 0.1.4 - '@changesets/types': 5.2.1 + '@babel/runtime': 7.23.4 + '@changesets/errors': 0.2.0 + '@changesets/types': 6.0.0 '@manypkg/get-packages': 1.1.3 fs-extra: 7.0.1 dev: true - /@changesets/read@0.5.9: - resolution: {integrity: sha512-T8BJ6JS6j1gfO1HFq50kU3qawYxa4NTbI/ASNVVCBTsKquy2HYwM9r7ZnzkiMe8IEObAJtUVGSrePCOxAK2haQ==} + /@changesets/read@0.6.0: + resolution: {integrity: sha512-ZypqX8+/im1Fm98K4YcZtmLKgjs1kDQ5zHpc2U1qdtNBmZZfo/IBiG162RoP0CUF05tvp2y4IspH11PLnPxuuw==} dependencies: - '@babel/runtime': 7.22.6 - '@changesets/git': 2.0.0 - '@changesets/logger': 0.0.5 - '@changesets/parse': 0.3.16 - '@changesets/types': 5.2.1 + '@babel/runtime': 7.23.4 + '@changesets/git': 3.0.0 + '@changesets/logger': 0.1.0 + '@changesets/parse': 0.4.0 + '@changesets/types': 6.0.0 chalk: 2.4.2 fs-extra: 7.0.1 p-filter: 2.1.0 @@ -654,27 +613,20 @@ packages: resolution: {integrity: sha512-LDQvVDv5Kb50ny2s25Fhm3d9QSZimsoUGBsUioj6MC3qbMUCuC8GPIvk/M6IvXx3lYhAs0lwWUQLb+VIEUCECw==} dev: true - /@changesets/types@5.2.1: - resolution: {integrity: sha512-myLfHbVOqaq9UtUKqR/nZA/OY7xFjQMdfgfqeZIBK4d0hA6pgxArvdv8M+6NUzzBsjWLOtvApv8YHr4qM+Kpfg==} + /@changesets/types@6.0.0: + resolution: {integrity: sha512-b1UkfNulgKoWfqyHtzKS5fOZYSJO+77adgL7DLRDr+/7jhChN+QcHnbjiQVOz/U+Ts3PGNySq7diAItzDgugfQ==} dev: true - /@changesets/write@0.2.3: - resolution: {integrity: sha512-Dbamr7AIMvslKnNYsLFafaVORx4H0pvCA2MHqgtNCySMe1blImEyAEOzDmcgKAkgz4+uwoLz7demIrX+JBr/Xw==} + /@changesets/write@0.3.0: + resolution: {integrity: sha512-slGLb21fxZVUYbyea+94uFiD6ntQW0M2hIKNznFizDhZPDgn2c/fv1UzzlW43RVzh1BEDuIqW6hzlJ1OflNmcw==} dependencies: - '@babel/runtime': 7.22.6 - '@changesets/types': 5.2.1 + '@babel/runtime': 7.23.4 + '@changesets/types': 6.0.0 fs-extra: 7.0.1 human-id: 1.0.2 prettier: 2.8.8 dev: true - /@cspotcode/source-map-support@0.8.1: - resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} - engines: {node: '>=12'} - dependencies: - '@jridgewell/trace-mapping': 0.3.9 - dev: true - /@dependents/detective-less@3.0.2: resolution: {integrity: sha512-1YUvQ+e0eeTWAHoN8Uz2x2U37jZs6IGutiIE5LXId7cxfUGhtZjzxE06FdUiuiRrW+UE0vNCdSNPH2lY4dQCOQ==} engines: {node: '>=12'} @@ -687,83 +639,73 @@ packages: resolution: {integrity: sha512-E1q1JaOPeEUBhG//IUayqJQvNpqprZ0OCF8B/bIhUqSsMIp0Y74PgF8JPvDCrOdq43qiGUYAavVO8iCBHOoU/A==} dev: true - /@dprint/typescript@0.68.5: - resolution: {integrity: sha512-dHoRj84w5C8YerucLj//195nDkuHtAtwISByoHJg7OUzJNSu93oh29wBxbSShJQ/jkF335BwqiMbhPTXbTvzhA==} + /@dprint/typescript@0.85.1: + resolution: {integrity: sha512-rPwwm/RrFIolz6xHa8Kzpshuwpe+xu/XcEw9iUmRF2tnyIwxxaW7XoFKaQ+GfPju81cKpH4vJeq7/2IizKvyjg==} dev: true - /@effect-ts/build-utils@0.40.7(@effect-ts/core@0.60.5)(cpx@1.5.0)(picocolors@1.0.0): - resolution: {integrity: sha512-shABJprKL9xm5asIeHCuBP4V1FlqoO1TCc5yeiTSxx6VmLbRnNE2GEO7nY+GYF1Fzc0U6hT7h8pVKXm20S0Y/A==} + /@effect/build-utils@0.7.1: + resolution: {integrity: sha512-xYIALMRjdPR1Wb2cyj4R9y+T9/6x0ragIOsQRn4C2HRVCOvEpYyt3ME8TcrSu5De6M1XHT4PuQ5z5d9E0T6j2w==} + engines: {node: '>=16.17.1'} + hasBin: true + dev: true + + /@effect/docgen@0.3.8(tsx@4.7.0)(typescript@5.3.3): + resolution: {integrity: sha512-yg777LXbKjgpHS+PC2dXS5tHTWRXQoCgcWJtM7CsNkZ2mefvmO7aufiRCaWYDnCF58otv10Tijuyanii4b2cxQ==} + engines: {node: '>=16.17.1'} hasBin: true peerDependencies: - '@effect-ts/core': '>= 0.28.9' - cpx: '>= 1.5.0' - picocolors: ^1.0.0 + tsx: ^4.1.0 + typescript: ^5.2.2 dependencies: - '@effect-ts/core': 0.60.5 - cpx: 1.5.0 - picocolors: 1.0.0 + doctrine: 3.0.0 + glob: 10.3.10 + markdown-toc: github.com/effect-ts/markdown-toc/4bfeb0f140105440ea0d12df2fa23199cc3ec1d5 + prettier: 3.1.1 + tsx: 4.7.0 + typescript: 5.3.3 dev: true - /@effect-ts/core@0.60.5: - resolution: {integrity: sha512-qi1WrtJA90XLMnj2hnUszW9Sx4dXP03ZJtCc5DiUBIOhF4Vw7plfb65/bdBySPoC9s7zy995TdUX1XBSxUkl5w==} + /@effect/eslint-plugin@0.1.2: + resolution: {integrity: sha512-spBoeM9kF0rTM1JP8dfaubVUqUrkfijIUKqE6bh4gDw9qMYweT1HV9iXLzF5Dsj589wwVfk6sx5uqO09C4+w2w==} dependencies: - '@effect-ts/system': 0.57.5 + '@dprint/formatter': 0.2.0 + '@dprint/typescript': 0.85.1 + diff: 5.1.0 dev: true - /@effect-ts/system@0.57.5: - resolution: {integrity: sha512-/crHGujo0xnuHIYNc1VgP0HGJGFSoSqq88JFXe6FmFyXPpWt8Xu39LyLg7rchsxfXFeEdA9CrIZvLV5eswXV5g==} + /@effect/language-service@0.1.0: + resolution: {integrity: sha512-BnlM8LlaqCAYgdRfxlbR7gXGh/FD1scL1fPgNVJEPoOM08od1jtJz+iKhwfaud8TPnnhZR+TED2h5ynjanLeCQ==} dev: true - /@effect/babel-plugin@0.2.0(@babel/core@7.22.9): - resolution: {integrity: sha512-P6yBZmiKWkm6tzzHonqTQWzj92bguPoRKQzUw1yZh3wke+c35XoqvJjK2Cky6vgw/z4/YAbB9nikrb3rCqYetQ==} - peerDependencies: - '@babel/core': ^6.0.0-0 || 7.x - dependencies: - '@babel/core': 7.22.9 + /@esbuild/aix-ppc64@0.19.10: + resolution: {integrity: sha512-Q+mk96KJ+FZ30h9fsJl+67IjNJm3x2eX+GBWGmocAKgzp27cowCOOqSdscX80s0SpdFXZnIv/+1xD1EctFx96Q==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [aix] + requiresBuild: true dev: true + optional: true - /@effect/data@0.17.1: - resolution: {integrity: sha512-QCYkLE5Y5Dm5Yax5R3GmW4ZIgTx7W+kSZ7yq5eqQ/mFWa8i4yxbLuu8cudqzdeZtRtTGZKlhDxfFfgVtMywXJg==} - dev: false - - /@effect/docgen@0.1.2(@types/node@20.4.5)(typescript@5.1.6): - resolution: {integrity: sha512-qy1pA8SKsqla7/35Q2NuUeT/VwO/olg9hdmmY929wSrKhRVVPOmnF4cbCvFxbykikYek0/6/thupSUenYV0DvQ==} - engines: {node: '>=16.17.1'} - hasBin: true - peerDependencies: - typescript: ^5.x - dependencies: - chalk: 2.4.2 - doctrine: 3.0.0 - fs-extra: 11.1.1 - glob: 10.3.1 - markdown-toc: 1.2.0 - prettier: 2.8.8 - rimraf: 5.0.1 - ts-morph: 19.0.0 - ts-node: 10.9.1(@types/node@20.4.5)(typescript@5.1.6) - typescript: 5.1.6 - transitivePeerDependencies: - - '@swc/core' - - '@swc/wasm' - - '@types/node' + /@esbuild/aix-ppc64@0.19.11: + resolution: {integrity: sha512-FnzU0LyE3ySQk7UntJO4+qIiQgI7KoODnZg5xzXIrFJlKd2P2gwHsHY4927xj9y5PJmJSzULiUCWmv7iWnNa7g==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [aix] + requiresBuild: true dev: true + optional: true - /@effect/io@0.36.1: - resolution: {integrity: sha512-qktbbvQX+tCQ2wxBcpr8g89ZAIAzRaq+/tWGogdVxfthWIhiLSagMeKYzLHqQ/MaXzN7sQSYLHbFgxcE+D8keQ==} - dependencies: - '@effect/data': 0.17.1 - dev: false - - /@effect/language-service@0.0.19: - resolution: {integrity: sha512-sKNVo031dkwLfe1jHZzdTiF1UXgLq1lAYd2JG7q416dlmMoxRcMXrZWyw6a/SxIDM0hyIJAEmrz5iUkQPcPdBQ==} - dependencies: - '@fp-ts/core': 0.0.11 - '@fp-ts/data': 0.0.41 + /@esbuild/android-arm64@0.19.10: + resolution: {integrity: sha512-1X4CClKhDgC3by7k8aOWZeBXQX8dHT5QAMCAQDArCLaYfkppoARvh0fit3X2Qs+MXDngKcHv6XXyQCpY0hkK1Q==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + requiresBuild: true dev: true + optional: true - /@esbuild/android-arm64@0.18.16: - resolution: {integrity: sha512-wsCqSPqLz+6Ov+OM4EthU43DyYVVyfn15S4j1bJzylDpc1r1jZFFfJQNfDuT8SlgwuqpmpJXK4uPlHGw6ve7eA==} + /@esbuild/android-arm64@0.19.11: + resolution: {integrity: sha512-aiu7K/5JnLj//KOnOfEZ0D90obUkRzDMyqd/wNAUQ34m4YUPVhRZpnqKV9uqDGxT7cToSDnIHsGooyIczu9T+Q==} engines: {node: '>=12'} cpu: [arm64] os: [android] @@ -771,8 +713,8 @@ packages: dev: true optional: true - /@esbuild/android-arm@0.18.16: - resolution: {integrity: sha512-gCHjjQmA8L0soklKbLKA6pgsLk1byULuHe94lkZDzcO3/Ta+bbeewJioEn1Fr7kgy9NWNFy/C+MrBwC6I/WCug==} + /@esbuild/android-arm@0.19.10: + resolution: {integrity: sha512-7W0bK7qfkw1fc2viBfrtAEkDKHatYfHzr/jKAHNr9BvkYDXPcC6bodtm8AyLJNNuqClLNaeTLuwURt4PRT9d7w==} engines: {node: '>=12'} cpu: [arm] os: [android] @@ -780,8 +722,17 @@ packages: dev: true optional: true - /@esbuild/android-x64@0.18.16: - resolution: {integrity: sha512-ldsTXolyA3eTQ1//4DS+E15xl0H/3DTRJaRL0/0PgkqDsI0fV/FlOtD+h0u/AUJr+eOTlZv4aC9gvfppo3C4sw==} + /@esbuild/android-arm@0.19.11: + resolution: {integrity: sha512-5OVapq0ClabvKvQ58Bws8+wkLCV+Rxg7tUVbo9xu034Nm536QTII4YzhaFriQ7rMrorfnFKUsArD2lqKbFY4vw==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/android-x64@0.19.10: + resolution: {integrity: sha512-O/nO/g+/7NlitUxETkUv/IvADKuZXyH4BHf/g/7laqKC4i/7whLpB0gvpPc2zpF0q9Q6FXS3TS75QHac9MvVWw==} engines: {node: '>=12'} cpu: [x64] os: [android] @@ -789,8 +740,26 @@ packages: dev: true optional: true - /@esbuild/darwin-arm64@0.18.16: - resolution: {integrity: sha512-aBxruWCII+OtluORR/KvisEw0ALuw/qDQWvkoosA+c/ngC/Kwk0lLaZ+B++LLS481/VdydB2u6tYpWxUfnLAIw==} + /@esbuild/android-x64@0.19.11: + resolution: {integrity: sha512-eccxjlfGw43WYoY9QgB82SgGgDbibcqyDTlk3l3C0jOVHKxrjdc9CTwDUQd0vkvYg5um0OH+GpxYvp39r+IPOg==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/darwin-arm64@0.19.10: + resolution: {integrity: sha512-YSRRs2zOpwypck+6GL3wGXx2gNP7DXzetmo5pHXLrY/VIMsS59yKfjPizQ4lLt5vEI80M41gjm2BxrGZ5U+VMA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@esbuild/darwin-arm64@0.19.11: + resolution: {integrity: sha512-ETp87DRWuSt9KdDVkqSoKoLFHYTrkyz2+65fj9nfXsaV3bMhTCjtQfw3y+um88vGRKRiF7erPrh/ZuIdLUIVxQ==} engines: {node: '>=12'} cpu: [arm64] os: [darwin] @@ -798,8 +767,8 @@ packages: dev: true optional: true - /@esbuild/darwin-x64@0.18.16: - resolution: {integrity: sha512-6w4Dbue280+rp3LnkgmriS1icOUZDyPuZo/9VsuMUTns7SYEiOaJ7Ca1cbhu9KVObAWfmdjUl4gwy9TIgiO5eA==} + /@esbuild/darwin-x64@0.19.10: + resolution: {integrity: sha512-alfGtT+IEICKtNE54hbvPg13xGBe4GkVxyGWtzr+yHO7HIiRJppPDhOKq3zstTcVf8msXb/t4eavW3jCDpMSmA==} engines: {node: '>=12'} cpu: [x64] os: [darwin] @@ -807,8 +776,17 @@ packages: dev: true optional: true - /@esbuild/freebsd-arm64@0.18.16: - resolution: {integrity: sha512-x35fCebhe9s979DGKbVAwXUOcTmCIE32AIqB9CB1GralMIvxdnMLAw5CnID17ipEw9/3MvDsusj/cspYt2ZLNQ==} + /@esbuild/darwin-x64@0.19.11: + resolution: {integrity: sha512-fkFUiS6IUK9WYUO/+22omwetaSNl5/A8giXvQlcinLIjVkxwTLSktbF5f/kJMftM2MJp9+fXqZ5ezS7+SALp4g==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@esbuild/freebsd-arm64@0.19.10: + resolution: {integrity: sha512-dMtk1wc7FSH8CCkE854GyGuNKCewlh+7heYP/sclpOG6Cectzk14qdUIY5CrKDbkA/OczXq9WesqnPl09mj5dg==} engines: {node: '>=12'} cpu: [arm64] os: [freebsd] @@ -816,8 +794,26 @@ packages: dev: true optional: true - /@esbuild/freebsd-x64@0.18.16: - resolution: {integrity: sha512-YM98f+PeNXF3GbxIJlUsj+McUWG1irguBHkszCIwfr3BXtXZsXo0vqybjUDFfu9a8Wr7uUD/YSmHib+EeGAFlg==} + /@esbuild/freebsd-arm64@0.19.11: + resolution: {integrity: sha512-lhoSp5K6bxKRNdXUtHoNc5HhbXVCS8V0iZmDvyWvYq9S5WSfTIHU2UGjcGt7UeS6iEYp9eeymIl5mJBn0yiuxA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/freebsd-x64@0.19.10: + resolution: {integrity: sha512-G5UPPspryHu1T3uX8WiOEUa6q6OlQh6gNl4CO4Iw5PS+Kg5bVggVFehzXBJY6X6RSOMS8iXDv2330VzaObm4Ag==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/freebsd-x64@0.19.11: + resolution: {integrity: sha512-JkUqn44AffGXitVI6/AbQdoYAq0TEullFdqcMY/PCUZ36xJ9ZJRtQabzMA+Vi7r78+25ZIBosLTOKnUXBSi1Kw==} engines: {node: '>=12'} cpu: [x64] os: [freebsd] @@ -825,8 +821,8 @@ packages: dev: true optional: true - /@esbuild/linux-arm64@0.18.16: - resolution: {integrity: sha512-XIqhNUxJiuy+zsR77+H5Z2f7s4YRlriSJKtvx99nJuG5ATuJPjmZ9n0ANgnGlPCpXGSReFpgcJ7O3SMtzIFeiQ==} + /@esbuild/linux-arm64@0.19.10: + resolution: {integrity: sha512-QxaouHWZ+2KWEj7cGJmvTIHVALfhpGxo3WLmlYfJ+dA5fJB6lDEIg+oe/0//FuyVHuS3l79/wyBxbHr0NgtxJQ==} engines: {node: '>=12'} cpu: [arm64] os: [linux] @@ -834,8 +830,17 @@ packages: dev: true optional: true - /@esbuild/linux-arm@0.18.16: - resolution: {integrity: sha512-b5ABb+5Ha2C9JkeZXV+b+OruR1tJ33ePmv9ZwMeETSEKlmu/WJ45XTTG+l6a2KDsQtJJ66qo/hbSGBtk0XVLHw==} + /@esbuild/linux-arm64@0.19.11: + resolution: {integrity: sha512-LneLg3ypEeveBSMuoa0kwMpCGmpu8XQUh+mL8XXwoYZ6Be2qBnVtcDI5azSvh7vioMDhoJFZzp9GWp9IWpYoUg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-arm@0.19.10: + resolution: {integrity: sha512-j6gUW5aAaPgD416Hk9FHxn27On28H4eVI9rJ4az7oCGTFW48+LcgNDBN+9f8rKZz7EEowo889CPKyeaD0iw9Kg==} engines: {node: '>=12'} cpu: [arm] os: [linux] @@ -843,8 +848,17 @@ packages: dev: true optional: true - /@esbuild/linux-ia32@0.18.16: - resolution: {integrity: sha512-no+pfEpwnRvIyH+txbBAWtjxPU9grslmTBfsmDndj7bnBmr55rOo/PfQmRfz7Qg9isswt1FP5hBbWb23fRWnow==} + /@esbuild/linux-arm@0.19.11: + resolution: {integrity: sha512-3CRkr9+vCV2XJbjwgzjPtO8T0SZUmRZla+UL1jw+XqHZPkPgZiyWvbDvl9rqAN8Zl7qJF0O/9ycMtjU67HN9/Q==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-ia32@0.19.10: + resolution: {integrity: sha512-4ub1YwXxYjj9h1UIZs2hYbnTZBtenPw5NfXCRgEkGb0b6OJ2gpkMvDqRDYIDRjRdWSe/TBiZltm3Y3Q8SN1xNg==} engines: {node: '>=12'} cpu: [ia32] os: [linux] @@ -852,8 +866,17 @@ packages: dev: true optional: true - /@esbuild/linux-loong64@0.18.16: - resolution: {integrity: sha512-Zbnczs9ZXjmo0oZSS0zbNlJbcwKXa/fcNhYQjahDs4Xg18UumpXG/lwM2lcSvHS3mTrRyCYZvJbmzYc4laRI1g==} + /@esbuild/linux-ia32@0.19.11: + resolution: {integrity: sha512-caHy++CsD8Bgq2V5CodbJjFPEiDPq8JJmBdeyZ8GWVQMjRD0sU548nNdwPNvKjVpamYYVL40AORekgfIubwHoA==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-loong64@0.19.10: + resolution: {integrity: sha512-lo3I9k+mbEKoxtoIbM0yC/MZ1i2wM0cIeOejlVdZ3D86LAcFXFRdeuZmh91QJvUTW51bOK5W2BznGNIl4+mDaA==} engines: {node: '>=12'} cpu: [loong64] os: [linux] @@ -861,8 +884,26 @@ packages: dev: true optional: true - /@esbuild/linux-mips64el@0.18.16: - resolution: {integrity: sha512-YMF7hih1HVR/hQVa/ot4UVffc5ZlrzEb3k2ip0nZr1w6fnYypll9td2qcoMLvd3o8j3y6EbJM3MyIcXIVzXvQQ==} + /@esbuild/linux-loong64@0.19.11: + resolution: {integrity: sha512-ppZSSLVpPrwHccvC6nQVZaSHlFsvCQyjnvirnVjbKSHuE5N24Yl8F3UwYUUR1UEPaFObGD2tSvVKbvR+uT1Nrg==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-mips64el@0.19.10: + resolution: {integrity: sha512-J4gH3zhHNbdZN0Bcr1QUGVNkHTdpijgx5VMxeetSk6ntdt+vR1DqGmHxQYHRmNb77tP6GVvD+K0NyO4xjd7y4A==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-mips64el@0.19.11: + resolution: {integrity: sha512-B5x9j0OgjG+v1dF2DkH34lr+7Gmv0kzX6/V0afF41FkPMMqaQ77pH7CrhWeR22aEeHKaeZVtZ6yFwlxOKPVFyg==} engines: {node: '>=12'} cpu: [mips64el] os: [linux] @@ -870,8 +911,17 @@ packages: dev: true optional: true - /@esbuild/linux-ppc64@0.18.16: - resolution: {integrity: sha512-Wkz++LZ29lDwUyTSEnzDaaP5OveOgTU69q9IyIw9WqLRxM4BjTBjz9un4G6TOvehWpf/J3gYVFN96TjGHrbcNQ==} + /@esbuild/linux-ppc64@0.19.10: + resolution: {integrity: sha512-tgT/7u+QhV6ge8wFMzaklOY7KqiyitgT1AUHMApau32ZlvTB/+efeCtMk4eXS+uEymYK249JsoiklZN64xt6oQ==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-ppc64@0.19.11: + resolution: {integrity: sha512-MHrZYLeCG8vXblMetWyttkdVRjQlQUb/oMgBNurVEnhj4YWOr4G5lmBfZjHYQHHN0g6yDmCAQRR8MUHldvvRDA==} engines: {node: '>=12'} cpu: [ppc64] os: [linux] @@ -879,8 +929,17 @@ packages: dev: true optional: true - /@esbuild/linux-riscv64@0.18.16: - resolution: {integrity: sha512-LFMKZ30tk78/mUv1ygvIP+568bwf4oN6reG/uczXnz6SvFn4e2QUFpUpZY9iSJT6Qpgstrhef/nMykIXZtZWGQ==} + /@esbuild/linux-riscv64@0.19.10: + resolution: {integrity: sha512-0f/spw0PfBMZBNqtKe5FLzBDGo0SKZKvMl5PHYQr3+eiSscfJ96XEknCe+JoOayybWUFQbcJTrk946i3j9uYZA==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-riscv64@0.19.11: + resolution: {integrity: sha512-f3DY++t94uVg141dozDu4CCUkYW+09rWtaWfnb3bqe4w5NqmZd6nPVBm+qbz7WaHZCoqXqHz5p6CM6qv3qnSSQ==} engines: {node: '>=12'} cpu: [riscv64] os: [linux] @@ -888,8 +947,8 @@ packages: dev: true optional: true - /@esbuild/linux-s390x@0.18.16: - resolution: {integrity: sha512-3ZC0BgyYHYKfZo3AV2/66TD/I9tlSBaW7eWTEIkrQQKfJIifKMMttXl9FrAg+UT0SGYsCRLI35Gwdmm96vlOjg==} + /@esbuild/linux-s390x@0.19.10: + resolution: {integrity: sha512-pZFe0OeskMHzHa9U38g+z8Yx5FNCLFtUnJtQMpwhS+r4S566aK2ci3t4NCP4tjt6d5j5uo4h7tExZMjeKoehAA==} engines: {node: '>=12'} cpu: [s390x] os: [linux] @@ -897,8 +956,17 @@ packages: dev: true optional: true - /@esbuild/linux-x64@0.18.16: - resolution: {integrity: sha512-xu86B3647DihHJHv/wx3NCz2Dg1gjQ8bbf9cVYZzWKY+gsvxYmn/lnVlqDRazObc3UMwoHpUhNYaZset4X8IPA==} + /@esbuild/linux-s390x@0.19.11: + resolution: {integrity: sha512-A5xdUoyWJHMMlcSMcPGVLzYzpcY8QP1RtYzX5/bS4dvjBGVxdhuiYyFwp7z74ocV7WDc0n1harxmpq2ePOjI0Q==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-x64@0.19.10: + resolution: {integrity: sha512-SpYNEqg/6pZYoc+1zLCjVOYvxfZVZj6w0KROZ3Fje/QrM3nfvT2llI+wmKSrWuX6wmZeTapbarvuNNK/qepSgA==} engines: {node: '>=12'} cpu: [x64] os: [linux] @@ -906,8 +974,26 @@ packages: dev: true optional: true - /@esbuild/netbsd-x64@0.18.16: - resolution: {integrity: sha512-uVAgpimx9Ffw3xowtg/7qQPwHFx94yCje+DoBx+LNm2ePDpQXHrzE+Sb0Si2VBObYz+LcRps15cq+95YM7gkUw==} + /@esbuild/linux-x64@0.19.11: + resolution: {integrity: sha512-grbyMlVCvJSfxFQUndw5mCtWs5LO1gUlwP4CDi4iJBbVpZcqLVT29FxgGuBJGSzyOxotFG4LoO5X+M1350zmPA==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/netbsd-x64@0.19.10: + resolution: {integrity: sha512-ACbZ0vXy9zksNArWlk2c38NdKg25+L9pr/mVaj9SUq6lHZu/35nx2xnQVRGLrC1KKQqJKRIB0q8GspiHI3J80Q==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/netbsd-x64@0.19.11: + resolution: {integrity: sha512-13jvrQZJc3P230OhU8xgwUnDeuC/9egsjTkXN49b3GcS5BKvJqZn86aGM8W9pd14Kd+u7HuFBMVtrNGhh6fHEQ==} engines: {node: '>=12'} cpu: [x64] os: [netbsd] @@ -915,8 +1001,8 @@ packages: dev: true optional: true - /@esbuild/openbsd-x64@0.18.16: - resolution: {integrity: sha512-6OjCQM9wf7z8/MBi6BOWaTL2AS/SZudsZtBziXMtNI8r/U41AxS9x7jn0ATOwVy08OotwkPqGRMkpPR2wcTJXA==} + /@esbuild/openbsd-x64@0.19.10: + resolution: {integrity: sha512-PxcgvjdSjtgPMiPQrM3pwSaG4kGphP+bLSb+cihuP0LYdZv1epbAIecHVl5sD3npkfYBZ0ZnOjR878I7MdJDFg==} engines: {node: '>=12'} cpu: [x64] os: [openbsd] @@ -924,8 +1010,26 @@ packages: dev: true optional: true - /@esbuild/sunos-x64@0.18.16: - resolution: {integrity: sha512-ZoNkruFYJp9d1LbUYCh8awgQDvB9uOMZqlQ+gGEZR7v6C+N6u7vPr86c+Chih8niBR81Q/bHOSKGBK3brJyvkQ==} + /@esbuild/openbsd-x64@0.19.11: + resolution: {integrity: sha512-ysyOGZuTp6SNKPE11INDUeFVVQFrhcNDVUgSQVDzqsqX38DjhPEPATpid04LCoUr2WXhQTEZ8ct/EgJCUDpyNw==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/sunos-x64@0.19.10: + resolution: {integrity: sha512-ZkIOtrRL8SEJjr+VHjmW0znkPs+oJXhlJbNwfI37rvgeMtk3sxOQevXPXjmAPZPigVTncvFqLMd+uV0IBSEzqA==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + requiresBuild: true + dev: true + optional: true + + /@esbuild/sunos-x64@0.19.11: + resolution: {integrity: sha512-Hf+Sad9nVwvtxy4DXCZQqLpgmRTQqyFyhT3bZ4F2XlJCjxGmRFF0Shwn9rzhOYRB61w9VMXUkxlBy56dk9JJiQ==} engines: {node: '>=12'} cpu: [x64] os: [sunos] @@ -933,8 +1037,8 @@ packages: dev: true optional: true - /@esbuild/win32-arm64@0.18.16: - resolution: {integrity: sha512-+j4anzQ9hrs+iqO+/wa8UE6TVkKua1pXUb0XWFOx0FiAj6R9INJ+WE//1/Xo6FG1vB5EpH3ko+XcgwiDXTxcdw==} + /@esbuild/win32-arm64@0.19.10: + resolution: {integrity: sha512-+Sa4oTDbpBfGpl3Hn3XiUe4f8TU2JF7aX8cOfqFYMMjXp6ma6NJDztl5FDG8Ezx0OjwGikIHw+iA54YLDNNVfw==} engines: {node: '>=12'} cpu: [arm64] os: [win32] @@ -942,8 +1046,26 @@ packages: dev: true optional: true - /@esbuild/win32-ia32@0.18.16: - resolution: {integrity: sha512-5PFPmq3sSKTp9cT9dzvI67WNfRZGvEVctcZa1KGjDDu4n3H8k59Inbk0du1fz0KrAbKKNpJbdFXQMDUz7BG4rQ==} + /@esbuild/win32-arm64@0.19.11: + resolution: {integrity: sha512-0P58Sbi0LctOMOQbpEOvOL44Ne0sqbS0XWHMvvrg6NE5jQ1xguCSSw9jQeUk2lfrXYsKDdOe6K+oZiwKPilYPQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-ia32@0.19.10: + resolution: {integrity: sha512-EOGVLK1oWMBXgfttJdPHDTiivYSjX6jDNaATeNOaCOFEVcfMjtbx7WVQwPSE1eIfCp/CaSF2nSrDtzc4I9f8TQ==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-ia32@0.19.11: + resolution: {integrity: sha512-6YOrWS+sDJDmshdBIQU+Uoyh7pQKrdykdefC1avn76ss5c+RN6gut3LZA4E2cH5xUEp5/cA0+YxRaVtRAb0xBg==} engines: {node: '>=12'} cpu: [ia32] os: [win32] @@ -951,8 +1073,8 @@ packages: dev: true optional: true - /@esbuild/win32-x64@0.18.16: - resolution: {integrity: sha512-sCIVrrtcWN5Ua7jYXNG1xD199IalrbfV2+0k/2Zf2OyV2FtnQnMgdzgpRAbi4AWlKJj1jkX+M+fEGPQj6BQB4w==} + /@esbuild/win32-x64@0.19.10: + resolution: {integrity: sha512-whqLG6Sc70AbU73fFYvuYzaE4MNMBIlR1Y/IrUeOXFrWHxBEjjbZaQ3IXIQS8wJdAzue2GwYZCjOrgrU1oUHoA==} engines: {node: '>=12'} cpu: [x64] os: [win32] @@ -960,35 +1082,39 @@ packages: dev: true optional: true - /@eslint-community/eslint-utils@4.4.0(eslint@8.46.0): + /@esbuild/win32-x64@0.19.11: + resolution: {integrity: sha512-vfkhltrjCAb603XaFhqhAF4LGDi2M4OrCRrFusyQ+iTLQ/o60QQXxc9cZC/FFpihBI9N1Grn6SMKVJ4KP7Fuiw==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@eslint-community/eslint-utils@4.4.0(eslint@8.56.0): resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 dependencies: - eslint: 8.46.0 - eslint-visitor-keys: 3.4.2 + eslint: 8.56.0 + eslint-visitor-keys: 3.4.3 dev: true - /@eslint-community/regexpp@4.6.1: - resolution: {integrity: sha512-O7x6dMstWLn2ktjcoiNLDkAGG2EjveHL+Vvc+n0fXumkJYAcSqcVYKtwDU+hDZ0uDUsnUagSYaZrOLAYE8un1A==} + /@eslint-community/regexpp@4.10.0: + resolution: {integrity: sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} dev: true - /@eslint-community/regexpp@4.6.2: - resolution: {integrity: sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==} - engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - dev: true - - /@eslint/eslintrc@2.1.1: - resolution: {integrity: sha512-9t7ZA7NGGK8ckelF0PQCfcxIUzs1Md5rrO6U/c+FIQNanea5UZC0wqKXH4vHBccmu4ZJgZ2idtPeW7+Q2npOEA==} + /@eslint/eslintrc@2.1.4: + resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: ajv: 6.12.6 debug: 4.3.4 espree: 9.6.1 - globals: 13.20.0 - ignore: 5.2.4 + globals: 13.24.0 + ignore: 5.3.0 import-fresh: 3.3.0 js-yaml: 4.1.0 minimatch: 3.1.2 @@ -997,26 +1123,16 @@ packages: - supports-color dev: true - /@eslint/js@8.46.0: - resolution: {integrity: sha512-a8TLtmPi8xzPkCbp/OGFUo5yhRkHM2Ko9kOWP4znJr0WAhWyThaw3PnwX4vOTWOAMsV2uRt32PPDcEz63esSaA==} + /@eslint/js@8.56.0: + resolution: {integrity: sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /@fp-ts/core@0.0.11: - resolution: {integrity: sha512-BCAJBYzghwoJpcUOARJ1tui50HoYJFlV2pJlVMlsEkDFhD8MTtq8xQVpZCRF66RmtkxtGBYINCQ+5H1lRaL35Q==} - dev: true - - /@fp-ts/data@0.0.41: - resolution: {integrity: sha512-0S93kOQ91D7wp60q/PSVWvMsJjSWJutjt4qX/BvVNV7+fymuC2hTfW2HlE2OcMK11xCNiI6Rq2AkvyzoMhOlpg==} - dependencies: - '@fp-ts/core': 0.0.11 - dev: true - - /@humanwhocodes/config-array@0.11.10: - resolution: {integrity: sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==} + /@humanwhocodes/config-array@0.11.13: + resolution: {integrity: sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==} engines: {node: '>=10.10.0'} dependencies: - '@humanwhocodes/object-schema': 1.2.1 + '@humanwhocodes/object-schema': 2.0.1 debug: 4.3.4 minimatch: 3.1.2 transitivePeerDependencies: @@ -1028,8 +1144,8 @@ packages: engines: {node: '>=12.22'} dev: true - /@humanwhocodes/object-schema@1.2.1: - resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} + /@humanwhocodes/object-schema@2.0.1: + resolution: {integrity: sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==} dev: true /@isaacs/cliui@8.0.2: @@ -1049,21 +1165,29 @@ packages: engines: {node: '>=8'} dev: true - /@jest/schemas@29.6.0: - resolution: {integrity: sha512-rxLjXyJBTL4LQeJW3aKo0M/+GkCOXsO+8i9Iu7eDb6KwtP65ayoDsitrdPBtujxQ88k4wI2FNYfa6TOGwSn6cQ==} + /@jest/expect-utils@29.7.0: + resolution: {integrity: sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + jest-get-type: 29.6.3 + dev: true + + /@jest/schemas@29.6.3: + resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: '@sinclair/typebox': 0.27.8 dev: true - /@jest/types@26.6.2: - resolution: {integrity: sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==} - engines: {node: '>= 10.14.2'} + /@jest/types@29.6.3: + resolution: {integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@types/istanbul-lib-coverage': 2.0.4 - '@types/istanbul-reports': 3.0.1 - '@types/node': 20.4.5 - '@types/yargs': 15.0.15 + '@jest/schemas': 29.6.3 + '@types/istanbul-lib-coverage': 2.0.6 + '@types/istanbul-reports': 3.0.4 + '@types/node': 20.10.7 + '@types/yargs': 17.0.32 chalk: 4.1.2 dev: true @@ -1073,12 +1197,7 @@ packages: dependencies: '@jridgewell/set-array': 1.1.2 '@jridgewell/sourcemap-codec': 1.4.15 - '@jridgewell/trace-mapping': 0.3.18 - dev: true - - /@jridgewell/resolve-uri@3.1.0: - resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==} - engines: {node: '>=6.0.0'} + '@jridgewell/trace-mapping': 0.3.20 dev: true /@jridgewell/resolve-uri@3.1.1: @@ -1091,23 +1210,12 @@ packages: engines: {node: '>=6.0.0'} dev: true - /@jridgewell/sourcemap-codec@1.4.14: - resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==} - dev: true - /@jridgewell/sourcemap-codec@1.4.15: resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} dev: true - /@jridgewell/trace-mapping@0.3.18: - resolution: {integrity: sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==} - dependencies: - '@jridgewell/resolve-uri': 3.1.0 - '@jridgewell/sourcemap-codec': 1.4.14 - dev: true - - /@jridgewell/trace-mapping@0.3.9: - resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} + /@jridgewell/trace-mapping@0.3.20: + resolution: {integrity: sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==} dependencies: '@jridgewell/resolve-uri': 3.1.1 '@jridgewell/sourcemap-codec': 1.4.15 @@ -1116,7 +1224,7 @@ packages: /@manypkg/find-root@1.1.0: resolution: {integrity: sha512-mki5uBvhHzO8kYYix/WRy2WX8S3B5wdVSc9D6KcU5lQNglP2yt58/VfLuAK49glRXChosY8ap2oJ1qgma3GUVA==} dependencies: - '@babel/runtime': 7.22.6 + '@babel/runtime': 7.23.4 '@types/node': 12.20.55 find-up: 4.1.0 fs-extra: 8.1.0 @@ -1125,7 +1233,7 @@ packages: /@manypkg/get-packages@1.1.3: resolution: {integrity: sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A==} dependencies: - '@babel/runtime': 7.22.6 + '@babel/runtime': 7.23.4 '@changesets/types': 4.1.0 '@manypkg/find-root': 1.1.0 fs-extra: 8.1.0 @@ -1167,140 +1275,235 @@ packages: dev: true optional: true - /@pkgr/utils@2.4.1: - resolution: {integrity: sha512-JOqwkgFEyi+OROIyq7l4Jy28h/WwhDnG/cPkXG2Z1iFbubB6jsHW1NDvmyOzTBxHr3yg68YGirmh1JUgMqa+9w==} - engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} - dependencies: - cross-spawn: 7.0.3 - fast-glob: 3.3.1 - is-glob: 4.0.3 - open: 9.1.0 - picocolors: 1.0.0 - tslib: 2.6.1 + /@rollup/rollup-android-arm-eabi@4.9.4: + resolution: {integrity: sha512-ub/SN3yWqIv5CWiAZPHVS1DloyZsJbtXmX4HxUTIpS0BHm9pW5iYBo2mIZi+hE3AeiTzHz33blwSnhdUo+9NpA==} + cpu: [arm] + os: [android] + requiresBuild: true dev: true + optional: true - /@polka/url@1.0.0-next.21: - resolution: {integrity: sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==} + /@rollup/rollup-android-arm64@4.9.4: + resolution: {integrity: sha512-ehcBrOR5XTl0W0t2WxfTyHCR/3Cq2jfb+I4W+Ch8Y9b5G+vbAecVv0Fx/J1QKktOrgUYsIKxWAKgIpvw56IFNA==} + cpu: [arm64] + os: [android] + requiresBuild: true dev: true + optional: true - /@repo-tooling/eslint-plugin-dprint@0.0.4(typescript@5.1.6): - resolution: {integrity: sha512-1gQXioqAlyYoRLAQ/4GQ3id8VI9nNO8KKGbbSl5xZf+lo/7Q2zDFhFiuG6owHFYh+2nslQLHy4wJJjOPm2yWEw==} - dependencies: - '@dprint/formatter': 0.2.0 - '@dprint/typescript': 0.68.5 - '@typescript-eslint/utils': 5.60.0(eslint@8.46.0)(typescript@5.1.6) - diff: 5.1.0 - eslint: 8.46.0 - transitivePeerDependencies: - - supports-color - - typescript + /@rollup/rollup-darwin-arm64@4.9.4: + resolution: {integrity: sha512-1fzh1lWExwSTWy8vJPnNbNM02WZDS8AW3McEOb7wW+nPChLKf3WG2aG7fhaUmfX5FKw9zhsF5+MBwArGyNM7NA==} + cpu: [arm64] + os: [darwin] + requiresBuild: true dev: true + optional: true - /@sinclair/typebox@0.27.8: - resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} + /@rollup/rollup-darwin-x64@4.9.4: + resolution: {integrity: sha512-Gc6cukkF38RcYQ6uPdiXi70JB0f29CwcQ7+r4QpfNpQFVHXRd0DfWFidoGxjSx1DwOETM97JPz1RXL5ISSB0pA==} + cpu: [x64] + os: [darwin] + requiresBuild: true dev: true + optional: true - /@ts-morph/common@0.20.0: - resolution: {integrity: sha512-7uKjByfbPpwuzkstL3L5MQyuXPSKdoNG93Fmi2JoDcTf3pEP731JdRFAduRVkOs8oqxPsXKA+ScrWkdQ8t/I+Q==} - dependencies: - fast-glob: 3.3.1 - minimatch: 7.4.6 - mkdirp: 2.1.6 - path-browserify: 1.0.1 + /@rollup/rollup-linux-arm-gnueabihf@4.9.4: + resolution: {integrity: sha512-g21RTeFzoTl8GxosHbnQZ0/JkuFIB13C3T7Y0HtKzOXmoHhewLbVTFBQZu+z5m9STH6FZ7L/oPgU4Nm5ErN2fw==} + cpu: [arm] + os: [linux] + requiresBuild: true dev: true + optional: true - /@tsconfig/node10@1.0.9: - resolution: {integrity: sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==} + /@rollup/rollup-linux-arm64-gnu@4.9.4: + resolution: {integrity: sha512-TVYVWD/SYwWzGGnbfTkrNpdE4HON46orgMNHCivlXmlsSGQOx/OHHYiQcMIOx38/GWgwr/po2LBn7wypkWw/Mg==} + cpu: [arm64] + os: [linux] + requiresBuild: true dev: true + optional: true - /@tsconfig/node12@1.0.11: - resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==} + /@rollup/rollup-linux-arm64-musl@4.9.4: + resolution: {integrity: sha512-XcKvuendwizYYhFxpvQ3xVpzje2HHImzg33wL9zvxtj77HvPStbSGI9czrdbfrf8DGMcNNReH9pVZv8qejAQ5A==} + cpu: [arm64] + os: [linux] + requiresBuild: true dev: true + optional: true - /@tsconfig/node14@1.0.3: - resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==} + /@rollup/rollup-linux-riscv64-gnu@4.9.4: + resolution: {integrity: sha512-LFHS/8Q+I9YA0yVETyjonMJ3UA+DczeBd/MqNEzsGSTdNvSJa1OJZcSH8GiXLvcizgp9AlHs2walqRcqzjOi3A==} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-x64-gnu@4.9.4: + resolution: {integrity: sha512-dIYgo+j1+yfy81i0YVU5KnQrIJZE8ERomx17ReU4GREjGtDW4X+nvkBak2xAUpyqLs4eleDSj3RrV72fQos7zw==} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-x64-musl@4.9.4: + resolution: {integrity: sha512-RoaYxjdHQ5TPjaPrLsfKqR3pakMr3JGqZ+jZM0zP2IkDtsGa4CqYaWSfQmZVgFUCgLrTnzX+cnHS3nfl+kB6ZQ==} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-win32-arm64-msvc@4.9.4: + resolution: {integrity: sha512-T8Q3XHV+Jjf5e49B4EAaLKV74BbX7/qYBRQ8Wop/+TyyU0k+vSjiLVSHNWdVd1goMjZcbhDmYZUYW5RFqkBNHQ==} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-win32-ia32-msvc@4.9.4: + resolution: {integrity: sha512-z+JQ7JirDUHAsMecVydnBPWLwJjbppU+7LZjffGf+Jvrxq+dVjIE7By163Sc9DKc3ADSU50qPVw0KonBS+a+HQ==} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-win32-x64-msvc@4.9.4: + resolution: {integrity: sha512-LfdGXCV9rdEify1oxlN9eamvDSjv9md9ZVMAbNHA87xqIfFCxImxan9qZ8+Un54iK2nnqPlbnSi4R54ONtbWBw==} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@sinclair/typebox@0.27.8: + resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} dev: true - /@tsconfig/node16@1.0.4: - resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} + /@types/dedent@0.7.0: + resolution: {integrity: sha512-EGlKlgMhnLt/cM4DbUSafFdrkeJoC9Mvnj0PUCU7tFmTjMjNRT957kXCx0wYm3JuEq4o4ZsS5vG+NlkM2DMd2A==} dev: true - /@types/chai-subset@1.3.3: - resolution: {integrity: sha512-frBecisrNGz+F4T6bcc+NLeolfiojh5FxW2klu669+8BARtyQv2C/GkNW6FUodVe4BroGMP/wER/YDGc7rEllw==} + /@types/eslint@8.44.7: + resolution: {integrity: sha512-f5ORu2hcBbKei97U73mf+l9t4zTGl74IqZ0GQk4oVea/VS8tQZYkUveSYojk+frraAVYId0V2WC9O4PTNru2FQ==} dependencies: - '@types/chai': 4.3.5 + '@types/estree': 1.0.5 + '@types/json-schema': 7.0.15 dev: true - /@types/chai@4.3.5: - resolution: {integrity: sha512-mEo1sAde+UCE6b2hxn332f1g1E8WfYRu6p5SvTKr2ZKC1f7gFJXk4h5PyGP9Dt6gCaG8y8XhwnXWC6Iy2cmBng==} + /@types/estree@1.0.5: + resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} dev: true - /@types/is-ci@3.0.0: - resolution: {integrity: sha512-Q0Op0hdWbYd1iahB+IFNQcWXFq4O0Q5MwQP7uN0souuQ4rPg1vEYcnIOfr1gY+M+6rc8FGoRaBO1mOOvL29sEQ==} + /@types/glob@7.1.3: + resolution: {integrity: sha512-SEYeGAIQIQX8NN6LDKprLjbrd5dARM5EXsd8GI/A5l0apYI1fGMWgPHSe4ZKL4eozlAyI+doUE9XbYS4xCkQ1w==} dependencies: - ci-info: 3.8.0 + '@types/minimatch': 5.1.2 + '@types/node': 20.10.7 dev: true - /@types/istanbul-lib-coverage@2.0.4: - resolution: {integrity: sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==} + /@types/istanbul-lib-coverage@2.0.6: + resolution: {integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==} dev: true - /@types/istanbul-lib-report@3.0.0: - resolution: {integrity: sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==} + /@types/istanbul-lib-report@3.0.3: + resolution: {integrity: sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==} dependencies: - '@types/istanbul-lib-coverage': 2.0.4 + '@types/istanbul-lib-coverage': 2.0.6 dev: true - /@types/istanbul-reports@3.0.1: - resolution: {integrity: sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==} + /@types/istanbul-reports@3.0.4: + resolution: {integrity: sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==} dependencies: - '@types/istanbul-lib-report': 3.0.0 + '@types/istanbul-lib-report': 3.0.3 dev: true - /@types/json-schema@7.0.12: - resolution: {integrity: sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==} + /@types/jest@29.0.0: + resolution: {integrity: sha512-X6Zjz3WO4cT39Gkl0lZ2baFRaEMqJl5NC1OjElkwtNzAlbkr2K/WJXkBkH5VP0zx4Hgsd2TZYdOEfvp2Dxia+Q==} + dependencies: + expect: 29.7.0 + pretty-format: 29.7.0 + dev: true + + /@types/js-yaml@3.12.5: + resolution: {integrity: sha512-JCcp6J0GV66Y4ZMDAQCXot4xprYB+Zfd3meK9+INSJeVZwJmHAW30BBEEkPzXswMXuiyReUGOP3GxrADc9wPww==} + dev: true + + /@types/json-schema@7.0.13: + resolution: {integrity: sha512-RbSSoHliUbnXj3ny0CNFOoxrIDV6SUGyStHsvDqosw6CkdPV8TtWGlfecuK4ToyMEAql6pzNxgCFKanovUzlgQ==} + dev: true + + /@types/json-schema@7.0.15: + resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} dev: true /@types/json5@0.0.29: resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} dev: true - /@types/minimist@1.2.2: - resolution: {integrity: sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==} + /@types/lodash@4.14.202: + resolution: {integrity: sha512-OvlIYQK9tNneDlS0VN54LLd5uiPCBOp7gS5Z0f1mjoJYBrtStzgmJBxONW3U6OZqdtNzZPmn9BS/7WI7BFFcFQ==} + dev: true + + /@types/mdast@3.0.15: + resolution: {integrity: sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==} + dependencies: + '@types/unist': 2.0.10 + dev: true + + /@types/minimatch@5.1.2: + resolution: {integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==} + dev: true + + /@types/minimist@1.2.5: + resolution: {integrity: sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==} dev: true /@types/node@12.20.55: resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==} dev: true - /@types/node@20.4.5: - resolution: {integrity: sha512-rt40Nk13II9JwQBdeYqmbn2Q6IVTA5uPhvSO+JVqdXw/6/4glI6oR9ezty/A9Hg5u7JH4OmYmuQ+XvjKm0Datg==} + /@types/node@20.10.7: + resolution: {integrity: sha512-fRbIKb8C/Y2lXxB5eVMj4IU7xpdox0Lh8bUPEdtLysaylsml1hOOx1+STloRs/B9nf7C6kPRmmg/V7aQW7usNg==} + dependencies: + undici-types: 5.26.5 dev: true /@types/normalize-package-data@2.4.1: resolution: {integrity: sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==} dev: true - /@types/semver@7.5.0: - resolution: {integrity: sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==} + /@types/semver@7.5.2: + resolution: {integrity: sha512-7aqorHYgdNO4DM36stTiGO3DvKoex9TQRwsJU6vMaFGyqpBA1MNZkz+PG3gaNUPpTAOYhT1WR7M1JyA3fbS9Cw==} dev: true - /@types/stack-utils@2.0.1: - resolution: {integrity: sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==} + /@types/semver@7.5.6: + resolution: {integrity: sha512-dn1l8LaMea/IjDoHNd9J52uBbInB796CDffS6VdIxvqYCPSG0V0DzHp76GpaWnlhg88uYyPbXCDIowa86ybd5A==} dev: true - /@types/yargs-parser@21.0.0: - resolution: {integrity: sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==} + /@types/stack-utils@2.0.3: + resolution: {integrity: sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==} dev: true - /@types/yargs@15.0.15: - resolution: {integrity: sha512-IziEYMU9XoVj8hWg7k+UJrXALkGFjWJhn5QFEv9q4p+v40oZhSuC135M38st8XPjICL7Ey4TV64ferBGUoJhBg==} + /@types/unist@2.0.10: + resolution: {integrity: sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==} + dev: true + + /@types/yargs-parser@21.0.3: + resolution: {integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==} + dev: true + + /@types/yargs@17.0.32: + resolution: {integrity: sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==} dependencies: - '@types/yargs-parser': 21.0.0 + '@types/yargs-parser': 21.0.3 dev: true - /@typescript-eslint/eslint-plugin@6.2.0(@typescript-eslint/parser@6.2.0)(eslint@8.46.0)(typescript@5.1.6): - resolution: {integrity: sha512-rClGrMuyS/3j0ETa1Ui7s6GkLhfZGKZL3ZrChLeAiACBE/tRc1wq8SNZESUuluxhLj9FkUefRs2l6bCIArWBiQ==} + /@typescript-eslint/eslint-plugin@6.18.1(@typescript-eslint/parser@6.18.1)(eslint@8.56.0)(typescript@5.3.3): + resolution: {integrity: sha512-nISDRYnnIpk7VCFrGcu1rnZfM1Dh9LRHnfgdkjcbi/l7g16VYRri3TjXi9Ir4lOZSw5N/gnV/3H7jIPQ8Q4daA==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha @@ -1310,27 +1513,26 @@ packages: typescript: optional: true dependencies: - '@eslint-community/regexpp': 4.6.1 - '@typescript-eslint/parser': 6.2.0(eslint@8.46.0)(typescript@5.1.6) - '@typescript-eslint/scope-manager': 6.2.0 - '@typescript-eslint/type-utils': 6.2.0(eslint@8.46.0)(typescript@5.1.6) - '@typescript-eslint/utils': 6.2.0(eslint@8.46.0)(typescript@5.1.6) - '@typescript-eslint/visitor-keys': 6.2.0 + '@eslint-community/regexpp': 4.10.0 + '@typescript-eslint/parser': 6.18.1(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/scope-manager': 6.18.1 + '@typescript-eslint/type-utils': 6.18.1(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/utils': 6.18.1(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/visitor-keys': 6.18.1 debug: 4.3.4 - eslint: 8.46.0 + eslint: 8.56.0 graphemer: 1.4.0 - ignore: 5.2.4 + ignore: 5.3.0 natural-compare: 1.4.0 - natural-compare-lite: 1.4.0 semver: 7.5.4 - ts-api-utils: 1.0.1(typescript@5.1.6) - typescript: 5.1.6 + ts-api-utils: 1.0.3(typescript@5.3.3) + typescript: 5.3.3 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/parser@6.2.0(eslint@8.46.0)(typescript@5.1.6): - resolution: {integrity: sha512-igVYOqtiK/UsvKAmmloQAruAdUHihsOCvplJpplPZ+3h4aDkC/UKZZNKgB6h93ayuYLuEymU3h8nF1xMRbh37g==} + /@typescript-eslint/parser@6.18.1(eslint@8.56.0)(typescript@5.3.3): + resolution: {integrity: sha512-zct/MdJnVaRRNy9e84XnVtRv9Vf91/qqe+hZJtKanjojud4wAVy/7lXxJmMyX6X6J+xc6c//YEWvpeif8cAhWA==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 @@ -1339,43 +1541,35 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/scope-manager': 6.2.0 - '@typescript-eslint/types': 6.2.0 - '@typescript-eslint/typescript-estree': 6.2.0(typescript@5.1.6) - '@typescript-eslint/visitor-keys': 6.2.0 + '@typescript-eslint/scope-manager': 6.18.1 + '@typescript-eslint/types': 6.18.1 + '@typescript-eslint/typescript-estree': 6.18.1(typescript@5.3.3) + '@typescript-eslint/visitor-keys': 6.18.1 debug: 4.3.4 - eslint: 8.46.0 - typescript: 5.1.6 + eslint: 8.56.0 + typescript: 5.3.3 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/scope-manager@5.60.0: - resolution: {integrity: sha512-hakuzcxPwXi2ihf9WQu1BbRj1e/Pd8ZZwVTG9kfbxAMZstKz8/9OoexIwnmLzShtsdap5U/CoQGRCWlSuPbYxQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - '@typescript-eslint/types': 5.60.0 - '@typescript-eslint/visitor-keys': 5.60.0 - dev: true - - /@typescript-eslint/scope-manager@5.62.0: - resolution: {integrity: sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + /@typescript-eslint/scope-manager@6.18.1: + resolution: {integrity: sha512-BgdBwXPFmZzaZUuw6wKiHKIovms97a7eTImjkXCZE04TGHysG+0hDQPmygyvgtkoB/aOQwSM/nWv3LzrOIQOBw==} + engines: {node: ^16.0.0 || >=18.0.0} dependencies: - '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/visitor-keys': 5.62.0 + '@typescript-eslint/types': 6.18.1 + '@typescript-eslint/visitor-keys': 6.18.1 dev: true - /@typescript-eslint/scope-manager@6.2.0: - resolution: {integrity: sha512-1ZMNVgm5nnHURU8ZSJ3snsHzpFeNK84rdZjluEVBGNu7jDymfqceB3kdIZ6A4xCfEFFhRIB6rF8q/JIqJd2R0Q==} + /@typescript-eslint/scope-manager@6.7.2: + resolution: {integrity: sha512-bgi6plgyZjEqapr7u2mhxGR6E8WCzKNUFWNh6fkpVe9+yzRZeYtDTbsIBzKbcxI+r1qVWt6VIoMSNZ4r2A+6Yw==} engines: {node: ^16.0.0 || >=18.0.0} dependencies: - '@typescript-eslint/types': 6.2.0 - '@typescript-eslint/visitor-keys': 6.2.0 + '@typescript-eslint/types': 6.7.2 + '@typescript-eslint/visitor-keys': 6.7.2 dev: true - /@typescript-eslint/type-utils@6.2.0(eslint@8.46.0)(typescript@5.1.6): - resolution: {integrity: sha512-DnGZuNU2JN3AYwddYIqrVkYW0uUQdv0AY+kz2M25euVNlujcN2u+rJgfJsBFlUEzBB6OQkUqSZPyuTLf2bP5mw==} + /@typescript-eslint/type-utils@6.18.1(eslint@8.56.0)(typescript@5.3.3): + resolution: {integrity: sha512-wyOSKhuzHeU/5pcRDP2G2Ndci+4g653V43gXTpt4nbyoIOAASkGDA9JIAgbQCdCkcr1MvpSYWzxTz0olCn8+/Q==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 @@ -1384,12 +1578,12 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/typescript-estree': 6.2.0(typescript@5.1.6) - '@typescript-eslint/utils': 6.2.0(eslint@8.46.0)(typescript@5.1.6) + '@typescript-eslint/typescript-estree': 6.18.1(typescript@5.3.3) + '@typescript-eslint/utils': 6.18.1(eslint@8.56.0)(typescript@5.3.3) debug: 4.3.4 - eslint: 8.46.0 - ts-api-utils: 1.0.1(typescript@5.1.6) - typescript: 5.1.6 + eslint: 8.56.0 + ts-api-utils: 1.0.3(typescript@5.3.3) + typescript: 5.3.3 transitivePeerDependencies: - supports-color dev: true @@ -1399,18 +1593,18 @@ packages: engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} dev: true - /@typescript-eslint/types@5.60.0: - resolution: {integrity: sha512-ascOuoCpNZBccFVNJRSC6rPq4EmJ2NkuoKnd6LDNyAQmdDnziAtxbCGWCbefG1CNzmDvd05zO36AmB7H8RzKPA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dev: true - /@typescript-eslint/types@5.62.0: resolution: {integrity: sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /@typescript-eslint/types@6.2.0: - resolution: {integrity: sha512-1nRRaDlp/XYJQLvkQJG5F3uBTno5SHPT7XVcJ5n1/k2WfNI28nJsvLakxwZRNY5spuatEKO7d5nZWsQpkqXwBA==} + /@typescript-eslint/types@6.18.1: + resolution: {integrity: sha512-4TuMAe+tc5oA7wwfqMtB0Y5OrREPF1GeJBAjqwgZh1lEMH5PJQgWgHGfYufVB51LtjD+peZylmeyxUXPfENLCw==} + engines: {node: ^16.0.0 || >=18.0.0} + dev: true + + /@typescript-eslint/types@6.7.2: + resolution: {integrity: sha512-flJYwMYgnUNDAN9/GAI3l8+wTmvTYdv64fcH8aoJK76Y+1FCZ08RtI5zDerM/FYT5DMkAc+19E4aLmd5KqdFyg==} engines: {node: ^16.0.0 || >=18.0.0} dev: true @@ -1435,8 +1629,8 @@ packages: - supports-color dev: true - /@typescript-eslint/typescript-estree@5.60.0(typescript@4.9.5): - resolution: {integrity: sha512-R43thAuwarC99SnvrBmh26tc7F6sPa2B3evkXp/8q954kYL6Ro56AwASYWtEEi+4j09GbiNAHqYwNNZuNlARGQ==} + /@typescript-eslint/typescript-estree@5.62.0(typescript@4.9.5): + resolution: {integrity: sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: typescript: '*' @@ -1444,62 +1638,42 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/types': 5.60.0 - '@typescript-eslint/visitor-keys': 5.60.0 + '@typescript-eslint/types': 5.62.0 + '@typescript-eslint/visitor-keys': 5.62.0 debug: 4.3.4 globby: 11.1.0 is-glob: 4.0.3 - semver: 7.5.3 + semver: 7.5.4 tsutils: 3.21.0(typescript@4.9.5) typescript: 4.9.5 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/typescript-estree@5.60.0(typescript@5.1.6): - resolution: {integrity: sha512-R43thAuwarC99SnvrBmh26tc7F6sPa2B3evkXp/8q954kYL6Ro56AwASYWtEEi+4j09GbiNAHqYwNNZuNlARGQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - '@typescript-eslint/types': 5.60.0 - '@typescript-eslint/visitor-keys': 5.60.0 - debug: 4.3.4 - globby: 11.1.0 - is-glob: 4.0.3 - semver: 7.5.3 - tsutils: 3.21.0(typescript@5.1.6) - typescript: 5.1.6 - transitivePeerDependencies: - - supports-color - dev: true - - /@typescript-eslint/typescript-estree@5.62.0(typescript@5.1.6): - resolution: {integrity: sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + /@typescript-eslint/typescript-estree@6.18.1(typescript@5.3.3): + resolution: {integrity: sha512-fv9B94UAhywPRhUeeV/v+3SBDvcPiLxRZJw/xZeeGgRLQZ6rLMG+8krrJUyIf6s1ecWTzlsbp0rlw7n9sjufHA==} + engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/visitor-keys': 5.62.0 + '@typescript-eslint/types': 6.18.1 + '@typescript-eslint/visitor-keys': 6.18.1 debug: 4.3.4 globby: 11.1.0 is-glob: 4.0.3 + minimatch: 9.0.3 semver: 7.5.4 - tsutils: 3.21.0(typescript@5.1.6) - typescript: 5.1.6 + ts-api-utils: 1.0.3(typescript@5.3.3) + typescript: 5.3.3 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/typescript-estree@6.2.0(typescript@5.1.6): - resolution: {integrity: sha512-Mts6+3HQMSM+LZCglsc2yMIny37IhUgp1Qe8yJUYVyO6rHP7/vN0vajKu3JvHCBIy8TSiKddJ/Zwu80jhnGj1w==} + /@typescript-eslint/typescript-estree@6.7.2(typescript@5.3.3): + resolution: {integrity: sha512-kiJKVMLkoSciGyFU0TOY0fRxnp9qq1AzVOHNeN1+B9erKFCJ4Z8WdjAkKQPP+b1pWStGFqezMLltxO+308dJTQ==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: typescript: '*' @@ -1507,71 +1681,50 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/types': 6.2.0 - '@typescript-eslint/visitor-keys': 6.2.0 + '@typescript-eslint/types': 6.7.2 + '@typescript-eslint/visitor-keys': 6.7.2 debug: 4.3.4 globby: 11.1.0 is-glob: 4.0.3 semver: 7.5.4 - ts-api-utils: 1.0.1(typescript@5.1.6) - typescript: 5.1.6 + ts-api-utils: 1.0.3(typescript@5.3.3) + typescript: 5.3.3 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/utils@5.60.0(eslint@8.46.0)(typescript@5.1.6): - resolution: {integrity: sha512-ba51uMqDtfLQ5+xHtwlO84vkdjrqNzOnqrnwbMHMRY8Tqeme8C2Q8Fc7LajfGR+e3/4LoYiWXUM6BpIIbHJ4hQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.46.0) - '@types/json-schema': 7.0.12 - '@types/semver': 7.5.0 - '@typescript-eslint/scope-manager': 5.60.0 - '@typescript-eslint/types': 5.60.0 - '@typescript-eslint/typescript-estree': 5.60.0(typescript@5.1.6) - eslint: 8.46.0 - eslint-scope: 5.1.1 - semver: 7.5.3 - transitivePeerDependencies: - - supports-color - - typescript - dev: true - - /@typescript-eslint/utils@5.62.0(eslint@8.46.0)(typescript@5.1.6): - resolution: {integrity: sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + /@typescript-eslint/utils@6.18.1(eslint@8.56.0)(typescript@5.3.3): + resolution: {integrity: sha512-zZmTuVZvD1wpoceHvoQpOiewmWu3uP9FuTWo8vqpy2ffsmfCE8mklRPi+vmnIYAIk9t/4kOThri2QCDgor+OpQ==} + engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + eslint: ^7.0.0 || ^8.0.0 dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.46.0) - '@types/json-schema': 7.0.12 - '@types/semver': 7.5.0 - '@typescript-eslint/scope-manager': 5.62.0 - '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.1.6) - eslint: 8.46.0 - eslint-scope: 5.1.1 + '@eslint-community/eslint-utils': 4.4.0(eslint@8.56.0) + '@types/json-schema': 7.0.15 + '@types/semver': 7.5.6 + '@typescript-eslint/scope-manager': 6.18.1 + '@typescript-eslint/types': 6.18.1 + '@typescript-eslint/typescript-estree': 6.18.1(typescript@5.3.3) + eslint: 8.56.0 semver: 7.5.4 transitivePeerDependencies: - supports-color - typescript dev: true - /@typescript-eslint/utils@6.2.0(eslint@8.46.0)(typescript@5.1.6): - resolution: {integrity: sha512-RCFrC1lXiX1qEZN8LmLrxYRhOkElEsPKTVSNout8DMzf8PeWoQG7Rxz2SadpJa3VSh5oYKGwt7j7X/VRg+Y3OQ==} + /@typescript-eslint/utils@6.7.2(eslint@8.56.0)(typescript@5.3.3): + resolution: {integrity: sha512-ZCcBJug/TS6fXRTsoTkgnsvyWSiXwMNiPzBUani7hDidBdj1779qwM1FIAmpH4lvlOZNF3EScsxxuGifjpLSWQ==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.46.0) - '@types/json-schema': 7.0.12 - '@types/semver': 7.5.0 - '@typescript-eslint/scope-manager': 6.2.0 - '@typescript-eslint/types': 6.2.0 - '@typescript-eslint/typescript-estree': 6.2.0(typescript@5.1.6) - eslint: 8.46.0 + '@eslint-community/eslint-utils': 4.4.0(eslint@8.56.0) + '@types/json-schema': 7.0.13 + '@types/semver': 7.5.2 + '@typescript-eslint/scope-manager': 6.7.2 + '@typescript-eslint/types': 6.7.2 + '@typescript-eslint/typescript-estree': 6.7.2(typescript@5.3.3) + eslint: 8.56.0 semver: 7.5.4 transitivePeerDependencies: - supports-color @@ -1586,140 +1739,117 @@ packages: eslint-visitor-keys: 2.1.0 dev: true - /@typescript-eslint/visitor-keys@5.60.0: - resolution: {integrity: sha512-wm9Uz71SbCyhUKgcaPRauBdTegUyY/ZWl8gLwD/i/ybJqscrrdVSFImpvUz16BLPChIeKBK5Fa9s6KDQjsjyWw==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - '@typescript-eslint/types': 5.60.0 - eslint-visitor-keys: 3.4.2 - dev: true - /@typescript-eslint/visitor-keys@5.62.0: resolution: {integrity: sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: '@typescript-eslint/types': 5.62.0 - eslint-visitor-keys: 3.4.2 + eslint-visitor-keys: 3.4.3 dev: true - /@typescript-eslint/visitor-keys@6.2.0: - resolution: {integrity: sha512-QbaYUQVKKo9bgCzpjz45llCfwakyoxHetIy8CAvYCtd16Zu1KrpzNHofwF8kGkpPOxZB2o6kz+0nqH8ZkIzuoQ==} + /@typescript-eslint/visitor-keys@6.18.1: + resolution: {integrity: sha512-/kvt0C5lRqGoCfsbmm7/CwMqoSkY3zzHLIjdhHZQW3VFrnz7ATecOHR7nb7V+xn4286MBxfnQfQhAmCI0u+bJA==} engines: {node: ^16.0.0 || >=18.0.0} dependencies: - '@typescript-eslint/types': 6.2.0 - eslint-visitor-keys: 3.4.1 + '@typescript-eslint/types': 6.18.1 + eslint-visitor-keys: 3.4.3 dev: true - /@vitejs/plugin-react@4.0.3(vite@4.4.7): - resolution: {integrity: sha512-pwXDog5nwwvSIzwrvYYmA2Ljcd/ZNlcsSG2Q9CNDBwnsd55UGAyr2doXtB5j+2uymRCnCfExlznzzSFbBRcoCg==} - engines: {node: ^14.18.0 || >=16.0.0} - peerDependencies: - vite: ^4.2.0 + /@typescript-eslint/visitor-keys@6.7.2: + resolution: {integrity: sha512-uVw9VIMFBUTz8rIeaUT3fFe8xIUx8r4ywAdlQv1ifH+6acn/XF8Y6rwJ7XNmkNMDrTW+7+vxFFPIF40nJCVsMQ==} + engines: {node: ^16.0.0 || >=18.0.0} dependencies: - '@babel/core': 7.22.9 - '@babel/plugin-transform-react-jsx-self': 7.22.5(@babel/core@7.22.9) - '@babel/plugin-transform-react-jsx-source': 7.22.5(@babel/core@7.22.9) - react-refresh: 0.14.0 - vite: 4.4.7(@types/node@20.4.5) - transitivePeerDependencies: - - supports-color + '@typescript-eslint/types': 6.7.2 + eslint-visitor-keys: 3.4.3 dev: true - /@vitest/coverage-v8@0.33.0(vitest@0.33.0): - resolution: {integrity: sha512-Rj5IzoLF7FLj6yR7TmqsfRDSeaFki6NAJ/cQexqhbWkHEV2htlVGrmuOde3xzvFsCbLCagf4omhcIaVmfU8Okg==} + /@ungap/structured-clone@1.2.0: + resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} + dev: true + + /@vitest/coverage-v8@1.1.3(vitest@1.1.3): + resolution: {integrity: sha512-Uput7t3eIcbSTOTQBzGtS+0kah96bX+szW9qQrLeGe3UmgL2Akn8POnyC2lH7XsnREZOds9aCUTxgXf+4HX5RA==} peerDependencies: - vitest: '>=0.32.0 <1' + vitest: ^1.0.0 dependencies: '@ampproject/remapping': 2.2.1 '@bcoe/v8-coverage': 0.2.3 - istanbul-lib-coverage: 3.2.0 - istanbul-lib-report: 3.0.0 + debug: 4.3.4 + istanbul-lib-coverage: 3.2.2 + istanbul-lib-report: 3.0.1 istanbul-lib-source-maps: 4.0.1 - istanbul-reports: 3.1.5 - magic-string: 0.30.1 + istanbul-reports: 3.1.6 + magic-string: 0.30.5 + magicast: 0.3.2 picocolors: 1.0.0 - std-env: 3.3.3 + std-env: 3.7.0 test-exclude: 6.0.0 - v8-to-istanbul: 9.1.0 - vitest: 0.33.0(@vitest/ui@0.33.0) + v8-to-istanbul: 9.2.0 + vitest: 1.1.3 transitivePeerDependencies: - supports-color dev: true - /@vitest/expect@0.33.0: - resolution: {integrity: sha512-sVNf+Gla3mhTCxNJx+wJLDPp/WcstOe0Ksqz4Vec51MmgMth/ia0MGFEkIZmVGeTL5HtjYR4Wl/ZxBxBXZJTzQ==} + /@vitest/expect@1.1.3: + resolution: {integrity: sha512-MnJqsKc1Ko04lksF9XoRJza0bGGwTtqfbyrsYv5on4rcEkdo+QgUdITenBQBUltKzdxW7K3rWh+nXRULwsdaVg==} dependencies: - '@vitest/spy': 0.33.0 - '@vitest/utils': 0.33.0 - chai: 4.3.7 + '@vitest/spy': 1.1.3 + '@vitest/utils': 1.1.3 + chai: 4.4.0 dev: true - /@vitest/runner@0.33.0: - resolution: {integrity: sha512-UPfACnmCB6HKRHTlcgCoBh6ppl6fDn+J/xR8dTufWiKt/74Y9bHci5CKB8tESSV82zKYtkBJo9whU3mNvfaisg==} + /@vitest/runner@1.1.3: + resolution: {integrity: sha512-Va2XbWMnhSdDEh/OFxyUltgQuuDRxnarK1hW5QNN4URpQrqq6jtt8cfww/pQQ4i0LjoYxh/3bYWvDFlR9tU73g==} dependencies: - '@vitest/utils': 0.33.0 - p-limit: 4.0.0 + '@vitest/utils': 1.1.3 + p-limit: 5.0.0 pathe: 1.1.1 dev: true - /@vitest/snapshot@0.33.0: - resolution: {integrity: sha512-tJjrl//qAHbyHajpFvr8Wsk8DIOODEebTu7pgBrP07iOepR5jYkLFiqLq2Ltxv+r0uptUb4izv1J8XBOwKkVYA==} + /@vitest/snapshot@1.1.3: + resolution: {integrity: sha512-U0r8pRXsLAdxSVAyGNcqOU2H3Z4Y2dAAGGelL50O0QRMdi1WWeYHdrH/QWpN1e8juWfVKsb8B+pyJwTC+4Gy9w==} dependencies: - magic-string: 0.30.1 + magic-string: 0.30.5 pathe: 1.1.1 - pretty-format: 29.6.1 + pretty-format: 29.7.0 dev: true - /@vitest/spy@0.33.0: - resolution: {integrity: sha512-Kv+yZ4hnH1WdiAkPUQTpRxW8kGtH8VRTnus7ZTGovFYM1ZezJpvGtb9nPIjPnptHbsyIAxYZsEpVPYgtpjGnrg==} + /@vitest/spy@1.1.3: + resolution: {integrity: sha512-Ec0qWyGS5LhATFQtldvChPTAHv08yHIOZfiNcjwRQbFPHpkih0md9KAbs7TfeIfL7OFKoe7B/6ukBTqByubXkQ==} dependencies: - tinyspy: 2.1.1 + tinyspy: 2.2.0 dev: true - /@vitest/ui@0.33.0(vitest@0.33.0): - resolution: {integrity: sha512-7gbAjLqt30R4bodkJAutdpy4ncv+u5IKTHYTow1c2q+FOxZUC9cKOSqMUxjwaaTwLN+EnDnmXYPtg3CoahaUzQ==} - peerDependencies: - vitest: '>=0.30.1 <1' - dependencies: - '@vitest/utils': 0.33.0 - fast-glob: 3.3.0 - fflate: 0.8.0 - flatted: 3.2.7 - pathe: 1.1.1 - picocolors: 1.0.0 - sirv: 2.0.3 - vitest: 0.33.0(@vitest/ui@0.33.0) - dev: true - - /@vitest/utils@0.33.0: - resolution: {integrity: sha512-pF1w22ic965sv+EN6uoePkAOTkAPWM03Ri/jXNyMIKBb/XHLDPfhLvf/Fa9g0YECevAIz56oVYXhodLvLQ/awA==} + /@vitest/utils@1.1.3: + resolution: {integrity: sha512-Dyt3UMcdElTll2H75vhxfpZu03uFpXRCHxWnzcrFjZxT1kTbq8ALUYIeBgGolo1gldVdI0YSlQRacsqxTwNqwg==} dependencies: - diff-sequences: 29.4.3 - loupe: 2.3.6 - pretty-format: 29.6.1 + diff-sequences: 29.6.3 + estree-walker: 3.0.3 + loupe: 2.3.7 + pretty-format: 29.7.0 dev: true - /acorn-jsx@5.3.2(acorn@8.10.0): + /acorn-jsx@5.3.2(acorn@8.11.2): resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: - acorn: 8.10.0 + acorn: 8.11.2 dev: true - /acorn-walk@8.2.0: - resolution: {integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==} + /acorn-walk@8.3.1: + resolution: {integrity: sha512-TgUZgYvqZprrl7YldZNoa9OciCAyZR+Ejm9eXzKCmjsF5IKp/wgQ7Z/ZpjpGTIUPwrHQIcYeI8qDh4PsEwxMbw==} engines: {node: '>=0.4.0'} dev: true - /acorn@8.10.0: - resolution: {integrity: sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==} + /acorn@8.11.2: + resolution: {integrity: sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==} engines: {node: '>=0.4.0'} hasBin: true dev: true - /acorn@8.9.0: - resolution: {integrity: sha512-jaVNAFBHNLXspO543WnNNPZFRtavh3skAkITqD0/2aeMkKZTN+254PyhwxFYrk3vQ1xfY+2wbesJMs/JC8/PwQ==} + /acorn@8.11.3: + resolution: {integrity: sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==} engines: {node: '>=0.4.0'} hasBin: true dev: true @@ -1738,13 +1868,6 @@ packages: engines: {node: '>=6'} dev: true - /ansi-red@0.1.1: - resolution: {integrity: sha512-ewaIr5y+9CUTGFwZfpECUbFlGcC0GCw1oqR9RI6h1gQCd9Aj2GxSckCnPsVJnmfMZbwFYE+leZGASgkWl06Jow==} - engines: {node: '>=0.10.0'} - dependencies: - ansi-wrap: 0.1.0 - dev: true - /ansi-regex@5.0.1: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} @@ -1779,25 +1902,14 @@ packages: engines: {node: '>=12'} dev: true - /ansi-wrap@0.1.0: - resolution: {integrity: sha512-ZyznvL8k/FZeQHr2T6LzcJ/+vBApDnMNZvfVFy3At0knswWd6rJ3/0Hhmpu8oqa6C92npmozs890sX9Dl6q+Qw==} - engines: {node: '>=0.10.0'} - dev: true - /any-promise@1.3.0: resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} dev: true - /anymatch@1.3.2: - resolution: {integrity: sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==} - dependencies: - micromatch: 2.3.11 - normalize-path: 2.1.1 - dev: true - /anymatch@3.1.3: resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} engines: {node: '>= 8'} + requiresBuild: true dependencies: normalize-path: 3.0.0 picomatch: 2.3.1 @@ -1808,10 +1920,6 @@ packages: resolution: {integrity: sha512-gkco+qxENJV+8vFcDiiFhuoSvRXb2a/QPqpSoWhVz829VNJfOTnELbBmPmNKFxf3xdNnw4DWCkzkDaavcX/1YQ==} dev: true - /arg@4.1.3: - resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==} - dev: true - /argparse@1.0.10: resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} dependencies: @@ -1822,43 +1930,21 @@ packages: resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} dev: true - /arr-diff@2.0.0: - resolution: {integrity: sha512-dtXTVMkh6VkEEA7OhXnN1Ecb8aAGFdZ1LFxtOCoqj4qkyOJMt7+qs6Ahdy6p/NQCPYsRSXXivhSB/J5E9jmYKA==} - engines: {node: '>=0.10.0'} - dependencies: - arr-flatten: 1.1.0 - dev: true - - /arr-diff@4.0.0: - resolution: {integrity: sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==} - engines: {node: '>=0.10.0'} - dev: true - - /arr-flatten@1.1.0: - resolution: {integrity: sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==} - engines: {node: '>=0.10.0'} - dev: true - - /arr-union@3.1.0: - resolution: {integrity: sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==} - engines: {node: '>=0.10.0'} - dev: true - /array-buffer-byte-length@1.0.0: resolution: {integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==} dependencies: - call-bind: 1.0.2 + call-bind: 1.0.5 is-array-buffer: 3.0.2 dev: true - /array-includes@3.1.6: - resolution: {integrity: sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==} + /array-includes@3.1.7: + resolution: {integrity: sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - get-intrinsic: 1.2.1 + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 + get-intrinsic: 1.2.2 is-string: 1.0.7 dev: true @@ -1867,55 +1953,46 @@ packages: engines: {node: '>=8'} dev: true - /array-unique@0.2.1: - resolution: {integrity: sha512-G2n5bG5fSUCpnsXz4+8FUkYsGPkNfLn9YvS66U5qbTIXI2Ynnlo4Bi42bWv+omKUCqz+ejzfClwne0alJWJPhg==} - engines: {node: '>=0.10.0'} - dev: true - - /array-unique@0.3.2: - resolution: {integrity: sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==} - engines: {node: '>=0.10.0'} - dev: true - - /array.prototype.findlastindex@1.2.2: - resolution: {integrity: sha512-tb5thFFlUcp7NdNF6/MpDk/1r/4awWG1FIz3YqDf+/zJSTezBb+/5WViH41obXULHVpDzoiCLpJ/ZO9YbJMsdw==} + /array.prototype.findlastindex@1.2.3: + resolution: {integrity: sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - es-shim-unscopables: 1.0.0 - get-intrinsic: 1.2.1 + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 + es-shim-unscopables: 1.0.2 + get-intrinsic: 1.2.2 dev: true - /array.prototype.flat@1.3.1: - resolution: {integrity: sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==} + /array.prototype.flat@1.3.2: + resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - es-shim-unscopables: 1.0.0 + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 + es-shim-unscopables: 1.0.2 dev: true - /array.prototype.flatmap@1.3.1: - resolution: {integrity: sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==} + /array.prototype.flatmap@1.3.2: + resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - es-shim-unscopables: 1.0.0 + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 + es-shim-unscopables: 1.0.2 dev: true - /arraybuffer.prototype.slice@1.0.1: - resolution: {integrity: sha512-09x0ZWFEjj4WD8PDbykUwo3t9arLn8NIzmmYEJFpYekOAQjpkGSyrQhNoRTcwwcFRu+ycWF78QZ63oWTqSjBcw==} + /arraybuffer.prototype.slice@1.0.2: + resolution: {integrity: sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==} engines: {node: '>= 0.4'} dependencies: array-buffer-byte-length: 1.0.0 - call-bind: 1.0.2 - define-properties: 1.2.0 - get-intrinsic: 1.2.1 + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 + get-intrinsic: 1.2.2 is-array-buffer: 3.0.2 is-shared-array-buffer: 1.0.2 dev: true @@ -1929,11 +2006,6 @@ packages: resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} dev: true - /assign-symbols@1.0.0: - resolution: {integrity: sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==} - engines: {node: '>=0.10.0'} - dev: true - /ast-module-types@2.7.1: resolution: {integrity: sha512-Rnnx/4Dus6fn7fTqdeLEAn5vUll5w7/vts0RN608yFa6si/rDOUonlIIiwugHBFWjylHjxm9owoSZn71KwG4gw==} dev: true @@ -1948,16 +2020,6 @@ packages: engines: {node: '>=12.0'} dev: true - /async-each@1.0.6: - resolution: {integrity: sha512-c646jH1avxr+aVpndVMeAfYw7wAa6idufrlN3LPA4PmKS0QEGp6PIC9nwz0WQkkvBGAMEki3pFdtxaF39J9vvg==} - dev: true - - /atob@2.1.2: - resolution: {integrity: sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==} - engines: {node: '>= 4.5.0'} - hasBin: true - dev: true - /autolinker@0.28.1: resolution: {integrity: sha512-zQAFO1Dlsn69eXaO6+7YZc+v84aquQKbwpzCE3L0stj56ERn9hutFxPopViLjo9G+rWwjozRhgS5KJ25Xy19cQ==} dependencies: @@ -1969,40 +2031,20 @@ packages: engines: {node: '>= 0.4'} dev: true - /babel-plugin-annotate-pure-calls@0.4.0(@babel/core@7.22.9): + /babel-plugin-annotate-pure-calls@0.4.0(@babel/core@7.23.7): resolution: {integrity: sha512-oi4M/PWUJOU9ZyRGoPTfPMqdyMp06jbJAomd3RcyYuzUtBOddv98BqLm96Lucpi2QFoQHkdGQt0ACvw7VzVEQA==} peerDependencies: '@babel/core': ^6.0.0-0 || 7.x dependencies: - '@babel/core': 7.22.9 - dev: true - - /babel-runtime@6.26.0: - resolution: {integrity: sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g==} - dependencies: - core-js: 2.6.12 - regenerator-runtime: 0.11.1 + '@babel/core': 7.23.7 dev: true /balanced-match@1.0.2: - resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} - dev: true - - /base64-js@1.5.1: - resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} - dev: true - - /base@0.11.2: - resolution: {integrity: sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==} - engines: {node: '>=0.10.0'} - dependencies: - cache-base: 1.0.1 - class-utils: 0.3.6 - component-emitter: 1.3.0 - define-property: 1.0.0 - isobject: 3.0.1 - mixin-deep: 1.3.2 - pascalcase: 0.1.1 + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + dev: true + + /base64-js@1.5.1: + resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} dev: true /better-path-resolve@1.0.0: @@ -2012,26 +2054,10 @@ packages: is-windows: 1.0.2 dev: true - /big-integer@1.6.51: - resolution: {integrity: sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==} - engines: {node: '>=0.6'} - dev: true - - /binary-extensions@1.13.1: - resolution: {integrity: sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==} - engines: {node: '>=0.10.0'} - dev: true - /binary-extensions@2.2.0: resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} engines: {node: '>=8'} - dev: true - optional: true - - /bindings@1.5.0: - resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==} - dependencies: - file-uri-to-path: 1.0.0 + requiresBuild: true dev: true optional: true @@ -2043,13 +2069,6 @@ packages: readable-stream: 3.6.2 dev: true - /bplist-parser@0.2.0: - resolution: {integrity: sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==} - engines: {node: '>= 5.10.0'} - dependencies: - big-integer: 1.6.51 - dev: true - /brace-expansion@1.1.11: resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} dependencies: @@ -2063,33 +2082,6 @@ packages: balanced-match: 1.0.2 dev: true - /braces@1.8.5: - resolution: {integrity: sha512-xU7bpz2ytJl1bH9cgIurjpg/n8Gohy9GTw81heDYLJQ4RU60dlyJsa+atVF2pI0yMMvKxI9HkKwjePCj5XI1hw==} - engines: {node: '>=0.10.0'} - dependencies: - expand-range: 1.8.2 - preserve: 0.2.0 - repeat-element: 1.1.4 - dev: true - - /braces@2.3.2: - resolution: {integrity: sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==} - engines: {node: '>=0.10.0'} - dependencies: - arr-flatten: 1.1.0 - array-unique: 0.3.2 - extend-shallow: 2.0.1 - fill-range: 4.0.0 - isobject: 3.0.1 - repeat-element: 1.1.4 - snapdragon: 0.8.2 - snapdragon-node: 2.1.1 - split-string: 3.1.0 - to-regex: 3.0.2 - transitivePeerDependencies: - - supports-color - dev: true - /braces@3.0.2: resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} engines: {node: '>=8'} @@ -2103,15 +2095,15 @@ packages: wcwidth: 1.0.1 dev: true - /browserslist@4.21.9: - resolution: {integrity: sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg==} + /browserslist@4.22.2: + resolution: {integrity: sha512-0UgcrvQmBDvZHFGdYUehrCNIazki7/lUP3kkoi/r3YB2amZbFM9J43ZRkJTXBUZK4gmx56+Sqk9+Vs9mwZx9+A==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true dependencies: - caniuse-lite: 1.0.30001515 - electron-to-chromium: 1.4.457 - node-releases: 2.0.13 - update-browserslist-db: 1.0.11(browserslist@4.21.9) + caniuse-lite: 1.0.30001572 + electron-to-chromium: 1.4.616 + node-releases: 2.0.14 + update-browserslist-db: 1.0.13(browserslist@4.22.2) dev: true /buffer-from@1.1.2: @@ -2125,38 +2117,17 @@ packages: ieee754: 1.2.1 dev: true - /bundle-name@3.0.0: - resolution: {integrity: sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw==} - engines: {node: '>=12'} - dependencies: - run-applescript: 5.0.0 - dev: true - /cac@6.7.14: resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} engines: {node: '>=8'} dev: true - /cache-base@1.0.1: - resolution: {integrity: sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==} - engines: {node: '>=0.10.0'} - dependencies: - collection-visit: 1.0.0 - component-emitter: 1.3.0 - get-value: 2.0.6 - has-value: 1.0.0 - isobject: 3.0.1 - set-value: 2.0.1 - to-object-path: 0.3.0 - union-value: 1.0.1 - unset-value: 1.0.0 - dev: true - - /call-bind@1.0.2: - resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==} + /call-bind@1.0.5: + resolution: {integrity: sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==} dependencies: - function-bind: 1.1.1 - get-intrinsic: 1.2.1 + function-bind: 1.1.2 + get-intrinsic: 1.2.2 + set-function-length: 1.1.1 dev: true /callsites@3.1.0: @@ -2178,19 +2149,19 @@ packages: engines: {node: '>=6'} dev: true - /caniuse-lite@1.0.30001515: - resolution: {integrity: sha512-eEFDwUOZbE24sb+Ecsx3+OvNETqjWIdabMy52oOkIgcUtAsQifjUG9q4U9dgTHJM2mfk4uEPxc0+xuFdJ629QA==} + /caniuse-lite@1.0.30001572: + resolution: {integrity: sha512-1Pbh5FLmn5y4+QhNyJE9j3/7dK44dGB83/ZMjv/qJk86TvDbjk0LosiZo0i0WB0Vx607qMX9jYrn1VLHCkN4rw==} dev: true - /chai@4.3.7: - resolution: {integrity: sha512-HLnAzZ2iupm25PlN0xFreAlBA5zaBSv3og0DdeGA4Ar6h6rJ3A0rolRUKJhSF2V10GZKDgWF/VmAEsNWjCRB+A==} + /chai@4.4.0: + resolution: {integrity: sha512-x9cHNq1uvkCdU+5xTkNh5WtgD4e4yDFCsp9jVc7N7qVeKeftv3gO/ZrviX5d+3ZfxdYnZXZYujjRInu1RogU6A==} engines: {node: '>=4'} dependencies: assertion-error: 1.1.0 - check-error: 1.0.2 + check-error: 1.0.3 deep-eql: 4.1.3 - get-func-name: 2.0.0 - loupe: 2.3.6 + get-func-name: 2.0.2 + loupe: 2.3.7 pathval: 1.1.1 type-detect: 4.0.8 dev: true @@ -2212,30 +2183,26 @@ packages: supports-color: 7.2.0 dev: true - /chardet@0.7.0: - resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} + /character-entities-legacy@1.1.4: + resolution: {integrity: sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==} + dev: true + + /character-entities@1.2.4: + resolution: {integrity: sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==} + dev: true + + /character-reference-invalid@1.1.4: + resolution: {integrity: sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==} dev: true - /check-error@1.0.2: - resolution: {integrity: sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA==} + /chardet@0.7.0: + resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} dev: true - /chokidar@1.7.0: - resolution: {integrity: sha512-mk8fAWcRUOxY7btlLtitj3A45jOwSAxH4tOFOoEGbVsl6cL6pPMWUy7dwZ/canfj3QEdP6FHSnf/l1c6/WkzVg==} - deprecated: Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies. + /check-error@1.0.3: + resolution: {integrity: sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==} dependencies: - anymatch: 1.3.2 - async-each: 1.0.6 - glob-parent: 2.0.0 - inherits: 2.0.4 - is-binary-path: 1.0.1 - is-glob: 2.0.1 - path-is-absolute: 1.0.1 - readdirp: 2.2.1 - optionalDependencies: - fsevents: 1.2.13 - transitivePeerDependencies: - - supports-color + get-func-name: 2.0.2 dev: true /chokidar@3.5.3: @@ -2251,25 +2218,15 @@ packages: normalize-path: 3.0.0 readdirp: 3.6.0 optionalDependencies: - fsevents: 2.3.2 + fsevents: 2.3.3 dev: true optional: true - /ci-info@3.8.0: - resolution: {integrity: sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==} + /ci-info@3.9.0: + resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} engines: {node: '>=8'} dev: true - /class-utils@0.3.6: - resolution: {integrity: sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==} - engines: {node: '>=0.10.0'} - dependencies: - arr-union: 3.1.0 - define-property: 0.2.5 - isobject: 3.0.1 - static-extend: 0.1.2 - dev: true - /cli-cursor@3.1.0: resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==} engines: {node: '>=8'} @@ -2304,25 +2261,6 @@ packages: engines: {node: '>=0.8'} dev: true - /code-block-writer@12.0.0: - resolution: {integrity: sha512-q4dMFMlXtKR3XNBHyMHt/3pwYNA69EDk00lloMOaaUMKPUXBw6lpXtbu3MMVG6/uOihGnRDOlkyqsONEUj60+w==} - dev: true - - /coffee-script@1.12.7: - resolution: {integrity: sha512-fLeEhqwymYat/MpTPUjSKHVYYl0ec2mOyALEMLmzr5i1isuG+6jfI2j2d5oBO3VIzgUXgBVIcOT9uH1TFxBckw==} - engines: {node: '>=0.8.0'} - deprecated: CoffeeScript on NPM has moved to "coffeescript" (no hyphen) - hasBin: true - dev: true - - /collection-visit@1.0.0: - resolution: {integrity: sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==} - engines: {node: '>=0.10.0'} - dependencies: - map-visit: 1.0.0 - object-visit: 1.0.1 - dev: true - /color-convert@1.9.3: resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} dependencies: @@ -2367,10 +2305,6 @@ packages: resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} dev: true - /component-emitter@1.3.0: - resolution: {integrity: sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==} - dev: true - /concat-map@0.0.1: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} dev: true @@ -2391,64 +2325,14 @@ packages: source-map: 0.6.1 dev: true - /concurrently@8.2.0: - resolution: {integrity: sha512-nnLMxO2LU492mTUj9qX/az/lESonSZu81UznYDoXtz1IQf996ixVqPAgHXwvHiHCAef/7S8HIK+fTFK7Ifk8YA==} - engines: {node: ^14.13.0 || >=16.0.0} - hasBin: true - dependencies: - chalk: 4.1.2 - date-fns: 2.30.0 - lodash: 4.17.21 - rxjs: 7.8.1 - shell-quote: 1.8.1 - spawn-command: 0.0.2 - supports-color: 8.1.1 - tree-kill: 1.2.2 - yargs: 17.7.2 - dev: true - - /convert-source-map@1.9.0: - resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} - dev: true - - /copy-descriptor@0.1.1: - resolution: {integrity: sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==} - engines: {node: '>=0.10.0'} - dev: true - - /core-js@2.6.12: - resolution: {integrity: sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==} - deprecated: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js. - requiresBuild: true + /convert-source-map@2.0.0: + resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} dev: true /core-util-is@1.0.3: resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} dev: true - /cpx@1.5.0: - resolution: {integrity: sha512-jHTjZhsbg9xWgsP2vuNW2jnnzBX+p4T+vNI9Lbjzs1n4KhOfa22bQppiFYLsWQKd8TzmL5aSP/Me3yfsCwXbDA==} - hasBin: true - dependencies: - babel-runtime: 6.26.0 - chokidar: 1.7.0 - duplexer: 0.1.2 - glob: 7.2.3 - glob2base: 0.0.12 - minimatch: 3.1.2 - mkdirp: 0.5.6 - resolve: 1.22.2 - safe-buffer: 5.2.1 - shell-quote: 1.8.1 - subarg: 1.0.0 - transitivePeerDependencies: - - supports-color - dev: true - - /create-require@1.1.1: - resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} - dev: true - /cross-spawn@5.1.0: resolution: {integrity: sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==} dependencies: @@ -2492,24 +2376,6 @@ packages: resolution: {integrity: sha512-68s5jYdlvasItOJnCuI2Q9s4q98g0pCyL3HrcKJu8KNugUl8ahgmZYg38ysLTgQjjXX3H8CJLkAvWrclWfcalw==} dev: true - /date-fns@2.30.0: - resolution: {integrity: sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==} - engines: {node: '>=0.11'} - dependencies: - '@babel/runtime': 7.22.5 - dev: true - - /debug@2.6.9: - resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - dependencies: - ms: 2.0.0 - dev: true - /debug@3.2.7: resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} peerDependencies: @@ -2546,9 +2412,13 @@ packages: engines: {node: '>=0.10.0'} dev: true - /decode-uri-component@0.2.2: - resolution: {integrity: sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==} - engines: {node: '>=0.10'} + /dedent@1.5.1: + resolution: {integrity: sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg==} + peerDependencies: + babel-plugin-macros: ^3.1.0 + peerDependenciesMeta: + babel-plugin-macros: + optional: true dev: true /deep-eql@4.1.3: @@ -2567,63 +2437,28 @@ packages: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} dev: true - /default-browser-id@3.0.0: - resolution: {integrity: sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==} - engines: {node: '>=12'} - dependencies: - bplist-parser: 0.2.0 - untildify: 4.0.0 - dev: true - - /default-browser@4.0.0: - resolution: {integrity: sha512-wX5pXO1+BrhMkSbROFsyxUm0i/cJEScyNhA4PPxc41ICuv05ZZB/MX28s8aZx6xjmatvebIapF6hLEKEcpneUA==} - engines: {node: '>=14.16'} - dependencies: - bundle-name: 3.0.0 - default-browser-id: 3.0.0 - execa: 7.1.1 - titleize: 3.0.0 - dev: true - /defaults@1.0.4: resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==} dependencies: clone: 1.0.4 dev: true - /define-lazy-prop@3.0.0: - resolution: {integrity: sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==} - engines: {node: '>=12'} - dev: true - - /define-properties@1.2.0: - resolution: {integrity: sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==} + /define-data-property@1.1.1: + resolution: {integrity: sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==} engines: {node: '>= 0.4'} dependencies: - has-property-descriptors: 1.0.0 - object-keys: 1.1.1 - dev: true - - /define-property@0.2.5: - resolution: {integrity: sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==} - engines: {node: '>=0.10.0'} - dependencies: - is-descriptor: 0.1.6 - dev: true - - /define-property@1.0.0: - resolution: {integrity: sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==} - engines: {node: '>=0.10.0'} - dependencies: - is-descriptor: 1.0.2 + get-intrinsic: 1.2.2 + gopd: 1.0.1 + has-property-descriptors: 1.0.1 dev: true - /define-property@2.0.2: - resolution: {integrity: sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==} - engines: {node: '>=0.10.0'} + /define-properties@1.2.1: + resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} + engines: {node: '>= 0.4'} dependencies: - is-descriptor: 1.0.2 - isobject: 3.0.1 + define-data-property: 1.1.1 + has-property-descriptors: 1.0.1 + object-keys: 1.1.1 dev: true /dependency-tree@9.0.0: @@ -2714,7 +2549,7 @@ packages: dependencies: debug: 4.3.4 is-url: 1.2.4 - postcss: 8.4.27 + postcss: 8.4.31 postcss-values-parser: 2.0.1 transitivePeerDependencies: - supports-color @@ -2791,7 +2626,7 @@ packages: resolution: {integrity: sha512-Uc1yVutTF0RRm1YJ3g//i1Cn2vx1kwHj15cnzQP6ff5koNzQ0idc1zAC73ryaWEulA0ElRXFTq6wOqe8vUQ3MA==} engines: {node: ^12.20.0 || ^14.14.0 || >=16.0.0} dependencies: - '@typescript-eslint/typescript-estree': 5.60.0(typescript@4.9.5) + '@typescript-eslint/typescript-estree': 5.62.0(typescript@4.9.5) ast-module-types: 4.0.0 node-source-walk: 5.0.2 typescript: 4.9.5 @@ -2804,21 +2639,11 @@ packages: engines: {node: '>=0.8.0'} dev: true - /diff-sequences@26.6.2: - resolution: {integrity: sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q==} - engines: {node: '>= 10.14.2'} - dev: true - - /diff-sequences@29.4.3: - resolution: {integrity: sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA==} + /diff-sequences@29.6.3: + resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dev: true - /diff@4.0.2: - resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==} - engines: {node: '>=0.3.1'} - dev: true - /diff@5.1.0: resolution: {integrity: sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==} engines: {node: '>=0.3.1'} @@ -2850,16 +2675,16 @@ packages: engines: {node: '>=10'} dev: true - /duplexer@0.1.2: - resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==} - dev: true - /eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} dev: true - /electron-to-chromium@1.4.457: - resolution: {integrity: sha512-/g3UyNDmDd6ebeWapmAoiyy+Sy2HyJ+/X8KyvNeHfKRFfHaA2W8oF5fxD5F3tjBDcjpwo0iek6YNgxNXDBoEtA==} + /effect@2.0.3: + resolution: {integrity: sha512-I/XvcbHypegNFWCr/arbfIR6pA+8JpSqv9wS4xOrgXypQMRj8H3wRorTcUiPmcQ0e6Ko67CdI2XZpjx7z0Ev/A==} + dev: false + + /electron-to-chromium@1.4.616: + resolution: {integrity: sha512-1n7zWYh8eS0L9Uy+GskE0lkBUNK83cXTVJI0pU3mGprFsbfSdAc15VTFbo+A+Bq4pwstmL30AVcEU3Fo463lNg==} dev: true /emoji-regex@8.0.0: @@ -2878,11 +2703,12 @@ packages: tapable: 2.2.1 dev: true - /enquirer@2.3.6: - resolution: {integrity: sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==} + /enquirer@2.4.1: + resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==} engines: {node: '>=8.6'} dependencies: ansi-colors: 4.1.3 + strip-ansi: 6.0.1 dev: true /error-ex@1.3.2: @@ -2891,26 +2717,26 @@ packages: is-arrayish: 0.2.1 dev: true - /es-abstract@1.22.1: - resolution: {integrity: sha512-ioRRcXMO6OFyRpyzV3kE1IIBd4WG5/kltnzdxSCqoP8CMGs/Li+M1uF5o7lOkZVFjDs+NLesthnF66Pg/0q0Lw==} + /es-abstract@1.22.3: + resolution: {integrity: sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==} engines: {node: '>= 0.4'} dependencies: array-buffer-byte-length: 1.0.0 - arraybuffer.prototype.slice: 1.0.1 + arraybuffer.prototype.slice: 1.0.2 available-typed-arrays: 1.0.5 - call-bind: 1.0.2 - es-set-tostringtag: 2.0.1 + call-bind: 1.0.5 + es-set-tostringtag: 2.0.2 es-to-primitive: 1.2.1 - function.prototype.name: 1.1.5 - get-intrinsic: 1.2.1 + function.prototype.name: 1.1.6 + get-intrinsic: 1.2.2 get-symbol-description: 1.0.0 globalthis: 1.0.3 gopd: 1.0.1 - has: 1.0.3 - has-property-descriptors: 1.0.0 + has-property-descriptors: 1.0.1 has-proto: 1.0.1 has-symbols: 1.0.3 - internal-slot: 1.0.5 + hasown: 2.0.0 + internal-slot: 1.0.6 is-array-buffer: 3.0.2 is-callable: 1.2.7 is-negative-zero: 2.0.2 @@ -2919,36 +2745,36 @@ packages: is-string: 1.0.7 is-typed-array: 1.1.12 is-weakref: 1.0.2 - object-inspect: 1.12.3 + object-inspect: 1.13.1 object-keys: 1.1.1 object.assign: 4.1.4 - regexp.prototype.flags: 1.5.0 - safe-array-concat: 1.0.0 + regexp.prototype.flags: 1.5.1 + safe-array-concat: 1.0.1 safe-regex-test: 1.0.0 - string.prototype.trim: 1.2.7 - string.prototype.trimend: 1.0.6 - string.prototype.trimstart: 1.0.6 + string.prototype.trim: 1.2.8 + string.prototype.trimend: 1.0.7 + string.prototype.trimstart: 1.0.7 typed-array-buffer: 1.0.0 typed-array-byte-length: 1.0.0 typed-array-byte-offset: 1.0.0 typed-array-length: 1.0.4 unbox-primitive: 1.0.2 - which-typed-array: 1.1.11 + which-typed-array: 1.1.13 dev: true - /es-set-tostringtag@2.0.1: - resolution: {integrity: sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==} + /es-set-tostringtag@2.0.2: + resolution: {integrity: sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q==} engines: {node: '>= 0.4'} dependencies: - get-intrinsic: 1.2.1 - has: 1.0.3 + get-intrinsic: 1.2.2 has-tostringtag: 1.0.0 + hasown: 2.0.0 dev: true - /es-shim-unscopables@1.0.0: - resolution: {integrity: sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==} + /es-shim-unscopables@1.0.2: + resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==} dependencies: - has: 1.0.3 + hasown: 2.0.0 dev: true /es-to-primitive@1.2.1: @@ -2960,34 +2786,66 @@ packages: is-symbol: 1.0.4 dev: true - /esbuild@0.18.16: - resolution: {integrity: sha512-1xLsOXrDqwdHxyXb/x/SOyg59jpf/SH7YMvU5RNSU7z3TInaASNJWNFJ6iRvLvLETZMasF3d1DdZLg7sgRimRQ==} + /esbuild@0.19.10: + resolution: {integrity: sha512-S1Y27QGt/snkNYrRcswgRFqZjaTG5a5xM3EQo97uNBnH505pdzSNe/HLBq1v0RO7iK/ngdbhJB6mDAp0OK+iUA==} engines: {node: '>=12'} hasBin: true requiresBuild: true optionalDependencies: - '@esbuild/android-arm': 0.18.16 - '@esbuild/android-arm64': 0.18.16 - '@esbuild/android-x64': 0.18.16 - '@esbuild/darwin-arm64': 0.18.16 - '@esbuild/darwin-x64': 0.18.16 - '@esbuild/freebsd-arm64': 0.18.16 - '@esbuild/freebsd-x64': 0.18.16 - '@esbuild/linux-arm': 0.18.16 - '@esbuild/linux-arm64': 0.18.16 - '@esbuild/linux-ia32': 0.18.16 - '@esbuild/linux-loong64': 0.18.16 - '@esbuild/linux-mips64el': 0.18.16 - '@esbuild/linux-ppc64': 0.18.16 - '@esbuild/linux-riscv64': 0.18.16 - '@esbuild/linux-s390x': 0.18.16 - '@esbuild/linux-x64': 0.18.16 - '@esbuild/netbsd-x64': 0.18.16 - '@esbuild/openbsd-x64': 0.18.16 - '@esbuild/sunos-x64': 0.18.16 - '@esbuild/win32-arm64': 0.18.16 - '@esbuild/win32-ia32': 0.18.16 - '@esbuild/win32-x64': 0.18.16 + '@esbuild/aix-ppc64': 0.19.10 + '@esbuild/android-arm': 0.19.10 + '@esbuild/android-arm64': 0.19.10 + '@esbuild/android-x64': 0.19.10 + '@esbuild/darwin-arm64': 0.19.10 + '@esbuild/darwin-x64': 0.19.10 + '@esbuild/freebsd-arm64': 0.19.10 + '@esbuild/freebsd-x64': 0.19.10 + '@esbuild/linux-arm': 0.19.10 + '@esbuild/linux-arm64': 0.19.10 + '@esbuild/linux-ia32': 0.19.10 + '@esbuild/linux-loong64': 0.19.10 + '@esbuild/linux-mips64el': 0.19.10 + '@esbuild/linux-ppc64': 0.19.10 + '@esbuild/linux-riscv64': 0.19.10 + '@esbuild/linux-s390x': 0.19.10 + '@esbuild/linux-x64': 0.19.10 + '@esbuild/netbsd-x64': 0.19.10 + '@esbuild/openbsd-x64': 0.19.10 + '@esbuild/sunos-x64': 0.19.10 + '@esbuild/win32-arm64': 0.19.10 + '@esbuild/win32-ia32': 0.19.10 + '@esbuild/win32-x64': 0.19.10 + dev: true + + /esbuild@0.19.11: + resolution: {integrity: sha512-HJ96Hev2hX/6i5cDVwcqiJBBtuo9+FeIJOtZ9W1kA5M6AMJRHUZlpYZ1/SbEwtO0ioNAW8rUooVpC/WehY2SfA==} + engines: {node: '>=12'} + hasBin: true + requiresBuild: true + optionalDependencies: + '@esbuild/aix-ppc64': 0.19.11 + '@esbuild/android-arm': 0.19.11 + '@esbuild/android-arm64': 0.19.11 + '@esbuild/android-x64': 0.19.11 + '@esbuild/darwin-arm64': 0.19.11 + '@esbuild/darwin-x64': 0.19.11 + '@esbuild/freebsd-arm64': 0.19.11 + '@esbuild/freebsd-x64': 0.19.11 + '@esbuild/linux-arm': 0.19.11 + '@esbuild/linux-arm64': 0.19.11 + '@esbuild/linux-ia32': 0.19.11 + '@esbuild/linux-loong64': 0.19.11 + '@esbuild/linux-mips64el': 0.19.11 + '@esbuild/linux-ppc64': 0.19.11 + '@esbuild/linux-riscv64': 0.19.11 + '@esbuild/linux-s390x': 0.19.11 + '@esbuild/linux-x64': 0.19.11 + '@esbuild/netbsd-x64': 0.19.11 + '@esbuild/openbsd-x64': 0.19.11 + '@esbuild/sunos-x64': 0.19.11 + '@esbuild/win32-arm64': 0.19.11 + '@esbuild/win32-ia32': 0.19.11 + '@esbuild/win32-x64': 0.19.11 dev: true /escalade@3.1.1: @@ -3023,18 +2881,18 @@ packages: source-map: 0.6.1 dev: true - /eslint-import-resolver-node@0.3.7: - resolution: {integrity: sha512-gozW2blMLJCeFpBwugLTGyvVjNoeo1knonXAcatC6bjPBZitotxdWf7Gimr25N4c0AAOo4eOUfaG82IJPDpqCA==} + /eslint-import-resolver-node@0.3.9: + resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} dependencies: debug: 3.2.7 - is-core-module: 2.12.1 - resolve: 1.22.3 + is-core-module: 2.13.1 + resolve: 1.22.8 transitivePeerDependencies: - supports-color dev: true - /eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@6.2.0)(eslint-plugin-import@2.28.0)(eslint@8.46.0): - resolution: {integrity: sha512-TdJqPHs2lW5J9Zpe17DZNQuDnox4xo2o+0tE7Pggain9Rbc19ik8kFtXdxZ250FVx2kF4vlt2RSf4qlUpG7bhw==} + /eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.18.1)(eslint-plugin-import@2.29.1)(eslint@8.56.0): + resolution: {integrity: sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==} engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: eslint: '*' @@ -3042,14 +2900,13 @@ packages: dependencies: debug: 4.3.4 enhanced-resolve: 5.15.0 - eslint: 8.46.0 - eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.2.0)(eslint-import-resolver-node@0.3.7)(eslint-import-resolver-typescript@3.5.5)(eslint@8.46.0) - eslint-plugin-import: 2.28.0(@typescript-eslint/parser@6.2.0)(eslint-import-resolver-typescript@3.5.5)(eslint@8.46.0) - get-tsconfig: 4.6.0 - globby: 13.2.0 - is-core-module: 2.12.1 + eslint: 8.56.0 + eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.18.1)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@6.18.1)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0) + fast-glob: 3.3.1 + get-tsconfig: 4.7.2 + is-core-module: 2.13.0 is-glob: 4.0.3 - synckit: 0.8.5 transitivePeerDependencies: - '@typescript-eslint/parser' - eslint-import-resolver-node @@ -3057,7 +2914,7 @@ packages: - supports-color dev: true - /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.2.0)(eslint-import-resolver-node@0.3.7)(eslint-import-resolver-typescript@3.5.5)(eslint@8.46.0): + /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.18.1)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0): resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==} engines: {node: '>=4'} peerDependencies: @@ -3078,52 +2935,64 @@ packages: eslint-import-resolver-webpack: optional: true dependencies: - '@typescript-eslint/parser': 6.2.0(eslint@8.46.0)(typescript@5.1.6) + '@typescript-eslint/parser': 6.18.1(eslint@8.56.0)(typescript@5.3.3) debug: 3.2.7 - eslint: 8.46.0 - eslint-import-resolver-node: 0.3.7 - eslint-import-resolver-typescript: 3.5.5(@typescript-eslint/parser@6.2.0)(eslint-plugin-import@2.28.0)(eslint@8.46.0) + eslint: 8.56.0 + eslint-import-resolver-node: 0.3.9 + eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@6.18.1)(eslint-plugin-import@2.29.1)(eslint@8.56.0) transitivePeerDependencies: - supports-color dev: true - /eslint-plugin-codegen@0.17.0: - resolution: {integrity: sha512-6DDDob+7PjyNJyy9ynHFFsLp0+aUtWbXiiT/SfU161NCxo1zevewq7VvtDiJh15gMBvVZSFs6hXqYJWT3NUZvA==} + /eslint-plugin-codegen@0.21.0(eslint@8.56.0): + resolution: {integrity: sha512-L7xNLx8Eskp0oBPUOdtKCd8c2K458baEiJz/3eXVYaST4kuzBguGDpXrjR7ohsVbHJsTgdiJGK0UjkAdu4hdXw==} + engines: {node: '>=12.0.0'} dependencies: - '@babel/core': 7.22.9 + '@babel/core': 7.23.7 '@babel/generator': 7.12.17 - '@babel/parser': 7.22.5 - '@babel/traverse': 7.22.5 - expect: 26.6.2 - fp-ts: 2.16.0 - glob: 7.2.3 - io-ts: 2.2.20(fp-ts@2.16.0) + '@babel/parser': 7.23.4 + '@babel/traverse': 7.23.4 + '@types/dedent': 0.7.0 + '@types/eslint': 8.44.7 + '@types/glob': 7.1.3 + '@types/jest': 29.0.0 + '@types/js-yaml': 3.12.5 + '@types/lodash': 4.14.202 + '@types/node': 20.10.7 + dedent: 1.5.1 + eslint-plugin-markdown: 3.0.1(eslint@8.56.0) + expect: 29.7.0 + fp-ts: 2.16.1 + glob: 10.3.10 + io-ts: 2.2.20(fp-ts@2.16.1) io-ts-extra: 0.11.6 js-yaml: 3.14.1 lodash: 4.17.21 read-pkg-up: 7.0.1 - string.prototype.matchall: 4.0.8 + string.prototype.matchall: 4.0.10 transitivePeerDependencies: + - babel-plugin-macros + - eslint - supports-color dev: true - /eslint-plugin-deprecation@1.5.0(eslint@8.46.0)(typescript@5.1.6): - resolution: {integrity: sha512-mRcssI/tLROueBQ6yf4LnnGTijbMsTCPIpbRbPj5R5wGYVCpk1zDmAS0SEkgcUDXOPc22qMNFR24Qw7vSPrlTA==} + /eslint-plugin-deprecation@2.0.0(eslint@8.56.0)(typescript@5.3.3): + resolution: {integrity: sha512-OAm9Ohzbj11/ZFyICyR5N6LbOIvQMp7ZU2zI7Ej0jIc8kiGUERXPNMfw2QqqHD1ZHtjMub3yPZILovYEYucgoQ==} peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - typescript: ^3.7.5 || ^4.0.0 || ^5.0.0 + eslint: ^7.0.0 || ^8.0.0 + typescript: ^4.2.4 || ^5.0.0 dependencies: - '@typescript-eslint/utils': 5.62.0(eslint@8.46.0)(typescript@5.1.6) - eslint: 8.46.0 - tslib: 2.6.1 - tsutils: 3.21.0(typescript@5.1.6) - typescript: 5.1.6 + '@typescript-eslint/utils': 6.7.2(eslint@8.56.0)(typescript@5.3.3) + eslint: 8.56.0 + tslib: 2.6.2 + tsutils: 3.21.0(typescript@5.3.3) + typescript: 5.3.3 transitivePeerDependencies: - supports-color dev: true - /eslint-plugin-import@2.28.0(@typescript-eslint/parser@6.2.0)(eslint-import-resolver-typescript@3.5.5)(eslint@8.46.0): - resolution: {integrity: sha512-B8s/n+ZluN7sxj9eUf7/pRFERX0r5bnFA2dCaLHy2ZeaQEAz0k+ZZkFWRFHJAqxfxQDx6KLv9LeIki7cFdwW+Q==} + /eslint-plugin-import@2.29.1(@typescript-eslint/parser@6.18.1)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0): + resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==} engines: {node: '>=4'} peerDependencies: '@typescript-eslint/parser': '*' @@ -3132,58 +3001,61 @@ packages: '@typescript-eslint/parser': optional: true dependencies: - '@typescript-eslint/parser': 6.2.0(eslint@8.46.0)(typescript@5.1.6) - array-includes: 3.1.6 - array.prototype.findlastindex: 1.2.2 - array.prototype.flat: 1.3.1 - array.prototype.flatmap: 1.3.1 + '@typescript-eslint/parser': 6.18.1(eslint@8.56.0)(typescript@5.3.3) + array-includes: 3.1.7 + array.prototype.findlastindex: 1.2.3 + array.prototype.flat: 1.3.2 + array.prototype.flatmap: 1.3.2 debug: 3.2.7 doctrine: 2.1.0 - eslint: 8.46.0 - eslint-import-resolver-node: 0.3.7 - eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.2.0)(eslint-import-resolver-node@0.3.7)(eslint-import-resolver-typescript@3.5.5)(eslint@8.46.0) - has: 1.0.3 - is-core-module: 2.12.1 + eslint: 8.56.0 + eslint-import-resolver-node: 0.3.9 + eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.18.1)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0) + hasown: 2.0.0 + is-core-module: 2.13.1 is-glob: 4.0.3 minimatch: 3.1.2 - object.fromentries: 2.0.6 - object.groupby: 1.0.0 - object.values: 1.1.6 - resolve: 1.22.3 + object.fromentries: 2.0.7 + object.groupby: 1.0.1 + object.values: 1.1.7 semver: 6.3.1 - tsconfig-paths: 3.14.2 + tsconfig-paths: 3.15.0 transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack - supports-color dev: true - /eslint-plugin-simple-import-sort@10.0.0(eslint@8.46.0): + /eslint-plugin-markdown@3.0.1(eslint@8.56.0): + resolution: {integrity: sha512-8rqoc148DWdGdmYF6WSQFT3uQ6PO7zXYgeBpHAOAakX/zpq+NvFYbDA/H7PYzHajwtmaOzAwfxyl++x0g1/N9A==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + dependencies: + eslint: 8.56.0 + mdast-util-from-markdown: 0.8.5 + transitivePeerDependencies: + - supports-color + dev: true + + /eslint-plugin-simple-import-sort@10.0.0(eslint@8.56.0): resolution: {integrity: sha512-AeTvO9UCMSNzIHRkg8S6c3RPy5YEwKWSQPx3DYghLedo2ZQxowPFLGDN1AZ2evfg6r6mjBSZSLxLFsWSu3acsw==} peerDependencies: eslint: '>=5.0.0' dependencies: - eslint: 8.46.0 + eslint: 8.56.0 dev: true - /eslint-plugin-sort-destructure-keys@1.5.0(eslint@8.46.0): + /eslint-plugin-sort-destructure-keys@1.5.0(eslint@8.56.0): resolution: {integrity: sha512-xGLyqHtbFXZNXQSvAiQ4ISBYokrbUywEhmaA50fKtSKgceCv5y3zjoNuZwcnajdM6q29Nxj+oXC9KcqfMsAPrg==} engines: {node: '>=6.0.0'} peerDependencies: eslint: 3 - 8 dependencies: - eslint: 8.46.0 + eslint: 8.56.0 natural-compare-lite: 1.4.0 dev: true - /eslint-scope@5.1.1: - resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} - engines: {node: '>=8.0.0'} - dependencies: - esrecurse: 4.3.0 - estraverse: 4.3.0 - dev: true - /eslint-scope@7.2.2: resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -3197,28 +3069,24 @@ packages: engines: {node: '>=10'} dev: true - /eslint-visitor-keys@3.4.1: - resolution: {integrity: sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dev: true - - /eslint-visitor-keys@3.4.2: - resolution: {integrity: sha512-8drBzUEyZ2llkpCA67iYrgEssKDUu68V8ChqqOfFupIaG/LCVPUT+CoGJpT77zJprs4T/W7p07LP7zAIMuweVw==} + /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} dev: true - /eslint@8.46.0: - resolution: {integrity: sha512-cIO74PvbW0qU8e0mIvk5IV3ToWdCq5FYG6gWPHHkx6gNdjlbAYvtfHmlCMXxjcoVaIdwy/IAt3+mDkZkfvb2Dg==} + /eslint@8.56.0: + resolution: {integrity: sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} hasBin: true dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.46.0) - '@eslint-community/regexpp': 4.6.2 - '@eslint/eslintrc': 2.1.1 - '@eslint/js': 8.46.0 - '@humanwhocodes/config-array': 0.11.10 + '@eslint-community/eslint-utils': 4.4.0(eslint@8.56.0) + '@eslint-community/regexpp': 4.10.0 + '@eslint/eslintrc': 2.1.4 + '@eslint/js': 8.56.0 + '@humanwhocodes/config-array': 0.11.13 '@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 @@ -3226,7 +3094,7 @@ packages: doctrine: 3.0.0 escape-string-regexp: 4.0.0 eslint-scope: 7.2.2 - eslint-visitor-keys: 3.4.2 + eslint-visitor-keys: 3.4.3 espree: 9.6.1 esquery: 1.5.0 esutils: 2.0.3 @@ -3234,9 +3102,9 @@ packages: file-entry-cache: 6.0.1 find-up: 5.0.0 glob-parent: 6.0.2 - globals: 13.20.0 + globals: 13.24.0 graphemer: 1.4.0 - ignore: 5.2.4 + ignore: 5.3.0 imurmurhash: 0.1.4 is-glob: 4.0.3 is-path-inside: 3.0.3 @@ -3257,9 +3125,9 @@ packages: resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: - acorn: 8.10.0 - acorn-jsx: 5.3.2(acorn@8.10.0) - eslint-visitor-keys: 3.4.2 + acorn: 8.11.2 + acorn-jsx: 5.3.2(acorn@8.11.2) + eslint-visitor-keys: 3.4.3 dev: true /esprima@4.0.1: @@ -3282,73 +3150,37 @@ packages: estraverse: 5.3.0 dev: true - /estraverse@4.3.0: - resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} - engines: {node: '>=4.0'} - dev: true - /estraverse@5.3.0: resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} engines: {node: '>=4.0'} dev: true + /estree-walker@3.0.3: + resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} + dependencies: + '@types/estree': 1.0.5 + dev: true + /esutils@2.0.3: resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} engines: {node: '>=0.10.0'} dev: true - /execa@5.1.1: - resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} - engines: {node: '>=10'} - dependencies: - cross-spawn: 7.0.3 - get-stream: 6.0.1 - human-signals: 2.1.0 - is-stream: 2.0.1 - merge-stream: 2.0.0 - npm-run-path: 4.0.1 - onetime: 5.1.2 - signal-exit: 3.0.7 - strip-final-newline: 2.0.0 - dev: true - - /execa@7.1.1: - resolution: {integrity: sha512-wH0eMf/UXckdUYnO21+HDztteVv05rq2GXksxT4fCGeHkBhw1DROXh40wcjMcRqDOWE7iPJ4n3M7e2+YFP+76Q==} - engines: {node: ^14.18.0 || ^16.14.0 || >=18.0.0} + /execa@8.0.1: + resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} + engines: {node: '>=16.17'} dependencies: cross-spawn: 7.0.3 - get-stream: 6.0.1 - human-signals: 4.3.1 + get-stream: 8.0.1 + human-signals: 5.0.0 is-stream: 3.0.0 merge-stream: 2.0.0 - npm-run-path: 5.1.0 + npm-run-path: 5.2.0 onetime: 6.0.0 - signal-exit: 3.0.7 + signal-exit: 4.1.0 strip-final-newline: 3.0.0 dev: true - /expand-brackets@0.1.5: - resolution: {integrity: sha512-hxx03P2dJxss6ceIeri9cmYOT4SRs3Zk3afZwWpOsRqLqprhTR8u++SlC+sFGsQr7WGFPdMF7Gjc1njDLDK6UA==} - engines: {node: '>=0.10.0'} - dependencies: - is-posix-bracket: 0.1.1 - dev: true - - /expand-brackets@2.1.4: - resolution: {integrity: sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==} - engines: {node: '>=0.10.0'} - dependencies: - debug: 2.6.9 - define-property: 0.2.5 - extend-shallow: 2.0.1 - posix-character-classes: 0.1.1 - regex-not: 1.0.2 - snapdragon: 0.8.2 - to-regex: 3.0.2 - transitivePeerDependencies: - - supports-color - dev: true - /expand-range@1.8.2: resolution: {integrity: sha512-AFASGfIlnIbkKPQwX1yHaDjFvh/1gyKJODme52V6IORh69uEYgZp0o9C+qsIGNVEiuuhQU0CSSl++Rlegg1qvA==} engines: {node: '>=0.10.0'} @@ -3356,16 +3188,15 @@ packages: fill-range: 2.2.4 dev: true - /expect@26.6.2: - resolution: {integrity: sha512-9/hlOBkQl2l/PLHJx6JjoDF6xPKcJEsUlWKb23rKE7KzeDqUZKXKNMW27KIue5JMdBV9HgmoJPcc8HtO85t9IA==} - engines: {node: '>= 10.14.2'} + /expect@29.7.0: + resolution: {integrity: sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@jest/types': 26.6.2 - ansi-styles: 4.3.0 - jest-get-type: 26.3.0 - jest-matcher-utils: 26.6.2 - jest-message-util: 26.6.2 - jest-regex-util: 26.0.0 + '@jest/expect-utils': 29.7.0 + jest-get-type: 29.6.3 + jest-matcher-utils: 29.7.0 + jest-message-util: 29.7.0 + jest-util: 29.7.0 dev: true /extend-shallow@2.0.1: @@ -3375,14 +3206,6 @@ packages: is-extendable: 0.1.1 dev: true - /extend-shallow@3.0.2: - resolution: {integrity: sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==} - engines: {node: '>=0.10.0'} - dependencies: - assign-symbols: 1.0.0 - is-extendable: 1.0.1 - dev: true - /extendable-error@0.1.7: resolution: {integrity: sha512-UOiS2in6/Q0FK0R0q6UY9vYpQ21mr/Qn1KOnte7vsACuNJf514WvCCUHSRCPcgjPT2bAhNIJdlE6bVap1GKmeg==} dev: true @@ -3396,42 +3219,19 @@ packages: tmp: 0.0.33 dev: true - /extglob@0.3.2: - resolution: {integrity: sha512-1FOj1LOwn42TMrruOHGt18HemVnbwAmAak7krWk+wa93KXxGbK+2jpezm+ytJYDaBX0/SPLZFHKM7m+tKobWGg==} - engines: {node: '>=0.10.0'} - dependencies: - is-extglob: 1.0.0 - dev: true - - /extglob@2.0.4: - resolution: {integrity: sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==} - engines: {node: '>=0.10.0'} - dependencies: - array-unique: 0.3.2 - define-property: 1.0.0 - expand-brackets: 2.1.4 - extend-shallow: 2.0.1 - fragment-cache: 0.2.1 - regex-not: 1.0.2 - snapdragon: 0.8.2 - to-regex: 3.0.2 - transitivePeerDependencies: - - supports-color - dev: true - - /fast-check@3.12.0: - resolution: {integrity: sha512-SqahE9mlL3+lhjJ39joMLwcj6F+24hfZdf/tchlNO8sHcTdrUUdA5P/ZbSFZM9Xpzs36XaneGwE0FWepm/zyOA==} + /fast-check@3.15.0: + resolution: {integrity: sha512-iBz6c+EXL6+nI931x/sbZs1JYTZtLG6Cko0ouS8LRTikhDR7+wZk4TYzdRavlnByBs2G6+nuuJ7NYL9QplNt8Q==} engines: {node: '>=8.0.0'} dependencies: - pure-rand: 6.0.2 + pure-rand: 6.0.4 dev: true /fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} dev: true - /fast-glob@3.3.0: - resolution: {integrity: sha512-ChDuvbOypPuNjO8yIDf36x7BlZX1smcUMTTcyoIjycexOxd6DFsKsg21qVBzEmr3G7fUKIRy2/psii+CIUt7FA==} + /fast-glob@3.3.1: + resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==} engines: {node: '>=8.6.0'} dependencies: '@nodelib/fs.stat': 2.0.5 @@ -3441,8 +3241,8 @@ packages: micromatch: 4.0.5 dev: true - /fast-glob@3.3.1: - resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==} + /fast-glob@3.3.2: + resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} engines: {node: '>=8.6.0'} dependencies: '@nodelib/fs.stat': 2.0.5 @@ -3466,25 +3266,11 @@ packages: reusify: 1.0.4 dev: true - /fflate@0.8.0: - resolution: {integrity: sha512-FAdS4qMuFjsJj6XHbBaZeXOgaypXp8iw/Tpyuq/w3XA41jjLHT8NPA+n7czH/DDhdncq0nAyDZmPeWXh2qmdIg==} - dev: true - /file-entry-cache@6.0.1: resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} engines: {node: ^10.12.0 || >=12.0.0} dependencies: - flat-cache: 3.0.4 - dev: true - - /file-uri-to-path@1.0.0: - resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==} - dev: true - optional: true - - /filename-regex@2.0.1: - resolution: {integrity: sha512-BTCqyBaWBTsauvnHiE8i562+EdJj+oUpkqWp2R1iCoR8f6oo8STRu3of7WJJ0TqWtxN50a5YFpzYK4Jj9esYfQ==} - engines: {node: '>=0.10.0'} + flat-cache: 3.2.0 dev: true /filing-cabinet@3.3.1: @@ -3499,11 +3285,11 @@ packages: is-relative-path: 1.0.2 module-definition: 3.4.0 module-lookup-amd: 7.0.1 - resolve: 1.22.2 + resolve: 1.22.8 resolve-dependency-path: 2.0.0 sass-lookup: 3.0.0 stylus-lookup: 3.0.2 - tsconfig-paths: 3.14.2 + tsconfig-paths: 3.15.0 typescript: 3.9.10 transitivePeerDependencies: - supports-color @@ -3520,27 +3306,14 @@ packages: repeat-string: 1.6.1 dev: true - /fill-range@4.0.0: - resolution: {integrity: sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==} - engines: {node: '>=0.10.0'} - dependencies: - extend-shallow: 2.0.1 - is-number: 3.0.0 - repeat-string: 1.6.1 - to-regex-range: 2.1.1 - dev: true - /fill-range@7.0.1: resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} engines: {node: '>=8'} + requiresBuild: true dependencies: to-regex-range: 5.0.1 dev: true - /find-index@0.1.1: - resolution: {integrity: sha512-uJ5vWrfBKMcE6y2Z8834dwEZj9mNGxYa3t3I53OwFeuZ8D9oc2E5zcsrkuhX6h4iYrjhiv0T3szQmxlAV9uxDg==} - dev: true - /find-up@4.1.0: resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} engines: {node: '>=8'} @@ -3564,16 +3337,17 @@ packages: pkg-dir: 4.2.0 dev: true - /flat-cache@3.0.4: - resolution: {integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==} + /flat-cache@3.2.0: + resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==} engines: {node: ^10.12.0 || >=12.0.0} dependencies: - flatted: 3.2.7 + flatted: 3.2.9 + keyv: 4.5.4 rimraf: 3.0.2 dev: true - /flatted@3.2.7: - resolution: {integrity: sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==} + /flatted@3.2.9: + resolution: {integrity: sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==} dev: true /flatten@1.0.3: @@ -3592,39 +3366,16 @@ packages: engines: {node: '>=0.10.0'} dev: true - /for-own@0.1.5: - resolution: {integrity: sha512-SKmowqGTJoPzLO1T0BBJpkfp3EMacCMOuH40hOUbrbzElVktk4DioXVM99QkLCyKoiuOmyjgcWMpVz2xjE7LZw==} - engines: {node: '>=0.10.0'} - dependencies: - for-in: 1.0.2 - dev: true - /foreground-child@3.1.1: resolution: {integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==} - engines: {node: '>=14'} - dependencies: - cross-spawn: 7.0.3 - signal-exit: 4.0.2 - dev: true - - /fp-ts@2.16.0: - resolution: {integrity: sha512-bLq+KgbiXdTEoT1zcARrWEpa5z6A/8b7PcDW7Gef3NSisQ+VS7ll2Xbf1E+xsgik0rWub/8u0qP/iTTjj+PhxQ==} - dev: true - - /fragment-cache@0.2.1: - resolution: {integrity: sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==} - engines: {node: '>=0.10.0'} + engines: {node: '>=14'} dependencies: - map-cache: 0.2.2 + cross-spawn: 7.0.3 + signal-exit: 4.1.0 dev: true - /fs-extra@11.1.1: - resolution: {integrity: sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==} - engines: {node: '>=14.14'} - dependencies: - graceful-fs: 4.2.11 - jsonfile: 6.1.0 - universalify: 2.0.0 + /fp-ts@2.16.1: + resolution: {integrity: sha512-by7U5W8dkIzcvDofUcO42yl9JbnHTEDBrzu3pt5fKT+Z4Oy85I21K80EYJYdjQGC2qum4Vo55Ag57iiIK4FYuA==} dev: true /fs-extra@7.0.1: @@ -3653,37 +3404,25 @@ packages: resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} dev: true - /fsevents@1.2.13: - resolution: {integrity: sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==} - engines: {node: '>= 4.0'} - os: [darwin] - deprecated: The v1 package contains DANGEROUS / INSECURE binaries. Upgrade to safe fsevents v2 - requiresBuild: true - dependencies: - bindings: 1.5.0 - nan: 2.17.0 - dev: true - optional: true - - /fsevents@2.3.2: - resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} + /fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} os: [darwin] requiresBuild: true dev: true optional: true - /function-bind@1.1.1: - resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} + /function-bind@1.1.2: + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} dev: true - /function.prototype.name@1.1.5: - resolution: {integrity: sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==} + /function.prototype.name@1.1.6: + resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 functions-have-names: 1.2.3 dev: true @@ -3717,61 +3456,42 @@ packages: engines: {node: 6.* || 8.* || >= 10.*} dev: true - /get-func-name@2.0.0: - resolution: {integrity: sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig==} + /get-func-name@2.0.2: + resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==} dev: true - /get-intrinsic@1.2.1: - resolution: {integrity: sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==} + /get-intrinsic@1.2.2: + resolution: {integrity: sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==} dependencies: - function-bind: 1.1.1 - has: 1.0.3 + function-bind: 1.1.2 has-proto: 1.0.1 has-symbols: 1.0.3 + hasown: 2.0.0 dev: true /get-own-enumerable-property-symbols@3.0.2: resolution: {integrity: sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==} dev: true - /get-stream@6.0.1: - resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} - engines: {node: '>=10'} + /get-stream@8.0.1: + resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} + engines: {node: '>=16'} dev: true /get-symbol-description@1.0.0: resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 + call-bind: 1.0.5 + get-intrinsic: 1.2.2 dev: true - /get-tsconfig@4.6.0: - resolution: {integrity: sha512-lgbo68hHTQnFddybKbbs/RDRJnJT5YyGy2kQzVwbq+g67X73i+5MVTval34QxGkOe9X5Ujf1UYpCaphLyltjEg==} + /get-tsconfig@4.7.2: + resolution: {integrity: sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==} dependencies: resolve-pkg-maps: 1.0.0 dev: true - /get-value@2.0.6: - resolution: {integrity: sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==} - engines: {node: '>=0.10.0'} - dev: true - - /glob-base@0.3.0: - resolution: {integrity: sha512-ab1S1g1EbO7YzauaJLkgLp7DZVAqj9M/dvKlTt8DkXA2tiOIcSMrlVI2J1RZyB5iJVccEscjGn+kpOG9788MHA==} - engines: {node: '>=0.10.0'} - dependencies: - glob-parent: 2.0.0 - is-glob: 2.0.1 - dev: true - - /glob-parent@2.0.0: - resolution: {integrity: sha512-JDYOvfxio/t42HKdxkAYaCiBN7oYiuxykOxKxdaUW5Qn0zaYN3gRQWolrwdnf0shM9/EP0ebuuTmyoXNr1cC5w==} - dependencies: - is-glob: 2.0.1 - dev: true - /glob-parent@5.1.2: resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} engines: {node: '>= 6'} @@ -3786,35 +3506,16 @@ packages: is-glob: 4.0.3 dev: true - /glob2base@0.0.12: - resolution: {integrity: sha512-ZyqlgowMbfj2NPjxaZZ/EtsXlOch28FRXgMd64vqZWk1bT9+wvSRLYD1om9M7QfQru51zJPAT17qXm4/zd+9QA==} - engines: {node: '>= 0.10'} - dependencies: - find-index: 0.1.1 - dev: true - - /glob@10.3.0: - resolution: {integrity: sha512-AQ1/SB9HH0yCx1jXAT4vmCbTOPe5RQ+kCurjbel5xSCGhebumUv+GJZfa1rEqor3XIViqwSEmlkZCQD43RWrBg==} - engines: {node: '>=16 || 14 >=14.17'} - hasBin: true - dependencies: - foreground-child: 3.1.1 - jackspeak: 2.2.1 - minimatch: 9.0.3 - minipass: 6.0.2 - path-scurry: 1.9.2 - dev: true - - /glob@10.3.1: - resolution: {integrity: sha512-9BKYcEeIs7QwlCYs+Y3GBvqAMISufUS0i2ELd11zpZjxI5V9iyRj0HgzB5/cLf2NY4vcYBTYzJ7GIui7j/4DOw==} + /glob@10.3.10: + resolution: {integrity: sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==} engines: {node: '>=16 || 14 >=14.17'} hasBin: true dependencies: foreground-child: 3.1.1 - jackspeak: 2.2.1 + jackspeak: 2.3.6 minimatch: 9.0.3 - minipass: 6.0.2 - path-scurry: 1.10.0 + minipass: 7.0.4 + path-scurry: 1.10.1 dev: true /glob@7.2.3: @@ -3833,8 +3534,8 @@ packages: engines: {node: '>=4'} dev: true - /globals@13.20.0: - resolution: {integrity: sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==} + /globals@13.24.0: + resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} engines: {node: '>=8'} dependencies: type-fest: 0.20.2 @@ -3844,7 +3545,7 @@ packages: resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} engines: {node: '>= 0.4'} dependencies: - define-properties: 1.2.0 + define-properties: 1.2.1 dev: true /globby@11.1.0: @@ -3853,23 +3554,12 @@ packages: dependencies: array-union: 2.1.0 dir-glob: 3.0.1 - fast-glob: 3.3.1 - ignore: 5.2.4 + fast-glob: 3.3.2 + ignore: 5.3.0 merge2: 1.4.1 slash: 3.0.0 dev: true - /globby@13.2.0: - resolution: {integrity: sha512-jWsQfayf13NvqKUIL3Ta+CIqMnvlaIDFveWE/dpOZ9+3AMEJozsxDvKA02zync9UuvOM8rOXzsD5GqKP4OnWPQ==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - dependencies: - dir-glob: 3.0.1 - fast-glob: 3.3.0 - ignore: 5.2.4 - merge2: 1.4.1 - slash: 4.0.0 - dev: true - /gonzales-pe@4.3.0: resolution: {integrity: sha512-otgSPpUmdWJ43VXyiNgEYE4luzHCL2pz4wQ0OnDluC6Eg4Ko3Vexy/SrSynglw/eR+OhkzmqFCZa/OFa/RgAOQ==} engines: {node: '>=0.6.0'} @@ -3881,7 +3571,7 @@ packages: /gopd@1.0.1: resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} dependencies: - get-intrinsic: 1.2.1 + get-intrinsic: 1.2.2 dev: true /graceful-fs@4.2.11: @@ -3896,15 +3586,14 @@ packages: resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} dev: true - /gray-matter@2.1.1: - resolution: {integrity: sha512-vbmvP1Fe/fxuT2QuLVcqb2BfK7upGhhbLIt9/owWEvPYrZZEkelLcq2HqzxosV+PQ67dUFLaAeNpH7C4hhICAA==} + /gray-matter@3.1.1: + resolution: {integrity: sha512-nZ1qjLmayEv0/wt3sHig7I0s3/sJO0dkAaKYQ5YAOApUtYEOonXSFdWvL1khvnZMTvov4UufkqlFsilPnejEXA==} engines: {node: '>=0.10.0'} dependencies: - ansi-red: 0.1.1 - coffee-script: 1.12.7 extend-shallow: 2.0.1 js-yaml: 3.14.1 - toml: 2.3.6 + kind-of: 5.1.0 + strip-bom-string: 1.0.0 dev: true /gulp-header@1.8.12: @@ -3935,10 +3624,10 @@ packages: engines: {node: '>=8'} dev: true - /has-property-descriptors@1.0.0: - resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==} + /has-property-descriptors@1.0.1: + resolution: {integrity: sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==} dependencies: - get-intrinsic: 1.2.1 + get-intrinsic: 1.2.2 dev: true /has-proto@1.0.1: @@ -3958,42 +3647,18 @@ packages: has-symbols: 1.0.3 dev: true - /has-value@0.3.1: - resolution: {integrity: sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==} - engines: {node: '>=0.10.0'} - dependencies: - get-value: 2.0.6 - has-values: 0.1.4 - isobject: 2.1.0 - dev: true - - /has-value@1.0.0: - resolution: {integrity: sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==} - engines: {node: '>=0.10.0'} - dependencies: - get-value: 2.0.6 - has-values: 1.0.0 - isobject: 3.0.1 - dev: true - - /has-values@0.1.4: - resolution: {integrity: sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==} - engines: {node: '>=0.10.0'} - dev: true - - /has-values@1.0.0: - resolution: {integrity: sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==} - engines: {node: '>=0.10.0'} - dependencies: - is-number: 3.0.0 - kind-of: 4.0.0 - dev: true - /has@1.0.3: resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} engines: {node: '>= 0.4.0'} dependencies: - function-bind: 1.1.1 + function-bind: 1.1.2 + dev: true + + /hasown@2.0.0: + resolution: {integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==} + engines: {node: '>= 0.4'} + dependencies: + function-bind: 1.1.2 dev: true /hosted-git-info@2.8.9: @@ -4008,14 +3673,9 @@ packages: resolution: {integrity: sha512-UNopramDEhHJD+VR+ehk8rOslwSfByxPIZyJRfV739NDhN5LF1fa1MqnzKm2lGTQRjNrjK19Q5fhkgIfjlVUKw==} dev: true - /human-signals@2.1.0: - resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} - engines: {node: '>=10.17.0'} - dev: true - - /human-signals@4.3.1: - resolution: {integrity: sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==} - engines: {node: '>=14.18.0'} + /human-signals@5.0.0: + resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} + engines: {node: '>=16.17.0'} dev: true /iconv-lite@0.4.24: @@ -4029,8 +3689,8 @@ packages: resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} dev: true - /ignore@5.2.4: - resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} + /ignore@5.3.0: + resolution: {integrity: sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==} engines: {node: '>= 4'} dev: true @@ -4071,49 +3731,46 @@ packages: resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} dev: true - /internal-slot@1.0.5: - resolution: {integrity: sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==} + /internal-slot@1.0.6: + resolution: {integrity: sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==} engines: {node: '>= 0.4'} dependencies: - get-intrinsic: 1.2.1 - has: 1.0.3 + get-intrinsic: 1.2.2 + hasown: 2.0.0 side-channel: 1.0.4 dev: true /io-ts-extra@0.11.6: resolution: {integrity: sha512-rTsvx3W5B2nx7p/eGf+OsEaBTmjSjLzxBDEiweCjwqIL9ZN6CZjG7hFK8zyGJyM0I2uCsRU4uYUhaTgg2SKHkQ==} dependencies: - fp-ts: 2.16.0 - io-ts: 2.2.20(fp-ts@2.16.0) + fp-ts: 2.16.1 + io-ts: 2.2.20(fp-ts@2.16.1) dev: true - /io-ts@2.2.20(fp-ts@2.16.0): + /io-ts@2.2.20(fp-ts@2.16.1): resolution: {integrity: sha512-Rq2BsYmtwS5vVttie4rqrOCIfHCS9TgpRLFpKQCM1wZBBRY9nWVGmEvm2FnDbSE2un1UE39DvFpTR5UL47YDcA==} peerDependencies: fp-ts: ^2.5.0 dependencies: - fp-ts: 2.16.0 + fp-ts: 2.16.1 dev: true - /is-accessor-descriptor@0.1.6: - resolution: {integrity: sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==} - engines: {node: '>=0.10.0'} - dependencies: - kind-of: 3.2.2 + /is-alphabetical@1.0.4: + resolution: {integrity: sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==} dev: true - /is-accessor-descriptor@1.0.0: - resolution: {integrity: sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==} - engines: {node: '>=0.10.0'} + /is-alphanumerical@1.0.4: + resolution: {integrity: sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==} dependencies: - kind-of: 6.0.3 + is-alphabetical: 1.0.4 + is-decimal: 1.0.4 dev: true /is-array-buffer@3.0.2: resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==} dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 + call-bind: 1.0.5 + get-intrinsic: 1.2.2 is-typed-array: 1.1.12 dev: true @@ -4127,16 +3784,10 @@ packages: has-bigints: 1.0.2 dev: true - /is-binary-path@1.0.1: - resolution: {integrity: sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==} - engines: {node: '>=0.10.0'} - dependencies: - binary-extensions: 1.13.1 - dev: true - /is-binary-path@2.1.0: resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} engines: {node: '>=8'} + requiresBuild: true dependencies: binary-extensions: 2.2.0 dev: true @@ -4146,7 +3797,7 @@ packages: resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 + call-bind: 1.0.5 has-tostringtag: 1.0.0 dev: true @@ -4159,31 +3810,16 @@ packages: engines: {node: '>= 0.4'} dev: true - /is-ci@3.0.1: - resolution: {integrity: sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==} - hasBin: true - dependencies: - ci-info: 3.8.0 - dev: true - - /is-core-module@2.12.1: - resolution: {integrity: sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==} + /is-core-module@2.13.0: + resolution: {integrity: sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==} dependencies: has: 1.0.3 dev: true - /is-data-descriptor@0.1.4: - resolution: {integrity: sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==} - engines: {node: '>=0.10.0'} - dependencies: - kind-of: 3.2.2 - dev: true - - /is-data-descriptor@1.0.0: - resolution: {integrity: sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==} - engines: {node: '>=0.10.0'} + /is-core-module@2.13.1: + resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} dependencies: - kind-of: 6.0.3 + hasown: 2.0.0 dev: true /is-date-object@1.0.5: @@ -4193,46 +3829,8 @@ packages: has-tostringtag: 1.0.0 dev: true - /is-descriptor@0.1.6: - resolution: {integrity: sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==} - engines: {node: '>=0.10.0'} - dependencies: - is-accessor-descriptor: 0.1.6 - is-data-descriptor: 0.1.4 - kind-of: 5.1.0 - dev: true - - /is-descriptor@1.0.2: - resolution: {integrity: sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==} - engines: {node: '>=0.10.0'} - dependencies: - is-accessor-descriptor: 1.0.0 - is-data-descriptor: 1.0.0 - kind-of: 6.0.3 - dev: true - - /is-docker@2.2.1: - resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} - engines: {node: '>=8'} - hasBin: true - dev: true - - /is-docker@3.0.0: - resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - hasBin: true - dev: true - - /is-dotfile@1.0.3: - resolution: {integrity: sha512-9YclgOGtN/f8zx0Pr4FQYMdibBiTaH3sn52vjYip4ZSf6C4/6RfTEZ+MR4GvKhCxdPh21Bg42/WL55f6KSnKpg==} - engines: {node: '>=0.10.0'} - dev: true - - /is-equal-shallow@0.1.3: - resolution: {integrity: sha512-0EygVC5qPvIyb+gSz7zdD5/AAoS6Qrx1e//6N4yv4oNm30kqvdmG66oZFWVlQHUWe5OjP08FuTw2IdT0EOTcYA==} - engines: {node: '>=0.10.0'} - dependencies: - is-primitive: 2.0.0 + /is-decimal@1.0.4: + resolution: {integrity: sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==} dev: true /is-extendable@0.1.1: @@ -4247,11 +3845,6 @@ packages: is-plain-object: 2.0.4 dev: true - /is-extglob@1.0.0: - resolution: {integrity: sha512-7Q+VbVafe6x2T+Tu6NcOf6sRklazEPmBoB3IWk3WdGZM2iGUwU/Oe3Wtq5lSEkDTTlpp8yx+5t4pzO/i9Ty1ww==} - engines: {node: '>=0.10.0'} - dev: true - /is-extglob@2.1.1: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} @@ -4262,13 +3855,6 @@ packages: engines: {node: '>=8'} dev: true - /is-glob@2.0.1: - resolution: {integrity: sha512-a1dBeB19NXsf/E0+FHqkagizel/LQw2DjSQpvQrj3zT+jYPpaUCryPnrQajXKFLCMuf4I6FhRpaGtw4lPrG6Eg==} - engines: {node: '>=0.10.0'} - dependencies: - is-extglob: 1.0.0 - dev: true - /is-glob@4.0.3: resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} engines: {node: '>=0.10.0'} @@ -4276,12 +3862,8 @@ packages: is-extglob: 2.1.1 dev: true - /is-inside-container@1.0.0: - resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==} - engines: {node: '>=14.16'} - hasBin: true - dependencies: - is-docker: 3.0.0 + /is-hexadecimal@1.0.4: + resolution: {integrity: sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==} dev: true /is-interactive@1.0.0: @@ -4308,13 +3890,6 @@ packages: kind-of: 3.2.2 dev: true - /is-number@3.0.0: - resolution: {integrity: sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==} - engines: {node: '>=0.10.0'} - dependencies: - kind-of: 3.2.2 - dev: true - /is-number@4.0.0: resolution: {integrity: sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==} engines: {node: '>=0.10.0'} @@ -4323,6 +3898,7 @@ packages: /is-number@7.0.0: resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} engines: {node: '>=0.12.0'} + requiresBuild: true dev: true /is-obj@1.0.1: @@ -4347,21 +3923,11 @@ packages: isobject: 3.0.1 dev: true - /is-posix-bracket@0.1.1: - resolution: {integrity: sha512-Yu68oeXJ7LeWNmZ3Zov/xg/oDBnBK2RNxwYY1ilNJX+tKKZqgPK+qOn/Gs9jEu66KDY9Netf5XLKNGzas/vPfQ==} - engines: {node: '>=0.10.0'} - dev: true - - /is-primitive@2.0.0: - resolution: {integrity: sha512-N3w1tFaRfk3UrPfqeRyD+GYDASU3W5VinKhlORy8EWVf/sIdDL9GAcew85XmktCfH+ngG7SRXEVDoO18WMdB/Q==} - engines: {node: '>=0.10.0'} - dev: true - /is-regex@1.1.4: resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 + call-bind: 1.0.5 has-tostringtag: 1.0.0 dev: true @@ -4377,12 +3943,7 @@ packages: /is-shared-array-buffer@1.0.2: resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==} dependencies: - call-bind: 1.0.2 - dev: true - - /is-stream@2.0.1: - resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} - engines: {node: '>=8'} + call-bind: 1.0.5 dev: true /is-stream@3.0.0: @@ -4415,7 +3976,7 @@ packages: resolution: {integrity: sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==} engines: {node: '>= 0.4'} dependencies: - which-typed-array: 1.1.11 + which-typed-array: 1.1.13 dev: true /is-unicode-supported@0.1.0: @@ -4435,7 +3996,7 @@ packages: /is-weakref@1.0.2: resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} dependencies: - call-bind: 1.0.2 + call-bind: 1.0.5 dev: true /is-windows@1.0.2: @@ -4443,13 +4004,6 @@ packages: engines: {node: '>=0.10.0'} dev: true - /is-wsl@2.2.0: - resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==} - engines: {node: '>=8'} - dependencies: - is-docker: 2.2.1 - dev: true - /isarray@1.0.0: resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} dev: true @@ -4474,17 +4028,17 @@ packages: engines: {node: '>=0.10.0'} dev: true - /istanbul-lib-coverage@3.2.0: - resolution: {integrity: sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==} + /istanbul-lib-coverage@3.2.2: + resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==} engines: {node: '>=8'} dev: true - /istanbul-lib-report@3.0.0: - resolution: {integrity: sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==} - engines: {node: '>=8'} + /istanbul-lib-report@3.0.1: + resolution: {integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==} + engines: {node: '>=10'} dependencies: - istanbul-lib-coverage: 3.2.0 - make-dir: 3.1.0 + istanbul-lib-coverage: 3.2.2 + make-dir: 4.0.0 supports-color: 7.2.0 dev: true @@ -4493,22 +4047,22 @@ packages: engines: {node: '>=10'} dependencies: debug: 4.3.4 - istanbul-lib-coverage: 3.2.0 + istanbul-lib-coverage: 3.2.2 source-map: 0.6.1 transitivePeerDependencies: - supports-color dev: true - /istanbul-reports@3.1.5: - resolution: {integrity: sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==} + /istanbul-reports@3.1.6: + resolution: {integrity: sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==} engines: {node: '>=8'} dependencies: html-escaper: 2.0.2 - istanbul-lib-report: 3.0.0 + istanbul-lib-report: 3.0.1 dev: true - /jackspeak@2.2.1: - resolution: {integrity: sha512-MXbxovZ/Pm42f6cDIDkl3xpwv1AGwObKwfmjs2nQePiy85tP3fatofl3FC1aBsOtP/6fq5SbtgHwWcMsLP+bDw==} + /jackspeak@2.3.6: + resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==} engines: {node: '>=14'} dependencies: '@isaacs/cliui': 8.0.2 @@ -4516,49 +4070,56 @@ packages: '@pkgjs/parseargs': 0.11.0 dev: true - /jest-diff@26.6.2: - resolution: {integrity: sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA==} - engines: {node: '>= 10.14.2'} + /jest-diff@29.7.0: + resolution: {integrity: sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: chalk: 4.1.2 - diff-sequences: 26.6.2 - jest-get-type: 26.3.0 - pretty-format: 26.6.2 + diff-sequences: 29.6.3 + jest-get-type: 29.6.3 + pretty-format: 29.7.0 dev: true - /jest-get-type@26.3.0: - resolution: {integrity: sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==} - engines: {node: '>= 10.14.2'} + /jest-get-type@29.6.3: + resolution: {integrity: sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dev: true - /jest-matcher-utils@26.6.2: - resolution: {integrity: sha512-llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw==} - engines: {node: '>= 10.14.2'} + /jest-matcher-utils@29.7.0: + resolution: {integrity: sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: chalk: 4.1.2 - jest-diff: 26.6.2 - jest-get-type: 26.3.0 - pretty-format: 26.6.2 + jest-diff: 29.7.0 + jest-get-type: 29.6.3 + pretty-format: 29.7.0 dev: true - /jest-message-util@26.6.2: - resolution: {integrity: sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==} - engines: {node: '>= 10.14.2'} + /jest-message-util@29.7.0: + resolution: {integrity: sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@babel/code-frame': 7.22.5 - '@jest/types': 26.6.2 - '@types/stack-utils': 2.0.1 + '@babel/code-frame': 7.23.5 + '@jest/types': 29.6.3 + '@types/stack-utils': 2.0.3 chalk: 4.1.2 graceful-fs: 4.2.11 micromatch: 4.0.5 - pretty-format: 26.6.2 + pretty-format: 29.7.0 slash: 3.0.0 stack-utils: 2.0.6 dev: true - /jest-regex-util@26.0.0: - resolution: {integrity: sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A==} - engines: {node: '>= 10.14.2'} + /jest-util@29.7.0: + resolution: {integrity: sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/types': 29.6.3 + '@types/node': 20.10.7 + chalk: 4.1.2 + ci-info: 3.9.0 + graceful-fs: 4.2.11 + picomatch: 2.3.1 dev: true /js-tokens@4.0.0: @@ -4586,6 +4147,10 @@ packages: hasBin: true dev: true + /json-buffer@3.0.1: + resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} + dev: true + /json-parse-even-better-errors@2.3.1: resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} dev: true @@ -4621,12 +4186,10 @@ packages: graceful-fs: 4.2.11 dev: true - /jsonfile@6.1.0: - resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} + /keyv@4.5.4: + resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} dependencies: - universalify: 2.0.0 - optionalDependencies: - graceful-fs: 4.2.11 + json-buffer: 3.0.1 dev: true /kind-of@3.2.2: @@ -4636,13 +4199,6 @@ packages: is-buffer: 1.1.6 dev: true - /kind-of@4.0.0: - resolution: {integrity: sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==} - engines: {node: '>=0.10.0'} - dependencies: - is-buffer: 1.1.6 - dev: true - /kind-of@5.1.0: resolution: {integrity: sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==} engines: {node: '>=0.10.0'} @@ -4705,9 +4261,12 @@ packages: strip-bom: 3.0.0 dev: true - /local-pkg@0.4.3: - resolution: {integrity: sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==} + /local-pkg@0.5.0: + resolution: {integrity: sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==} engines: {node: '>=14'} + dependencies: + mlly: 1.4.2 + pkg-types: 1.0.3 dev: true /locate-path@5.0.0: @@ -4761,14 +4320,14 @@ packages: is-unicode-supported: 0.1.0 dev: true - /loupe@2.3.6: - resolution: {integrity: sha512-RaPMZKiMy8/JruncMU5Bt6na1eftNoo++R4Y+N2FrxkDVTrGvcyzFTsaGif4QTeKESheMGegbhw6iUAq+5A8zA==} + /loupe@2.3.7: + resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==} dependencies: - get-func-name: 2.0.0 + get-func-name: 2.0.2 dev: true - /lru-cache@10.0.0: - resolution: {integrity: sha512-svTf/fzsKHffP42sujkO/Rjs37BCIsQVRCeNYIm9WN8rgT7ffoUnRtZCqU+6BqcSBdv8gwJeTz8knJpgACeQMw==} + /lru-cache@10.1.0: + resolution: {integrity: sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==} engines: {node: 14 || >=16.14} dev: true @@ -4792,12 +4351,7 @@ packages: yallist: 4.0.0 dev: true - /lru-cache@9.1.2: - resolution: {integrity: sha512-ERJq3FOzJTxBbFjZ7iDs+NiK4VI9Wz+RdrrAB8dio1oV+YvdPzUEE4QNiT2VD51DkIbCYRUUzCRkssXCHqSnKQ==} - engines: {node: 14 || >=16.14} - dev: true - - /madge@6.1.0(typescript@5.1.6): + /madge@6.1.0(typescript@5.3.3): resolution: {integrity: sha512-irWhT5RpFOc6lkzGHKLihonCVgM0YtfNUh4IrFeW3EqHpnt/JHUG3z26j8PeJEktCGB4tmGOOOJi1Rl/ACWucQ==} engines: {node: '>=14'} hasBin: true @@ -4828,19 +4382,27 @@ packages: rc: 1.2.8 stream-to-array: 2.3.0 ts-graphviz: 1.8.1 - typescript: 5.1.6 + typescript: 5.3.3 walkdir: 0.4.1 transitivePeerDependencies: - supports-color dev: true - /magic-string@0.30.1: - resolution: {integrity: sha512-mbVKXPmS0z0G4XqFDCTllmDQ6coZzn94aMlb0o/A4HEHJCKcanlDZwYJgwnkmgD3jyWhUgj9VsPrfd972yPffA==} + /magic-string@0.30.5: + resolution: {integrity: sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==} engines: {node: '>=12'} dependencies: '@jridgewell/sourcemap-codec': 1.4.15 dev: true + /magicast@0.3.2: + resolution: {integrity: sha512-Fjwkl6a0syt9TFN0JSYpOybxiMCkYNEeOTnOTNRbjphirLakznZXAqrXgj/7GG3D1dvETONNwrBfinvAbpunDg==} + dependencies: + '@babel/parser': 7.23.6 + '@babel/types': 7.23.6 + source-map-js: 1.0.2 + dev: true + /make-dir@2.1.0: resolution: {integrity: sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==} engines: {node: '>=6'} @@ -4849,20 +4411,11 @@ packages: semver: 5.7.2 dev: true - /make-dir@3.1.0: - resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} - engines: {node: '>=8'} + /make-dir@4.0.0: + resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==} + engines: {node: '>=10'} dependencies: - semver: 6.3.1 - dev: true - - /make-error@1.3.6: - resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} - dev: true - - /map-cache@0.2.2: - resolution: {integrity: sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==} - engines: {node: '>=0.10.0'} + semver: 7.5.4 dev: true /map-obj@1.0.1: @@ -4875,46 +4428,36 @@ packages: engines: {node: '>=8'} dev: true - /map-visit@1.0.0: - resolution: {integrity: sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==} - engines: {node: '>=0.10.0'} - dependencies: - object-visit: 1.0.1 - dev: true - /markdown-link@0.1.1: resolution: {integrity: sha512-TurLymbyLyo+kAUUAV9ggR9EPcDjP/ctlv9QAFiqUH7c+t6FlsbivPo9OKTU8xdOx9oNd2drW/Fi5RRElQbUqA==} engines: {node: '>=0.10.0'} dev: true - /markdown-toc@1.2.0: - resolution: {integrity: sha512-eOsq7EGd3asV0oBfmyqngeEIhrbkc7XVP63OwcJBIhH2EpG2PzFcbZdhy1jutXSlRBBVMNXHvMtSr5LAxSUvUg==} - engines: {node: '>=0.10.0'} - hasBin: true + /math-random@1.0.4: + resolution: {integrity: sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A==} + dev: true + + /mdast-util-from-markdown@0.8.5: + resolution: {integrity: sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==} dependencies: - concat-stream: 1.6.2 - diacritics-map: 0.1.0 - gray-matter: 2.1.1 - lazy-cache: 2.0.2 - list-item: 1.1.1 - markdown-link: 0.1.1 - minimist: 1.2.8 - mixin-deep: 1.3.2 - object.pick: 1.3.0 - remarkable: 1.7.4 - repeat-string: 1.6.1 - strip-color: 0.1.0 + '@types/mdast': 3.0.15 + mdast-util-to-string: 2.0.0 + micromark: 2.11.4 + parse-entities: 2.0.0 + unist-util-stringify-position: 2.0.3 + transitivePeerDependencies: + - supports-color dev: true - /math-random@1.0.4: - resolution: {integrity: sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A==} + /mdast-util-to-string@2.0.0: + resolution: {integrity: sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==} dev: true /meow@6.1.1: resolution: {integrity: sha512-3YffViIt2QWgTy6Pale5QpopX/IvU3LPL03jOTqp6pGj3VjesdO/U8CuHMKpnQr4shCNCM5fd5XFFvIIl6JBHg==} engines: {node: '>=8'} dependencies: - '@types/minimist': 1.2.2 + '@types/minimist': 1.2.5 camelcase-keys: 6.2.2 decamelize-keys: 1.1.1 hard-rejection: 2.1.0 @@ -4936,42 +4479,11 @@ packages: engines: {node: '>= 8'} dev: true - /micromatch@2.3.11: - resolution: {integrity: sha512-LnU2XFEk9xxSJ6rfgAry/ty5qwUTyHYOBU0g4R6tIw5ljwgGIBmiKhRWLw5NpMOnrgUNcDJ4WMp8rl3sYVHLNA==} - engines: {node: '>=0.10.0'} - dependencies: - arr-diff: 2.0.0 - array-unique: 0.2.1 - braces: 1.8.5 - expand-brackets: 0.1.5 - extglob: 0.3.2 - filename-regex: 2.0.1 - is-extglob: 1.0.0 - is-glob: 2.0.1 - kind-of: 3.2.2 - normalize-path: 2.1.1 - object.omit: 2.0.1 - parse-glob: 3.0.4 - regex-cache: 0.4.4 - dev: true - - /micromatch@3.1.10: - resolution: {integrity: sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==} - engines: {node: '>=0.10.0'} + /micromark@2.11.4: + resolution: {integrity: sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==} dependencies: - arr-diff: 4.0.0 - array-unique: 0.3.2 - braces: 2.3.2 - define-property: 2.0.2 - extend-shallow: 3.0.2 - extglob: 2.0.4 - fragment-cache: 0.2.1 - kind-of: 6.0.3 - nanomatch: 1.2.13 - object.pick: 1.3.0 - regex-not: 1.0.2 - snapdragon: 0.8.2 - to-regex: 3.0.2 + debug: 4.3.4 + parse-entities: 2.0.0 transitivePeerDependencies: - supports-color dev: true @@ -5005,13 +4517,6 @@ packages: brace-expansion: 1.1.11 dev: true - /minimatch@7.4.6: - resolution: {integrity: sha512-sBz8G/YjVniEz6lKPNpKxXwazJe4c19fEfV2GDMX6AjFz+MX9uDWIZW8XreVhkFW3fkIdTv/gxWr/Kks5FFAVw==} - engines: {node: '>=10'} - dependencies: - brace-expansion: 2.0.1 - dev: true - /minimatch@9.0.3: resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} engines: {node: '>=16 || 14 >=14.17'} @@ -5032,8 +4537,8 @@ packages: resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} dev: true - /minipass@6.0.2: - resolution: {integrity: sha512-MzWSV5nYVT7mVyWCwn2o7JH13w2TBRmmSqSRCKzTw+lmft9X4z+3wjvs06Tzijo5z4W/kahUCDpRXTF+ZrmF/w==} + /minipass@7.0.4: + resolution: {integrity: sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==} engines: {node: '>=16 || 14 >=14.17'} dev: true @@ -5045,31 +4550,18 @@ packages: is-extendable: 1.0.1 dev: true - /mixme@0.5.9: - resolution: {integrity: sha512-VC5fg6ySUscaWUpI4gxCBTQMH2RdUpNrk+MsbpCYtIvf9SBJdiUey4qE7BXviJsJR4nDQxCZ+3yaYNW3guz/Pw==} + /mixme@0.5.10: + resolution: {integrity: sha512-5H76ANWinB1H3twpJ6JY8uvAtpmFvHNArpilJAjXRKXSDDLPIMoZArw5SH0q9z+lLs8IrMw7Q2VWpWimFKFT1Q==} engines: {node: '>= 8.0.0'} dev: true - /mkdirp@0.5.6: - resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} - hasBin: true - dependencies: - minimist: 1.2.8 - dev: true - - /mkdirp@2.1.6: - resolution: {integrity: sha512-+hEnITedc8LAtIP9u3HJDFIdcLV2vXP33sqLLIzkv1Db1zO/1OxbvYf0Y1OC/S/Qo5dxHXepofhmxL02PsKe+A==} - engines: {node: '>=10'} - hasBin: true - dev: true - - /mlly@1.4.0: - resolution: {integrity: sha512-ua8PAThnTwpprIaU47EPeZ/bPUVp2QYBbWMphUQpVdBI3Lgqzm5KZQ45Agm3YJedHXaIHl6pBGabaLSUPPSptg==} + /mlly@1.4.2: + resolution: {integrity: sha512-i/Ykufi2t1EZ6NaPLdfnZk2AX8cs0d+mTzVKuPfqPKPatxLApaBoxJQ9x1/uckXtrS/U5oisPMDkNs0yQTaBRg==} dependencies: - acorn: 8.10.0 + acorn: 8.11.3 pathe: 1.1.1 pkg-types: 1.0.3 - ufo: 1.1.2 + ufo: 1.3.2 dev: true /module-definition@3.4.0: @@ -5104,15 +4596,6 @@ packages: - supports-color dev: true - /mrmime@1.0.1: - resolution: {integrity: sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==} - engines: {node: '>=10'} - dev: true - - /ms@2.0.0: - resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==} - dev: true - /ms@2.1.2: resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} dev: true @@ -5121,34 +4604,16 @@ packages: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} dev: true - /nan@2.17.0: - resolution: {integrity: sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==} - dev: true - optional: true - /nanoid@3.3.6: resolution: {integrity: sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true dev: true - /nanomatch@1.2.13: - resolution: {integrity: sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==} - engines: {node: '>=0.10.0'} - dependencies: - arr-diff: 4.0.0 - array-unique: 0.3.2 - define-property: 2.0.2 - extend-shallow: 3.0.2 - fragment-cache: 0.2.1 - is-windows: 1.0.2 - kind-of: 6.0.3 - object.pick: 1.3.0 - regex-not: 1.0.2 - snapdragon: 0.8.2 - to-regex: 3.0.2 - transitivePeerDependencies: - - supports-color + /nanoid@3.3.7: + resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true dev: true /natural-compare-lite@1.4.0: @@ -5159,8 +4624,8 @@ packages: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} dev: true - /node-fetch@2.6.11: - resolution: {integrity: sha512-4I6pdBY1EthSqDmJkiNk3JIT8cswwR9nfeW/cPdUagJYEQG7R95WRH74wpz7ma8Gh/9dI9FP+OU+0E4FvtA55w==} + /node-fetch@2.7.0: + resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} engines: {node: 4.x || >=6.0.0} peerDependencies: encoding: ^0.1.0 @@ -5171,22 +4636,22 @@ packages: whatwg-url: 5.0.0 dev: true - /node-releases@2.0.13: - resolution: {integrity: sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==} + /node-releases@2.0.14: + resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} dev: true /node-source-walk@4.3.0: resolution: {integrity: sha512-8Q1hXew6ETzqKRAs3jjLioSxNfT1cx74ooiF8RlAONwVMcfq+UdzLC2eB5qcPldUxaE5w3ytLkrmV1TGddhZTA==} engines: {node: '>=6.0'} dependencies: - '@babel/parser': 7.22.7 + '@babel/parser': 7.23.3 dev: true /node-source-walk@5.0.2: resolution: {integrity: sha512-Y4jr/8SRS5hzEdZ7SGuvZGwfORvNsSsNRwDXx5WisiqzsVfeftDvRgfeqWNgZvWSJbgubTRVRYBzK6UO+ErqjA==} engines: {node: '>=12'} dependencies: - '@babel/parser': 7.22.7 + '@babel/parser': 7.23.3 dev: true /normalize-package-data@2.5.0: @@ -5198,92 +4663,59 @@ packages: validate-npm-package-license: 3.0.4 dev: true - /normalize-path@2.1.1: - resolution: {integrity: sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==} - engines: {node: '>=0.10.0'} - dependencies: - remove-trailing-separator: 1.1.0 - dev: true - /normalize-path@3.0.0: resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} engines: {node: '>=0.10.0'} + requiresBuild: true dev: true optional: true - /npm-run-path@4.0.1: - resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} - engines: {node: '>=8'} - dependencies: - path-key: 3.1.1 - dev: true - - /npm-run-path@5.1.0: - resolution: {integrity: sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==} + /npm-run-path@5.2.0: + resolution: {integrity: sha512-W4/tgAXFqFA0iL7fk0+uQ3g7wkL8xJmx3XdK0VGb4cHW//eZTtKGvFBBoRKVTpY7n6ze4NL9ly7rgXcHufqXKg==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: - path-key: 4.0.0 - dev: true - - /object-copy@0.1.0: - resolution: {integrity: sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ==} - engines: {node: '>=0.10.0'} - dependencies: - copy-descriptor: 0.1.1 - define-property: 0.2.5 - kind-of: 3.2.2 + path-key: 4.0.0 dev: true /object-inspect@1.12.3: resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==} dev: true + /object-inspect@1.13.1: + resolution: {integrity: sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==} + dev: true + /object-keys@1.1.1: resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} engines: {node: '>= 0.4'} dev: true - /object-visit@1.0.1: - resolution: {integrity: sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==} - engines: {node: '>=0.10.0'} - dependencies: - isobject: 3.0.1 - dev: true - /object.assign@4.1.4: resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 + call-bind: 1.0.5 + define-properties: 1.2.1 has-symbols: 1.0.3 object-keys: 1.1.1 dev: true - /object.fromentries@2.0.6: - resolution: {integrity: sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==} + /object.fromentries@2.0.7: + resolution: {integrity: sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 dev: true - /object.groupby@1.0.0: - resolution: {integrity: sha512-70MWG6NfRH9GnbZOikuhPPYzpUpof9iW2J9E4dW7FXTqPNb6rllE6u39SKwwiNh8lCwX3DDb5OgcKGiEBrTTyw==} + /object.groupby@1.0.1: + resolution: {integrity: sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - get-intrinsic: 1.2.1 - dev: true - - /object.omit@2.0.1: - resolution: {integrity: sha512-UiAM5mhmIuKLsOvrL+B0U2d1hXHF3bFYWIuH1LMpuV2EJEHG1Ntz06PgLEHjm6VFd87NpH8rastvPoyv6UW2fA==} - engines: {node: '>=0.10.0'} - dependencies: - for-own: 0.1.5 - is-extendable: 0.1.1 + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 + get-intrinsic: 1.2.2 dev: true /object.pick@1.3.0: @@ -5293,13 +4725,13 @@ packages: isobject: 3.0.1 dev: true - /object.values@1.1.6: - resolution: {integrity: sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==} + /object.values@1.1.7: + resolution: {integrity: sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 dev: true /once@1.4.0: @@ -5322,16 +4754,6 @@ packages: mimic-fn: 4.0.0 dev: true - /open@9.1.0: - resolution: {integrity: sha512-OS+QTnw1/4vrf+9hh1jc1jnYjzSG4ttTBB8UxOwAnInG3Uo4ssetzC1ihqaIHjLJnA5GGlRl6QlZXOTQhRBUvg==} - engines: {node: '>=14.16'} - dependencies: - default-browser: 4.0.0 - define-lazy-prop: 3.0.0 - is-inside-container: 1.0.0 - is-wsl: 2.2.0 - dev: true - /optionator@0.8.3: resolution: {integrity: sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==} engines: {node: '>= 0.8.0'} @@ -5401,9 +4823,9 @@ packages: yocto-queue: 0.1.0 dev: true - /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-limit@5.0.0: + resolution: {integrity: sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==} + engines: {node: '>=18'} dependencies: yocto-queue: 1.0.0 dev: true @@ -5439,21 +4861,22 @@ packages: callsites: 3.1.0 dev: true - /parse-glob@3.0.4: - resolution: {integrity: sha512-FC5TeK0AwXzq3tUBFtH74naWkPQCEWs4K+xMxWZBlKDWu0bVHXGZa+KKqxKidd7xwhdZ19ZNuF2uO1M/r196HA==} - engines: {node: '>=0.10.0'} + /parse-entities@2.0.0: + resolution: {integrity: sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==} dependencies: - glob-base: 0.3.0 - is-dotfile: 1.0.3 - is-extglob: 1.0.0 - is-glob: 2.0.1 + character-entities: 1.2.4 + character-entities-legacy: 1.1.4 + character-reference-invalid: 1.1.4 + is-alphanumerical: 1.0.4 + is-decimal: 1.0.4 + is-hexadecimal: 1.0.4 dev: true /parse-json@5.2.0: resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} engines: {node: '>=8'} dependencies: - '@babel/code-frame': 7.22.5 + '@babel/code-frame': 7.23.5 error-ex: 1.3.2 json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.2.4 @@ -5464,15 +4887,6 @@ packages: engines: {node: '>=6'} dev: true - /pascalcase@0.1.1: - resolution: {integrity: sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==} - engines: {node: '>=0.10.0'} - dev: true - - /path-browserify@1.0.1: - resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} - dev: true - /path-exists@4.0.0: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} engines: {node: '>=8'} @@ -5497,20 +4911,12 @@ packages: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} dev: true - /path-scurry@1.10.0: - resolution: {integrity: sha512-tZFEaRQbMLjwrsmidsGJ6wDMv0iazJWk6SfIKnY4Xru8auXgmJkOBa5DUbYFcFD2Rzk2+KDlIiF0GVXNCbgC7g==} + /path-scurry@1.10.1: + resolution: {integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==} engines: {node: '>=16 || 14 >=14.17'} dependencies: - lru-cache: 10.0.0 - minipass: 6.0.2 - dev: true - - /path-scurry@1.9.2: - resolution: {integrity: sha512-qSDLy2aGFPm8i4rsbHd4MNyTcrzHFsLQykrtbuGRknZZCBBVXSv2tSCDN2Cg6Rt/GFRw8GoW9y9Ecw5rIPG1sg==} - engines: {node: '>=16 || 14 >=14.17'} - dependencies: - lru-cache: 9.1.2 - minipass: 6.0.2 + lru-cache: 10.1.0 + minipass: 7.0.4 dev: true /path-type@4.0.0: @@ -5551,7 +4957,7 @@ packages: resolution: {integrity: sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==} dependencies: jsonc-parser: 3.2.0 - mlly: 1.4.0 + mlly: 1.4.2 pathe: 1.1.1 dev: true @@ -5560,11 +4966,6 @@ packages: engines: {node: '>=4'} dev: true - /posix-character-classes@0.1.1: - resolution: {integrity: sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==} - engines: {node: '>=0.10.0'} - dev: true - /postcss-values-parser@2.0.1: resolution: {integrity: sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==} engines: {node: '>=6.14.4'} @@ -5595,11 +4996,20 @@ packages: source-map-js: 1.0.2 dev: true - /postcss@8.4.27: - resolution: {integrity: sha512-gY/ACJtJPSmUFPDCHtX78+01fHa64FaU4zaaWfuh1MhGJISufJAH4cun6k/8fwsHYeK4UQmENQK+tRLCFJE8JQ==} + /postcss@8.4.31: + resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} engines: {node: ^10 || ^12 || >=14} dependencies: - nanoid: 3.3.6 + nanoid: 3.3.7 + picocolors: 1.0.0 + source-map-js: 1.0.2 + dev: true + + /postcss@8.4.33: + resolution: {integrity: sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg==} + engines: {node: ^10 || ^12 || >=14} + dependencies: + nanoid: 3.3.7 picocolors: 1.0.0 source-map-js: 1.0.2 dev: true @@ -5647,8 +5057,8 @@ packages: - supports-color dev: true - /preferred-pm@3.0.3: - resolution: {integrity: sha512-+wZgbxNES/KlJs9q40F/1sfOd/j7f1O9JaHcW5Dsn3aUUOZg3L2bjpVUcKV2jvtElYfoTuQiNeMfQJ4kwUAhCQ==} + /preferred-pm@3.1.2: + resolution: {integrity: sha512-nk7dKrcW8hfCZ4H6klWcdRknBOXWzNQByJ0oJyX97BOupsYD+FzLS4hflgEu/uPUEHZCuRfMxzCBsuWd7OzT8Q==} engines: {node: '>=10'} dependencies: find-up: 5.0.0 @@ -5667,32 +5077,23 @@ packages: engines: {node: '>= 0.8.0'} dev: true - /preserve@0.2.0: - resolution: {integrity: sha512-s/46sYeylUfHNjI+sA/78FAHlmIuKqI9wNnzEOGehAlUUYeObv5C2mOinXBjyUyWmJ2SfcS2/ydApH4hTF4WXQ==} - engines: {node: '>=0.10.0'} - dev: true - /prettier@2.8.8: resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==} engines: {node: '>=10.13.0'} hasBin: true dev: true - /pretty-format@26.6.2: - resolution: {integrity: sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==} - engines: {node: '>= 10'} - dependencies: - '@jest/types': 26.6.2 - ansi-regex: 5.0.1 - ansi-styles: 4.3.0 - react-is: 17.0.2 + /prettier@3.1.1: + resolution: {integrity: sha512-22UbSzg8luF4UuZtzgiUOfcGM8s4tjBv6dJRT7j275NXsy2jb4aJa4NNveul5x4eqlF1wuhuR2RElK71RvmVaw==} + engines: {node: '>=14'} + hasBin: true dev: true - /pretty-format@29.6.1: - resolution: {integrity: sha512-7jRj+yXO0W7e4/tSJKoR7HRIHLPPjtNaUGG2xxKQnGvPNRkgWcQ0AZX6P4KBRJN4FcTBWb3sa7DVUJmocYuoog==} + /pretty-format@29.7.0: + resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@jest/schemas': 29.6.0 + '@jest/schemas': 29.6.3 ansi-styles: 5.2.0 react-is: 18.2.0 dev: true @@ -5712,13 +5113,13 @@ packages: resolution: {integrity: sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==} dev: true - /punycode@2.3.0: - resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} + /punycode@2.3.1: + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} dev: true - /pure-rand@6.0.2: - resolution: {integrity: sha512-6Yg0ekpKICSjPswYOuC5sku/TSWaRYlA0qsXqJgM/d/4pLPHPuTxK7Nbf7jFKzAeedUhR8C7K9Uv63FBsSo8xQ==} + /pure-rand@6.0.4: + resolution: {integrity: sha512-LA0Y9kxMYv47GIPJy6MI84fqTd2HmYZI83W/kM/SkKfDlajnZYfmXFTxkbY+xSBPkLJxltMa9hIkmdc29eguMA==} dev: true /queue-microtask@1.2.3: @@ -5753,19 +5154,10 @@ packages: strip-json-comments: 2.0.1 dev: true - /react-is@17.0.2: - resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} - dev: true - /react-is@18.2.0: resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==} dev: true - /react-refresh@0.14.0: - resolution: {integrity: sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==} - engines: {node: '>=0.10.0'} - dev: true - /read-pkg-up@7.0.1: resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==} engines: {node: '>=8'} @@ -5816,20 +5208,10 @@ packages: util-deprecate: 1.0.2 dev: true - /readdirp@2.2.1: - resolution: {integrity: sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==} - engines: {node: '>=0.10'} - dependencies: - graceful-fs: 4.2.11 - micromatch: 3.1.10 - readable-stream: 2.3.8 - transitivePeerDependencies: - - supports-color - dev: true - /readdirp@3.6.0: resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} engines: {node: '>=8.10.0'} + requiresBuild: true dependencies: picomatch: 2.3.1 dev: true @@ -5843,36 +5225,17 @@ packages: strip-indent: 3.0.0 dev: true - /regenerator-runtime@0.11.1: - resolution: {integrity: sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==} - dev: true - - /regenerator-runtime@0.13.11: - resolution: {integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==} - dev: true - - /regex-cache@0.4.4: - resolution: {integrity: sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==} - engines: {node: '>=0.10.0'} - dependencies: - is-equal-shallow: 0.1.3 - dev: true - - /regex-not@1.0.2: - resolution: {integrity: sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==} - engines: {node: '>=0.10.0'} - dependencies: - extend-shallow: 3.0.2 - safe-regex: 1.1.0 + /regenerator-runtime@0.14.0: + resolution: {integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==} dev: true - /regexp.prototype.flags@1.5.0: - resolution: {integrity: sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==} + /regexp.prototype.flags@1.5.1: + resolution: {integrity: sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - functions-have-names: 1.2.3 + call-bind: 1.0.5 + define-properties: 1.2.1 + set-function-name: 2.0.1 dev: true /remarkable@1.7.4: @@ -5884,10 +5247,6 @@ packages: autolinker: 0.28.1 dev: true - /remove-trailing-separator@1.1.0: - resolution: {integrity: sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==} - dev: true - /repeat-element@1.1.4: resolution: {integrity: sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==} engines: {node: '>=0.10.0'} @@ -5940,25 +5299,20 @@ packages: resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} dev: true - /resolve-url@0.2.1: - resolution: {integrity: sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==} - deprecated: https://github.com/lydell/resolve-url#deprecated - dev: true - /resolve@1.22.2: resolution: {integrity: sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==} hasBin: true dependencies: - is-core-module: 2.12.1 + is-core-module: 2.13.1 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 dev: true - /resolve@1.22.3: - resolution: {integrity: sha512-P8ur/gp/AmbEzjr729bZnLjXK5Z+4P0zhIJgBgzqRih7hL7BOukHGtSTA3ACMY467GRFz3duQsi0bDZdR7DKdw==} + /resolve@1.22.8: + resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} hasBin: true dependencies: - is-core-module: 2.12.1 + is-core-module: 2.13.1 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 dev: true @@ -5971,11 +5325,6 @@ packages: signal-exit: 3.0.7 dev: true - /ret@0.1.15: - resolution: {integrity: sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==} - engines: {node: '>=0.12'} - dev: true - /reusify@1.0.4: resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} @@ -5988,27 +5337,35 @@ packages: glob: 7.2.3 dev: true - /rimraf@5.0.1: - resolution: {integrity: sha512-OfFZdwtd3lZ+XZzYP/6gTACubwFcHdLRqS9UX3UwpU2dnGQYkPFISRwvM3w9IiB2w7bW5qGo/uAwE4SmXXSKvg==} + /rimraf@5.0.5: + resolution: {integrity: sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A==} engines: {node: '>=14'} hasBin: true dependencies: - glob: 10.3.0 + glob: 10.3.10 dev: true - /rollup@3.26.3: - resolution: {integrity: sha512-7Tin0C8l86TkpcMtXvQu6saWH93nhG3dGQ1/+l5V2TDMceTxO7kDiK6GzbfLWNNxqJXm591PcEZUozZm51ogwQ==} - engines: {node: '>=14.18.0', npm: '>=8.0.0'} + /rollup@4.9.4: + resolution: {integrity: sha512-2ztU7pY/lrQyXSCnnoU4ICjT/tCG9cdH3/G25ERqE3Lst6vl2BCM5hL2Nw+sslAvAf+ccKsAq1SkKQALyqhR7g==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true - optionalDependencies: - fsevents: 2.3.2 - dev: true - - /run-applescript@5.0.0: - resolution: {integrity: sha512-XcT5rBksx1QdIhlFOCtgZkB99ZEouFZ1E2Kc2LHqNW13U3/74YGdkQRmThTwxy4QIyookibDKYZOPqX//6BlAg==} - engines: {node: '>=12'} dependencies: - execa: 5.1.1 + '@types/estree': 1.0.5 + optionalDependencies: + '@rollup/rollup-android-arm-eabi': 4.9.4 + '@rollup/rollup-android-arm64': 4.9.4 + '@rollup/rollup-darwin-arm64': 4.9.4 + '@rollup/rollup-darwin-x64': 4.9.4 + '@rollup/rollup-linux-arm-gnueabihf': 4.9.4 + '@rollup/rollup-linux-arm64-gnu': 4.9.4 + '@rollup/rollup-linux-arm64-musl': 4.9.4 + '@rollup/rollup-linux-riscv64-gnu': 4.9.4 + '@rollup/rollup-linux-x64-gnu': 4.9.4 + '@rollup/rollup-linux-x64-musl': 4.9.4 + '@rollup/rollup-win32-arm64-msvc': 4.9.4 + '@rollup/rollup-win32-ia32-msvc': 4.9.4 + '@rollup/rollup-win32-x64-msvc': 4.9.4 + fsevents: 2.3.3 dev: true /run-parallel@1.2.0: @@ -6017,18 +5374,12 @@ packages: queue-microtask: 1.2.3 dev: true - /rxjs@7.8.1: - resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==} - dependencies: - tslib: 2.6.1 - dev: true - - /safe-array-concat@1.0.0: - resolution: {integrity: sha512-9dVEFruWIsnie89yym+xWTAYASdpw3CJV7Li/6zBewGf9z2i1j31rP6jnY0pHEO4QZh6N0K11bFjWmdR8UGdPQ==} + /safe-array-concat@1.0.1: + resolution: {integrity: sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==} engines: {node: '>=0.4'} dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 + call-bind: 1.0.5 + get-intrinsic: 1.2.2 has-symbols: 1.0.3 isarray: 2.0.5 dev: true @@ -6044,17 +5395,11 @@ packages: /safe-regex-test@1.0.0: resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==} dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 + call-bind: 1.0.5 + get-intrinsic: 1.2.2 is-regex: 1.1.4 dev: true - /safe-regex@1.1.0: - resolution: {integrity: sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==} - dependencies: - ret: 0.1.15 - dev: true - /safer-buffer@2.1.2: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} dev: true @@ -6077,14 +5422,6 @@ packages: hasBin: true dev: true - /semver@7.5.3: - resolution: {integrity: sha512-QBlUtyVk/5EeHbi7X0fw6liDZc7BBmEaSYn01fMU1OUYbf6GPsbTtd8WmnqbI20SeycoHSeiybkE/q1Q+qlThQ==} - engines: {node: '>=10'} - hasBin: true - dependencies: - lru-cache: 6.0.0 - dev: true - /semver@7.5.4: resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} engines: {node: '>=10'} @@ -6097,21 +5434,30 @@ packages: resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} dev: true - /set-getter@0.1.1: - resolution: {integrity: sha512-9sVWOy+gthr+0G9DzqqLaYNA7+5OKkSmcqjL9cBpDEaZrr3ShQlyX2cZ/O/ozE41oxn/Tt0LGEM/w4Rub3A3gw==} - engines: {node: '>=0.10.0'} + /set-function-length@1.1.1: + resolution: {integrity: sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==} + engines: {node: '>= 0.4'} dependencies: - to-object-path: 0.3.0 + define-data-property: 1.1.1 + get-intrinsic: 1.2.2 + gopd: 1.0.1 + has-property-descriptors: 1.0.1 + dev: true + + /set-function-name@2.0.1: + resolution: {integrity: sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==} + engines: {node: '>= 0.4'} + dependencies: + define-data-property: 1.1.1 + functions-have-names: 1.2.3 + has-property-descriptors: 1.0.1 dev: true - /set-value@2.0.1: - resolution: {integrity: sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==} + /set-getter@0.1.1: + resolution: {integrity: sha512-9sVWOy+gthr+0G9DzqqLaYNA7+5OKkSmcqjL9cBpDEaZrr3ShQlyX2cZ/O/ozE41oxn/Tt0LGEM/w4Rub3A3gw==} engines: {node: '>=0.10.0'} dependencies: - extend-shallow: 2.0.1 - is-extendable: 0.1.1 - is-plain-object: 2.0.4 - split-string: 3.1.0 + to-object-path: 0.3.0 dev: true /shebang-command@1.2.0: @@ -6138,15 +5484,11 @@ packages: engines: {node: '>=8'} dev: true - /shell-quote@1.8.1: - resolution: {integrity: sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==} - dev: true - /side-channel@1.0.4: resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 + call-bind: 1.0.5 + get-intrinsic: 1.2.2 object-inspect: 1.12.3 dev: true @@ -6158,20 +5500,11 @@ packages: resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} dev: true - /signal-exit@4.0.2: - resolution: {integrity: sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==} + /signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} engines: {node: '>=14'} dev: true - /sirv@2.0.3: - resolution: {integrity: sha512-O9jm9BsID1P+0HOi81VpXPoDxYP374pkOLzACAoyUQ/3OUVndNpsz6wMnY2z+yOxzbllCKZrM+9QrWsv4THnyA==} - engines: {node: '>= 10'} - dependencies: - '@polka/url': 1.0.0-next.21 - mrmime: 1.0.1 - totalist: 3.0.1 - dev: true - /slash@2.0.0: resolution: {integrity: sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==} engines: {node: '>=6'} @@ -6182,17 +5515,12 @@ packages: engines: {node: '>=8'} dev: true - /slash@4.0.0: - resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==} - engines: {node: '>=12'} - dev: true - /smartwrap@2.0.2: resolution: {integrity: sha512-vCsKNQxb7PnCNd2wY1WClWifAc2lwqsG8OaswpJkVJsvMGcnEntdTCDajZCkk93Ay1U3t/9puJmb525Rg5MZBA==} engines: {node: '>=6'} hasBin: true dependencies: - array.prototype.flat: 1.3.1 + array.prototype.flat: 1.3.2 breakword: 1.0.6 grapheme-splitter: 1.0.4 strip-ansi: 6.0.1 @@ -6200,59 +5528,11 @@ packages: yargs: 15.4.1 dev: true - /snapdragon-node@2.1.1: - resolution: {integrity: sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==} - engines: {node: '>=0.10.0'} - dependencies: - define-property: 1.0.0 - isobject: 3.0.1 - snapdragon-util: 3.0.1 - dev: true - - /snapdragon-util@3.0.1: - resolution: {integrity: sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==} - engines: {node: '>=0.10.0'} - dependencies: - kind-of: 3.2.2 - dev: true - - /snapdragon@0.8.2: - resolution: {integrity: sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==} - engines: {node: '>=0.10.0'} - dependencies: - base: 0.11.2 - debug: 2.6.9 - define-property: 0.2.5 - extend-shallow: 2.0.1 - map-cache: 0.2.2 - source-map: 0.5.7 - source-map-resolve: 0.5.3 - use: 3.1.1 - transitivePeerDependencies: - - supports-color - dev: true - /source-map-js@1.0.2: resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} engines: {node: '>=0.10.0'} dev: true - /source-map-resolve@0.5.3: - resolution: {integrity: sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==} - deprecated: See https://github.com/lydell/source-map-resolve#deprecated - dependencies: - atob: 2.1.2 - decode-uri-component: 0.2.2 - resolve-url: 0.2.1 - source-map-url: 0.4.1 - urix: 0.1.0 - dev: true - - /source-map-url@0.4.1: - resolution: {integrity: sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==} - deprecated: See https://github.com/lydell/source-map-url#deprecated - dev: true - /source-map@0.5.7: resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==} engines: {node: '>=0.10.0'} @@ -6263,10 +5543,6 @@ packages: engines: {node: '>=0.10.0'} dev: true - /spawn-command@0.0.2: - resolution: {integrity: sha512-zC8zGoGkmc8J9ndvml8Xksr1Amk9qBujgbF0JAIWO7kXr43w0h/0GJNM/Vustixu+YE8N/MTrQ7N31FvHUACxQ==} - dev: true - /spawndamnit@2.0.0: resolution: {integrity: sha512-j4JKEcncSjFlqIwU5L/rp2N5SIPsdxaRsIv678+TZxZ0SRDJTm8JrxJMjE/XuiEZNEir3S8l0Fa3Ke339WI4qA==} dependencies: @@ -6296,13 +5572,6 @@ packages: resolution: {integrity: sha512-XkD+zwiqXHikFZm4AX/7JSCXA98U5Db4AFd5XUg/+9UNtnH75+Z9KxtpYiJZx36mUDVOwH83pl7yvCer6ewM3w==} dev: true - /split-string@3.1.0: - resolution: {integrity: sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==} - engines: {node: '>=0.10.0'} - dependencies: - extend-shallow: 3.0.2 - dev: true - /sprintf-js@1.0.3: resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} dev: true @@ -6318,16 +5587,8 @@ packages: resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} dev: true - /static-extend@0.1.2: - resolution: {integrity: sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==} - engines: {node: '>=0.10.0'} - dependencies: - define-property: 0.2.5 - object-copy: 0.1.0 - dev: true - - /std-env@3.3.3: - resolution: {integrity: sha512-Rz6yejtVyWnVjC1RFvNmYL10kgjC49EOghxWn0RFqlCHGFpQx+Xe7yW3I4ceK1SGrWIGMjD5Kbue8W/udkbMJg==} + /std-env@3.7.0: + resolution: {integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==} dev: true /stream-to-array@2.3.0: @@ -6339,7 +5600,7 @@ packages: /stream-transform@2.1.3: resolution: {integrity: sha512-9GHUiM5hMiCi6Y03jD2ARC1ettBXkQBoQAe7nJsPknnI0ow10aXjTnew8QtYQmLjzn974BnmWEAJgCY6ZP1DeQ==} dependencies: - mixme: 0.5.9 + mixme: 0.5.10 dev: true /string-width@4.2.3: @@ -6360,42 +5621,43 @@ packages: strip-ansi: 7.1.0 dev: true - /string.prototype.matchall@4.0.8: - resolution: {integrity: sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==} + /string.prototype.matchall@4.0.10: + resolution: {integrity: sha512-rGXbGmOEosIQi6Qva94HUjgPs9vKW+dkG7Y8Q5O2OYkWL6wFaTRZO8zM4mhP94uX55wgyrXzfS2aGtGzUL7EJQ==} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - get-intrinsic: 1.2.1 + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 + get-intrinsic: 1.2.2 has-symbols: 1.0.3 - internal-slot: 1.0.5 - regexp.prototype.flags: 1.5.0 + internal-slot: 1.0.6 + regexp.prototype.flags: 1.5.1 + set-function-name: 2.0.1 side-channel: 1.0.4 dev: true - /string.prototype.trim@1.2.7: - resolution: {integrity: sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==} + /string.prototype.trim@1.2.8: + resolution: {integrity: sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 dev: true - /string.prototype.trimend@1.0.6: - resolution: {integrity: sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==} + /string.prototype.trimend@1.0.7: + resolution: {integrity: sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 dev: true - /string.prototype.trimstart@1.0.6: - resolution: {integrity: sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==} + /string.prototype.trimstart@1.0.7: + resolution: {integrity: sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 dev: true /string_decoder@1.1.1: @@ -6433,6 +5695,11 @@ packages: ansi-regex: 6.0.1 dev: true + /strip-bom-string@1.0.0: + resolution: {integrity: sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==} + engines: {node: '>=0.10.0'} + dev: true + /strip-bom@3.0.0: resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} engines: {node: '>=4'} @@ -6443,11 +5710,6 @@ packages: engines: {node: '>=0.10.0'} dev: true - /strip-final-newline@2.0.0: - resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} - engines: {node: '>=6'} - dev: true - /strip-final-newline@3.0.0: resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} engines: {node: '>=12'} @@ -6470,10 +5732,10 @@ packages: engines: {node: '>=8'} dev: true - /strip-literal@1.0.1: - resolution: {integrity: sha512-QZTsipNpa2Ppr6v1AmJHESqJ3Uz247MUS0OjrnnZjFAvEoWqxuyFuXn2xLgMtRnijJShAa1HL0gtJyUs7u7n3Q==} + /strip-literal@1.3.0: + resolution: {integrity: sha512-PugKzOsyXpArk0yWmUwqOZecSO0GH0bPoctLcqNDH9J04pVW3lflYE0ujElBGTloevcxF5MofAOZ7C5l2b+wLg==} dependencies: - acorn: 8.10.0 + acorn: 8.11.3 dev: true /stylus-lookup@3.0.2: @@ -6487,12 +5749,6 @@ packages: - supports-color dev: true - /subarg@1.0.0: - resolution: {integrity: sha512-RIrIdRY0X1xojthNcVtgT9sjpOGagEUKpZdgBUi054OEPFo282yg+zE+t1Rj3+RqKq2xStL7uUHhY+AjbC4BXg==} - dependencies: - minimist: 1.2.8 - dev: true - /supports-color@5.5.0: resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} engines: {node: '>=4'} @@ -6507,26 +5763,11 @@ packages: has-flag: 4.0.0 dev: true - /supports-color@8.1.1: - resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} - engines: {node: '>=10'} - dependencies: - has-flag: 4.0.0 - dev: true - /supports-preserve-symlinks-flag@1.0.0: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} dev: true - /synckit@0.8.5: - resolution: {integrity: sha512-L1dapNV6vu2s/4Sputv8xGsCdAVlb5nRDMFU/E27D44l5U6cw1g0dGd45uLc+OXjNMmF4ntiMdCimzcjFKQI8Q==} - engines: {node: ^14.18.0 || >=16.0.0} - dependencies: - '@pkgr/utils': 2.4.1 - tslib: 2.6.1 - dev: true - /tapable@2.2.1: resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} engines: {node: '>=6'} @@ -6557,25 +5798,20 @@ packages: xtend: 4.0.2 dev: true - /tinybench@2.5.0: - resolution: {integrity: sha512-kRwSG8Zx4tjF9ZiyH4bhaebu+EDz1BOx9hOigYHlUW4xxI/wKIUQUqo018UlU4ar6ATPBsaMrdbKZ+tmPdohFA==} + /tinybench@2.5.1: + resolution: {integrity: sha512-65NKvSuAVDP/n4CqH+a9w2kTlLReS9vhsAP06MWx+/89nMinJyB2icyl58RIcqCmIggpojIGeuJGhjU1aGMBSg==} dev: true - /tinypool@0.6.0: - resolution: {integrity: sha512-FdswUUo5SxRizcBc6b1GSuLpLjisa8N8qMyYoP3rl+bym+QauhtJP5bvZY1ytt8krKGmMLYIRl36HBZfeAoqhQ==} + /tinypool@0.8.1: + resolution: {integrity: sha512-zBTCK0cCgRROxvs9c0CGK838sPkeokNGdQVUUwHAbynHFlmyJYj825f/oRs528HaIJ97lo0pLIlDUzwN+IorWg==} engines: {node: '>=14.0.0'} dev: true - /tinyspy@2.1.1: - resolution: {integrity: sha512-XPJL2uSzcOyBMky6OFrusqWlzfFrXtE0hPuMgW8A2HmaqrPo4ZQHRN/V0QXN3FSjKxpsbRrFc5LI7KOwBsT1/w==} + /tinyspy@2.2.0: + resolution: {integrity: sha512-d2eda04AN/cPOR89F7Xv5bK/jrQEhmcLFe6HFldoeO9AJtps+fqEnh486vnT/8y4bw38pSyxDcTCAq+Ks2aJTg==} engines: {node: '>=14.0.0'} dev: true - /titleize@3.0.0: - resolution: {integrity: sha512-KxVu8EYHDPBdUYdKZdKtU2aj2XfEx9AfjXxE/Aj0vT06w2icA09Vus1rh6eSu1y01akYg6BjIK/hxyLJINoMLQ==} - engines: {node: '>=12'} - dev: true - /tmp@0.0.33: resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} engines: {node: '>=0.6.0'} @@ -6595,61 +5831,30 @@ packages: kind-of: 3.2.2 dev: true - /to-regex-range@2.1.1: - resolution: {integrity: sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==} - engines: {node: '>=0.10.0'} - dependencies: - is-number: 3.0.0 - repeat-string: 1.6.1 - dev: true - /to-regex-range@5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} + requiresBuild: true dependencies: is-number: 7.0.0 dev: true - /to-regex@3.0.2: - resolution: {integrity: sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==} - engines: {node: '>=0.10.0'} - dependencies: - define-property: 2.0.2 - extend-shallow: 3.0.2 - regex-not: 1.0.2 - safe-regex: 1.1.0 - dev: true - - /toml@2.3.6: - resolution: {integrity: sha512-gVweAectJU3ebq//Ferr2JUY4WKSDe5N+z0FvjDncLGyHmIDoxgY/2Ie4qfEIDm4IS7OA6Rmdm7pdEEdMcV/xQ==} - dev: true - - /totalist@3.0.1: - resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==} - engines: {node: '>=6'} - dev: true - /tr46@0.0.3: resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} dev: true - /tree-kill@1.2.2: - resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} - hasBin: true - dev: true - /trim-newlines@3.0.1: resolution: {integrity: sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==} engines: {node: '>=8'} dev: true - /ts-api-utils@1.0.1(typescript@5.1.6): - resolution: {integrity: sha512-lC/RGlPmwdrIBFTX59wwNzqh7aR2otPNPR/5brHZm/XKFYKsfqxihXUe9pU3JI+3vGkl+vyCoNNnPhJn3aLK1A==} + /ts-api-utils@1.0.3(typescript@5.3.3): + resolution: {integrity: sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==} engines: {node: '>=16.13.0'} peerDependencies: typescript: '>=4.2.0' dependencies: - typescript: 5.1.6 + typescript: 5.3.3 dev: true /ts-graphviz@1.8.1: @@ -6657,46 +5862,8 @@ packages: engines: {node: '>=14.16'} dev: true - /ts-morph@19.0.0: - resolution: {integrity: sha512-D6qcpiJdn46tUqV45vr5UGM2dnIEuTGNxVhg0sk5NX11orcouwj6i1bMqZIz2mZTZB1Hcgy7C3oEVhAT+f6mbQ==} - dependencies: - '@ts-morph/common': 0.20.0 - code-block-writer: 12.0.0 - dev: true - - /ts-node@10.9.1(@types/node@20.4.5)(typescript@5.1.6): - resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} - hasBin: true - peerDependencies: - '@swc/core': '>=1.2.50' - '@swc/wasm': '>=1.2.50' - '@types/node': '*' - typescript: '>=2.7' - peerDependenciesMeta: - '@swc/core': - optional: true - '@swc/wasm': - optional: true - dependencies: - '@cspotcode/source-map-support': 0.8.1 - '@tsconfig/node10': 1.0.9 - '@tsconfig/node12': 1.0.11 - '@tsconfig/node14': 1.0.3 - '@tsconfig/node16': 1.0.4 - '@types/node': 20.4.5 - acorn: 8.9.0 - acorn-walk: 8.2.0 - arg: 4.1.3 - create-require: 1.1.1 - diff: 4.0.2 - make-error: 1.3.6 - typescript: 5.1.6 - v8-compile-cache-lib: 3.0.1 - yn: 3.1.1 - dev: true - - /tsconfig-paths@3.14.2: - resolution: {integrity: sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==} + /tsconfig-paths@3.15.0: + resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} dependencies: '@types/json5': 0.0.29 json5: 1.0.2 @@ -6708,8 +5875,8 @@ packages: resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} dev: true - /tslib@2.6.1: - resolution: {integrity: sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig==} + /tslib@2.6.2: + resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} dev: true /tsutils@3.21.0(typescript@3.9.10): @@ -6732,18 +5899,29 @@ packages: typescript: 4.9.5 dev: true - /tsutils@3.21.0(typescript@5.1.6): + /tsutils@3.21.0(typescript@5.3.3): resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} engines: {node: '>= 6'} peerDependencies: typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' dependencies: tslib: 1.14.1 - typescript: 5.1.6 + typescript: 5.3.3 + dev: true + + /tsx@4.7.0: + resolution: {integrity: sha512-I+t79RYPlEYlHn9a+KzwrvEwhJg35h/1zHsLC2JXvhC2mdynMv6Zxzvhv5EMV6VF5qJlLlkSnMVvdZV3PSIGcg==} + engines: {node: '>=18.0.0'} + hasBin: true + dependencies: + esbuild: 0.19.10 + get-tsconfig: 4.7.2 + optionalDependencies: + fsevents: 2.3.3 dev: true - /tty-table@4.2.1: - resolution: {integrity: sha512-xz0uKo+KakCQ+Dxj1D/tKn2FSyreSYWzdkL/BYhgN6oMW808g8QRMuh1atAV9fjTPbWBjfbkKQpI/5rEcnAc7g==} + /tty-table@4.2.3: + resolution: {integrity: sha512-Fs15mu0vGzCrj8fmJNP7Ynxt5J7praPXqFN0leZeZBXJwkMxv9cb2D454k1ltrtUSJbZ4yH4e0CynsHLxmUfFA==} engines: {node: '>=8.0.0'} hasBin: true dependencies: @@ -6799,8 +5977,8 @@ packages: resolution: {integrity: sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 + call-bind: 1.0.5 + get-intrinsic: 1.2.2 is-typed-array: 1.1.12 dev: true @@ -6808,7 +5986,7 @@ packages: resolution: {integrity: sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 + call-bind: 1.0.5 for-each: 0.3.3 has-proto: 1.0.1 is-typed-array: 1.1.12 @@ -6819,7 +5997,7 @@ packages: engines: {node: '>= 0.4'} dependencies: available-typed-arrays: 1.0.5 - call-bind: 1.0.2 + call-bind: 1.0.5 for-each: 0.3.3 has-proto: 1.0.1 is-typed-array: 1.1.12 @@ -6828,7 +6006,7 @@ packages: /typed-array-length@1.0.4: resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} dependencies: - call-bind: 1.0.2 + call-bind: 1.0.5 for-each: 0.3.3 is-typed-array: 1.1.12 dev: true @@ -6849,69 +6027,51 @@ packages: hasBin: true dev: true - /typescript@5.1.6: - resolution: {integrity: sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==} + /typescript@5.3.3: + resolution: {integrity: sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==} engines: {node: '>=14.17'} hasBin: true dev: true - /ufo@1.1.2: - resolution: {integrity: sha512-TrY6DsjTQQgyS3E3dBaOXf0TpPD8u9FVrVYmKVegJuFw51n/YB9XPt+U6ydzFG5ZIN7+DIjPbNmXoBj9esYhgQ==} + /ufo@1.3.2: + resolution: {integrity: sha512-o+ORpgGwaYQXgqGDwd+hkS4PuZ3QnmqMMxRuajK/a38L6fTpcE5GPIfrf+L/KemFzfUpeUQc1rRS1iDBozvnFA==} dev: true /unbox-primitive@1.0.2: resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} dependencies: - call-bind: 1.0.2 + call-bind: 1.0.5 has-bigints: 1.0.2 has-symbols: 1.0.3 which-boxed-primitive: 1.0.2 dev: true - /union-value@1.0.1: - resolution: {integrity: sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==} - engines: {node: '>=0.10.0'} - dependencies: - arr-union: 3.1.0 - get-value: 2.0.6 - is-extendable: 0.1.1 - set-value: 2.0.1 + /undici-types@5.26.5: + resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} dev: true /uniq@1.0.1: resolution: {integrity: sha512-Gw+zz50YNKPDKXs+9d+aKAjVwpjNwqzvNpLigIruT4HA9lMZNdMqs9x07kKHB/L9WRzqp4+DlTU5s4wG2esdoA==} dev: true - /universalify@0.1.2: - resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} - engines: {node: '>= 4.0.0'} - dev: true - - /universalify@2.0.0: - resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==} - engines: {node: '>= 10.0.0'} - dev: true - - /unset-value@1.0.0: - resolution: {integrity: sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==} - engines: {node: '>=0.10.0'} + /unist-util-stringify-position@2.0.3: + resolution: {integrity: sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==} dependencies: - has-value: 0.3.1 - isobject: 3.0.1 + '@types/unist': 2.0.10 dev: true - /untildify@4.0.0: - resolution: {integrity: sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==} - engines: {node: '>=8'} + /universalify@0.1.2: + resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} + engines: {node: '>= 4.0.0'} dev: true - /update-browserslist-db@1.0.11(browserslist@4.21.9): - resolution: {integrity: sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==} + /update-browserslist-db@1.0.13(browserslist@4.22.2): + resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==} hasBin: true peerDependencies: browserslist: '>= 4.21.0' dependencies: - browserslist: 4.21.9 + browserslist: 4.22.2 escalade: 3.1.1 picocolors: 1.0.0 dev: true @@ -6919,34 +6079,20 @@ packages: /uri-js@4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} dependencies: - punycode: 2.3.0 - dev: true - - /urix@0.1.0: - resolution: {integrity: sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==} - deprecated: Please see https://github.com/lydell/urix#deprecated - dev: true - - /use@3.1.1: - resolution: {integrity: sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==} - engines: {node: '>=0.10.0'} + punycode: 2.3.1 dev: true /util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} dev: true - /v8-compile-cache-lib@3.0.1: - resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} - dev: true - - /v8-to-istanbul@9.1.0: - resolution: {integrity: sha512-6z3GW9x8G1gd+JIIgQQQxXuiJtCXeAjp6RaPEPLv62mH3iPHPxV6W3robxtCzNErRo6ZwTmzWhsbNvjyEBKzKA==} + /v8-to-istanbul@9.2.0: + resolution: {integrity: sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA==} engines: {node: '>=10.12.0'} dependencies: - '@jridgewell/trace-mapping': 0.3.18 - '@types/istanbul-lib-coverage': 2.0.4 - convert-source-map: 1.9.0 + '@jridgewell/trace-mapping': 0.3.20 + '@types/istanbul-lib-coverage': 2.0.6 + convert-source-map: 2.0.0 dev: true /validate-npm-package-license@3.0.4: @@ -6956,17 +6102,16 @@ packages: spdx-expression-parse: 3.0.1 dev: true - /vite-node@0.33.0(@types/node@20.4.5): - resolution: {integrity: sha512-19FpHYbwWWxDr73ruNahC+vtEdza52kA90Qb3La98yZ0xULqV8A5JLNPUff0f5zID4984tW7l3DH2przTJUZSw==} - engines: {node: '>=v14.18.0'} + /vite-node@1.1.3: + resolution: {integrity: sha512-BLSO72YAkIUuNrOx+8uznYICJfTEbvBAmWClY3hpath5+h1mbPS5OMn42lrTxXuyCazVyZoDkSRnju78GiVCqA==} + engines: {node: ^18.0.0 || >=20.0.0} hasBin: true dependencies: cac: 6.7.14 debug: 4.3.4 - mlly: 1.4.0 pathe: 1.1.1 picocolors: 1.0.0 - vite: 4.4.7(@types/node@20.4.5) + vite: 5.0.11 transitivePeerDependencies: - '@types/node' - less @@ -6978,12 +6123,12 @@ packages: - terser dev: true - /vite@4.4.7(@types/node@20.4.5): - resolution: {integrity: sha512-6pYf9QJ1mHylfVh39HpuSfMPojPSKVxZvnclX1K1FyZ1PXDOcLBibdq5t1qxJSnL63ca8Wf4zts6mD8u8oc9Fw==} - engines: {node: ^14.18.0 || >=16.0.0} + /vite@5.0.11: + resolution: {integrity: sha512-XBMnDjZcNAw/G1gEiskiM1v6yzM4GE5aMGvhWTlHAYYhxb7S3/V1s3m2LDHa8Vh6yIWYYB0iJwsEaS523c4oYA==} + engines: {node: ^18.0.0 || >=20.0.0} hasBin: true peerDependencies: - '@types/node': '>= 14' + '@types/node': ^18.0.0 || >=20.0.0 less: '*' lightningcss: ^1.21.0 sass: '*' @@ -7006,30 +6151,29 @@ packages: terser: optional: true dependencies: - '@types/node': 20.4.5 - esbuild: 0.18.16 - postcss: 8.4.27 - rollup: 3.26.3 + esbuild: 0.19.11 + postcss: 8.4.33 + rollup: 4.9.4 optionalDependencies: - fsevents: 2.3.2 + fsevents: 2.3.3 dev: true - /vitest@0.33.0(@vitest/ui@0.33.0): - resolution: {integrity: sha512-1CxaugJ50xskkQ0e969R/hW47za4YXDUfWJDxip1hwbnhUjYolpfUn2AMOulqG/Dtd9WYAtkHmM/m3yKVrEejQ==} - engines: {node: '>=v14.18.0'} + /vitest@1.1.3: + resolution: {integrity: sha512-2l8om1NOkiA90/Y207PsEvJLYygddsOyr81wLQ20Ra8IlLKbyQncWsGZjnbkyG2KwwuTXLQjEPOJuxGMG8qJBQ==} + engines: {node: ^18.0.0 || >=20.0.0} hasBin: true peerDependencies: '@edge-runtime/vm': '*' - '@vitest/browser': '*' - '@vitest/ui': '*' + '@types/node': ^18.0.0 || >=20.0.0 + '@vitest/browser': ^1.0.0 + '@vitest/ui': ^1.0.0 happy-dom: '*' jsdom: '*' - playwright: '*' - safaridriver: '*' - webdriverio: '*' peerDependenciesMeta: '@edge-runtime/vm': optional: true + '@types/node': + optional: true '@vitest/browser': optional: true '@vitest/ui': @@ -7038,37 +6182,27 @@ packages: optional: true jsdom: optional: true - playwright: - optional: true - safaridriver: - optional: true - webdriverio: - optional: true dependencies: - '@types/chai': 4.3.5 - '@types/chai-subset': 1.3.3 - '@types/node': 20.4.5 - '@vitest/expect': 0.33.0 - '@vitest/runner': 0.33.0 - '@vitest/snapshot': 0.33.0 - '@vitest/spy': 0.33.0 - '@vitest/ui': 0.33.0(vitest@0.33.0) - '@vitest/utils': 0.33.0 - acorn: 8.10.0 - acorn-walk: 8.2.0 + '@vitest/expect': 1.1.3 + '@vitest/runner': 1.1.3 + '@vitest/snapshot': 1.1.3 + '@vitest/spy': 1.1.3 + '@vitest/utils': 1.1.3 + acorn-walk: 8.3.1 cac: 6.7.14 - chai: 4.3.7 + chai: 4.4.0 debug: 4.3.4 - local-pkg: 0.4.3 - magic-string: 0.30.1 + execa: 8.0.1 + local-pkg: 0.5.0 + magic-string: 0.30.5 pathe: 1.1.1 picocolors: 1.0.0 - std-env: 3.3.3 - strip-literal: 1.0.1 - tinybench: 2.5.0 - tinypool: 0.6.0 - vite: 4.4.7(@types/node@20.4.5) - vite-node: 0.33.0(@types/node@20.4.5) + std-env: 3.7.0 + strip-literal: 1.3.0 + tinybench: 2.5.1 + tinypool: 0.8.1 + vite: 5.0.11 + vite-node: 1.1.3 why-is-node-running: 2.2.2 transitivePeerDependencies: - less @@ -7124,12 +6258,12 @@ packages: path-exists: 4.0.0 dev: true - /which-typed-array@1.1.11: - resolution: {integrity: sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==} + /which-typed-array@1.1.13: + resolution: {integrity: sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow==} engines: {node: '>= 0.4'} dependencies: available-typed-arrays: 1.0.5 - call-bind: 1.0.2 + call-bind: 1.0.5 for-each: 0.3.3 gopd: 1.0.1 has-tostringtag: 1.0.0 @@ -7264,11 +6398,6 @@ packages: yargs-parser: 21.1.1 dev: true - /yn@3.1.1: - resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==} - engines: {node: '>=6'} - dev: true - /yocto-queue@0.1.0: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} @@ -7279,4 +6408,25 @@ packages: engines: {node: '>=12.20'} dev: true + github.com/effect-ts/markdown-toc/4bfeb0f140105440ea0d12df2fa23199cc3ec1d5: + resolution: {tarball: https://codeload.github.com/effect-ts/markdown-toc/tar.gz/4bfeb0f140105440ea0d12df2fa23199cc3ec1d5} + name: markdown-toc + version: 1.2.0 + engines: {node: '>=0.10.0'} + hasBin: true + dependencies: + concat-stream: 1.6.2 + diacritics-map: 0.1.0 + gray-matter: 3.1.1 + lazy-cache: 2.0.2 + list-item: 1.1.1 + markdown-link: 0.1.1 + minimist: 1.2.8 + mixin-deep: 1.3.2 + object.pick: 1.3.0 + remarkable: 1.7.4 + repeat-string: 1.6.1 + strip-color: 0.1.0 + dev: true + publishDirectory: dist diff --git a/shell.nix b/shell.nix deleted file mode 100644 index 0181ae7..0000000 --- a/shell.nix +++ /dev/null @@ -1,34 +0,0 @@ -let - flakeLock = builtins.fromJSON (builtins.readFile ./flake.lock); - nixpkgsLock = flakeLock.nodes.nixpkgs.locked; - lockedNixpkgs = - import - (fetchTarball { - url = "https://github.com/NixOS/nixpkgs/archive/${nixpkgsLock.rev}.tar.gz"; - sha256 = nixpkgsLock.narHash; - }) - {}; -in - {pkgs ? lockedNixpkgs}: - with pkgs; - mkShell { - name = "nixos-shell"; - - # Enable experimental features without having to specify the argument - NIX_CONFIG = "extra-experimental-features = nix-command flakes repl-flake"; - - buildInputs = [ - alejandra - git - nix - nil - nodejs-18_x - nodePackages.pnpm - pre-commit - python310Packages.pre-commit-hooks - ]; - - shellHook = '' - pre-commit install - ''; - } diff --git a/src/BitSet.ts b/src/BitSet.ts index 08a7005..f2e9e1e 100644 --- a/src/BitSet.ts +++ b/src/BitSet.ts @@ -1,7 +1,7 @@ /** * @since 1.0.0 */ -import * as internal from "@effect/parser/internal_effect_untraced/bitset" +import * as InternalBitSet from "./internal/bitset.js" /** * @since 1.0.0 @@ -13,10 +13,10 @@ export interface BitSet extends ReadonlyArray {} * @since 1.0.0 * @category constructors */ -export const allChars: BitSet = internal.all +export const allChars: BitSet = InternalBitSet.all /** * @since 1.0.0 * @category constructors */ -export const fromIterable: (bits: Iterable) => BitSet = internal.fromIterable +export const fromIterable: (bits: Iterable) => BitSet = InternalBitSet.fromIterable diff --git a/src/Target/Chunk.ts b/src/ChunkTarget.ts similarity index 67% rename from src/Target/Chunk.ts rename to src/ChunkTarget.ts index aaf51bd..07586f1 100644 --- a/src/Target/Chunk.ts +++ b/src/ChunkTarget.ts @@ -1,8 +1,8 @@ /** * @since 1.0.0 */ -import * as internal from "@effect/parser/internal_effect_untraced/chunkTarget" -import type { Target } from "@effect/parser/Target" +import * as InternalChunkTarget from "./internal/chunkTarget.js" +import type { Target } from "./Target.js" /** * @since 1.0.0 @@ -27,4 +27,4 @@ export declare namespace ChunkTarget { * @since 1.0.0 * @category constructors */ -export const make: () => ChunkTarget = internal.make +export const make: () => ChunkTarget = InternalChunkTarget.make diff --git a/src/Parser.ts b/src/Parser.ts index 9acbc0d..ad78f03 100644 --- a/src/Parser.ts +++ b/src/Parser.ts @@ -1,26 +1,27 @@ /** * @since 1.0.0 */ -import type { Chunk, NonEmptyChunk } from "@effect/data/Chunk" -import type { Either } from "@effect/data/Either" -import type { LazyArg } from "@effect/data/Function" -import type { Option } from "@effect/data/Option" -import type { Predicate } from "@effect/data/Predicate" -import * as internal from "@effect/parser/internal_effect_untraced/parser" -import type { ParserError } from "@effect/parser/ParserError" -import type { Regex } from "@effect/parser/Regex" +import type { Chunk, NonEmptyChunk } from "effect/Chunk" +import type { Either } from "effect/Either" +import type { LazyArg } from "effect/Function" +import type { Option } from "effect/Option" +import type { Predicate } from "effect/Predicate" +import type * as Types from "effect/Types" +import * as InternalParser from "./internal/parser.js" +import type { ParserError } from "./ParserError.js" +import type { Regex } from "./Regex.js" /** * @since 1.0.0 * @category symbols */ -export const ParserTypeId: unique symbol = internal.ParserTypeId +export const TypeId: unique symbol = InternalParser.TypeId /** * @since 1.0.0 * @category symbols */ -export type ParserTypeId = typeof ParserTypeId +export type TypeId = typeof TypeId /** * A `Parser` consumes a stream of `Input`s and either fails with a `ParserError` @@ -54,11 +55,11 @@ export declare namespace Parser { * @since 1.0.0 * @category models */ - export interface Variance { - readonly [ParserTypeId]: { - readonly _Input: (_: Input) => void - readonly _Error: (_: never) => Error - readonly _Result: (_: never) => Result + export interface Variance { + readonly [TypeId]: { + readonly _Input: Types.Contravariant + readonly _Error: Types.Covariant + readonly _Result: Types.Covariant } } @@ -75,7 +76,7 @@ export declare namespace Parser { * @since 1.0.0 * @category constructors */ -export const alphaNumeric: Parser = internal.alphaNumeric +export const alphaNumeric: Parser = InternalParser.alphaNumeric /** * Constructs a `Parser` that just results with its input value. @@ -83,7 +84,7 @@ export const alphaNumeric: Parser = internal.alphaNumeri * @since 1.0.0 * @category constructors */ -export const anything: () => Parser = internal.anything +export const anything: () => Parser = InternalParser.anything /** * Constructs a `Parser` that consumes a single character and returns it. @@ -91,7 +92,7 @@ export const anything: () => Parser = internal.anyth * @since 1.0.0 * @category constructors */ -export const anyChar: Parser = internal.anyChar +export const anyChar: Parser = InternalParser.anyChar /** * Constructs a `Parser` that consumes the whole input and captures it as a @@ -100,7 +101,7 @@ export const anyChar: Parser = internal.anyChar * @since 1.0.0 * @category constructors */ -export const anyString: Parser = internal.anyString +export const anyString: Parser = InternalParser.anyString /** * Transforms a `Syntax` that results in `void` in a `Syntax` that results in `value` @@ -118,7 +119,7 @@ export const as: { self: Parser, result: Result2 ): Parser -} = internal.as +} = InternalParser.as /** * Transforms a `Syntax` that results in `from` in a `Syntax` that results in `void` @@ -127,7 +128,7 @@ export const as: { * @category combinators */ export const asUnit: (self: Parser) => Parser = - internal.asUnit + InternalParser.asUnit /** * Repeats this parser at least `min` times. @@ -142,7 +143,7 @@ export const asUnit: (self: Parser) export const atLeast: { (min: number): (self: Parser) => Parser> (self: Parser, min: number): Parser> -} = internal.repeatMin +} = InternalParser.repeatMin /** * Enables auto-backtracking for this parser. @@ -152,7 +153,7 @@ export const atLeast: { */ export const autoBacktracking: ( self: Parser -) => Parser = internal.autoBacktracking +) => Parser = InternalParser.autoBacktracking /** * Resets the parsing position if the specified parser fails. @@ -165,7 +166,7 @@ export const autoBacktracking: ( * @category combinators */ export const backtrack: (self: Parser) => Parser = - internal.backtrack + InternalParser.backtrack /** * Concatenates the parsers `left`, then this, then `right`. @@ -187,7 +188,7 @@ export const between: { left: Parser, right: Parser ): Parser -} = internal.zipBetween +} = InternalParser.zipBetween /** * Ignores this parser's result and instead capture the input string. @@ -196,7 +197,7 @@ export const between: { * @category combinators */ export const captureString: (self: Parser) => Parser = - internal.captureString + InternalParser.captureString /** * Constructs a `Parser` that consumes the exact character specified or fails @@ -205,7 +206,7 @@ export const captureString: (self: Parser) * @since 1.0.0 * @category constructors */ -export const char: (char: string, error?: Error) => Parser = internal.char +export const char: (char: string, error?: Error) => Parser = InternalParser.char /** * Constructs a `Parser` that consumes a single character and fails with the @@ -214,7 +215,8 @@ export const char: (char: string, error?: Error) => Parser(char: string, error?: Error) => Parser = internal.charNot +export const charNot: (char: string, error?: Error) => Parser = + InternalParser.charNot /** * Constructs a `Parser` that consumes a single character and succeeds with it @@ -223,7 +225,7 @@ export const charNot: (char: string, error?: Error) => Parser) => Parser = internal.charIn +export const charIn: (chars: Iterable) => Parser = InternalParser.charIn /** * Constructs a `Parser` that consumes a single character and succeeds with it @@ -232,7 +234,7 @@ export const charIn: (chars: Iterable) => Parser * @since 1.0.0 * @category constructors */ -export const charNotIn: (chars: Iterable) => Parser = internal.charNotIn +export const charNotIn: (chars: Iterable) => Parser = InternalParser.charNotIn /** * Constructs a `Parser` of a single digit. @@ -240,7 +242,7 @@ export const charNotIn: (chars: Iterable) => Parser = internal.digit +export const digit: Parser = InternalParser.digit /** * Constructs a `Parser` that only succeeds if the input stream has been @@ -251,7 +253,7 @@ export const digit: Parser = internal.digit * @since 1.0.0 * @category constructors */ -export const end: Parser = internal.end +export const end: Parser = InternalParser.end /** * Repeats this parser exactly the specified number of `times`. @@ -262,7 +264,7 @@ export const end: Parser = internal.end export const exactly: { (times: number): (self: Parser) => Parser> (self: Parser, times: number): Parser> -} = internal.repeatExactly +} = InternalParser.repeatExactly /** * Parser that always fails with the specified `error`. @@ -270,7 +272,7 @@ export const exactly: { * @since 1.0.0 * @category constructors */ -export const fail: (error: Error) => Parser = internal.fail +export const fail: (error: Error) => Parser = InternalParser.fail /** * Checks the result of this parser with the specified `predicate`. If the @@ -291,7 +293,7 @@ export const filter: { predicate: Predicate, error: Error2 ): Parser -} = internal.filter +} = InternalParser.filter /** * Determines the continuation of the parser by the result of this parser. @@ -309,7 +311,7 @@ export const flatMap: { self: Parser, f: (result: Result) => Parser ): Parser -} = internal.flatMap +} = InternalParser.flatMap /** * Flattens a result of parsed strings to a single string. @@ -318,7 +320,7 @@ export const flatMap: { * @category combinators */ export const flatten: (self: Parser>) => Parser = - internal.flatten + InternalParser.flatten /** * Flattens a result of parsed strings to a single string. @@ -328,7 +330,7 @@ export const flatten: (self: Parser>) */ export const flattenNonEmpty: ( self: Parser> -) => Parser = internal.flattenNonEmpty +) => Parser = InternalParser.flattenNonEmpty /** * Constructs `Parser` that results in the current input stream position. @@ -336,7 +338,7 @@ export const flattenNonEmpty: ( * @since 1.0.0 * @category constructors */ -export const index: Parser = internal.index +export const index: Parser = InternalParser.index /** * Constructs a `Parser` that consumes and discards all the remaining input. @@ -344,7 +346,7 @@ export const index: Parser = internal.index * @since 1.0.0 * @category constructors */ -export const ignoreRest: Parser = internal.ignoreRest +export const ignoreRest: Parser = InternalParser.ignoreRest /** * Constructs a `Parser` of a single letter. @@ -352,7 +354,7 @@ export const ignoreRest: Parser = internal.ignoreRest * @since 1.0.0 * @category constructors */ -export const letter: Parser = internal.letter +export const letter: Parser = InternalParser.letter /** * Disables auto-backtracking for this parser. @@ -362,7 +364,7 @@ export const letter: Parser = internal.letter */ export const manualBacktracking: ( self: Parser -) => Parser = internal.manualBacktracking +) => Parser = InternalParser.manualBacktracking /** * Maps the parser's successful result with the specified function. @@ -380,7 +382,7 @@ export const map: { self: Parser, f: (result: Result) => Result2 ): Parser -} = internal.map +} = InternalParser.map /** * Maps the over the error channel of a parser with the specified function. @@ -398,7 +400,7 @@ export const mapError: { self: Parser, f: (error: Error) => Error2 ): Parser -} = internal.mapError +} = InternalParser.mapError /** * Associates a name with this parser. The chain of named parsers are reported @@ -410,7 +412,7 @@ export const mapError: { export const named: { (name: string): (self: Parser) => Parser (self: Parser, name: string): Parser -} = internal.named +} = InternalParser.named /** * Fails the parser with the specified `error` if this parser succeeds. @@ -421,7 +423,7 @@ export const named: { export const not: { (error: Error2): (self: Parser) => Parser (self: Parser, error: Error2): Parser -} = internal.not +} = InternalParser.not /** * Make this parser optional. @@ -434,7 +436,7 @@ export const not: { */ export const optional: ( self: Parser -) => Parser> = internal.optional +) => Parser> = InternalParser.optional /** * Assigns `that` parser as a fallback of this parser. @@ -457,7 +459,7 @@ export const orElse: { self: Parser, that: LazyArg> ): Parser -} = internal.orElse +} = InternalParser.orElse /** * Assigns `that` parser as a fallback of this. @@ -485,7 +487,7 @@ export const orElseEither: { self: Parser, that: LazyArg> ): Parser> -} = internal.orElseEither +} = InternalParser.orElseEither /** * Run a `Parser` on the given `input` string. @@ -496,7 +498,7 @@ export const orElseEither: { export const parseString: { (input: string): (self: Parser) => Either, Result> (self: Parser, input: string): Either, Result> -} = internal.parseString +} = InternalParser.parseString /** * Run a `Parser` on the given `input` string using a specific parser @@ -515,7 +517,7 @@ export const parseStringWith: { input: string, implementation: Parser.Implementation ): Either, Result> -} = internal.parseStringWith +} = InternalParser.parseStringWith /** * Constructs a `Parser` that executes a regular expression on the input and @@ -525,7 +527,7 @@ export const parseStringWith: { * @since 1.0.0 * @category constructors */ -export const regex: (regex: Regex, error: Error) => Parser> = internal.regex +export const regex: (regex: Regex, error: Error) => Parser> = InternalParser.regex /** * Constructs a `Parser` that executes a regular expression on the input and @@ -536,7 +538,7 @@ export const regex: (regex: Regex, error: Error) => Parser(regex: Regex, error: Error) => Parser = internal.regexChar +export const regexChar: (regex: Regex, error: Error) => Parser = InternalParser.regexChar /** * Constructs a `Parser` that executes a regular expression on the input but @@ -545,7 +547,8 @@ export const regexChar: (regex: Regex, error: Error) => Parser(regex: Regex, error: Error) => Parser = internal.regexDiscard +export const regexDiscard: (regex: Regex, error: Error) => Parser = + InternalParser.regexDiscard /** * Repeats this parser zero or more times. @@ -559,7 +562,7 @@ export const regexDiscard: (regex: Regex, error: Error) => Parser( self: Parser -) => Parser> = internal.repeatMin0 +) => Parser> = InternalParser.repeatMin0 /** * Repeats this parser at least once. @@ -573,7 +576,7 @@ export const repeat: ( */ export const repeat1: ( self: Parser -) => Parser> = internal.repeatMin1 +) => Parser> = InternalParser.repeatMin1 /** * Repeats this parser until the given `stopCondition` parser succeeds. @@ -591,7 +594,7 @@ export const repeatUntil: { self: Parser, stopCondition: Parser ): Parser> -} = internal.repeatUntil +} = InternalParser.repeatUntil /** * Repeats this parser zero or more times and requires that between each @@ -610,7 +613,7 @@ export const repeatWithSeparator: { self: Parser, separator: Parser ): Parser> -} = internal.repeatWithSeparator +} = InternalParser.repeatWithSeparator /** * Repeats this parser at least once and requires that between each element, @@ -629,7 +632,7 @@ export const repeatWithSeparator1: { self: Parser, separator: Parser ): Parser> -} = internal.repeatWithSeparator1 +} = InternalParser.repeatWithSeparator1 /** * Enables or disables auto-backtracking for this parser. @@ -640,7 +643,7 @@ export const repeatWithSeparator1: { export const setAutoBacktracking: { (enabled: boolean): (self: Parser) => Parser (self: Parser, enabled: boolean): Parser -} = internal.setAutoBacktracking +} = InternalParser.setAutoBacktracking /** * Constructs a `Parser` that parses the specified string and results in the @@ -649,7 +652,7 @@ export const setAutoBacktracking: { * @since 1.0.0 * @category constructors */ -export const string: (str: string, result: Result) => Parser = internal.string +export const string: (str: string, result: Result) => Parser = InternalParser.string /** * Constructs a `Parser` that does not consume any input and succeeds with the @@ -658,7 +661,7 @@ export const string: (str: string, result: Result) => Parser(result: Result) => Parser = internal.succeed +export const succeed: (result: Result) => Parser = InternalParser.succeed /** * Lazily constructs a `Parser`. @@ -668,7 +671,7 @@ export const succeed: (result: Result) => Parser */ export const suspend: ( parser: LazyArg> -) => Parser = internal.suspend +) => Parser = InternalParser.suspend /** * Surrounds this parser with the `other` parser. The result is this parser's @@ -687,7 +690,7 @@ export const surroundedBy: { self: Parser, other: Parser ): Parser -} = internal.zipSurrounded +} = InternalParser.zipSurrounded /** * Maps the parser's successful result with the specified function that either @@ -706,7 +709,7 @@ export const transformEither: { self: Parser, f: (result: Result) => Either ): Parser -} = internal.transformEither +} = InternalParser.transformEither /** * Maps the parser's successful result with the specified function that either @@ -726,7 +729,7 @@ export const transformOption: { self: Parser, pf: (result: Result) => Option ): Parser, Result2> -} = internal.transformOption +} = InternalParser.transformOption /** * Constructs a `Parser` that does not consume the input and results in unit. @@ -734,7 +737,7 @@ export const transformOption: { * @since 1.0.0 * @category constructors */ -export const unit: () => Parser = internal.unit +export const unit: () => Parser = InternalParser.unit /** * Constructs a `Parser` that executes a regular expression on the input and @@ -744,7 +747,7 @@ export const unit: () => Parser = internal.unit * @since 1.0.0 * @category constructors */ -export const unsafeRegex: (regex: Regex) => Parser> = internal.unsafeRegex +export const unsafeRegex: (regex: Regex) => Parser> = InternalParser.unsafeRegex /** * Constructs a `Parser` that executes a regular expression on the input and @@ -755,7 +758,7 @@ export const unsafeRegex: (regex: Regex) => Parser> * @since 1.0.0 * @category constructors */ -export const unsafeRegexChar: (regex: Regex) => Parser = internal.unsafeRegexChar +export const unsafeRegexChar: (regex: Regex) => Parser = InternalParser.unsafeRegexChar /** * Constructs a `Parser` that executes a regular expression on the input but @@ -764,7 +767,7 @@ export const unsafeRegexChar: (regex: Regex) => Parser = * @since 1.0.0 * @category constructors */ -export const unsafeRegexDiscard: (regex: Regex) => Parser = internal.unsafeRegexDiscard +export const unsafeRegexDiscard: (regex: Regex) => Parser = InternalParser.unsafeRegexDiscard /** * Constructs a `Parser` of a single whitespace character. @@ -772,7 +775,7 @@ export const unsafeRegexDiscard: (regex: Regex) => Parser = * @since 1.0.0 * @category constructors */ -export const whitespace: Parser = internal.whitespace +export const whitespace: Parser = InternalParser.whitespace /** * Concatenates this parser with `that` parser. In case both parser succeeds, @@ -791,7 +794,7 @@ export const zip: { self: Parser, that: Parser ): Parser -} = internal.zip +} = InternalParser.zip /** * Concatenates this parser with `that` parser. In case both parser succeeds, @@ -810,7 +813,7 @@ export const zipLeft: { self: Parser, that: Parser ): Parser -} = internal.zipLeft +} = InternalParser.zipLeft /** * Concatenates this parser with `that` parser. In case both parser succeeds, @@ -829,7 +832,7 @@ export const zipRight: { self: Parser, that: Parser ): Parser -} = internal.zipRight +} = InternalParser.zipRight /** * Concatenates this parser with `that` parser. In case both parser succeeds, @@ -850,4 +853,4 @@ export const zipWith: { that: Parser, zip: (left: Result, right: Result2) => Result3 ): Parser -} = internal.zipWith +} = InternalParser.zipWith diff --git a/src/ParserError.ts b/src/ParserError.ts index 9c177d0..f597528 100644 --- a/src/ParserError.ts +++ b/src/ParserError.ts @@ -1,21 +1,21 @@ /** * @since 1.0.0 */ -import type { List } from "@effect/data/List" -import type { Option } from "@effect/data/Option" -import * as internal from "@effect/parser/internal_effect_untraced/parserError" +import type { List } from "effect/List" +import type { Option } from "effect/Option" +import * as InternalParserError from "./internal/parserError.js" /** * @since 1.0.0 * @category symbols */ -export const ParserErrorTypeId: unique symbol = internal.ParserErrorTypeId +export const TypeId: unique symbol = InternalParserError.TypeId /** * @since 1.0.0 * @category symbols */ -export type ParserErrorTypeId = typeof ParserErrorTypeId +export type TypeId = typeof TypeId /** * Represents an error that occurred during execution of a `Parser`. @@ -30,9 +30,16 @@ export type ParserError = | UnexpectedEndOfInput | UnknownFailure +/** + * @since 1.0.0 + */ export declare namespace ParserError { + /** + * @since 1.0.0 + * @category models + */ export interface Proto { - readonly [ParserErrorTypeId]: ParserErrorTypeId + readonly [TypeId]: TypeId } } @@ -138,7 +145,7 @@ export interface UnknownFailure extends ParserError.Proto { export const allBranchesFailed: ( left: ParserError, right: ParserError -) => ParserError = internal.allBranchesFailed +) => ParserError = InternalParserError.allBranchesFailed /** * Constructs a custom, user-defined parser error of type `Error`. @@ -147,7 +154,7 @@ export const allBranchesFailed: ( * @category constructors */ export const failure: (nameStack: List, position: number, failure: Error) => ParserError = - internal.failure + InternalParserError.failure /** * Constructs a failure that occurs if the `Parser` is expected to consume all @@ -157,7 +164,7 @@ export const failure: (nameStack: List, position: number, failure * @category constructors */ export const notConsumedAll: (lastFailure: Option>) => ParserError = - internal.notConsumedAll + InternalParserError.notConsumedAll /** * Constructs a failure that occurs if the input stream ends before the `Parser` @@ -166,7 +173,7 @@ export const notConsumedAll: (lastFailure: Option>) => * @since 1.0.0 * @category constructors */ -export const unexpectedEndOfInput: ParserError = internal.unexpectedEndOfInput +export const unexpectedEndOfInput: ParserError = InternalParserError.unexpectedEndOfInput /** * Constructs an unknown parser error. @@ -177,7 +184,8 @@ export const unexpectedEndOfInput: ParserError = internal.unexpectedEndOf * @since 1.0.0 * @category constructors */ -export const unknownFailure: (nameStack: List, position: number) => ParserError = internal.unknownFailure +export const unknownFailure: (nameStack: List, position: number) => ParserError = + InternalParserError.unknownFailure /** * Returns `true` if the value is a `ParserError`, `false` otherwise. @@ -185,7 +193,7 @@ export const unknownFailure: (nameStack: List, position: number) => Pars * @since 1.0.0 * @category refinements */ -export const isParserError: (u: unknown) => u is ParserError = internal.isParserError +export const isParserError: (u: unknown) => u is ParserError = InternalParserError.isParserError /** * Returns `true` if the `ParserError` is `AllBranchesFailed`, `false` otherwise. @@ -194,7 +202,7 @@ export const isParserError: (u: unknown) => u is ParserError = internal * @category refinements */ export const isAllBranchesFailed: (self: ParserError) => self is AllBranchesFailed = - internal.isAllBranchesFailed + InternalParserError.isAllBranchesFailed /** * Returns `true` if the `ParserError` is a `Failure`, `false` otherwise. @@ -202,7 +210,7 @@ export const isAllBranchesFailed: (self: ParserError) => self is A * @since 1.0.0 * @category refinements */ -export const isFailure: (self: ParserError) => self is Failure = internal.isFailure +export const isFailure: (self: ParserError) => self is Failure = InternalParserError.isFailure /** * Returns `true` if the `ParserError` is `NotConsumedAll`, `false` otherwise. @@ -211,7 +219,7 @@ export const isFailure: (self: ParserError) => self is Failure(self: ParserError) => self is NotConsumedAll = - internal.isNotConsumedAll + InternalParserError.isNotConsumedAll /** * Returns `true` if the `ParserError` is `UnexpectedEndOfInput`, `false` otherwise. @@ -220,7 +228,7 @@ export const isNotConsumedAll: (self: ParserError) => self is NotC * @category refinements */ export const isUnexpectedEndOfInput: (self: ParserError) => self is UnexpectedEndOfInput = - internal.isUnexpectedEndOfInput + InternalParserError.isUnexpectedEndOfInput /** * Returns `true` if the `ParserError` is an `UnknownFailure`, `false` otherwise. @@ -228,7 +236,8 @@ export const isUnexpectedEndOfInput: (self: ParserError) => self i * @since 1.0.0 * @category refinements */ -export const isUnknownFailure: (self: ParserError) => self is UnknownFailure = internal.isUnknownFailure +export const isUnknownFailure: (self: ParserError) => self is UnknownFailure = + InternalParserError.isUnknownFailure /** * Adds an additional failed branch to a `ParserError`. @@ -239,7 +248,7 @@ export const isUnknownFailure: (self: ParserError) => self is Unkn export const addFailedBranch: { (that: ParserError): (self: ParserError) => ParserError (self: ParserError, that: ParserError): ParserError -} = internal.addFailedBranch +} = InternalParserError.addFailedBranch /** * Maps over the `Error` type of a `ParserError`. @@ -250,4 +259,4 @@ export const addFailedBranch: { export const map: { (f: (error: Error) => Error2): (self: ParserError) => ParserError (self: ParserError, f: (error: Error) => Error2): ParserError -} = internal.map +} = InternalParserError.map diff --git a/src/Printer.ts b/src/Printer.ts index 707c2ff..3263fe7 100644 --- a/src/Printer.ts +++ b/src/Printer.ts @@ -1,26 +1,27 @@ /** * @since 1.0.0 */ -import type { Chunk, NonEmptyChunk } from "@effect/data/Chunk" -import type { Either } from "@effect/data/Either" -import type { LazyArg } from "@effect/data/Function" -import type { Option } from "@effect/data/Option" -import type { Predicate } from "@effect/data/Predicate" -import * as internal from "@effect/parser/internal_effect_untraced/printer" -import type { Regex } from "@effect/parser/Regex" -import type { Target } from "@effect/parser/Target" +import type { Chunk, NonEmptyChunk } from "effect/Chunk" +import type { Either } from "effect/Either" +import type { LazyArg } from "effect/Function" +import type { Option } from "effect/Option" +import type { Predicate } from "effect/Predicate" +import type * as Types from "effect/Types" +import * as InternalPrinter from "./internal/printer.js" +import type { Regex } from "./Regex.js" +import type { Target } from "./Target.js" /** * @since 1.0.0 * @category symbols */ -export const PrinterTypeId: unique symbol = internal.PrinterTypeId +export const TypeId: unique symbol = InternalPrinter.TypeId /** * @since 1.0.0 * @category symbols */ -export type PrinterTypeId = typeof PrinterTypeId +export type TypeId = typeof TypeId /** * A `Printer` takes an input value of type `Input` and either produces a result @@ -42,11 +43,11 @@ export declare namespace Printer { * @since 1.0.0 * @category models */ - export interface Variance { - readonly [PrinterTypeId]: { - readonly _Input: (_: Input) => void - readonly _Error: (_: never) => Error - readonly _Output: (_: never) => Output + export interface Variance { + readonly [TypeId]: { + readonly _Input: Types.Contravariant + readonly _Error: Types.Covariant + readonly _Output: Types.Covariant } } } @@ -57,7 +58,7 @@ export declare namespace Printer { * @since 1.0.0 * @category constructors */ -export const alphaNumeric: Printer = internal.alphaNumeric +export const alphaNumeric: Printer = InternalPrinter.alphaNumeric /** * Constructs a `Printer` that just emits its input value. @@ -65,7 +66,7 @@ export const alphaNumeric: Printer = internal.alphaNumer * @since 1.0.0 * @category constructors */ -export const anything: () => Printer = internal.anything +export const anything: () => Printer = InternalPrinter.anything /** * A `Printer` that prints a single character provided as input. @@ -73,7 +74,7 @@ export const anything: () => Printer = internal.anyt * @since 1.0.0 * @category constructors */ -export const anyChar: Printer = internal.anyChar +export const anyChar: Printer = InternalPrinter.anyChar /** * A `Printer` that just prints the input string. @@ -81,7 +82,7 @@ export const anyChar: Printer = internal.anyChar * @since 1.0.0 * @category constructors */ -export const anyString: Printer = internal.anyString +export const anyString: Printer = InternalPrinter.anyString /** * Transforms a `Syntax` that results in `from` in a `Syntax` that results in `value` @@ -101,7 +102,7 @@ export const asPrinted: { matches: Input2, from: Input ): Printer -} = internal.asPrinted +} = InternalPrinter.asPrinted /** * Surround this printer with `left` and `right`, each getting void as value to @@ -122,7 +123,7 @@ export const between: { left: Printer, right: Printer ): Printer -} = internal.zipBetween +} = InternalPrinter.zipBetween /** * A `Printer` that prints a given character. @@ -130,7 +131,7 @@ export const between: { * @since 1.0.0 * @category constructors */ -export const char: (char: string) => Printer = internal.char +export const char: (char: string) => Printer = InternalPrinter.char /** * A `Printer` that prints a single character if it matches any of the @@ -139,7 +140,7 @@ export const char: (char: string) => Printer = internal.ch * @since 1.0.0 * @category constructors */ -export const charIn: (chars: Iterable) => Printer = internal.charIn +export const charIn: (chars: Iterable) => Printer = InternalPrinter.charIn /** * A `Printer` that prints a single character if it does not match any of the @@ -148,7 +149,7 @@ export const charIn: (chars: Iterable) => Printer) => Printer = internal.charNotIn +export const charNotIn: (chars: Iterable) => Printer = InternalPrinter.charNotIn /** * Maps the printer's input value with the specified function. @@ -166,7 +167,7 @@ export const contramap: { self: Printer, from: (value: Input2) => Input ): Printer -} = internal.contramap +} = InternalPrinter.contramap /** * Maps the printer's input value with the specified function which returns @@ -185,7 +186,7 @@ export const contramapEither: { self: Printer, from: (value: Input2) => Either ): Printer -} = internal.contramapEither +} = InternalPrinter.contramapEither /** * Maps the value to be printed with the partial function `from`. If the partial @@ -209,7 +210,7 @@ export const contramapTo: { from: (value: Input2) => Option, error: Error2 ): Printer -} = internal.contramapTo +} = InternalPrinter.contramapTo /** * Prints a single digit. @@ -217,13 +218,13 @@ export const contramapTo: { * @since 1.0.0 * @category constructors */ -export const digit: Printer = internal.digit +export const digit: Printer = InternalPrinter.digit /** * A `Printer` that emits the input if it is equals to the specified `value`, * otherwise fails with the specified `error` (if provided). * - * **Note**: equality is checked using Equal.equals from `@effect/data`. + * **Note**: equality is checked using Equal.equals from `effect`. * * @since 1.0.0 * @category constructors @@ -231,13 +232,13 @@ export const digit: Printer = internal.digit export const exactly: ( value: Output, error?: Error -) => Printer = internal.exactly +) => Printer = InternalPrinter.exactly /** * A `Printer` that emits the input unless it is equal to `value`, in which case * it fails with the specified `error` (if provided). * - * **Note**: equality is checked using Equal.equals from `@effect/data`. + * **Note**: equality is checked using Equal.equals from `effect`. * * @since 1.0.0 * @category constructors @@ -245,7 +246,7 @@ export const exactly: ( export const except: ( value: Output, error?: Error | undefined -) => Printer = internal.except +) => Printer = InternalPrinter.except /** * A `Printer` that does not print anything and fails with the specified `error`. @@ -253,7 +254,7 @@ export const except: ( * @since 1.0.0 * @category constructors */ -export const fail: (error: Error) => Printer = internal.fail +export const fail: (error: Error) => Printer = InternalPrinter.fail /** * Specifies a filter `condition` that gets checked on the input value and in @@ -274,7 +275,7 @@ export const filterInput: { condition: Predicate, error: Error2 ): Printer -} = internal.filterInput +} = InternalPrinter.filterInput /** * Concatenates an input `Chunk` to a `string` to be printed. @@ -284,7 +285,7 @@ export const filterInput: { */ export const flatten: ( self: Printer, Error, Output> -) => Printer = internal.flatten +) => Printer = InternalPrinter.flatten /** * Concatenates an input `Chunk` to a `string` to be printed. @@ -294,7 +295,7 @@ export const flatten: ( */ export const flattenNonEmpty: ( self: Printer, Error, Output> -) => Printer = internal.flattenNonEmpty +) => Printer = InternalPrinter.flattenNonEmpty /** * A `Printer` computed using a function on the input value. @@ -304,7 +305,7 @@ export const flattenNonEmpty: ( */ export const fromInput: ( f: (input: Input) => Printer -) => Printer = internal.fromInput +) => Printer = InternalPrinter.fromInput /** * Prints a single letter. @@ -312,7 +313,7 @@ export const fromInput: ( * @since 1.0.0 * @category constructors */ -export const letter: Printer = internal.letter +export const letter: Printer = InternalPrinter.letter /** * Maps over the error channel with the specified function. @@ -330,7 +331,7 @@ export const mapError: { self: Printer, f: (error: Error) => Error2 ): Printer -} = internal.mapError +} = InternalPrinter.mapError /** * A `Printer` that prints the input character if it is not equal to the @@ -342,7 +343,7 @@ export const mapError: { * @category constructors */ export const notChar: (char: string, failure?: Error | undefined) => Printer = - internal.charNot + InternalPrinter.charNot /** * A `Printer` which prints `Option` values. @@ -352,7 +353,7 @@ export const notChar: (char: string, failure?: Error | undefined) => Prin */ export const optional: ( self: Printer -) => Printer, Error, Output> = internal.optional +) => Printer, Error, Output> = InternalPrinter.optional /** * Prints `self` and if it fails, ignore the printed output and print `that` @@ -371,7 +372,7 @@ export const orElse: { self: Printer, that: LazyArg> ): Printer -} = internal.orElse +} = InternalPrinter.orElse /** * Prints `self` if the input is `Left`, or print `that` if the input is @@ -390,7 +391,7 @@ export const orElseEither: { self: Printer, that: LazyArg> ): Printer, Error | Error2, Output | Output2> -} = internal.orElseEither +} = InternalPrinter.orElseEither /** * A `Printer` which outputs a specific value. @@ -398,7 +399,7 @@ export const orElseEither: { * @since 1.0.0 * @category constructors */ -export const output: (value: Output) => Printer = internal.output +export const output: (value: Output) => Printer = InternalPrinter.output /** * A `Printer` which outputs a specific string. @@ -406,7 +407,7 @@ export const output: (value: Output) => Printer = * @since 1.0.0 * @category constructors */ -export const outputString: (value: string) => Printer = internal.outputString +export const outputString: (value: string) => Printer = InternalPrinter.outputString /** * Print the specified input value to a chunk of output elements. @@ -417,7 +418,7 @@ export const outputString: (value: string) => Printer = in export const printToChunk: { (input: Input): (self: Printer) => Either> (self: Printer, input: Input): Either> -} = internal.printToChunk +} = InternalPrinter.printToChunk /** * Print the specified input value to a string. @@ -428,7 +429,7 @@ export const printToChunk: { export const printToString: { (value: Input): (self: Printer) => Either (self: Printer, input: Input): Either -} = internal.printToString +} = InternalPrinter.printToString /** * Print the specified input value to the given `target` implementation. @@ -448,7 +449,7 @@ export const printToTarget: { input: Input, target: T ): Either -} = internal.printToTarget +} = InternalPrinter.printToTarget /** * A `Printer` that prints a series of characters provided as input, if it @@ -457,7 +458,7 @@ export const printToTarget: { * @since 1.0.0 * @category constructors */ -export const regex: (regex: Regex, error: Error) => Printer, Error, string> = internal.regex +export const regex: (regex: Regex, error: Error) => Printer, Error, string> = InternalPrinter.regex /** * A `Printer` that prints the specified characters. @@ -466,7 +467,7 @@ export const regex: (regex: Regex, error: Error) => Printer * @category constructors */ export const regexDiscard: (regex: Regex, characters: Iterable) => Printer = - internal.regexDiscard + InternalPrinter.regexDiscard /** * A `Printer` that prints a single character if matches the given `regex`, @@ -475,7 +476,8 @@ export const regexDiscard: (regex: Regex, characters: Iterable) => Print * @since 1.0.0 * @category constructors */ -export const regexChar: (regex: Regex, error: Error) => Printer = internal.regexChar +export const regexChar: (regex: Regex, error: Error) => Printer = + InternalPrinter.regexChar /** * Repeats this printer for each element of the input chunk zero or more times. @@ -485,7 +487,7 @@ export const regexChar: (regex: Regex, error: Error) => Printer( self: Printer -) => Printer, Error, Output> = internal.repeatMin0 +) => Printer, Error, Output> = InternalPrinter.repeatMin0 /** * Repeats this printer for each element of the input chunk. @@ -497,7 +499,7 @@ export const repeat: ( */ export const repeat1: ( self: Printer -) => Printer, Error, Output> = internal.repeatMin1 +) => Printer, Error, Output> = InternalPrinter.repeatMin1 /** * Repeats this printer for each element of the input chunk, separated by the @@ -518,7 +520,7 @@ export const repeatWithSeparator: { self: Printer, separator: Printer ): Printer, Error | Error2, Output | Output2> -} = internal.repeatWithSeparator +} = InternalPrinter.repeatWithSeparator /** * Repeats this printer for each element of the input chunk, separated by the @@ -539,7 +541,7 @@ export const repeatWithSeparator1: { self: Printer, separator: Printer ): Printer, Error | Error2, Output | Output2> -} = internal.repeatWithSeparator1 +} = InternalPrinter.repeatWithSeparator1 /** * Repeat this printer for each element of the input chunk, verifying the @@ -558,7 +560,7 @@ export const repeatUntil: { self: Printer, stopCondition: Printer ): Printer, Error | Error2, Output | Output2> -} = internal.repeatUntil +} = InternalPrinter.repeatUntil /** * A `Printer` which prints the specified string and results in `value`. @@ -566,7 +568,7 @@ export const repeatUntil: { * @since 1.0.0 * @category constructors */ -export const string: (str: string, input: Input) => Printer = internal.string +export const string: (str: string, input: Input) => Printer = InternalPrinter.string /** * A `Printer` that does not print anything and succeeds with the specified @@ -575,7 +577,7 @@ export const string: (str: string, input: Input) => Printer(input: Input) => Printer = internal.succeed +export const succeed: (input: Input) => Printer = InternalPrinter.succeed /** * Surround this printer the `other` printer which gets `void` as the value to @@ -594,7 +596,7 @@ export const surroundedBy: { self: Printer, other: Printer ): Printer -} = internal.zipSurrounded +} = InternalPrinter.zipSurrounded /** * Lazily constructs a `Printer`. @@ -604,7 +606,7 @@ export const surroundedBy: { */ export const suspend: ( printer: LazyArg> -) => Printer = internal.suspend +) => Printer = InternalPrinter.suspend /** * Maps the printer's input value with `from`. @@ -624,7 +626,7 @@ export const transformOption: { self: Printer, from: (input: Input2) => Option ): Printer, Output> -} = internal.transformOption +} = InternalPrinter.transformOption /** * A `Printer` that does not print anything and succeeds with `undefined`. @@ -632,7 +634,7 @@ export const transformOption: { * @since 1.0.0 * @category constructors */ -export const unit: () => Printer = internal.unit +export const unit: () => Printer = InternalPrinter.unit /** * A `Printer` that prints a series of characters provided as input, if it @@ -641,7 +643,7 @@ export const unit: () => Printer = internal.unit * @since 1.0.0 * @category constructors */ -export const unsafeRegex: (regex: Regex) => Printer, never, string> = internal.unsafeRegex +export const unsafeRegex: (regex: Regex) => Printer, never, string> = InternalPrinter.unsafeRegex /** * A `Printer` that prints a single character if matches the given `regex`. @@ -651,7 +653,7 @@ export const unsafeRegex: (regex: Regex) => Printer, never, string * @since 1.0.0 * @category constructors */ -export const unsafeRegexChar: (regex: Regex) => Printer = internal.unsafeRegexChar +export const unsafeRegexChar: (regex: Regex) => Printer = InternalPrinter.unsafeRegexChar /** * Prints a single whitespace character. @@ -659,7 +661,7 @@ export const unsafeRegexChar: (regex: Regex) => Printer = * @since 1.0.0 * @category constructors */ -export const whitespace: Printer = internal.whitespace +export const whitespace: Printer = InternalPrinter.whitespace /** * Print `that` by providing the unit value to it after printing `self`. The @@ -678,7 +680,7 @@ export const zipLeft: { self: Printer, that: Printer ): Printer -} = internal.zipLeft +} = InternalPrinter.zipLeft /** * Print `that` by providing the unit value to it after printing `self`. The @@ -697,7 +699,7 @@ export const zipRight: { self: Printer, that: Printer ): Printer -} = internal.zipRight +} = InternalPrinter.zipRight /** * Takes a pair to be printed and prints the left value with `self`, and the @@ -716,4 +718,4 @@ export const zip: { self: Printer, that: Printer ): Printer -} = internal.zip +} = InternalPrinter.zip diff --git a/src/Regex.ts b/src/Regex.ts index 392f5b7..72a3ff5 100644 --- a/src/Regex.ts +++ b/src/Regex.ts @@ -1,24 +1,24 @@ /** * @since 1.0.0 */ -import type { Chunk } from "@effect/data/Chunk" -import type { Option } from "@effect/data/Option" -import type { Predicate } from "@effect/data/Predicate" -import type { BitSet } from "@effect/parser/BitSet" -import * as common from "@effect/parser/internal_effect_untraced/common" -import * as internal from "@effect/parser/internal_effect_untraced/regex" +import type { Chunk } from "effect/Chunk" +import type { Option } from "effect/Option" +import type { Predicate } from "effect/Predicate" +import type { BitSet } from "./BitSet.js" +import * as InternalCommon from "./internal/common.js" +import * as InternalRegex from "./internal/regex.js" /** * @since 1.0.0 * @category symbols */ -export const RegexTypeId: unique symbol = internal.RegexTypeId +export const TypeId: unique symbol = InternalRegex.TypeId /** * @since 1.0.0 * @category symbols */ -export type RegexTypeId = typeof RegexTypeId +export type TypeId = typeof TypeId /** * Represents a regular expression. @@ -37,7 +37,7 @@ export declare namespace Regex { * @category models */ export interface Proto { - readonly [RegexTypeId]: RegexTypeId + readonly [TypeId]: TypeId } /** @@ -125,7 +125,7 @@ export interface Repeat extends Regex.Proto { * @since 1.0.0 * @category utils */ -export const needMoreInput: -2 = common.needMoreInput +export const needMoreInput: -2 = InternalCommon.needMoreInput /** * The result of testing a `Regex` against an input value where the input value @@ -134,7 +134,7 @@ export const needMoreInput: -2 = common.needMoreInput * @since 1.0.0 * @category utils */ -export const notMatched: -1 = common.notMatched +export const notMatched: -1 = InternalCommon.notMatched /** * Composes this `Regex` with the specified `Regex` using intersection, @@ -146,7 +146,7 @@ export const notMatched: -1 = common.notMatched export const and: { (that: Regex): (self: Regex) => Regex (self: Regex, that: Regex): Regex -} = internal.and +} = InternalRegex.and /** * A `Regex` that matches any single character. @@ -154,7 +154,7 @@ export const and: { * @since 1.0.0 * @category constructors */ -export const anyChar: Regex = internal.anyChar +export const anyChar: Regex = InternalRegex.anyChar /** * A `Regex` that matches any single digit character. @@ -162,7 +162,7 @@ export const anyChar: Regex = internal.anyChar * @since 1.0.0 * @category constructors */ -export const anyDigit: Regex = internal.anyDigit +export const anyDigit: Regex = InternalRegex.anyDigit /** * A `Regex` that matches any single letter character. @@ -170,7 +170,7 @@ export const anyDigit: Regex = internal.anyDigit * @since 1.0.0 * @category constructors */ -export const anyLetter: Regex = internal.anyLetter +export const anyLetter: Regex = InternalRegex.anyLetter /** * A `Regex` that matches any single whitespace character. @@ -178,7 +178,7 @@ export const anyLetter: Regex = internal.anyLetter * @since 1.0.0 * @category constructors */ -export const anyWhitespace: Regex = internal.anyWhitespace +export const anyWhitespace: Regex = InternalRegex.anyWhitespace /** * A `Regex` that matches a single letter or digit character. @@ -186,7 +186,7 @@ export const anyWhitespace: Regex = internal.anyWhitespace * @since 1.0.0 * @category constructors */ -export const anyAlphaNumeric: Regex = internal.anyAlphaNumeric +export const anyAlphaNumeric: Regex = InternalRegex.anyAlphaNumeric /** * A `Regex` that matches at least one letter or digit character. @@ -194,7 +194,7 @@ export const anyAlphaNumeric: Regex = internal.anyAlphaNumeric * @since 1.0.0 * @category constructors */ -export const alphaNumerics: Regex = internal.alphaNumerics +export const alphaNumerics: Regex = InternalRegex.alphaNumerics /** * Returns a new `Regex` that matches at least `min` occurrences of this `Regex`. @@ -205,7 +205,7 @@ export const alphaNumerics: Regex = internal.alphaNumerics export const atLeast: { (min: number): (self: Regex) => Regex (self: Regex, min: number): Regex -} = internal.repeatMin +} = InternalRegex.repeatMin /** * Returns a new `Regex` that matches at most `max` occurrences of this `Regex`. @@ -216,7 +216,7 @@ export const atLeast: { export const atMost: { (max: number): (self: Regex) => Regex (self: Regex, max: number): Regex -} = internal.repeatMax +} = InternalRegex.repeatMax /** * Returns a new `Regex` that matches between `min` and `max` occurrences of this @@ -228,7 +228,7 @@ export const atMost: { export const between: { (min: number, max: number): (self: Regex) => Regex (self: Regex, min: number, max: number): Regex -} = internal.repeatBetween +} = InternalRegex.repeatBetween /** * A `Regex` that matches the specified character. @@ -236,7 +236,7 @@ export const between: { * @since 1.0.0 * @category constructors */ -export const char: (char: string) => Regex = internal.char +export const char: (char: string) => Regex = InternalRegex.char /** * A `Regex` that matches one of the specified characters. @@ -244,7 +244,7 @@ export const char: (char: string) => Regex = internal.char * @since 1.0.0 * @category constructors */ -export const charIn: (chars: Iterable) => Regex = internal.charIn +export const charIn: (chars: Iterable) => Regex = InternalRegex.charIn /** * A `Regex` that matches any character except for the specified ones. @@ -252,7 +252,7 @@ export const charIn: (chars: Iterable) => Regex = internal.charIn * @since 1.0.0 * @category constructors */ -export const charNotIn: (chars: Iterable) => Regex = internal.charNotIn +export const charNotIn: (chars: Iterable) => Regex = InternalRegex.charNotIn /** * Compiles the `Regex` to a form that allows efficient execution on chunks of @@ -261,7 +261,7 @@ export const charNotIn: (chars: Iterable) => Regex = internal.charNotIn * @since 1.0.0 * @category destructors */ -export const compile: (regex: Regex) => Regex.Compiled = internal.compile +export const compile: (regex: Regex) => Regex.Compiled = InternalRegex.compile /** * A `Regex` that matches one or more digit characters. @@ -269,7 +269,7 @@ export const compile: (regex: Regex) => Regex.Compiled = internal.compile * @since 1.0.0 * @category constructors */ -export const digits: Regex = internal.digits +export const digits: Regex = InternalRegex.digits /** * A `Regex` that matches the empty string, which will always succeed. @@ -277,7 +277,7 @@ export const digits: Regex = internal.digits * @since 1.0.0 * @category constructors */ -export const empty: Regex = internal.succeed +export const empty: Regex = InternalRegex.succeed /** * A regex that matches any single character for which the specified predicate @@ -286,7 +286,7 @@ export const empty: Regex = internal.succeed * @since 1.0.0 * @category combinators */ -export const filter: (predicate: Predicate) => Regex = internal.filter +export const filter: (predicate: Predicate) => Regex = InternalRegex.filter /** * A `Regex` that matches one or more letter characters. @@ -294,7 +294,7 @@ export const filter: (predicate: Predicate) => Regex = internal.filter * @since 1.0.0 * @category constructors */ -export const letters: Regex = internal.letters +export const letters: Regex = InternalRegex.letters /** * Composes this `Regex` with the specified `Regex` using union, @@ -306,7 +306,7 @@ export const letters: Regex = internal.letters export const or: { (that: Regex): (self: Regex) => Regex (self: Regex, that: Regex): Regex -} = internal.or +} = InternalRegex.or /** * Composes this `Regex` with the specified `Regex` sequentially, @@ -318,7 +318,7 @@ export const or: { export const sequence: { (that: Regex): (self: Regex) => Regex (self: Regex, that: Regex): Regex -} = internal.sequence +} = InternalRegex.sequence /** * A regex that matches the specified literal string. @@ -326,7 +326,7 @@ export const sequence: { * @since 1.0.0 * @category constructors */ -export const string: (string: string) => Regex = internal.string +export const string: (string: string) => Regex = InternalRegex.string /** * If the regex is a string literal, returns the string literal. @@ -334,7 +334,7 @@ export const string: (string: string) => Regex = internal.string * @since 1.0.0 * @category getters */ -export const toLiteral: (self: Regex) => Option> = internal.toLiteral +export const toLiteral: (self: Regex) => Option> = InternalRegex.toLiteral /** * A `Regex` that matches zero or more whitespace characters. @@ -342,4 +342,4 @@ export const toLiteral: (self: Regex) => Option> = internal.toLite * @since 1.0.0 * @category constructors */ -export const whitespace: Regex = internal.whitespace +export const whitespace: Regex = InternalRegex.whitespace diff --git a/src/Syntax.ts b/src/Syntax.ts index 0cf1d5d..f1c05fc 100644 --- a/src/Syntax.ts +++ b/src/Syntax.ts @@ -1,28 +1,30 @@ /** * @since 1.0.0 */ -import type { Chunk, NonEmptyChunk } from "@effect/data/Chunk" -import type { Either } from "@effect/data/Either" -import type { LazyArg } from "@effect/data/Function" -import type { Option } from "@effect/data/Option" -import type { Predicate } from "@effect/data/Predicate" -import * as internal from "@effect/parser/internal_effect_untraced/syntax" -import type { Parser } from "@effect/parser/Parser" -import type { ParserError } from "@effect/parser/ParserError" -import type { Printer } from "@effect/parser/Printer" -import type { Regex } from "@effect/parser/Regex" +import type { Chunk, NonEmptyChunk } from "effect/Chunk" +import type { Either } from "effect/Either" +import type { LazyArg } from "effect/Function" +import type { Option } from "effect/Option" +import type { Pipeable } from "effect/Pipeable" +import type { Predicate } from "effect/Predicate" +import type * as Types from "effect/Types" +import * as InternalSyntax from "./internal/syntax.js" +import type { Parser } from "./Parser.js" +import type { ParserError } from "./ParserError.js" +import type { Printer } from "./Printer.js" +import type { Regex } from "./Regex.js" /** * @since 1.0.0 * @category symbols */ -export const SyntaxTypeId: unique symbol = internal.SyntaxTypeId +export const TypeId: unique symbol = InternalSyntax.TypeId /** * @since 1.0.0 * @category symbols */ -export type SyntaxTypeId = typeof SyntaxTypeId +export type TypeId = typeof TypeId /** * A `Syntax` defines both a `Parser` and a `Printer` and provides combinators @@ -31,7 +33,7 @@ export type SyntaxTypeId = typeof SyntaxTypeId * @since 1.0.0 * @category models */ -export interface Syntax extends Syntax.Variance { +export interface Syntax extends Syntax.Variance, Pipeable { readonly parser: Parser readonly printer: Printer } @@ -44,12 +46,12 @@ export declare namespace Syntax { * @since 1.0.0 * @category models */ - export interface Variance { - readonly [SyntaxTypeId]: { - _Input: (_: Input) => void - _Error: (_: never) => Error - _Output: (_: never) => Output - _Value: (_: Value) => Value + export interface Variance { + readonly [TypeId]: { + _Input: Types.Contravariant + _Error: Types.Covariant + _Output: Types.Covariant + _Value: Types.Invariant } } } @@ -60,7 +62,7 @@ export declare namespace Syntax { * @since 1.0.0 * @category constructors */ -export const alphaNumeric: Syntax = internal.alphaNumeric +export const alphaNumeric: Syntax = InternalSyntax.alphaNumeric /** * Constructs a `Syntax` that parses/prints one element without modification. @@ -68,7 +70,7 @@ export const alphaNumeric: Syntax = internal.alp * @since 1.0.0 * @category constructors */ -export const anything: () => Syntax = internal.anything +export const anything: () => Syntax = InternalSyntax.anything /** * Constructs a `Syntax` that parses/prints a single character. @@ -76,7 +78,7 @@ export const anything: () => Syntax = interna * @since 1.0.0 * @category constructors */ -export const anyChar: Syntax = internal.anyChar +export const anyChar: Syntax = InternalSyntax.anyChar /** * Constructs a `Syntax` that parses/prints an arbitrary long string. @@ -84,7 +86,7 @@ export const anyChar: Syntax = internal.anyChar * @since 1.0.0 * @category constructors */ -export const anyString: Syntax = internal.anyString +export const anyString: Syntax = InternalSyntax.anyString /** * Transforms a `Syntax` that results in `void` in a `Syntax` that results in `value` @@ -100,7 +102,7 @@ export const as: { self: Syntax, value: Value2 ): Syntax -} = internal.as +} = InternalSyntax.as /** * Transforms a `Syntax` that results in `from` in a `Syntax` that results in `value` @@ -117,7 +119,7 @@ export const asPrinted: { value: Value2, from: Value ): Syntax -} = internal.asPrinted +} = InternalSyntax.asPrinted /** * Transforms a `Syntax` that results in `from` in a `Syntax` that results in `void` @@ -133,7 +135,7 @@ export const asUnit: { self: Syntax, from: Value ): Syntax -} = internal.asUnit +} = InternalSyntax.asUnit /** * Repeat this `Syntax` at least `min` number of times. @@ -157,7 +159,7 @@ export const atLeast: { self: Syntax, min: number ): Syntax> -} = internal.repeatMin +} = InternalSyntax.repeatMin /** * Repeat this `Syntax` at most `max` number of times. @@ -175,7 +177,7 @@ export const atMost: { self: Syntax, max: number ): Syntax> -} = internal.repeatMax +} = InternalSyntax.repeatMax /** * Enables auto-backtracking for this syntax. @@ -185,7 +187,7 @@ export const atMost: { */ export const autoBacktracking: ( self: Syntax -) => Syntax = internal.autoBacktracking +) => Syntax = InternalSyntax.autoBacktracking /** * Concatenates the syntaxes `left`, then this, then `right`. @@ -211,7 +213,7 @@ export const between: { left: Syntax, right: Syntax ): Syntax -} = internal.zipBetween +} = InternalSyntax.zipBetween /** * Returns a new `Syntax` that resets the parsing position in case it fails. @@ -227,7 +229,7 @@ export const between: { */ export const backtrack: ( self: Syntax -) => Syntax = internal.backtrack +) => Syntax = InternalSyntax.backtrack /** * Ignores this syntax's result and instead captures the parsed string fragment @@ -238,7 +240,7 @@ export const backtrack: ( */ export const captureString: ( self: Syntax -) => Syntax = internal.captureString +) => Syntax = InternalSyntax.captureString /** * Parse or print the specified character or fail with the specified error and @@ -248,7 +250,7 @@ export const captureString: ( * @category constructors */ export const char: (char: string, error?: Error | undefined) => Syntax = - internal.char + InternalSyntax.char /** * Constructs a `Syntax` that parses/prints a single character if it matches one @@ -257,7 +259,7 @@ export const char: (char: string, error?: Error | undefined) => * @since 1.0.0 * @category constructors */ -export const charIn: (chars: Iterable) => Syntax = internal.charIn +export const charIn: (chars: Iterable) => Syntax = InternalSyntax.charIn /** * Parse or print a single character and fail with the specified `error` if the @@ -266,7 +268,8 @@ export const charIn: (chars: Iterable) => Syntax(char: string, error: Error) => Syntax = internal.charNot +export const charNot: (char: string, error: Error) => Syntax = + InternalSyntax.charNot /** * Constructs a `Syntax` that parses/prints a single character if it **DOES @@ -275,7 +278,7 @@ export const charNot: (char: string, error: Error) => Syntax) => Syntax = internal.charNotIn +export const charNotIn: (chars: Iterable) => Syntax = InternalSyntax.charNotIn /** * Constructs a `Syntax` for a single digit. @@ -283,7 +286,7 @@ export const charNotIn: (chars: Iterable) => Syntax = internal.digit +export const digit: Syntax = InternalSyntax.digit /** * Constructs a `Syntax` that in parser mode only succeeds if the input stream @@ -294,7 +297,7 @@ export const digit: Syntax = internal.digit * @since 1.0.0 * @category constructors */ -export const end: Syntax = internal.end +export const end: Syntax = InternalSyntax.end /** * Constructs a `Syntax` that does not pares or print anything but fails with @@ -303,7 +306,7 @@ export const end: Syntax = internal.end * @since 1.0.0 * @category constructors */ -export const fail: (error: Error) => Syntax = internal.fail +export const fail: (error: Error) => Syntax = InternalSyntax.fail /** * Specifies a filter condition that gets checked in both parser and printer @@ -325,7 +328,7 @@ export const filter: { predicate: Predicate, error: Error2 ): Syntax -} = internal.filter +} = InternalSyntax.filter /** * Constructs a `Syntax` that parses/prints a single character that matches the @@ -335,7 +338,7 @@ export const filter: { * @category constructors */ export const filterChar: (predicate: Predicate, error: Error) => Syntax = - internal.filterChar + InternalSyntax.filterChar /** * Flattens a result of parsed strings to a single string. @@ -345,7 +348,7 @@ export const filterChar: (predicate: Predicate, error: Error) => */ export const flatten: ( self: Syntax> -) => Syntax = internal.flatten +) => Syntax = InternalSyntax.flatten /** * Flattens a result of parsed strings to a single string. @@ -355,7 +358,7 @@ export const flatten: ( */ export const flattenNonEmpty: ( self: Syntax> -) => Syntax = internal.flattenNonEmpty +) => Syntax = InternalSyntax.flattenNonEmpty /** * Constructs a `Syntax` that in parser mode results in the current input @@ -364,7 +367,7 @@ export const flattenNonEmpty: ( * @since 1.0.0 * @category constructors */ -export const index: Syntax = internal.index +export const index: Syntax = InternalSyntax.index /** * Constructs a `Syntax` for a single letter. @@ -372,7 +375,7 @@ export const index: Syntax = internal.index * @since 1.0.0 * @category constructors */ -export const letter: Syntax = internal.letter +export const letter: Syntax = InternalSyntax.letter /** * Disables auto-backtracking for this syntax. @@ -382,7 +385,7 @@ export const letter: Syntax = internal.letter */ export const manualBacktracking: ( self: Syntax -) => Syntax = internal.manualBacktracking +) => Syntax = InternalSyntax.manualBacktracking /** * Maps the error with the specified function. @@ -400,7 +403,7 @@ export const mapError: { self: Syntax, f: (error: Error) => Error2 ): Syntax -} = internal.mapError +} = InternalSyntax.mapError /** * Associates a name with this syntax. The chain of named parsers are reported @@ -419,7 +422,7 @@ export const named: { self: Syntax, name: string ): Syntax -} = internal.named +} = InternalSyntax.named /** * Inverts the success condition of this `Syntax`, succeeding only if this @@ -438,7 +441,7 @@ export const not: { self: Syntax, error: Error2 ): Syntax -} = internal.not +} = InternalSyntax.not /** * Make this `Syntax` optional. @@ -451,7 +454,7 @@ export const not: { */ export const optional: ( self: Syntax -) => Syntax> = internal.optional +) => Syntax> = InternalSyntax.optional /** * Assigns `that` syntax as a fallback of this. First this parser or printer @@ -477,7 +480,7 @@ export const orElse: { self: Syntax, that: LazyArg> ): Syntax -} = internal.orElse +} = InternalSyntax.orElse /** * Assigns `that` syntax as a fallback of this. First this parser or printer @@ -501,7 +504,7 @@ export const orElseEither: { self: Syntax, that: LazyArg> ): Syntax> -} = internal.orElseEither +} = InternalSyntax.orElseEither /** * Run this `Syntax`'s parser on the given `input` string. @@ -519,7 +522,7 @@ export const parseString: { self: Syntax, input: string ): Either, Value> -} = internal.parseString +} = InternalSyntax.parseString /** * Run this `Syntax`'s parser on the given `input` string using a specific @@ -540,7 +543,7 @@ export const parseStringWith: { input: string, implementation: Parser.Implementation ): Either, Value> -} = internal.parseStringWith +} = InternalSyntax.parseStringWith /** * Prints the specified `value` to a string. @@ -551,7 +554,7 @@ export const parseStringWith: { export const printString: { (value: Value): (self: Syntax) => Either (self: Syntax, value: Value): Either -} = internal.printString +} = InternalSyntax.printString /** * Constructs a `Syntax` that executes a regular expression on the input and @@ -561,7 +564,8 @@ export const printString: { * @since 1.0.0 * @category constructors */ -export const regex: (regex: Regex, error: Error) => Syntax> = internal.regex +export const regex: (regex: Regex, error: Error) => Syntax> = + InternalSyntax.regex /** * Constructs a `Syntax` that during parsing executes a regular expression on @@ -576,7 +580,7 @@ export const regex: (regex: Regex, error: Error) => Syntax(regex: Regex, error: Error) => Syntax = - internal.regexChar + InternalSyntax.regexChar /** * Constructs a `Syntax` which parses using the given regular expression and @@ -590,7 +594,7 @@ export const regexDiscard: ( regex: Regex, error: Error, chars: Iterable -) => Syntax = internal.regexDiscard +) => Syntax = InternalSyntax.regexDiscard /** * Repeats this `Syntax` zero or more times. @@ -606,7 +610,7 @@ export const regexDiscard: ( */ export const repeat: ( self: Syntax -) => Syntax> = internal.repeatMin0 +) => Syntax> = InternalSyntax.repeatMin0 /** * Repeats this `Syntax` at least one time. @@ -622,7 +626,7 @@ export const repeat: ( */ export const repeat1: ( self: Syntax -) => Syntax> = internal.repeatMin1 +) => Syntax> = InternalSyntax.repeatMin1 /** * Repeats this `Syntax` until the `stopCondition`, which performed after each @@ -641,7 +645,7 @@ export const repeatUntil: { self: Syntax, stopCondition: Syntax ): Syntax> -} = internal.repeatUntil +} = InternalSyntax.repeatUntil /** * Repeats this `Syntax` zero or more times and with the `separator` injected @@ -660,7 +664,7 @@ export const repeatWithSeparator: { self: Syntax, separator: Syntax ): Syntax> -} = internal.repeatWithSeparator +} = InternalSyntax.repeatWithSeparator /** * Repeats this `Syntax` at least once with the `separator` injected between @@ -679,7 +683,7 @@ export const repeatWithSeparator1: { self: Syntax, separator: Syntax ): Syntax> -} = internal.repeatWithSeparator1 +} = InternalSyntax.repeatWithSeparator1 /** * Enables or disables auto-backtracking for this syntax. @@ -697,7 +701,7 @@ export const setAutoBacktracking: { self: Syntax, enabled: boolean ): Syntax -} = internal.setAutoBacktracking +} = InternalSyntax.setAutoBacktracking /** * Constructs a `Syntax` that parses/prints the specified string and results in @@ -706,7 +710,7 @@ export const setAutoBacktracking: { * @since 1.0.0 * @category constructors */ -export const string: (str: string, value: Value) => Syntax = internal.string +export const string: (str: string, value: Value) => Syntax = InternalSyntax.string /** * Constructs a `Syntax` that does not parse or print anything but succeeds with @@ -715,7 +719,7 @@ export const string: (str: string, value: Value) => Syntax(value: Value) => Syntax = internal.succeed +export const succeed: (value: Value) => Syntax = InternalSyntax.succeed /** * Surrounds this `Syntax` with the `other` syntax. The result is this syntax's @@ -734,14 +738,14 @@ export const surroundedBy: { self: Syntax, other: Syntax ): Syntax -} = internal.zipSurrounded +} = InternalSyntax.zipSurrounded /** * Lazily constructs a `Syntax`. Can be used to construct a recursive parser * * @example * - * import { pipe } from "@effect/data/Function" + * import { pipe } from "effect/Function" * import * as Syntax from "@effect/parser/Syntax" * * const recursive: Syntax.Syntax = pipe( @@ -756,7 +760,7 @@ export const surroundedBy: { */ export const suspend: ( self: LazyArg> -) => Syntax = internal.suspend +) => Syntax = InternalSyntax.suspend /** * Maps the parser's successful result with the given function `to`, and maps @@ -777,7 +781,7 @@ export const transform: { to: (value: Value) => Value2, from: (value: Value2) => Value ): Syntax -} = internal.transform +} = InternalSyntax.transform /** * Maps the parser's successful result with the given function `to`, and maps @@ -799,7 +803,7 @@ export const transformEither: { to: (value: Value) => Either, from: (value: Value2) => Either ): Syntax -} = internal.transformEither +} = InternalSyntax.transformEither /** * Maps the parser's successful result with the given function `to`, and maps @@ -822,7 +826,7 @@ export const transformOption: { to: (value: Value) => Option, from: (value: Value2) => Option ): Syntax, Output, Value2> -} = internal.transformOption +} = InternalSyntax.transformOption /** * Maps the parsed value with the function `to`, and the value to be printed @@ -848,7 +852,7 @@ export const transformTo: { from: (value: Value2) => Option, error: Error2 ): Syntax -} = internal.transformTo +} = InternalSyntax.transformTo /** * Constructs a `Syntax` that results in `void`. @@ -856,7 +860,7 @@ export const transformTo: { * @since 1.0.0 * @category constructors */ -export const unit: () => Syntax = internal.unit +export const unit: () => Syntax = InternalSyntax.unit /** * Constructs a `Syntax` that executes a regular expression on the input and @@ -865,7 +869,7 @@ export const unit: () => Syntax = internal.unit * @since 1.0.0 * @category constructors */ -export const unsafeRegex: (regex: Regex) => Syntax> = internal.unsafeRegex +export const unsafeRegex: (regex: Regex) => Syntax> = InternalSyntax.unsafeRegex /** * Constructs a `Syntax` that parses using a regular expression and results in @@ -878,7 +882,7 @@ export const unsafeRegex: (regex: Regex) => Syntax Syntax = internal.unsafeRegexChar +export const unsafeRegexChar: (regex: Regex) => Syntax = InternalSyntax.unsafeRegexChar /** * Constructs a `Syntax` which parses using the specified regular expression and @@ -889,7 +893,7 @@ export const unsafeRegexChar: (regex: Regex) => Syntax) => Syntax = - internal.unsafeRegexDiscard + InternalSyntax.unsafeRegexDiscard /** * Constructs a `Syntax` for a single whitespace character. @@ -897,7 +901,7 @@ export const unsafeRegexDiscard: (regex: Regex, chars: Iterable) => Synt * @since 1.0.0 * @category constructors */ -export const whitespace: Syntax = internal.whitespace +export const whitespace: Syntax = InternalSyntax.whitespace /** * Concatenates this `Syntax` with `that` `Syntax`. If the parser of both @@ -922,7 +926,7 @@ export const zipLeft: { self: Syntax, that: Syntax ): Syntax -} = internal.zipLeft +} = InternalSyntax.zipLeft /** * Concatenates this `Syntax` with `that` `Syntax`. If the parser of both @@ -947,7 +951,7 @@ export const zipRight: { self: Syntax, that: Syntax ): Syntax -} = internal.zipRight +} = InternalSyntax.zipRight /** * Concatenates this syntax with `that` syntax. In case both parser succeeds, @@ -969,4 +973,4 @@ export const zip: { self: Syntax, that: Syntax ): Syntax -} = internal.zip +} = InternalSyntax.zip diff --git a/src/index.ts b/src/index.ts new file mode 100644 index 0000000..2e28ff8 --- /dev/null +++ b/src/index.ts @@ -0,0 +1,39 @@ +/** + * @since 1.0.0 + */ +export * as BitSet from "./BitSet.js" + +/** + * @since 1.0.0 + */ +export * as ChunkTarget from "./ChunkTarget.js" + +/** + * @since 1.0.0 + */ +export * as Parser from "./Parser.js" + +/** + * @since 1.0.0 + */ +export * as ParserError from "./ParserError.js" + +/** + * @since 1.0.0 + */ +export * as Printer from "./Printer.js" + +/** + * @since 1.0.0 + */ +export * as Regex from "./Regex.js" + +/** + * @since 1.0.0 + */ +export * as Syntax from "./Syntax.js" + +/** + * @since 1.0.0 + */ +export * as Target from "./Target.js" diff --git a/src/internal_effect_untraced/bitset.ts b/src/internal/bitset.ts similarity index 78% rename from src/internal_effect_untraced/bitset.ts rename to src/internal/bitset.ts index dbc69cf..13184ea 100644 --- a/src/internal_effect_untraced/bitset.ts +++ b/src/internal/bitset.ts @@ -1,7 +1,6 @@ -import { pipe } from "@effect/data/Function" -import * as Number from "@effect/data/Number" -import * as ReadonlyArray from "@effect/data/ReadonlyArray" -import type * as BitSet from "@effect/parser/BitSet" +import { Number, ReadonlyArray } from "effect" +import { pipe } from "effect/Function" +import type * as BitSet from "./../BitSet.js" /** @internal */ export const fromIterable = (bits: Iterable): BitSet.BitSet => diff --git a/src/internal_effect_untraced/chunkTarget.ts b/src/internal/chunkTarget.ts similarity index 81% rename from src/internal_effect_untraced/chunkTarget.ts rename to src/internal/chunkTarget.ts index e30ed93..984ed6f 100644 --- a/src/internal_effect_untraced/chunkTarget.ts +++ b/src/internal/chunkTarget.ts @@ -1,7 +1,5 @@ -import * as Chunk from "@effect/data/Chunk" -import * as List from "@effect/data/List" -import * as Cause from "@effect/io/Cause" -import type * as ChunkTarget from "@effect/parser/Target/Chunk" +import { Cause, Chunk, List } from "effect" +import type * as ChunkTarget from "./../ChunkTarget.js" /** @internal */ export class ChunkTargetImpl implements ChunkTarget.ChunkTarget { @@ -23,7 +21,7 @@ export class ChunkTargetImpl implements ChunkTarget.ChunkTarget emit(capture: ChunkTarget.ChunkTarget.Capture): void { const popped = this.popCaptureFrame() if (popped === undefined || popped !== capture) { - throw Cause.RuntimeException("Target.emit called on a capture group that was not at the top of the stack") + throw new Cause.RuntimeException("Target.emit called on a capture group that was not at the top of the stack") } if (List.isCons(this.captureStack)) { this.currentBuilder = this.captureStack.head.subBuilder @@ -38,7 +36,7 @@ export class ChunkTargetImpl implements ChunkTarget.ChunkTarget drop(capture: ChunkTarget.ChunkTarget.Capture): void { const popped = this.popCaptureFrame() if (popped === undefined || popped !== capture) { - throw Cause.RuntimeException("Target.emit called on a capture group that was not at the top of the stack") + throw new Cause.RuntimeException("Target.emit called on a capture group that was not at the top of the stack") } if (List.isCons(this.captureStack)) { this.currentBuilder = this.captureStack.head.subBuilder diff --git a/src/internal_effect_untraced/common.ts b/src/internal/common.ts similarity index 86% rename from src/internal_effect_untraced/common.ts rename to src/internal/common.ts index 666cdaa..303aba0 100644 --- a/src/internal_effect_untraced/common.ts +++ b/src/internal/common.ts @@ -1,4 +1,4 @@ -import type * as Regex from "@effect/parser/Regex" +import type * as Regex from "./../Regex.js" /** @internal */ export const notMatched = -1 diff --git a/src/internal_effect_untraced/lookupFunction.ts b/src/internal/lookupFunction.ts similarity index 94% rename from src/internal_effect_untraced/lookupFunction.ts rename to src/internal/lookupFunction.ts index 2f902be..515b500 100644 --- a/src/internal_effect_untraced/lookupFunction.ts +++ b/src/internal/lookupFunction.ts @@ -1,15 +1,8 @@ -import * as Chunk from "@effect/data/Chunk" -import * as Equal from "@effect/data/Equal" -import { pipe } from "@effect/data/Function" -import * as Hash from "@effect/data/Hash" -import * as HashSet from "@effect/data/HashSet" -import * as Number from "@effect/data/Number" -import * as Option from "@effect/data/Option" -import * as ReadonlyArray from "@effect/data/ReadonlyArray" -import * as Cause from "@effect/io/Cause" -import * as bitset from "@effect/parser/internal_effect_untraced/bitset" -import * as common from "@effect/parser/internal_effect_untraced/common" -import type * as Regex from "@effect/parser/Regex" +import { Cause, Chunk, Equal, Hash, HashSet, Number, Option, ReadonlyArray } from "effect" +import { pipe } from "effect/Function" +import type * as Regex from "./../Regex.js" +import * as InternalBitSet from "./bitset.js" +import * as InternalCommon from "./common.js" const LookupFunctionSymbolKey = "@effect/parser/LookupFunction" @@ -404,15 +397,15 @@ const compileTest = (self: LookupFunction) => { return (index: number, input: string): number => { let curLookup = self let curIdx = index - let result = common.needMoreInput + let result = InternalCommon.needMoreInput while (curIdx < input.length) { const char = input[curIdx]!.charCodeAt(0) curIdx = curIdx + 1 const step = lookup(curLookup, char) switch (step._tag) { case "Error": { - if (result === common.needMoreInput) { - result = common.notMatched + if (result === InternalCommon.needMoreInput) { + result = InternalCommon.notMatched } curIdx = input.length break @@ -433,7 +426,7 @@ const compileTest = (self: LookupFunction) => { } } } - if ((result === common.needMoreInput || result === common.notMatched) && supportsEmpty(self)) { + if ((result === InternalCommon.needMoreInput || result === InternalCommon.notMatched) && supportsEmpty(self)) { return index } return result @@ -453,8 +446,8 @@ const compileLookupFunction = (self: Regex.Regex): LookupFunction => { } case "OneOf": { if ( - self.bitset.length === bitset.all.length && - ReadonlyArray.getEquivalence(Number.Equivalence)(self.bitset, bitset.all) + self.bitset.length === InternalBitSet.all.length && + ReadonlyArray.getEquivalence(Number.Equivalence)(self.bitset, InternalBitSet.all) ) { return acceptAll } @@ -491,7 +484,7 @@ const compileLookupFunction = (self: Regex.Regex): LookupFunction => { const rest = choices.slice(1) return ReadonlyArray.reduce(rest, head, or) } - throw Cause.IllegalArgumentException("Cannot compile to DFA unbounded repetition") + throw new Cause.IllegalArgumentException("Cannot compile to DFA unbounded repetition") } } } @@ -501,7 +494,7 @@ export const compileToTabular = (self: Regex.Regex): Option.Option _, _Error: (_: never) => _, _Result: (_: never) => _ @@ -270,7 +263,10 @@ export const regexChar = (regex: Regex.Regex, error: Error): Parser.Parse } /** @internal */ -export const alphaNumeric: Parser.Parser = regexChar(_regex.anyAlphaNumeric, `not alphanumeric`) +export const alphaNumeric: Parser.Parser = regexChar( + InternalRegex.anyAlphaNumeric, + `not alphanumeric` +) /** @internal */ export const anything = (): Parser.Parser => { @@ -313,7 +309,7 @@ export const unsafeRegexChar = (regex: Regex.Regex): Parser.Parser = unsafeRegexChar(_regex.anyChar) +export const anyChar: Parser.Parser = unsafeRegexChar(InternalRegex.anyChar) /** @internal */ export const captureString = ( @@ -336,7 +332,7 @@ export const unsafeRegexDiscard = (regex: Regex.Regex): Parser.Parser = captureString( - unsafeRegexDiscard(_regex.repeatMin(_regex.anyChar, 0)) + unsafeRegexDiscard(InternalRegex.repeatMin(InternalRegex.anyChar, 0)) ) /** @internal */ @@ -356,22 +352,22 @@ export const backtrack = ( /** @internal */ export const char = (char: string, error?: Error): Parser.Parser => - regexDiscard(_regex.charIn(char), error ?? (`expected '${char}'` as any)) + regexDiscard(InternalRegex.charIn(char), error ?? (`expected '${char}'` as any)) /** @internal */ export const charIn = (chars: Iterable): Parser.Parser => - regexChar(_regex.charIn(chars), `not one of the expected characters (${Array.from(chars).join(", ")})`) + regexChar(InternalRegex.charIn(chars), `not one of the expected characters (${Array.from(chars).join(", ")})`) /** @internal */ export const charNot = (char: string, error?: Error): Parser.Parser => - regexChar(_regex.charNotIn([char]), error ?? (`unexpected '${char}'` as any)) + regexChar(InternalRegex.charNotIn([char]), error ?? (`unexpected '${char}'` as any)) /** @internal */ export const charNotIn = (chars: Iterable): Parser.Parser => - regexChar(_regex.charNotIn(chars), `one of the unexpected characters (${Array.from(chars).join(", ")})`) + regexChar(InternalRegex.charNotIn(chars), `one of the unexpected characters (${Array.from(chars).join(", ")})`) /** @internal */ -export const digit: Parser.Parser = regexChar(_regex.anyDigit, `not a digit`) +export const digit: Parser.Parser = regexChar(InternalRegex.anyDigit, `not a digit`) /** @internal */ export const end: Parser.Parser = (() => { @@ -437,7 +433,9 @@ export const flattenNonEmpty = ( ): Parser.Parser => map(self, Chunk.join("")) /** @internal */ -export const ignoreRest: Parser.Parser = unsafeRegexDiscard(_regex.repeatMin(_regex.anyChar, 0)) +export const ignoreRest: Parser.Parser = unsafeRegexDiscard( + InternalRegex.repeatMin(InternalRegex.anyChar, 0) +) /** @internal */ export const index: Parser.Parser = (() => { @@ -447,7 +445,7 @@ export const index: Parser.Parser = (() => { })() /** @internal */ -export const letter: Parser.Parser = regexChar(_regex.anyLetter, `not a letter`) +export const letter: Parser.Parser = regexChar(InternalRegex.anyLetter, `not a letter`) /** @internal */ export const manualBacktracking = ( @@ -488,7 +486,7 @@ export const mapError = dual< const op = Object.create(proto) op._tag = "MapError" op.parser = self - op.mapError = parserError.map(f) + op.mapError = InternalParserError.map(f) return op }) @@ -579,7 +577,10 @@ export const orElseEither = dual< }) /** @internal */ -export const regex = (regex: Regex.Regex, error: Error): Parser.Parser> => { +export const regex = ( + regex: Regex.Regex, + error: Error +): Parser.Parser> => { const op = Object.create(proto) op._tag = "ParseRegex" op.regex = regex @@ -761,7 +762,7 @@ export const setAutoBacktracking = dual< /** @internal */ export const string = (str: string, result: Result): Parser.Parser => - as(regexDiscard(_regex.string(str), `not '${str}'`), result) + as(regexDiscard(InternalRegex.string(str), `not '${str}'`), result) /** @internal */ export const succeed = (result: Result): Parser.Parser => { @@ -830,7 +831,10 @@ export const unsafeRegex = (regex: Regex.Regex): Parser.Parser = regexChar(_regex.whitespace, `not a whitespace`) +export const whitespace: Parser.Parser = regexChar( + InternalRegex.whitespace, + `not a whitespace` +) /** @internal */ export const zip = dual< @@ -934,7 +938,7 @@ export const zipWith = dual< }) /** @internal */ -class StringParserState extends recursive.ParserState { +class StringParserState extends InternalRecursive.ParserState { readonly length: number constructor(readonly source: string) { super() @@ -974,14 +978,14 @@ export const parseStringWith = dual< ) => { switch (implementation) { case "stack-safe": { - return stackSafe.charParserExecutor( - stackSafe.compile(optimize(self) as Primitive), + return InternalStackSafe.charParserExecutor( + InternalStackSafe.compile(optimize(self) as Primitive), input ) as Either.Either, Result> } case "recursive": { const state = new StringParserState(input) - const result = recursive.parseRecursive(optimize(self) as Primitive, state) + const result = InternalRecursive.parseRecursive(optimize(self) as Primitive, state) if (state.error !== undefined) { return Either.left(state.error as ParserError.ParserError) } @@ -1079,7 +1083,7 @@ const optimizeNode = ( if (inner._tag === "TransformEither") { op._tag = "TransformEither" op.parser = inner.parser - op.to = (result: unknown) => Either.mapRight(inner.to(result), () => self.to) + op.to = (result: unknown) => Either.map(inner.to(result), () => self.to) } else if (inner._tag === "CaptureString" || inner._tag === "Ignore" || inner._tag === "Transform") { op._tag = "Ignore" op.parser = inner.parser @@ -1143,7 +1147,7 @@ const optimizeNode = ( const skipRegexRight = optimizedRight.parser const innerOp = Object.create(proto) innerOp._tag = "SkipRegex" - innerOp.regex = _regex.or(skipRegexLeft.regex, skipRegexRight.regex) + innerOp.regex = InternalRegex.or(skipRegexLeft.regex, skipRegexRight.regex) innerOp.onFailure = Option.orElse(skipRegexRight.onFailure, () => skipRegexLeft.onFailure) op._tag = "CaptureString" op.parser = innerOp @@ -1173,7 +1177,7 @@ const optimizeNode = ( const op = Object.create(proto) if (optimizedInner._tag === "ParseRegexLastChar") { op._tag = "ParseRegex" - op.regex = _regex.repeat(optimizedInner.regex, self.min, self.max) + op.regex = InternalRegex.repeat(optimizedInner.regex, self.min, self.max) op.onFailure = optimizedInner.onFailure state.optimized.set(self, op) return op @@ -1210,7 +1214,7 @@ const optimizeNode = ( if (inner._tag === "TransformEither") { op._tag = "TransformEither" op.parser = inner.parser - op.to = (result: unknown) => Either.mapRight(inner.to(result), self.to) + op.to = (result: unknown) => Either.map(inner.to(result), self.to) } else if (inner._tag === "Transform") { op._tag = "Transform" op.parser = inner.parser @@ -1229,7 +1233,7 @@ const optimizeNode = ( if (inner._tag === "TransformEither") { op._tag = "TransformEither" op.parser = inner.parser - op.to = (result: unknown) => Either.mapRight(inner.to(result), self.to) + op.to = (result: unknown) => Either.map(inner.to(result), self.to) } else if (inner._tag === "Transform") { op._tag = "TransformEither" op.parser = inner.parser diff --git a/src/internal_effect_untraced/parser/recursive.ts b/src/internal/parser/recursive.ts similarity index 81% rename from src/internal_effect_untraced/parser/recursive.ts rename to src/internal/parser/recursive.ts index 6326d72..6aaa4fc 100644 --- a/src/internal_effect_untraced/parser/recursive.ts +++ b/src/internal/parser/recursive.ts @@ -1,13 +1,10 @@ -import * as Chunk from "@effect/data/Chunk" -import * as Either from "@effect/data/Either" -import * as List from "@effect/data/List" -import * as Option from "@effect/data/Option" -import * as common from "@effect/parser/internal_effect_untraced/common" -import type * as parser from "@effect/parser/internal_effect_untraced/parser" -import * as parserError from "@effect/parser/internal_effect_untraced/parserError" -import * as _regex from "@effect/parser/internal_effect_untraced/regex" -import type * as ParserError from "@effect/parser/ParserError" -import type * as Regex from "@effect/parser/Regex" +import { Chunk, Either, List, Option } from "effect" +import type * as ParserError from "./../../ParserError.js" +import type * as Regex from "./../../Regex.js" +import * as InternalCommon from "./../common.js" +import type * as InternalParser from "./../parser.js" +import * as InternalParserError from "./../parserError.js" +import * as InternalRegex from "./../regex.js" /** * The state of the recursive parser implementation. @@ -42,7 +39,10 @@ export abstract class ParserState { } /** @internal */ -export const parseRecursive = (self: parser.Primitive, state: ParserState): unknown | undefined => { +export const parseRecursive = ( + self: InternalParser.Primitive, + state: ParserState +): unknown | undefined => { switch (self._tag) { case "Backtrack": { const position = state.position @@ -66,12 +66,12 @@ export const parseRecursive = (self: parser.Primitive, state: ParserState } case "End": { if (state.position < state.length) { - state.error = parserError.notConsumedAll(Option.none()) + state.error = InternalParserError.notConsumedAll(Option.none()) } return undefined } case "Fail": { - state.error = parserError.failure(state.nameStack, state.position, self.error) + state.error = InternalParserError.failure(state.nameStack, state.position, self.error) return undefined } case "Failed": { @@ -118,7 +118,7 @@ export const parseRecursive = (self: parser.Primitive, state: ParserState parseRecursive(self.parser, state) state.discard = discard if (state.error === undefined) { - state.error = parserError.failure(state.nameStack, state.position, self.error) + state.error = InternalParserError.failure(state.nameStack, state.position, self.error) } else { state.error = undefined } @@ -158,7 +158,7 @@ export const parseRecursive = (self: parser.Primitive, state: ParserState } return undefined } - state.error = parserError.addFailedBranch(leftFailure, state.error) + state.error = InternalParserError.addFailedBranch(leftFailure, state.error) return undefined } return undefined @@ -182,19 +182,19 @@ export const parseRecursive = (self: parser.Primitive, state: ParserState } return undefined } - state.error = parserError.addFailedBranch(leftFailure, state.error) + state.error = InternalParserError.addFailedBranch(leftFailure, state.error) return undefined } return undefined } case "ParseRegex": { const position = state.position - const result = state.regex(_regex.compile(self.regex)) - if (result === common.needMoreInput) { - state.error = parserError.unexpectedEndOfInput + const result = state.regex(InternalRegex.compile(self.regex)) + if (result === InternalCommon.needMoreInput) { + state.error = InternalParserError.unexpectedEndOfInput return undefined } - if (result === common.notMatched) { + if (result === InternalCommon.notMatched) { state.error = getParserError(position, state.nameStack, self.onFailure) return undefined } @@ -206,12 +206,12 @@ export const parseRecursive = (self: parser.Primitive, state: ParserState } case "ParseRegexLastChar": { const position = state.position - const result = state.regex(_regex.compile(self.regex)) - if (result === common.needMoreInput) { - state.error = parserError.unexpectedEndOfInput + const result = state.regex(InternalRegex.compile(self.regex)) + if (result === InternalCommon.needMoreInput) { + state.error = InternalParserError.unexpectedEndOfInput return undefined } - if (result === common.notMatched) { + if (result === InternalCommon.notMatched) { state.error = getParserError(position, state.nameStack, self.onFailure) return undefined } @@ -227,7 +227,7 @@ export const parseRecursive = (self: parser.Primitive, state: ParserState state.position = state.position + 1 return result } - state.error = parserError.unexpectedEndOfInput + state.error = InternalParserError.unexpectedEndOfInput return undefined } case "Repeat": { @@ -249,7 +249,7 @@ export const parseRecursive = (self: parser.Primitive, state: ParserState } } if (count < minCount && state.error === undefined) { - state.error = parserError.unexpectedEndOfInput + state.error = InternalParserError.unexpectedEndOfInput } else { if (count >= minCount) { state.error = undefined @@ -266,10 +266,10 @@ export const parseRecursive = (self: parser.Primitive, state: ParserState } case "SkipRegex": { const position = state.position - const result = state.regex(_regex.compile(self.regex)) - if (result === common.needMoreInput) { - state.error = parserError.unexpectedEndOfInput - } else if (result === common.notMatched) { + const result = state.regex(InternalRegex.compile(self.regex)) + if (result === InternalCommon.needMoreInput) { + state.error = InternalParserError.unexpectedEndOfInput + } else if (result === InternalCommon.notMatched) { state.error = getParserError(position, state.nameStack, self.onFailure) } else { state.position = result @@ -299,7 +299,7 @@ export const parseRecursive = (self: parser.Primitive, state: ParserState const result = self.to(innerResult) return Either.match(result, { onLeft: (error) => { - state.error = parserError.failure(state.nameStack, state.position, error) + state.error = InternalParserError.failure(state.nameStack, state.position, error) return undefined }, onRight: (value) => value @@ -354,7 +354,7 @@ const getParserError = ( Option.match( onFailure, { - onNone: () => parserError.unknownFailure(nameStack, position), - onSome: (error) => parserError.failure(nameStack, position, error) + onNone: () => InternalParserError.unknownFailure(nameStack, position), + onSome: (error) => InternalParserError.failure(nameStack, position, error) } ) diff --git a/src/internal_effect_untraced/parser/stack-safe.ts b/src/internal/parser/stack-safe.ts similarity index 94% rename from src/internal_effect_untraced/parser/stack-safe.ts rename to src/internal/parser/stack-safe.ts index 1a34dd2..6591d89 100644 --- a/src/internal_effect_untraced/parser/stack-safe.ts +++ b/src/internal/parser/stack-safe.ts @@ -1,14 +1,11 @@ -import * as Chunk from "@effect/data/Chunk" -import * as Either from "@effect/data/Either" -import type { LazyArg } from "@effect/data/Function" -import * as List from "@effect/data/List" -import * as Option from "@effect/data/Option" -import * as common from "@effect/parser/internal_effect_untraced/common" -import type * as parser from "@effect/parser/internal_effect_untraced/parser" -import * as parserError from "@effect/parser/internal_effect_untraced/parserError" -import * as regex from "@effect/parser/internal_effect_untraced/regex" -import type * as ParserError from "@effect/parser/ParserError" -import type * as Regex from "@effect/parser/Regex" +import { Chunk, Either, List, Option } from "effect" +import type { LazyArg } from "effect/Function" +import type * as ParserError from "./../../ParserError.js" +import type * as Regex from "./../../Regex.js" +import * as InternalCommon from "./../common.js" +import type * as InternalParser from "./../parser.js" +import * as InternalParserError from "./../parserError.js" +import * as InternalRegex from "./../regex.js" /** * A `Parser` operation, the language that a `Parser` is precompiled to for @@ -361,18 +358,18 @@ export interface Zip { /** @internal */ export interface CompilerState { - readonly optimized: Map - readonly visited: Set + readonly optimized: Map + readonly visited: Set } /** @internal */ -export const compile = (parser: parser.Primitive): InitialParser => +export const compile = (parser: InternalParser.Primitive): InitialParser => toInitialParser(compileInternal( parser, { optimized: new Map(), visited: new Set() } )) -const compileInternal = (parser: parser.Primitive, state: CompilerState): ParserOp => { +const compileInternal = (parser: InternalParser.Primitive, state: CompilerState): ParserOp => { const alreadyOptimized = state.optimized.get(parser) if (alreadyOptimized !== undefined) { return alreadyOptimized @@ -383,7 +380,7 @@ const compileInternal = (parser: parser.Primitive, state: CompilerState): Parser return compiled } -const compileParserNode = (parser: parser.Primitive, state: CompilerState): ParserOp => { +const compileParserNode = (parser: InternalParser.Primitive, state: CompilerState): ParserOp => { switch (parser._tag) { case "Backtrack": { return { @@ -408,7 +405,7 @@ const compileParserNode = (parser: parser.Primitive, state: CompilerState): Pars return { _tag: "PushResult", success: void 0, - failure: parserError.failure(List.nil(), -1, parser.error), + failure: InternalParserError.failure(List.nil(), -1, parser.error), popFirst: false } } @@ -473,7 +470,7 @@ const compileParserNode = (parser: parser.Primitive, state: CompilerState): Pars _tag: "PushOp2", first: { _tag: "TransformResultFlipped", - onSuccess: (position) => parserError.failure(List.nil(), position, parser.error), + onSuccess: (position) => InternalParserError.failure(List.nil(), position, parser.error), onFailure: () => void 0 }, second: inner, @@ -511,7 +508,7 @@ const compileParserNode = (parser: parser.Primitive, state: CompilerState): Pars case "ParseRegex": { return { _tag: "MatchRegex", - regex: regex.compile(parser.regex), + regex: InternalRegex.compile(parser.regex), pushAs: "MatchedChunk", failAs: parser.onFailure } @@ -519,7 +516,7 @@ const compileParserNode = (parser: parser.Primitive, state: CompilerState): Pars case "ParseRegexLastChar": { return { _tag: "MatchRegex", - regex: regex.compile(parser.regex), + regex: InternalRegex.compile(parser.regex), pushAs: "SingleChar", failAs: parser.onFailure } @@ -543,7 +540,7 @@ const compileParserNode = (parser: parser.Primitive, state: CompilerState): Pars case "SkipRegex": { return { _tag: "MatchRegex", - regex: regex.compile(parser.regex), + regex: InternalRegex.compile(parser.regex), pushAs: "Ignored", failAs: parser.onFailure } @@ -838,7 +835,7 @@ export const charParserExecutor = ( case "CheckEnd": { if (position < source.length) { lastSuccess1 = null - lastFailure1 = parserError.notConsumedAll(Option.none()) + lastFailure1 = InternalParserError.notConsumedAll(Option.none()) } else { lastSuccess1 = undefined lastFailure1 = null @@ -865,10 +862,10 @@ export const charParserExecutor = ( if ((pos0 + pos) < source.length) { const item = source[pos0 + pos] if (item !== Chunk.unsafeGet(op.sequence, position)) { - failure = parserError.failure(nameStack, pos0 + pos, op.createParserFailure(pos, item)) + failure = InternalParserError.failure(nameStack, pos0 + pos, op.createParserFailure(pos, item)) } } else { - failure = parserError.unexpectedEndOfInput + failure = InternalParserError.unexpectedEndOfInput } pos = pos + 1 } @@ -884,15 +881,15 @@ export const charParserExecutor = ( } case "MatchRegex": { const result = op.regex.test(position, source) - if (result === common.needMoreInput) { - lastFailure1 = parserError.unexpectedEndOfInput - } else if (result === common.notMatched) { + if (result === InternalCommon.needMoreInput) { + lastFailure1 = InternalParserError.unexpectedEndOfInput + } else if (result === InternalCommon.notMatched) { Option.match(op.failAs, { onNone: () => { lastSuccess1 = Chunk.empty() }, onSome: (error) => { - lastFailure1 = parserError.failure(nameStack, position, error) + lastFailure1 = InternalParserError.failure(nameStack, position, error) } }) } else { @@ -974,7 +971,7 @@ export const charParserExecutor = ( } if (builder!.length < minCount) { // not enough elements - lastFailure1 = parserError.unexpectedEndOfInput + lastFailure1 = InternalParserError.unexpectedEndOfInput popOpStack() } else { lastFailure1 = null @@ -1055,7 +1052,7 @@ export const charParserExecutor = ( position = position + 1 lastSuccess1 = source[position - 1] } else { - lastFailure1 = parserError.unexpectedEndOfInput + lastFailure1 = InternalParserError.unexpectedEndOfInput } popOpStack() break @@ -1122,7 +1119,7 @@ export const charParserExecutor = ( } else { if (lastFailure2 !== null) { if (lastFailure1 !== null) { - lastFailure1 = parserError.addFailedBranch(lastFailure2, lastFailure1) + lastFailure1 = InternalParserError.addFailedBranch(lastFailure2, lastFailure1) } else { lastFailure1 = lastFailure2 } @@ -1163,7 +1160,7 @@ export const charParserExecutor = ( Either.match(either, { onLeft: (error) => { lastSuccess1 = null - lastFailure1 = parserError.failure(nameStack, position, error) + lastFailure1 = InternalParserError.failure(nameStack, position, error) }, onRight: (value) => { lastSuccess1 = value diff --git a/src/internal_effect_untraced/parserError.ts b/src/internal/parserError.ts similarity index 81% rename from src/internal_effect_untraced/parserError.ts rename to src/internal/parserError.ts index eaf1b75..cf96445 100644 --- a/src/internal_effect_untraced/parserError.ts +++ b/src/internal/parserError.ts @@ -1,18 +1,13 @@ -import { dual } from "@effect/data/Function" -import type * as List from "@effect/data/List" -import * as Option from "@effect/data/Option" -import type * as ParserError from "@effect/parser/ParserError" +import type { List } from "effect" +import { Option } from "effect" +import { dual } from "effect/Function" +import type * as ParserError from "./../ParserError.js" /** @internal */ -const ParserErrorSymbolKey = "@effect/parser/ParserError" - -/** @internal */ -export const ParserErrorTypeId: ParserError.ParserErrorTypeId = Symbol.for( - ParserErrorSymbolKey -) as ParserError.ParserErrorTypeId +export const TypeId: ParserError.TypeId = Symbol.for("@effect/parser/ParserError") as ParserError.TypeId const proto = { - [ParserErrorTypeId]: ParserErrorTypeId + [TypeId]: TypeId } /** @internal */ @@ -72,7 +67,7 @@ export const unknownFailure = ( /** @internal */ export const isParserError = (u: unknown): u is ParserError.ParserError => - typeof u === "object" && u != null && ParserErrorTypeId in u + typeof u === "object" && u != null && TypeId in u /** @internal */ export const isAllBranchesFailed = ( @@ -80,8 +75,9 @@ export const isAllBranchesFailed = ( ): self is ParserError.AllBranchesFailed => self._tag === "AllBranchesFailed" /** @internal */ -export const isFailure = (self: ParserError.ParserError): self is ParserError.Failure => - self._tag === "Failure" +export const isFailure = ( + self: ParserError.ParserError +): self is ParserError.Failure => self._tag === "Failure" /** @internal */ export const isNotConsumedAll = ( @@ -94,8 +90,9 @@ export const isUnexpectedEndOfInput = ( ): self is ParserError.UnexpectedEndOfInput => self._tag === "UnexpectedEndOfInput" /** @internal */ -export const isUnknownFailure = (self: ParserError.ParserError): self is ParserError.UnknownFailure => - self._tag === "UnknownFailure" +export const isUnknownFailure = ( + self: ParserError.ParserError +): self is ParserError.UnknownFailure => self._tag === "UnknownFailure" /** @internal */ export const addFailedBranch = dual< diff --git a/src/internal_effect_untraced/printer.ts b/src/internal/printer.ts similarity index 93% rename from src/internal_effect_untraced/printer.ts rename to src/internal/printer.ts index f15fefe..d233d28 100644 --- a/src/internal_effect_untraced/printer.ts +++ b/src/internal/printer.ts @@ -1,30 +1,21 @@ -import * as Chunk from "@effect/data/Chunk" -import * as Either from "@effect/data/Either" -import * as Equal from "@effect/data/Equal" -import type { LazyArg } from "@effect/data/Function" -import { constVoid, dual, pipe } from "@effect/data/Function" -import * as List from "@effect/data/List" -import * as Option from "@effect/data/Option" -import type { Predicate } from "@effect/data/Predicate" -import * as chunkTarget from "@effect/parser/internal_effect_untraced/chunkTarget" -import * as parserError from "@effect/parser/internal_effect_untraced/parserError" -import * as _regex from "@effect/parser/internal_effect_untraced/regex" -import type * as ParserError from "@effect/parser/ParserError" -import type * as Printer from "@effect/parser/Printer" -import type * as Regex from "@effect/parser/Regex" -import type * as Target from "@effect/parser/Target" +import { Chunk, Either, Equal, List, Option } from "effect" +import { constVoid, dual, pipe } from "effect/Function" +import type { LazyArg } from "effect/Function" +import type { Predicate } from "effect/Predicate" +import type * as ParserError from "./../ParserError.js" +import type * as Printer from "./../Printer.js" +import type * as Regex from "./../Regex.js" +import type * as Target from "./../Target.js" +import * as InternalChunkTarget from "./chunkTarget.js" +import * as InternalParserError from "./parserError.js" +import * as InternalRegex from "./regex.js" /** @internal */ -const PrinterSymbolKey = "@effect/parser/Printer" - -/** @internal */ -export const PrinterTypeId: Printer.PrinterTypeId = Symbol.for( - PrinterSymbolKey -) as Printer.PrinterTypeId +export const TypeId: Printer.TypeId = Symbol.for("@effect/parser/Printer") as Printer.TypeId /** @internal */ const proto = { - [PrinterTypeId]: { + [TypeId]: { _Input: (_: unknown) => _, _Error: (_: never) => _, _Output: (_: never) => _ @@ -229,7 +220,7 @@ export const regexChar = (regex: Regex.Regex, error: Error): Printer.Prin /** @internal */ export const alphaNumeric: Printer.Printer = regexChar( - _regex.anyAlphaNumeric, + InternalRegex.anyAlphaNumeric, "not alphanumeric" ) @@ -243,7 +234,7 @@ export const unsafeRegexChar = (regex: Regex.Regex): Printer.Printer = unsafeRegexChar(_regex.anyChar) +export const anyChar: Printer.Printer = unsafeRegexChar(InternalRegex.anyChar) /** @internal */ export const unsafeRegex = (regex: Regex.Regex): Printer.Printer, never, string> => { @@ -288,7 +279,7 @@ export const contramap = dual< /** @internal */ export const anyString: Printer.Printer = pipe( - unsafeRegex(_regex.repeatMin(_regex.anyChar, 0)), + unsafeRegex(InternalRegex.repeatMin(InternalRegex.anyChar, 0)), contramap((s) => Chunk.fromIterable(s)) ) @@ -316,19 +307,19 @@ export const asPrinted = dual< /** @internal */ export const char = (char: string): Printer.Printer => - regexDiscard(_regex.charIn([char]), Chunk.of(char)) + regexDiscard(InternalRegex.charIn([char]), Chunk.of(char)) /** @internal */ export const charIn = (chars: Iterable): Printer.Printer => - regexChar(_regex.charIn(chars), `not one of the expected characters (${Array.from(chars).join(", ")})`) + regexChar(InternalRegex.charIn(chars), `not one of the expected characters (${Array.from(chars).join(", ")})`) /** @internal */ export const charNot = (char: string, failure?: Error): Printer.Printer => - regexChar(_regex.charNotIn([char]), failure ?? (`cannot be '${char}'` as any)) + regexChar(InternalRegex.charNotIn([char]), failure ?? (`cannot be '${char}'` as any)) /** @internal */ export const charNotIn = (chars: Iterable): Printer.Printer => - regexChar(_regex.charNotIn(chars), `one of the unexpected characters (${Array.from(chars).join(", ")})`) + regexChar(InternalRegex.charNotIn(chars), `one of the unexpected characters (${Array.from(chars).join(", ")})`) /** @internal */ export const contramapTo = dual< @@ -349,7 +340,7 @@ export const contramapTo = dual< }))) /** @internal */ -export const digit: Printer.Printer = regexChar(_regex.anyDigit, "not a digit") +export const digit: Printer.Printer = regexChar(InternalRegex.anyDigit, "not a digit") /** @internal */ export const exactly = (value: Output, error?: Error): Printer.Printer => @@ -415,7 +406,7 @@ export const fromInput = ( } /** @internal */ -export const letter: Printer.Printer = regexChar(_regex.anyLetter, "not a letter") +export const letter: Printer.Printer = regexChar(InternalRegex.anyLetter, "not a letter") /** @internal */ export const mapError = dual< @@ -508,15 +499,15 @@ export const printToChunk = dual< input: Input ) => Either.Either> >(2, (self: Printer.Printer, input: Input) => { - const target = chunkTarget.make() - return Either.mapRight(interpret(self, input, target), () => target.result()) + const target = InternalChunkTarget.make() + return Either.map(interpret(self, input, target), () => target.result()) }) /** @internal */ export const printToString = dual< (value: Input) => (self: Printer.Printer) => Either.Either, (self: Printer.Printer, input: Input) => Either.Either ->(2, (self, value) => Either.mapRight(printToChunk(self, value), Chunk.join(""))) +>(2, (self, value) => Either.map(printToChunk(self, value), Chunk.join(""))) /** @internal */ export const printToTarget = dual< @@ -653,7 +644,7 @@ export const repeatWithSeparator1 = dual< /** @internal */ export const string = (str: string, input: Input): Printer.Printer => pipe( - regexDiscard(_regex.string(str), Chunk.fromIterable(str)), + regexDiscard(InternalRegex.string(str), Chunk.fromIterable(str)), asPrinted(input, void 0 as void) ) @@ -790,7 +781,7 @@ export const zipSurrounded = dual< /** @internal */ export const whitespace: Printer.Printer = regexChar( - _regex.whitespace, + InternalRegex.whitespace, "not a whitespace character" ) @@ -870,7 +861,7 @@ const interpret = >( stack = List.cons(cont, stack) } else { // TODO - finish(Either.left(failed(parserError.unknownFailure(List.nil(), 0)))) + finish(Either.left(failed(InternalParserError.unknownFailure(List.nil(), 0)))) } break } @@ -948,7 +939,7 @@ const interpret = >( } case "ParseRegex": { if (Option.isSome(current.onFailure)) { - const compiled = _regex.compile(current.regex) + const compiled = InternalRegex.compile(current.regex) const chunk = input as Chunk.Chunk if (compiled.test(0, Chunk.join(chunk, "")) < 0) { finish(Either.left(current.onFailure.value)) @@ -968,7 +959,7 @@ const interpret = >( } case "ParseRegexLastChar": { if (Option.isSome(current.onFailure)) { - const compiled = _regex.compile(current.regex) + const compiled = InternalRegex.compile(current.regex) const char = input as string if (compiled.test(0, char) > 0) { output.write(input as Output) @@ -1073,5 +1064,5 @@ const interpret = >( } } } - return Either.mapRight(result, constVoid) as Either.Either + return Either.map(result, constVoid) as Either.Either } diff --git a/src/internal_effect_untraced/regex.ts b/src/internal/regex.ts similarity index 61% rename from src/internal_effect_untraced/regex.ts rename to src/internal/regex.ts index 1916188..5eeb918 100644 --- a/src/internal_effect_untraced/regex.ts +++ b/src/internal/regex.ts @@ -1,24 +1,17 @@ -import * as Chunk from "@effect/data/Chunk" -import { dual, pipe } from "@effect/data/Function" -import * as Option from "@effect/data/Option" -import type { Predicate } from "@effect/data/Predicate" -import * as ReadonlyArray from "@effect/data/ReadonlyArray" -import type * as BitSet from "@effect/parser/BitSet" -import * as bitset from "@effect/parser/internal_effect_untraced/bitset" -import * as common from "@effect/parser/internal_effect_untraced/common" -import * as lookupFunction from "@effect/parser/internal_effect_untraced/lookupFunction" -import type * as Regex from "@effect/parser/Regex" +import { Chunk, Option, ReadonlyArray } from "effect" +import { dual, pipe } from "effect/Function" +import type { Predicate } from "effect/Predicate" +import type * as BitSet from "./../BitSet.js" +import type * as Regex from "./../Regex.js" +import * as InternalBitSet from "./bitset.js" +import * as InternalCommon from "./common.js" +import * as InternalLookupFunction from "./lookupFunction.js" /** @internal */ -const RegexSymbolKey = "@effect/parser/Regex" - -/** @internal */ -export const RegexTypeId: Regex.RegexTypeId = Symbol.for( - RegexSymbolKey -) as Regex.RegexTypeId +export const TypeId: Regex.TypeId = Symbol.for("@effect/parser/Regex") as Regex.TypeId const proto = { - [RegexTypeId]: RegexTypeId + [TypeId]: TypeId } /** @internal */ @@ -41,30 +34,30 @@ const oneOf = (bitset: BitSet.BitSet): Regex.Regex => { } /** @internal */ -export const anyChar: Regex.Regex = oneOf(bitset.all) +export const anyChar: Regex.Regex = oneOf(InternalBitSet.all) /** @internal */ export const charIn = (chars: Iterable): Regex.Regex => pipe( - bitset.fromChars(chars), + InternalBitSet.fromChars(chars), oneOf ) /** @internal */ export const filter = (predicate: Predicate): Regex.Regex => pipe( - bitset.all, - bitset.toChars, + InternalBitSet.all, + InternalBitSet.toChars, ReadonlyArray.filter(predicate), charIn ) -const IS_DIGIT_REGEX = /^[0-9]$/ +const IS_DIGIT_REGEX = new RegExp(/^[0-9]$/) /** @internal */ export const anyDigit: Regex.Regex = filter((char) => IS_DIGIT_REGEX.test(char)) -const IS_LETTER_REGEX = /^[a-z]$/i +const IS_LETTER_REGEX = new RegExp(/^[a-z]$/, "i") /** @internal */ export const anyLetter: Regex.Regex = filter((char) => IS_LETTER_REGEX.test(char)) @@ -114,8 +107,8 @@ export const char = (char: string): Regex.Regex => charIn([char]) /** @internal */ export const charNotIn = (chars: Iterable): Regex.Regex => pipe( - bitset.all, - ReadonlyArray.difference(bitset.fromChars(chars)), + InternalBitSet.all, + ReadonlyArray.difference(InternalBitSet.fromChars(chars)), oneOf ) @@ -166,11 +159,11 @@ export const whitespace: Regex.Regex = repeatMin(anyWhitespace, 0) export const compile = (regex: Regex.Regex): Regex.Regex.Compiled => { const test = (index: number, chars: string): number => pipe( - lookupFunction.compileToTabular(regex), + InternalLookupFunction.compileToTabular(regex), Option.map((compiled) => compiled.test(index, chars)), Option.getOrElse(() => compileInternal(regex)(index, chars)) ) - return new common.CompiledImpl(test) + return new InternalCommon.CompiledImpl(test) } const compileSequence = (self: Regex.Regex): Chunk.Chunk => @@ -178,69 +171,68 @@ const compileSequence = (self: Regex.Regex): Chunk.Chunk => ? Chunk.appendAll(compileSequence(self.left), compileSequence(self.right)) : Chunk.of(self) -const compileInternal = (self: Regex.Regex) => - (index: number, chars: string): number => { - switch (self._tag) { - case "Succeed": { - return index +const compileInternal = (self: Regex.Regex) => (index: number, chars: string): number => { + switch (self._tag) { + case "Succeed": { + return index + } + case "And": { + const left = compileInternal(self.left)(index, chars) + if (left === InternalCommon.notMatched || left === InternalCommon.needMoreInput) { + return left } - case "And": { - const left = compileInternal(self.left)(index, chars) - if (left === common.notMatched || left === common.needMoreInput) { - return left - } + return compileInternal(self.right)(index, chars) + } + case "Or": { + const left = compileInternal(self.left)(index, chars) + if (left === InternalCommon.notMatched || left === InternalCommon.needMoreInput) { return compileInternal(self.right)(index, chars) } - case "Or": { - const left = compileInternal(self.left)(index, chars) - if (left === common.notMatched || left === common.needMoreInput) { - return compileInternal(self.right)(index, chars) - } - return left + return left + } + case "OneOf": { + if (index >= chars.length) { + return InternalCommon.needMoreInput } - case "OneOf": { - if (index >= chars.length) { - return common.needMoreInput - } - if (self.bitset.some((bit) => bit === chars[index].charCodeAt(0))) { - return index + 1 - } - return common.notMatched + if (self.bitset.some((bit) => bit === chars[index].charCodeAt(0))) { + return index + 1 } - case "Sequence": { - const compiled = Chunk.map(compileSequence(self), compileInternal) - let i = 0 - let idx = index - while (i < compiled.length) { - const current = Chunk.unsafeGet(compiled, i) - idx = current(idx, chars) - if (idx < 0) { - // Terminate loop because current parser didn't match - i = compiled.length - } else { - i = i + 1 - } + return InternalCommon.notMatched + } + case "Sequence": { + const compiled = Chunk.map(compileSequence(self), compileInternal) + let i = 0 + let idx = index + while (i < compiled.length) { + const current = Chunk.unsafeGet(compiled, i) + idx = current(idx, chars) + if (idx < 0) { + // Terminate loop because current parser didn't match + i = compiled.length + } else { + i = i + 1 } - return idx } - case "Repeat": { - const min = Option.getOrElse(self.min, () => 0) - const max = Option.getOrElse(self.max, () => Infinity) - const compiled = compileInternal(self.regex) - let idx = index - let lastIdx = index - let matched = 0 - while (idx >= 0 && idx < chars.length && matched < max) { - idx = compiled(idx, chars) - if (idx >= 0) { - lastIdx = idx - matched = matched + 1 - } + return idx + } + case "Repeat": { + const min = Option.getOrElse(self.min, () => 0) + const max = Option.getOrElse(self.max, () => Infinity) + const compiled = compileInternal(self.regex) + let idx = index + let lastIdx = index + let matched = 0 + while (idx >= 0 && idx < chars.length && matched < max) { + idx = compiled(idx, chars) + if (idx >= 0) { + lastIdx = idx + matched = matched + 1 } - return matched < min ? common.needMoreInput : lastIdx } + return matched < min ? InternalCommon.needMoreInput : lastIdx } } +} /** @internal */ export const toLiteral = (self: Regex.Regex): Option.Option> => { diff --git a/src/internal_effect_untraced/syntax.ts b/src/internal/syntax.ts similarity index 81% rename from src/internal_effect_untraced/syntax.ts rename to src/internal/syntax.ts index a7ca855..7f4fbf0 100644 --- a/src/internal_effect_untraced/syntax.ts +++ b/src/internal/syntax.ts @@ -1,34 +1,30 @@ -import * as Chunk from "@effect/data/Chunk" -import * as Either from "@effect/data/Either" -import type { LazyArg } from "@effect/data/Function" -import { dual, pipe } from "@effect/data/Function" -import * as Option from "@effect/data/Option" -import type { Predicate } from "@effect/data/Predicate" -import { tuple } from "@effect/data/Tuple" -import * as _parser from "@effect/parser/internal_effect_untraced/parser" -import * as _printer from "@effect/parser/internal_effect_untraced/printer" -import * as _regex from "@effect/parser/internal_effect_untraced/regex" -import type * as Parser from "@effect/parser/Parser" -import type * as ParserError from "@effect/parser/ParserError" -import type * as Printer from "@effect/parser/Printer" -import type * as Regex from "@effect/parser/Regex" -import type * as Syntax from "@effect/parser/Syntax" +import { Chunk, Either, Option, Tuple } from "effect" +import type { LazyArg } from "effect/Function" +import { dual, pipe } from "effect/Function" +import { pipeArguments } from "effect/Pipeable" +import type { Predicate } from "effect/Predicate" +import type * as Parser from "./../Parser.js" +import type * as ParserError from "./../ParserError.js" +import type * as Printer from "./../Printer.js" +import type * as Regex from "./../Regex.js" +import type * as Syntax from "./../Syntax.js" +import * as InternalParser from "./parser.js" +import * as InternalPrinter from "./printer.js" +import * as InternalRegex from "./regex.js" /** @internal */ -const SyntaxSymbolKey = "@effect/Syntax/Syntax" - -/** @internal */ -export const SyntaxTypeId: Syntax.SyntaxTypeId = Symbol.for( - SyntaxSymbolKey -) as Syntax.SyntaxTypeId +export const TypeId: Syntax.TypeId = Symbol.for("@effect/parser/Syntax") as Syntax.TypeId /** @internal */ const proto = { - [SyntaxTypeId]: { + [TypeId]: { _Input: (_: unknown) => _, _Error: (_: never) => _, _Output: (_: never) => _, _Value: (_: never) => _ + }, + pipe() { + return pipeArguments(this, arguments) } } @@ -45,7 +41,7 @@ const make = ( /** @internal */ export const anything = (): Syntax.Syntax => - make(_parser.anything(), _printer.anything()) + make(InternalParser.anything(), InternalPrinter.anything()) /** @internal */ export const asPrinted = dual< @@ -62,8 +58,8 @@ export const asPrinted = dual< ) => Syntax.Syntax >(3, (self, value, from) => make( - _parser.as(self.parser, value), - _printer.asPrinted(self.printer, value, from) + InternalParser.as(self.parser, value), + InternalPrinter.asPrinted(self.printer, value, from) )) /** @internal */ @@ -94,26 +90,26 @@ export const asUnit = dual< /** @internal */ export const succeed = (value: Value): Syntax.Syntax => - make(_parser.succeed(value), _printer.succeed(value)) + make(InternalParser.succeed(value), InternalPrinter.succeed(value)) /** @internal */ export const unit = (): Syntax.Syntax => succeed(void 0) /** @internal */ export const fail = (error: Error): Syntax.Syntax => - make(_parser.fail(error), _printer.fail(error)) + make(InternalParser.fail(error), InternalPrinter.fail(error)) /** @internal */ export const optional = ( self: Syntax.Syntax ): Syntax.Syntax> => - make(_parser.optional(self.parser), _printer.optional(self.printer)) + make(InternalParser.optional(self.parser), InternalPrinter.optional(self.printer)) /** @internal */ export const suspend = ( self: LazyArg> ): Syntax.Syntax => - make(_parser.suspend(() => self().parser), _printer.suspend(() => self().printer)) + make(InternalParser.suspend(() => self().parser), InternalPrinter.suspend(() => self().printer)) /** @internal */ export const orElse = dual< @@ -128,8 +124,8 @@ export const orElse = dual< ) => Syntax.Syntax >(2, (self, that) => make( - _parser.orElse(self.parser, () => that().parser), - _printer.orElse(self.printer, () => that().printer) + InternalParser.orElse(self.parser, () => that().parser), + InternalPrinter.orElse(self.printer, () => that().printer) )) /** @internal */ @@ -145,8 +141,8 @@ export const orElseEither = dual< ) => Syntax.Syntax> >(2, (self, that) => make( - _parser.orElseEither(self.parser, () => that().parser), - _printer.orElseEither(self.printer, () => that().printer) + InternalParser.orElseEither(self.parser, () => that().parser), + InternalPrinter.orElseEither(self.printer, () => that().printer) )) /** @internal */ @@ -164,8 +160,8 @@ export const transform = dual< ) => Syntax.Syntax >(3, (self, to, from) => make( - _parser.map(self.parser, to), - _printer.contramap(self.printer, from) + InternalParser.map(self.parser, to), + InternalPrinter.contramap(self.printer, from) )) /** @internal */ @@ -183,8 +179,8 @@ export const transformEither = dual< ) => Syntax.Syntax >(3, (self, to, from) => make( - _parser.transformEither(self.parser, to), - _printer.contramapEither(self.printer, from) + InternalParser.transformEither(self.parser, to), + InternalPrinter.contramapEither(self.printer, from) )) /** @internal */ @@ -202,7 +198,7 @@ export const transformOption = dual< ) => Syntax.Syntax, Output, Value2> >(3, (self, to, from) => make( - _parser.transformEither( + InternalParser.transformEither( self.parser, (value) => Option.match(to(value), { @@ -210,7 +206,7 @@ export const transformOption = dual< onSome: Either.right }) ), - _printer.contramapEither( + InternalPrinter.contramapEither( self.printer, (value) => Option.match(from(value), { @@ -279,7 +275,7 @@ export const filter = dual< export const filterChar = ( predicate: Predicate, error: Error -): Syntax.Syntax => regexChar(_regex.filter(predicate), error) +): Syntax.Syntax => regexChar(InternalRegex.filter(predicate), error) /** @internal */ export const flatten = ( @@ -304,8 +300,8 @@ export const mapError = dual< ) => Syntax.Syntax >(2, (self, f) => make( - _parser.mapError(self.parser, f), - _printer.mapError(self.printer, f) + InternalParser.mapError(self.parser, f), + InternalPrinter.mapError(self.printer, f) )) /** @internal */ @@ -321,8 +317,8 @@ export const zip = dual< ) => Syntax.Syntax >(2, (self, that) => make( - _parser.zip(self.parser, that.parser), - _printer.zip(self.printer, that.printer) + InternalParser.zip(self.parser, that.parser), + InternalPrinter.zip(self.printer, that.printer) )) /** @internal */ @@ -338,8 +334,8 @@ export const zipLeft = dual< ) => Syntax.Syntax >(2, (self, that) => make( - _parser.zipLeft(self.parser, that.parser), - _printer.zipLeft(self.printer, that.printer) + InternalParser.zipLeft(self.parser, that.parser), + InternalPrinter.zipLeft(self.printer, that.printer) )) /** @internal */ @@ -355,8 +351,8 @@ export const zipRight = dual< ) => Syntax.Syntax >(2, (self, that) => make( - _parser.zipRight(self.parser, that.parser), - _printer.zipRight(self.printer, that.printer) + InternalParser.zipRight(self.parser, that.parser), + InternalPrinter.zipRight(self.printer, that.printer) )) /** @internal */ @@ -398,19 +394,19 @@ export const repeatMin = dual< self: Syntax.Syntax, min: number ) => Syntax.Syntax> ->(2, (self, min) => make(_parser.repeatMin(self.parser, min), _printer.repeatMin(self.printer, min))) +>(2, (self, min) => make(InternalParser.repeatMin(self.parser, min), InternalPrinter.repeatMin(self.printer, min))) /** @internal */ export const repeatMin0 = ( self: Syntax.Syntax ): Syntax.Syntax> => - make(_parser.repeatMin0(self.parser), _printer.repeatMin0(self.printer)) + make(InternalParser.repeatMin0(self.parser), InternalPrinter.repeatMin0(self.printer)) /** @internal */ export const repeatMin1 = ( self: Syntax.Syntax ): Syntax.Syntax> => - make(_parser.repeatMin1(self.parser), _printer.repeatMin1(self.printer)) + make(InternalParser.repeatMin1(self.parser), InternalPrinter.repeatMin1(self.printer)) /** @internal */ export const repeatMax = dual< @@ -423,7 +419,7 @@ export const repeatMax = dual< self: Syntax.Syntax, max: number ) => Syntax.Syntax> ->(2, (self, max) => make(_parser.repeatMax(self.parser, max), _printer.repeatMin0(self.printer))) +>(2, (self, max) => make(InternalParser.repeatMax(self.parser, max), InternalPrinter.repeatMin0(self.printer))) /** @internal */ export const repeatUntil = dual< @@ -438,8 +434,8 @@ export const repeatUntil = dual< ) => Syntax.Syntax> >(2, (self, stopCondition) => make( - _parser.repeatUntil(self.parser, stopCondition.parser), - _printer.repeatUntil(self.printer, stopCondition.printer) + InternalParser.repeatUntil(self.parser, stopCondition.parser), + InternalPrinter.repeatUntil(self.printer, stopCondition.printer) )) /** @internal */ @@ -465,7 +461,7 @@ export const repeatWithSeparator = dual< (a) => Chunk.isNonEmpty(a) ? Option.some( - tuple( + Tuple.make( Chunk.headNonEmpty(a), Chunk.drop(a, 1) ) @@ -474,8 +470,8 @@ export const repeatWithSeparator = dual< ) )) -type V any } }> = Parameters< - S[Syntax.SyntaxTypeId]["_Value"] +type V any } }> = Parameters< + S[Syntax.TypeId]["_Value"] >[0] /** @internal */ @@ -498,7 +494,7 @@ export const repeatWithSeparator1 = dual< // readonly [Value, readonly Value[]] => => readonly Value[] ([head, tail]) => Chunk.prepend(tail, head) as Chunk.NonEmptyChunk>, (a) => - tuple( + Tuple.make( Chunk.headNonEmpty(a), Chunk.tailNonEmpty(a) ) @@ -517,7 +513,7 @@ export const setAutoBacktracking = dual< ) => Syntax.Syntax >(2, (self, enabled) => make( - _parser.setAutoBacktracking(self.parser, enabled), + InternalParser.setAutoBacktracking(self.parser, enabled), self.printer )) @@ -536,7 +532,7 @@ export const backtrack = ( self: Syntax.Syntax ): Syntax.Syntax => make( - _parser.backtrack(self.parser), + InternalParser.backtrack(self.parser), self.printer ) @@ -545,8 +541,8 @@ export const captureString = ( self: Syntax.Syntax ): Syntax.Syntax => make( - _parser.captureString(self.parser), - _printer.anyString + InternalParser.captureString(self.parser), + InternalPrinter.anyString ) /** @internal */ @@ -554,11 +550,11 @@ export const regex = ( regex: Regex.Regex, error: Error ): Syntax.Syntax> => - make(_parser.regex(regex, error), _printer.regex(regex, error)) + make(InternalParser.regex(regex, error), InternalPrinter.regex(regex, error)) /** @internal */ export const regexChar = (regex: Regex.Regex, error: Error): Syntax.Syntax => - make(_parser.regexChar(regex, error), _printer.regexChar(regex, error)) + make(InternalParser.regexChar(regex, error), InternalPrinter.regexChar(regex, error)) /** @internal */ export const regexDiscard = ( @@ -566,66 +562,69 @@ export const regexDiscard = ( error: Error, chars: Iterable ): Syntax.Syntax => - make(_parser.regexDiscard(regex, error), _printer.regexDiscard(regex, chars)) + make(InternalParser.regexDiscard(regex, error), InternalPrinter.regexDiscard(regex, chars)) /** @internal */ export const char = (char: string, error?: Error): Syntax.Syntax => - regexDiscard(_regex.charIn([char]), error ?? (`not '${char}'` as any), [char]) + regexDiscard(InternalRegex.charIn([char]), error ?? (`not '${char}'` as any), [char]) /** @internal */ export const charNot = (char: string, error: Error): Syntax.Syntax => - regexChar(_regex.charNotIn([char]), error) + regexChar(InternalRegex.charNotIn([char]), error) /** @internal */ export const charIn = (chars: Iterable): Syntax.Syntax => - regexChar(_regex.charIn(chars), `not one of the expected characters (${Array.from(chars).join(", ")})`) + regexChar(InternalRegex.charIn(chars), `not one of the expected characters (${Array.from(chars).join(", ")})`) /** @internal */ export const charNotIn = (chars: Iterable): Syntax.Syntax => - regexChar(_regex.charNotIn(chars), `one of the unexpected characters (${Array.from(chars).join(", ")})`) + regexChar(InternalRegex.charNotIn(chars), `one of the unexpected characters (${Array.from(chars).join(", ")})`) /** @internal */ export const string = (str: string, value: Value): Syntax.Syntax => - asPrinted(regexDiscard(_regex.string(str), `not '${str}'`, str.split("")), value, void 0) + asPrinted(regexDiscard(InternalRegex.string(str), `not '${str}'`, str.split("")), value, void 0) /** @internal */ -export const digit: Syntax.Syntax = regexChar(_regex.anyDigit, "not a digit") +export const digit: Syntax.Syntax = regexChar(InternalRegex.anyDigit, "not a digit") /** @internal */ -export const letter: Syntax.Syntax = regexChar(_regex.anyLetter, "not a letter") +export const letter: Syntax.Syntax = regexChar(InternalRegex.anyLetter, "not a letter") /** @internal */ export const alphaNumeric: Syntax.Syntax = regexChar( - _regex.anyAlphaNumeric, + InternalRegex.anyAlphaNumeric, "not alphanumeric" ) /** @internal */ export const whitespace: Syntax.Syntax = regexChar( - _regex.anyWhitespace, + InternalRegex.anyWhitespace, "not a whitespace character" ) /** @internal */ export const unsafeRegex = (regex: Regex.Regex): Syntax.Syntax> => - make(_parser.unsafeRegex(regex), _printer.unsafeRegex(regex)) + make(InternalParser.unsafeRegex(regex), InternalPrinter.unsafeRegex(regex)) /** @internal */ export const unsafeRegexChar = (regex: Regex.Regex): Syntax.Syntax => - make(_parser.unsafeRegexChar(regex), _printer.unsafeRegexChar(regex)) + make(InternalParser.unsafeRegexChar(regex), InternalPrinter.unsafeRegexChar(regex)) /** @internal */ export const unsafeRegexDiscard = ( regex: Regex.Regex, chars: Iterable ): Syntax.Syntax => - make(_parser.unsafeRegexDiscard(regex), _printer.regexDiscard(regex, chars)) + make(InternalParser.unsafeRegexDiscard(regex), InternalPrinter.regexDiscard(regex, chars)) /** @internal */ -export const anyChar: Syntax.Syntax = unsafeRegexChar(_regex.anyChar) +export const anyChar: Syntax.Syntax = unsafeRegexChar(InternalRegex.anyChar) /** @internal */ -export const anyString: Syntax.Syntax = make(_parser.anyString, _printer.anyString) +export const anyString: Syntax.Syntax = make( + InternalParser.anyString, + InternalPrinter.anyString +) /** @internal */ export const named = dual< @@ -638,7 +637,7 @@ export const named = dual< self: Syntax.Syntax, name: string ) => Syntax.Syntax ->(2, (self, name) => make(_parser.named(self.parser, name), self.printer)) +>(2, (self, name) => make(InternalParser.named(self.parser, name), self.printer)) /** @internal */ export const not = dual< @@ -651,13 +650,16 @@ export const not = dual< self: Syntax.Syntax, error: Error2 ) => Syntax.Syntax ->(2, (self, error) => make(_parser.not(self.parser, error), _printer.unit())) +>(2, (self, error) => make(InternalParser.not(self.parser, error), InternalPrinter.unit())) /** @internal */ -export const index: Syntax.Syntax = make(_parser.index, _printer.succeed(0)) +export const index: Syntax.Syntax = make( + InternalParser.index, + InternalPrinter.succeed(0) +) /** @internal */ -export const end: Syntax.Syntax = make(_parser.end, _printer.succeed(void 0)) +export const end: Syntax.Syntax = make(InternalParser.end, InternalPrinter.succeed(void 0)) /** @internal */ export const parseString = dual< @@ -670,7 +672,7 @@ export const parseString = dual< self: Syntax.Syntax, input: string ) => Either.Either, Value> ->(2, (self, input) => _parser.parseString(self.parser, input)) +>(2, (self, input) => InternalParser.parseString(self.parser, input)) /** @internal */ export const parseStringWith = dual< @@ -685,7 +687,7 @@ export const parseStringWith = dual< input: string, implementation: Parser.Parser.Implementation ) => Either.Either, Value> ->(3, (self, input, implementation) => _parser.parseStringWith(self.parser, input, implementation)) +>(3, (self, input, implementation) => InternalParser.parseStringWith(self.parser, input, implementation)) /** @internal */ export const printString = dual< @@ -698,4 +700,4 @@ export const printString = dual< self: Syntax.Syntax, value: Value ) => Either.Either ->(2, (self, value) => _printer.printToString(self.printer, value)) +>(2, (self, value) => InternalPrinter.printToString(self.printer, value)) diff --git a/test/Parser.ts b/test/Parser.test.ts similarity index 98% rename from test/Parser.ts rename to test/Parser.test.ts index e4b880d..0683b74 100644 --- a/test/Parser.ts +++ b/test/Parser.test.ts @@ -1,11 +1,7 @@ -import * as Chunk from "@effect/data/Chunk" -import * as Either from "@effect/data/Either" -import { pipe } from "@effect/data/Function" -import * as List from "@effect/data/List" -import * as Option from "@effect/data/Option" -import * as ReadonlyArray from "@effect/data/ReadonlyArray" import * as ParserError from "@effect/parser/ParserError" import * as Syntax from "@effect/parser/Syntax" +import { Chunk, Either, List, Option, ReadonlyArray } from "effect" +import { pipe } from "effect/Function" import { describe, expect, it } from "vitest" const charA = Syntax.as(Syntax.char("a"), "a") diff --git a/test/Printer.ts b/test/Printer.test.ts similarity index 96% rename from test/Printer.ts rename to test/Printer.test.ts index b0d5ba7..7e354bc 100644 --- a/test/Printer.ts +++ b/test/Printer.test.ts @@ -1,10 +1,7 @@ -import * as Chunk from "@effect/data/Chunk" -import * as Either from "@effect/data/Either" -import { pipe } from "@effect/data/Function" -import * as Option from "@effect/data/Option" -import * as ReadonlyArray from "@effect/data/ReadonlyArray" import * as Printer from "@effect/parser/Printer" import * as Syntax from "@effect/parser/Syntax" +import { Chunk, Either, Option, ReadonlyArray } from "effect" +import { pipe } from "effect/Function" import { describe, expect, it } from "vitest" const charA: Syntax.Syntax = Syntax.charIn("a") diff --git a/test/Regex.ts b/test/Regex.test.ts similarity index 98% rename from test/Regex.ts rename to test/Regex.test.ts index 8594c8c..4e2f7c4 100644 --- a/test/Regex.ts +++ b/test/Regex.test.ts @@ -1,7 +1,7 @@ -import { pipe } from "@effect/data/Function" -import type { Predicate } from "@effect/data/Predicate" -import * as ReadonlyArray from "@effect/data/ReadonlyArray" import * as Regex from "@effect/parser/Regex" +import { ReadonlyArray } from "effect" +import { pipe } from "effect/Function" +import type { Predicate } from "effect/Predicate" import * as fc from "fast-check" import { describe, expect, it } from "vitest" diff --git a/test/examples/email.ts b/test/examples/email.test.ts similarity index 87% rename from test/examples/email.ts rename to test/examples/email.test.ts index f3f751a..3e5aea5 100644 --- a/test/examples/email.ts +++ b/test/examples/email.test.ts @@ -1,7 +1,7 @@ -import * as Either from "@effect/data/Either" -import { pipe } from "@effect/data/Function" import * as Syntax from "@effect/parser/Syntax" import { tests } from "@effect/parser/test/examples/utils" +import { Either } from "effect" +import { pipe } from "effect/Function" const segment = pipe( Syntax.charNotIn(["@", " ", "\t", "\r", "\n"]), diff --git a/test/examples/ipv4.test.ts b/test/examples/ipv4.test.ts new file mode 100644 index 0000000..c372320 --- /dev/null +++ b/test/examples/ipv4.test.ts @@ -0,0 +1,73 @@ +import * as Syntax from "@effect/parser/Syntax" +import { tests } from "@effect/parser/test/examples/utils" +import { Either } from "effect" +import { pipe } from "effect/Function" + +const octet = pipe( + // 250-255 + pipe( + Syntax.charIn("2"), + Syntax.zip(Syntax.charIn("5")), + Syntax.zip(Syntax.charIn(["0", "1", "2", "3", "4", "5"])), + Syntax.captureString + ), + // 200-249 + Syntax.orElse(() => + pipe( + Syntax.charIn("2"), + Syntax.zip(Syntax.charIn(["0", "1", "2", "3", "4"])), + Syntax.zip(Syntax.charIn(["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"])), + Syntax.captureString + ) + ), + // 000-199 + Syntax.orElse(() => + pipe( + Syntax.charIn(["0", "1"]), + Syntax.zip(Syntax.charIn(["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"])), + Syntax.zip(Syntax.charIn(["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"])), + Syntax.captureString + ) + ), + // 00-99 + Syntax.orElse(() => + pipe( + Syntax.charIn(["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"]), + Syntax.zip(Syntax.charIn(["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"])), + Syntax.captureString + ) + ), + // 0-9 + Syntax.orElse(() => + pipe( + Syntax.charIn(["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"]), + Syntax.captureString + ) + ) +) + +tests( + "octet", + octet, + "1", + Either.right("1"), + Either.right("1") +) + +const ipv4 = pipe( + octet, + Syntax.zipLeft(Syntax.char(".")), + Syntax.zip(octet), + Syntax.zipLeft(Syntax.char(".")), + Syntax.zip(octet), + Syntax.zipLeft(Syntax.char(".")), + Syntax.zip(octet) +) + +tests( + "ipv4", + ipv4, + "192.168.1.1", + Either.right([[["192", "168"], "1"], "1"] as const), + Either.right("192.168.1.1") +) diff --git a/test/examples/ipv6.test.ts b/test/examples/ipv6.test.ts new file mode 100644 index 0000000..943f761 --- /dev/null +++ b/test/examples/ipv6.test.ts @@ -0,0 +1,74 @@ +import * as Syntax from "@effect/parser/Syntax" +import { tests } from "@effect/parser/test/examples/utils" +import { Either } from "effect" +import { pipe } from "effect/Function" + +// [0-9a-fA-F] +const hexadecimalDigit = Syntax.charIn([ + "0", + "1", + "2", + "3", + "4", + "5", + "6", + "7", + "8", + "9", + "A", + "B", + "C", + "D", + "E", + "F", + "a", + "b", + "c", + "d", + "e", + "f" +]) + +// [0-9a-fA-F]{1,4} +const hextet = pipe( + hexadecimalDigit, + Syntax.zip(Syntax.optional(hexadecimalDigit)), + Syntax.zip(Syntax.optional(hexadecimalDigit)), + Syntax.zip(Syntax.optional(hexadecimalDigit)), + Syntax.captureString +) + +tests( + "hextet", + hextet, + "0db8", + Either.right("0db8"), + Either.right("0db8") +) + +// ([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4} +export const ipv6 = pipe( + hextet, + Syntax.zipLeft(Syntax.char(":")), + Syntax.zip(hextet), + Syntax.zipLeft(Syntax.char(":")), + Syntax.zip(hextet), + Syntax.zipLeft(Syntax.char(":")), + Syntax.zip(hextet), + Syntax.zipLeft(Syntax.char(":")), + Syntax.zip(hextet), + Syntax.zipLeft(Syntax.char(":")), + Syntax.zip(hextet), + Syntax.zipLeft(Syntax.char(":")), + Syntax.zip(hextet), + Syntax.zipLeft(Syntax.char(":")), + Syntax.zip(hextet) +) + +tests( + "ipv6", + ipv6, + "2001:0db8:85a3:0000:0000:8a2e:0370:7334", + Either.right([[[[[[["2001", "0db8"], "85a3"], "0000"], "0000"], "8a2e"], "0370"], "7334"] as const), + Either.right("2001:0db8:85a3:0000:0000:8a2e:0370:7334") +) diff --git a/test/examples/json.ts b/test/examples/json.test.ts similarity index 95% rename from test/examples/json.ts rename to test/examples/json.test.ts index 3b489c9..1a6f254 100644 --- a/test/examples/json.ts +++ b/test/examples/json.test.ts @@ -1,9 +1,7 @@ -import * as Chunk from "@effect/data/Chunk" -import * as Either from "@effect/data/Either" -import { pipe } from "@effect/data/Function" -import * as Option from "@effect/data/Option" import * as Syntax from "@effect/parser/Syntax" -import { hexDigit, tests } from "./utils" +import { Chunk, Either, Option } from "effect" +import { pipe } from "effect/Function" +import { hexDigit, tests } from "./utils.js" const whitespace = pipe( Syntax.charIn([" ", "\n", "\r", "\t"]), @@ -41,7 +39,7 @@ const number = pipe( tests("number", number, "-12.782E-2", Either.right(-0.12782)) const hexToDecimal = pipe( - pipe(hexDigit, Syntax.repeat1, Syntax.flattenNonEmpty), + pipe(hexDigit, Syntax.atMost(4), Syntax.flatten), Syntax.transform( (to) => parseInt(to, 16), (from) => from.toString(16) diff --git a/test/examples/url.ts b/test/examples/url.test.ts similarity index 95% rename from test/examples/url.ts rename to test/examples/url.test.ts index 2e75541..a53ff5d 100644 --- a/test/examples/url.ts +++ b/test/examples/url.test.ts @@ -1,9 +1,7 @@ -import * as Chunk from "@effect/data/Chunk" -import * as Either from "@effect/data/Either" -import { pipe } from "@effect/data/Function" -import * as Option from "@effect/data/Option" import * as Syntax from "@effect/parser/Syntax" import { tests } from "@effect/parser/test/examples/utils" +import { Chunk, Either, Option } from "effect" +import { pipe } from "effect/Function" // TODO: percent encoding ie replacing spaces " " with "%20" diff --git a/test/examples/utils.ts b/test/examples/utils.ts index cb11b1b..ac9247a 100644 --- a/test/examples/utils.ts +++ b/test/examples/utils.ts @@ -1,7 +1,8 @@ -import * as Either from "@effect/data/Either" -import { pipe } from "@effect/data/Function" import type * as ParserError from "@effect/parser/ParserError" import * as Syntax from "@effect/parser/Syntax" +import { Either } from "effect" +import { pipe } from "effect/Function" +import { expect, it } from "vitest" export const tests = ( name: string, diff --git a/test/examples/xml.ts b/test/examples/xml.test.ts similarity index 82% rename from test/examples/xml.ts rename to test/examples/xml.test.ts index 754ad51..793ea34 100644 --- a/test/examples/xml.ts +++ b/test/examples/xml.test.ts @@ -1,9 +1,7 @@ -import * as Chunk from "@effect/data/Chunk" -import * as E from "@effect/data/Either" -import { pipe } from "@effect/data/Function" -import * as Option from "@effect/data/Option" -import * as RA from "@effect/data/ReadonlyArray" import * as Syntax from "@effect/parser/Syntax" +import { Chunk, Either, Option, ReadonlyArray } from "effect" +import { pipe } from "effect/Function" +import { expect, it } from "vitest" // Parses XML without prolog and namespaces @@ -59,7 +57,7 @@ const tagLabelNextLetters = pipe( const tagLabel = pipe( tagLabelFirstLetter, Syntax.zip(tagLabelNextLetters), - Syntax.transform(RA.join(""), (from) => [from[0], from.slice(1)] as const) + Syntax.transform(ReadonlyArray.join(""), (from) => [from[0], from.slice(1)] as const) ) interface XmlAttribute { @@ -134,23 +132,23 @@ const xmlNode: Syntax.Syntax = pipe( Syntax.transformEither( (to) => to[0][0][0] !== to[1] - ? E.left(`Closing tag "${to[1]}" does not match with opening tag "${to[0][0][0]}"`) - : E.right({ + ? Either.left(`Closing tag "${to[1]}" does not match with opening tag "${to[0][0][0]}"`) + : Either.right({ name: to[0][0][0], attributes: to[0][0][1], - children: pipe(to[0][1], Chunk.filterMap(E.getLeft), Chunk.toReadonlyArray), - values: pipe(to[0][1], Chunk.filterMap(E.getRight), Chunk.toReadonlyArray) + children: pipe(to[0][1], Chunk.filterMap(Either.getLeft), Chunk.toReadonlyArray), + values: pipe(to[0][1], Chunk.filterMap(Either.getRight), Chunk.toReadonlyArray) } as XmlNode), (from) => - E.right( + Either.right( [ [ [from.name, from.attributes] as const, pipe( from.children, - RA.map(E.left), + ReadonlyArray.map(Either.left), Chunk.fromIterable, - (cs) => Chunk.appendAll(cs, pipe(from.values, RA.map(E.right), Chunk.fromIterable)) + (cs) => Chunk.appendAll(cs, pipe(from.values, ReadonlyArray.map(Either.right), Chunk.fromIterable)) ) ] as const, from.name @@ -168,17 +166,17 @@ it("tag: label and attributes - recursive", () => { "recursive" ) ) - expect(result).toEqual(E.right(["element", [ + expect(result).toEqual(Either.right(["element", [ { name: "one", value: "1" }, { name: "two", value: "2" }, { name: "three", value: "'hello'" }, { name: "four", value: "\"world\"" }, { name: "five", value: "" } ]])) - if (E.isRight(result)) { + if (Either.isRight(result)) { const result1 = pipe(tag, Syntax.printString(result.right)) expect(result1).toEqual( - E.right(`element one="1" two="2" three="'hello'" four="'world'" five=""`) + Either.right(`element one="1" two="2" three="'hello'" four="'world'" five=""`) ) } }) @@ -192,18 +190,18 @@ it("tag: label only - recursive", () => { ) ) expect(result).toEqual( - E.right(["element", []]) + Either.right(["element", []]) ) - if (E.isRight(result)) { + if (Either.isRight(result)) { const result1 = pipe(tag, Syntax.printString(result.right)) - expect(result1).toEqual(E.right("element ")) // TODO: How to deal with optional whitespace + expect(result1).toEqual(Either.right("element ")) // TODO: How to deal with optional whitespace } }) it("xml - recursive", () => { const input = "u " const result = pipe(xmlNode, Syntax.parseStringWith(input, "recursive")) - expect(result).toEqual(E.right({ + expect(result).toEqual(Either.right({ name: "ROOT", attributes: [ { name: "one", value: "1" } @@ -224,10 +222,10 @@ it("xml - recursive", () => { ], values: [] })) - if (E.isRight(result)) { + if (Either.isRight(result)) { const result1 = pipe(xmlNode, Syntax.printString(result.right)) expect(result1).toEqual( - E.right("u") + Either.right("u") ) } }) diff --git a/tsconfig.base.json b/tsconfig.base.json index c4e466d..1961244 100644 --- a/tsconfig.base.json +++ b/tsconfig.base.json @@ -1,23 +1,25 @@ { + "include": [], "compilerOptions": { + "strict": true, "moduleDetection": "force", "composite": true, "downlevelIteration": true, "resolveJsonModule": true, - "esModuleInterop": true, + "esModuleInterop": false, "declaration": true, "skipLibCheck": true, "emitDecoratorMetadata": true, "experimentalDecorators": true, - "preserveSymlinks": true, - "moduleResolution": "node", - "noEmit": false, + "moduleResolution": "NodeNext", "lib": [ - "ES2021" + "ES2022", + "DOM", + "DOM.Iterable" ], + "isolatedModules": true, "sourceMap": true, "declarationMap": true, - "strict": true, "noImplicitReturns": false, "noUnusedLocals": true, "noUnusedParameters": false, @@ -27,43 +29,30 @@ "allowJs": false, "checkJs": false, "forceConsistentCasingInFileNames": true, - "stripInternal": true, "noImplicitAny": true, "noImplicitThis": true, "noUncheckedIndexedAccess": false, "strictNullChecks": true, "baseUrl": ".", - "target": "ES2021", - "module": "ES6", + "target": "ES2022", + "module": "NodeNext", "incremental": true, "removeComments": false, "paths": { - "@effect/parser": [ - "./src/index.ts" - ], "@effect/parser/test/*": [ - "./test/*" - ], - "@effect/parser/examples/*": [ - "./examples/*" + "./test/*.js" ], "@effect/parser/*": [ - "./src/*" + "./src/*.js" + ], + "@effect/parser": [ + "./src/index.js" ] }, "plugins": [ { - "name": "@effect/language-service", - "diagnostics": { - "1002": "none" - } + "name": "@effect/language-service" } ] - }, - "include": [], - "exclude": [ - "node_modules", - "build", - "lib" - ] + } } diff --git a/tsconfig.build.json b/tsconfig.build.json index d419398..e3c415a 100644 --- a/tsconfig.build.json +++ b/tsconfig.build.json @@ -1,10 +1,9 @@ { - "extends": "./tsconfig.base.json", + "extends": "./tsconfig.src.json", "compilerOptions": { + "tsBuildInfoFile": ".tsbuildinfo/build.tsbuildinfo", "outDir": "build/esm", "declarationDir": "build/dts", - "tsBuildInfoFile": "build/tsbuildinfo/esm.tsbuildinfo", - "rootDir": "src" - }, - "include": ["src/**/*.ts"] + "stripInternal": true + } } diff --git a/tsconfig.examples.json b/tsconfig.examples.json index ddaf46b..0f461a8 100644 --- a/tsconfig.examples.json +++ b/tsconfig.examples.json @@ -1,11 +1,16 @@ { "extends": "./tsconfig.base.json", + "include": [ + "examples", + ], + "references": [ + { + "path": "./tsconfig.src.json" + } + ], "compilerOptions": { - "tsBuildInfoFile": "build/tsbuildinfo/examples.tsbuildinfo", + "tsBuildInfoFile": ".tsbuildinfo/examples.tsbuildinfo", "rootDir": "examples", - "module": "CommonJS", - "outDir": "build/examples" - }, - "include": ["examples/**/*.ts"], - "references": [{ "path": "./tsconfig.build.json" }] + "noEmit": true + } } diff --git a/tsconfig.json b/tsconfig.json index 2f3b34e..00da6c5 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,8 +1,14 @@ { "extends": "./tsconfig.base.json", "references": [ - { "path": "./tsconfig.build.json" }, - { "path": "./tsconfig.test.json" }, - { "path": "./tsconfig.examples.json" } + { + "path": "./tsconfig.src.json" + }, + { + "path": "./tsconfig.test.json" + }, + { + "path": "./tsconfig.examples.json" + } ] } diff --git a/tsconfig.madge.json b/tsconfig.madge.json deleted file mode 100644 index 46210c7..0000000 --- a/tsconfig.madge.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "compilerOptions": { - "noEmit": true, - "allowJs": true, - "baseUrl": ".", - "paths": { - "@effect/parser": ["./build/esm/index.js"], - "@effect/parser/*": ["./build/esm/*"] - } - }, - "include": ["./build/esm/**/*.js"] -} diff --git a/tsconfig.src.json b/tsconfig.src.json new file mode 100644 index 0000000..b85ae3e --- /dev/null +++ b/tsconfig.src.json @@ -0,0 +1,11 @@ +{ + "extends": "./tsconfig.base.json", + "include": [ + "src" + ], + "compilerOptions": { + "outDir": "build/src", + "tsBuildInfoFile": ".tsbuildinfo/src.tsbuildinfo", + "rootDir": "src" + } +} diff --git a/tsconfig.test.json b/tsconfig.test.json index 2e7dd90..ef1fde5 100644 --- a/tsconfig.test.json +++ b/tsconfig.test.json @@ -1,10 +1,16 @@ { "extends": "./tsconfig.base.json", + "include": [ + "test", + ], + "references": [ + { + "path": "./tsconfig.src.json" + } + ], "compilerOptions": { - "tsBuildInfoFile": "build/tsbuildinfo/test.tsbuildinfo", - "rootDir": "./", - "noEmit": true, - "types": ["vitest/globals", "node"] - }, - "include": ["test/**/*.ts", "src/**/*.ts"] + "tsBuildInfoFile": ".tsbuildinfo/test.tsbuildinfo", + "rootDir": "test", + "noEmit": true + } } diff --git a/vitest.config.ts b/vitest.config.ts index 5edd347..1a844d8 100644 --- a/vitest.config.ts +++ b/vitest.config.ts @@ -1,18 +1,10 @@ /// - -import babel from "@vitejs/plugin-react" -import path from "path" -import { defineConfig } from "vite" - -// eslint-disable-next-line @typescript-eslint/no-var-requires -const babelConfig = require("./.babel.mjs.json") +import * as path from "node:path" +import { defineConfig } from "vitest/config" export default defineConfig({ - plugins: [babel({ babel: babelConfig })], test: { - include: ["./test/**/*.{js,mjs,cjs,ts,mts,cts,jsx,tsx}"], - exclude: ["./test/utils/**/*.ts", "./test/**/*.init.ts"], - globals: true + include: ["./test/**/*.test.ts"] }, resolve: { alias: {