From f493b4c7004b9a84c2477fc455cf69964215ff8b Mon Sep 17 00:00:00 2001 From: Joe Hildebrand Date: Thu, 17 Oct 2024 11:49:34 -0600 Subject: [PATCH] Update to TypeScript 5.6. Begin generating .d.ts for parser.js. --- .ncurc.cjs | 1 - eslint.config.mjs | 1 + lib/parser.d.ts | 214 +++++++++++++++++++++++++++ package.json | 16 +- pnpm-lock.yaml | 336 +++++++++++++++++++++--------------------- src/opts.mjs | 2 +- web-test/package.json | 4 +- 7 files changed, 394 insertions(+), 180 deletions(-) create mode 100644 lib/parser.d.ts diff --git a/.ncurc.cjs b/.ncurc.cjs index 2d5f457b..daa7e12e 100644 --- a/.ncurc.cjs +++ b/.ncurc.cjs @@ -6,6 +6,5 @@ module.exports = { "chai", // Moved to es6 "@types/chai", // Should match chai, "rimraf", // Requires node 20 - "typescript", // Waiting on typescript-eslint ], }; diff --git a/eslint.config.mjs b/eslint.config.mjs index aa5a4901..a504cafe 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -16,6 +16,7 @@ export default [ "test/cli/fixtures/useFrags/fs.js", // Generated "test/cli/fixtures/useFrags/identifier.js", // Generated "lib/parser.js", // Generated + "lib/parser.d.ts", // Generated "bin/generated_template.d.ts", // Generated ], }, diff --git a/lib/parser.d.ts b/lib/parser.d.ts new file mode 100644 index 00000000..ead2b3ac --- /dev/null +++ b/lib/parser.d.ts @@ -0,0 +1,214 @@ +/** Provides information pointing to a location within a source. */ +export interface Location { + /** Line in the parsed source (1-based). */ + readonly line: number; + /** Column in the parsed source (1-based). */ + readonly column: number; + /** Offset in the parsed source (0-based). */ + readonly offset: number; +} + +/** + * Anything that can successfully be converted to a string with `String()` + * so that it can be used in error messages. + * + * The GrammarLocation class in Peggy is a good example. + */ +export interface GrammarSourceObject { + readonly toString: () => string; + + /** + * If specified, allows the grammar source to be embedded in a larger file + * at some offset. + */ + readonly offset?: undefined | ((loc: Location) => Location); +} + +/** + * Most often, you just use a string with the file name. + */ +export type GrammarSource = string | GrammarSourceObject; + +/** The `start` and `end` position's of an object within the source. */ +export interface LocationRange { + /** + * A string or object that was supplied to the `parse()` call as the + * `grammarSource` option. + */ + readonly source: GrammarSource; + /** Position at the beginning of the expression. */ + readonly start: Location; + /** Position after the end of the expression. */ + readonly end: Location; +} + +/** + * Expected a literal string, like `"foo"i`. + */ +export interface LiteralExpectation { + readonly type: "literal"; + readonly text: string; + readonly ignoreCase: boolean; +} + +/** + * Range of characters, like `a-z` + */ +export type ClassRange = [ + start: string, + end: string, +] + +export interface ClassParts extends Array { +} + +/** + * Expected a class, such as `[^acd-gz]i` + */ +export interface ClassExpectation { + readonly type: "class"; + readonly parts: ClassParts; + readonly inverted: boolean; + readonly ignoreCase: boolean; +} + +/** + * Expected any character, with `.` + */ +export interface AnyExpectation { + readonly type: "any"; +} + +/** + * Expected the end of input. + */ +export interface EndExpectation { + readonly type: "end"; +} + +/** + * Expected some other input. These are specified with a rule's + * "human-readable name", or with the `expected(message, location)` + * function. + */ +export interface OtherExpectation { + readonly type: "other"; + readonly description: string; +} + +export type Expectation = + | AnyExpectation + | ClassExpectation + | EndExpectation + | LiteralExpectation + | OtherExpectation; + +/** + * Pass an array of these into `SyntaxError.prototype.format()` + */ +export interface SourceText { + /** + * Identifier of an input that was used as a grammarSource in parse(). + */ + readonly source: GrammarSource; + /** Source text of the input. */ + readonly text: string; +} + +export declare class SyntaxError extends Error { + /** + * Constructs the human-readable message from the machine representation. + * + * @param expected Array of expected items, generated by the parser + * @param found Any text that will appear as found in the input instead of + * expected + */ + static buildMessage(expected: Expectation[], found?: string | null | undefined): string; + readonly message: string; + readonly expected: Expectation[]; + readonly found: string | null | undefined; + readonly location: LocationRange; + readonly name: string; + constructor( + message: string, + expected: Expectation[], + found: string | null, + location: LocationRange, + ); + + /** + * With good sources, generates a feature-rich error message pointing to the + * error in the input. + * @param sources List of {source, text} objects that map to the input. + */ + format(sources: SourceText[]): string; +} + +/** + * Trace execution of the parser. + */ +export interface ParserTracer { + trace: (event: ParserTracerEvent) => void; +} + +export type ParserTracerEvent + = { + readonly type: "rule.enter"; + readonly rule: string; + readonly location: LocationRange + } + | { + readonly type: "rule.fail"; + readonly rule: string; + readonly location: LocationRange + } + | { + readonly type: "rule.match"; + readonly rule: string; + readonly location: LocationRange + /** Return value from the rule. */ + readonly result: unknown; + }; + +export type StartRuleNames = "Grammar" | "ImportsAndSource"; +export interface ParseOptions { + /** + * String or object that will be attached to the each `LocationRange` object + * created by the parser. For example, this can be path to the parsed file + * or even the File object. + */ + readonly grammarSource?: GrammarSource; + readonly startRule?: T; + readonly tracer?: ParserTracer; + + // Internal use only: + readonly peg$library?: boolean; + // Internal use only: + peg$currPos?: number; + // Internal use only: + peg$silentFails?: number; + // Internal use only: + peg$maxFailExpected?: Expectation[]; + // Extra application-specific properties + [key: string]: unknown; +} + +export declare const StartRules: StartRuleNames[]; +export declare const parse: typeof ParseFunction; + +// Overload of ParseFunction for each allowedStartRule + +declare function ParseFunction>( + input: string, + options?: Options, +): import('./peg.d.ts').ast.Grammar; + +declare function ParseFunction>( + input: string, + options?: Options, +): import('./peg.d.ts').ast.TopLevelInitializer[]; + +declare function ParseFunction>( + input: string, + options?: Options, +): import('./peg.d.ts').ast.Grammar | import('./peg.d.ts').ast.TopLevelInitializer[]; diff --git a/package.json b/package.json index c8a704ce..57ef5129 100644 --- a/package.json +++ b/package.json @@ -57,14 +57,14 @@ }, "devDependencies": { "@peggyjs/eslint-config": "^5.0.0", - "@rollup/plugin-commonjs": "^28.0.0", + "@rollup/plugin-commonjs": "^28.0.1", "@rollup/plugin-json": "^6.1.0", "@rollup/plugin-multi-entry": "^6.0.1", "@rollup/plugin-node-resolve": "^15.3.0", - "@rollup/plugin-typescript": "^12.1.0", + "@rollup/plugin-typescript": "^12.1.1", "@types/chai": "^4.3.11", "@types/jest": "^29.5.13", - "@types/node": "^22.7.5", + "@types/node": "^22.7.6", "chai": "^4.3.11", "chai-like": "^1.1.3", "copyfiles": "^2.4.1", @@ -79,11 +79,11 @@ "rollup": "^4.24.0", "rollup-plugin-ignore": "1.0.10", "source-map": "^0.8.0-beta.0", - "terser": "^5.34.1", + "terser": "^5.36.0", "ts-jest": "^29.2.5", - "tslib": "^2.7.0", - "typescript": "5.5.4", - "typescript-eslint": "8.8.1" + "tslib": "^2.8.0", + "typescript": "5.6.3", + "typescript-eslint": "8.10.0" }, "dependencies": { "@peggyjs/from-mem": "1.3.5", @@ -98,7 +98,7 @@ "browserslist": [ "defaults, maintained node versions, not op_mini all" ], - "packageManager": "pnpm@9.12.1", + "packageManager": "pnpm@9.12.2", "engines": { "node": ">=18" } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3fa239a6..2c818f45 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -23,10 +23,10 @@ importers: devDependencies: '@peggyjs/eslint-config': specifier: ^5.0.0 - version: 5.0.0(eslint@9.12.0)(typescript@5.5.4) + version: 5.0.0(eslint@9.12.0)(typescript@5.6.3) '@rollup/plugin-commonjs': - specifier: ^28.0.0 - version: 28.0.0(rollup@4.24.0) + specifier: ^28.0.1 + version: 28.0.1(rollup@4.24.0) '@rollup/plugin-json': specifier: ^6.1.0 version: 6.1.0(rollup@4.24.0) @@ -37,8 +37,8 @@ importers: specifier: ^15.3.0 version: 15.3.0(rollup@4.24.0) '@rollup/plugin-typescript': - specifier: ^12.1.0 - version: 12.1.0(rollup@4.24.0)(tslib@2.7.0)(typescript@5.5.4) + specifier: ^12.1.1 + version: 12.1.1(rollup@4.24.0)(tslib@2.8.0)(typescript@5.6.3) '@types/chai': specifier: ^4.3.11 version: 4.3.20 @@ -46,8 +46,8 @@ importers: specifier: ^29.5.13 version: 29.5.13 '@types/node': - specifier: ^22.7.5 - version: 22.7.5 + specifier: ^22.7.6 + version: 22.7.6 chai: specifier: ^4.3.11 version: 4.5.0 @@ -74,7 +74,7 @@ importers: version: 11.0.0 jest: specifier: ^29.7.0 - version: 29.7.0(@types/node@22.7.5) + version: 29.7.0(@types/node@22.7.6) package-extract: specifier: 2.3.0 version: 2.3.0 @@ -91,20 +91,20 @@ importers: specifier: ^0.8.0-beta.0 version: 0.8.0-beta.0 terser: - specifier: ^5.34.1 - version: 5.34.1 + specifier: ^5.36.0 + version: 5.36.0 ts-jest: specifier: ^29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@22.7.5))(typescript@5.5.4) + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@22.7.6))(typescript@5.6.3) tslib: - specifier: ^2.7.0 - version: 2.7.0 + specifier: ^2.8.0 + version: 2.8.0 typescript: - specifier: 5.5.4 - version: 5.5.4 + specifier: 5.6.3 + version: 5.6.3 typescript-eslint: - specifier: 8.8.1 - version: 8.8.1(eslint@9.12.0)(typescript@5.5.4) + specifier: 8.10.0 + version: 8.10.0(eslint@9.12.0)(typescript@5.6.3) docs: devDependencies: @@ -117,11 +117,11 @@ importers: web-test: devDependencies: '@playwright/test': - specifier: 1.48.0 - version: 1.48.0 + specifier: 1.48.1 + version: 1.48.1 '@types/node': - specifier: 22.7.5 - version: 22.7.5 + specifier: 22.7.6 + version: 22.7.6 packages: @@ -521,13 +521,13 @@ packages: resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} engines: {node: '>=14'} - '@playwright/test@1.48.0': - resolution: {integrity: sha512-W5lhqPUVPqhtc/ySvZI5Q8X2ztBOUgZ8LbAFy0JQgrXZs2xaILrUcNO3rQjwbLPfGK13+rZsDa1FpG+tqYkT5w==} + '@playwright/test@1.48.1': + resolution: {integrity: sha512-s9RtWoxkOLmRJdw3oFvhFbs9OJS0BzrLUc8Hf6l2UdCNd1rqeEyD4BhCJkvzeEoD1FsK4mirsWwGerhVmYKtZg==} engines: {node: '>=18'} hasBin: true - '@rollup/plugin-commonjs@28.0.0': - resolution: {integrity: sha512-BJcu+a+Mpq476DMXG+hevgPSl56bkUoi88dKT8t3RyUp8kGuOh+2bU8Gs7zXDlu+fyZggnJ+iOBGrb/O1SorYg==} + '@rollup/plugin-commonjs@28.0.1': + resolution: {integrity: sha512-+tNWdlWKbpB3WgBN7ijjYkq9X5uhjmcvyjEght4NmH5fAU++zfQzAJ6wumLS+dNcvwEZhKx2Z+skY8m7v0wGSA==} engines: {node: '>=16.0.0 || 14 >= 14.17'} peerDependencies: rollup: ^2.68.0||^3.0.0||^4.0.0 @@ -562,8 +562,8 @@ packages: rollup: optional: true - '@rollup/plugin-typescript@12.1.0': - resolution: {integrity: sha512-Kzs8KGJofe7cfTRODsnG1jNGxSvU8gVoNNd7Z/QaY25AYwe2LSSUpx/kPxqF38NYkpR8de3m51r9uwJpDlz6dg==} + '@rollup/plugin-typescript@12.1.1': + resolution: {integrity: sha512-t7O653DpfB5MbFrqPe/VcKFFkvRuFNp9qId3xq4Eth5xlyymzxNpye2z8Hrl0RIMuXTSr5GGcFpkdlMeacUiFQ==} engines: {node: '>=14.0.0'} peerDependencies: rollup: ^2.14.0||^3.0.0||^4.0.0 @@ -741,8 +741,8 @@ packages: '@types/ms@0.7.34': resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} - '@types/node@22.7.5': - resolution: {integrity: sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==} + '@types/node@22.7.6': + resolution: {integrity: sha512-/d7Rnj0/ExXDMcioS78/kf1lMzYk4BZV8MZGTBKzTGZ6/406ukkbYlIsZmMPhcR5KlkunDHQLrtAVmSq7r+mSw==} '@types/resolve@1.20.2': resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==} @@ -759,8 +759,8 @@ packages: '@types/yargs@17.0.33': resolution: {integrity: sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==} - '@typescript-eslint/eslint-plugin@8.8.1': - resolution: {integrity: sha512-xfvdgA8AP/vxHgtgU310+WBnLB4uJQ9XdyP17RebG26rLtDrQJV3ZYrcopX91GrHmMoH8bdSwMRh2a//TiJ1jQ==} + '@typescript-eslint/eslint-plugin@8.10.0': + resolution: {integrity: sha512-phuB3hoP7FFKbRXxjl+DRlQDuJqhpOnm5MmtROXyWi3uS/Xg2ZXqiQfcG2BJHiN4QKyzdOJi3NEn/qTnjUlkmQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 @@ -770,8 +770,8 @@ packages: typescript: optional: true - '@typescript-eslint/parser@8.8.1': - resolution: {integrity: sha512-hQUVn2Lij2NAxVFEdvIGxT9gP1tq2yM83m+by3whWFsWC+1y8pxxxHUFE1UqDu2VsGi2i6RLcv4QvouM84U+ow==} + '@typescript-eslint/parser@8.10.0': + resolution: {integrity: sha512-E24l90SxuJhytWJ0pTQydFT46Nk0Z+bsLKo/L8rtQSL93rQ6byd1V/QbDpHUTdLPOMsBCcYXZweADNCfOCmOAg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 @@ -780,16 +780,16 @@ packages: typescript: optional: true - '@typescript-eslint/scope-manager@8.8.0': - resolution: {integrity: sha512-EL8eaGC6gx3jDd8GwEFEV091210U97J0jeEHrAYvIYosmEGet4wJ+g0SYmLu+oRiAwbSA5AVrt6DxLHfdd+bUg==} + '@typescript-eslint/scope-manager@8.10.0': + resolution: {integrity: sha512-AgCaEjhfql9MDKjMUxWvH7HjLeBqMCBfIaBbzzIcBbQPZE7CPh1m6FF+L75NUMJFMLYhCywJXIDEMa3//1A0dw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/scope-manager@8.8.1': - resolution: {integrity: sha512-X4JdU+66Mazev/J0gfXlcC/dV6JI37h+93W9BRYXrSn0hrE64IoWgVkO9MSJgEzoWkxONgaQpICWg8vAN74wlA==} + '@typescript-eslint/scope-manager@8.8.0': + resolution: {integrity: sha512-EL8eaGC6gx3jDd8GwEFEV091210U97J0jeEHrAYvIYosmEGet4wJ+g0SYmLu+oRiAwbSA5AVrt6DxLHfdd+bUg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/type-utils@8.8.1': - resolution: {integrity: sha512-qSVnpcbLP8CALORf0za+vjLYj1Wp8HSoiI8zYU5tHxRVj30702Z1Yw4cLwfNKhTPWp5+P+k1pjmD5Zd1nhxiZA==} + '@typescript-eslint/type-utils@8.10.0': + resolution: {integrity: sha512-PCpUOpyQSpxBn230yIcK+LeCQaXuxrgCm2Zk1S+PTIRJsEfU6nJ0TtwyH8pIwPK/vJoA+7TZtzyAJSGBz+s/dg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '*' @@ -797,16 +797,16 @@ packages: typescript: optional: true - '@typescript-eslint/types@8.8.0': - resolution: {integrity: sha512-QJwc50hRCgBd/k12sTykOJbESe1RrzmX6COk8Y525C9l7oweZ+1lw9JiU56im7Amm8swlz00DRIlxMYLizr2Vw==} + '@typescript-eslint/types@8.10.0': + resolution: {integrity: sha512-k/E48uzsfJCRRbGLapdZgrX52csmWJ2rcowwPvOZ8lwPUv3xW6CcFeJAXgx4uJm+Ge4+a4tFOkdYvSpxhRhg1w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/types@8.8.1': - resolution: {integrity: sha512-WCcTP4SDXzMd23N27u66zTKMuEevH4uzU8C9jf0RO4E04yVHgQgW+r+TeVTNnO1KIfrL8ebgVVYYMMO3+jC55Q==} + '@typescript-eslint/types@8.8.0': + resolution: {integrity: sha512-QJwc50hRCgBd/k12sTykOJbESe1RrzmX6COk8Y525C9l7oweZ+1lw9JiU56im7Amm8swlz00DRIlxMYLizr2Vw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/typescript-estree@8.8.0': - resolution: {integrity: sha512-ZaMJwc/0ckLz5DaAZ+pNLmHv8AMVGtfWxZe/x2JVEkD5LnmhWiQMMcYT7IY7gkdJuzJ9P14fRy28lUrlDSWYdw==} + '@typescript-eslint/typescript-estree@8.10.0': + resolution: {integrity: sha512-3OE0nlcOHaMvQ8Xu5gAfME3/tWVDpb/HxtpUZ1WeOAksZ/h/gwrBzCklaGzwZT97/lBbbxJ16dMA98JMEngW4w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '*' @@ -814,8 +814,8 @@ packages: typescript: optional: true - '@typescript-eslint/typescript-estree@8.8.1': - resolution: {integrity: sha512-A5d1R9p+X+1js4JogdNilDuuq+EHZdsH9MjTVxXOdVFfTJXunKJR/v+fNNyO4TnoOn5HqobzfRlc70NC6HTcdg==} + '@typescript-eslint/typescript-estree@8.8.0': + resolution: {integrity: sha512-ZaMJwc/0ckLz5DaAZ+pNLmHv8AMVGtfWxZe/x2JVEkD5LnmhWiQMMcYT7IY7gkdJuzJ9P14fRy28lUrlDSWYdw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '*' @@ -823,24 +823,24 @@ packages: typescript: optional: true - '@typescript-eslint/utils@8.8.0': - resolution: {integrity: sha512-QE2MgfOTem00qrlPgyByaCHay9yb1+9BjnMFnSFkUKQfu7adBXDTnCAivURnuPPAG/qiB+kzKkZKmKfaMT0zVg==} + '@typescript-eslint/utils@8.10.0': + resolution: {integrity: sha512-Oq4uZ7JFr9d1ZunE/QKy5egcDRXT/FrS2z/nlxzPua2VHFtmMvFNDvpq1m/hq0ra+T52aUezfcjGRIB7vNJF9w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 - '@typescript-eslint/utils@8.8.1': - resolution: {integrity: sha512-/QkNJDbV0bdL7H7d0/y0qBbV2HTtf0TIyjSDTvvmQEzeVx8jEImEbLuOA4EsvE8gIgqMitns0ifb5uQhMj8d9w==} + '@typescript-eslint/utils@8.8.0': + resolution: {integrity: sha512-QE2MgfOTem00qrlPgyByaCHay9yb1+9BjnMFnSFkUKQfu7adBXDTnCAivURnuPPAG/qiB+kzKkZKmKfaMT0zVg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 - '@typescript-eslint/visitor-keys@8.8.0': - resolution: {integrity: sha512-8mq51Lx6Hpmd7HnA2fcHQo3YgfX1qbccxQOgZcb4tvasu//zXRaA1j5ZRFeCw/VRAdFi4mRM9DnZw0Nu0Q2d1g==} + '@typescript-eslint/visitor-keys@8.10.0': + resolution: {integrity: sha512-k8nekgqwr7FadWk548Lfph6V3r9OVqjzAIVskE7orMZR23cGJjAOVazsZSJW+ElyjfTM4wx/1g88Mi70DDtG9A==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/visitor-keys@8.8.1': - resolution: {integrity: sha512-0/TdC3aeRAsW7MDvYRwEc1Uwm0TIBfzjPFgg60UU2Haj5qsCs9cc3zNgY71edqE3LbWfF/WoZQd3lJoDXFQpag==} + '@typescript-eslint/visitor-keys@8.8.0': + resolution: {integrity: sha512-8mq51Lx6Hpmd7HnA2fcHQo3YgfX1qbccxQOgZcb4tvasu//zXRaA1j5ZRFeCw/VRAdFi4mRM9DnZw0Nu0Q2d1g==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} a-sync-waterfall@1.0.1: @@ -2419,13 +2419,13 @@ packages: resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} engines: {node: '>=8'} - playwright-core@1.48.0: - resolution: {integrity: sha512-RBvzjM9rdpP7UUFrQzRwR8L/xR4HyC1QXMzGYTbf1vjw25/ya9NRAVnXi/0fvFopjebvyPzsmoK58xxeEOaVvA==} + playwright-core@1.48.1: + resolution: {integrity: sha512-Yw/t4VAFX/bBr1OzwCuOMZkY1Cnb4z/doAFSwf4huqAGWmf9eMNjmK7NiOljCdLmxeRYcGPPmcDgU0zOlzP0YA==} engines: {node: '>=18'} hasBin: true - playwright@1.48.0: - resolution: {integrity: sha512-qPqFaMEHuY/ug8o0uteYJSRfMGFikhUysk8ZvAtfKmUK3kc/6oNl/y3EczF8OFGYIi/Ex2HspMfzYArk6+XQSA==} + playwright@1.48.1: + resolution: {integrity: sha512-j8CiHW/V6HxmbntOfyB4+T/uk08tBy6ph0MpBXwuoofkSnLmlfdYNNkFTYD6ofzzlSqLA1fwH4vwvVFvJgLN0w==} engines: {node: '>=18'} hasBin: true @@ -2725,8 +2725,8 @@ packages: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} - terser@5.34.1: - resolution: {integrity: sha512-FsJZ7iZLd/BXkz+4xrRTGJ26o/6VTjQytUk8b8OxkwcD2I+79VPJlz7qss1+zE7h8GNIScFqXcDyJ/KqBYZFVA==} + terser@5.36.0: + resolution: {integrity: sha512-IYV9eNMuFAV4THUspIRXkLakHnV6XO7FEdtKjf/mDyrnqUg9LnlOn6/RwRvM9SZjR4GUq8Nk8zj67FzVARr74w==} engines: {node: '>=10'} hasBin: true @@ -2788,8 +2788,8 @@ packages: esbuild: optional: true - tslib@2.7.0: - resolution: {integrity: sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==} + tslib@2.8.0: + resolution: {integrity: sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA==} type-check@0.4.0: resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} @@ -2815,8 +2815,8 @@ packages: resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==} engines: {node: '>= 0.6'} - typescript-eslint@8.8.1: - resolution: {integrity: sha512-R0dsXFt6t4SAFjUSKFjMh4pXDtq04SsFKCVGDP3ZOzNP7itF0jBcZYU4fMsZr4y7O7V7Nc751dDeESbe4PbQMQ==} + typescript-eslint@8.10.0: + resolution: {integrity: sha512-YIu230PeN7z9zpu/EtqCIuRVHPs4iSlqW6TEvjbyDAE3MZsSl2RXBo+5ag+lbABCG8sFM1WVKEXhlQ8Ml8A3Fw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '*' @@ -2824,8 +2824,8 @@ packages: typescript: optional: true - typescript@5.5.4: - resolution: {integrity: sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==} + typescript@5.6.3: + resolution: {integrity: sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==} engines: {node: '>=14.17'} hasBin: true @@ -3367,7 +3367,7 @@ snapshots: '@jest/console@29.7.0': dependencies: '@jest/types': 29.6.3 - '@types/node': 22.7.5 + '@types/node': 22.7.6 chalk: 4.1.2 jest-message-util: 29.7.0 jest-util: 29.7.0 @@ -3380,14 +3380,14 @@ snapshots: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.7.5 + '@types/node': 22.7.6 ansi-escapes: 4.3.2 chalk: 4.1.2 ci-info: 3.9.0 exit: 0.1.2 graceful-fs: 4.2.11 jest-changed-files: 29.7.0 - jest-config: 29.7.0(@types/node@22.7.5) + jest-config: 29.7.0(@types/node@22.7.6) jest-haste-map: 29.7.0 jest-message-util: 29.7.0 jest-regex-util: 29.6.3 @@ -3412,7 +3412,7 @@ snapshots: dependencies: '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.7.5 + '@types/node': 22.7.6 jest-mock: 29.7.0 '@jest/expect-utils@29.7.0': @@ -3430,7 +3430,7 @@ snapshots: dependencies: '@jest/types': 29.6.3 '@sinonjs/fake-timers': 10.3.0 - '@types/node': 22.7.5 + '@types/node': 22.7.6 jest-message-util: 29.7.0 jest-mock: 29.7.0 jest-util: 29.7.0 @@ -3452,7 +3452,7 @@ snapshots: '@jest/transform': 29.7.0 '@jest/types': 29.6.3 '@jridgewell/trace-mapping': 0.3.25 - '@types/node': 22.7.5 + '@types/node': 22.7.6 chalk: 4.1.2 collect-v8-coverage: 1.0.2 exit: 0.1.2 @@ -3522,7 +3522,7 @@ snapshots: '@jest/schemas': 29.6.3 '@types/istanbul-lib-coverage': 2.0.6 '@types/istanbul-reports': 3.0.4 - '@types/node': 22.7.5 + '@types/node': 22.7.6 '@types/yargs': 17.0.33 chalk: 4.1.2 @@ -3562,11 +3562,11 @@ snapshots: '@nodelib/fs.scandir': 2.1.5 fastq: 1.17.1 - '@peggyjs/eslint-config@5.0.0(eslint@9.12.0)(typescript@5.5.4)': + '@peggyjs/eslint-config@5.0.0(eslint@9.12.0)(typescript@5.6.3)': dependencies: '@eslint/json': 0.5.0 '@eslint/markdown': 6.2.0 - '@stylistic/eslint-plugin': 2.9.0(eslint@9.12.0)(typescript@5.5.4) + '@stylistic/eslint-plugin': 2.9.0(eslint@9.12.0)(typescript@5.6.3) globals: 15.11.0 transitivePeerDependencies: - eslint @@ -3580,11 +3580,11 @@ snapshots: '@pkgjs/parseargs@0.11.0': optional: true - '@playwright/test@1.48.0': + '@playwright/test@1.48.1': dependencies: - playwright: 1.48.0 + playwright: 1.48.1 - '@rollup/plugin-commonjs@28.0.0(rollup@4.24.0)': + '@rollup/plugin-commonjs@28.0.1(rollup@4.24.0)': dependencies: '@rollup/pluginutils': 5.1.2(rollup@4.24.0) commondir: 1.0.1 @@ -3619,14 +3619,14 @@ snapshots: optionalDependencies: rollup: 4.24.0 - '@rollup/plugin-typescript@12.1.0(rollup@4.24.0)(tslib@2.7.0)(typescript@5.5.4)': + '@rollup/plugin-typescript@12.1.1(rollup@4.24.0)(tslib@2.8.0)(typescript@5.6.3)': dependencies: '@rollup/pluginutils': 5.1.2(rollup@4.24.0) resolve: 1.22.8 - typescript: 5.5.4 + typescript: 5.6.3 optionalDependencies: rollup: 4.24.0 - tslib: 2.7.0 + tslib: 2.8.0 '@rollup/plugin-virtual@3.0.2(rollup@4.24.0)': optionalDependencies: @@ -3707,9 +3707,9 @@ snapshots: dependencies: '@sinonjs/commons': 3.0.1 - '@stylistic/eslint-plugin@2.9.0(eslint@9.12.0)(typescript@5.5.4)': + '@stylistic/eslint-plugin@2.9.0(eslint@9.12.0)(typescript@5.6.3)': dependencies: - '@typescript-eslint/utils': 8.8.0(eslint@9.12.0)(typescript@5.5.4) + '@typescript-eslint/utils': 8.8.0(eslint@9.12.0)(typescript@5.6.3) eslint: 9.12.0 eslint-visitor-keys: 4.1.0 espree: 10.2.0 @@ -3750,7 +3750,7 @@ snapshots: '@types/graceful-fs@4.1.9': dependencies: - '@types/node': 22.7.5 + '@types/node': 22.7.6 '@types/istanbul-lib-coverage@2.0.6': {} @@ -3775,7 +3775,7 @@ snapshots: '@types/ms@0.7.34': {} - '@types/node@22.7.5': + '@types/node@22.7.6': dependencies: undici-types: 6.19.8 @@ -3791,123 +3791,123 @@ snapshots: dependencies: '@types/yargs-parser': 21.0.3 - '@typescript-eslint/eslint-plugin@8.8.1(@typescript-eslint/parser@8.8.1(eslint@9.12.0)(typescript@5.5.4))(eslint@9.12.0)(typescript@5.5.4)': + '@typescript-eslint/eslint-plugin@8.10.0(@typescript-eslint/parser@8.10.0(eslint@9.12.0)(typescript@5.6.3))(eslint@9.12.0)(typescript@5.6.3)': dependencies: '@eslint-community/regexpp': 4.11.1 - '@typescript-eslint/parser': 8.8.1(eslint@9.12.0)(typescript@5.5.4) - '@typescript-eslint/scope-manager': 8.8.1 - '@typescript-eslint/type-utils': 8.8.1(eslint@9.12.0)(typescript@5.5.4) - '@typescript-eslint/utils': 8.8.1(eslint@9.12.0)(typescript@5.5.4) - '@typescript-eslint/visitor-keys': 8.8.1 + '@typescript-eslint/parser': 8.10.0(eslint@9.12.0)(typescript@5.6.3) + '@typescript-eslint/scope-manager': 8.10.0 + '@typescript-eslint/type-utils': 8.10.0(eslint@9.12.0)(typescript@5.6.3) + '@typescript-eslint/utils': 8.10.0(eslint@9.12.0)(typescript@5.6.3) + '@typescript-eslint/visitor-keys': 8.10.0 eslint: 9.12.0 graphemer: 1.4.0 ignore: 5.3.2 natural-compare: 1.4.0 - ts-api-utils: 1.3.0(typescript@5.5.4) + ts-api-utils: 1.3.0(typescript@5.6.3) optionalDependencies: - typescript: 5.5.4 + typescript: 5.6.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.8.1(eslint@9.12.0)(typescript@5.5.4)': + '@typescript-eslint/parser@8.10.0(eslint@9.12.0)(typescript@5.6.3)': dependencies: - '@typescript-eslint/scope-manager': 8.8.1 - '@typescript-eslint/types': 8.8.1 - '@typescript-eslint/typescript-estree': 8.8.1(typescript@5.5.4) - '@typescript-eslint/visitor-keys': 8.8.1 + '@typescript-eslint/scope-manager': 8.10.0 + '@typescript-eslint/types': 8.10.0 + '@typescript-eslint/typescript-estree': 8.10.0(typescript@5.6.3) + '@typescript-eslint/visitor-keys': 8.10.0 debug: 4.3.7 eslint: 9.12.0 optionalDependencies: - typescript: 5.5.4 + typescript: 5.6.3 transitivePeerDependencies: - supports-color + '@typescript-eslint/scope-manager@8.10.0': + dependencies: + '@typescript-eslint/types': 8.10.0 + '@typescript-eslint/visitor-keys': 8.10.0 + '@typescript-eslint/scope-manager@8.8.0': dependencies: '@typescript-eslint/types': 8.8.0 '@typescript-eslint/visitor-keys': 8.8.0 - '@typescript-eslint/scope-manager@8.8.1': - dependencies: - '@typescript-eslint/types': 8.8.1 - '@typescript-eslint/visitor-keys': 8.8.1 - - '@typescript-eslint/type-utils@8.8.1(eslint@9.12.0)(typescript@5.5.4)': + '@typescript-eslint/type-utils@8.10.0(eslint@9.12.0)(typescript@5.6.3)': dependencies: - '@typescript-eslint/typescript-estree': 8.8.1(typescript@5.5.4) - '@typescript-eslint/utils': 8.8.1(eslint@9.12.0)(typescript@5.5.4) + '@typescript-eslint/typescript-estree': 8.10.0(typescript@5.6.3) + '@typescript-eslint/utils': 8.10.0(eslint@9.12.0)(typescript@5.6.3) debug: 4.3.7 - ts-api-utils: 1.3.0(typescript@5.5.4) + ts-api-utils: 1.3.0(typescript@5.6.3) optionalDependencies: - typescript: 5.5.4 + typescript: 5.6.3 transitivePeerDependencies: - eslint - supports-color - '@typescript-eslint/types@8.8.0': {} + '@typescript-eslint/types@8.10.0': {} - '@typescript-eslint/types@8.8.1': {} + '@typescript-eslint/types@8.8.0': {} - '@typescript-eslint/typescript-estree@8.8.0(typescript@5.5.4)': + '@typescript-eslint/typescript-estree@8.10.0(typescript@5.6.3)': dependencies: - '@typescript-eslint/types': 8.8.0 - '@typescript-eslint/visitor-keys': 8.8.0 + '@typescript-eslint/types': 8.10.0 + '@typescript-eslint/visitor-keys': 8.10.0 debug: 4.3.7 fast-glob: 3.3.2 is-glob: 4.0.3 minimatch: 9.0.5 semver: 7.6.3 - ts-api-utils: 1.3.0(typescript@5.5.4) + ts-api-utils: 1.3.0(typescript@5.6.3) optionalDependencies: - typescript: 5.5.4 + typescript: 5.6.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/typescript-estree@8.8.1(typescript@5.5.4)': + '@typescript-eslint/typescript-estree@8.8.0(typescript@5.6.3)': dependencies: - '@typescript-eslint/types': 8.8.1 - '@typescript-eslint/visitor-keys': 8.8.1 + '@typescript-eslint/types': 8.8.0 + '@typescript-eslint/visitor-keys': 8.8.0 debug: 4.3.7 fast-glob: 3.3.2 is-glob: 4.0.3 minimatch: 9.0.5 semver: 7.6.3 - ts-api-utils: 1.3.0(typescript@5.5.4) + ts-api-utils: 1.3.0(typescript@5.6.3) optionalDependencies: - typescript: 5.5.4 + typescript: 5.6.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.8.0(eslint@9.12.0)(typescript@5.5.4)': + '@typescript-eslint/utils@8.10.0(eslint@9.12.0)(typescript@5.6.3)': dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@9.12.0) - '@typescript-eslint/scope-manager': 8.8.0 - '@typescript-eslint/types': 8.8.0 - '@typescript-eslint/typescript-estree': 8.8.0(typescript@5.5.4) + '@typescript-eslint/scope-manager': 8.10.0 + '@typescript-eslint/types': 8.10.0 + '@typescript-eslint/typescript-estree': 8.10.0(typescript@5.6.3) eslint: 9.12.0 transitivePeerDependencies: - supports-color - typescript - '@typescript-eslint/utils@8.8.1(eslint@9.12.0)(typescript@5.5.4)': + '@typescript-eslint/utils@8.8.0(eslint@9.12.0)(typescript@5.6.3)': dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@9.12.0) - '@typescript-eslint/scope-manager': 8.8.1 - '@typescript-eslint/types': 8.8.1 - '@typescript-eslint/typescript-estree': 8.8.1(typescript@5.5.4) + '@typescript-eslint/scope-manager': 8.8.0 + '@typescript-eslint/types': 8.8.0 + '@typescript-eslint/typescript-estree': 8.8.0(typescript@5.6.3) eslint: 9.12.0 transitivePeerDependencies: - supports-color - typescript - '@typescript-eslint/visitor-keys@8.8.0': + '@typescript-eslint/visitor-keys@8.10.0': dependencies: - '@typescript-eslint/types': 8.8.0 + '@typescript-eslint/types': 8.10.0 eslint-visitor-keys: 3.4.3 - '@typescript-eslint/visitor-keys@8.8.1': + '@typescript-eslint/visitor-keys@8.8.0': dependencies: - '@typescript-eslint/types': 8.8.1 + '@typescript-eslint/types': 8.8.0 eslint-visitor-keys: 3.4.3 a-sync-waterfall@1.0.1: {} @@ -4241,13 +4241,13 @@ snapshots: core-util-is@1.0.3: {} - create-jest@29.7.0(@types/node@22.7.5): + create-jest@29.7.0(@types/node@22.7.6): dependencies: '@jest/types': 29.6.3 chalk: 4.1.2 exit: 0.1.2 graceful-fs: 4.2.11 - jest-config: 29.7.0(@types/node@22.7.5) + jest-config: 29.7.0(@types/node@22.7.6) jest-util: 29.7.0 prompts: 2.4.2 transitivePeerDependencies: @@ -4912,7 +4912,7 @@ snapshots: '@jest/expect': 29.7.0 '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.7.5 + '@types/node': 22.7.6 chalk: 4.1.2 co: 4.6.0 dedent: 1.5.3 @@ -4932,16 +4932,16 @@ snapshots: - babel-plugin-macros - supports-color - jest-cli@29.7.0(@types/node@22.7.5): + jest-cli@29.7.0(@types/node@22.7.6): dependencies: '@jest/core': 29.7.0 '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 chalk: 4.1.2 - create-jest: 29.7.0(@types/node@22.7.5) + create-jest: 29.7.0(@types/node@22.7.6) exit: 0.1.2 import-local: 3.2.0 - jest-config: 29.7.0(@types/node@22.7.5) + jest-config: 29.7.0(@types/node@22.7.6) jest-util: 29.7.0 jest-validate: 29.7.0 yargs: 17.7.2 @@ -4951,7 +4951,7 @@ snapshots: - supports-color - ts-node - jest-config@29.7.0(@types/node@22.7.5): + jest-config@29.7.0(@types/node@22.7.6): dependencies: '@babel/core': 7.25.2 '@jest/test-sequencer': 29.7.0 @@ -4976,7 +4976,7 @@ snapshots: slash: 3.0.0 strip-json-comments: 3.1.1 optionalDependencies: - '@types/node': 22.7.5 + '@types/node': 22.7.6 transitivePeerDependencies: - babel-plugin-macros - supports-color @@ -5005,7 +5005,7 @@ snapshots: '@jest/environment': 29.7.0 '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.7.5 + '@types/node': 22.7.6 jest-mock: 29.7.0 jest-util: 29.7.0 @@ -5015,7 +5015,7 @@ snapshots: dependencies: '@jest/types': 29.6.3 '@types/graceful-fs': 4.1.9 - '@types/node': 22.7.5 + '@types/node': 22.7.6 anymatch: 3.1.3 fb-watchman: 2.0.2 graceful-fs: 4.2.11 @@ -5054,7 +5054,7 @@ snapshots: jest-mock@29.7.0: dependencies: '@jest/types': 29.6.3 - '@types/node': 22.7.5 + '@types/node': 22.7.6 jest-util: 29.7.0 jest-pnp-resolver@1.2.3(jest-resolve@29.7.0): @@ -5089,7 +5089,7 @@ snapshots: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.7.5 + '@types/node': 22.7.6 chalk: 4.1.2 emittery: 0.13.1 graceful-fs: 4.2.11 @@ -5117,7 +5117,7 @@ snapshots: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.7.5 + '@types/node': 22.7.6 chalk: 4.1.2 cjs-module-lexer: 1.4.1 collect-v8-coverage: 1.0.2 @@ -5163,7 +5163,7 @@ snapshots: jest-util@29.7.0: dependencies: '@jest/types': 29.6.3 - '@types/node': 22.7.5 + '@types/node': 22.7.6 chalk: 4.1.2 ci-info: 3.9.0 graceful-fs: 4.2.11 @@ -5182,7 +5182,7 @@ snapshots: dependencies: '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.7.5 + '@types/node': 22.7.6 ansi-escapes: 4.3.2 chalk: 4.1.2 emittery: 0.13.1 @@ -5191,17 +5191,17 @@ snapshots: jest-worker@29.7.0: dependencies: - '@types/node': 22.7.5 + '@types/node': 22.7.6 jest-util: 29.7.0 merge-stream: 2.0.0 supports-color: 8.1.1 - jest@29.7.0(@types/node@22.7.5): + jest@29.7.0(@types/node@22.7.6): dependencies: '@jest/core': 29.7.0 '@jest/types': 29.6.3 import-local: 3.2.0 - jest-cli: 29.7.0(@types/node@22.7.5) + jest-cli: 29.7.0(@types/node@22.7.6) transitivePeerDependencies: - '@types/node' - babel-plugin-macros @@ -5820,11 +5820,11 @@ snapshots: dependencies: find-up: 4.1.0 - playwright-core@1.48.0: {} + playwright-core@1.48.1: {} - playwright@1.48.0: + playwright@1.48.1: dependencies: - playwright-core: 1.48.0 + playwright-core: 1.48.1 optionalDependencies: fsevents: 2.3.2 @@ -6136,7 +6136,7 @@ snapshots: supports-preserve-symlinks-flag@1.0.0: {} - terser@5.34.1: + terser@5.36.0: dependencies: '@jridgewell/source-map': 0.3.6 acorn: 8.12.1 @@ -6170,22 +6170,22 @@ snapshots: dependencies: punycode: 2.3.1 - ts-api-utils@1.3.0(typescript@5.5.4): + ts-api-utils@1.3.0(typescript@5.6.3): dependencies: - typescript: 5.5.4 + typescript: 5.6.3 - ts-jest@29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@22.7.5))(typescript@5.5.4): + ts-jest@29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@22.7.6))(typescript@5.6.3): dependencies: bs-logger: 0.2.6 ejs: 3.1.10 fast-json-stable-stringify: 2.1.0 - jest: 29.7.0(@types/node@22.7.5) + jest: 29.7.0(@types/node@22.7.6) jest-util: 29.7.0 json5: 2.2.3 lodash.memoize: 4.1.2 make-error: 1.3.6 semver: 7.6.3 - typescript: 5.5.4 + typescript: 5.6.3 yargs-parser: 21.1.1 optionalDependencies: '@babel/core': 7.25.2 @@ -6193,7 +6193,7 @@ snapshots: '@jest/types': 29.6.3 babel-jest: 29.7.0(@babel/core@7.25.2) - tslib@2.7.0: {} + tslib@2.8.0: {} type-check@0.4.0: dependencies: @@ -6212,18 +6212,18 @@ snapshots: media-typer: 0.3.0 mime-types: 2.1.35 - typescript-eslint@8.8.1(eslint@9.12.0)(typescript@5.5.4): + typescript-eslint@8.10.0(eslint@9.12.0)(typescript@5.6.3): dependencies: - '@typescript-eslint/eslint-plugin': 8.8.1(@typescript-eslint/parser@8.8.1(eslint@9.12.0)(typescript@5.5.4))(eslint@9.12.0)(typescript@5.5.4) - '@typescript-eslint/parser': 8.8.1(eslint@9.12.0)(typescript@5.5.4) - '@typescript-eslint/utils': 8.8.1(eslint@9.12.0)(typescript@5.5.4) + '@typescript-eslint/eslint-plugin': 8.10.0(@typescript-eslint/parser@8.10.0(eslint@9.12.0)(typescript@5.6.3))(eslint@9.12.0)(typescript@5.6.3) + '@typescript-eslint/parser': 8.10.0(eslint@9.12.0)(typescript@5.6.3) + '@typescript-eslint/utils': 8.10.0(eslint@9.12.0)(typescript@5.6.3) optionalDependencies: - typescript: 5.5.4 + typescript: 5.6.3 transitivePeerDependencies: - eslint - supports-color - typescript@5.5.4: {} + typescript@5.6.3: {} uc.micro@2.1.0: {} diff --git a/src/opts.mjs b/src/opts.mjs index 1bc7ed67..5618d8e6 100644 --- a/src/opts.mjs +++ b/src/opts.mjs @@ -1,7 +1,7 @@ import { fileURLToPath } from "node:url"; export default { - dts: false, // Breaks tsc because it tries to then check parser.js + dts: true, output: fileURLToPath(new URL("../lib/parser.js", import.meta.url)), format: "commonjs", allowedStartRules: ["Grammar", "ImportsAndSource"], diff --git a/web-test/package.json b/web-test/package.json index 35f0d407..4829a9fc 100644 --- a/web-test/package.json +++ b/web-test/package.json @@ -12,8 +12,8 @@ "author": "Joe Hildebrand ", "license": "MIT", "devDependencies": { - "@playwright/test": "1.48.0", - "@types/node": "22.7.5" + "@playwright/test": "1.48.1", + "@types/node": "22.7.6" }, "engines": { "node": ">=18"