From 529d0bdbc602ed2fc1564df85f7a9772198bce9f Mon Sep 17 00:00:00 2001 From: Kanthesha Devaramane Date: Fri, 16 Feb 2024 17:15:58 +0000 Subject: [PATCH 01/12] added typescript compliance --- package.json | 2 + src/main.test.ts | 170 +- src/rule-helpers.test.ts | 219 +- src/rule-helpers.ts | 110 + src/rules/index.ts | 22 + ...ackage-engines-node-field-conforms.test.ts | 41 +- src/rules/package-exports-conform.ts | 12 + src/rules/package-exports-conforms.test.ts | 91 + src/rules/package-files-conform.ts | 12 + src/rules/package-files-conforms.test.ts | 86 + .../package-jest-dependencies-conform.test.ts | 121 +- .../package-lavamoat-tsup-conform.test.ts | 168 + src/rules/package-lavamoat-tsup-conforms.ts | 48 + .../package-lint-dependencies-conform.test.ts | 157 +- src/rules/package-main-conform.ts | 12 + src/rules/package-main-conforms.test.ts | 85 + src/rules/package-module-conform.ts | 12 + src/rules/package-module-conforms.test.ts | 85 + ...age-package-manager-field-conforms.test.ts | 40 +- .../package-test-scripts-conform.test.ts | 118 +- src/rules/package-test-scripts-conform.ts | 67 +- src/rules/package-types-conform.ts | 12 + src/rules/package-types-conforms.test.ts | 85 + ...ypescript-dev-dependencies-conform.test.ts | 170 + ...age-typescript-dev-dependencies-conform.ts | 18 + ...package-typescript-scripts-conform.test.ts | 164 + .../package-typescript-scripts-conform.ts | 17 + src/rules/require-tsconfig-build.test.ts | 73 + src/rules/require-tsconfig-build.ts | 12 + src/rules/require-tsconfig.test.ts | 73 + src/rules/require-tsconfig.ts | 12 + src/rules/require-tsup-config.test.ts | 73 + src/rules/require-tsup-config.ts | 12 + .../require-valid-package-manifest.test.ts | 15 +- src/rules/types.ts | 21 +- tests/helpers.ts | 30 + yarn.lock | 3265 ++++++++++------- 37 files changed, 3966 insertions(+), 1764 deletions(-) create mode 100644 src/rules/package-exports-conform.ts create mode 100644 src/rules/package-exports-conforms.test.ts create mode 100644 src/rules/package-files-conform.ts create mode 100644 src/rules/package-files-conforms.test.ts create mode 100644 src/rules/package-lavamoat-tsup-conform.test.ts create mode 100644 src/rules/package-lavamoat-tsup-conforms.ts create mode 100644 src/rules/package-main-conform.ts create mode 100644 src/rules/package-main-conforms.test.ts create mode 100644 src/rules/package-module-conform.ts create mode 100644 src/rules/package-module-conforms.test.ts create mode 100644 src/rules/package-types-conform.ts create mode 100644 src/rules/package-types-conforms.test.ts create mode 100644 src/rules/package-typescript-dev-dependencies-conform.test.ts create mode 100644 src/rules/package-typescript-dev-dependencies-conform.ts create mode 100644 src/rules/package-typescript-scripts-conform.test.ts create mode 100644 src/rules/package-typescript-scripts-conform.ts create mode 100644 src/rules/require-tsconfig-build.test.ts create mode 100644 src/rules/require-tsconfig-build.ts create mode 100644 src/rules/require-tsconfig.test.ts create mode 100644 src/rules/require-tsconfig.ts create mode 100644 src/rules/require-tsup-config.test.ts create mode 100644 src/rules/require-tsup-config.ts diff --git a/package.json b/package.json index 3031b0f..87ff88c 100644 --- a/package.json +++ b/package.json @@ -54,6 +54,7 @@ "chalk": "^4.1.2", "dependency-graph": "^0.11.0", "execa": "^5.1.1", + "lodash": "^4.17.21", "superstruct": "^1.0.3", "yargs": "^17.7.2" }, @@ -68,6 +69,7 @@ "@swc/cli": "^0.1.62", "@swc/core": "^1.3.66", "@types/jest": "^28.1.6", + "@types/lodash": "^4.14.202", "@types/node": "^16", "@typescript-eslint/eslint-plugin": "^5.43.0", "@typescript-eslint/parser": "^5.43.0", diff --git a/src/main.test.ts b/src/main.test.ts index 7676b96..2f11314 100644 --- a/src/main.test.ts +++ b/src/main.test.ts @@ -10,7 +10,11 @@ import stripAnsi from 'strip-ansi'; import { main } from './main'; import { FakeOutputLogger } from '../tests/fake-output-logger'; import type { PrimaryExecaFunction } from '../tests/helpers'; -import { fakeDateOnly, withinSandbox } from '../tests/helpers'; +import { + fakeDateOnly, + fakePackageManifest, + withinSandbox, +} from '../tests/helpers'; import { setupToolWithMockRepositories } from '../tests/setup-tool-with-mock-repositories'; jest.mock('execa'); @@ -70,19 +74,7 @@ describe('main', () => { ); await writeFile( path.join(repository.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'yarn', - engines: { node: 'test' }, - devDependencies: { - eslint: '1.1.0', - jest: '1.0.0', - 'jest-it-up': '1.0.0', - }, - scripts: { - test: 'test script', - 'test:watch': 'test watch script', - }, - }), + JSON.stringify(fakePackageManifest), ); await writeFile( path.join(repository.directoryPath, 'README.md'), @@ -96,6 +88,18 @@ describe('main', () => { path.join(repository.directoryPath, 'jest.config.js'), 'content for jest.config.js', ); + await writeFile( + path.join(repository.directoryPath, 'tsconfig.json'), + 'content for tsconfig.json', + ); + await writeFile( + path.join(repository.directoryPath, 'tsconfig.build.json'), + 'content for tsconfig.build.json', + ); + await writeFile( + path.join(repository.directoryPath, 'tsup.config.ts'), + 'content for tsup.config.ts', + ); } const outputLogger = new FakeOutputLogger(); @@ -122,6 +126,14 @@ repo-1 - Do the lint-related \`devDependencies\` in \`package.json\` conform? ✅ - Do the jest-related \`devDependencies\` in \`package.json\` conform? ✅ - Do the test-related \`scripts\` in \`package.json\` conform? ✅ + - Do the typescript-related \`devDependencies\` in \`package.json\` conform? ✅ + - Do the typescript-related \`scripts\` in \`package.json\` conform? ✅ + - Do the \`exports\` in \`package.json\` conform? ✅ + - Do the \`main\` in \`package.json\` conform? ✅ + - Do the \`module\` in \`package.json\` conform? ✅ + - Do the \`types\` in \`package.json\` conform? ✅ + - Do the \`files\` in \`package.json\` conform? ✅ + - Does the \`lavamoat.allowscripts\` field in \`package.json\` conform? ✅ - Is \`README.md\` present? ✅ - Does the README conform by recommending the correct Yarn version to install? ✅ - Does the README conform by recommending node install from nodejs.org? ✅ @@ -130,8 +142,11 @@ repo-1 - Does the \`src/\` directory exist? ✅ - Is \`.nvmrc\` present, and does it conform? ✅ - Is \`jest.config.js\` present, and does it conform? ✅ +- Is \`tsconfig.json\` present, and does it conform? ✅ +- Is \`tsconfig.build.json\` present, and does it conform? ✅ +- Is \`tsup.config.ts\` present, and does it conform? ✅ -Results: 15 passed, 0 failed, 15 total +Results: 26 passed, 0 failed, 26 total Elapsed time: 0 ms @@ -145,6 +160,14 @@ repo-2 - Do the lint-related \`devDependencies\` in \`package.json\` conform? ✅ - Do the jest-related \`devDependencies\` in \`package.json\` conform? ✅ - Do the test-related \`scripts\` in \`package.json\` conform? ✅ + - Do the typescript-related \`devDependencies\` in \`package.json\` conform? ✅ + - Do the typescript-related \`scripts\` in \`package.json\` conform? ✅ + - Do the \`exports\` in \`package.json\` conform? ✅ + - Do the \`main\` in \`package.json\` conform? ✅ + - Do the \`module\` in \`package.json\` conform? ✅ + - Do the \`types\` in \`package.json\` conform? ✅ + - Do the \`files\` in \`package.json\` conform? ✅ + - Does the \`lavamoat.allowscripts\` field in \`package.json\` conform? ✅ - Is \`README.md\` present? ✅ - Does the README conform by recommending the correct Yarn version to install? ✅ - Does the README conform by recommending node install from nodejs.org? ✅ @@ -153,8 +176,11 @@ repo-2 - Does the \`src/\` directory exist? ✅ - Is \`.nvmrc\` present, and does it conform? ✅ - Is \`jest.config.js\` present, and does it conform? ✅ +- Is \`tsconfig.json\` present, and does it conform? ✅ +- Is \`tsconfig.build.json\` present, and does it conform? ✅ +- Is \`tsup.config.ts\` present, and does it conform? ✅ -Results: 15 passed, 0 failed, 15 total +Results: 26 passed, 0 failed, 26 total Elapsed time: 0 ms `, @@ -215,8 +241,14 @@ repo-1 - \`.nvmrc\` does not exist in this project. - Is \`jest.config.js\` present, and does it conform? ❌ - \`jest.config.js\` does not exist in this project. - -Results: 0 passed, 7 failed, 7 total +- Is \`tsconfig.json\` present, and does it conform? ❌ + - \`tsconfig.json\` does not exist in this project. +- Is \`tsconfig.build.json\` present, and does it conform? ❌ + - \`tsconfig.build.json\` does not exist in this project. +- Is \`tsup.config.ts\` present, and does it conform? ❌ + - \`tsup.config.ts\` does not exist in this project. + +Results: 0 passed, 10 failed, 10 total Elapsed time: 0 ms @@ -239,8 +271,14 @@ repo-2 - \`.nvmrc\` does not exist in this project. - Is \`jest.config.js\` present, and does it conform? ❌ - \`jest.config.js\` does not exist in this project. - -Results: 0 passed, 7 failed, 7 total +- Is \`tsconfig.json\` present, and does it conform? ❌ + - \`tsconfig.json\` does not exist in this project. +- Is \`tsconfig.build.json\` present, and does it conform? ❌ + - \`tsconfig.build.json\` does not exist in this project. +- Is \`tsup.config.ts\` present, and does it conform? ❌ + - \`tsup.config.ts\` does not exist in this project. + +Results: 0 passed, 10 failed, 10 total Elapsed time: 0 ms `, @@ -307,8 +345,14 @@ repo-2 - \`.nvmrc\` does not exist in this project. - Is \`jest.config.js\` present, and does it conform? ❌ - \`jest.config.js\` does not exist in this project. - -Results: 1 passed, 6 failed, 7 total +- Is \`tsconfig.json\` present, and does it conform? ❌ + - \`tsconfig.json\` does not exist in this project. +- Is \`tsconfig.build.json\` present, and does it conform? ❌ + - \`tsconfig.build.json\` does not exist in this project. +- Is \`tsup.config.ts\` present, and does it conform? ❌ + - \`tsup.config.ts\` does not exist in this project. + +Results: 1 passed, 9 failed, 10 total Elapsed time: 0 ms `.trimStart(), @@ -361,19 +405,7 @@ Elapsed time: 0 ms ); await writeFile( path.join(repository.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'yarn', - engines: { node: 'test' }, - devDependencies: { - eslint: '1.1.0', - jest: '1.0.0', - 'jest-it-up': '1.0.0', - }, - scripts: { - test: 'test script', - 'test:watch': 'test watch script', - }, - }), + JSON.stringify(fakePackageManifest), ); await writeFile( path.join(repository.directoryPath, 'README.md'), @@ -387,6 +419,18 @@ Elapsed time: 0 ms path.join(repository.directoryPath, 'jest.config.js'), 'content for jest.config.js', ); + await writeFile( + path.join(repository.directoryPath, 'tsconfig.json'), + 'content for tsconfig.json', + ); + await writeFile( + path.join(repository.directoryPath, 'tsconfig.build.json'), + 'content for tsconfig.build.json', + ); + await writeFile( + path.join(repository.directoryPath, 'tsup.config.ts'), + 'content for tsup.config.ts', + ); } const outputLogger = new FakeOutputLogger(); @@ -413,6 +457,14 @@ repo-1 - Do the lint-related \`devDependencies\` in \`package.json\` conform? ✅ - Do the jest-related \`devDependencies\` in \`package.json\` conform? ✅ - Do the test-related \`scripts\` in \`package.json\` conform? ✅ + - Do the typescript-related \`devDependencies\` in \`package.json\` conform? ✅ + - Do the typescript-related \`scripts\` in \`package.json\` conform? ✅ + - Do the \`exports\` in \`package.json\` conform? ✅ + - Do the \`main\` in \`package.json\` conform? ✅ + - Do the \`module\` in \`package.json\` conform? ✅ + - Do the \`types\` in \`package.json\` conform? ✅ + - Do the \`files\` in \`package.json\` conform? ✅ + - Does the \`lavamoat.allowscripts\` field in \`package.json\` conform? ✅ - Is \`README.md\` present? ✅ - Does the README conform by recommending the correct Yarn version to install? ✅ - Does the README conform by recommending node install from nodejs.org? ✅ @@ -421,8 +473,11 @@ repo-1 - Does the \`src/\` directory exist? ✅ - Is \`.nvmrc\` present, and does it conform? ✅ - Is \`jest.config.js\` present, and does it conform? ✅ +- Is \`tsconfig.json\` present, and does it conform? ✅ +- Is \`tsconfig.build.json\` present, and does it conform? ✅ +- Is \`tsup.config.ts\` present, and does it conform? ✅ -Results: 15 passed, 0 failed, 15 total +Results: 26 passed, 0 failed, 26 total Elapsed time: 0 ms @@ -436,6 +491,14 @@ repo-2 - Do the lint-related \`devDependencies\` in \`package.json\` conform? ✅ - Do the jest-related \`devDependencies\` in \`package.json\` conform? ✅ - Do the test-related \`scripts\` in \`package.json\` conform? ✅ + - Do the typescript-related \`devDependencies\` in \`package.json\` conform? ✅ + - Do the typescript-related \`scripts\` in \`package.json\` conform? ✅ + - Do the \`exports\` in \`package.json\` conform? ✅ + - Do the \`main\` in \`package.json\` conform? ✅ + - Do the \`module\` in \`package.json\` conform? ✅ + - Do the \`types\` in \`package.json\` conform? ✅ + - Do the \`files\` in \`package.json\` conform? ✅ + - Does the \`lavamoat.allowscripts\` field in \`package.json\` conform? ✅ - Is \`README.md\` present? ✅ - Does the README conform by recommending the correct Yarn version to install? ✅ - Does the README conform by recommending node install from nodejs.org? ✅ @@ -444,8 +507,11 @@ repo-2 - Does the \`src/\` directory exist? ✅ - Is \`.nvmrc\` present, and does it conform? ✅ - Is \`jest.config.js\` present, and does it conform? ✅ +- Is \`tsconfig.json\` present, and does it conform? ✅ +- Is \`tsconfig.build.json\` present, and does it conform? ✅ +- Is \`tsup.config.ts\` present, and does it conform? ✅ -Results: 15 passed, 0 failed, 15 total +Results: 26 passed, 0 failed, 26 total Elapsed time: 0 ms `, @@ -506,8 +572,14 @@ repo-1 - \`.nvmrc\` does not exist in this project. - Is \`jest.config.js\` present, and does it conform? ❌ - \`jest.config.js\` does not exist in this project. - -Results: 0 passed, 7 failed, 7 total +- Is \`tsconfig.json\` present, and does it conform? ❌ + - \`tsconfig.json\` does not exist in this project. +- Is \`tsconfig.build.json\` present, and does it conform? ❌ + - \`tsconfig.build.json\` does not exist in this project. +- Is \`tsup.config.ts\` present, and does it conform? ❌ + - \`tsup.config.ts\` does not exist in this project. + +Results: 0 passed, 10 failed, 10 total Elapsed time: 0 ms @@ -530,8 +602,14 @@ repo-2 - \`.nvmrc\` does not exist in this project. - Is \`jest.config.js\` present, and does it conform? ❌ - \`jest.config.js\` does not exist in this project. - -Results: 0 passed, 7 failed, 7 total +- Is \`tsconfig.json\` present, and does it conform? ❌ + - \`tsconfig.json\` does not exist in this project. +- Is \`tsconfig.build.json\` present, and does it conform? ❌ + - \`tsconfig.build.json\` does not exist in this project. +- Is \`tsup.config.ts\` present, and does it conform? ❌ + - \`tsup.config.ts\` does not exist in this project. + +Results: 0 passed, 10 failed, 10 total Elapsed time: 0 ms `, @@ -597,8 +675,14 @@ repo-2 - \`.nvmrc\` does not exist in this project. - Is \`jest.config.js\` present, and does it conform? ❌ - \`jest.config.js\` does not exist in this project. - -Results: 1 passed, 6 failed, 7 total +- Is \`tsconfig.json\` present, and does it conform? ❌ + - \`tsconfig.json\` does not exist in this project. +- Is \`tsconfig.build.json\` present, and does it conform? ❌ + - \`tsconfig.build.json\` does not exist in this project. +- Is \`tsup.config.ts\` present, and does it conform? ❌ + - \`tsup.config.ts\` does not exist in this project. + +Results: 1 passed, 9 failed, 10 total Elapsed time: 0 ms `, diff --git a/src/rule-helpers.test.ts b/src/rule-helpers.test.ts index 03b007f..753fe1a 100644 --- a/src/rule-helpers.test.ts +++ b/src/rule-helpers.test.ts @@ -4,6 +4,11 @@ import { } from '@metamask/utils/node'; import path from 'path'; +import { + buildMetaMaskRepository, + fakePackageManifest, + withinSandbox, +} from '../tests/helpers'; import { combineRuleExecutionResults, directoryAndContentsConform, @@ -11,9 +16,10 @@ import { fail, fileConforms, fileExists, + getString, + packagePropertiesConform, pass, } from './rule-helpers'; -import { buildMetaMaskRepository, withinSandbox } from '../tests/helpers'; describe('pass', () => { it('returns a result that represents a passing rule', () => { @@ -569,3 +575,214 @@ describe('directoryAndContentsConform', () => { }); }); }); + +describe('packagePropertiesConform', () => { + it('passes if the project and template have the same referenced property with its value matching', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + await writeFile( + path.join(project.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + const result = await packagePropertiesConform('main', { + template, + project, + pass, + fail, + }); + + expect(result).toStrictEqual({ passed: true }); + }); + }); + + it('passes if the project and template have the same referenced property and its child properties', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + await writeFile( + path.join(project.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + const result = await packagePropertiesConform( + 'devDependencies', + { + template, + project, + pass, + fail, + }, + ['test'], + ); + + expect(result).toStrictEqual({ passed: true }); + }); + }); + + it('fails if the project has the same referenced package as the template, but its version does not match', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + const fakeProjectPackageManifest = { + ...fakePackageManifest, + devDependencies: { + test: '0.0.1', + }, + }; + + await writeFile( + path.join(project.directoryPath, 'package.json'), + JSON.stringify(fakeProjectPackageManifest), + ); + const result = await packagePropertiesConform( + 'devDependencies', + { + template, + project, + pass, + fail, + }, + ['test'], + ); + + expect(result).toStrictEqual({ + passed: false, + failures: [ + { + message: '`test` is "0.0.1", when it should be "1.0.0".', + }, + ], + }); + }); + }); + + it('fails if the project does not have the same referenced package as the template', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + const fakeTemplatePackageManifest = { + ...fakePackageManifest, + devDependencies: { + test: '1.0.0', + 'new-pack': '1.0.0', + }, + }; + await writeFile( + path.join(template.directoryPath, 'package.json'), + JSON.stringify(fakeTemplatePackageManifest), + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + + await writeFile( + path.join(project.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + + const result = await packagePropertiesConform( + 'devDependencies', + { + template, + project, + pass, + fail, + }, + ['new-pack'], + ); + + expect(result).toStrictEqual({ + passed: false, + failures: [ + { + message: + '`package.json` should list `"new-pack": "1.0.0"`, but does not.', + }, + ], + }); + }); + }); + + it('throws error if the package does not exist in the template devDependencies', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + await writeFile( + path.join(project.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + + await expect( + packagePropertiesConform( + 'devDependencies', + { + template, + project, + pass, + fail, + }, + ['new-pack'], + ), + ).rejects.toThrow( + 'Could not find "new-pack" in template\'s package.json. This is not the fault of the project, but is rather a bug in a rule.', + ); + }); + }); +}); + +describe('getString', () => { + it('returns empty string when the input is undefined', async () => { + expect(getString(undefined)).toBe(''); + }); + + it('returns same string when the input is string', async () => { + expect(getString('test')).toBe('test'); + }); + + it('returns stringified object when the input is json object', async () => { + expect(getString({ test: 'test' })).toBe("{ test: 'test' }"); + }); +}); diff --git a/src/rule-helpers.ts b/src/rule-helpers.ts index 6fc5ba7..b9a2dfc 100644 --- a/src/rule-helpers.ts +++ b/src/rule-helpers.ts @@ -1,9 +1,14 @@ +import { isEqual } from 'lodash'; +import { inspect } from 'util'; + import type { SuccessfulPartialRuleExecutionResult, FailedPartialRuleExecutionResult, PartialRuleExecutionResult, RuleExecutionArguments, + RuleExecutionFailure, } from './execute-rules'; +import { PackageManifestSchema } from './rules/types'; /** * A utility for a rule which is intended to end its execution by marking it as @@ -188,3 +193,108 @@ export async function directoryAndContentsConform( ); return combineRuleExecutionResults(fileConformsResults); } + +/** + * Returns a string representation of object. + * + * @param input - Object to be stringified. + * @returns String. + */ +export function getString(input: Type): string { + if (!input) { + return ''; + } + return typeof input === 'object' ? inspect(input) : input.toString(); +} + +/** + * Verifies whether project has the required property name/s and with it's value equivalent to the same in template project. + * + * @param propertyName - Name of the property from package.json. + * @param ruleExecutionArguments - Rule execution arguments. + * @param childPropertyNames - The array of property names to be verified. + */ +export async function packagePropertiesConform( + propertyName: string, + ruleExecutionArguments: RuleExecutionArguments, + childPropertyNames?: string[], +): Promise { + const { template, project } = ruleExecutionArguments; + const entryPath = 'package.json'; + const templateManifest = await template.fs.readJsonFileAs( + entryPath, + PackageManifestSchema, + ); + + const projectManifest = await project.fs.readJsonFileAs( + entryPath, + PackageManifestSchema, + ); + + type Key = keyof typeof templateManifest; + const propertyKey = propertyName as Key; + const failures: RuleExecutionFailure[] = []; + if (childPropertyNames) { + const templateProperties = templateManifest[propertyKey]; + const projectProperties = projectManifest[propertyKey]; + type SubKey = keyof typeof templateProperties; + for (const childPropetyName of childPropertyNames) { + const failure = dataConform( + templateProperties[childPropetyName as SubKey], + projectProperties[childPropetyName as SubKey], + childPropetyName, + ); + if (failure) { + failures.push(failure); + } + } + } else { + const failure = dataConform( + templateManifest[propertyKey], + projectManifest[propertyKey], + propertyName, + ); + if (failure) { + failures.push(failure); + } + } + + return failures.length === 0 ? pass() : fail(failures); +} + +/** + * Performs a deep comparison between template data and project data to determine if they are equivalent. + * In case of equals, it returns undefined, otherwise failure message. + * + * @param templateProperty - Data from template. + * @param projectProperty - Data from project. + * @param propertyName - Name of the property. + * @returns RuleExecutionFailure. + */ +function dataConform( + templateProperty: Schema, + projectProperty: Schema, + propertyName: string, +): RuleExecutionFailure | undefined { + if (!templateProperty) { + throw new Error( + `Could not find "${propertyName}" in template's package.json. This is not the fault of the project, but is rather a bug in a rule.`, + ); + } + + if (!projectProperty) { + return { + message: `\`package.json\` should list \`"${propertyName}": "${getString( + templateProperty, + )}"\`, but does not.`, + }; + } else if (!isEqual(projectProperty, templateProperty)) { + return { + message: `\`${propertyName}\` is "${getString( + projectProperty, + )}", when it should be "${getString(templateProperty)}".`, + }; + } + + return undefined; +} diff --git a/src/rules/index.ts b/src/rules/index.ts index c31fb49..61a6ab2 100644 --- a/src/rules/index.ts +++ b/src/rules/index.ts @@ -1,16 +1,27 @@ import allYarnModernFilesConform from './all-yarn-modern-files-conform'; import classicYarnConfigFileAbsent from './classic-yarn-config-file-absent'; import packageEnginesNodeFieldConforms from './package-engines-node-field-conforms'; +import packageExportsConform from './package-exports-conform'; +import packageFilesConform from './package-files-conform'; import packageJestDependenciesConform from './package-jest-dependencies-conform'; +import packageLavamoatTsupConforms from './package-lavamoat-tsup-conforms'; import packageLintDependenciesConform from './package-lint-dependencies-conform'; +import packageMainConform from './package-main-conform'; +import packageModuleConform from './package-module-conform'; import packagePackageManagerFieldConforms from './package-package-manager-field-conforms'; import packageTestScriptsConform from './package-test-scripts-conform'; +import packageTypesConform from './package-types-conform'; +import packageTypescriptDevDependenciesConform from './package-typescript-dev-dependencies-conform'; +import packageTypescriptScriptsConform from './package-typescript-scripts-conform'; import readmeListsCorrectYarnVersion from './readme-lists-correct-yarn-version'; import readmeListsNodejsWebsite from './readme-recommends-node-install'; import requireJestConfig from './require-jest-config'; import requireNvmrc from './require-nvmrc'; import requireReadme from './require-readme'; import requireSourceDirectory from './require-source-directory'; +import requireTsconfig from './require-tsconfig'; +import requireTsconfigBuild from './require-tsconfig-build'; +import requireTsupConfig from './require-tsup-config'; import requireValidPackageManifest from './require-valid-package-manifest'; export const rules = [ @@ -28,4 +39,15 @@ export const rules = [ packageJestDependenciesConform, requireJestConfig, packageTestScriptsConform, + requireTsconfig, + requireTsconfigBuild, + requireTsupConfig, + packageTypescriptDevDependenciesConform, + packageTypescriptScriptsConform, + packageExportsConform, + packageMainConform, + packageModuleConform, + packageTypesConform, + packageFilesConform, + packageLavamoatTsupConforms, ] as const; diff --git a/src/rules/package-engines-node-field-conforms.test.ts b/src/rules/package-engines-node-field-conforms.test.ts index 03f7daa..5efcc1e 100644 --- a/src/rules/package-engines-node-field-conforms.test.ts +++ b/src/rules/package-engines-node-field-conforms.test.ts @@ -2,7 +2,11 @@ import { writeFile } from '@metamask/utils/node'; import path from 'path'; import packageEnginesNodeFieldConforms from './package-engines-node-field-conforms'; -import { buildMetaMaskRepository, withinSandbox } from '../../tests/helpers'; +import { + buildMetaMaskRepository, + fakePackageManifest, + withinSandbox, +} from '../../tests/helpers'; import { fail, pass } from '../rule-helpers'; describe('Rule: package-engines-node-field-conforms', () => { @@ -14,12 +18,7 @@ describe('Rule: package-engines-node-field-conforms', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { eslint: '1.0.0' }, - scripts: { test: 'jest && jest-it-up' }, - }), + JSON.stringify(fakePackageManifest), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -27,12 +26,7 @@ describe('Rule: package-engines-node-field-conforms', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { eslint: '1.0.0' }, - scripts: { test: 'jest && jest-it-up' }, - }), + JSON.stringify(fakePackageManifest), ); const result = await packageEnginesNodeFieldConforms.execute({ @@ -56,25 +50,19 @@ describe('Rule: package-engines-node-field-conforms', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test1' }, - devDependencies: { eslint: '1.0.0' }, - scripts: { test: 'jest && jest-it-up' }, - }), + JSON.stringify(fakePackageManifest), ); const project = buildMetaMaskRepository({ shortname: 'project', directoryPath: path.join(sandbox.directoryPath, 'project'), }); + const fakeProjectPackageManifest = { + ...fakePackageManifest, + engines: { node: 'wrong version' }, + }; await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test2' }, - devDependencies: { eslint: '1.0.0' }, - scripts: { test: 'jest && jest-it-up' }, - }), + JSON.stringify(fakeProjectPackageManifest), ); const result = await packageEnginesNodeFieldConforms.execute({ @@ -88,7 +76,8 @@ describe('Rule: package-engines-node-field-conforms', () => { passed: false, failures: [ { - message: '`engines.node` is "test2", when it should be "test1".', + message: + '`engines.node` is "wrong version", when it should be "1.0.0".', }, ], }); diff --git a/src/rules/package-exports-conform.ts b/src/rules/package-exports-conform.ts new file mode 100644 index 0000000..8dc7d02 --- /dev/null +++ b/src/rules/package-exports-conform.ts @@ -0,0 +1,12 @@ +import { buildRule } from './build-rule'; +import { RuleName } from './types'; +import { packagePropertiesConform } from '../rule-helpers'; + +export default buildRule({ + name: RuleName.PackageExportsConform, + description: 'Do the `exports` in `package.json` conform?', + dependencies: [RuleName.RequireValidPackageManifest], + execute: async (ruleExecutionArguments) => { + return packagePropertiesConform('exports', ruleExecutionArguments); + }, +}); diff --git a/src/rules/package-exports-conforms.test.ts b/src/rules/package-exports-conforms.test.ts new file mode 100644 index 0000000..3abdf16 --- /dev/null +++ b/src/rules/package-exports-conforms.test.ts @@ -0,0 +1,91 @@ +import { writeFile } from '@metamask/utils/node'; +import path from 'path'; + +import { + buildMetaMaskRepository, + fakePackageManifest, + withinSandbox, +} from '../../tests/helpers'; +import { fail, pass } from '../rule-helpers'; +import packageExportsConform from './package-exports-conform'; + +describe('Rule: package-exports-conforms', () => { + it('passes if the "exports" field in the project\'s package.json matches the one in the template\'s package.json', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + await writeFile( + path.join(project.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + + const result = await packageExportsConform.execute({ + template, + project, + pass, + fail, + }); + + expect(result).toStrictEqual({ + passed: true, + }); + }); + }); + + it('fails if the "exports" field in the project\'s package.json does not match the one in the template\'s package.json', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + const fakeProjectPackageManifest = { + ...fakePackageManifest, + exports: { + '.': { + test: 'test', + }, + './package.json': 'test', + }, + }; + await writeFile( + path.join(project.directoryPath, 'package.json'), + JSON.stringify(fakeProjectPackageManifest), + ); + + const result = await packageExportsConform.execute({ + template, + project, + pass, + fail, + }); + + expect(result).toStrictEqual({ + passed: false, + failures: [ + { + message: + "`exports` is \"{ '.': { test: 'test' }, './package.json': 'test' }\", when it should be \"{ '.': { test: 'test-pack' }, './package.json': 'test' }\".", + }, + ], + }); + }); + }); +}); diff --git a/src/rules/package-files-conform.ts b/src/rules/package-files-conform.ts new file mode 100644 index 0000000..5fd522e --- /dev/null +++ b/src/rules/package-files-conform.ts @@ -0,0 +1,12 @@ +import { buildRule } from './build-rule'; +import { RuleName } from './types'; +import { packagePropertiesConform } from '../rule-helpers'; + +export default buildRule({ + name: RuleName.PackageFilesConform, + description: 'Do the `files` in `package.json` conform?', + dependencies: [RuleName.RequireValidPackageManifest], + execute: async (ruleExecutionArguments) => { + return packagePropertiesConform('files', ruleExecutionArguments); + }, +}); diff --git a/src/rules/package-files-conforms.test.ts b/src/rules/package-files-conforms.test.ts new file mode 100644 index 0000000..e9d4515 --- /dev/null +++ b/src/rules/package-files-conforms.test.ts @@ -0,0 +1,86 @@ +import { writeFile } from '@metamask/utils/node'; +import path from 'path'; + +import { + buildMetaMaskRepository, + fakePackageManifest, + withinSandbox, +} from '../../tests/helpers'; +import { fail, pass } from '../rule-helpers'; +import packageFilesConform from './package-files-conform'; + +describe('Rule: package-files-conforms', () => { + it('passes if the "files" field in the project\'s package.json matches the one in the template\'s package.json', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + await writeFile( + path.join(project.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + + const result = await packageFilesConform.execute({ + template, + project, + pass, + fail, + }); + + expect(result).toStrictEqual({ + passed: true, + }); + }); + }); + + it('fails if the "files" field in the project\'s package.json does not match the one in the template\'s package.json', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + const fakeProjectPackageManifest = { + ...fakePackageManifest, + files: ['test'], + }; + await writeFile( + path.join(project.directoryPath, 'package.json'), + JSON.stringify(fakeProjectPackageManifest), + ); + + const result = await packageFilesConform.execute({ + template, + project, + pass, + fail, + }); + + expect(result).toStrictEqual({ + passed: false, + failures: [ + { + message: + '`files` is "[ \'test\' ]", when it should be "[ \'test-files\' ]".', + }, + ], + }); + }); + }); +}); diff --git a/src/rules/package-jest-dependencies-conform.test.ts b/src/rules/package-jest-dependencies-conform.test.ts index 128bae3..daee6a9 100644 --- a/src/rules/package-jest-dependencies-conform.test.ts +++ b/src/rules/package-jest-dependencies-conform.test.ts @@ -2,7 +2,11 @@ import { writeFile } from '@metamask/utils/node'; import path from 'path'; import packageJestDependenciesConform from './package-jest-dependencies-conform'; -import { buildMetaMaskRepository, withinSandbox } from '../../tests/helpers'; +import { + buildMetaMaskRepository, + fakePackageManifest, + withinSandbox, +} from '../../tests/helpers'; import { fail, pass } from '../rule-helpers'; describe('Rule: package-jest-dependencies-conform', () => { @@ -14,17 +18,7 @@ describe('Rule: package-jest-dependencies-conform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { - jest: '1.0.0', - 'jest-it-up': '1.0.0', - }, - scripts: { - test: '', - }, - }), + JSON.stringify(fakePackageManifest), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -32,17 +26,7 @@ describe('Rule: package-jest-dependencies-conform', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { - jest: '1.0.0', - 'jest-it-up': '1.0.0', - }, - scripts: { - test: '', - }, - }), + JSON.stringify(fakePackageManifest), ); const result = await packageJestDependenciesConform.execute({ @@ -64,19 +48,16 @@ describe('Rule: package-jest-dependencies-conform', () => { shortname: 'template', directoryPath: path.join(sandbox.directoryPath, 'template'), }); + const fakeTemplatePackageManifest = { + ...fakePackageManifest, + devDependencies: { + jest: '1.1.0', + 'jest-it-up': '1.0.0', + }, + }; await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { - jest: '1.1.0', - 'jest-it-up': '1.0.0', - }, - scripts: { - test: '', - }, - }), + JSON.stringify(fakeTemplatePackageManifest), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -84,17 +65,7 @@ describe('Rule: package-jest-dependencies-conform', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { - jest: '1.0.0', - 'jest-it-up': '1.0.0', - }, - scripts: { - test: '', - }, - }), + JSON.stringify(fakePackageManifest), ); const result = await packageJestDependenciesConform.execute({ @@ -121,34 +92,21 @@ describe('Rule: package-jest-dependencies-conform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { - jest: '1.1.0', - 'jest-it-up': '1.0.0', - }, - scripts: { - test: '', - }, - }), + JSON.stringify(fakePackageManifest), ); const project = buildMetaMaskRepository({ shortname: 'project', directoryPath: path.join(sandbox.directoryPath, 'project'), }); + const fakeProjectPackageManifest = { + ...fakePackageManifest, + devDependencies: { + 'jest-it-up': '1.0.0', + }, + }; await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { - 'jest-it-up': '1.0.0', - }, - scripts: { - test: '', - }, - }), + JSON.stringify(fakeProjectPackageManifest), ); const result = await packageJestDependenciesConform.execute({ @@ -163,7 +121,7 @@ describe('Rule: package-jest-dependencies-conform', () => { failures: [ { message: - '`package.json` should list `"jest": "1.1.0"` in `devDependencies`, but does not.', + '`package.json` should list `"jest": "1.0.0"` in `devDependencies`, but does not.', }, ], }); @@ -176,18 +134,15 @@ describe('Rule: package-jest-dependencies-conform', () => { shortname: 'template', directoryPath: path.join(sandbox.directoryPath, 'template'), }); + const fakeTemplatePackageManifest = { + ...fakePackageManifest, + devDependencies: { + 'jest-it-up': '1.0.0', + }, + }; await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { - 'jest-it-up': '1.0.0', - }, - scripts: { - test: '', - }, - }), + JSON.stringify(fakeTemplatePackageManifest), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -195,17 +150,7 @@ describe('Rule: package-jest-dependencies-conform', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { - jest: '1.0.0', - 'jest-it-up': '1.0.0', - }, - scripts: { - test: '', - }, - }), + JSON.stringify(fakePackageManifest), ); await expect( diff --git a/src/rules/package-lavamoat-tsup-conform.test.ts b/src/rules/package-lavamoat-tsup-conform.test.ts new file mode 100644 index 0000000..c8f4d9f --- /dev/null +++ b/src/rules/package-lavamoat-tsup-conform.test.ts @@ -0,0 +1,168 @@ +import { writeFile } from '@metamask/utils/node'; +import path from 'path'; + +import packageLavamoatTsupConforms from './package-lavamoat-tsup-conforms'; +import { + buildMetaMaskRepository, + fakePackageManifest, + withinSandbox, +} from '../../tests/helpers'; +import { fail, pass } from '../rule-helpers'; + +const fakeLavamoatPackageManifest = { + ...fakePackageManifest, + lavamoat: { + allowScripts: { + 'tsup>esbuild': true, + }, + }, +}; + +describe('Rule: package-lavamoat-tsup-conform', () => { + it('passes if the project and template have the same referenced scripts and matches', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'package.json'), + JSON.stringify(fakeLavamoatPackageManifest), + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + await writeFile( + path.join(project.directoryPath, 'package.json'), + JSON.stringify(fakeLavamoatPackageManifest), + ); + const result = await packageLavamoatTsupConforms.execute({ + template, + project, + pass, + fail, + }); + + expect(result).toStrictEqual({ passed: true }); + }); + }); + + it('fails if the project has the same referenced scripts as the template, but its value does not match', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'package.json'), + JSON.stringify(fakeLavamoatPackageManifest), + ); + + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + const fakeProjectPackageManifest = { + ...fakePackageManifest, + lavamoat: { + allowScripts: { + 'tsup>esbuild': false, + }, + }, + }; + await writeFile( + path.join(project.directoryPath, 'package.json'), + JSON.stringify(fakeProjectPackageManifest), + ); + const result = await packageLavamoatTsupConforms.execute({ + template, + project, + pass, + fail, + }); + + expect(result).toStrictEqual({ + passed: false, + failures: [ + { + message: '`tsup>esbuild` is "false", when it should be "true".', + }, + ], + }); + }); + }); + + it('fails if the project has lavamoat and allowScripts, but does not contain tsup>ebuild', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'package.json'), + JSON.stringify(fakeLavamoatPackageManifest), + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + const fakeProjectPackageManifest = { + ...fakePackageManifest, + lavamoat: { + allowScripts: { + test: false, + }, + }, + }; + await writeFile( + path.join(project.directoryPath, 'package.json'), + JSON.stringify(fakeProjectPackageManifest), + ); + const result = await packageLavamoatTsupConforms.execute({ + template, + project, + pass, + fail, + }); + + expect(result).toStrictEqual({ + passed: false, + failures: [ + { + message: + '`package.json` should list `"tsup>esbuild": "true"` in `lavamoat.allowScripts`, but does not.', + }, + ], + }); + }); + }); + + it('passes if the project does not contain lavamoat and allowScripts', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + await writeFile( + path.join(project.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + const result = await packageLavamoatTsupConforms.execute({ + template, + project, + pass, + fail, + }); + expect(result).toStrictEqual({ passed: true }); + }); + }); +}); diff --git a/src/rules/package-lavamoat-tsup-conforms.ts b/src/rules/package-lavamoat-tsup-conforms.ts new file mode 100644 index 0000000..0c9a19e --- /dev/null +++ b/src/rules/package-lavamoat-tsup-conforms.ts @@ -0,0 +1,48 @@ +import { buildRule } from './build-rule'; +import { RuleName } from './types'; + +export default buildRule({ + name: RuleName.PackageLavamoatTsupConform, + description: + 'Does the `lavamoat.allowscripts` field in `package.json` conform?', + dependencies: [RuleName.RequireValidPackageManifest], + execute: async ({ project, template, pass, fail }) => { + const entryPath = 'package.json'; + const templateManifest = await template.fs.readJsonFile(entryPath); + const projectManifest = await project.fs.readJsonFile(entryPath); + + type Key = keyof typeof templateManifest; + const templateLavamoat = templateManifest?.['lavamoat' as Key]; + const projectLavamoat = projectManifest?.['lavamoat' as Key]; + if (templateLavamoat && projectLavamoat) { + type ChildKey = keyof typeof templateLavamoat; + const templateAllowScripts = templateLavamoat['allowScripts' as ChildKey]; + const projectAllowScripts = projectLavamoat['allowScripts' as ChildKey]; + if (projectAllowScripts && !('tsup>esbuild' in projectAllowScripts)) { + return fail([ + { + message: `\`package.json\` should list \`"tsup>esbuild": "${JSON.stringify( + templateAllowScripts?.['tsup>esbuild'], + )}"\` in \`lavamoat.allowScripts\`, but does not.`, + }, + ]); + } else if ( + !( + projectAllowScripts?.['tsup>esbuild'] === + templateAllowScripts?.['tsup>esbuild'] + ) + ) { + return fail([ + { + message: `\`tsup>esbuild\` is "${JSON.stringify( + projectAllowScripts?.['tsup>esbuild'], + )}", when it should be "${JSON.stringify( + templateAllowScripts?.['tsup>esbuild'], + )}".`, + }, + ]); + } + } + return pass(); + }, +}); diff --git a/src/rules/package-lint-dependencies-conform.test.ts b/src/rules/package-lint-dependencies-conform.test.ts index ee800bf..339ac56 100644 --- a/src/rules/package-lint-dependencies-conform.test.ts +++ b/src/rules/package-lint-dependencies-conform.test.ts @@ -2,7 +2,11 @@ import { writeFile } from '@metamask/utils/node'; import path from 'path'; import packageLintDependenciesConform from './package-lint-dependencies-conform'; -import { buildMetaMaskRepository, withinSandbox } from '../../tests/helpers'; +import { + buildMetaMaskRepository, + fakePackageManifest, + withinSandbox, +} from '../../tests/helpers'; import { fail, pass } from '../rule-helpers'; describe('Rule: package-lint-dependencies-conform', () => { @@ -12,23 +16,22 @@ describe('Rule: package-lint-dependencies-conform', () => { shortname: 'template', directoryPath: path.join(sandbox.directoryPath, 'template'), }); + const fakeTemplatePackageManifest = { + ...fakePackageManifest, + devDependencies: { + eslint: '1.0.0', + '@metamask/eslint-config-foo': '1.0.0', + '@typescript-eslint/foo': '1.0.0', + 'eslint-plugin-foo': '1.0.0', + 'eslint-config-foo': '1.0.0', + prettier: '1.0.0', + 'prettier-plugin-foo': '1.0.0', + 'prettier-config-foo': '1.0.0', + }, + }; await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { - '@metamask/eslint-config-foo': '1.0.0', - '@typescript-eslint/foo': '1.0.0', - eslint: '1.0.0', - 'eslint-plugin-foo': '1.0.0', - 'eslint-config-foo': '1.0.0', - prettier: '1.0.0', - 'prettier-plugin-foo': '1.0.0', - 'prettier-config-foo': '1.0.0', - }, - scripts: { test: '' }, - }), + JSON.stringify(fakeTemplatePackageManifest), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -36,21 +39,7 @@ describe('Rule: package-lint-dependencies-conform', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { - '@metamask/eslint-config-foo': '1.0.0', - '@typescript-eslint/foo': '1.0.0', - eslint: '1.0.0', - 'eslint-plugin-foo': '1.0.0', - 'eslint-config-foo': '1.0.0', - prettier: '1.0.0', - 'prettier-plugin-foo': '1.0.0', - 'prettier-config-foo': '1.0.0', - }, - scripts: { test: '' }, - }), + JSON.stringify(fakeTemplatePackageManifest), ); const result = await packageLintDependenciesConform.execute({ @@ -72,27 +61,43 @@ describe('Rule: package-lint-dependencies-conform', () => { shortname: 'template', directoryPath: path.join(sandbox.directoryPath, 'template'), }); + const fakeTemplatePackageManifest = { + ...fakePackageManifest, + devDependencies: { + eslint: '1.1.0', + '@metamask/eslint-config-foo': '1.0.0', + '@typescript-eslint/foo': '1.0.0', + 'eslint-plugin-foo': '1.0.0', + 'eslint-config-foo': '1.0.0', + prettier: '1.0.0', + 'prettier-plugin-foo': '1.0.0', + 'prettier-config-foo': '1.0.0', + }, + }; await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { eslint: '1.1.0' }, - scripts: { test: '' }, - }), + JSON.stringify(fakeTemplatePackageManifest), ); const project = buildMetaMaskRepository({ shortname: 'project', directoryPath: path.join(sandbox.directoryPath, 'project'), }); + const fakeProjectPackageManifest = { + ...fakePackageManifest, + devDependencies: { + eslint: '1.0.0', + '@metamask/eslint-config-foo': '1.0.0', + '@typescript-eslint/foo': '1.0.0', + 'eslint-plugin-foo': '1.0.0', + 'eslint-config-foo': '1.0.0', + prettier: '1.0.0', + 'prettier-plugin-foo': '1.0.0', + 'prettier-config-foo': '1.0.0', + }, + }; await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { eslint: '1.0.0' }, - scripts: { test: '' }, - }), + JSON.stringify(fakeProjectPackageManifest), ); const result = await packageLintDependenciesConform.execute({ @@ -117,27 +122,42 @@ describe('Rule: package-lint-dependencies-conform', () => { shortname: 'template', directoryPath: path.join(sandbox.directoryPath, 'template'), }); + const fakeTemplatePackageManifest = { + ...fakePackageManifest, + devDependencies: { + eslint: '1.0.0', + '@metamask/eslint-config-foo': '1.0.0', + '@typescript-eslint/foo': '1.0.0', + 'eslint-plugin-foo': '1.0.0', + 'eslint-config-foo': '1.0.0', + prettier: '1.0.0', + 'prettier-plugin-foo': '1.0.0', + 'prettier-config-foo': '1.0.0', + }, + }; await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { eslint: '1.1.0' }, - scripts: { test: '' }, - }), + JSON.stringify(fakeTemplatePackageManifest), ); const project = buildMetaMaskRepository({ shortname: 'project', directoryPath: path.join(sandbox.directoryPath, 'project'), }); + const fakeProjectPackageManifest = { + ...fakePackageManifest, + devDependencies: { + '@metamask/eslint-config-foo': '1.0.0', + '@typescript-eslint/foo': '1.0.0', + 'eslint-plugin-foo': '1.0.0', + 'eslint-config-foo': '1.0.0', + prettier: '1.0.0', + 'prettier-plugin-foo': '1.0.0', + 'prettier-config-foo': '1.0.0', + }, + }; await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { testlint: '1.0.0' }, - scripts: { test: '' }, - }), + JSON.stringify(fakeProjectPackageManifest), ); const result = await packageLintDependenciesConform.execute({ @@ -152,7 +172,7 @@ describe('Rule: package-lint-dependencies-conform', () => { failures: [ { message: - '`package.json` should list `"eslint": "1.1.0"` in `devDependencies`, but does not.', + '`package.json` should list `"eslint": "1.0.0"` in `devDependencies`, but does not.', }, ], }); @@ -167,14 +187,7 @@ describe('Rule: package-lint-dependencies-conform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { - '@metamask/test-config-foo': '1.0.0', - }, - scripts: { test: '' }, - }), + JSON.stringify(fakePackageManifest), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -182,21 +195,7 @@ describe('Rule: package-lint-dependencies-conform', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { - '@metamask/eslint-config-foo': '1.0.0', - '@typescript-eslint/foo': '1.0.0', - eslint: '1.0.0', - 'eslint-plugin-foo': '1.0.0', - 'eslint-config-foo': '1.0.0', - prettier: '1.0.0', - 'prettier-plugin-foo': '1.0.0', - 'prettier-config-foo': '1.0.0', - }, - scripts: { test: '' }, - }), + JSON.stringify(fakePackageManifest), ); const result = await packageLintDependenciesConform.execute({ diff --git a/src/rules/package-main-conform.ts b/src/rules/package-main-conform.ts new file mode 100644 index 0000000..78abdcc --- /dev/null +++ b/src/rules/package-main-conform.ts @@ -0,0 +1,12 @@ +import { buildRule } from './build-rule'; +import { RuleName } from './types'; +import { packagePropertiesConform } from '../rule-helpers'; + +export default buildRule({ + name: RuleName.PackageMainConform, + description: 'Do the `main` in `package.json` conform?', + dependencies: [RuleName.RequireValidPackageManifest], + execute: async (ruleExecutionArguments) => { + return packagePropertiesConform('main', ruleExecutionArguments); + }, +}); diff --git a/src/rules/package-main-conforms.test.ts b/src/rules/package-main-conforms.test.ts new file mode 100644 index 0000000..e634447 --- /dev/null +++ b/src/rules/package-main-conforms.test.ts @@ -0,0 +1,85 @@ +import { writeFile } from '@metamask/utils/node'; +import path from 'path'; + +import packageMainConform from './package-main-conform'; +import { + buildMetaMaskRepository, + fakePackageManifest, + withinSandbox, +} from '../../tests/helpers'; +import { fail, pass } from '../rule-helpers'; + +describe('Rule: package-main-conforms', () => { + it('passes if the "main" field in the project\'s package.json matches the one in the template\'s package.json', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + await writeFile( + path.join(project.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + + const result = await packageMainConform.execute({ + template, + project, + pass, + fail, + }); + + expect(result).toStrictEqual({ + passed: true, + }); + }); + }); + + it('fails if the "main" field in the project\'s package.json does not match the one in the template\'s package.json', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + const fakeProjectPackageManifest = { + ...fakePackageManifest, + main: 'test', + }; + await writeFile( + path.join(project.directoryPath, 'package.json'), + JSON.stringify(fakeProjectPackageManifest), + ); + + const result = await packageMainConform.execute({ + template, + project, + pass, + fail, + }); + + expect(result).toStrictEqual({ + passed: false, + failures: [ + { + message: '`main` is "test", when it should be "test-main".', + }, + ], + }); + }); + }); +}); diff --git a/src/rules/package-module-conform.ts b/src/rules/package-module-conform.ts new file mode 100644 index 0000000..705e2e1 --- /dev/null +++ b/src/rules/package-module-conform.ts @@ -0,0 +1,12 @@ +import { buildRule } from './build-rule'; +import { RuleName } from './types'; +import { packagePropertiesConform } from '../rule-helpers'; + +export default buildRule({ + name: RuleName.PackageModuleConform, + description: 'Do the `module` in `package.json` conform?', + dependencies: [RuleName.RequireValidPackageManifest], + execute: async (ruleExecutionArguments) => { + return packagePropertiesConform('module', ruleExecutionArguments); + }, +}); diff --git a/src/rules/package-module-conforms.test.ts b/src/rules/package-module-conforms.test.ts new file mode 100644 index 0000000..262c1bb --- /dev/null +++ b/src/rules/package-module-conforms.test.ts @@ -0,0 +1,85 @@ +import { writeFile } from '@metamask/utils/node'; +import path from 'path'; + +import packageModuleConform from './package-module-conform'; +import { + buildMetaMaskRepository, + fakePackageManifest, + withinSandbox, +} from '../../tests/helpers'; +import { fail, pass } from '../rule-helpers'; + +describe('Rule: package-module-conforms', () => { + it('passes if the "module" field in the project\'s package.json matches the one in the template\'s package.json', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + await writeFile( + path.join(project.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + + const result = await packageModuleConform.execute({ + template, + project, + pass, + fail, + }); + + expect(result).toStrictEqual({ + passed: true, + }); + }); + }); + + it('fails if the "module" field in the project\'s package.json does not match the one in the template\'s package.json', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + const fakeProjectPackageManifest = { + ...fakePackageManifest, + module: 'test', + }; + await writeFile( + path.join(project.directoryPath, 'package.json'), + JSON.stringify(fakeProjectPackageManifest), + ); + + const result = await packageModuleConform.execute({ + template, + project, + pass, + fail, + }); + + expect(result).toStrictEqual({ + passed: false, + failures: [ + { + message: '`module` is "test", when it should be "test-module".', + }, + ], + }); + }); + }); +}); diff --git a/src/rules/package-package-manager-field-conforms.test.ts b/src/rules/package-package-manager-field-conforms.test.ts index fce2622..3d609c6 100644 --- a/src/rules/package-package-manager-field-conforms.test.ts +++ b/src/rules/package-package-manager-field-conforms.test.ts @@ -2,7 +2,11 @@ import { writeFile } from '@metamask/utils/node'; import path from 'path'; import packageManagerFieldConforms from './package-package-manager-field-conforms'; -import { buildMetaMaskRepository, withinSandbox } from '../../tests/helpers'; +import { + buildMetaMaskRepository, + fakePackageManifest, + withinSandbox, +} from '../../tests/helpers'; import { fail, pass } from '../rule-helpers'; describe('Rule: package-manager-field-conforms', () => { @@ -14,12 +18,7 @@ describe('Rule: package-manager-field-conforms', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { eslint: '1.0.0' }, - scripts: { test: '' }, - }), + JSON.stringify(fakePackageManifest), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -27,12 +26,7 @@ describe('Rule: package-manager-field-conforms', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { eslint: '1.0.0' }, - scripts: { test: '' }, - }), + JSON.stringify(fakePackageManifest), ); const result = await packageManagerFieldConforms.execute({ @@ -56,25 +50,19 @@ describe('Rule: package-manager-field-conforms', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { eslint: '1.0.0' }, - scripts: { test: '' }, - }), + JSON.stringify(fakePackageManifest), ); const project = buildMetaMaskRepository({ shortname: 'project', directoryPath: path.join(sandbox.directoryPath, 'project'), }); + const fakeProjectPackageManifest = { + ...fakePackageManifest, + packageManager: 'test', + }; await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'b', - engines: { node: 'test' }, - devDependencies: { eslint: '1.0.0' }, - scripts: { test: '' }, - }), + JSON.stringify(fakeProjectPackageManifest), ); const result = await packageManagerFieldConforms.execute({ @@ -87,7 +75,7 @@ describe('Rule: package-manager-field-conforms', () => { expect(result).toStrictEqual({ passed: false, failures: [ - { message: '`packageManager` is "b", when it should be "a".' }, + { message: '`packageManager` is "test", when it should be "yarn".' }, ], }); }); diff --git a/src/rules/package-test-scripts-conform.test.ts b/src/rules/package-test-scripts-conform.test.ts index 6197b0c..0c2c3a7 100644 --- a/src/rules/package-test-scripts-conform.test.ts +++ b/src/rules/package-test-scripts-conform.test.ts @@ -2,7 +2,11 @@ import { writeFile } from '@metamask/utils/node'; import path from 'path'; import packageTestScriptsConform from './package-test-scripts-conform'; -import { buildMetaMaskRepository, withinSandbox } from '../../tests/helpers'; +import { + buildMetaMaskRepository, + fakePackageManifest, + withinSandbox, +} from '../../tests/helpers'; import { fail, pass } from '../rule-helpers'; describe('Rule: package-test-scripts-conform', () => { @@ -14,18 +18,7 @@ describe('Rule: package-test-scripts-conform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { - jest: '1.0.0', - 'jest-it-up': '1.0.0', - }, - scripts: { - test: 'test script', - 'test:watch': 'test watch script', - }, - }), + JSON.stringify(fakePackageManifest), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -33,18 +26,7 @@ describe('Rule: package-test-scripts-conform', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { - jest: '1.0.0', - 'jest-it-up': '1.0.0', - }, - scripts: { - test: 'test script', - 'test:watch': 'test watch script', - }, - }), + JSON.stringify(fakePackageManifest), ); const result = await packageTestScriptsConform.execute({ @@ -68,31 +50,22 @@ describe('Rule: package-test-scripts-conform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { jest: '1.1.0' }, - scripts: { - test: 'test script', - 'test:watch': 'test watch script', - }, - }), + JSON.stringify(fakePackageManifest), ); const project = buildMetaMaskRepository({ shortname: 'project', directoryPath: path.join(sandbox.directoryPath, 'project'), }); + const fakeProjectPackageManifest = { + ...fakePackageManifest, + scripts: { + test: 'test', + 'test:watch': 'test watch script', + }, + }; await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { jest: '1.0.0' }, - scripts: { - test: 'test', - 'test:watch': 'test watch script', - }, - }), + JSON.stringify(fakeProjectPackageManifest), ); const result = await packageTestScriptsConform.execute({ @@ -119,30 +92,21 @@ describe('Rule: package-test-scripts-conform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { jest: '1.1.0' }, - scripts: { - test: 'test script', - 'test:watch': 'test watch script', - }, - }), + JSON.stringify(fakePackageManifest), ); const project = buildMetaMaskRepository({ shortname: 'project', directoryPath: path.join(sandbox.directoryPath, 'project'), }); + const fakeProjectPackageManifest = { + ...fakePackageManifest, + scripts: { + 'test:watch': 'test watch script', + }, + }; await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { test: '1.0.0' }, - scripts: { - 'test:watch': 'test watch script', - }, - }), + JSON.stringify(fakeProjectPackageManifest), ); const result = await packageTestScriptsConform.execute({ @@ -157,7 +121,7 @@ describe('Rule: package-test-scripts-conform', () => { failures: [ { message: - '`package.json` should list `"test": "test script"` in `scripts`, but does not.', + '`package.json` should list `"test": "test script"`, but does not.', }, ], }); @@ -170,18 +134,15 @@ describe('Rule: package-test-scripts-conform', () => { shortname: 'template', directoryPath: path.join(sandbox.directoryPath, 'template'), }); + const fakeTemplatePackageManifest = { + ...fakePackageManifest, + scripts: { + 'test:watch': 'test watch script', + }, + }; await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { - foo: '1.0.0', - }, - scripts: { - 'test:watch': 'test watch script', - }, - }), + JSON.stringify(fakeTemplatePackageManifest), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -189,18 +150,7 @@ describe('Rule: package-test-scripts-conform', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'a', - engines: { node: 'test' }, - devDependencies: { - jest: '1.0.0', - 'jest-it-up': '1.0.0', - }, - scripts: { - test: 'test scripts', - 'test:watch': 'test watch scripts', - }, - }), + JSON.stringify(fakePackageManifest), ); await expect( @@ -211,7 +161,7 @@ describe('Rule: package-test-scripts-conform', () => { fail, }), ).rejects.toThrow( - 'Could not find "test" in `scripts` of template\'s package.json. This is not the fault of the project, but is rather a bug in a rule.', + 'Could not find "test" in template\'s package.json. This is not the fault of the project, but is rather a bug in a rule.', ); }); }); diff --git a/src/rules/package-test-scripts-conform.ts b/src/rules/package-test-scripts-conform.ts index 9d154f7..be85fb9 100644 --- a/src/rules/package-test-scripts-conform.ts +++ b/src/rules/package-test-scripts-conform.ts @@ -1,68 +1,15 @@ import { buildRule } from './build-rule'; -import { PackageManifestSchema, RuleName } from './types'; -import type { RuleExecutionFailure } from '../execute-rules'; +import { RuleName } from './types'; +import { packagePropertiesConform } from '../rule-helpers'; export default buildRule({ name: RuleName.PackageTestScriptsConform, description: 'Do the test-related `scripts` in `package.json` conform?', dependencies: [RuleName.RequireValidPackageManifest], - execute: async ({ project, template, pass, fail }) => { - const entryPath = 'package.json'; - - const templateManifest = await template.fs.readJsonFileAs( - entryPath, - PackageManifestSchema, - ); - - const projectManifest = await project.fs.readJsonFileAs( - entryPath, - PackageManifestSchema, - ); - - const failures: RuleExecutionFailure[] = await testScriptsConform( - templateManifest.scripts, - projectManifest.scripts, - ); - - return failures.length === 0 ? pass() : fail(failures); + execute: async (ruleExecutionArguments) => { + return packagePropertiesConform('scripts', ruleExecutionArguments, [ + 'test', + 'test:watch', + ]); }, }); - -/** - * Validates whether target project has all the required test scripts matching with template project. - * - * @param templateScripts - The record of key and value from template scripts. - * @param projectScripts - The record of key and value from project scripts. - */ -async function testScriptsConform( - templateScripts: Record, - projectScripts: Record, -): Promise { - const testScriptsRequired = ['test', 'test:watch']; - const failures: RuleExecutionFailure[] = []; - for (const testScriptKey of testScriptsRequired) { - const templateScript = templateScripts[testScriptKey]; - if (!templateScript) { - throw new Error( - `Could not find "${testScriptKey}" in \`scripts\` of template's package.json. This is not the fault of the project, but is rather a bug in a rule.`, - ); - } - - const projectScript = projectScripts[testScriptKey]; - if (!projectScript) { - failures.push({ - message: `\`package.json\` should list \`"${testScriptKey}": "${templateScript}"\` in \`scripts\`, but does not.`, - }); - - continue; - } - - if (projectScript !== templateScript) { - failures.push({ - message: `\`${testScriptKey}\` is "${projectScript}", when it should be "${templateScript}".`, - }); - } - } - - return failures; -} diff --git a/src/rules/package-types-conform.ts b/src/rules/package-types-conform.ts new file mode 100644 index 0000000..75b7124 --- /dev/null +++ b/src/rules/package-types-conform.ts @@ -0,0 +1,12 @@ +import { buildRule } from './build-rule'; +import { RuleName } from './types'; +import { packagePropertiesConform } from '../rule-helpers'; + +export default buildRule({ + name: RuleName.PackageTypesConform, + description: 'Do the `types` in `package.json` conform?', + dependencies: [RuleName.RequireValidPackageManifest], + execute: async (ruleExecutionArguments) => { + return packagePropertiesConform('types', ruleExecutionArguments); + }, +}); diff --git a/src/rules/package-types-conforms.test.ts b/src/rules/package-types-conforms.test.ts new file mode 100644 index 0000000..99c1e34 --- /dev/null +++ b/src/rules/package-types-conforms.test.ts @@ -0,0 +1,85 @@ +import { writeFile } from '@metamask/utils/node'; +import path from 'path'; + +import packageTypesConform from './package-types-conform'; +import { + buildMetaMaskRepository, + fakePackageManifest, + withinSandbox, +} from '../../tests/helpers'; +import { fail, pass } from '../rule-helpers'; + +describe('Rule: package-types-conforms', () => { + it('passes if the "types" field in the project\'s package.json matches the one in the template\'s package.json', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + await writeFile( + path.join(project.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + + const result = await packageTypesConform.execute({ + template, + project, + pass, + fail, + }); + + expect(result).toStrictEqual({ + passed: true, + }); + }); + }); + + it('fails if the "types" field in the project\'s package.json does not match the one in the template\'s package.json', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + const fakeProjectPackageManifest = { + ...fakePackageManifest, + types: 'test', + }; + await writeFile( + path.join(project.directoryPath, 'package.json'), + JSON.stringify(fakeProjectPackageManifest), + ); + + const result = await packageTypesConform.execute({ + template, + project, + pass, + fail, + }); + + expect(result).toStrictEqual({ + passed: false, + failures: [ + { + message: '`types` is "test", when it should be "test-types".', + }, + ], + }); + }); + }); +}); diff --git a/src/rules/package-typescript-dev-dependencies-conform.test.ts b/src/rules/package-typescript-dev-dependencies-conform.test.ts new file mode 100644 index 0000000..1ed7f23 --- /dev/null +++ b/src/rules/package-typescript-dev-dependencies-conform.test.ts @@ -0,0 +1,170 @@ +import { writeFile } from '@metamask/utils/node'; +import path from 'path'; + +import packageTypescriptDevDependenciesConform from './package-typescript-dev-dependencies-conform'; +import { + buildMetaMaskRepository, + fakePackageManifest, + withinSandbox, +} from '../../tests/helpers'; +import { fail, pass } from '../rule-helpers'; + +describe('Rule: package-typescript-dev-dependencies-conform', () => { + it('passes if the project and template have the same referenced package with the same version', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + await writeFile( + path.join(project.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + const result = await packageTypescriptDevDependenciesConform.execute({ + template, + project, + pass, + fail, + }); + + expect(result).toStrictEqual({ passed: true }); + }); + }); + + it('fails if the project has the same referenced packages as the template, but its version does not match', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + const fakeProjectPackageManifest = { + ...fakePackageManifest, + devDependencies: { + '@types/node': '1.0.0', + 'ts-node': '0.0.1', + tsup: '1.0.0', + typescript: '1.0.0', + }, + }; + await writeFile( + path.join(project.directoryPath, 'package.json'), + JSON.stringify(fakeProjectPackageManifest), + ); + const result = await packageTypescriptDevDependenciesConform.execute({ + template, + project, + pass, + fail, + }); + + expect(result).toStrictEqual({ + passed: false, + failures: [ + { + message: '`ts-node` is "0.0.1", when it should be "1.0.0".', + }, + ], + }); + }); + }); + + it('fails if the project does not have the same referenced package as the template', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + const fakeProjectPackageManifest = { + ...fakePackageManifest, + devDependencies: { + '@types/node': '1.0.0', + tsup: '1.0.0', + typescript: '1.0.0', + }, + }; + await writeFile( + path.join(project.directoryPath, 'package.json'), + JSON.stringify(fakeProjectPackageManifest), + ); + const result = await packageTypescriptDevDependenciesConform.execute({ + template, + project, + pass, + fail, + }); + + expect(result).toStrictEqual({ + passed: false, + failures: [ + { + message: + '`package.json` should list `"ts-node": "1.0.0"`, but does not.', + }, + ], + }); + }); + }); + + it('throws error if the package does not exist in the template devDependencies', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + const fakeTemplatePackageManifest = { + ...fakePackageManifest, + devDependencies: { + '@types/node': '1.0.0', + tsup: '1.0.0', + typescript: '1.0.0', + }, + }; + await writeFile( + path.join(template.directoryPath, 'package.json'), + JSON.stringify(fakeTemplatePackageManifest), + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + await writeFile( + path.join(project.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + await expect( + packageTypescriptDevDependenciesConform.execute({ + template, + project, + pass, + fail, + }), + ).rejects.toThrow( + 'Could not find "ts-node" in template\'s package.json. This is not the fault of the project, but is rather a bug in a rule.', + ); + }); + }); +}); diff --git a/src/rules/package-typescript-dev-dependencies-conform.ts b/src/rules/package-typescript-dev-dependencies-conform.ts new file mode 100644 index 0000000..24fdaf6 --- /dev/null +++ b/src/rules/package-typescript-dev-dependencies-conform.ts @@ -0,0 +1,18 @@ +import { buildRule } from './build-rule'; +import { RuleName } from './types'; +import { packagePropertiesConform } from '../rule-helpers'; + +export default buildRule({ + name: RuleName.PackageTypeScriptDependenciesConform, + description: + 'Do the typescript-related `devDependencies` in `package.json` conform?', + dependencies: [RuleName.RequireValidPackageManifest], + execute: async (ruleExecutionArguments) => { + const requiredPackages = ['@types/node', 'ts-node', 'tsup', 'typescript']; + return packagePropertiesConform( + 'devDependencies', + ruleExecutionArguments, + requiredPackages, + ); + }, +}); diff --git a/src/rules/package-typescript-scripts-conform.test.ts b/src/rules/package-typescript-scripts-conform.test.ts new file mode 100644 index 0000000..02217a8 --- /dev/null +++ b/src/rules/package-typescript-scripts-conform.test.ts @@ -0,0 +1,164 @@ +import { writeFile } from '@metamask/utils/node'; +import path from 'path'; + +import packageTypescriptScriptsConform from './package-typescript-scripts-conform'; +import { + buildMetaMaskRepository, + fakePackageManifest, + withinSandbox, +} from '../../tests/helpers'; +import { fail, pass } from '../rule-helpers'; + +describe('Rule: package-typescript-scripts-conform', () => { + it('passes if the project and template have the same referenced scripts and matches', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + await writeFile( + path.join(project.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + const result = await packageTypescriptScriptsConform.execute({ + template, + project, + pass, + fail, + }); + + expect(result).toStrictEqual({ passed: true }); + }); + }); + + it('fails if the project has the same referenced scripts as the template, but its value does not match', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + const fakeProjectPackageManifest = { + ...fakePackageManifest, + scripts: { + build: 'test', + 'build:types': 'test build types', + }, + }; + await writeFile( + path.join(project.directoryPath, 'package.json'), + JSON.stringify(fakeProjectPackageManifest), + ); + const result = await packageTypescriptScriptsConform.execute({ + template, + project, + pass, + fail, + }); + + expect(result).toStrictEqual({ + passed: false, + failures: [ + { + message: '`build` is "test", when it should be "test build".', + }, + ], + }); + }); + }); + + it('fails if the project does not have the same referenced script as the template', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + const fakeProjectPackageManifest = { + ...fakePackageManifest, + scripts: { + 'build:types': 'test build types', + }, + }; + await writeFile( + path.join(project.directoryPath, 'package.json'), + JSON.stringify(fakeProjectPackageManifest), + ); + const result = await packageTypescriptScriptsConform.execute({ + template, + project, + pass, + fail, + }); + + expect(result).toStrictEqual({ + passed: false, + failures: [ + { + message: + '`package.json` should list `"build": "test build"`, but does not.', + }, + ], + }); + }); + }); + + it('throws error if the script does not exist in the template scripts', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + const fakeTemplatePackageManifest = { + ...fakePackageManifest, + scripts: { + 'build:types': 'test build types', + }, + }; + await writeFile( + path.join(template.directoryPath, 'package.json'), + JSON.stringify(fakeTemplatePackageManifest), + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + await writeFile( + path.join(project.directoryPath, 'package.json'), + JSON.stringify(fakePackageManifest), + ); + await expect( + packageTypescriptScriptsConform.execute({ + template, + project, + pass, + fail, + }), + ).rejects.toThrow( + 'Could not find "build" in template\'s package.json. This is not the fault of the project, but is rather a bug in a rule.', + ); + }); + }); +}); diff --git a/src/rules/package-typescript-scripts-conform.ts b/src/rules/package-typescript-scripts-conform.ts new file mode 100644 index 0000000..6623b7b --- /dev/null +++ b/src/rules/package-typescript-scripts-conform.ts @@ -0,0 +1,17 @@ +import { buildRule } from './build-rule'; +import { RuleName } from './types'; +import { packagePropertiesConform } from '../rule-helpers'; + +export default buildRule({ + name: RuleName.PackageTypeScriptScriptsConform, + description: 'Do the typescript-related `scripts` in `package.json` conform?', + dependencies: [RuleName.RequireValidPackageManifest], + execute: async (ruleExecutionArguments) => { + const requiredScripts = ['build', 'build:types']; + return await packagePropertiesConform( + 'scripts', + ruleExecutionArguments, + requiredScripts, + ); + }, +}); diff --git a/src/rules/require-tsconfig-build.test.ts b/src/rules/require-tsconfig-build.test.ts new file mode 100644 index 0000000..63fd70a --- /dev/null +++ b/src/rules/require-tsconfig-build.test.ts @@ -0,0 +1,73 @@ +import { writeFile } from '@metamask/utils/node'; +import path from 'path'; + +import { buildMetaMaskRepository, withinSandbox } from '../../tests/helpers'; +import { fail, pass } from '../rule-helpers'; +import requireTsconfigBuild from './require-tsconfig-build'; + +describe('Rule: require-tsconfig-build', () => { + it('passes if the project has a tsconfig.build.json', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'tsconfig.build.json'), + 'contents of tsconfig-build', + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + await writeFile( + path.join(project.directoryPath, 'tsconfig.build.json'), + 'contents of tsconfig-build', + ); + + const result = await requireTsconfigBuild.execute({ + template, + project, + pass, + fail, + }); + + expect(result).toStrictEqual({ + passed: true, + }); + }); + }); + + it('fails with failure message when tsconfig.build.json does not exist', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'tsconfig.build.json'), + 'contents of tsconfig-build', + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + + const result = await requireTsconfigBuild.execute({ + template, + project, + pass, + fail, + }); + + expect(result).toStrictEqual({ + passed: false, + failures: [ + { + message: '`tsconfig.build.json` does not exist in this project.', + }, + ], + }); + }); + }); +}); diff --git a/src/rules/require-tsconfig-build.ts b/src/rules/require-tsconfig-build.ts new file mode 100644 index 0000000..48c392a --- /dev/null +++ b/src/rules/require-tsconfig-build.ts @@ -0,0 +1,12 @@ +import { buildRule } from './build-rule'; +import { RuleName } from './types'; +import { fileConforms } from '../rule-helpers'; + +export default buildRule({ + name: RuleName.RequireTsConfigBuild, + description: 'Is `tsconfig.build.json` present, and does it conform?', + dependencies: [], + execute: async (ruleExecutionArguments) => { + return await fileConforms('tsconfig.build.json', ruleExecutionArguments); + }, +}); diff --git a/src/rules/require-tsconfig.test.ts b/src/rules/require-tsconfig.test.ts new file mode 100644 index 0000000..044697c --- /dev/null +++ b/src/rules/require-tsconfig.test.ts @@ -0,0 +1,73 @@ +import { writeFile } from '@metamask/utils/node'; +import path from 'path'; + +import { buildMetaMaskRepository, withinSandbox } from '../../tests/helpers'; +import { fail, pass } from '../rule-helpers'; +import requireTsconfig from './require-tsconfig'; + +describe('Rule: require-tsconfig', () => { + it('passes if the project has a tsconfig.json', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'tsconfig.json'), + 'contents of tsconfig', + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + await writeFile( + path.join(project.directoryPath, 'tsconfig.json'), + 'contents of tsconfig', + ); + + const result = await requireTsconfig.execute({ + template, + project, + pass, + fail, + }); + + expect(result).toStrictEqual({ + passed: true, + }); + }); + }); + + it('fails with failure message when tsconfig.json does not exist', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'tsconfig.json'), + 'contents of tsconfig', + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + + const result = await requireTsconfig.execute({ + template, + project, + pass, + fail, + }); + + expect(result).toStrictEqual({ + passed: false, + failures: [ + { + message: '`tsconfig.json` does not exist in this project.', + }, + ], + }); + }); + }); +}); diff --git a/src/rules/require-tsconfig.ts b/src/rules/require-tsconfig.ts new file mode 100644 index 0000000..1e77932 --- /dev/null +++ b/src/rules/require-tsconfig.ts @@ -0,0 +1,12 @@ +import { buildRule } from './build-rule'; +import { RuleName } from './types'; +import { fileConforms } from '../rule-helpers'; + +export default buildRule({ + name: RuleName.RequireTsConfig, + description: 'Is `tsconfig.json` present, and does it conform?', + dependencies: [], + execute: async (ruleExecutionArguments) => { + return await fileConforms('tsconfig.json', ruleExecutionArguments); + }, +}); diff --git a/src/rules/require-tsup-config.test.ts b/src/rules/require-tsup-config.test.ts new file mode 100644 index 0000000..aba1806 --- /dev/null +++ b/src/rules/require-tsup-config.test.ts @@ -0,0 +1,73 @@ +import { writeFile } from '@metamask/utils/node'; +import path from 'path'; + +import { buildMetaMaskRepository, withinSandbox } from '../../tests/helpers'; +import { fail, pass } from '../rule-helpers'; +import requireTsupConfig from './require-tsup-config'; + +describe('Rule: require-tsup-config', () => { + it('passes if the project has a tsup.config.ts', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'tsup.config.ts'), + 'contents of tsup-config', + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + await writeFile( + path.join(project.directoryPath, 'tsup.config.ts'), + 'contents of tsup-config', + ); + + const result = await requireTsupConfig.execute({ + template, + project, + pass, + fail, + }); + + expect(result).toStrictEqual({ + passed: true, + }); + }); + }); + + it('fails with failure message when tsup.config.ts does not exist', async () => { + await withinSandbox(async (sandbox) => { + const template = buildMetaMaskRepository({ + shortname: 'template', + directoryPath: path.join(sandbox.directoryPath, 'template'), + }); + await writeFile( + path.join(template.directoryPath, 'tsup.config.ts'), + 'contents of tsup-config', + ); + const project = buildMetaMaskRepository({ + shortname: 'project', + directoryPath: path.join(sandbox.directoryPath, 'project'), + }); + + const result = await requireTsupConfig.execute({ + template, + project, + pass, + fail, + }); + + expect(result).toStrictEqual({ + passed: false, + failures: [ + { + message: '`tsup.config.ts` does not exist in this project.', + }, + ], + }); + }); + }); +}); diff --git a/src/rules/require-tsup-config.ts b/src/rules/require-tsup-config.ts new file mode 100644 index 0000000..19ea200 --- /dev/null +++ b/src/rules/require-tsup-config.ts @@ -0,0 +1,12 @@ +import { buildRule } from './build-rule'; +import { RuleName } from './types'; +import { fileConforms } from '../rule-helpers'; + +export default buildRule({ + name: RuleName.RequireTsupConfig, + description: 'Is `tsup.config.ts` present, and does it conform?', + dependencies: [], + execute: async (ruleExecutionArguments) => { + return await fileConforms('tsup.config.ts', ruleExecutionArguments); + }, +}); diff --git a/src/rules/require-valid-package-manifest.test.ts b/src/rules/require-valid-package-manifest.test.ts index bffa2cf..598ed9e 100644 --- a/src/rules/require-valid-package-manifest.test.ts +++ b/src/rules/require-valid-package-manifest.test.ts @@ -2,7 +2,11 @@ import { writeFile } from '@metamask/utils/node'; import path from 'path'; import requireValidPackageManifest from './require-valid-package-manifest'; -import { buildMetaMaskRepository, withinSandbox } from '../../tests/helpers'; +import { + buildMetaMaskRepository, + fakePackageManifest, + withinSandbox, +} from '../../tests/helpers'; import { fail, pass } from '../rule-helpers'; describe('Rule: require-package-manifest', () => { @@ -14,12 +18,7 @@ describe('Rule: require-package-manifest', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify({ - packageManager: 'foo', - engines: { node: 'test' }, - devDependencies: { eslint: '1.0.0' }, - scripts: { test: 'test script' }, - }), + JSON.stringify(fakePackageManifest), ); const result = await requireValidPackageManifest.execute({ @@ -83,7 +82,7 @@ describe('Rule: require-package-manifest', () => { failures: [ { message: - 'Invalid `package.json`: Missing `packageManager`; Missing `engines`; Missing `scripts`; Missing `devDependencies`.', + 'Invalid `package.json`: Missing `packageManager`; Missing `engines`; Missing `exports`; Missing `main`; Missing `module`; Missing `types`; Missing `files`; Missing `scripts`; Missing `devDependencies`.', }, ], }); diff --git a/src/rules/types.ts b/src/rules/types.ts index f3a8e68..7199673 100644 --- a/src/rules/types.ts +++ b/src/rules/types.ts @@ -1,4 +1,4 @@ -import { type, string, record } from 'superstruct'; +import { type, string, record, array } from 'superstruct'; /** * All of the known rules. @@ -18,6 +18,17 @@ export enum RuleName { PackageJestDependenciesConform = 'package-jest-dependencies-conform', RequireJestConfig = 'require-jest-config', PackageTestScriptsConform = 'package-test-scripts-conform', + RequireTsConfig = 'require-tsconfig', + RequireTsConfigBuild = 'require-tsconfig-build', + RequireTsupConfig = 'require-tsup-config', + PackageTypeScriptDependenciesConform = 'package-typescript-dependencies-conform', + PackageTypeScriptScriptsConform = 'package-typescript-scripts-conform', + PackageExportsConform = 'package-exports-conform', + PackageMainConform = 'package-main-conform', + PackageModuleConform = 'package-module-conform', + PackageTypesConform = 'package-types-conform', + PackageFilesConform = 'package-files-conform', + PackageLavamoatTsupConform = 'package-lavamoat-tsup-conform', } export const PackageManifestSchema = type({ @@ -25,6 +36,14 @@ export const PackageManifestSchema = type({ engines: type({ node: string(), }), + exports: type({ + '.': record(string(), string()), + './package.json': string(), + }), + main: string(), + module: string(), + types: string(), + files: array(string()), scripts: record(string(), string()), devDependencies: record(string(), string()), }); diff --git a/tests/helpers.ts b/tests/helpers.ts index 40d46ff..66b6e1e 100644 --- a/tests/helpers.ts +++ b/tests/helpers.ts @@ -143,3 +143,33 @@ export function buildMetaMaskRepository({ fs, }; } + +export const fakePackageManifest = { + packageManager: 'yarn', + engines: { node: '1.0.0' }, + main: 'test-main', + module: 'test-module', + types: 'test-types', + files: ['test-files'], + exports: { + '.': { + test: 'test-pack', + }, + './package.json': 'test', + }, + devDependencies: { + test: '1.0.0', + jest: '1.0.0', + 'jest-it-up': '1.0.0', + '@types/node': '1.0.0', + 'ts-node': '1.0.0', + tsup: '1.0.0', + typescript: '1.0.0', + }, + scripts: { + test: 'test script', + 'test:watch': 'test watch script', + build: 'test build', + 'build:types': 'test build types', + }, +}; diff --git a/yarn.lock b/yarn.lock index 3fd32f0..bca5657 100644 --- a/yarn.lock +++ b/yarn.lock @@ -22,68 +22,68 @@ __metadata: languageName: node linkType: hard -"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.22.13": - version: 7.22.13 - resolution: "@babel/code-frame@npm:7.22.13" +"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.23.5": + version: 7.23.5 + resolution: "@babel/code-frame@npm:7.23.5" dependencies: - "@babel/highlight": ^7.22.13 + "@babel/highlight": ^7.23.4 chalk: ^2.4.2 - checksum: 22e342c8077c8b77eeb11f554ecca2ba14153f707b85294fcf6070b6f6150aae88a7b7436dd88d8c9289970585f3fe5b9b941c5aa3aa26a6d5a8ef3f292da058 + checksum: d90981fdf56a2824a9b14d19a4c0e8db93633fd488c772624b4e83e0ceac6039a27cd298a247c3214faa952bf803ba23696172ae7e7235f3b97f43ba278c569a languageName: node linkType: hard -"@babel/compat-data@npm:^7.22.9": - version: 7.23.2 - resolution: "@babel/compat-data@npm:7.23.2" - checksum: d8dc27437d40907b271161d4c88ffe72ccecb034c730deb1960a417b59a14d7c5ebca8cd80dd458a01cd396a7a329eb48cddcc3791b5a84da33d7f278f7bec6a +"@babel/compat-data@npm:^7.23.5": + version: 7.23.5 + resolution: "@babel/compat-data@npm:7.23.5" + checksum: 06ce244cda5763295a0ea924728c09bae57d35713b675175227278896946f922a63edf803c322f855a3878323d48d0255a2a3023409d2a123483c8a69ebb4744 languageName: node linkType: hard "@babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3": - version: 7.23.2 - resolution: "@babel/core@npm:7.23.2" + version: 7.23.9 + resolution: "@babel/core@npm:7.23.9" dependencies: "@ampproject/remapping": ^2.2.0 - "@babel/code-frame": ^7.22.13 - "@babel/generator": ^7.23.0 - "@babel/helper-compilation-targets": ^7.22.15 - "@babel/helper-module-transforms": ^7.23.0 - "@babel/helpers": ^7.23.2 - "@babel/parser": ^7.23.0 - "@babel/template": ^7.22.15 - "@babel/traverse": ^7.23.2 - "@babel/types": ^7.23.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/helpers": ^7.23.9 + "@babel/parser": ^7.23.9 + "@babel/template": ^7.23.9 + "@babel/traverse": ^7.23.9 + "@babel/types": ^7.23.9 convert-source-map: ^2.0.0 debug: ^4.1.0 gensync: ^1.0.0-beta.2 json5: ^2.2.3 semver: ^6.3.1 - checksum: 003897718ded16f3b75632d63cd49486bf67ff206cc7ebd1a10d49e2456f8d45740910d5ec7e42e3faf0deec7a2e96b1a02e766d19a67a8309053f0d4e57c0fe + checksum: 634a511f74db52a5f5a283c1121f25e2227b006c095b84a02a40a9213842489cd82dc7d61cdc74e10b5bcd9bb0a4e28bab47635b54c7e2256d47ab57356e2a76 languageName: node linkType: hard -"@babel/generator@npm:^7.23.0, @babel/generator@npm:^7.7.2": - version: 7.23.0 - resolution: "@babel/generator@npm:7.23.0" +"@babel/generator@npm:^7.23.6, @babel/generator@npm:^7.7.2": + version: 7.23.6 + resolution: "@babel/generator@npm:7.23.6" dependencies: - "@babel/types": ^7.23.0 + "@babel/types": ^7.23.6 "@jridgewell/gen-mapping": ^0.3.2 "@jridgewell/trace-mapping": ^0.3.17 jsesc: ^2.5.1 - checksum: 8efe24adad34300f1f8ea2add420b28171a646edc70f2a1b3e1683842f23b8b7ffa7e35ef0119294e1901f45bfea5b3dc70abe1f10a1917ccdfb41bed69be5f1 + checksum: 1a1a1c4eac210f174cd108d479464d053930a812798e09fee069377de39a893422df5b5b146199ead7239ae6d3a04697b45fc9ac6e38e0f6b76374390f91fc6c languageName: node linkType: hard -"@babel/helper-compilation-targets@npm:^7.22.15": - version: 7.22.15 - resolution: "@babel/helper-compilation-targets@npm:7.22.15" +"@babel/helper-compilation-targets@npm:^7.23.6": + version: 7.23.6 + resolution: "@babel/helper-compilation-targets@npm:7.23.6" dependencies: - "@babel/compat-data": ^7.22.9 - "@babel/helper-validator-option": ^7.22.15 - 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 - checksum: ce85196769e091ae54dd39e4a80c2a9df1793da8588e335c383d536d54f06baf648d0a08fc873044f226398c4ded15c4ae9120ee18e7dfd7c639a68e3cdc9980 + checksum: c630b98d4527ac8fe2c58d9a06e785dfb2b73ec71b7c4f2ddf90f814b5f75b547f3c015f110a010fd31f76e3864daaf09f3adcd2f6acdbfb18a8de3a48717590 languageName: node linkType: hard @@ -122,9 +122,9 @@ __metadata: languageName: node linkType: hard -"@babel/helper-module-transforms@npm:^7.23.0": - version: 7.23.0 - resolution: "@babel/helper-module-transforms@npm:7.23.0" +"@babel/helper-module-transforms@npm:^7.23.3": + version: 7.23.3 + resolution: "@babel/helper-module-transforms@npm:7.23.3" dependencies: "@babel/helper-environment-visitor": ^7.22.20 "@babel/helper-module-imports": ^7.22.15 @@ -133,7 +133,7 @@ __metadata: "@babel/helper-validator-identifier": ^7.22.20 peerDependencies: "@babel/core": ^7.0.0 - checksum: 6e2afffb058cf3f8ce92f5116f710dda4341c81cfcd872f9a0197ea594f7ce0ab3cb940b0590af2fe99e60d2e5448bfba6bca8156ed70a2ed4be2adc8586c891 + checksum: 5d0895cfba0e16ae16f3aa92fee108517023ad89a855289c4eb1d46f7aef4519adf8e6f971e1d55ac20c5461610e17213f1144097a8f932e768a9132e2278d71 languageName: node linkType: hard @@ -162,10 +162,10 @@ __metadata: languageName: node linkType: hard -"@babel/helper-string-parser@npm:^7.22.5": - version: 7.22.5 - resolution: "@babel/helper-string-parser@npm:7.22.5" - checksum: 836851ca5ec813077bbb303acc992d75a360267aa3b5de7134d220411c852a6f17de7c0d0b8c8dcc0f567f67874c00f4528672b2a4f1bc978a3ada64c8c78467 +"@babel/helper-string-parser@npm:^7.23.4": + version: 7.23.4 + resolution: "@babel/helper-string-parser@npm:7.23.4" + checksum: c0641144cf1a7e7dc93f3d5f16d5327465b6cf5d036b48be61ecba41e1eece161b48f46b7f960951b67f8c3533ce506b16dece576baef4d8b3b49f8c65410f90 languageName: node linkType: hard @@ -176,50 +176,41 @@ __metadata: languageName: node linkType: hard -"@babel/helper-validator-option@npm:^7.22.15": - version: 7.22.15 - resolution: "@babel/helper-validator-option@npm:7.22.15" - checksum: 68da52b1e10002a543161494c4bc0f4d0398c8fdf361d5f7f4272e95c45d5b32d974896d44f6a0ea7378c9204988879d73613ca683e13bd1304e46d25ff67a8d +"@babel/helper-validator-option@npm:^7.23.5": + version: 7.23.5 + resolution: "@babel/helper-validator-option@npm:7.23.5" + checksum: 537cde2330a8aede223552510e8a13e9c1c8798afee3757995a7d4acae564124fe2bf7e7c3d90d62d3657434a74340a274b3b3b1c6f17e9a2be1f48af29cb09e languageName: node linkType: hard -"@babel/helpers@npm:^7.23.2": - version: 7.23.2 - resolution: "@babel/helpers@npm:7.23.2" +"@babel/helpers@npm:^7.23.9": + version: 7.23.9 + resolution: "@babel/helpers@npm:7.23.9" dependencies: - "@babel/template": ^7.22.15 - "@babel/traverse": ^7.23.2 - "@babel/types": ^7.23.0 - checksum: aaf4828df75ec460eaa70e5c9f66e6dadc28dae3728ddb7f6c13187dbf38030e142194b83d81aa8a31bbc35a5529a5d7d3f3cf59d5d0b595f5dd7f9d8f1ced8e + "@babel/template": ^7.23.9 + "@babel/traverse": ^7.23.9 + "@babel/types": ^7.23.9 + checksum: 2678231192c0471dbc2fc403fb19456cc46b1afefcfebf6bc0f48b2e938fdb0fef2e0fe90c8c8ae1f021dae5012b700372e4b5d15867f1d7764616532e4a6324 languageName: node linkType: hard -"@babel/highlight@npm:^7.22.13": - version: 7.22.20 - resolution: "@babel/highlight@npm:7.22.20" +"@babel/highlight@npm:^7.23.4": + version: 7.23.4 + resolution: "@babel/highlight@npm:7.23.4" dependencies: "@babel/helper-validator-identifier": ^7.22.20 chalk: ^2.4.2 js-tokens: ^4.0.0 - checksum: 84bd034dca309a5e680083cd827a766780ca63cef37308404f17653d32366ea76262bd2364b2d38776232f2d01b649f26721417d507e8b4b6da3e4e739f6d134 - languageName: node - linkType: hard - -"@babel/parser@npm:7.16.4": - version: 7.16.4 - resolution: "@babel/parser@npm:7.16.4" - bin: - parser: ./bin/babel-parser.js - checksum: ce0a8f92f440f2a12bc932f070a7b60c5133bf8a63f461841f9e39af0194f573707959d606c6fad1a2fd496a45148553afd9b74d3b8dd36cdb7861598d1f3e36 + checksum: 643acecdc235f87d925979a979b539a5d7d1f31ae7db8d89047269082694122d11aa85351304c9c978ceeb6d250591ccadb06c366f358ccee08bb9c122476b89 languageName: node linkType: hard -"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.16.4, @babel/parser@npm:^7.22.15, @babel/parser@npm:^7.23.0": - version: 7.23.0 - resolution: "@babel/parser@npm:7.23.0" +"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.23.0, @babel/parser@npm:^7.23.9": + version: 7.23.9 + resolution: "@babel/parser@npm:7.23.9" bin: parser: ./bin/babel-parser.js - checksum: 453fdf8b9e2c2b7d7b02139e0ce003d1af21947bbc03eb350fb248ee335c9b85e4ab41697ddbdd97079698de825a265e45a0846bb2ed47a2c7c1df833f42a354 + checksum: e7cd4960ac8671774e13803349da88d512f9292d7baa952173260d3e8f15620a28a3701f14f709d769209022f9e7b79965256b8be204fc550cfe783cdcabe7c7 languageName: node linkType: hard @@ -356,53 +347,53 @@ __metadata: linkType: hard "@babel/plugin-syntax-typescript@npm:^7.7.2": - version: 7.22.5 - resolution: "@babel/plugin-syntax-typescript@npm:7.22.5" + version: 7.23.3 + resolution: "@babel/plugin-syntax-typescript@npm:7.23.3" dependencies: "@babel/helper-plugin-utils": ^7.22.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 8ab7718fbb026d64da93681a57797d60326097fd7cb930380c8bffd9eb101689e90142c760a14b51e8e69c88a73ba3da956cb4520a3b0c65743aee5c71ef360a + checksum: abfad3a19290d258b028e285a1f34c9b8a0cbe46ef79eafed4ed7ffce11b5d0720b5e536c82f91cbd8442cde35a3dd8e861fa70366d87ff06fdc0d4756e30876 languageName: node linkType: hard -"@babel/template@npm:^7.22.15, @babel/template@npm:^7.3.3": - version: 7.22.15 - resolution: "@babel/template@npm:7.22.15" +"@babel/template@npm:^7.22.15, @babel/template@npm:^7.23.9, @babel/template@npm:^7.3.3": + version: 7.23.9 + resolution: "@babel/template@npm:7.23.9" dependencies: - "@babel/code-frame": ^7.22.13 - "@babel/parser": ^7.22.15 - "@babel/types": ^7.22.15 - checksum: 1f3e7dcd6c44f5904c184b3f7fe280394b191f2fed819919ffa1e529c259d5b197da8981b6ca491c235aee8dbad4a50b7e31304aa531271cb823a4a24a0dd8fd + "@babel/code-frame": ^7.23.5 + "@babel/parser": ^7.23.9 + "@babel/types": ^7.23.9 + checksum: 6e67414c0f7125d7ecaf20c11fab88085fa98a96c3ef10da0a61e962e04fdf3a18a496a66047005ddd1bb682a7cc7842d556d1db2f3f3f6ccfca97d5e445d342 languageName: node linkType: hard -"@babel/traverse@npm:^7.12.5, @babel/traverse@npm:^7.23.2, @babel/traverse@npm:^7.7.2": - version: 7.23.2 - resolution: "@babel/traverse@npm:7.23.2" +"@babel/traverse@npm:^7.23.2, @babel/traverse@npm:^7.23.9, @babel/traverse@npm:^7.7.2": + version: 7.23.9 + resolution: "@babel/traverse@npm:7.23.9" dependencies: - "@babel/code-frame": ^7.22.13 - "@babel/generator": ^7.23.0 + "@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.23.0 - "@babel/types": ^7.23.0 - debug: ^4.1.0 + "@babel/parser": ^7.23.9 + "@babel/types": ^7.23.9 + debug: ^4.3.1 globals: ^11.1.0 - checksum: 26a1eea0dde41ab99dde8b9773a013a0dc50324e5110a049f5d634e721ff08afffd54940b3974a20308d7952085ac769689369e9127dea655f868c0f6e1ab35d + checksum: a932f7aa850e158c00c97aad22f639d48c72805c687290f6a73e30c5c4957c07f5d28310c9bf59648e2980fe6c9d16adeb2ff92a9ca0f97fa75739c1328fc6c3 languageName: node linkType: hard -"@babel/types@npm:^7.0.0, @babel/types@npm:^7.22.15, @babel/types@npm:^7.22.5, @babel/types@npm:^7.23.0, @babel/types@npm:^7.3.0, @babel/types@npm:^7.3.3, @babel/types@npm:^7.8.3": - version: 7.23.0 - resolution: "@babel/types@npm:7.23.0" +"@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.22.15, @babel/types@npm:^7.22.5, @babel/types@npm:^7.23.0, @babel/types@npm:^7.23.6, @babel/types@npm:^7.23.9, @babel/types@npm:^7.3.3, @babel/types@npm:^7.8.3": + version: 7.23.9 + resolution: "@babel/types@npm:7.23.9" dependencies: - "@babel/helper-string-parser": ^7.22.5 + "@babel/helper-string-parser": ^7.23.4 "@babel/helper-validator-identifier": ^7.22.20 to-fast-properties: ^2.0.0 - checksum: 215fe04bd7feef79eeb4d33374b39909ce9cad1611c4135a4f7fdf41fe3280594105af6d7094354751514625ea92d0875aba355f53e86a92600f290e77b0e604 + checksum: 0a9b008e9bfc89beb8c185e620fa0f8ed6c771f1e1b2e01e1596870969096fec7793898a1d64a035176abf1dd13e2668ee30bf699f2d92c210a8128f4b151e65 languageName: node linkType: hard @@ -413,19 +404,12 @@ __metadata: languageName: node linkType: hard -"@cspotcode/source-map-consumer@npm:0.8.0": - version: 0.8.0 - resolution: "@cspotcode/source-map-consumer@npm:0.8.0" - checksum: c0c16ca3d2f58898f1bd74c4f41a189dbcc202e642e60e489cbcc2e52419c4e89bdead02c886a12fb13ea37798ede9e562b2321df997ebc210ae9bd881561b4e - languageName: node - linkType: hard - -"@cspotcode/source-map-support@npm:0.7.0": - version: 0.7.0 - resolution: "@cspotcode/source-map-support@npm:0.7.0" +"@cspotcode/source-map-support@npm:^0.8.0": + version: 0.8.1 + resolution: "@cspotcode/source-map-support@npm:0.8.1" dependencies: - "@cspotcode/source-map-consumer": 0.8.0 - checksum: 9faddda7757cd778b5fd6812137b2cc265810043680d6399acc20441668fafcdc874053be9dccd0d9110087287bfad27eb3bf342f72bceca9aa9059f5d0c4be8 + "@jridgewell/trace-mapping": 0.3.9 + checksum: 5718f267085ed8edb3e7ef210137241775e607ee18b77d95aa5bd7514f47f5019aa2d82d96b3bf342ef7aa890a346fa1044532ff7cc3009e7d24fce3ce6200fa languageName: node linkType: hard @@ -451,16 +435,16 @@ __metadata: languageName: node linkType: hard -"@eslint-community/regexpp@npm:^4.4.0": - version: 4.5.1 - resolution: "@eslint-community/regexpp@npm:4.5.1" - checksum: 6d901166d64998d591fab4db1c2f872981ccd5f6fe066a1ad0a93d4e11855ecae6bfb76660869a469563e8882d4307228cebd41142adb409d182f2966771e57e +"@eslint-community/regexpp@npm:^4.4.0, @eslint-community/regexpp@npm:^4.6.1": + version: 4.10.0 + resolution: "@eslint-community/regexpp@npm:4.10.0" + checksum: 2a6e345429ea8382aaaf3a61f865cae16ed44d31ca917910033c02dc00d505d939f10b81e079fa14d43b51499c640138e153b7e40743c4c094d9df97d4e56f7b languageName: node linkType: hard -"@eslint/eslintrc@npm:^2.1.0": - version: 2.1.0 - resolution: "@eslint/eslintrc@npm:2.1.0" +"@eslint/eslintrc@npm:^2.1.4": + version: 2.1.4 + resolution: "@eslint/eslintrc@npm:2.1.4" dependencies: ajv: ^6.12.4 debug: ^4.3.2 @@ -471,14 +455,14 @@ __metadata: js-yaml: ^4.1.0 minimatch: ^3.1.2 strip-json-comments: ^3.1.1 - checksum: d5ed0adbe23f6571d8c9bb0ca6edf7618dc6aed4046aa56df7139f65ae7b578874e0d9c796df784c25bda648ceb754b6320277d828c8b004876d7443b8dc018c + checksum: 10957c7592b20ca0089262d8c2a8accbad14b4f6507e35416c32ee6b4dbf9cad67dfb77096bbd405405e9ada2b107f3797fe94362e1c55e0b09d6e90dd149127 languageName: node linkType: hard -"@eslint/js@npm:8.44.0": - version: 8.44.0 - resolution: "@eslint/js@npm:8.44.0" - checksum: fc539583226a28f5677356e9f00d2789c34253f076643d2e32888250e509a4e13aafe0880cb2425139051de0f3a48d25bfc5afa96b7304f203b706c17340e3cf +"@eslint/js@npm:8.56.0": + version: 8.56.0 + resolution: "@eslint/js@npm:8.56.0" + checksum: 5804130574ef810207bdf321c265437814e7a26f4e6fac9b496de3206afd52f533e09ec002a3be06cd9adcc9da63e727f1883938e663c4e4751c007d5b58e539 languageName: node linkType: hard @@ -531,14 +515,14 @@ __metadata: languageName: node linkType: hard -"@humanwhocodes/config-array@npm:^0.11.10": - version: 0.11.10 - resolution: "@humanwhocodes/config-array@npm:0.11.10" +"@humanwhocodes/config-array@npm:^0.11.13": + version: 0.11.14 + resolution: "@humanwhocodes/config-array@npm:0.11.14" dependencies: - "@humanwhocodes/object-schema": ^1.2.1 - debug: ^4.1.1 + "@humanwhocodes/object-schema": ^2.0.2 + debug: ^4.3.1 minimatch: ^3.0.5 - checksum: 1b1302e2403d0e35bc43e66d67a2b36b0ad1119efc704b5faff68c41f791a052355b010fb2d27ef022670f550de24cd6d08d5ecf0821c16326b7dcd0ee5d5d8a + checksum: 861ccce9eaea5de19546653bccf75bf09fe878bc39c3aab00aeee2d2a0e654516adad38dd1098aab5e3af0145bbcbf3f309bdf4d964f8dab9dcd5834ae4c02f2 languageName: node linkType: hard @@ -549,10 +533,10 @@ __metadata: languageName: node linkType: hard -"@humanwhocodes/object-schema@npm:^1.2.1": - version: 1.2.1 - resolution: "@humanwhocodes/object-schema@npm:1.2.1" - checksum: a824a1ec31591231e4bad5787641f59e9633827d0a2eaae131a288d33c9ef0290bd16fda8da6f7c0fcb014147865d12118df10db57f27f41e20da92369fcb3f1 +"@humanwhocodes/object-schema@npm:^2.0.2": + version: 2.0.2 + resolution: "@humanwhocodes/object-schema@npm:2.0.2" + checksum: 2fc11503361b5fb4f14714c700c02a3f4c7c93e9acd6b87a29f62c522d90470f364d6161b03d1cc618b979f2ae02aed1106fd29d302695d8927e2fc8165ba8ee languageName: node linkType: hard @@ -594,6 +578,20 @@ __metadata: languageName: node linkType: hard +"@isaacs/cliui@npm:^8.0.2": + version: 8.0.2 + resolution: "@isaacs/cliui@npm:8.0.2" + dependencies: + string-width: ^5.1.2 + string-width-cjs: "npm:string-width@^4.2.0" + strip-ansi: ^7.0.1 + strip-ansi-cjs: "npm:strip-ansi@^6.0.1" + wrap-ansi: ^8.1.0 + wrap-ansi-cjs: "npm:wrap-ansi@^7.0.0" + checksum: 4a473b9b32a7d4d3cfb7a614226e555091ff0c5a29a1734c28c72a182c2f6699b26fc6b5c2131dfd841e86b185aea714c72201d7c98c2fba5f17709333a67aeb + languageName: node + linkType: hard + "@istanbuljs/load-nyc-config@npm:^1.0.0": version: 1.1.0 resolution: "@istanbuljs/load-nyc-config@npm:1.1.0" @@ -608,9 +606,9 @@ __metadata: linkType: hard "@istanbuljs/schema@npm:^0.1.2": - version: 0.1.2 - resolution: "@istanbuljs/schema@npm:0.1.2" - checksum: 5ce9facf2f0e3f4a93e56853cdfd78456e22d2c210c677530046e9c634ddc323dd62423ac711cd3554b5be06052c87fb8e0c266aa9010726940654c357290e78 + version: 0.1.3 + resolution: "@istanbuljs/schema@npm:0.1.3" + checksum: 5282759d961d61350f33d9118d16bcaed914ebf8061a52f4fa474b2cb08720c9c81d165e13b82f2e5a8a212cc5af482f0c6fc1ac27b9e067e5394c9a6ed186c9 languageName: node linkType: hard @@ -856,10 +854,10 @@ __metadata: languageName: node linkType: hard -"@jridgewell/resolve-uri@npm:^3.1.0": - version: 3.1.1 - resolution: "@jridgewell/resolve-uri@npm:3.1.1" - checksum: f5b441fe7900eab4f9155b3b93f9800a916257f4e8563afbcd3b5a5337b55e52bd8ae6735453b1b745457d9f6cdb16d74cd6220bbdd98cf153239e13f6cbb653 +"@jridgewell/resolve-uri@npm:^3.0.3, @jridgewell/resolve-uri@npm:^3.1.0": + version: 3.1.2 + resolution: "@jridgewell/resolve-uri@npm:3.1.2" + checksum: 83b85f72c59d1c080b4cbec0fef84528963a1b5db34e4370fa4bd1e3ff64a0d80e0cee7369d11d73c704e0286fb2865b530acac7a871088fbe92b5edf1000870 languageName: node linkType: hard @@ -870,59 +868,62 @@ __metadata: languageName: node linkType: hard -"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14": +"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14, @jridgewell/sourcemap-codec@npm:^1.4.15": version: 1.4.15 resolution: "@jridgewell/sourcemap-codec@npm:1.4.15" checksum: b881c7e503db3fc7f3c1f35a1dd2655a188cc51a3612d76efc8a6eb74728bef5606e6758ee77423e564092b4a518aba569bbb21c9bac5ab7a35b0c6ae7e344c8 languageName: node linkType: hard +"@jridgewell/trace-mapping@npm:0.3.9": + version: 0.3.9 + resolution: "@jridgewell/trace-mapping@npm:0.3.9" + dependencies: + "@jridgewell/resolve-uri": ^3.0.3 + "@jridgewell/sourcemap-codec": ^1.4.10 + checksum: d89597752fd88d3f3480845691a05a44bd21faac18e2185b6f436c3b0fd0c5a859fbbd9aaa92050c4052caf325ad3e10e2e1d1b64327517471b7d51babc0ddef + languageName: node + linkType: hard + "@jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.13, @jridgewell/trace-mapping@npm:^0.3.17, @jridgewell/trace-mapping@npm:^0.3.9": - version: 0.3.20 - resolution: "@jridgewell/trace-mapping@npm:0.3.20" + version: 0.3.22 + resolution: "@jridgewell/trace-mapping@npm:0.3.22" dependencies: "@jridgewell/resolve-uri": ^3.1.0 "@jridgewell/sourcemap-codec": ^1.4.14 - checksum: cd1a7353135f385909468ff0cf20bdd37e59f2ee49a13a966dedf921943e222082c583ade2b579ff6cd0d8faafcb5461f253e1bf2a9f48fec439211fdbe788f5 + checksum: ac7dd2cfe0b479aa1b81776d40d789243131cc792dc8b6b6a028c70fcd6171958ae1a71bf67b618ffe3c0c3feead9870c095ee46a5e30319410d92976b28f498 languageName: node linkType: hard -"@lavamoat/aa@npm:^3.1.1": - version: 3.1.2 - resolution: "@lavamoat/aa@npm:3.1.2" +"@lavamoat/aa@npm:^3.1.5": + version: 3.1.5 + resolution: "@lavamoat/aa@npm:3.1.5" dependencies: - resolve: ^1.20.0 + resolve: ^1.22.3 bin: lavamoat-ls: src/cli.js - checksum: e580278f2119e26b968105b1ba61d9285537b2577b2f2a256c12d4e623bc544eb7664989855b90e7b2aee6ed23222179423a0c9009f67995ded85678e132332f + checksum: 46ced120a30e9472c2e448bd6af694911c644ee036d6cd0087692b47c553b5ac26748a9bff1e99f1220f672579bce664fb48cb2f39884fd0b1a45d16b9195e48 languageName: node linkType: hard "@lavamoat/allow-scripts@npm:^2.3.1": - version: 2.3.1 - resolution: "@lavamoat/allow-scripts@npm:2.3.1" + version: 2.5.1 + resolution: "@lavamoat/allow-scripts@npm:2.5.1" dependencies: - "@lavamoat/aa": ^3.1.1 + "@lavamoat/aa": ^3.1.5 "@npmcli/run-script": ^6.0.0 bin-links: 4.0.1 npm-normalize-package-bin: ^3.0.0 yargs: ^16.2.0 bin: allow-scripts: src/cli.js - checksum: 334612c1ecd357f0143542837ba9982b16e884e4091083b7f437ddc48e79071e3e5503bc3eaa65adf5aa84e4e3021abc074438dd202a72b80ad6fff785caad69 - languageName: node - linkType: hard - -"@lavamoat/preinstall-always-fail@npm:^1.0.0": - version: 1.0.0 - resolution: "@lavamoat/preinstall-always-fail@npm:1.0.0" - checksum: 93af02b34c8a7d99296025fd2052272f26310b38998c07b39f698ba395a5543b450dea41d3a26005c83a634738e6f7de01a7cea0eb5552cfe83abe619c3e7b31 + checksum: 5f249803b13ad1d2900d1be7d500135b3898f700465e748e7f9d88a7c5a8b07829a0665910d4047ffd65877babe94a80c8e8c9ad8ee02e61446e89bcd4179611 languageName: node linkType: hard "@metamask/auto-changelog@npm:^3.1.0": - version: 3.4.2 - resolution: "@metamask/auto-changelog@npm:3.4.2" + version: 3.4.4 + resolution: "@metamask/auto-changelog@npm:3.4.4" dependencies: diff: ^5.0.0 execa: ^5.1.1 @@ -931,18 +932,18 @@ __metadata: yargs: ^17.0.1 bin: auto-changelog: dist/cli.js - checksum: b922db20b3ff8a1957b71128d481c08fdf5ae465a89a03bccacf31cba227e56e48f6b1654ff4c78150cc0cfd3ae57a615d3ab5ab6760f7437e0b9e8aa6aec390 + checksum: 4876ab3ec98f6d0c00a0679f9e44e1ee79d335ae97e18336a638ac19484cac30d2f3750e6875121ee07b0da128f8609490bed0e195c8153c2b74866f34e405ed languageName: node linkType: hard "@metamask/eslint-config-jest@npm:^12.0.0": - version: 12.0.0 - resolution: "@metamask/eslint-config-jest@npm:12.0.0" + version: 12.1.0 + resolution: "@metamask/eslint-config-jest@npm:12.1.0" peerDependencies: "@metamask/eslint-config": ^12.0.0 eslint: ^8.27.0 eslint-plugin-jest: ^27.1.5 - checksum: 80b3366c558f7c466e2cb7a63b9633b8c1fc374a7730f43bb7136a3bb6fe29d473f09473084d8858f0e89970706787d8fae131ee963693b97722e74929e633b2 + checksum: 98f60234412051d429237dbf32b147a648a0e3b6adacafda24999ec9eb8096155c8000c62204415100c97980cc3bfe0a0fe19e4c318b8bb529eaf57e9f96e680 languageName: node linkType: hard @@ -958,15 +959,15 @@ __metadata: linkType: hard "@metamask/eslint-config-typescript@npm:^12.0.0": - version: 12.0.0 - resolution: "@metamask/eslint-config-typescript@npm:12.0.0" + version: 12.1.0 + resolution: "@metamask/eslint-config-typescript@npm:12.1.0" peerDependencies: "@metamask/eslint-config": ^12.0.0 "@typescript-eslint/eslint-plugin": ^5.42.1 "@typescript-eslint/parser": ^5.42.1 eslint: ^8.27.0 - typescript: ~4.8.4 - checksum: 0faaa408b33b9d6141e0db2600580cc746f20b858aacbc5d38e52df5b6644a9c985ab105c59c0304135bb09876daf79cc046b2ef20f71fdc9999785da9bf7d49 + typescript: ~4.8.4 || ~5.0 || ~5.1 + checksum: a854574e4c2ca7b036d0a2a454aecb93ba538d1b92c1615878dfe06a14972df6af2fcdd5e2911ef369b3b2eeb04b8c6879bd037c618a35f6cb98950cdab84d50 languageName: node linkType: hard @@ -990,7 +991,6 @@ __metadata: resolution: "@metamask/module-lint@workspace:." dependencies: "@lavamoat/allow-scripts": ^2.3.1 - "@lavamoat/preinstall-always-fail": ^1.0.0 "@metamask/auto-changelog": ^3.1.0 "@metamask/eslint-config": ^12.0.0 "@metamask/eslint-config-jest": ^12.0.0 @@ -1000,6 +1000,7 @@ __metadata: "@swc/cli": ^0.1.62 "@swc/core": ^1.3.66 "@types/jest": ^28.1.6 + "@types/lodash": ^4.14.202 "@types/node": ^16 "@typescript-eslint/eslint-plugin": ^5.43.0 "@typescript-eslint/parser": ^5.43.0 @@ -1008,7 +1009,7 @@ __metadata: dependency-graph: ^0.11.0 eslint: ^8.44.0 eslint-config-prettier: ^8.8.0 - eslint-plugin-import: ^2.27.5 + eslint-plugin-import: 2.26.0 eslint-plugin-jest: ^27.2.2 eslint-plugin-jsdoc: ^39.9.1 eslint-plugin-n: ^15.7.0 @@ -1018,6 +1019,7 @@ __metadata: jest: ^28.1.3 jest-it-up: ^2.0.2 jest-mock-extended: ^3.0.5 + lodash: ^4.17.21 prettier: ^2.7.1 prettier-plugin-packagejson: ^2.3.0 rimraf: ^3.0.2 @@ -1035,8 +1037,8 @@ __metadata: linkType: soft "@metamask/utils@npm:^8.2.0": - version: 8.2.0 - resolution: "@metamask/utils@npm:8.2.0" + version: 8.3.0 + resolution: "@metamask/utils@npm:8.3.0" dependencies: "@ethereumjs/tx": ^4.2.0 "@noble/hashes": ^1.3.1 @@ -1046,7 +1048,7 @@ __metadata: pony-cause: ^2.1.10 semver: ^7.5.4 superstruct: ^1.0.3 - checksum: 1c70c0f9c375bfa3836c15d48990dbea1c3cadfd3dd69b4867667116c09c3bdeef70a0c7027f1cdea88a9913cb846dc94812ece91be7ec32e65a62e00281b04c + checksum: cd60c49b4c0397fb31e6b38937a0d9346cbb8337cb8add59db8db0e0e2156fb063ff4df93a26410157f0cc02aa9a9b785fc1b53cfc4ab73204462893ed11cacb languageName: node linkType: hard @@ -1066,26 +1068,19 @@ __metadata: languageName: node linkType: hard -"@noble/curves@npm:1.1.0, @noble/curves@npm:~1.1.0": - version: 1.1.0 - resolution: "@noble/curves@npm:1.1.0" +"@noble/curves@npm:1.3.0, @noble/curves@npm:~1.3.0": + version: 1.3.0 + resolution: "@noble/curves@npm:1.3.0" dependencies: - "@noble/hashes": 1.3.1 - checksum: 2658cdd3f84f71079b4e3516c47559d22cf4b55c23ac8ee9d2b1f8e5b72916d9689e59820e0f9d9cb4a46a8423af5b56dc6bb7782405c88be06a015180508db5 - languageName: node - linkType: hard - -"@noble/hashes@npm:1.3.1": - version: 1.3.1 - resolution: "@noble/hashes@npm:1.3.1" - checksum: 7fdefc0f7a0c1ec27acc6ff88841793e3f93ec4ce6b8a6a12bfc0dd70ae6b7c4c82fe305fdfeda1735d5ad4a9eebe761e6693b3d355689c559e91242f4bc95b1 + "@noble/hashes": 1.3.3 + checksum: b65342ee66c4a440eee2978524412eabba9a9efdd16d6370e15218c6a7d80bddf35e66bb57ed52c0dfd32cb9a717b439ab3a72db618f1a0066dfebe3fd12a421 languageName: node linkType: hard -"@noble/hashes@npm:^1.3.1, @noble/hashes@npm:~1.3.0, @noble/hashes@npm:~1.3.1": - version: 1.3.2 - resolution: "@noble/hashes@npm:1.3.2" - checksum: fe23536b436539d13f90e4b9be843cc63b1b17666a07634a2b1259dded6f490be3d050249e6af98076ea8f2ea0d56f578773c2197f2aa0eeaa5fba5bc18ba474 +"@noble/hashes@npm:1.3.3, @noble/hashes@npm:^1.3.1, @noble/hashes@npm:~1.3.2": + version: 1.3.3 + resolution: "@noble/hashes@npm:1.3.3" + checksum: 8a6496d1c0c64797339bc694ad06cdfaa0f9e56cd0c3f68ae3666cfb153a791a55deb0af9c653c7ed2db64d537aa3e3054629740d2f2338bb1dcb7ab60cd205b languageName: node linkType: hard @@ -1116,23 +1111,45 @@ __metadata: languageName: node linkType: hard +"@npmcli/agent@npm:^2.0.0": + version: 2.2.1 + resolution: "@npmcli/agent@npm:2.2.1" + dependencies: + agent-base: ^7.1.0 + http-proxy-agent: ^7.0.0 + https-proxy-agent: ^7.0.1 + lru-cache: ^10.0.1 + socks-proxy-agent: ^8.0.1 + checksum: c69aca42dbba393f517bc5777ee872d38dc98ea0e5e93c1f6d62b82b8fecdc177a57ea045f07dda1a770c592384b2dd92a5e79e21e2a7cf51c9159466a8f9c9b + languageName: node + linkType: hard + "@npmcli/fs@npm:^2.1.0": - version: 2.1.0 - resolution: "@npmcli/fs@npm:2.1.0" + version: 2.1.2 + resolution: "@npmcli/fs@npm:2.1.2" dependencies: "@gar/promisify": ^1.1.3 semver: ^7.3.5 - checksum: 6ec6d678af6da49f9dac50cd882d7f661934dd278972ffbaacde40d9eaa2871292d634000a0cca9510f6fc29855fbd4af433e1adbff90a524ec3eaf140f1219b + checksum: 405074965e72d4c9d728931b64d2d38e6ea12066d4fad651ac253d175e413c06fe4350970c783db0d749181da8fe49c42d3880bd1cbc12cd68e3a7964d820225 + languageName: node + linkType: hard + +"@npmcli/fs@npm:^3.1.0": + version: 3.1.0 + resolution: "@npmcli/fs@npm:3.1.0" + dependencies: + semver: ^7.3.5 + checksum: a50a6818de5fc557d0b0e6f50ec780a7a02ab8ad07e5ac8b16bf519e0ad60a144ac64f97d05c443c3367235d337182e1d012bbac0eb8dbae8dc7b40b193efd0e languageName: node linkType: hard "@npmcli/move-file@npm:^2.0.0": - version: 2.0.0 - resolution: "@npmcli/move-file@npm:2.0.0" + version: 2.0.1 + resolution: "@npmcli/move-file@npm:2.0.1" dependencies: mkdirp: ^1.0.4 rimraf: ^3.0.2 - checksum: 1388777b507b0c592d53f41b9d182e1a8de7763bc625fc07999b8edbc22325f074e5b3ec90af79c89d6987fdb2325bc66d59f483258543c14a43661621f841b0 + checksum: 52dc02259d98da517fae4cb3a0a3850227bdae4939dda1980b788a7670636ca2b4a01b58df03dd5f65c1e3cb70c50fa8ce5762b582b3f499ec30ee5ce1fd9380 languageName: node linkType: hard @@ -1153,50 +1170,64 @@ __metadata: linkType: hard "@npmcli/run-script@npm:^6.0.0": - version: 6.0.1 - resolution: "@npmcli/run-script@npm:6.0.1" + version: 6.0.2 + resolution: "@npmcli/run-script@npm:6.0.2" dependencies: "@npmcli/node-gyp": ^3.0.0 "@npmcli/promise-spawn": ^6.0.0 node-gyp: ^9.0.0 read-package-json-fast: ^3.0.0 which: ^3.0.0 - checksum: dcc99755f67a535d57d95f25cdaecf414d1adffba4058cbf940fbffce27a953c6d95e40aed127e913ed14c8ac3d9b6223ef002beebd525574750a4be861425d7 + checksum: 7a671d7dbeae376496e1c6242f02384928617dc66cd22881b2387272205c3668f8490ec2da4ad63e1abf979efdd2bdf4ea0926601d78578e07d83cfb233b3a1a languageName: node linkType: hard -"@scure/base@npm:^1.1.3, @scure/base@npm:~1.1.0": - version: 1.1.3 - resolution: "@scure/base@npm:1.1.3" - checksum: 1606ab8a4db898cb3a1ada16c15437c3bce4e25854fadc8eb03ae93cbbbac1ed90655af4b0be3da37e12056fef11c0374499f69b9e658c9e5b7b3e06353c630c +"@pkgjs/parseargs@npm:^0.11.0": + version: 0.11.0 + resolution: "@pkgjs/parseargs@npm:0.11.0" + checksum: 6ad6a00fc4f2f2cfc6bff76fb1d88b8ee20bc0601e18ebb01b6d4be583733a860239a521a7fbca73b612e66705078809483549d2b18f370eb346c5155c8e4a0f languageName: node linkType: hard -"@scure/bip32@npm:1.3.1": - version: 1.3.1 - resolution: "@scure/bip32@npm:1.3.1" +"@pkgr/core@npm:^0.1.0": + version: 0.1.1 + resolution: "@pkgr/core@npm:0.1.1" + checksum: 6f25fd2e3008f259c77207ac9915b02f1628420403b2630c92a07ff963129238c9262afc9e84344c7a23b5cc1f3965e2cd17e3798219f5fd78a63d144d3cceba + languageName: node + linkType: hard + +"@scure/base@npm:^1.1.3, @scure/base@npm:~1.1.4": + version: 1.1.5 + resolution: "@scure/base@npm:1.1.5" + checksum: 9e9ee6088cb3aa0fb91f5a48497d26682c7829df3019b1251d088d166d7a8c0f941c68aaa8e7b96bbad20c71eb210397cb1099062cde3e29d4bad6b975c18519 + languageName: node + linkType: hard + +"@scure/bip32@npm:1.3.3": + version: 1.3.3 + resolution: "@scure/bip32@npm:1.3.3" dependencies: - "@noble/curves": ~1.1.0 - "@noble/hashes": ~1.3.1 - "@scure/base": ~1.1.0 - checksum: 394d65f77a40651eba21a5096da0f4233c3b50d422864751d373fcf142eeedb94a1149f9ab1dbb078086dab2d0bc27e2b1afec8321bf22d4403c7df2fea5bfe2 + "@noble/curves": ~1.3.0 + "@noble/hashes": ~1.3.2 + "@scure/base": ~1.1.4 + checksum: f939ca733972622fcc1e61d4fdf170a0ad294b24ddb7ed7cdd4c467e1ef283b970154cb101cf5f1a7b64cf5337e917ad31135911dfc36b1d76625320167df2fa languageName: node linkType: hard -"@scure/bip39@npm:1.2.1": - version: 1.2.1 - resolution: "@scure/bip39@npm:1.2.1" +"@scure/bip39@npm:1.2.2": + version: 1.2.2 + resolution: "@scure/bip39@npm:1.2.2" dependencies: - "@noble/hashes": ~1.3.0 - "@scure/base": ~1.1.0 - checksum: c5bd6f1328fdbeae2dcdd891825b1610225310e5e62a4942714db51066866e4f7bef242c7b06a1b9dcc8043a4a13412cf5c5df76d3b10aa9e36b82e9b6e3eeaa + "@noble/hashes": ~1.3.2 + "@scure/base": ~1.1.4 + checksum: cb99505e6d2deef8e55e81df8c563ce8dbfdf1595596dc912bceadcf366c91b05a98130e928ecb090df74efdb20150b64acc4be55bc42768cab4d39a2833d234 languageName: node linkType: hard "@sinclair/typebox@npm:^0.24.1": - version: 0.24.28 - resolution: "@sinclair/typebox@npm:0.24.28" - checksum: adc1f06c548f0c495dad5a7124394242553e059c5ea3faa19f404b43958125366513240f17fa2b5272a3aec18618cab4137d5c85259e99ce9eaca67538af2732 + version: 0.24.51 + resolution: "@sinclair/typebox@npm:0.24.51" + checksum: fd0d855e748ef767eb19da1a60ed0ab928e91e0f358c1dd198d600762c0015440b15755e96d1176e2a0db7e09c6a64ed487828ee10dd0c3e22f61eb09c478cd0 languageName: node linkType: hard @@ -1208,11 +1239,11 @@ __metadata: linkType: hard "@sinonjs/commons@npm:^1.7.0": - version: 1.8.1 - resolution: "@sinonjs/commons@npm:1.8.1" + version: 1.8.6 + resolution: "@sinonjs/commons@npm:1.8.6" dependencies: type-detect: 4.0.8 - checksum: 8f258c039275d217b654c94731409208a3530c56f64ebc2a1bddaa82045800c7f9dbd09806d6dc451ee12cb79c7a5d509a58ad28179a83336da266ba5c231912 + checksum: 7d3f8c1e85f30cd4e83594fc19b7a657f14d49eb8d95a30095631ce15e906c869e0eff96c5b93dffea7490c00418b07f54582ba49c6560feb2a8c34c0b16832d languageName: node linkType: hard @@ -1226,12 +1257,13 @@ __metadata: linkType: hard "@swc/cli@npm:^0.1.62": - version: 0.1.62 - resolution: "@swc/cli@npm:0.1.62" + version: 0.1.65 + resolution: "@swc/cli@npm:0.1.65" dependencies: "@mole-inc/bin-wrapper": ^8.0.1 commander: ^7.1.0 fast-glob: ^3.2.5 + minimatch: ^9.0.3 semver: ^7.3.8 slash: 3.0.0 source-map: ^0.7.3 @@ -1245,94 +1277,96 @@ __metadata: spack: bin/spack.js swc: bin/swc.js swcx: bin/swcx.js - checksum: d44e88a724ba32d4f63856f15899f8eff78d90d0c5452e4882412307bf6353a64b25e7dc9992fd6e3975c87e6c0d7b494d859a0d8badb9f3c6103623ca89ddc2 + checksum: 8c8336176ebcf41ee709a0c67c08004bab6359d0109e0232fc334a8e902d3a171bc85ea533722199a7e8aa935adaefbf35bc07d1b6bc8117a596b9fb14905a9c languageName: node linkType: hard -"@swc/core-darwin-arm64@npm:1.3.66": - version: 1.3.66 - resolution: "@swc/core-darwin-arm64@npm:1.3.66" +"@swc/core-darwin-arm64@npm:1.4.1": + version: 1.4.1 + resolution: "@swc/core-darwin-arm64@npm:1.4.1" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"@swc/core-darwin-x64@npm:1.3.66": - version: 1.3.66 - resolution: "@swc/core-darwin-x64@npm:1.3.66" +"@swc/core-darwin-x64@npm:1.4.1": + version: 1.4.1 + resolution: "@swc/core-darwin-x64@npm:1.4.1" conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"@swc/core-linux-arm-gnueabihf@npm:1.3.66": - version: 1.3.66 - resolution: "@swc/core-linux-arm-gnueabihf@npm:1.3.66" +"@swc/core-linux-arm-gnueabihf@npm:1.4.1": + version: 1.4.1 + resolution: "@swc/core-linux-arm-gnueabihf@npm:1.4.1" conditions: os=linux & cpu=arm languageName: node linkType: hard -"@swc/core-linux-arm64-gnu@npm:1.3.66": - version: 1.3.66 - resolution: "@swc/core-linux-arm64-gnu@npm:1.3.66" +"@swc/core-linux-arm64-gnu@npm:1.4.1": + version: 1.4.1 + resolution: "@swc/core-linux-arm64-gnu@npm:1.4.1" conditions: os=linux & cpu=arm64 & libc=glibc languageName: node linkType: hard -"@swc/core-linux-arm64-musl@npm:1.3.66": - version: 1.3.66 - resolution: "@swc/core-linux-arm64-musl@npm:1.3.66" +"@swc/core-linux-arm64-musl@npm:1.4.1": + version: 1.4.1 + resolution: "@swc/core-linux-arm64-musl@npm:1.4.1" conditions: os=linux & cpu=arm64 & libc=musl languageName: node linkType: hard -"@swc/core-linux-x64-gnu@npm:1.3.66": - version: 1.3.66 - resolution: "@swc/core-linux-x64-gnu@npm:1.3.66" +"@swc/core-linux-x64-gnu@npm:1.4.1": + version: 1.4.1 + resolution: "@swc/core-linux-x64-gnu@npm:1.4.1" conditions: os=linux & cpu=x64 & libc=glibc languageName: node linkType: hard -"@swc/core-linux-x64-musl@npm:1.3.66": - version: 1.3.66 - resolution: "@swc/core-linux-x64-musl@npm:1.3.66" +"@swc/core-linux-x64-musl@npm:1.4.1": + version: 1.4.1 + resolution: "@swc/core-linux-x64-musl@npm:1.4.1" conditions: os=linux & cpu=x64 & libc=musl languageName: node linkType: hard -"@swc/core-win32-arm64-msvc@npm:1.3.66": - version: 1.3.66 - resolution: "@swc/core-win32-arm64-msvc@npm:1.3.66" +"@swc/core-win32-arm64-msvc@npm:1.4.1": + version: 1.4.1 + resolution: "@swc/core-win32-arm64-msvc@npm:1.4.1" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard -"@swc/core-win32-ia32-msvc@npm:1.3.66": - version: 1.3.66 - resolution: "@swc/core-win32-ia32-msvc@npm:1.3.66" +"@swc/core-win32-ia32-msvc@npm:1.4.1": + version: 1.4.1 + resolution: "@swc/core-win32-ia32-msvc@npm:1.4.1" conditions: os=win32 & cpu=ia32 languageName: node linkType: hard -"@swc/core-win32-x64-msvc@npm:1.3.66": - version: 1.3.66 - resolution: "@swc/core-win32-x64-msvc@npm:1.3.66" +"@swc/core-win32-x64-msvc@npm:1.4.1": + version: 1.4.1 + resolution: "@swc/core-win32-x64-msvc@npm:1.4.1" conditions: os=win32 & cpu=x64 languageName: node linkType: hard "@swc/core@npm:^1.3.66": - version: 1.3.66 - resolution: "@swc/core@npm:1.3.66" - dependencies: - "@swc/core-darwin-arm64": 1.3.66 - "@swc/core-darwin-x64": 1.3.66 - "@swc/core-linux-arm-gnueabihf": 1.3.66 - "@swc/core-linux-arm64-gnu": 1.3.66 - "@swc/core-linux-arm64-musl": 1.3.66 - "@swc/core-linux-x64-gnu": 1.3.66 - "@swc/core-linux-x64-musl": 1.3.66 - "@swc/core-win32-arm64-msvc": 1.3.66 - "@swc/core-win32-ia32-msvc": 1.3.66 - "@swc/core-win32-x64-msvc": 1.3.66 + version: 1.4.1 + resolution: "@swc/core@npm:1.4.1" + dependencies: + "@swc/core-darwin-arm64": 1.4.1 + "@swc/core-darwin-x64": 1.4.1 + "@swc/core-linux-arm-gnueabihf": 1.4.1 + "@swc/core-linux-arm64-gnu": 1.4.1 + "@swc/core-linux-arm64-musl": 1.4.1 + "@swc/core-linux-x64-gnu": 1.4.1 + "@swc/core-linux-x64-musl": 1.4.1 + "@swc/core-win32-arm64-msvc": 1.4.1 + "@swc/core-win32-ia32-msvc": 1.4.1 + "@swc/core-win32-x64-msvc": 1.4.1 + "@swc/counter": ^0.1.2 + "@swc/types": ^0.1.5 peerDependencies: "@swc/helpers": ^0.5.0 dependenciesMeta: @@ -1359,7 +1393,21 @@ __metadata: peerDependenciesMeta: "@swc/helpers": optional: true - checksum: e6029c648ba47c522bed51a9f2fee606f82de1f9233e2e89197e43b0a4867054174ca05e825e688cdc4de332221c0da2e12ba7ba875549e8b5432aa70fe19263 + checksum: 3549b4a0ba8201be2dd39954ef8375df5d028da5688a68211dc5cbf69ff7a43533e9ffd36f629095f51555552f4df52116384ef779d5ec45c2b9de938e651d57 + languageName: node + linkType: hard + +"@swc/counter@npm:^0.1.2": + version: 0.1.3 + resolution: "@swc/counter@npm:0.1.3" + checksum: df8f9cfba9904d3d60f511664c70d23bb323b3a0803ec9890f60133954173047ba9bdeabce28cd70ba89ccd3fd6c71c7b0bd58be85f611e1ffbe5d5c18616598 + languageName: node + linkType: hard + +"@swc/types@npm:^0.1.5": + version: 0.1.5 + resolution: "@swc/types@npm:0.1.5" + checksum: 6aee11f62d3d805a64848e0bd5f0e0e615f958e327a9e1260056c368d7d28764d89e38bd8005a536c9bf18afbcd303edd84099d60df34a2975d62540f61df13b languageName: node linkType: hard @@ -1387,71 +1435,71 @@ __metadata: linkType: hard "@tsconfig/node10@npm:^1.0.7": - version: 1.0.8 - resolution: "@tsconfig/node10@npm:1.0.8" - checksum: b8d5fffbc6b17ef64ef74f7fdbccee02a809a063ade785c3648dae59406bc207f70ea2c4296f92749b33019fa36a5ae716e42e49cc7f1bbf0fd147be0d6b970a + version: 1.0.9 + resolution: "@tsconfig/node10@npm:1.0.9" + checksum: a33ae4dc2a621c0678ac8ac4bceb8e512ae75dac65417a2ad9b022d9b5411e863c4c198b6ba9ef659e14b9fb609bbec680841a2e84c1172df7a5ffcf076539df languageName: node linkType: hard "@tsconfig/node12@npm:^1.0.7": - version: 1.0.9 - resolution: "@tsconfig/node12@npm:1.0.9" - checksum: a01b2400ab3582b86b589c6d31dcd0c0656f333adecde85d6d7d4086adb059808b82692380bb169546d189bf771ae21d02544a75b57bd6da4a5dd95f8567bec9 + version: 1.0.11 + resolution: "@tsconfig/node12@npm:1.0.11" + checksum: 5ce29a41b13e7897a58b8e2df11269c5395999e588b9a467386f99d1d26f6c77d1af2719e407621412520ea30517d718d5192a32403b8dfcc163bf33e40a338a languageName: node linkType: hard "@tsconfig/node14@npm:^1.0.0": - version: 1.0.1 - resolution: "@tsconfig/node14@npm:1.0.1" - checksum: 976345e896c0f059867f94f8d0f6ddb8b1844fb62bf36b727de8a9a68f024857e5db97ed51d3325e23e0616a5e48c034ff51a8d595b3fe7e955f3587540489be + version: 1.0.3 + resolution: "@tsconfig/node14@npm:1.0.3" + checksum: 19275fe80c4c8d0ad0abed6a96dbf00642e88b220b090418609c4376e1cef81bf16237bf170ad1b341452feddb8115d8dd2e5acdfdea1b27422071163dc9ba9d languageName: node linkType: hard "@tsconfig/node16@npm:^1.0.2": - version: 1.0.2 - resolution: "@tsconfig/node16@npm:1.0.2" - checksum: ca94d3639714672bbfd55f03521d3f56bb6a25479bd425da81faf21f13e1e9d15f40f97377dedbbf477a5841c5b0c8f4cd1b391f33553d750b9202c54c2c07aa + version: 1.0.4 + resolution: "@tsconfig/node16@npm:1.0.4" + checksum: 202319785901f942a6e1e476b872d421baec20cf09f4b266a1854060efbf78cde16a4d256e8bc949d31e6cd9a90f1e8ef8fb06af96a65e98338a2b6b0de0a0ff languageName: node linkType: hard "@types/babel__core@npm:^7.1.14": - version: 7.1.19 - resolution: "@types/babel__core@npm:7.1.19" + version: 7.20.5 + resolution: "@types/babel__core@npm:7.20.5" dependencies: - "@babel/parser": ^7.1.0 - "@babel/types": ^7.0.0 + "@babel/parser": ^7.20.7 + "@babel/types": ^7.20.7 "@types/babel__generator": "*" "@types/babel__template": "*" "@types/babel__traverse": "*" - checksum: 8c9fa87a1c2224cbec251683a58bebb0d74c497118034166aaa0491a4e2627998a6621fc71f8a60ffd27d9c0c52097defedf7637adc6618d0331c15adb302338 + checksum: a3226f7930b635ee7a5e72c8d51a357e799d19cbf9d445710fa39ab13804f79ab1a54b72ea7d8e504659c7dfc50675db974b526142c754398d7413aa4bc30845 languageName: node linkType: hard "@types/babel__generator@npm:*": - version: 7.6.1 - resolution: "@types/babel__generator@npm:7.6.1" + version: 7.6.8 + resolution: "@types/babel__generator@npm:7.6.8" dependencies: "@babel/types": ^7.0.0 - checksum: d4b1f967fdf3fcc9648bce12ed3de5492abe645c643be36a3ce348051a7da405f2fea504821468a99bfb2089e622faa1fa85688ceb482bb6c8c4af85db31a752 + checksum: 5b332ea336a2efffbdeedb92b6781949b73498606ddd4205462f7d96dafd45ff3618770b41de04c4881e333dd84388bfb8afbdf6f2764cbd98be550d85c6bb48 languageName: node linkType: hard "@types/babel__template@npm:*": - version: 7.0.2 - resolution: "@types/babel__template@npm:7.0.2" + version: 7.4.4 + resolution: "@types/babel__template@npm:7.4.4" dependencies: "@babel/parser": ^7.1.0 "@babel/types": ^7.0.0 - checksum: ce04f0ab702d7d4c753c09e08db3e61e5fc69375ea70f5c991110511b7286124070ca70e260e8074614f8a339424de7e387c08033eaf0a9f5c81a93e350965a8 + checksum: d7a02d2a9b67e822694d8e6a7ddb8f2b71a1d6962dfd266554d2513eefbb205b33ca71a0d163b1caea3981ccf849211f9964d8bd0727124d18ace45aa6c9ae29 languageName: node linkType: hard "@types/babel__traverse@npm:*, @types/babel__traverse@npm:^7.0.6": - version: 7.0.14 - resolution: "@types/babel__traverse@npm:7.0.14" + version: 7.20.5 + resolution: "@types/babel__traverse@npm:7.20.5" dependencies: - "@babel/types": ^7.3.0 - checksum: cd72f7f1d48da4ee02aaa3627259bd189d1addccbec2f05cf670f0a2bf42a1b9c882ead4ae29429d054848f8ebe941c22100c8f5d131e91ae65b1b26667f5491 + "@babel/types": ^7.20.7 + checksum: 608e0ab4fc31cd47011d98942e6241b34d461608c0c0e153377c5fd822c436c475f1ded76a56bfa76a1adf8d9266b727bbf9bfac90c4cb152c97f30dadc5b7e8 languageName: node linkType: hard @@ -1467,87 +1515,70 @@ __metadata: languageName: node linkType: hard -"@types/color-name@npm:^1.1.1": - version: 1.1.1 - resolution: "@types/color-name@npm:1.1.1" - checksum: b71fcad728cc68abcba1d405742134410c8f8eb3c2ef18113b047afca158ad23a4f2c229bcf71a38f4a818dead375c45b20db121d0e69259c2d81e97a740daa6 - languageName: node - linkType: hard - "@types/debug@npm:^4.1.7": - version: 4.1.10 - resolution: "@types/debug@npm:4.1.10" + version: 4.1.12 + resolution: "@types/debug@npm:4.1.12" dependencies: "@types/ms": "*" - checksum: 938f79c5b610f851da9c67ecd8641a09b33ce9cb38fe4c9f4d20ee743d6bccb5d8e9a833a4cd23e0684a316622af67a0634fa706baea5a01f5219961d1976314 - languageName: node - linkType: hard - -"@types/glob@npm:^7.1.1": - version: 7.1.3 - resolution: "@types/glob@npm:7.1.3" - dependencies: - "@types/minimatch": "*" - "@types/node": "*" - checksum: e0eef12285f548f15d887145590594a04ccce7f7e645fb047cbac18cb093f25d507ffbcc725312294c224bb78cf980fce33e5807de8d6f8a868b4186253499d4 + checksum: 47876a852de8240bfdaf7481357af2b88cb660d30c72e73789abf00c499d6bc7cd5e52f41c915d1b9cd8ec9fef5b05688d7b7aef17f7f272c2d04679508d1053 languageName: node linkType: hard "@types/graceful-fs@npm:^4.1.3": - version: 4.1.5 - resolution: "@types/graceful-fs@npm:4.1.5" + version: 4.1.9 + resolution: "@types/graceful-fs@npm:4.1.9" dependencies: "@types/node": "*" - checksum: d076bb61f45d0fc42dee496ef8b1c2f8742e15d5e47e90e20d0243386e426c04d4efd408a48875ab432f7960b4ce3414db20ed0fbbfc7bcc89d84e574f6e045a + checksum: 79d746a8f053954bba36bd3d94a90c78de995d126289d656fb3271dd9f1229d33f678da04d10bce6be440494a5a73438e2e363e92802d16b8315b051036c5256 languageName: node linkType: hard "@types/http-cache-semantics@npm:*": - version: 4.0.1 - resolution: "@types/http-cache-semantics@npm:4.0.1" - checksum: 1048aacf627829f0d5f00184e16548205cd9f964bf0841c29b36bc504509230c40bc57c39778703a1c965a6f5b416ae2cbf4c1d4589c889d2838dd9dbfccf6e9 + version: 4.0.4 + resolution: "@types/http-cache-semantics@npm:4.0.4" + checksum: 7f4dd832e618bc1e271be49717d7b4066d77c2d4eed5b81198eb987e532bb3e1c7e02f45d77918185bad936f884b700c10cebe06305f50400f382ab75055f9e8 languageName: node linkType: hard "@types/istanbul-lib-coverage@npm:*, @types/istanbul-lib-coverage@npm:^2.0.0, @types/istanbul-lib-coverage@npm:^2.0.1": - version: 2.0.3 - resolution: "@types/istanbul-lib-coverage@npm:2.0.3" - checksum: 0650cba4be8f464bee89b9de0b71a5ea3b5cc676ce24e1196b5d6a51542ce9e613ae4549bf19756bb33dbbbb32b47931040266100062bfb197c597d73e341eb0 + version: 2.0.6 + resolution: "@types/istanbul-lib-coverage@npm:2.0.6" + checksum: 3feac423fd3e5449485afac999dcfcb3d44a37c830af898b689fadc65d26526460bedb889db278e0d4d815a670331796494d073a10ee6e3a6526301fe7415778 languageName: node linkType: hard "@types/istanbul-lib-report@npm:*": - version: 3.0.0 - resolution: "@types/istanbul-lib-report@npm:3.0.0" + version: 3.0.3 + resolution: "@types/istanbul-lib-report@npm:3.0.3" dependencies: "@types/istanbul-lib-coverage": "*" - checksum: 656398b62dc288e1b5226f8880af98087233cdb90100655c989a09f3052b5775bf98ba58a16c5ae642fb66c61aba402e07a9f2bff1d1569e3b306026c59f3f36 + checksum: b91e9b60f865ff08cb35667a427b70f6c2c63e88105eadd29a112582942af47ed99c60610180aa8dcc22382fa405033f141c119c69b95db78c4c709fbadfeeb4 languageName: node linkType: hard "@types/istanbul-reports@npm:^3.0.0": - version: 3.0.0 - resolution: "@types/istanbul-reports@npm:3.0.0" + version: 3.0.4 + resolution: "@types/istanbul-reports@npm:3.0.4" dependencies: "@types/istanbul-lib-report": "*" - checksum: 286a18cff19c4dac4321b9ea406a3560faf577fb2a4df5abf9d577fa81ba831c9baa7d40d03f1daf7fe613d468546b731c00b844b72fad9834c583311a35bb7b + checksum: 93eb18835770b3431f68ae9ac1ca91741ab85f7606f310a34b3586b5a34450ec038c3eed7ab19266635499594de52ff73723a54a72a75b9f7d6a956f01edee95 languageName: node linkType: hard "@types/jest@npm:^28.1.6": - version: 28.1.7 - resolution: "@types/jest@npm:28.1.7" + version: 28.1.8 + resolution: "@types/jest@npm:28.1.8" dependencies: expect: ^28.0.0 pretty-format: ^28.0.0 - checksum: 17c9bf9667cd4f062eba5aa9eaea248927bf6479da1cc009e0b7d26d501f460f068dd23eddb67d2602264e915a30b63ae7c9cbb516723ffd18589f6f9d267d43 + checksum: d4cd36158a3ae1d4b42cc48a77c95de74bc56b84cf81e09af3ee0399c34f4a7da8ab9e787570f10004bd642f9e781b0033c37327fbbf4a8e4b6e37e8ee3693a7 languageName: node linkType: hard "@types/json-schema@npm:^7.0.9": - version: 7.0.11 - resolution: "@types/json-schema@npm:7.0.11" - checksum: 527bddfe62db9012fccd7627794bd4c71beb77601861055d87e3ee464f2217c85fca7a4b56ae677478367bbd248dbde13553312b7d4dbc702a2f2bbf60c4018d + version: 7.0.15 + resolution: "@types/json-schema@npm:7.0.15" + checksum: 97ed0cb44d4070aecea772b7b2e2ed971e10c81ec87dd4ecc160322ffa55ff330dace1793489540e3e318d90942064bb697cc0f8989391797792d919737b3b98 languageName: node linkType: hard @@ -1567,7 +1598,14 @@ __metadata: languageName: node linkType: hard -"@types/minimatch@npm:*, @types/minimatch@npm:^3.0.3": +"@types/lodash@npm:^4.14.202": + version: 4.14.202 + resolution: "@types/lodash@npm:4.14.202" + checksum: a91acf3564a568c6f199912f3eb2c76c99c5a0d7e219394294213b3f2d54f672619f0fde4da22b29dc5d4c31457cd799acc2e5cb6bd90f9af04a1578483b6ff7 + languageName: node + linkType: hard + +"@types/minimatch@npm:^3.0.3": version: 3.0.5 resolution: "@types/minimatch@npm:3.0.5" checksum: c41d136f67231c3131cf1d4ca0b06687f4a322918a3a5adddc87ce90ed9dbd175a3610adee36b106ae68c0b92c637c35e02b58c8a56c424f71d30993ea220b92 @@ -1575,83 +1613,93 @@ __metadata: linkType: hard "@types/ms@npm:*": - version: 0.7.33 - resolution: "@types/ms@npm:0.7.33" - checksum: 2cb5af611ace05ab2ae40422c8539850cf983197982bb04b83acf59e6e692e2faccf336a82ac4db97f7ea28f2baa0a8990fa5eb1cd72c5cab17b5b3609b0b650 + version: 0.7.34 + resolution: "@types/ms@npm:0.7.34" + checksum: f38d36e7b6edecd9badc9cf50474159e9da5fa6965a75186cceaf883278611b9df6669dc3a3cc122b7938d317b68a9e3d573d316fcb35d1be47ec9e468c6bd8a + languageName: node + linkType: hard + +"@types/node@npm:*": + version: 20.11.18 + resolution: "@types/node@npm:20.11.18" + dependencies: + undici-types: ~5.26.4 + checksum: b34fb342152b5a5b486e9d54d62003f6ca18e2f0f1682c8c4a3d6388e9456dab310775cbdc8302a7945fb72a42ff283b770f8fb6ca5120f77b9b3b7de40c9760 languageName: node linkType: hard -"@types/node@npm:*, @types/node@npm:^16": - version: 16.18.31 - resolution: "@types/node@npm:16.18.31" - checksum: 1e0bbbdcfdb80ebb9c5544a58b9692964dca08175a9d2f787a1ed8c75c253d106d56cf7d94c5ba0b44e1627000d093d599f995aeb657f5edbf577e66565b017a +"@types/node@npm:^16": + version: 16.18.81 + resolution: "@types/node@npm:16.18.81" + checksum: 7e9de5e42423e2e516cc38e9c3b35bffc1d212d6b9e552b32a521bb51ed496acb49ada7f2af418d93d56bb92db508bf36977a28d0bc5f35ca5d5165f04711656 languageName: node linkType: hard "@types/parse-json@npm:^4.0.0": - version: 4.0.0 - resolution: "@types/parse-json@npm:4.0.0" - checksum: fd6bce2b674b6efc3db4c7c3d336bd70c90838e8439de639b909ce22f3720d21344f52427f1d9e57b265fcb7f6c018699b99e5e0c208a1a4823014269a6bf35b + version: 4.0.2 + resolution: "@types/parse-json@npm:4.0.2" + checksum: 5bf62eec37c332ad10059252fc0dab7e7da730764869c980b0714777ad3d065e490627be9f40fc52f238ffa3ac4199b19de4127196910576c2fe34dd47c7a470 languageName: node linkType: hard "@types/prettier@npm:^2.1.5": - version: 2.4.4 - resolution: "@types/prettier@npm:2.4.4" - checksum: 2c2cc57efd49c7d8907415a72f96c84a6dd8696dd3bf8aa4ca3a667427bebf71cbfbc912673624bdfc935d272d1c008c639cf155f6449315990a4dc110f0d216 + version: 2.7.3 + resolution: "@types/prettier@npm:2.7.3" + checksum: 705384209cea6d1433ff6c187c80dcc0b95d99d5c5ce21a46a9a58060c527973506822e428789d842761e0280d25e3359300f017fbe77b9755bc772ab3dc2f83 languageName: node linkType: hard "@types/responselike@npm:^1.0.0": - version: 1.0.0 - resolution: "@types/responselike@npm:1.0.0" + version: 1.0.3 + resolution: "@types/responselike@npm:1.0.3" dependencies: "@types/node": "*" - checksum: e99fc7cc6265407987b30deda54c1c24bb1478803faf6037557a774b2f034c5b097ffd65847daa87e82a61a250d919f35c3588654b0fdaa816906650f596d1b0 + checksum: 6ac4b35723429b11b117e813c7acc42c3af8b5554caaf1fc750404c1ae59f9b7376bc69b9e9e194a5a97357a597c2228b7173d317320f0360d617b6425212f58 languageName: node linkType: hard "@types/semver@npm:^7.3.12": - version: 7.3.13 - resolution: "@types/semver@npm:7.3.13" - checksum: 00c0724d54757c2f4bc60b5032fe91cda6410e48689633d5f35ece8a0a66445e3e57fa1d6e07eb780f792e82ac542948ec4d0b76eb3484297b79bd18b8cf1cb0 + version: 7.5.7 + resolution: "@types/semver@npm:7.5.7" + checksum: 5af9b13e3d74d86d4b618f6506ccbded801fb35dbc28608cd5a7bfb8bcac0021dd35ef305a72a0c2a8def0cff60acd706bfee16a9ed1c39a893d2a175e778ea7 languageName: node linkType: hard "@types/stack-utils@npm:^2.0.0": - version: 2.0.0 - resolution: "@types/stack-utils@npm:2.0.0" - checksum: b3fbae25b073116977ecb5c67d22f14567b51a7792403b0bf46e5de8f29bde3bd4ec1626afb22065495ca7f1c699c8bd66720050c94b8f8f9bcefbee79d161fd + version: 2.0.3 + resolution: "@types/stack-utils@npm:2.0.3" + checksum: 72576cc1522090fe497337c2b99d9838e320659ac57fa5560fcbdcbafcf5d0216c6b3a0a8a4ee4fdb3b1f5e3420aa4f6223ab57b82fef3578bec3206425c6cf5 languageName: node linkType: hard "@types/yargs-parser@npm:*": - version: 15.0.0 - resolution: "@types/yargs-parser@npm:15.0.0" - checksum: 333ab73a1f9c82c64b2fac2441558e58f062fbe7affc35bb53b8e755b62cdd32b1bbc6f4da23773887a2189bf04395e2a8c710df344df4cd578993aeefe98053 + version: 21.0.3 + resolution: "@types/yargs-parser@npm:21.0.3" + checksum: ef236c27f9432983e91432d974243e6c4cdae227cb673740320eff32d04d853eed59c92ca6f1142a335cfdc0e17cccafa62e95886a8154ca8891cc2dec4ee6fc languageName: node linkType: hard "@types/yargs@npm:^17.0.8": - version: 17.0.11 - resolution: "@types/yargs@npm:17.0.11" + version: 17.0.32 + resolution: "@types/yargs@npm:17.0.32" dependencies: "@types/yargs-parser": "*" - checksum: 30a45f9e59a5cc3c967f76036bea6a456b1416175aa4c002b70e1f295772e2247ed8117f392b20eef4557ad761678df8c1fcb141852f2c7c44977130d802c855 + checksum: 4505bdebe8716ff383640c6e928f855b5d337cb3c68c81f7249fc6b983d0aa48de3eee26062b84f37e0d75a5797bc745e0c6e76f42f81771252a758c638f36ba languageName: node linkType: hard "@typescript-eslint/eslint-plugin@npm:^5.43.0": - version: 5.43.0 - resolution: "@typescript-eslint/eslint-plugin@npm:5.43.0" + version: 5.62.0 + resolution: "@typescript-eslint/eslint-plugin@npm:5.62.0" dependencies: - "@typescript-eslint/scope-manager": 5.43.0 - "@typescript-eslint/type-utils": 5.43.0 - "@typescript-eslint/utils": 5.43.0 + "@eslint-community/regexpp": ^4.4.0 + "@typescript-eslint/scope-manager": 5.62.0 + "@typescript-eslint/type-utils": 5.62.0 + "@typescript-eslint/utils": 5.62.0 debug: ^4.3.4 + graphemer: ^1.4.0 ignore: ^5.2.0 natural-compare-lite: ^1.4.0 - regexpp: ^3.2.0 semver: ^7.3.7 tsutils: ^3.21.0 peerDependencies: @@ -1660,43 +1708,43 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: aa0e9bcd9982e9601ada2088f46c1e9389abd31ceaf6cd1d492684fd711a67d595d4c95d97ba14081c2ea7eb3b98a9ebb33f91ef008e7450ce2f70b2a8ec4309 + checksum: fc104b389c768f9fa7d45a48c86d5c1ad522c1d0512943e782a56b1e3096b2cbcc1eea3fcc590647bf0658eef61aac35120a9c6daf979bf629ad2956deb516a1 languageName: node linkType: hard "@typescript-eslint/parser@npm:^5.43.0": - version: 5.43.0 - resolution: "@typescript-eslint/parser@npm:5.43.0" + version: 5.62.0 + resolution: "@typescript-eslint/parser@npm:5.62.0" dependencies: - "@typescript-eslint/scope-manager": 5.43.0 - "@typescript-eslint/types": 5.43.0 - "@typescript-eslint/typescript-estree": 5.43.0 + "@typescript-eslint/scope-manager": 5.62.0 + "@typescript-eslint/types": 5.62.0 + "@typescript-eslint/typescript-estree": 5.62.0 debug: ^4.3.4 peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 peerDependenciesMeta: typescript: optional: true - checksum: a28e0ef2807f1c3381c6dc1d9ddfd83ea8db657d3f808511adf13023b469ed64fc09619e05d7f68746b05ea68770a0882883c77ce908682965ba266f95e168c9 + checksum: d168f4c7f21a7a63f47002e2d319bcbb6173597af5c60c1cf2de046b46c76b4930a093619e69faf2d30214c29ab27b54dcf1efc7046a6a6bd6f37f59a990e752 languageName: node linkType: hard -"@typescript-eslint/scope-manager@npm:5.43.0": - version: 5.43.0 - resolution: "@typescript-eslint/scope-manager@npm:5.43.0" +"@typescript-eslint/scope-manager@npm:5.62.0": + version: 5.62.0 + resolution: "@typescript-eslint/scope-manager@npm:5.62.0" dependencies: - "@typescript-eslint/types": 5.43.0 - "@typescript-eslint/visitor-keys": 5.43.0 - checksum: e594c7a32c3fa29e46dd0b0bc62f97f154bd864682ae7da87a14b6f4336f4cb02f6ed0602bbdb15783e4230ecdf8a0ccc6f7c5820850e8f11240c9e4fb0e388d + "@typescript-eslint/types": 5.62.0 + "@typescript-eslint/visitor-keys": 5.62.0 + checksum: 6062d6b797fe1ce4d275bb0d17204c827494af59b5eaf09d8a78cdd39dadddb31074dded4297aaf5d0f839016d601032857698b0e4516c86a41207de606e9573 languageName: node linkType: hard -"@typescript-eslint/type-utils@npm:5.43.0": - version: 5.43.0 - resolution: "@typescript-eslint/type-utils@npm:5.43.0" +"@typescript-eslint/type-utils@npm:5.62.0": + version: 5.62.0 + resolution: "@typescript-eslint/type-utils@npm:5.62.0" dependencies: - "@typescript-eslint/typescript-estree": 5.43.0 - "@typescript-eslint/utils": 5.43.0 + "@typescript-eslint/typescript-estree": 5.62.0 + "@typescript-eslint/utils": 5.62.0 debug: ^4.3.4 tsutils: ^3.21.0 peerDependencies: @@ -1704,23 +1752,23 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: 08dbc0b194d0ef1454a95d76c082503e04d9957e89a056068002e233f8d98113f50b2707f7c4b9b44f428e223d5b4485ee2b4df4e0cde354827c5edc92ede973 + checksum: fc41eece5f315dfda14320be0da78d3a971d650ea41300be7196934b9715f3fe1120a80207551eb71d39568275dbbcf359bde540d1ca1439d8be15e9885d2739 languageName: node linkType: hard -"@typescript-eslint/types@npm:5.43.0": - version: 5.43.0 - resolution: "@typescript-eslint/types@npm:5.43.0" - checksum: fc5e5431c305feee4a3faae84f34df482e08d74b910a6f9376b01326c682ceefeeb0e270d03d7778787bc94ef05b3b85ee6d3c9d732290fbdb4a67ae1b110226 +"@typescript-eslint/types@npm:5.62.0": + version: 5.62.0 + resolution: "@typescript-eslint/types@npm:5.62.0" + checksum: 48c87117383d1864766486f24de34086155532b070f6264e09d0e6139449270f8a9559cfef3c56d16e3bcfb52d83d42105d61b36743626399c7c2b5e0ac3b670 languageName: node linkType: hard -"@typescript-eslint/typescript-estree@npm:5.43.0": - version: 5.43.0 - resolution: "@typescript-eslint/typescript-estree@npm:5.43.0" +"@typescript-eslint/typescript-estree@npm:5.62.0": + version: 5.62.0 + resolution: "@typescript-eslint/typescript-estree@npm:5.62.0" dependencies: - "@typescript-eslint/types": 5.43.0 - "@typescript-eslint/visitor-keys": 5.43.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 @@ -1729,115 +1777,116 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: 3479f9413d73369ab3d574580c90a72f74d2ae1ec4afe485eebfad054c3d15c89f23a137bb9d6197dfdae33e444a76a99f6832688787feabbb064e09d39a3f55 + checksum: 3624520abb5807ed8f57b1197e61c7b1ed770c56dfcaca66372d584ff50175225798bccb701f7ef129d62c5989070e1ee3a0aa2d84e56d9524dcf011a2bb1a52 languageName: node linkType: hard -"@typescript-eslint/utils@npm:5.43.0, @typescript-eslint/utils@npm:^5.10.0": - version: 5.43.0 - resolution: "@typescript-eslint/utils@npm:5.43.0" +"@typescript-eslint/utils@npm:5.62.0, @typescript-eslint/utils@npm:^5.10.0": + version: 5.62.0 + resolution: "@typescript-eslint/utils@npm:5.62.0" dependencies: + "@eslint-community/eslint-utils": ^4.2.0 "@types/json-schema": ^7.0.9 "@types/semver": ^7.3.12 - "@typescript-eslint/scope-manager": 5.43.0 - "@typescript-eslint/types": 5.43.0 - "@typescript-eslint/typescript-estree": 5.43.0 + "@typescript-eslint/scope-manager": 5.62.0 + "@typescript-eslint/types": 5.62.0 + "@typescript-eslint/typescript-estree": 5.62.0 eslint-scope: ^5.1.1 - eslint-utils: ^3.0.0 semver: ^7.3.7 peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - checksum: 4c6b383b51506b57230f2624f883ae21e5d8411d138587c04fe3145f915bf8c289cc2a9f7b0b3faba98345ba230504e5014922bcc578aa0badd594d9eaa8f9ef + checksum: ee9398c8c5db6d1da09463ca7bf36ed134361e20131ea354b2da16a5fdb6df9ba70c62a388d19f6eebb421af1786dbbd79ba95ddd6ab287324fc171c3e28d931 languageName: node linkType: hard -"@typescript-eslint/visitor-keys@npm:5.43.0": - version: 5.43.0 - resolution: "@typescript-eslint/visitor-keys@npm:5.43.0" +"@typescript-eslint/visitor-keys@npm:5.62.0": + version: 5.62.0 + resolution: "@typescript-eslint/visitor-keys@npm:5.62.0" dependencies: - "@typescript-eslint/types": 5.43.0 + "@typescript-eslint/types": 5.62.0 eslint-visitor-keys: ^3.3.0 - checksum: 4820679e50096dcdaadc7c95d32e5dca3ba8510acf1a865e283822bae3940a2faec02ad8abe793f8a25f75b600f1e7215e1fd3b3ba73779eff737fa90d092550 + checksum: 976b05d103fe8335bef5c93ad3f76d781e3ce50329c0243ee0f00c0fcfb186c81df50e64bfdd34970148113f8ade90887f53e3c4938183afba830b4ba8e30a35 languageName: node linkType: hard -"@vue/compiler-core@npm:3.2.45": - version: 3.2.45 - resolution: "@vue/compiler-core@npm:3.2.45" - dependencies: - "@babel/parser": ^7.16.4 - "@vue/shared": 3.2.45 - estree-walker: ^2.0.2 - source-map: ^0.6.1 - checksum: e3c687b24c16c2b320c02ed38960f8bee7dcb88bddb09e60a80d2d4dc004070cbbd4eccbc99cc168d48d753ff60d0b9eefba835e1dec3b7f233a98c89af31c07 +"@ungap/structured-clone@npm:^1.2.0": + version: 1.2.0 + resolution: "@ungap/structured-clone@npm:1.2.0" + checksum: 4f656b7b4672f2ce6e272f2427d8b0824ed11546a601d8d5412b9d7704e83db38a8d9f402ecdf2b9063fc164af842ad0ec4a55819f621ed7e7ea4d1efcc74524 languageName: node linkType: hard -"@vue/compiler-dom@npm:3.2.45": - version: 3.2.45 - resolution: "@vue/compiler-dom@npm:3.2.45" +"@vue/compiler-core@npm:3.4.19": + version: 3.4.19 + resolution: "@vue/compiler-core@npm:3.4.19" dependencies: - "@vue/compiler-core": 3.2.45 - "@vue/shared": 3.2.45 - checksum: 89115538635f0da9cce615de5488d2759256fa573976a09a049536dbb94e9b5086b46f2f11e743cf0a7b14837161b3191c67611e0493054a5d4c4b96a322c901 + "@babel/parser": ^7.23.9 + "@vue/shared": 3.4.19 + entities: ^4.5.0 + estree-walker: ^2.0.2 + source-map-js: ^1.0.2 + checksum: 92fbcc52c0e0b44c88a5af84c9beb3aab80c85f9fc81bdb00ea64b6c0e524843670f576d6734c7fe385c116f71ae189bc6e9dc0674fd4898c3163b32c00aaebc languageName: node linkType: hard -"@vue/compiler-sfc@npm:^3.0.5": - version: 3.2.45 - resolution: "@vue/compiler-sfc@npm:3.2.45" +"@vue/compiler-dom@npm:3.4.19": + version: 3.4.19 + resolution: "@vue/compiler-dom@npm:3.4.19" dependencies: - "@babel/parser": ^7.16.4 - "@vue/compiler-core": 3.2.45 - "@vue/compiler-dom": 3.2.45 - "@vue/compiler-ssr": 3.2.45 - "@vue/reactivity-transform": 3.2.45 - "@vue/shared": 3.2.45 - estree-walker: ^2.0.2 - magic-string: ^0.25.7 - postcss: ^8.1.10 - source-map: ^0.6.1 - checksum: bec375faa0012e953dc0887482cc01d52003ad424b6a8a9c8a2506fd4f0197ad62be22f77ce5691c2306068ae7bc0028399f25399e7d4beee668285d431f4d8f + "@vue/compiler-core": 3.4.19 + "@vue/shared": 3.4.19 + checksum: b74c620c40b1bb9c06726fc61320291155bca44cf06ee55a7f030df90cd009af603ffeeacabebcca83a006d2f589997c2f32801f885a899ddb75818fc060d05c languageName: node linkType: hard -"@vue/compiler-ssr@npm:3.2.45": - version: 3.2.45 - resolution: "@vue/compiler-ssr@npm:3.2.45" +"@vue/compiler-sfc@npm:^3.3.4": + version: 3.4.19 + resolution: "@vue/compiler-sfc@npm:3.4.19" dependencies: - "@vue/compiler-dom": 3.2.45 - "@vue/shared": 3.2.45 - checksum: 830c475506d2b6d1a6872b3fde1024ef5132f725121fd9c34832c5cefcc8cfddf0dcaa3acc9b2da4754162fccdff48b3275b9ff31415a7793b224c04355dc632 + "@babel/parser": ^7.23.9 + "@vue/compiler-core": 3.4.19 + "@vue/compiler-dom": 3.4.19 + "@vue/compiler-ssr": 3.4.19 + "@vue/shared": 3.4.19 + estree-walker: ^2.0.2 + magic-string: ^0.30.6 + postcss: ^8.4.33 + source-map-js: ^1.0.2 + checksum: d622207fdb2030320d3612226da077914018cdf9deb06db0368bbb5dd4ee796aa5f83717287cd5834157d67596142957e7d955d16b5345eafa3e13cb48d3a79a languageName: node linkType: hard -"@vue/reactivity-transform@npm:3.2.45": - version: 3.2.45 - resolution: "@vue/reactivity-transform@npm:3.2.45" +"@vue/compiler-ssr@npm:3.4.19": + version: 3.4.19 + resolution: "@vue/compiler-ssr@npm:3.4.19" dependencies: - "@babel/parser": ^7.16.4 - "@vue/compiler-core": 3.2.45 - "@vue/shared": 3.2.45 - estree-walker: ^2.0.2 - magic-string: ^0.25.7 - checksum: 401040818947eb04c782487a7861d3ba20f95c9f3ca14282b3d7624002bfe6000547bb48c561afe87ae6d302143fec71a7e0bc3ed3ae2bfad8a228adf7fd90d6 + "@vue/compiler-dom": 3.4.19 + "@vue/shared": 3.4.19 + checksum: b4599560fdad327f30b0a8fc72427bf2c17c44620924e948a3e87c3c35f2e98c080152e0540350b27b4dec832b74752bc94e1334ca8d114c741a4ae1ae67f6f7 languageName: node linkType: hard -"@vue/shared@npm:3.2.45": - version: 3.2.45 - resolution: "@vue/shared@npm:3.2.45" - checksum: ff3205056caed2a965aa0980e21319515ce13c859a9b269fdab0ee8b3c9f3d8eec7eefdb7fd6c6b47c12acdc7bf23c6c187b6191054221b4a29108139b20c221 +"@vue/shared@npm:3.4.19": + version: 3.4.19 + resolution: "@vue/shared@npm:3.4.19" + checksum: 676c2ec007efc5963a37811e1991f7a114ea603d52721feb59e6c1ac119127d1bdf80c57b09b32a53bb803922edc50e3753d847e800e16018a80fc5f9b84fcf5 languageName: node linkType: hard -"abbrev@npm:1, abbrev@npm:^1.0.0": +"abbrev@npm:^1.0.0": version: 1.1.1 resolution: "abbrev@npm:1.1.1" checksum: a4a97ec07d7ea112c517036882b2ac22f3109b7b19077dc656316d07d308438aac28e4d9746dc4d84bf6b1e75b4a7b0a5f3cb30592419f128ca9a8cee3bcfa17 languageName: node linkType: hard +"abbrev@npm:^2.0.0": + version: 2.0.0 + resolution: "abbrev@npm:2.0.0" + checksum: 0e994ad2aa6575f94670d8a2149afe94465de9cedaaaac364e7fb43a40c3691c980ff74899f682f4ca58fa96b4cbd7421a015d3a6defe43a442117d7821a2f36 + languageName: node + linkType: hard + "acorn-jsx@npm:^5.3.2": version: 5.3.2 resolution: "acorn-jsx@npm:5.3.2" @@ -1848,18 +1897,18 @@ __metadata: linkType: hard "acorn-walk@npm:^8.1.1": - version: 8.2.0 - resolution: "acorn-walk@npm:8.2.0" - checksum: 1715e76c01dd7b2d4ca472f9c58968516a4899378a63ad5b6c2d668bba8da21a71976c14ec5f5b75f887b6317c4ae0b897ab141c831d741dc76024d8745f1ad1 + version: 8.3.2 + resolution: "acorn-walk@npm:8.3.2" + checksum: 3626b9d26a37b1b427796feaa5261faf712307a8920392c8dce9a5739fb31077667f4ad2ec71c7ac6aaf9f61f04a9d3d67ff56f459587206fc04aa31c27ef392 languageName: node linkType: hard "acorn@npm:^8.4.1, acorn@npm:^8.9.0": - version: 8.10.0 - resolution: "acorn@npm:8.10.0" + version: 8.11.3 + resolution: "acorn@npm:8.11.3" bin: acorn: bin/acorn - checksum: 538ba38af0cc9e5ef983aee196c4b8b4d87c0c94532334fa7e065b2c8a1f85863467bb774231aae91613fcda5e68740c15d97b1967ae3394d20faddddd8af61d + checksum: 76d8e7d559512566b43ab4aadc374f11f563f0a9e21626dd59cb2888444e9445923ae9f3699972767f18af61df89cd89f5eaaf772d1327b055b45cb829b4a88c languageName: node linkType: hard @@ -1872,14 +1921,21 @@ __metadata: languageName: node linkType: hard +"agent-base@npm:^7.0.2, agent-base@npm:^7.1.0": + version: 7.1.0 + resolution: "agent-base@npm:7.1.0" + dependencies: + debug: ^4.3.4 + checksum: f7828f991470a0cc22cb579c86a18cbae83d8a3cbed39992ab34fc7217c4d126017f1c74d0ab66be87f71455318a8ea3e757d6a37881b8d0f2a2c6aa55e5418f + languageName: node + linkType: hard + "agentkeepalive@npm:^4.2.1": - version: 4.2.1 - resolution: "agentkeepalive@npm:4.2.1" + version: 4.5.0 + resolution: "agentkeepalive@npm:4.5.0" dependencies: - debug: ^4.1.0 - depd: ^1.1.2 humanize-ms: ^1.2.1 - checksum: 39cb49ed8cf217fd6da058a92828a0a84e0b74c35550f82ee0a10e1ee403c4b78ade7948be2279b188b7a7303f5d396ea2738b134731e464bf28de00a4f72a18 + checksum: 13278cd5b125e51eddd5079f04d6fe0914ac1b8b91c1f3db2c1822f99ac1a7457869068997784342fe455d59daaff22e14fb7b8c3da4e741896e7e31faf92481 languageName: node linkType: hard @@ -1893,7 +1949,7 @@ __metadata: languageName: node linkType: hard -"ajv@npm:^6.10.0, ajv@npm:^6.12.4": +"ajv@npm:^6.12.4": version: 6.12.6 resolution: "ajv@npm:6.12.6" dependencies: @@ -1913,11 +1969,11 @@ __metadata: linkType: hard "ansi-escapes@npm:^4.2.1": - version: 4.3.1 - resolution: "ansi-escapes@npm:4.3.1" + version: 4.3.2 + resolution: "ansi-escapes@npm:4.3.2" dependencies: - type-fest: ^0.11.0 - checksum: c4962c1791cc4e29efb9976680bad7b23f322ca039e588406680fffc8b6bc6e223721193eb481dab076309d9a7371bbfc4e835efe5fe267e3395ffa047da239d + type-fest: ^0.21.3 + checksum: 93111c42189c0a6bed9cdb4d7f2829548e943827ee8479c74d6e0b22ee127b2a21d3f8b5ca57723b8ef78ce011fbfc2784350eb2bde3ccfccf2f575fa8489815 languageName: node linkType: hard @@ -1928,6 +1984,20 @@ __metadata: languageName: node linkType: hard +"ansi-regex@npm:^6.0.1": + version: 6.0.1 + resolution: "ansi-regex@npm:6.0.1" + checksum: 1ff8b7667cded1de4fa2c9ae283e979fc87036864317da86a2e546725f96406746411d0d85e87a2d12fa5abd715d90006de7fa4fa0477c92321ad3b4c7d4e169 + languageName: node + linkType: hard + +"ansi-sequence-parser@npm:^1.1.0": + version: 1.1.1 + resolution: "ansi-sequence-parser@npm:1.1.1" + checksum: ead5b15c596e8e85ca02951a844366c6776769dcc9fd1bd3a0db11bb21364554822c6a439877fb599e7e1ffa0b5f039f1e5501423950457f3dcb2f480c30b188 + languageName: node + linkType: hard + "ansi-styles@npm:^3.2.1": version: 3.2.1 resolution: "ansi-styles@npm:3.2.1" @@ -1938,12 +2008,11 @@ __metadata: linkType: hard "ansi-styles@npm:^4.0.0, ansi-styles@npm:^4.1.0": - version: 4.2.1 - resolution: "ansi-styles@npm:4.2.1" + version: 4.3.0 + resolution: "ansi-styles@npm:4.3.0" dependencies: - "@types/color-name": ^1.1.1 color-convert: ^2.0.1 - checksum: 7c74dbc7ec912b9e45dacbfaa7e2513bea6aa24d5357a0cd3255e7f83ecfc62e1454c77ab150a8df60de700c83c17fbbf040e7c204b4b6fc7aa250c8afcb865f + checksum: 513b44c3b2105dd14cc42a19271e80f386466c4be574bccf60b627432f9198571ebf4ab1e4c3ba17347658f4ee1711c163d574248c0c1cdc2d5917a0ad582ec4 languageName: node linkType: hard @@ -1954,7 +2023,14 @@ __metadata: languageName: node linkType: hard -"anymatch@npm:^3.0.3, anymatch@npm:~3.1.2": +"ansi-styles@npm:^6.1.0": + version: 6.2.1 + resolution: "ansi-styles@npm:6.2.1" + checksum: ef940f2f0ced1a6347398da88a91da7930c33ecac3c77b72c5905f8b8fe402c52e6fde304ff5347f616e27a742da3f1dc76de98f6866c69251ad0b07a66776d9 + languageName: node + linkType: hard + +"anymatch@npm:^3.0.3": version: 3.1.3 resolution: "anymatch@npm:3.1.3" dependencies: @@ -1979,12 +2055,12 @@ __metadata: linkType: hard "are-we-there-yet@npm:^3.0.0": - version: 3.0.0 - resolution: "are-we-there-yet@npm:3.0.0" + version: 3.0.1 + resolution: "are-we-there-yet@npm:3.0.1" dependencies: delegates: ^1.0.0 readable-stream: ^3.6.0 - checksum: 348edfdd931b0b50868b55402c01c3f64df1d4c229ab6f063539a5025fd6c5f5bb8a0cab409bbed8d75d34762d22aa91b7c20b4204eb8177063158d9ba792981 + checksum: 52590c24860fa7173bedeb69a4c05fb573473e860197f618b9a28432ee4379049336727ae3a1f9c4cb083114601c1140cee578376164d0e651217a9843f9fe83 languageName: node linkType: hard @@ -2011,13 +2087,13 @@ __metadata: languageName: node linkType: hard -"array-buffer-byte-length@npm:^1.0.0": - version: 1.0.0 - resolution: "array-buffer-byte-length@npm:1.0.0" +"array-buffer-byte-length@npm:^1.0.1": + version: 1.0.1 + resolution: "array-buffer-byte-length@npm:1.0.1" dependencies: - call-bind: ^1.0.2 - is-array-buffer: ^3.0.1 - checksum: 044e101ce150f4804ad19c51d6c4d4cfa505c5b2577bd179256e4aa3f3f6a0a5e9874c78cd428ee566ac574c8a04d7ce21af9fe52e844abfdccb82b33035a7c3 + call-bind: ^1.0.5 + is-array-buffer: ^3.0.4 + checksum: 53524e08f40867f6a9f35318fafe467c32e45e9c682ba67b11943e167344d2febc0f6977a17e699b05699e805c3e8f073d876f8bbf1b559ed494ad2cd0fae09e languageName: node linkType: hard @@ -2028,16 +2104,16 @@ __metadata: languageName: node linkType: hard -"array-includes@npm:^3.1.6": - version: 3.1.6 - resolution: "array-includes@npm:3.1.6" +"array-includes@npm:^3.1.4": + version: 3.1.7 + resolution: "array-includes@npm:3.1.7" dependencies: call-bind: ^1.0.2 - define-properties: ^1.1.4 - es-abstract: ^1.20.4 - get-intrinsic: ^1.1.3 + define-properties: ^1.2.0 + es-abstract: ^1.22.1 + get-intrinsic: ^1.2.1 is-string: ^1.0.7 - checksum: f22f8cd8ba8a6448d91eebdc69f04e4e55085d09232b5216ee2d476dab3ef59984e8d1889e662c6a0ed939dcb1b57fd05b2c0209c3370942fc41b752c82a2ca5 + checksum: 06f9e4598fac12a919f7c59a3f04f010ea07f0b7f0585465ed12ef528a60e45f374e79d1bddbb34cdd4338357d00023ddbd0ac18b0be36964f5e726e8965d7fc languageName: node linkType: hard @@ -2048,27 +2124,31 @@ __metadata: languageName: node linkType: hard -"array.prototype.flat@npm:^1.3.1": - version: 1.3.1 - resolution: "array.prototype.flat@npm:1.3.1" +"array.prototype.flat@npm:^1.2.5": + version: 1.3.2 + resolution: "array.prototype.flat@npm:1.3.2" dependencies: call-bind: ^1.0.2 - define-properties: ^1.1.4 - es-abstract: ^1.20.4 + define-properties: ^1.2.0 + es-abstract: ^1.22.1 es-shim-unscopables: ^1.0.0 - checksum: 5a8415949df79bf6e01afd7e8839bbde5a3581300e8ad5d8449dea52639e9e59b26a467665622783697917b43bf39940a6e621877c7dd9b3d1c1f97484b9b88b + checksum: 5d6b4bf102065fb3f43764bfff6feb3295d372ce89591e6005df3d0ce388527a9f03c909af6f2a973969a4d178ab232ffc9236654149173e0e187ec3a1a6b87b languageName: node linkType: hard -"array.prototype.flatmap@npm:^1.3.1": - version: 1.3.1 - resolution: "array.prototype.flatmap@npm:1.3.1" - dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.4 - es-abstract: ^1.20.4 - es-shim-unscopables: ^1.0.0 - checksum: 8c1c43a4995f12cf12523436da28515184c753807b3f0bc2ca6c075f71c470b099e2090cc67dba8e5280958fea401c1d0c59e1db0143272aef6cd1103921a987 +"arraybuffer.prototype.slice@npm:^1.0.3": + version: 1.0.3 + resolution: "arraybuffer.prototype.slice@npm:1.0.3" + dependencies: + array-buffer-byte-length: ^1.0.1 + call-bind: ^1.0.5 + define-properties: ^1.2.1 + es-abstract: ^1.22.3 + es-errors: ^1.2.1 + get-intrinsic: ^1.2.3 + is-array-buffer: ^3.0.4 + is-shared-array-buffer: ^1.0.2 + checksum: 352259cba534dcdd969c92ab002efd2ba5025b2e3b9bead3973150edbdf0696c629d7f4b3f061c5931511e8207bdc2306da614703c820b45dabce39e3daf7e3e languageName: node linkType: hard @@ -2079,10 +2159,10 @@ __metadata: languageName: node linkType: hard -"available-typed-arrays@npm:^1.0.5": - version: 1.0.5 - resolution: "available-typed-arrays@npm:1.0.5" - checksum: 20eb47b3cefd7db027b9bbb993c658abd36d4edd3fe1060e83699a03ee275b0c9b216cc076ff3f2db29073225fb70e7613987af14269ac1fe2a19803ccc97f1a +"available-typed-arrays@npm:^1.0.5, available-typed-arrays@npm:^1.0.6": + version: 1.0.6 + resolution: "available-typed-arrays@npm:1.0.6" + checksum: 8295571eb86447138adf64a0df0c08ae61250b17190bba30e1fae8c80a816077a6d028e5506f602c382c0197d3080bae131e92e331139d55460989580eeae659 languageName: node linkType: hard @@ -2163,9 +2243,9 @@ __metadata: linkType: hard "balanced-match@npm:^1.0.0": - version: 1.0.0 - resolution: "balanced-match@npm:1.0.0" - checksum: 9b67bfe558772f40cf743a3469b48b286aecec2ea9fe80c48d74845e53aab1cef524fafedf123a63019b49ac397760573ef5f173f539423061f7217cbb5fbd40 + version: 1.0.2 + resolution: "balanced-match@npm:1.0.2" + checksum: 9706c088a283058a8a99e0bf91b0a2f75497f185980d9ffa8b304de1d9e58ebda7c72c07ebf01dadedaac5b2907b2c6f566f660d62bd336c3468e960403b9d65 languageName: node linkType: hard @@ -2192,13 +2272,13 @@ __metadata: linkType: hard "bin-version-check@npm:^5.0.0": - version: 5.0.0 - resolution: "bin-version-check@npm:5.0.0" + version: 5.1.0 + resolution: "bin-version-check@npm:5.1.0" dependencies: bin-version: ^6.0.0 - semver: ^7.3.5 - semver-truncate: ^2.0.0 - checksum: 1d3dc92847f8ecd5e07109f5f44727f0cb3b17c00be5ae2a2e105b86bf161bc4e5c10ee2e2c21d5d28e6382994d8416b5e06048191a485be909a1e49a959c3c3 + semver: ^7.5.3 + semver-truncate: ^3.0.0 + checksum: d99679cfe0964703045fe0145a98f117888942b621dfe2c2377305ee9a9d735374d8e3ecb3b476507b284af2567699f24f7ecb2feb1f27ad6086ad60b3198893 languageName: node linkType: hard @@ -2212,13 +2292,6 @@ __metadata: languageName: node linkType: hard -"binary-extensions@npm:^2.0.0": - version: 2.2.0 - resolution: "binary-extensions@npm:2.2.0" - checksum: ccd267956c58d2315f5d3ea6757cf09863c5fc703e50fbeb13a7dc849b812ef76e3cf9ca8f35a0c48498776a7478d7b4a0418e1e2b8cb9cb9731f2922aaad7f8 - languageName: node - linkType: hard - "brace-expansion@npm:^1.1.7": version: 1.1.11 resolution: "brace-expansion@npm:1.1.11" @@ -2238,7 +2311,7 @@ __metadata: languageName: node linkType: hard -"braces@npm:^3.0.1, braces@npm:~3.0.2": +"braces@npm:^3.0.2": version: 3.0.2 resolution: "braces@npm:3.0.2" dependencies: @@ -2247,17 +2320,17 @@ __metadata: languageName: node linkType: hard -"browserslist@npm:^4.21.9": - version: 4.22.1 - resolution: "browserslist@npm:4.22.1" +"browserslist@npm:^4.22.2": + version: 4.23.0 + resolution: "browserslist@npm:4.23.0" dependencies: - caniuse-lite: ^1.0.30001541 - electron-to-chromium: ^1.4.535 - node-releases: ^2.0.13 + caniuse-lite: ^1.0.30001587 + electron-to-chromium: ^1.4.668 + node-releases: ^2.0.14 update-browserslist-db: ^1.0.13 bin: browserslist: cli.js - checksum: 7e6b10c53f7dd5d83fd2b95b00518889096382539fed6403829d447e05df4744088de46a571071afb447046abc3c66ad06fbc790e70234ec2517452e32ffd862 + checksum: 436f49e796782ca751ebab7edc010cfc9c29f68536f387666cd70ea22f7105563f04dd62c6ff89cb24cc3254d17cba385f979eeeb3484d43e012412ff7e75def languageName: node linkType: hard @@ -2280,9 +2353,9 @@ __metadata: linkType: hard "buffer-from@npm:^1.0.0": - version: 1.1.1 - resolution: "buffer-from@npm:1.1.1" - checksum: ccc53b69736008bff764497367c4d24879ba7122bc619ee499ff47eef3a5b885ca496e87272e7ebffa0bec3804c83f84041c616f6e3318f40624e27c1d80f045 + version: 1.1.2 + resolution: "buffer-from@npm:1.1.2" + checksum: 0448524a562b37d4d7ed9efd91685a5b77a50672c556ea254ac9a6d30e3403a517d8981f10e565db24e8339413b43c97ca2951f10e399c6125a0d8911f5679bb languageName: node linkType: hard @@ -2296,8 +2369,8 @@ __metadata: linkType: hard "cacache@npm:^16.1.0": - version: 16.1.1 - resolution: "cacache@npm:16.1.1" + version: 16.1.3 + resolution: "cacache@npm:16.1.3" dependencies: "@npmcli/fs": ^2.1.0 "@npmcli/move-file": ^2.0.0 @@ -2316,8 +2389,28 @@ __metadata: rimraf: ^3.0.2 ssri: ^9.0.0 tar: ^6.1.11 - unique-filename: ^1.1.1 - checksum: 488524617008b793f0249b0c4ea2c330c710ca997921376e15650cc2415a8054491ae2dee9f01382c2015602c0641f3f977faf2fa7361aa33d2637dcfb03907a + unique-filename: ^2.0.0 + checksum: d91409e6e57d7d9a3a25e5dcc589c84e75b178ae8ea7de05cbf6b783f77a5fae938f6e8fda6f5257ed70000be27a681e1e44829251bfffe4c10216002f8f14e6 + languageName: node + linkType: hard + +"cacache@npm:^18.0.0": + version: 18.0.2 + resolution: "cacache@npm:18.0.2" + dependencies: + "@npmcli/fs": ^3.1.0 + fs-minipass: ^3.0.0 + glob: ^10.2.2 + lru-cache: ^10.0.1 + minipass: ^7.0.3 + minipass-collect: ^2.0.1 + minipass-flush: ^1.0.5 + minipass-pipeline: ^1.2.4 + p-map: ^4.0.0 + ssri: ^10.0.0 + tar: ^6.1.11 + unique-filename: ^3.0.0 + checksum: 0250df80e1ad0c828c956744850c5f742c24244e9deb5b7dc81bca90f8c10e011e132ecc58b64497cc1cad9a98968676147fb6575f4f94722f7619757b17a11b languageName: node linkType: hard @@ -2343,13 +2436,23 @@ __metadata: languageName: node linkType: hard -"call-bind@npm:^1.0.0, call-bind@npm:^1.0.2": - version: 1.0.2 - resolution: "call-bind@npm:1.0.2" +"call-bind@npm:^1.0.2, call-bind@npm:^1.0.5, call-bind@npm:^1.0.6, call-bind@npm:^1.0.7": + version: 1.0.7 + resolution: "call-bind@npm:1.0.7" dependencies: - function-bind: ^1.1.1 - get-intrinsic: ^1.0.2 - checksum: f8e31de9d19988a4b80f3e704788c4a2d6b6f3d17cfec4f57dc29ced450c53a49270dc66bf0fbd693329ee948dd33e6c90a329519aef17474a4d961e8d6426b0 + es-define-property: ^1.0.0 + es-errors: ^1.3.0 + function-bind: ^1.1.2 + get-intrinsic: ^1.2.4 + set-function-length: ^1.2.1 + checksum: 295c0c62b90dd6522e6db3b0ab1ce26bdf9e7404215bda13cfee25b626b5ff1a7761324d58d38b1ef1607fc65aca2d06e44d2e18d0dfc6c14b465b00d8660029 + languageName: node + linkType: hard + +"callsite@npm:^1.0.0": + version: 1.0.0 + resolution: "callsite@npm:1.0.0" + checksum: 569686d622a288a4f0a827466c2f967b6d7a98f2ee1e6ada9dcf5a6802267a5e2a995d40f07113b5f95c7b2b2d5cbff4fdde590195f2a8bed24b829d048688f8 languageName: node linkType: hard @@ -2367,17 +2470,17 @@ __metadata: languageName: node linkType: hard -"camelcase@npm:^6.2.0": +"camelcase@npm:^6.2.0, camelcase@npm:^6.3.0": version: 6.3.0 resolution: "camelcase@npm:6.3.0" checksum: 8c96818a9076434998511251dcb2761a94817ea17dbdc37f47ac080bd088fc62c7369429a19e2178b993497132c8cbcf5cc1f44ba963e76782ba469c0474938d languageName: node linkType: hard -"caniuse-lite@npm:^1.0.30001541": - version: 1.0.30001550 - resolution: "caniuse-lite@npm:1.0.30001550" - checksum: b48d5a0bd25d634d61f410e0130c5e6c328724285c3c6065644eb41f86a227f5db0eb77da25d0fe3c6c9b04bbd040c9c164bf8dc50dd75cb30fc578aaae562f1 +"caniuse-lite@npm:^1.0.30001587": + version: 1.0.30001587 + resolution: "caniuse-lite@npm:1.0.30001587" + checksum: fb50aa9beaaae42f9feae92ce038f6ff71e97510f024ef1bef2666f3adcfd36d6c59e5675442e5fe795575193f71bc826cb7721d4b0f6d763e82d193bea57863 languageName: node linkType: hard @@ -2409,25 +2512,6 @@ __metadata: languageName: node linkType: hard -"chokidar@npm:>=3.0.0 <4.0.0": - version: 3.5.3 - resolution: "chokidar@npm:3.5.3" - dependencies: - anymatch: ~3.1.2 - braces: ~3.0.2 - fsevents: ~2.3.2 - glob-parent: ~5.1.2 - is-binary-path: ~2.1.0 - is-glob: ~4.0.1 - normalize-path: ~3.0.0 - readdirp: ~3.6.0 - dependenciesMeta: - fsevents: - optional: true - checksum: b49fcde40176ba007ff361b198a2d35df60d9bb2a5aab228279eb810feae9294a6b4649ab15981304447afe1e6ffbf4788ad5db77235dc770ab777c6e771980c - languageName: node - linkType: hard - "chownr@npm:^2.0.0": version: 2.0.0 resolution: "chownr@npm:2.0.0" @@ -2436,16 +2520,16 @@ __metadata: linkType: hard "ci-info@npm:^3.2.0": - version: 3.3.0 - resolution: "ci-info@npm:3.3.0" - checksum: c3d86fe374938ecda5093b1ba39acb535d8309185ba3f23587747c6a057e63f45419b406d880304dbc0e1d72392c9a33e42fe9a1e299209bc0ded5efaa232b66 + version: 3.9.0 + resolution: "ci-info@npm:3.9.0" + checksum: 6b19dc9b2966d1f8c2041a838217299718f15d6c4b63ae36e4674edd2bee48f780e94761286a56aa59eb305a85fbea4ddffb7630ec063e7ec7e7e5ad42549a87 languageName: node linkType: hard "cjs-module-lexer@npm:^1.0.0": - version: 1.2.2 - resolution: "cjs-module-lexer@npm:1.2.2" - checksum: 977f3f042bd4f08e368c890d91eecfbc4f91da0bc009a3c557bc4dfbf32022ad1141244ac1178d44de70fc9f3dea7add7cd9a658a34b9fae98a55d8f92331ce5 + version: 1.2.3 + resolution: "cjs-module-lexer@npm:1.2.3" + checksum: 5ea3cb867a9bb609b6d476cd86590d105f3cfd6514db38ff71f63992ab40939c2feb68967faa15a6d2b1f90daa6416b79ea2de486e9e2485a6f8b66a21b4fb0a languageName: node linkType: hard @@ -2457,9 +2541,9 @@ __metadata: linkType: hard "cli-spinners@npm:^2.6.0": - version: 2.6.1 - resolution: "cli-spinners@npm:2.6.1" - checksum: 423409baaa7a58e5104b46ca1745fbfc5888bbd0b0c5a626e052ae1387060839c8efd512fb127e25769b3dc9562db1dc1b5add6e0b93b7ef64f477feb6416a45 + version: 2.9.2 + resolution: "cli-spinners@npm:2.9.2" + checksum: 1bd588289b28432e4676cb5d40505cfe3e53f2e4e10fbe05c8a710a154d6fe0ce7836844b00d6858f740f2ffe67cdc36e0fce9c7b6a8430e80e6388d5aa4956c languageName: node linkType: hard @@ -2502,9 +2586,9 @@ __metadata: linkType: hard "cmd-shim@npm:^6.0.0": - version: 6.0.1 - resolution: "cmd-shim@npm:6.0.1" - checksum: 359006b3a5bb4a0ff161a44ccc18fbba947db748ef0dd12273e476792e316a5edb0945d74bfa1e91cd88ce0511025fde87901eda092c479d83cfcd6734562683 + version: 6.0.2 + resolution: "cmd-shim@npm:6.0.2" + checksum: df3a01fc4d72a49b450985b991205e65774b28e7f74a2e4d2a11fd0df8732e3828f9e7b644050def3cd0be026cbd3ee46a1f50ce5f57d0b3fb5afe335bdfacde languageName: node linkType: hard @@ -2516,9 +2600,9 @@ __metadata: linkType: hard "collect-v8-coverage@npm:^1.0.0": - version: 1.0.1 - resolution: "collect-v8-coverage@npm:1.0.1" - checksum: 4efe0a1fccd517b65478a2364b33dadd0a43fc92a56f59aaece9b6186fe5177b2de471253587de7c91516f07c7268c2f6770b6cbcffc0e0ece353b766ec87e55 + version: 1.0.2 + resolution: "collect-v8-coverage@npm:1.0.2" + checksum: c10f41c39ab84629d16f9f6137bc8a63d332244383fc368caf2d2052b5e04c20cd1fd70f66fcf4e2422b84c8226598b776d39d5f2d2a51867cc1ed5d1982b4da languageName: node linkType: hard @@ -2571,9 +2655,9 @@ __metadata: linkType: hard "commander@npm:^9.0.0": - version: 9.3.0 - resolution: "commander@npm:9.3.0" - checksum: d421ce66fee25792a1470c69aa8d1b86434bf873a96483aa92c8267f81a6f20c6f7c426f5e82f88ac50a8ec4855d3f2787aebcdef8aa559e1080a2337a95a217 + version: 9.5.0 + resolution: "commander@npm:9.5.0" + checksum: c7a3e27aa59e913b54a1bafd366b88650bc41d6651f0cbe258d4ff09d43d6a7394232a4dadd0bf518b3e696fdf595db1028a0d82c785b88bd61f8a440cecfade languageName: node linkType: hard @@ -2607,12 +2691,10 @@ __metadata: languageName: node linkType: hard -"convert-source-map@npm:^1.4.0, convert-source-map@npm:^1.6.0": - version: 1.7.0 - resolution: "convert-source-map@npm:1.7.0" - dependencies: - safe-buffer: ~5.1.1 - checksum: bcd2e3ea7d37f96b85a6e362c8a89402ccc73757256e3ee53aa2c22fe915adb854c66b1f81111be815a3a6a6ce3c58e8001858e883c9d5b4fe08a853fa865967 +"convert-source-map@npm:^1.4.0": + version: 1.9.0 + resolution: "convert-source-map@npm:1.9.0" + checksum: dc55a1f28ddd0e9485ef13565f8f756b342f9a46c4ae18b843fe3c30c675d058d6a4823eff86d472f187b176f0adf51ea7b69ea38be34be4a63cbbf91b0593c8 languageName: node linkType: hard @@ -2623,7 +2705,7 @@ __metadata: languageName: node linkType: hard -"cosmiconfig@npm:^7.0.0": +"cosmiconfig@npm:^7.1.0": version: 7.1.0 resolution: "cosmiconfig@npm:7.1.0" dependencies: @@ -2663,7 +2745,7 @@ __metadata: languageName: node linkType: hard -"cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3": +"cross-spawn@npm:^7.0.0, cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3": version: 7.0.3 resolution: "cross-spawn@npm:7.0.3" dependencies: @@ -2674,7 +2756,7 @@ __metadata: languageName: node linkType: hard -"debug@npm:4, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.2.0, debug@npm:^4.3.2, debug@npm:^4.3.3, debug@npm:^4.3.4": +"debug@npm:4, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.3, debug@npm:^4.3.4": version: 4.3.4 resolution: "debug@npm:4.3.4" dependencies: @@ -2686,9 +2768,18 @@ __metadata: languageName: node linkType: hard -"debug@npm:^3.2.7": - version: 3.2.7 - resolution: "debug@npm:3.2.7" +"debug@npm:^2.6.9": + version: 2.6.9 + resolution: "debug@npm:2.6.9" + dependencies: + ms: 2.0.0 + checksum: d2f51589ca66df60bf36e1fa6e4386b318c3f1e06772280eea5b1ae9fd3d05e9c2b7fd8a7d862457d00853c75b00451aa2d7459b924629ee385287a650f58fe6 + languageName: node + linkType: hard + +"debug@npm:^3.2.7": + version: 3.2.7 + resolution: "debug@npm:3.2.7" dependencies: ms: ^2.1.1 checksum: b3d8c5940799914d30314b7c3304a43305fd0715581a919dacb8b3176d024a782062368405b47491516d2091d6462d4d11f2f4974a405048094f8bfebfa3071c @@ -2712,16 +2803,16 @@ __metadata: linkType: hard "deep-is@npm:^0.1.3": - version: 0.1.3 - resolution: "deep-is@npm:0.1.3" - checksum: c15b04c3848a89880c94e25b077c19b47d9a30dd99048e70e5f95d943e7b246bee1da0c1376b56b01bc045be2cae7d9b1c856e68e47e9805634327de7c6cb6d5 + version: 0.1.4 + resolution: "deep-is@npm:0.1.4" + checksum: edb65dd0d7d1b9c40b2f50219aef30e116cedd6fc79290e740972c132c09106d2e80aa0bc8826673dd5a00222d4179c84b36a790eef63a4c4bca75a37ef90804 languageName: node linkType: hard "deepmerge@npm:^4.2.2": - version: 4.2.2 - resolution: "deepmerge@npm:4.2.2" - checksum: a8c43a1ed8d6d1ed2b5bf569fa4c8eb9f0924034baf75d5d406e47e157a451075c4db353efea7b6bcc56ec48116a8ce72fccf867b6e078e7c561904b5897530b + version: 4.3.1 + resolution: "deepmerge@npm:4.3.1" + checksum: 2024c6a980a1b7128084170c4cf56b0fd58a63f2da1660dcfe977415f27b17dbe5888668b59d0b063753f3220719d5e400b7f113609489c90160bb9a5518d052 languageName: node linkType: hard @@ -2732,13 +2823,25 @@ __metadata: languageName: node linkType: hard -"define-properties@npm:^1.1.3, define-properties@npm:^1.1.4": +"define-data-property@npm:^1.0.1, define-data-property@npm:^1.1.2": version: 1.1.4 - resolution: "define-properties@npm:1.1.4" + resolution: "define-data-property@npm:1.1.4" dependencies: + es-define-property: ^1.0.0 + es-errors: ^1.3.0 + gopd: ^1.0.1 + checksum: 8068ee6cab694d409ac25936eb861eea704b7763f7f342adbdfe337fc27c78d7ae0eff2364b2917b58c508d723c7a074326d068eef2e45c4edcd85cf94d0313b + languageName: node + linkType: hard + +"define-properties@npm:^1.1.3, define-properties@npm:^1.2.0, define-properties@npm:^1.2.1": + version: 1.2.1 + resolution: "define-properties@npm:1.2.1" + dependencies: + define-data-property: ^1.0.1 has-property-descriptors: ^1.0.0 object-keys: ^1.1.1 - checksum: ce0aef3f9eb193562b5cfb79b2d2c86b6a109dfc9fdcb5f45d680631a1a908c06824ddcdb72b7573b54e26ace07f0a23420aaba0d5c627b34d2c1de8ef527e2b + checksum: b4ccd00597dd46cb2d4a379398f5b19fca84a16f3374e2249201992f36b30f6835949a9429669ee6b41b6e837205a163eadd745e472069e70dfc10f03e5fcc12 languageName: node linkType: hard @@ -2750,42 +2853,35 @@ __metadata: linkType: hard "depcheck@npm:^1.4.3": - version: 1.4.3 - resolution: "depcheck@npm:1.4.3" + version: 1.4.7 + resolution: "depcheck@npm:1.4.7" dependencies: - "@babel/parser": 7.16.4 - "@babel/traverse": ^7.12.5 - "@vue/compiler-sfc": ^3.0.5 - camelcase: ^6.2.0 - cosmiconfig: ^7.0.0 - debug: ^4.2.0 - deps-regex: ^0.1.4 - ignore: ^5.1.8 - is-core-module: ^2.4.0 - js-yaml: ^3.14.0 - json5: ^2.1.3 - lodash: ^4.17.20 - minimatch: ^3.0.4 + "@babel/parser": ^7.23.0 + "@babel/traverse": ^7.23.2 + "@vue/compiler-sfc": ^3.3.4 + callsite: ^1.0.0 + camelcase: ^6.3.0 + cosmiconfig: ^7.1.0 + debug: ^4.3.4 + deps-regex: ^0.2.0 + findup-sync: ^5.0.0 + ignore: ^5.2.4 + is-core-module: ^2.12.0 + js-yaml: ^3.14.1 + json5: ^2.2.3 + lodash: ^4.17.21 + minimatch: ^7.4.6 multimatch: ^5.0.0 please-upgrade-node: ^3.2.0 - query-ast: ^1.0.3 - readdirp: ^3.5.0 + readdirp: ^3.6.0 require-package-name: ^2.0.1 - resolve: ^1.18.1 - sass: ^1.29.0 - scss-parser: ^1.0.4 - semver: ^7.3.2 - yargs: ^16.1.0 + resolve: ^1.22.3 + resolve-from: ^5.0.0 + semver: ^7.5.4 + yargs: ^16.2.0 bin: depcheck: bin/depcheck.js - checksum: 122631cab325707a55e26a8b530eb72c893bd481194100b1853ac2bc944b61320eb0e1ea0ff7e71724009cdfbd4057381d7bf868b9c5aad0c4207ac0bdca5e48 - languageName: node - linkType: hard - -"depd@npm:^1.1.2": - version: 1.1.2 - resolution: "depd@npm:1.1.2" - checksum: 6b406620d269619852885ce15965272b829df6f409724415e0002c8632ab6a8c0a08ec1f0bd2add05dc7bd7507606f7e2cc034fa24224ab829580040b835ecd9 + checksum: e648788554ba88bd0dc37ce398f7756f143a78487b4ee3ac01756ad7ed97034476e0709497e9f8e474117bd4258db669a53fd46fafb703f151c9a0394fc8a55a languageName: node linkType: hard @@ -2796,27 +2892,41 @@ __metadata: languageName: node linkType: hard -"deps-regex@npm:^0.1.4": - version: 0.1.4 - resolution: "deps-regex@npm:0.1.4" - checksum: 70c5e7fa887513bb8c55165c53e4ae511786ed7bf3d98d4dbef97a8879a808a5bc549034b1dfcdc7565c153e2fc2f7d8ee766eeb88156e78b2447dd75c1516e9 +"deps-regex@npm:^0.2.0": + version: 0.2.0 + resolution: "deps-regex@npm:0.2.0" + checksum: a782304d481824c21c5aaff3d7fbd2eba9b112688cbadb36537304dde61e106595d4858bd097fad1df8b96fbff3df571dc9bfd73b749cbd24fd088cce3a999d8 languageName: node linkType: hard -"detect-indent@npm:^6.0.0": - version: 6.1.0 - resolution: "detect-indent@npm:6.1.0" - checksum: ab953a73c72dbd4e8fc68e4ed4bfd92c97eb6c43734af3900add963fd3a9316f3bc0578b018b24198d4c31a358571eff5f0656e81a1f3b9ad5c547d58b2d093d +"detect-file@npm:^1.0.0": + version: 1.0.0 + resolution: "detect-file@npm:1.0.0" + checksum: 1861e4146128622e847abe0e1ed80fef01e78532665858a792267adf89032b7a9c698436137707fcc6f02956c2a6a0052d6a0cef5be3d4b76b1ff0da88e2158a + languageName: node + linkType: hard + +"detect-indent@npm:^7.0.1": + version: 7.0.1 + resolution: "detect-indent@npm:7.0.1" + checksum: cbf3f0b1c3c881934ca94428e1179b26ab2a587e0d719031d37a67fb506d49d067de54ff057cb1e772e75975fed5155c01cd4518306fee60988b1486e3fc7768 languageName: node linkType: hard -"detect-newline@npm:3.1.0, detect-newline@npm:^3.0.0": +"detect-newline@npm:^3.0.0": version: 3.1.0 resolution: "detect-newline@npm:3.1.0" checksum: ae6cd429c41ad01b164c59ea36f264a2c479598e61cba7c99da24175a7ab80ddf066420f2bec9a1c57a6bead411b4655ff15ad7d281c000a89791f48cbe939e7 languageName: node linkType: hard +"detect-newline@npm:^4.0.0": + version: 4.0.1 + resolution: "detect-newline@npm:4.0.1" + checksum: 0409ecdfb93419591ccff24fccfe2ddddad29b66637d1ed898872125b25af05014fdeedc9306339577060f69f59fe6e9830cdd80948597f136dfbffefa60599c + languageName: node + linkType: hard + "diff-sequences@npm:^28.1.1": version: 28.1.1 resolution: "diff-sequences@npm:28.1.1" @@ -2832,9 +2942,9 @@ __metadata: linkType: hard "diff@npm:^5.0.0": - version: 5.0.0 - resolution: "diff@npm:5.0.0" - checksum: f19fe29284b633afdb2725c2a8bb7d25761ea54d321d8e67987ac851c5294be4afeab532bd84531e02583a3fe7f4014aa314a3eda84f5590e7a9e6b371ef3b46 + version: 5.2.0 + resolution: "diff@npm:5.2.0" + checksum: 12b63ca9c36c72bafa3effa77121f0581b4015df18bc16bac1f8e263597735649f1a173c26f7eba17fb4162b073fee61788abe49610e6c70a2641fe1895443fd languageName: node linkType: hard @@ -2865,10 +2975,17 @@ __metadata: languageName: node linkType: hard -"electron-to-chromium@npm:^1.4.535": - version: 1.4.559 - resolution: "electron-to-chromium@npm:1.4.559" - checksum: 020388642361ee08744256d3e56842d28611b0ba5967897cba574e08abb6ad851c03626393f326cbb85e65318ee85afd240a5dbf1e72f3fb04f3050243146228 +"eastasianwidth@npm:^0.2.0": + version: 0.2.0 + resolution: "eastasianwidth@npm:0.2.0" + checksum: 7d00d7cd8e49b9afa762a813faac332dee781932d6f2c848dc348939c4253f1d4564341b7af1d041853bc3f32c2ef141b58e0a4d9862c17a7f08f68df1e0f1ed + languageName: node + linkType: hard + +"electron-to-chromium@npm:^1.4.668": + version: 1.4.670 + resolution: "electron-to-chromium@npm:1.4.670" + checksum: 862fb1ebb0ff58816cf2f70c973c1915d5c4b1f88c43dad040130e0fdf162b9477f9ff14d70cac8aa668e45c093dd5b0b3815728ec79a8118aa5e62d8c48ee6b languageName: node linkType: hard @@ -2886,6 +3003,13 @@ __metadata: languageName: node linkType: hard +"emoji-regex@npm:^9.2.2": + version: 9.2.2 + resolution: "emoji-regex@npm:9.2.2" + checksum: 8487182da74aabd810ac6d6f1994111dfc0e331b01271ae01ec1eb0ad7b5ecc2bbbbd2f053c05cb55a1ac30449527d819bbfbf0e3de1023db308cbcb47f86601 + languageName: node + linkType: hard + "encoding@npm:^0.1.13": version: 0.1.13 resolution: "encoding@npm:0.1.13" @@ -2904,6 +3028,13 @@ __metadata: languageName: node linkType: hard +"entities@npm:^4.5.0": + version: 4.5.0 + resolution: "entities@npm:4.5.0" + checksum: 853f8ebd5b425d350bffa97dd6958143179a5938352ccae092c62d1267c4e392a039be1bae7d51b6e4ffad25f51f9617531fedf5237f15df302ccfb452cbf2d7 + languageName: node + linkType: hard + "env-paths@npm:^2.2.0": version: 2.2.1 resolution: "env-paths@npm:2.2.1" @@ -2927,65 +3058,88 @@ __metadata: languageName: node linkType: hard -"es-abstract@npm:^1.19.0, es-abstract@npm:^1.20.4": - version: 1.21.2 - resolution: "es-abstract@npm:1.21.2" +"es-abstract@npm:^1.22.1, es-abstract@npm:^1.22.3": + version: 1.22.4 + resolution: "es-abstract@npm:1.22.4" dependencies: - array-buffer-byte-length: ^1.0.0 - available-typed-arrays: ^1.0.5 - call-bind: ^1.0.2 - es-set-tostringtag: ^2.0.1 + array-buffer-byte-length: ^1.0.1 + arraybuffer.prototype.slice: ^1.0.3 + available-typed-arrays: ^1.0.6 + call-bind: ^1.0.7 + es-define-property: ^1.0.0 + es-errors: ^1.3.0 + es-set-tostringtag: ^2.0.2 es-to-primitive: ^1.2.1 - function.prototype.name: ^1.1.5 - get-intrinsic: ^1.2.0 - get-symbol-description: ^1.0.0 + function.prototype.name: ^1.1.6 + get-intrinsic: ^1.2.4 + get-symbol-description: ^1.0.2 globalthis: ^1.0.3 gopd: ^1.0.1 - has: ^1.0.3 - has-property-descriptors: ^1.0.0 + has-property-descriptors: ^1.0.2 has-proto: ^1.0.1 has-symbols: ^1.0.3 - internal-slot: ^1.0.5 - is-array-buffer: ^3.0.2 + hasown: ^2.0.1 + internal-slot: ^1.0.7 + is-array-buffer: ^3.0.4 is-callable: ^1.2.7 is-negative-zero: ^2.0.2 is-regex: ^1.1.4 is-shared-array-buffer: ^1.0.2 is-string: ^1.0.7 - is-typed-array: ^1.1.10 + is-typed-array: ^1.1.13 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.4.3 - safe-regex-test: ^1.0.0 - string.prototype.trim: ^1.2.7 - string.prototype.trimend: ^1.0.6 - string.prototype.trimstart: ^1.0.6 + object.assign: ^4.1.5 + regexp.prototype.flags: ^1.5.2 + safe-array-concat: ^1.1.0 + safe-regex-test: ^1.0.3 + string.prototype.trim: ^1.2.8 + string.prototype.trimend: ^1.0.7 + string.prototype.trimstart: ^1.0.7 + typed-array-buffer: ^1.0.1 + 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.9 - checksum: 037f55ee5e1cdf2e5edbab5524095a4f97144d95b94ea29e3611b77d852fd8c8a40e7ae7101fa6a759a9b9b1405f188c3c70928f2d3cd88d543a07fc0d5ad41a + which-typed-array: ^1.1.14 + checksum: c254102395bd59315b713d72a1ce07980c0f71c9edcac6b036868740789ab5344020e940d6321fc1b31aecf6b27941fdd9655b602696e08f170986dd4d75ddc6 languageName: node linkType: hard -"es-set-tostringtag@npm:^2.0.1": - version: 2.0.1 - resolution: "es-set-tostringtag@npm:2.0.1" +"es-define-property@npm:^1.0.0": + version: 1.0.0 + resolution: "es-define-property@npm:1.0.0" dependencies: - get-intrinsic: ^1.1.3 - has: ^1.0.3 + get-intrinsic: ^1.2.4 + checksum: f66ece0a887b6dca71848fa71f70461357c0e4e7249696f81bad0a1f347eed7b31262af4a29f5d726dc026426f085483b6b90301855e647aa8e21936f07293c6 + languageName: node + linkType: hard + +"es-errors@npm:^1.2.1, es-errors@npm:^1.3.0": + version: 1.3.0 + resolution: "es-errors@npm:1.3.0" + checksum: ec1414527a0ccacd7f15f4a3bc66e215f04f595ba23ca75cdae0927af099b5ec865f9f4d33e9d7e86f512f252876ac77d4281a7871531a50678132429b1271b5 + languageName: node + linkType: hard + +"es-set-tostringtag@npm:^2.0.2": + version: 2.0.2 + resolution: "es-set-tostringtag@npm:2.0.2" + dependencies: + get-intrinsic: ^1.2.2 has-tostringtag: ^1.0.0 - checksum: ec416a12948cefb4b2a5932e62093a7cf36ddc3efd58d6c58ca7ae7064475ace556434b869b0bbeb0c365f1032a8ccd577211101234b69837ad83ad204fff884 + hasown: ^2.0.0 + checksum: afcec3a4c9890ae14d7ec606204858441c801ff84f312538e1d1ccf1e5493c8b17bd672235df785f803756472cb4f2d49b87bde5237aef33411e74c22f194e07 languageName: node linkType: hard "es-shim-unscopables@npm:^1.0.0": - version: 1.0.0 - resolution: "es-shim-unscopables@npm:1.0.0" + version: 1.0.2 + resolution: "es-shim-unscopables@npm:1.0.2" dependencies: - has: ^1.0.3 - checksum: 83e95cadbb6ee44d3644dfad60dcad7929edbc42c85e66c3e99aefd68a3a5c5665f2686885cddb47dfeabfd77bd5ea5a7060f2092a955a729bbd8834f0d86fa1 + hasown: ^2.0.0 + checksum: 432bd527c62065da09ed1d37a3f8e623c423683285e6188108286f4a1e8e164a5bcbfbc0051557c7d14633cd2a41ce24c7048e6bbb66a985413fd32f1be72626 languageName: node linkType: hard @@ -3001,9 +3155,9 @@ __metadata: linkType: hard "escalade@npm:^3.1.1": - version: 3.1.1 - resolution: "escalade@npm:3.1.1" - checksum: a3e2a99f07acb74b3ad4989c48ca0c3140f69f923e56d0cba0526240ee470b91010f9d39001f2a4a313841d237ede70a729e92125191ba5d21e74b106800b133 + version: 3.1.2 + resolution: "escalade@npm:3.1.2" + checksum: 1ec0977aa2772075493002bdbd549d595ff6e9393b1cb0d7d6fcaf78c750da0c158f180938365486f75cb69fba20294351caddfce1b46552a7b6c3cde52eaa02 languageName: node linkType: hard @@ -3036,28 +3190,28 @@ __metadata: linkType: hard "eslint-config-prettier@npm:^8.8.0": - version: 8.8.0 - resolution: "eslint-config-prettier@npm:8.8.0" + version: 8.10.0 + resolution: "eslint-config-prettier@npm:8.10.0" peerDependencies: eslint: ">=7.0.0" bin: eslint-config-prettier: bin/cli.js - checksum: 1e94c3882c4d5e41e1dcfa2c368dbccbfe3134f6ac7d40101644d3bfbe3eb2f2ffac757f3145910b5eacf20c0e85e02b91293d3126d770cbf3dc390b3564681c + checksum: 153266badd477e49b0759816246b2132f1dbdb6c7f313ca60a9af5822fd1071c2bc5684a3720d78b725452bbac04bb130878b2513aea5e72b1b792de5a69fec8 languageName: node linkType: hard -"eslint-import-resolver-node@npm:^0.3.7": - version: 0.3.7 - resolution: "eslint-import-resolver-node@npm:0.3.7" +"eslint-import-resolver-node@npm:^0.3.6": + version: 0.3.9 + resolution: "eslint-import-resolver-node@npm:0.3.9" dependencies: debug: ^3.2.7 - is-core-module: ^2.11.0 - resolve: ^1.22.1 - checksum: 3379aacf1d2c6952c1b9666c6fa5982c3023df695430b0d391c0029f6403a7775414873d90f397e98ba6245372b6c8960e16e74d9e4a3b0c0a4582f3bdbe3d6e + is-core-module: ^2.13.0 + resolve: ^1.22.4 + checksum: 439b91271236b452d478d0522a44482e8c8540bf9df9bd744062ebb89ab45727a3acd03366a6ba2bdbcde8f9f718bab7fe8db64688aca75acf37e04eafd25e22 languageName: node linkType: hard -"eslint-module-utils@npm:^2.7.4": +"eslint-module-utils@npm:^2.7.3": version: 2.8.0 resolution: "eslint-module-utils@npm:2.8.0" dependencies: @@ -3081,38 +3235,36 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-import@npm:^2.27.5": - version: 2.27.5 - resolution: "eslint-plugin-import@npm:2.27.5" +"eslint-plugin-import@npm:2.26.0": + version: 2.26.0 + resolution: "eslint-plugin-import@npm:2.26.0" dependencies: - array-includes: ^3.1.6 - array.prototype.flat: ^1.3.1 - array.prototype.flatmap: ^1.3.1 - debug: ^3.2.7 + array-includes: ^3.1.4 + array.prototype.flat: ^1.2.5 + debug: ^2.6.9 doctrine: ^2.1.0 - eslint-import-resolver-node: ^0.3.7 - eslint-module-utils: ^2.7.4 + eslint-import-resolver-node: ^0.3.6 + eslint-module-utils: ^2.7.3 has: ^1.0.3 - is-core-module: ^2.11.0 + is-core-module: ^2.8.1 is-glob: ^4.0.3 minimatch: ^3.1.2 - object.values: ^1.1.6 - resolve: ^1.22.1 - semver: ^6.3.0 + object.values: ^1.1.5 + resolve: ^1.22.0 tsconfig-paths: ^3.14.1 peerDependencies: eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 - checksum: f500571a380167e25d72a4d925ef9a7aae8899eada57653e5f3051ec3d3c16d08271fcefe41a30a9a2f4fefc232f066253673ee4ea77b30dba65ae173dade85d + checksum: 0bf77ad80339554481eafa2b1967449e1f816b94c7a6f9614ce33fb4083c4e6c050f10d241dd50b4975d47922880a34de1e42ea9d8e6fd663ebb768baa67e655 languageName: node linkType: hard "eslint-plugin-jest@npm:^27.2.2": - version: 27.2.2 - resolution: "eslint-plugin-jest@npm:27.2.2" + version: 27.8.0 + resolution: "eslint-plugin-jest@npm:27.8.0" dependencies: "@typescript-eslint/utils": ^5.10.0 peerDependencies: - "@typescript-eslint/eslint-plugin": ^5.0.0 + "@typescript-eslint/eslint-plugin": ^5.0.0 || ^6.0.0 || ^7.0.0 eslint: ^7.0.0 || ^8.0.0 jest: "*" peerDependenciesMeta: @@ -3120,7 +3272,7 @@ __metadata: optional: true jest: optional: true - checksum: 98b63252d985f5dedf36ce9587dd4a0d24daf71ca8a997258343402c0d33ddd5070502378dafd9ac7fc0ef2e0d557b5c77f18e09ad73c71a52de8061db88293f + checksum: 1fcdcf332b6d95c2433dcdf908b46e494a671bb101c675f99525c7a664853e60c247d63f302946d5a4f74f497a73c41673bc365a841f81bb4651b527379487e2 languageName: node linkType: hard @@ -3193,13 +3345,13 @@ __metadata: languageName: node linkType: hard -"eslint-scope@npm:^7.2.0": - version: 7.2.0 - resolution: "eslint-scope@npm:7.2.0" +"eslint-scope@npm:^7.2.2": + version: 7.2.2 + resolution: "eslint-scope@npm:7.2.2" dependencies: esrecurse: ^4.3.0 estraverse: ^5.2.0 - checksum: 64591a2d8b244ade9c690b59ef238a11d5c721a98bcee9e9f445454f442d03d3e04eda88e95a4daec558220a99fa384309d9faae3d459bd40e7a81b4063980ae + checksum: ec97dbf5fb04b94e8f4c5a91a7f0a6dd3c55e46bfc7bbcd0e3138c3a76977570e02ed89a1810c778dcd72072ff0e9621ba1379b4babe53921d71e2e4486fda3e languageName: node linkType: hard @@ -3231,39 +3383,40 @@ __metadata: linkType: hard "eslint-visitor-keys@npm:^2.0.0": - version: 2.0.0 - resolution: "eslint-visitor-keys@npm:2.0.0" - checksum: e07e9863fb8c9b1453f5ad1a26f3cc8dd6b349b26605cc06bc0c61215ac5b6f13a4d08c875218e6c0f8ac8fc06ca6e090df769e32c569f0fd2e6a848b8a76c75 + version: 2.1.0 + resolution: "eslint-visitor-keys@npm:2.1.0" + checksum: e3081d7dd2611a35f0388bbdc2f5da60b3a3c5b8b6e928daffff7391146b434d691577aa95064c8b7faad0b8a680266bcda0a42439c18c717b80e6718d7e267d languageName: node linkType: hard -"eslint-visitor-keys@npm:^3.3.0, eslint-visitor-keys@npm:^3.4.1": - version: 3.4.1 - resolution: "eslint-visitor-keys@npm:3.4.1" - checksum: f05121d868202736b97de7d750847a328fcfa8593b031c95ea89425333db59676ac087fa905eba438d0a3c5769632f828187e0c1a0d271832a2153c1d3661c2c +"eslint-visitor-keys@npm:^3.3.0, eslint-visitor-keys@npm:^3.4.1, eslint-visitor-keys@npm:^3.4.3": + version: 3.4.3 + resolution: "eslint-visitor-keys@npm:3.4.3" + checksum: 36e9ef87fca698b6fd7ca5ca35d7b2b6eeaaf106572e2f7fd31c12d3bfdaccdb587bba6d3621067e5aece31c8c3a348b93922ab8f7b2cbc6aaab5e1d89040c60 languageName: node linkType: hard "eslint@npm:^8.44.0": - version: 8.44.0 - resolution: "eslint@npm:8.44.0" + version: 8.56.0 + resolution: "eslint@npm:8.56.0" dependencies: "@eslint-community/eslint-utils": ^4.2.0 - "@eslint-community/regexpp": ^4.4.0 - "@eslint/eslintrc": ^2.1.0 - "@eslint/js": 8.44.0 - "@humanwhocodes/config-array": ^0.11.10 + "@eslint-community/regexpp": ^4.6.1 + "@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 - ajv: ^6.10.0 + "@ungap/structured-clone": ^1.2.0 + ajv: ^6.12.4 chalk: ^4.0.0 cross-spawn: ^7.0.2 debug: ^4.3.2 doctrine: ^3.0.0 escape-string-regexp: ^4.0.0 - eslint-scope: ^7.2.0 - eslint-visitor-keys: ^3.4.1 - espree: ^9.6.0 + eslint-scope: ^7.2.2 + eslint-visitor-keys: ^3.4.3 + espree: ^9.6.1 esquery: ^1.4.2 esutils: ^2.0.2 fast-deep-equal: ^3.1.3 @@ -3273,7 +3426,6 @@ __metadata: globals: ^13.19.0 graphemer: ^1.4.0 ignore: ^5.2.0 - import-fresh: ^3.0.0 imurmurhash: ^0.1.4 is-glob: ^4.0.0 is-path-inside: ^3.0.3 @@ -3285,22 +3437,21 @@ __metadata: natural-compare: ^1.4.0 optionator: ^0.9.3 strip-ansi: ^6.0.1 - strip-json-comments: ^3.1.0 text-table: ^0.2.0 bin: eslint: bin/eslint.js - checksum: d06309ce4aafb9d27d558c8e5e5aa5cba3bbec3ce8ceccbc7d4b7a35f2b67fd40189159155553270e2e6febeb69bd8a3b60d6241c8f5ddc2ef1702ccbd328501 + checksum: 883436d1e809b4a25d9eb03d42f584b84c408dbac28b0019f6ea07b5177940bf3cca86208f749a6a1e0039b63e085ee47aca1236c30721e91f0deef5cc5a5136 languageName: node linkType: hard -"espree@npm:^9.6.0": - version: 9.6.0 - resolution: "espree@npm:9.6.0" +"espree@npm:^9.6.0, espree@npm:^9.6.1": + version: 9.6.1 + resolution: "espree@npm:9.6.1" dependencies: acorn: ^8.9.0 acorn-jsx: ^5.3.2 eslint-visitor-keys: ^3.4.1 - checksum: 1287979510efb052a6a97c73067ea5d0a40701b29adde87bbe2d3eb1667e39ca55e8129e20e2517fed3da570150e7ef470585228459a8f3e3755f45007a1c662 + checksum: eb8c149c7a2a77b3f33a5af80c10875c3abd65450f60b8af6db1bfcfa8f101e21c1e56a561c6dc13b848e18148d43469e7cd208506238554fb5395a9ea5a1ab9 languageName: node linkType: hard @@ -3340,9 +3491,9 @@ __metadata: linkType: hard "estraverse@npm:^5.1.0, estraverse@npm:^5.2.0": - version: 5.2.0 - resolution: "estraverse@npm:5.2.0" - checksum: ec11b70d946bf5d7f76f91db38ef6f08109ac1b36cda293a26e678e58df4719f57f67b9ec87042afdd1f0267cee91865be3aa48d2161765a93defab5431be7b8 + version: 5.3.0 + resolution: "estraverse@npm:5.3.0" + checksum: 072780882dc8416ad144f8fe199628d2b3e7bbc9989d9ed43795d2c90309a2047e6bc5979d7e2322a341163d22cfad9e21f4110597fe487519697389497e4e2b languageName: node linkType: hard @@ -3361,14 +3512,14 @@ __metadata: linkType: hard "ethereum-cryptography@npm:^2.0.0": - version: 2.1.2 - resolution: "ethereum-cryptography@npm:2.1.2" + version: 2.1.3 + resolution: "ethereum-cryptography@npm:2.1.3" dependencies: - "@noble/curves": 1.1.0 - "@noble/hashes": 1.3.1 - "@scure/bip32": 1.3.1 - "@scure/bip39": 1.2.1 - checksum: 2e8f7b8cc90232ae838ab6a8167708e8362621404d26e79b5d9e762c7b53d699f7520aff358d9254de658fcd54d2d0af168ff909943259ed27dc4cef2736410c + "@noble/curves": 1.3.0 + "@noble/hashes": 1.3.3 + "@scure/bip32": 1.3.3 + "@scure/bip39": 1.2.2 + checksum: 7f9c14f868a588641179cace3eb86c332c4743290865db699870710253cabc4dc74bd4bce5e7bc6db667482e032e94d6f79521219eb6be5dc422059d279a27b7 languageName: node linkType: hard @@ -3420,6 +3571,15 @@ __metadata: languageName: node linkType: hard +"expand-tilde@npm:^2.0.0, expand-tilde@npm:^2.0.2": + version: 2.0.2 + resolution: "expand-tilde@npm:2.0.2" + dependencies: + homedir-polyfill: ^1.0.1 + checksum: 2efe6ed407d229981b1b6ceb552438fbc9e5c7d6a6751ad6ced3e0aa5cf12f0b299da695e90d6c2ac79191b5c53c613e508f7149e4573abfbb540698ddb7301a + languageName: node + linkType: hard + "expect@npm:^28.0.0, expect@npm:^28.1.3": version: 28.1.3 resolution: "expect@npm:28.1.3" @@ -3433,6 +3593,13 @@ __metadata: languageName: node linkType: hard +"exponential-backoff@npm:^3.1.1": + version: 3.1.1 + resolution: "exponential-backoff@npm:3.1.1" + checksum: 3d21519a4f8207c99f7457287291316306255a328770d320b401114ec8481986e4e467e854cb9914dd965e0a1ca810a23ccb559c642c88f4c7f55c55778a9b48 + languageName: node + linkType: hard + "ext-list@npm:^2.0.0": version: 2.2.2 resolution: "ext-list@npm:2.2.2" @@ -3460,22 +3627,22 @@ __metadata: linkType: hard "fast-diff@npm:^1.1.2": - version: 1.2.0 - resolution: "fast-diff@npm:1.2.0" - checksum: 1b5306eaa9e826564d9e5ffcd6ebd881eb5f770b3f977fcbf38f05c824e42172b53c79920e8429c54eb742ce15a0caf268b0fdd5b38f6de52234c4a8368131ae + version: 1.3.0 + resolution: "fast-diff@npm:1.3.0" + checksum: d22d371b994fdc8cce9ff510d7b8dc4da70ac327bcba20df607dd5b9cae9f908f4d1028f5fe467650f058d1e7270235ae0b8230809a262b4df587a3b3aa216c3 languageName: node linkType: hard -"fast-glob@npm:^3.0.3, fast-glob@npm:^3.2.5, fast-glob@npm:^3.2.9": - version: 3.2.12 - resolution: "fast-glob@npm:3.2.12" +"fast-glob@npm:^3.2.5, fast-glob@npm:^3.2.9, fast-glob@npm:^3.3.0": + version: 3.3.2 + resolution: "fast-glob@npm:3.3.2" dependencies: "@nodelib/fs.stat": ^2.0.2 "@nodelib/fs.walk": ^1.2.3 glob-parent: ^5.1.2 merge2: ^1.3.0 micromatch: ^4.0.4 - checksum: 0b1990f6ce831c7e28c4d505edcdaad8e27e88ab9fa65eedadb730438cfc7cde4910d6c975d6b7b8dc8a73da4773702ebcfcd6e3518e73938bb1383badfe01c2 + checksum: 900e4979f4dbc3313840078419245621259f349950411ca2fa445a2f9a1a6d98c3b5e7e0660c5ccd563aa61abe133a21765c6c0dec8e57da1ba71d8000b05ec1 languageName: node linkType: hard @@ -3494,20 +3661,20 @@ __metadata: linkType: hard "fastq@npm:^1.6.0": - version: 1.11.0 - resolution: "fastq@npm:1.11.0" + version: 1.17.1 + resolution: "fastq@npm:1.17.1" dependencies: reusify: ^1.0.4 - checksum: 9db0ceea9280c5f207da40c562a4e574913c18933cd74b880b01bf8e81a9a6e368ec71e89c9c1b9f4066d0275cc22600efd6dde87f713217acbf67076481734b + checksum: a8c5b26788d5a1763f88bae56a8ddeee579f935a831c5fe7a8268cea5b0a91fbfe705f612209e02d639b881d7b48e461a50da4a10cfaa40da5ca7cc9da098d88 languageName: node linkType: hard "fb-watchman@npm:^2.0.0": - version: 2.0.1 - resolution: "fb-watchman@npm:2.0.1" + version: 2.0.2 + resolution: "fb-watchman@npm:2.0.2" dependencies: bser: 2.1.1 - checksum: 8510230778ab3a51c27dffb1b76ef2c24fab672a42742d3c0a45c2e9d1e5f20210b1fbca33486088da4a9a3958bde96b5aec0a63aac9894b4e9df65c88b2cbd6 + checksum: b15a124cef28916fe07b400eb87cbc73ca082c142abf7ca8e8de6af43eca79ca7bd13eb4d4d48240b3bd3136eaac40d16e42d6edf87a8e5d1dd8070626860c78 languageName: node linkType: hard @@ -3587,20 +3754,33 @@ __metadata: languageName: node linkType: hard +"findup-sync@npm:^5.0.0": + version: 5.0.0 + resolution: "findup-sync@npm:5.0.0" + dependencies: + detect-file: ^1.0.0 + is-glob: ^4.0.3 + micromatch: ^4.0.4 + resolve-dir: ^1.0.1 + checksum: 576716c77a0e8330b17ae9cba27d1fda8907c8cda7bf33a47f1999e16e089bfc6df4dd62933e0760f430736183c054348c34aa45dd882d49c8c098f55b89ee1d + languageName: node + linkType: hard + "flat-cache@npm:^3.0.4": - version: 3.0.4 - resolution: "flat-cache@npm:3.0.4" + version: 3.2.0 + resolution: "flat-cache@npm:3.2.0" dependencies: - flatted: ^3.1.0 + flatted: ^3.2.9 + keyv: ^4.5.3 rimraf: ^3.0.2 - checksum: 4fdd10ecbcbf7d520f9040dd1340eb5dfe951e6f0ecf2252edeec03ee68d989ec8b9a20f4434270e71bcfd57800dc09b3344fca3966b2eb8f613072c7d9a2365 + checksum: e7e0f59801e288b54bee5cb9681e9ee21ee28ef309f886b312c9d08415b79fc0f24ac842f84356ce80f47d6a53de62197ce0e6e148dc42d5db005992e2a756ec languageName: node linkType: hard -"flatted@npm:^3.1.0": - version: 3.1.1 - resolution: "flatted@npm:3.1.1" - checksum: 508935e3366d95444131f0aaa801a4301f24ea5bcb900d12764e7335b46b910730cc1b5bcfcfb8eccb7c8db261ba0671c6a7ca30d10870ff7a7756dc7e731a7a +"flatted@npm:^3.2.9": + version: 3.2.9 + resolution: "flatted@npm:3.2.9" + checksum: f14167fbe26a9d20f6fca8d998e8f1f41df72c8e81f9f2c9d61ed2bea058248f5e1cbd05e7f88c0e5087a6a0b822a1e5e2b446e879f3cfbe0b07ba2d7f80b026 languageName: node linkType: hard @@ -3613,6 +3793,16 @@ __metadata: languageName: node linkType: hard +"foreground-child@npm:^3.1.0": + version: 3.1.1 + resolution: "foreground-child@npm:3.1.1" + dependencies: + cross-spawn: ^7.0.0 + signal-exit: ^4.0.1 + checksum: 139d270bc82dc9e6f8bc045fe2aae4001dc2472157044fdfad376d0a3457f77857fa883c1c8b21b491c6caade9a926a4bed3d3d2e8d3c9202b151a4cbbd0bcd5 + languageName: node + linkType: hard + "fs-minipass@npm:^2.0.0, fs-minipass@npm:^2.1.0": version: 2.1.0 resolution: "fs-minipass@npm:2.1.0" @@ -3622,6 +3812,15 @@ __metadata: languageName: node linkType: hard +"fs-minipass@npm:^3.0.0": + version: 3.0.3 + resolution: "fs-minipass@npm:3.0.3" + dependencies: + minipass: ^7.0.3 + checksum: 8722a41109130851d979222d3ec88aabaceeaaf8f57b2a8f744ef8bd2d1ce95453b04a61daa0078822bc5cd21e008814f06fe6586f56fef511e71b8d2394d802 + languageName: node + linkType: hard + "fs.realpath@npm:^1.0.0": version: 1.0.0 resolution: "fs.realpath@npm:1.0.0" @@ -3629,45 +3828,45 @@ __metadata: languageName: node linkType: hard -"fsevents@npm:^2.3.2, fsevents@npm:~2.3.2": - version: 2.3.2 - resolution: "fsevents@npm:2.3.2" +"fsevents@npm:^2.3.2": + version: 2.3.3 + resolution: "fsevents@npm:2.3.3" dependencies: node-gyp: latest - checksum: 97ade64e75091afee5265e6956cb72ba34db7819b4c3e94c431d4be2b19b8bb7a2d4116da417950c3425f17c8fe693d25e20212cac583ac1521ad066b77ae31f + checksum: 11e6ea6fea15e42461fc55b4b0e4a0a3c654faa567f1877dbd353f39156f69def97a69936d1746619d656c4b93de2238bf731f6085a03a50cabf287c9d024317 conditions: os=darwin languageName: node linkType: hard -"fsevents@patch:fsevents@^2.3.2#~builtin, fsevents@patch:fsevents@~2.3.2#~builtin": - version: 2.3.2 - resolution: "fsevents@patch:fsevents@npm%3A2.3.2#~builtin::version=2.3.2&hash=18f3a7" +"fsevents@patch:fsevents@^2.3.2#~builtin": + version: 2.3.3 + resolution: "fsevents@patch:fsevents@npm%3A2.3.3#~builtin::version=2.3.3&hash=18f3a7" dependencies: node-gyp: latest conditions: os=darwin languageName: node linkType: hard -"function-bind@npm:^1.1.1": - version: 1.1.1 - resolution: "function-bind@npm:1.1.1" - checksum: b32fbaebb3f8ec4969f033073b43f5c8befbb58f1a79e12f1d7490358150359ebd92f49e72ff0144f65f2c48ea2a605bff2d07965f548f6474fd8efd95bf361a +"function-bind@npm:^1.1.2": + version: 1.1.2 + resolution: "function-bind@npm:1.1.2" + checksum: 2b0ff4ce708d99715ad14a6d1f894e2a83242e4a52ccfcefaee5e40050562e5f6dafc1adbb4ce2d4ab47279a45dc736ab91ea5042d843c3c092820dfe032efb1 languageName: node linkType: hard -"function.prototype.name@npm:^1.1.5": - version: 1.1.5 - resolution: "function.prototype.name@npm:1.1.5" +"function.prototype.name@npm:^1.1.6": + version: 1.1.6 + resolution: "function.prototype.name@npm:1.1.6" dependencies: call-bind: ^1.0.2 - define-properties: ^1.1.3 - es-abstract: ^1.19.0 - functions-have-names: ^1.2.2 - checksum: acd21d733a9b649c2c442f067567743214af5fa248dbeee69d8278ce7df3329ea5abac572be9f7470b4ec1cd4d8f1040e3c5caccf98ebf2bf861a0deab735c27 + define-properties: ^1.2.0 + es-abstract: ^1.22.1 + functions-have-names: ^1.2.3 + checksum: 7a3f9bd98adab09a07f6e1f03da03d3f7c26abbdeaeee15223f6c04a9fb5674792bdf5e689dac19b97ac71de6aad2027ba3048a9b883aa1b3173eed6ab07f479 languageName: node linkType: hard -"functions-have-names@npm:^1.2.2": +"functions-have-names@npm:^1.2.3": version: 1.2.3 resolution: "functions-have-names@npm:1.2.3" checksum: c3f1f5ba20f4e962efb71344ce0a40722163e85bee2101ce25f88214e78182d2d2476aa85ef37950c579eb6cf6ee811c17b3101bb84004bb75655f3e33f3fdb5 @@ -3704,15 +3903,16 @@ __metadata: languageName: node linkType: hard -"get-intrinsic@npm:^1.0.2, get-intrinsic@npm:^1.1.1, get-intrinsic@npm:^1.1.3, get-intrinsic@npm:^1.2.0": - version: 1.2.1 - resolution: "get-intrinsic@npm:1.2.1" +"get-intrinsic@npm:^1.1.3, get-intrinsic@npm:^1.2.1, get-intrinsic@npm:^1.2.2, get-intrinsic@npm:^1.2.3, get-intrinsic@npm:^1.2.4": + version: 1.2.4 + resolution: "get-intrinsic@npm:1.2.4" dependencies: - function-bind: ^1.1.1 - has: ^1.0.3 + es-errors: ^1.3.0 + function-bind: ^1.1.2 has-proto: ^1.0.1 has-symbols: ^1.0.3 - checksum: 5b61d88552c24b0cf6fa2d1b3bc5459d7306f699de060d76442cce49a4721f52b8c560a33ab392cf5575b7810277d54ded9d4d39a1ea61855619ebc005aa7e5f + hasown: ^2.0.0 + checksum: 414e3cdf2c203d1b9d7d33111df746a4512a1aa622770b361dadddf8ed0b5aeb26c560f49ca077e24bfafb0acb55ca908d1f709216ccba33ffc548ec8a79a951 languageName: node linkType: hard @@ -3723,6 +3923,13 @@ __metadata: languageName: node linkType: hard +"get-stdin@npm:^9.0.0": + version: 9.0.0 + resolution: "get-stdin@npm:9.0.0" + checksum: 5972bc34d05932b45512c8e2d67b040f1c1ca8afb95c56cbc480985f2d761b7e37fe90dc8abd22527f062cc5639a6930ff346e9952ae4c11a2d4275869459594 + languageName: node + linkType: hard + "get-stream@npm:^3.0.0": version: 3.0.0 resolution: "get-stream@npm:3.0.0" @@ -3746,24 +3953,25 @@ __metadata: languageName: node linkType: hard -"get-symbol-description@npm:^1.0.0": - version: 1.0.0 - resolution: "get-symbol-description@npm:1.0.0" +"get-symbol-description@npm:^1.0.2": + version: 1.0.2 + resolution: "get-symbol-description@npm:1.0.2" dependencies: - call-bind: ^1.0.2 - get-intrinsic: ^1.1.1 - checksum: 9ceff8fe968f9270a37a1f73bf3f1f7bda69ca80f4f80850670e0e7b9444ff99323f7ac52f96567f8b5f5fbe7ac717a0d81d3407c7313e82810c6199446a5247 + call-bind: ^1.0.5 + es-errors: ^1.3.0 + get-intrinsic: ^1.2.4 + checksum: e1cb53bc211f9dbe9691a4f97a46837a553c4e7caadd0488dc24ac694db8a390b93edd412b48dcdd0b4bbb4c595de1709effc75fc87c0839deedc6968f5bd973 languageName: node linkType: hard -"git-hooks-list@npm:1.0.3": - version: 1.0.3 - resolution: "git-hooks-list@npm:1.0.3" - checksum: a1dd03d39c1d727ba08a35dbdbdcc6e96de8c4170c942dc95bf787ca6e34998d39fb5295a00242b58a3d265de0b69a0686d0cf583baa6b7830f268542c4576b9 +"git-hooks-list@npm:^3.0.0": + version: 3.1.0 + resolution: "git-hooks-list@npm:3.1.0" + checksum: 05cbdb29e1e14f3b6fde78c876a34383e4476b1be32e8486ad03293f01add884c1a8df8c2dce2ca5d99119c94951b2ff9fa9cbd51d834ae6477b6813cefb998f languageName: node linkType: hard -"glob-parent@npm:^5.1.2, glob-parent@npm:~5.1.2": +"glob-parent@npm:^5.1.2": version: 5.1.2 resolution: "glob-parent@npm:5.1.2" dependencies: @@ -3781,30 +3989,69 @@ __metadata: languageName: node linkType: hard +"glob@npm:^10.2.2, glob@npm:^10.3.10": + version: 10.3.10 + resolution: "glob@npm:10.3.10" + dependencies: + foreground-child: ^3.1.0 + jackspeak: ^2.3.5 + minimatch: ^9.0.1 + minipass: ^5.0.0 || ^6.0.2 || ^7.0.0 + path-scurry: ^1.10.1 + bin: + glob: dist/esm/bin.mjs + checksum: 4f2fe2511e157b5a3f525a54092169a5f92405f24d2aed3142f4411df328baca13059f4182f1db1bf933e2c69c0bd89e57ae87edd8950cba8c7ccbe84f721cf3 + languageName: node + linkType: hard + "glob@npm:^7.1.3, glob@npm:^7.1.4": - version: 7.1.6 - resolution: "glob@npm:7.1.6" + version: 7.2.3 + resolution: "glob@npm:7.2.3" dependencies: fs.realpath: ^1.0.0 inflight: ^1.0.4 inherits: 2 - minimatch: ^3.0.4 + minimatch: ^3.1.1 once: ^1.3.0 path-is-absolute: ^1.0.0 - checksum: 351d549dd90553b87c2d3f90ce11aed9e1093c74130440e7ae0592e11bbcd2ce7f0ebb8ba6bfe63aaf9b62166a7f4c80cb84490ae5d78408bb2572bf7d4ee0a6 + checksum: 29452e97b38fa704dabb1d1045350fb2467cf0277e155aa9ff7077e90ad81d1ea9d53d3ee63bd37c05b09a065e90f16aec4a65f5b8de401d1dac40bc5605d133 languageName: node linkType: hard "glob@npm:^8.0.1": - version: 8.0.3 - resolution: "glob@npm:8.0.3" + version: 8.1.0 + resolution: "glob@npm:8.1.0" dependencies: fs.realpath: ^1.0.0 inflight: ^1.0.4 inherits: 2 minimatch: ^5.0.1 once: ^1.3.0 - checksum: 50bcdea19d8e79d8de5f460b1939ffc2b3299eac28deb502093fdca22a78efebc03e66bf54f0abc3d3d07d8134d19a32850288b7440d77e072aa55f9d33b18c5 + checksum: 92fbea3221a7d12075f26f0227abac435de868dd0736a17170663783296d0dd8d3d532a5672b4488a439bf5d7fb85cdd07c11185d6cd39184f0385cbdfb86a47 + languageName: node + linkType: hard + +"global-modules@npm:^1.0.0": + version: 1.0.0 + resolution: "global-modules@npm:1.0.0" + dependencies: + global-prefix: ^1.0.1 + is-windows: ^1.0.1 + resolve-dir: ^1.0.0 + checksum: 10be68796c1e1abc1e2ba87ec4ea507f5629873b119ab0cd29c07284ef2b930f1402d10df01beccb7391dedd9cd479611dd6a24311c71be58937beaf18edf85e + languageName: node + linkType: hard + +"global-prefix@npm:^1.0.1": + version: 1.0.2 + resolution: "global-prefix@npm:1.0.2" + dependencies: + expand-tilde: ^2.0.2 + homedir-polyfill: ^1.0.1 + ini: ^1.3.4 + is-windows: ^1.0.1 + which: ^1.2.14 + checksum: 061b43470fe498271bcd514e7746e8a8535032b17ab9570517014ae27d700ff0dca749f76bbde13ba384d185be4310d8ba5712cb0e74f7d54d59390db63dd9a0 languageName: node linkType: hard @@ -3816,11 +4063,11 @@ __metadata: linkType: hard "globals@npm:^13.19.0": - version: 13.20.0 - resolution: "globals@npm:13.20.0" + version: 13.24.0 + resolution: "globals@npm:13.24.0" dependencies: type-fest: ^0.20.2 - checksum: ad1ecf914bd051325faad281d02ea2c0b1df5d01bd94d368dcc5513340eac41d14b3c61af325768e3c7f8d44576e72780ec0b6f2d366121f8eec6e03c3a3b97a + checksum: 56066ef058f6867c04ff203b8a44c15b038346a62efbc3060052a1016be9f56f4cf0b2cd45b74b22b81e521a889fc7786c73691b0549c2f3a6e825b3d394f43c languageName: node linkType: hard @@ -3833,22 +4080,6 @@ __metadata: languageName: node linkType: hard -"globby@npm:10.0.0": - version: 10.0.0 - resolution: "globby@npm:10.0.0" - dependencies: - "@types/glob": ^7.1.1 - array-union: ^2.1.0 - dir-glob: ^3.0.1 - fast-glob: ^3.0.3 - glob: ^7.1.3 - ignore: ^5.1.1 - merge2: ^1.2.3 - slash: ^3.0.0 - checksum: fbff58d2fcaedd9207901f6e3b5341ff885b6d499c3a095f7befde0fd03ec1ea634452a82f81e894e46f6a5d704da44b842ba93066f90dced52adf84d4b8d1cc - languageName: node - linkType: hard - "globby@npm:^11.1.0": version: 11.1.0 resolution: "globby@npm:11.1.0" @@ -3863,6 +4094,19 @@ __metadata: languageName: node linkType: hard +"globby@npm:^13.1.2": + version: 13.2.2 + resolution: "globby@npm:13.2.2" + dependencies: + dir-glob: ^3.0.1 + fast-glob: ^3.3.0 + ignore: ^5.2.4 + merge2: ^1.4.1 + slash: ^4.0.0 + checksum: f3d84ced58a901b4fcc29c846983108c426631fe47e94872868b65565495f7bee7b3defd68923bd480582771fd4bbe819217803a164a618ad76f1d22f666f41e + languageName: node + linkType: hard + "gopd@npm:^1.0.1": version: 1.0.1 resolution: "gopd@npm:1.0.1" @@ -3892,9 +4136,9 @@ __metadata: linkType: hard "graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.9": - version: 4.2.10 - resolution: "graceful-fs@npm:4.2.10" - checksum: 3f109d70ae123951905d85032ebeae3c2a5a7a997430df00ea30df0e3a6c60cf6689b109654d6fdacd28810a053348c4d14642da1d075049e6be1ba5216218da + version: 4.2.11 + resolution: "graceful-fs@npm:4.2.11" + checksum: ac85f94da92d8eb6b7f5a8b20ce65e43d66761c55ce85ac96df6865308390da45a8d3f0296dd3a663de65d30ba497bd46c696cc1e248c72b13d6d567138a4fc7 languageName: node linkType: hard @@ -3905,7 +4149,7 @@ __metadata: languageName: node linkType: hard -"has-bigints@npm:^1.0.2": +"has-bigints@npm:^1.0.1, has-bigints@npm:^1.0.2": version: 1.0.2 resolution: "has-bigints@npm:1.0.2" checksum: 390e31e7be7e5c6fe68b81babb73dfc35d413604d7ee5f56da101417027a4b4ce6a27e46eff97ad040c835b5d228676eae99a9b5c3bc0e23c8e81a49241ff45b @@ -3926,12 +4170,12 @@ __metadata: languageName: node linkType: hard -"has-property-descriptors@npm:^1.0.0": - version: 1.0.0 - resolution: "has-property-descriptors@npm:1.0.0" +"has-property-descriptors@npm:^1.0.0, has-property-descriptors@npm:^1.0.1, has-property-descriptors@npm:^1.0.2": + version: 1.0.2 + resolution: "has-property-descriptors@npm:1.0.2" dependencies: - get-intrinsic: ^1.1.1 - checksum: a6d3f0a266d0294d972e354782e872e2fe1b6495b321e6ef678c9b7a06a40408a6891817350c62e752adced73a94ac903c54734fee05bf65b1905ee1368194bb + es-define-property: ^1.0.0 + checksum: fcbb246ea2838058be39887935231c6d5788babed499d0e9d0cc5737494c48aba4fe17ba1449e0d0fbbb1e36175442faa37f9c427ae357d6ccb1d895fbcd3de3 languageName: node linkType: hard @@ -3942,19 +4186,19 @@ __metadata: languageName: node linkType: hard -"has-symbols@npm:^1.0.1, has-symbols@npm:^1.0.2, has-symbols@npm:^1.0.3": +"has-symbols@npm:^1.0.2, has-symbols@npm:^1.0.3": version: 1.0.3 resolution: "has-symbols@npm:1.0.3" checksum: a054c40c631c0d5741a8285010a0777ea0c068f99ed43e5d6eb12972da223f8af553a455132fdb0801bdcfa0e0f443c0c03a68d8555aa529b3144b446c3f2410 languageName: node linkType: hard -"has-tostringtag@npm:^1.0.0": - version: 1.0.0 - resolution: "has-tostringtag@npm:1.0.0" +"has-tostringtag@npm:^1.0.0, has-tostringtag@npm:^1.0.1": + version: 1.0.2 + resolution: "has-tostringtag@npm:1.0.2" dependencies: - has-symbols: ^1.0.2 - checksum: cc12eb28cb6ae22369ebaad3a8ab0799ed61270991be88f208d508076a1e99abe4198c965935ce85ea90b60c94ddda73693b0920b58e7ead048b4a391b502c1c + has-symbols: ^1.0.3 + checksum: 999d60bb753ad714356b2c6c87b7fb74f32463b8426e159397da4bde5bca7e598ab1073f4d8d4deafac297f2eb311484cd177af242776bf05f0d11565680468d languageName: node linkType: hard @@ -3966,11 +4210,27 @@ __metadata: linkType: hard "has@npm:^1.0.3": + version: 1.0.4 + resolution: "has@npm:1.0.4" + checksum: 8a11ba062e0627c9578a1d08285401e39f1d071a9692ddf793199070edb5648b21c774dd733e2a181edd635bf6862731885f476f4ccf67c998d7a5ff7cef2550 + languageName: node + linkType: hard + +"hasown@npm:^2.0.0, hasown@npm:^2.0.1": + version: 2.0.1 + resolution: "hasown@npm:2.0.1" + dependencies: + function-bind: ^1.1.2 + checksum: 9081c382a4fe8a62639a8da5c7d3322b203c319147e48783763dd741863d9f2dcaa743574fe2a1283871c445d8ba99ea45d5fff384e5ad27ca9dd7a367d79de0 + languageName: node + linkType: hard + +"homedir-polyfill@npm:^1.0.1": version: 1.0.3 - resolution: "has@npm:1.0.3" + resolution: "homedir-polyfill@npm:1.0.3" dependencies: - function-bind: ^1.1.1 - checksum: b9ad53d53be4af90ce5d1c38331e712522417d017d5ef1ebd0507e07c2fbad8686fffb8e12ddecd4c39ca9b9b47431afbb975b8abf7f3c3b82c98e9aad052792 + parse-passwd: ^1.0.0 + checksum: 18dd4db87052c6a2179d1813adea0c4bfcfa4f9996f0e226fefb29eb3d548e564350fa28ec46b0bf1fbc0a1d2d6922ceceb80093115ea45ff8842a4990139250 languageName: node linkType: hard @@ -3981,7 +4241,7 @@ __metadata: languageName: node linkType: hard -"http-cache-semantics@npm:^4.0.0, http-cache-semantics@npm:^4.1.0": +"http-cache-semantics@npm:^4.0.0, http-cache-semantics@npm:^4.1.0, http-cache-semantics@npm:^4.1.1": version: 4.1.1 resolution: "http-cache-semantics@npm:4.1.1" checksum: 83ac0bc60b17a3a36f9953e7be55e5c8f41acc61b22583060e8dedc9dd5e3607c823a88d0926f9150e571f90946835c7fe150732801010845c72cd8bbff1a236 @@ -3999,6 +4259,16 @@ __metadata: languageName: node linkType: hard +"http-proxy-agent@npm:^7.0.0": + version: 7.0.1 + resolution: "http-proxy-agent@npm:7.0.1" + dependencies: + agent-base: ^7.1.0 + debug: ^4.3.4 + checksum: e8e153dc9106c2a2a05f7a576ea2002ab4a24f2586eeab3947571962532829c0c7cf8a88e67c2cfe2fff9a81deb27e9b5d69452f4a8a1b5d7066a162763e6307 + languageName: node + linkType: hard + "http2-wrapper@npm:^1.0.0-beta.5.2": version: 1.0.3 resolution: "http2-wrapper@npm:1.0.3" @@ -4010,12 +4280,22 @@ __metadata: linkType: hard "https-proxy-agent@npm:^5.0.0": - version: 5.0.0 - resolution: "https-proxy-agent@npm:5.0.0" + version: 5.0.1 + resolution: "https-proxy-agent@npm:5.0.1" dependencies: agent-base: 6 debug: 4 - checksum: 165bfb090bd26d47693597661298006841ab733d0c7383a8cb2f17373387a94c903a3ac687090aa739de05e379ab6f868bae84ab4eac288ad85c328cd1ec9e53 + checksum: 571fccdf38184f05943e12d37d6ce38197becdd69e58d03f43637f7fa1269cf303a7d228aa27e5b27bbd3af8f09fd938e1c91dcfefff2df7ba77c20ed8dfc765 + languageName: node + linkType: hard + +"https-proxy-agent@npm:^7.0.1": + version: 7.0.3 + resolution: "https-proxy-agent@npm:7.0.3" + dependencies: + agent-base: ^7.0.2 + debug: 4 + checksum: 8aacdde7db31d57674e86e23ecb5f37d79baf54dfc674a44671cb33c1f6a302cc78b2bdf042f6ce37f7c0c61b9b556965cb34f5484880b1864171122dedbdd7d languageName: node linkType: hard @@ -4051,21 +4331,14 @@ __metadata: languageName: node linkType: hard -"ignore@npm:^5.1.1, ignore@npm:^5.1.8, ignore@npm:^5.2.0": - version: 5.2.1 - resolution: "ignore@npm:5.2.1" - checksum: 7251d00cba49fe88c4f3565fadeb4aa726ba38294a9a79ffed542edc47bafd989d4b2ccf65700c5b1b26a1e91dfc7218fb23017937c79216025d5caeec0ee9d5 - languageName: node - linkType: hard - -"immutable@npm:^4.0.0": - version: 4.1.0 - resolution: "immutable@npm:4.1.0" - checksum: b9bc1f14fb18eb382d48339c064b24a1f97ae4cf43102e0906c0a6e186a27afcd18b55ca4a0b63c98eefb58143e2b5ebc7755a5fb4da4a7ad84b7a6096ac5b13 +"ignore@npm:^5.1.1, ignore@npm:^5.2.0, ignore@npm:^5.2.4": + version: 5.3.1 + resolution: "ignore@npm:5.3.1" + checksum: 71d7bb4c1dbe020f915fd881108cbe85a0db3d636a0ea3ba911393c53946711d13a9b1143c7e70db06d571a5822c0a324a6bcde5c9904e7ca5047f01f1bf8cd3 languageName: node linkType: hard -"import-fresh@npm:^3.0.0, import-fresh@npm:^3.2.1": +"import-fresh@npm:^3.2.1": version: 3.3.0 resolution: "import-fresh@npm:3.3.0" dependencies: @@ -4076,14 +4349,14 @@ __metadata: linkType: hard "import-local@npm:^3.0.2": - version: 3.0.2 - resolution: "import-local@npm:3.0.2" + version: 3.1.0 + resolution: "import-local@npm:3.1.0" dependencies: pkg-dir: ^4.2.0 resolve-cwd: ^3.0.0 bin: import-local-fixture: fixtures/cli.js - checksum: c74d9f9484c878cda1de3434613c7ff72d5dadcf20e5482542232d7c2575b713ff88701d6675fcf09a3684cb23fb407c8b333b9cbc59438712723d058d8e976c + checksum: bfcdb63b5e3c0e245e347f3107564035b128a414c4da1172a20dc67db2504e05ede4ac2eee1252359f78b0bfd7b19ef180aec427c2fce6493ae782d73a04cddd languageName: node linkType: hard @@ -4125,41 +4398,41 @@ __metadata: languageName: node linkType: hard -"internal-slot@npm:^1.0.5": - version: 1.0.5 - resolution: "internal-slot@npm:1.0.5" - dependencies: - get-intrinsic: ^1.2.0 - has: ^1.0.3 - side-channel: ^1.0.4 - checksum: 97e84046bf9e7574d0956bd98d7162313ce7057883b6db6c5c7b5e5f05688864b0978ba07610c726d15d66544ffe4b1050107d93f8a39ebc59b15d8b429b497a +"ini@npm:^1.3.4": + version: 1.3.8 + resolution: "ini@npm:1.3.8" + checksum: dfd98b0ca3a4fc1e323e38a6c8eb8936e31a97a918d3b377649ea15bdb15d481207a0dda1021efbd86b464cae29a0d33c1d7dcaf6c5672bee17fa849bc50a1b3 languageName: node linkType: hard -"invariant@npm:2.2.4": - version: 2.2.4 - resolution: "invariant@npm:2.2.4" +"internal-slot@npm:^1.0.7": + version: 1.0.7 + resolution: "internal-slot@npm:1.0.7" dependencies: - loose-envify: ^1.0.0 - checksum: cc3182d793aad82a8d1f0af697b462939cb46066ec48bbf1707c150ad5fad6406137e91a262022c269702e01621f35ef60269f6c0d7fd178487959809acdfb14 + es-errors: ^1.3.0 + hasown: ^2.0.0 + side-channel: ^1.0.4 + checksum: cadc5eea5d7d9bc2342e93aae9f31f04c196afebb11bde97448327049f492cd7081e18623ae71388aac9cd237b692ca3a105be9c68ac39c1dec679d7409e33eb languageName: node linkType: hard -"ip@npm:^2.0.0": - version: 2.0.0 - resolution: "ip@npm:2.0.0" - checksum: cfcfac6b873b701996d71ec82a7dd27ba92450afdb421e356f44044ed688df04567344c36cbacea7d01b1c39a4c732dc012570ebe9bebfb06f27314bca625349 +"ip-address@npm:^9.0.5": + version: 9.0.5 + resolution: "ip-address@npm:9.0.5" + dependencies: + jsbn: 1.1.0 + sprintf-js: ^1.1.3 + checksum: aa15f12cfd0ef5e38349744e3654bae649a34c3b10c77a674a167e99925d1549486c5b14730eebce9fea26f6db9d5e42097b00aa4f9f612e68c79121c71652dc languageName: node linkType: hard -"is-array-buffer@npm:^3.0.1, is-array-buffer@npm:^3.0.2": - version: 3.0.2 - resolution: "is-array-buffer@npm:3.0.2" +"is-array-buffer@npm:^3.0.4": + version: 3.0.4 + resolution: "is-array-buffer@npm:3.0.4" dependencies: call-bind: ^1.0.2 - get-intrinsic: ^1.2.0 - is-typed-array: ^1.1.10 - checksum: dcac9dda66ff17df9cabdc58214172bf41082f956eab30bb0d86bc0fab1e44b690fc8e1f855cf2481245caf4e8a5a006a982a71ddccec84032ed41f9d8da8c14 + get-intrinsic: ^1.2.1 + checksum: e4e3e6ef0ff2239e75371d221f74bc3c26a03564a22efb39f6bb02609b598917ddeecef4e8c877df2a25888f247a98198959842a5e73236bc7f22cabdf6351a7 languageName: node linkType: hard @@ -4171,27 +4444,21 @@ __metadata: linkType: hard "is-bigint@npm:^1.0.1": - version: 1.0.1 - resolution: "is-bigint@npm:1.0.1" - checksum: 04aa6fde59d2b7929df865acb89c8d7f89f919cc149b8be11e3560b1aab8667e5d939cc8954097c496f7dda80fd5bb67f829ca80ab66cc68918e41e2c1b9c5d7 - languageName: node - linkType: hard - -"is-binary-path@npm:~2.1.0": - version: 2.1.0 - resolution: "is-binary-path@npm:2.1.0" + version: 1.0.4 + resolution: "is-bigint@npm:1.0.4" dependencies: - binary-extensions: ^2.0.0 - checksum: 84192eb88cff70d320426f35ecd63c3d6d495da9d805b19bc65b518984b7c0760280e57dbf119b7e9be6b161784a5a673ab2c6abe83abb5198a432232ad5b35c + has-bigints: ^1.0.1 + checksum: c56edfe09b1154f8668e53ebe8252b6f185ee852a50f9b41e8d921cb2bed425652049fbe438723f6cb48a63ca1aa051e948e7e401e093477c99c84eba244f666 languageName: node linkType: hard "is-boolean-object@npm:^1.1.0": - version: 1.1.0 - resolution: "is-boolean-object@npm:1.1.0" + version: 1.1.2 + resolution: "is-boolean-object@npm:1.1.2" dependencies: - call-bind: ^1.0.0 - checksum: 3ead0446176ee42a69f87658bf12d53c135095336d34765fa65f137f378ea125429bf777f91f6dd3407db80829d742bc4fb2fdaf8d2cf6ba82a2de2a07fbbac7 + call-bind: ^1.0.2 + has-tostringtag: ^1.0.0 + checksum: c03b23dbaacadc18940defb12c1c0e3aaece7553ef58b162a0f6bba0c2a7e1551b59f365b91e00d2dbac0522392d576ef322628cb1d036a0fe51eb466db67222 languageName: node linkType: hard @@ -4202,19 +4469,21 @@ __metadata: languageName: node linkType: hard -"is-core-module@npm:^2.11.0, is-core-module@npm:^2.12.0, is-core-module@npm:^2.4.0": - version: 2.12.1 - resolution: "is-core-module@npm:2.12.1" +"is-core-module@npm:^2.11.0, is-core-module@npm:^2.12.0, is-core-module@npm:^2.13.0, is-core-module@npm:^2.8.1": + version: 2.13.1 + resolution: "is-core-module@npm:2.13.1" dependencies: - has: ^1.0.3 - checksum: f04ea30533b5e62764e7b2e049d3157dc0abd95ef44275b32489ea2081176ac9746ffb1cdb107445cf1ff0e0dfcad522726ca27c27ece64dadf3795428b8e468 + hasown: ^2.0.0 + checksum: 256559ee8a9488af90e4bad16f5583c6d59e92f0742e9e8bb4331e758521ee86b810b93bae44f390766ffbc518a0488b18d9dab7da9a5ff997d499efc9403f7c languageName: node linkType: hard "is-date-object@npm:^1.0.1": - version: 1.0.2 - resolution: "is-date-object@npm:1.0.2" - checksum: ac859426e5df031abd9d1eeed32a41cc0de06e47227bd972b8bc716460a9404654b3dba78f41e8171ccf535c4bfa6d72a8d1d15a0873f9646698af415e92c2fb + version: 1.0.5 + resolution: "is-date-object@npm:1.0.5" + dependencies: + has-tostringtag: ^1.0.0 + checksum: baa9077cdf15eb7b58c79398604ca57379b2fc4cf9aa7a9b9e295278648f628c9b201400c01c5e0f7afae56507d741185730307cbe7cad3b9f90a77e5ee342fc languageName: node linkType: hard @@ -4239,7 +4508,7 @@ __metadata: languageName: node linkType: hard -"is-glob@npm:^4.0.0, is-glob@npm:^4.0.1, is-glob@npm:^4.0.3, is-glob@npm:~4.0.1": +"is-glob@npm:^4.0.0, is-glob@npm:^4.0.1, is-glob@npm:^4.0.3": version: 4.0.3 resolution: "is-glob@npm:4.0.3" dependencies: @@ -4263,9 +4532,11 @@ __metadata: linkType: hard "is-number-object@npm:^1.0.4": - version: 1.0.4 - resolution: "is-number-object@npm:1.0.4" - checksum: d8e4525b5c151f1830872bf217901b58b3a9f66d93fe2f71c2087418e03d7f5c19a3ad64afa0feb70dafd93f7b97e205e3520a8ff007be665e54b377f5b736a8 + version: 1.0.7 + resolution: "is-number-object@npm:1.0.7" + dependencies: + has-tostringtag: ^1.0.0 + checksum: d1e8d01bb0a7134c74649c4e62da0c6118a0bfc6771ea3c560914d52a627873e6920dd0fd0ebc0e12ad2ff4687eac4c308f7e80320b973b2c8a2c8f97a7524f7 languageName: node linkType: hard @@ -4283,13 +4554,6 @@ __metadata: languageName: node linkType: hard -"is-plain-obj@npm:2.1.0": - version: 2.1.0 - resolution: "is-plain-obj@npm:2.1.0" - checksum: cec9100678b0a9fe0248a81743041ed990c2d4c99f893d935545cfbc42876cbe86d207f3b895700c690ad2fa520e568c44afc1605044b535a7820c1d40e38daa - languageName: node - linkType: hard - "is-plain-obj@npm:^1.0.0": version: 1.1.0 resolution: "is-plain-obj@npm:1.1.0" @@ -4297,6 +4561,13 @@ __metadata: languageName: node linkType: hard +"is-plain-obj@npm:^4.1.0": + version: 4.1.0 + resolution: "is-plain-obj@npm:4.1.0" + checksum: 6dc45da70d04a81f35c9310971e78a6a3c7a63547ef782e3a07ee3674695081b6ca4e977fbb8efc48dae3375e0b34558d2bcd722aec9bddfa2d7db5b041be8ce + languageName: node + linkType: hard + "is-regex@npm:^1.1.4": version: 1.1.4 resolution: "is-regex@npm:1.1.4" @@ -4324,9 +4595,9 @@ __metadata: linkType: hard "is-stream@npm:^2.0.0": - version: 2.0.0 - resolution: "is-stream@npm:2.0.0" - checksum: 4dc47738e26bc4f1b3be9070b6b9e39631144f204fc6f87db56961220add87c10a999ba26cf81699f9ef9610426f69cb08a4713feff8deb7d8cadac907826935 + version: 2.0.1 + resolution: "is-stream@npm:2.0.1" + checksum: b8e05ccdf96ac330ea83c12450304d4a591f9958c11fd17bed240af8d5ffe08aedafa4c0f4cfccd4d28dc9d4d129daca1023633d5c11601a6cbc77521f6fae66 languageName: node linkType: hard @@ -4340,24 +4611,20 @@ __metadata: linkType: hard "is-symbol@npm:^1.0.2, is-symbol@npm:^1.0.3": - version: 1.0.3 - resolution: "is-symbol@npm:1.0.3" + version: 1.0.4 + resolution: "is-symbol@npm:1.0.4" dependencies: - has-symbols: ^1.0.1 - checksum: c6d54bd01218fa202da8ce91525ca41a907819be5f000df9ab9621467e087eb36f34b2dbfa51a2a699a282e860681ffa6a787d69e944ba99a46d3df553ff2798 + has-symbols: ^1.0.2 + checksum: 92805812ef590738d9de49d677cd17dfd486794773fb6fa0032d16452af46e9b91bb43ffe82c983570f015b37136f4b53b28b8523bfb10b0ece7a66c31a54510 languageName: node linkType: hard -"is-typed-array@npm:^1.1.10, is-typed-array@npm:^1.1.9": - version: 1.1.10 - resolution: "is-typed-array@npm:1.1.10" +"is-typed-array@npm:^1.1.10, is-typed-array@npm:^1.1.13, is-typed-array@npm:^1.1.9": + version: 1.1.13 + resolution: "is-typed-array@npm:1.1.13" dependencies: - available-typed-arrays: ^1.0.5 - call-bind: ^1.0.2 - for-each: ^0.3.3 - gopd: ^1.0.1 - has-tostringtag: ^1.0.0 - checksum: aac6ecb59d4c56a1cdeb69b1f129154ef462bbffe434cb8a8235ca89b42f258b7ae94073c41b3cb7bce37f6a1733ad4499f07882d5d5093a7ba84dfc4ebb8017 + which-typed-array: ^1.1.14 + checksum: 150f9ada183a61554c91e1c4290086d2c100b0dff45f60b028519be72a8db964da403c48760723bf5253979b8dffe7b544246e0e5351dcd05c5fdb1dcc1dc0f0 languageName: node linkType: hard @@ -4370,6 +4637,20 @@ __metadata: languageName: node linkType: hard +"is-windows@npm:^1.0.1": + version: 1.0.2 + resolution: "is-windows@npm:1.0.2" + checksum: 438b7e52656fe3b9b293b180defb4e448088e7023a523ec21a91a80b9ff8cdb3377ddb5b6e60f7c7de4fa8b63ab56e121b6705fe081b3cf1b828b0a380009ad7 + languageName: node + linkType: hard + +"isarray@npm:^2.0.5": + version: 2.0.5 + resolution: "isarray@npm:2.0.5" + checksum: bd5bbe4104438c4196ba58a54650116007fa0262eccef13a4c55b2e09a5b36b59f1e75b9fcc49883dd9d4953892e6fc007eef9e9155648ceea036e184b0f930a + languageName: node + linkType: hard + "isexe@npm:^2.0.0": version: 2.0.0 resolution: "isexe@npm:2.0.0" @@ -4377,55 +4658,75 @@ __metadata: languageName: node linkType: hard +"isexe@npm:^3.1.1": + version: 3.1.1 + resolution: "isexe@npm:3.1.1" + checksum: 7fe1931ee4e88eb5aa524cd3ceb8c882537bc3a81b02e438b240e47012eef49c86904d0f0e593ea7c3a9996d18d0f1f3be8d3eaa92333977b0c3a9d353d5563e + languageName: node + linkType: hard + "istanbul-lib-coverage@npm:^3.0.0, istanbul-lib-coverage@npm:^3.2.0": - version: 3.2.0 - resolution: "istanbul-lib-coverage@npm:3.2.0" - checksum: a2a545033b9d56da04a8571ed05c8120bf10e9bce01cf8633a3a2b0d1d83dff4ac4fe78d6d5673c27fc29b7f21a41d75f83a36be09f82a61c367b56aa73c1ff9 + version: 3.2.2 + resolution: "istanbul-lib-coverage@npm:3.2.2" + checksum: 2367407a8d13982d8f7a859a35e7f8dd5d8f75aae4bb5484ede3a9ea1b426dc245aff28b976a2af48ee759fdd9be374ce2bd2669b644f31e76c5f46a2e29a831 languageName: node linkType: hard "istanbul-lib-instrument@npm:^5.0.4, istanbul-lib-instrument@npm:^5.1.0": - version: 5.1.0 - resolution: "istanbul-lib-instrument@npm:5.1.0" + version: 5.2.1 + resolution: "istanbul-lib-instrument@npm:5.2.1" dependencies: "@babel/core": ^7.12.3 "@babel/parser": ^7.14.7 "@istanbuljs/schema": ^0.1.2 istanbul-lib-coverage: ^3.2.0 semver: ^6.3.0 - checksum: 8b82e733c69fe9f94d2e21f3e5760c9bedb110329aa75df4bd40df95f1cac3bf38767e43f35b125cc547ceca7376b72ce7d95cc5238b7e9088345c7b589233d3 + checksum: bf16f1803ba5e51b28bbd49ed955a736488381e09375d830e42ddeb403855b2006f850711d95ad726f2ba3f1ae8e7366de7e51d2b9ac67dc4d80191ef7ddf272 languageName: node linkType: hard "istanbul-lib-report@npm:^3.0.0": - version: 3.0.0 - resolution: "istanbul-lib-report@npm:3.0.0" + version: 3.0.1 + resolution: "istanbul-lib-report@npm:3.0.1" dependencies: istanbul-lib-coverage: ^3.0.0 - make-dir: ^3.0.0 + make-dir: ^4.0.0 supports-color: ^7.1.0 - checksum: 3f29eb3f53c59b987386e07fe772d24c7f58c6897f34c9d7a296f4000de7ae3de9eb95c3de3df91dc65b134c84dee35c54eee572a56243e8907c48064e34ff1b + checksum: fd17a1b879e7faf9bb1dc8f80b2a16e9f5b7b8498fe6ed580a618c34df0bfe53d2abd35bf8a0a00e628fb7405462576427c7df20bbe4148d19c14b431c974b21 languageName: node linkType: hard "istanbul-lib-source-maps@npm:^4.0.0": - version: 4.0.0 - resolution: "istanbul-lib-source-maps@npm:4.0.0" + version: 4.0.1 + resolution: "istanbul-lib-source-maps@npm:4.0.1" dependencies: debug: ^4.1.1 istanbul-lib-coverage: ^3.0.0 source-map: ^0.6.1 - checksum: 292bfb4083e5f8783cdf829a7686b1a377d0c6c2119d4343c8478e948b38146c4827cddc7eee9f57605acd63c291376d67e4a84163d37c5fc78ad0f27f7e2621 + checksum: 21ad3df45db4b81852b662b8d4161f6446cd250c1ddc70ef96a585e2e85c26ed7cd9c2a396a71533cfb981d1a645508bc9618cae431e55d01a0628e7dec62ef2 languageName: node linkType: hard "istanbul-reports@npm:^3.1.3": - version: 3.1.4 - resolution: "istanbul-reports@npm:3.1.4" + version: 3.1.6 + resolution: "istanbul-reports@npm:3.1.6" dependencies: html-escaper: ^2.0.0 istanbul-lib-report: ^3.0.0 - checksum: 2132983355710c522f6b26808015cab9a0ee8b9f5ae0db0d3edeff40b886dd83cb670fb123cb7b32dbe59473d7c00cdde2ba6136bc0acdb20a865fccea64dfe1 + checksum: 44c4c0582f287f02341e9720997f9e82c071627e1e862895745d5f52ec72c9b9f38e1d12370015d2a71dcead794f34c7732aaef3fab80a24bc617a21c3d911d6 + languageName: node + linkType: hard + +"jackspeak@npm:^2.3.5": + version: 2.3.6 + resolution: "jackspeak@npm:2.3.6" + dependencies: + "@isaacs/cliui": ^8.0.2 + "@pkgjs/parseargs": ^0.11.0 + dependenciesMeta: + "@pkgjs/parseargs": + optional: true + checksum: 57d43ad11eadc98cdfe7496612f6bbb5255ea69fe51ea431162db302c2a11011642f50cfad57288bd0aea78384a0612b16e131944ad8ecd09d619041c8531b54 languageName: node linkType: hard @@ -4610,15 +4911,15 @@ __metadata: linkType: hard "jest-it-up@npm:^2.0.2": - version: 2.0.2 - resolution: "jest-it-up@npm:2.0.2" + version: 2.2.0 + resolution: "jest-it-up@npm:2.2.0" dependencies: "@inquirer/confirm": ^0.0.14-alpha.0 ansi-colors: ^4.1.0 commander: ^9.0.0 bin: jest-it-up: bin/jest-it-up - checksum: 1482d8b9862331b6cc7d858fd1c05d95fb1bc2adbc37e243c20e6e10f259fecf600d3b1023dadf11acadb158ea171677f8f375969e058dff46002be81a49079b + checksum: f329561bff2b96f2ba7b4a0eb2c565782affb4b2f38e1b1c488b7cc3633be59f79932d4c26b25afeedc196c565e6c45094519051b7da7587a87c3f7ad8b780e2 languageName: node linkType: hard @@ -4684,14 +4985,14 @@ __metadata: linkType: hard "jest-pnp-resolver@npm:^1.2.2": - version: 1.2.2 - resolution: "jest-pnp-resolver@npm:1.2.2" + version: 1.2.3 + resolution: "jest-pnp-resolver@npm:1.2.3" peerDependencies: jest-resolve: "*" peerDependenciesMeta: jest-resolve: optional: true - checksum: bd85dcc0e76e0eb0c3d56382ec140f08d25ff4068cda9d0e360bb78fb176cb726d0beab82dc0e8694cafd09f55fee7622b8bcb240afa5fad301f4ed3eebb4f47 + checksum: db1a8ab2cb97ca19c01b1cfa9a9c8c69a143fde833c14df1fab0766f411b1148ff0df878adea09007ac6a2085ec116ba9a996a6ad104b1e58c20adbf88eed9b2 languageName: node linkType: hard @@ -4893,14 +5194,14 @@ __metadata: languageName: node linkType: hard -"js-tokens@npm:^3.0.0 || ^4.0.0, js-tokens@npm:^4.0.0": +"js-tokens@npm:^4.0.0": version: 4.0.0 resolution: "js-tokens@npm:4.0.0" checksum: 8a95213a5a77deb6cbe94d86340e8d9ace2b93bc367790b260101d2f36a2eaf4e4e22d9fa9cf459b38af3a32fb4190e638024cf82ec95ef708680e405ea7cc78 languageName: node linkType: hard -"js-yaml@npm:^3.13.1, js-yaml@npm:^3.14.0": +"js-yaml@npm:^3.13.1, js-yaml@npm:^3.14.1": version: 3.14.1 resolution: "js-yaml@npm:3.14.1" dependencies: @@ -4923,6 +5224,13 @@ __metadata: languageName: node linkType: hard +"jsbn@npm:1.1.0": + version: 1.1.0 + resolution: "jsbn@npm:1.1.0" + checksum: 944f924f2bd67ad533b3850eee47603eed0f6ae425fd1ee8c760f477e8c34a05f144c1bd4f5a5dd1963141dc79a2c55f89ccc5ab77d039e7077f3ad196b64965 + languageName: node + linkType: hard + "jsdoc-type-pratt-parser@npm:~3.1.0": version: 3.1.0 resolution: "jsdoc-type-pratt-parser@npm:3.1.0" @@ -4954,9 +5262,9 @@ __metadata: linkType: hard "json-parse-even-better-errors@npm:^3.0.0": - version: 3.0.0 - resolution: "json-parse-even-better-errors@npm:3.0.0" - checksum: f1970b5220c7fa23d888565510752c3d5e863f93668a202fcaa719739fa41485dfc6a1db212f702ebd3c873851cc067aebc2917e3f79763cae2fdb95046f38f3 + version: 3.0.1 + resolution: "json-parse-even-better-errors@npm:3.0.1" + checksum: bf74fa3f715e56699ccd68b80a7d20908de432a3fae2d5aa2ed530a148e9d9ccdf8e6983b93d9966a553aa70dcf003ce3a7ffec2c0ce74d2a6173e3691a426f0 languageName: node linkType: hard @@ -4974,7 +5282,7 @@ __metadata: languageName: node linkType: hard -"json5@npm:^1.0.1": +"json5@npm:^1.0.2": version: 1.0.2 resolution: "json5@npm:1.0.2" dependencies: @@ -4985,7 +5293,7 @@ __metadata: languageName: node linkType: hard -"json5@npm:^2.1.3, json5@npm:^2.2.1, json5@npm:^2.2.3": +"json5@npm:^2.2.1, json5@npm:^2.2.3": version: 2.2.3 resolution: "json5@npm:2.2.3" bin: @@ -4994,19 +5302,19 @@ __metadata: languageName: node linkType: hard -"jsonc-parser@npm:^3.0.0": - version: 3.2.0 - resolution: "jsonc-parser@npm:3.2.0" - checksum: 946dd9a5f326b745aa326d48a7257e3f4a4b62c5e98ec8e49fa2bdd8d96cef7e6febf1399f5c7016114fd1f68a1c62c6138826d5d90bc650448e3cf0951c53c7 +"jsonc-parser@npm:^3.2.0": + version: 3.2.1 + resolution: "jsonc-parser@npm:3.2.1" + checksum: 656d9027b91de98d8ab91b3aa0d0a4cab7dc798a6830845ca664f3e76c82d46b973675bbe9b500fae1de37fd3e81aceacbaa2a57884bf2f8f29192150d2d1ef7 languageName: node linkType: hard -"keyv@npm:^4.0.0": - version: 4.5.2 - resolution: "keyv@npm:4.5.2" +"keyv@npm:^4.0.0, keyv@npm:^4.5.3": + version: 4.5.4 + resolution: "keyv@npm:4.5.4" dependencies: json-buffer: 3.0.1 - checksum: 13ad58303acd2261c0d4831b4658451603fd159e61daea2121fcb15feb623e75ee328cded0572da9ca76b7b3ceaf8e614f1806c6b3af5db73c9c35a345259651 + checksum: 74a24395b1c34bd44ad5cb2b49140d087553e170625240b86755a6604cd65aa16efdbdeae5cdb17ba1284a0fbb25ad06263755dbc71b8d8b06f74232ce3cdd72 languageName: node linkType: hard @@ -5035,9 +5343,9 @@ __metadata: linkType: hard "lines-and-columns@npm:^1.1.6": - version: 1.1.6 - resolution: "lines-and-columns@npm:1.1.6" - checksum: 198a5436b1fa5cf703bae719c01c686b076f0ad7e1aafd95a58d626cabff302dc0414822126f2f80b58a8c3d66cda8a7b6da064f27130f87e1d3506d6dfd0d68 + version: 1.2.4 + resolution: "lines-and-columns@npm:1.2.4" + checksum: 0c37f9f7fa212b38912b7145e1cd16a5f3cd34d782441c3e6ca653485d326f58b3caccda66efce1c5812bde4961bbde3374fae4b0d11bf1226152337f3894aa5 languageName: node linkType: hard @@ -5073,24 +5381,13 @@ __metadata: languageName: node linkType: hard -"lodash@npm:4.17.21, lodash@npm:^4.17.20, lodash@npm:^4.17.21": +"lodash@npm:^4.17.21": version: 4.17.21 resolution: "lodash@npm:4.17.21" checksum: eb835a2e51d381e561e508ce932ea50a8e5a68f4ebdd771ea240d3048244a8d13658acbd502cd4829768c56f2e16bdd4340b9ea141297d472517b83868e677f7 languageName: node linkType: hard -"loose-envify@npm:^1.0.0": - version: 1.4.0 - resolution: "loose-envify@npm:1.4.0" - dependencies: - js-tokens: ^3.0.0 || ^4.0.0 - bin: - loose-envify: cli.js - checksum: 6517e24e0cad87ec9888f500c5b5947032cdfe6ef65e1c1936a0c48a524b81e65542c9c3edc91c97d5bddc806ee2a985dbc79be89215d613b1de5db6d1cfe6f4 - languageName: node - linkType: hard - "lowercase-keys@npm:^2.0.0": version: 2.0.0 resolution: "lowercase-keys@npm:2.0.0" @@ -5098,6 +5395,13 @@ __metadata: languageName: node linkType: hard +"lru-cache@npm:^10.0.1, lru-cache@npm:^9.1.1 || ^10.0.0": + version: 10.2.0 + resolution: "lru-cache@npm:10.2.0" + checksum: eee7ddda4a7475deac51ac81d7dd78709095c6fa46e8350dc2d22462559a1faa3b81ed931d5464b13d48cbd7e08b46100b6f768c76833912bc444b99c37e25db + languageName: node + linkType: hard + "lru-cache@npm:^4.0.1": version: 4.1.5 resolution: "lru-cache@npm:4.1.5" @@ -5127,9 +5431,9 @@ __metadata: linkType: hard "lru-cache@npm:^7.7.1": - version: 7.13.1 - resolution: "lru-cache@npm:7.13.1" - checksum: f53c7dd098a7afd6342b23f7182629edff206c7665de79445a7f5455440e768a4d1c6ec52e1a16175580c71535c9437dfb6f6bc22ca1a0e4a7454a97cde87329 + version: 7.18.3 + resolution: "lru-cache@npm:7.18.3" + checksum: e550d772384709deea3f141af34b6d4fa392e2e418c1498c078de0ee63670f1f46f5eee746e8ef7e69e1c895af0d4224e62ee33e66a543a14763b0f2e74c1356 languageName: node linkType: hard @@ -5140,21 +5444,21 @@ __metadata: languageName: node linkType: hard -"magic-string@npm:^0.25.7": - version: 0.25.9 - resolution: "magic-string@npm:0.25.9" +"magic-string@npm:^0.30.6": + version: 0.30.7 + resolution: "magic-string@npm:0.30.7" dependencies: - sourcemap-codec: ^1.4.8 - checksum: 9a0e55a15c7303fc360f9572a71cffba1f61451bc92c5602b1206c9d17f492403bf96f946dfce7483e66822d6b74607262e24392e87b0ac27b786e69a40e9b1a + "@jridgewell/sourcemap-codec": ^1.4.15 + checksum: bdf102e36a44d1728ec61b69d655caba3f66ca58898e292f6debe57dc30896bd37908bfe3464a7464a435831a9e44aa905cebd681e21c2f44bbe4dddf225619f languageName: node linkType: hard -"make-dir@npm:^3.0.0": - version: 3.1.0 - resolution: "make-dir@npm:3.1.0" +"make-dir@npm:^4.0.0": + version: 4.0.0 + resolution: "make-dir@npm:4.0.0" dependencies: - semver: ^6.0.0 - checksum: 484200020ab5a1fdf12f393fe5f385fc8e4378824c940fba1729dcd198ae4ff24867bc7a5646331e50cead8abff5d9270c456314386e629acec6dff4b8016b78 + semver: ^7.5.3 + checksum: bf0731a2dd3aab4db6f3de1585cea0b746bb73eb5a02e3d8d72757e376e64e6ada190b1eddcde5b2f24a81b688a9897efd5018737d05e02e2a671dda9cff8a8a languageName: node linkType: hard @@ -5166,8 +5470,8 @@ __metadata: linkType: hard "make-fetch-happen@npm:^10.0.3": - version: 10.2.0 - resolution: "make-fetch-happen@npm:10.2.0" + version: 10.2.1 + resolution: "make-fetch-happen@npm:10.2.1" dependencies: agentkeepalive: ^4.2.1 cacache: ^16.1.0 @@ -5185,7 +5489,26 @@ __metadata: promise-retry: ^2.0.1 socks-proxy-agent: ^7.0.0 ssri: ^9.0.0 - checksum: 2f6c294179972f56fab40fd8618f07841e06550692bb78f6da16e7afaa9dca78c345b08cf44a77a8907ef3948e4dc77e93eb7492b8381f1217d7ac057a7522f8 + checksum: 2332eb9a8ec96f1ffeeea56ccefabcb4193693597b132cd110734d50f2928842e22b84cfa1508e921b8385cdfd06dda9ad68645fed62b50fff629a580f5fb72c + languageName: node + linkType: hard + +"make-fetch-happen@npm:^13.0.0": + version: 13.0.0 + resolution: "make-fetch-happen@npm:13.0.0" + dependencies: + "@npmcli/agent": ^2.0.0 + cacache: ^18.0.0 + http-cache-semantics: ^4.1.1 + is-lambda: ^1.0.1 + minipass: ^7.0.2 + minipass-fetch: ^3.0.0 + minipass-flush: ^1.0.5 + minipass-pipeline: ^1.2.4 + negotiator: ^0.6.3 + promise-retry: ^2.0.1 + ssri: ^10.0.0 + checksum: 7c7a6d381ce919dd83af398b66459a10e2fe8f4504f340d1d090d3fa3d1b0c93750220e1d898114c64467223504bd258612ba83efbc16f31b075cd56de24b4af languageName: node linkType: hard @@ -5198,12 +5521,12 @@ __metadata: languageName: node linkType: hard -"marked@npm:^4.0.19": - version: 4.1.1 - resolution: "marked@npm:4.1.1" +"marked@npm:^4.2.12": + version: 4.3.0 + resolution: "marked@npm:4.3.0" bin: marked: bin/marked.js - checksum: 717e3357952ee53de831bf0eb110ed075bebca2376c58bcdf7ee523ef540d45308ad6d51b2c933da0968832ea4386f31c142ca65443e77c098e84f6cce73e418 + checksum: 0db6817893952c3ec710eb9ceafb8468bf5ae38cb0f92b7b083baa13d70b19774674be04db5b817681fa7c5c6a088f61300815e4dd75a59696f4716ad69f6260 languageName: node linkType: hard @@ -5214,7 +5537,7 @@ __metadata: languageName: node linkType: hard -"merge2@npm:^1.2.3, merge2@npm:^1.3.0, merge2@npm:^1.4.1": +"merge2@npm:^1.3.0, merge2@npm:^1.4.1": version: 1.4.1 resolution: "merge2@npm:1.4.1" checksum: 7268db63ed5169466540b6fb947aec313200bcf6d40c5ab722c22e242f651994619bcd85601602972d3c85bd2cc45a358a4c61937e9f11a061919a1da569b0c2 @@ -5229,12 +5552,12 @@ __metadata: linkType: hard "micromatch@npm:^4.0.4": - version: 4.0.4 - resolution: "micromatch@npm:4.0.4" + version: 4.0.5 + resolution: "micromatch@npm:4.0.5" dependencies: - braces: ^3.0.1 - picomatch: ^2.2.3 - checksum: ef3d1c88e79e0a68b0e94a03137676f3324ac18a908c245a9e5936f838079fcc108ac7170a5fadc265a9c2596963462e402841406bda1a4bb7b68805601d631c + braces: ^3.0.2 + picomatch: ^2.3.1 + checksum: 02a17b671c06e8fefeeb6ef996119c1e597c942e632a21ef589154f23898c9c6a9858526246abb14f8bca6e77734aa9dcf65476fca47cedfb80d9577d52843fc languageName: node linkType: hard @@ -5266,7 +5589,7 @@ __metadata: languageName: node linkType: hard -"minimatch@npm:^3.0.4, minimatch@npm:^3.0.5, minimatch@npm:^3.1.2": +"minimatch@npm:^3.0.4, minimatch@npm:^3.0.5, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2": version: 3.1.2 resolution: "minimatch@npm:3.1.2" dependencies: @@ -5275,19 +5598,37 @@ __metadata: languageName: node linkType: hard -"minimatch@npm:^5.0.1, minimatch@npm:^5.1.0": - version: 5.1.0 - resolution: "minimatch@npm:5.1.0" +"minimatch@npm:^5.0.1": + version: 5.1.6 + resolution: "minimatch@npm:5.1.6" + dependencies: + brace-expansion: ^2.0.1 + checksum: 7564208ef81d7065a370f788d337cd80a689e981042cb9a1d0e6580b6c6a8c9279eba80010516e258835a988363f99f54a6f711a315089b8b42694f5da9d0d77 + languageName: node + linkType: hard + +"minimatch@npm:^7.1.3, minimatch@npm:^7.4.6": + version: 7.4.6 + resolution: "minimatch@npm:7.4.6" dependencies: brace-expansion: ^2.0.1 - checksum: 15ce53d31a06361e8b7a629501b5c75491bc2b59712d53e802b1987121d91b433d73fcc5be92974fde66b2b51d8fb28d75a9ae900d249feb792bb1ba2a4f0a90 + checksum: 1a6c8d22618df9d2a88aabeef1de5622eb7b558e9f8010be791cb6b0fa6e102d39b11c28d75b855a1e377b12edc7db8ff12a99c20353441caa6a05e78deb5da9 + languageName: node + linkType: hard + +"minimatch@npm:^9.0.1, minimatch@npm:^9.0.3": + version: 9.0.3 + resolution: "minimatch@npm:9.0.3" + dependencies: + brace-expansion: ^2.0.1 + checksum: 253487976bf485b612f16bf57463520a14f512662e592e95c571afdab1442a6a6864b6c88f248ce6fc4ff0b6de04ac7aa6c8bb51e868e99d1d65eb0658a708b5 languageName: node linkType: hard "minimist@npm:^1.2.0, minimist@npm:^1.2.6": - version: 1.2.6 - resolution: "minimist@npm:1.2.6" - checksum: d15428cd1e11eb14e1233bcfb88ae07ed7a147de251441d61158619dfb32c4d7e9061d09cab4825fdee18ecd6fce323228c8c47b5ba7cd20af378ca4048fb3fb + version: 1.2.8 + resolution: "minimist@npm:1.2.8" + checksum: 75a6d645fb122dad29c06a7597bddea977258957ed88d7a6df59b5cd3fe4a527e253e9bbf2e783e4b73657f9098b96a5fe96ab8a113655d4109108577ecf85b0 languageName: node linkType: hard @@ -5300,18 +5641,42 @@ __metadata: languageName: node linkType: hard -"minipass-fetch@npm:^2.0.3": - version: 2.1.0 - resolution: "minipass-fetch@npm:2.1.0" +"minipass-collect@npm:^2.0.1": + version: 2.0.1 + resolution: "minipass-collect@npm:2.0.1" + dependencies: + minipass: ^7.0.3 + checksum: b251bceea62090f67a6cced7a446a36f4cd61ee2d5cea9aee7fff79ba8030e416327a1c5aa2908dc22629d06214b46d88fdab8c51ac76bacbf5703851b5ad342 + languageName: node + linkType: hard + +"minipass-fetch@npm:^2.0.3": + version: 2.1.2 + resolution: "minipass-fetch@npm:2.1.2" + dependencies: + encoding: ^0.1.13 + minipass: ^3.1.6 + minipass-sized: ^1.0.3 + minizlib: ^2.1.2 + dependenciesMeta: + encoding: + optional: true + checksum: 3f216be79164e915fc91210cea1850e488793c740534985da017a4cbc7a5ff50506956d0f73bb0cb60e4fe91be08b6b61ef35101706d3ef5da2c8709b5f08f91 + languageName: node + linkType: hard + +"minipass-fetch@npm:^3.0.0": + version: 3.0.4 + resolution: "minipass-fetch@npm:3.0.4" dependencies: encoding: ^0.1.13 - minipass: ^3.1.6 + minipass: ^7.0.3 minipass-sized: ^1.0.3 minizlib: ^2.1.2 dependenciesMeta: encoding: optional: true - checksum: 1334732859a3f7959ed22589bafd9c40384b885aebb5932328071c33f86b3eb181d54c86919675d1825ab5f1c8e4f328878c863873258d113c29d79a4b0c9c9f + checksum: af7aad15d5c128ab1ebe52e043bdf7d62c3c6f0cecb9285b40d7b395e1375b45dcdfd40e63e93d26a0e8249c9efd5c325c65575aceee192883970ff8cb11364a languageName: node linkType: hard @@ -5343,11 +5708,25 @@ __metadata: linkType: hard "minipass@npm:^3.0.0, minipass@npm:^3.1.1, minipass@npm:^3.1.6": - version: 3.3.4 - resolution: "minipass@npm:3.3.4" + version: 3.3.6 + resolution: "minipass@npm:3.3.6" dependencies: yallist: ^4.0.0 - checksum: 5d95a7738c54852ba78d484141e850c792e062666a2d0c681a5ac1021275beb7e1acb077e59f9523ff1defb80901aea4e30fac10ded9a20a25d819a42916ef1b + checksum: a30d083c8054cee83cdcdc97f97e4641a3f58ae743970457b1489ce38ee1167b3aaf7d815cd39ec7a99b9c40397fd4f686e83750e73e652b21cb516f6d845e48 + languageName: node + linkType: hard + +"minipass@npm:^5.0.0": + version: 5.0.0 + resolution: "minipass@npm:5.0.0" + checksum: 425dab288738853fded43da3314a0b5c035844d6f3097a8e3b5b29b328da8f3c1af6fc70618b32c29ff906284cf6406b6841376f21caaadd0793c1d5a6a620ea + languageName: node + linkType: hard + +"minipass@npm:^5.0.0 || ^6.0.2 || ^7.0.0, minipass@npm:^7.0.2, minipass@npm:^7.0.3": + version: 7.0.4 + resolution: "minipass@npm:7.0.4" + checksum: 87585e258b9488caf2e7acea242fd7856bbe9a2c84a7807643513a338d66f368c7d518200ad7b70a508664d408aa000517647b2930c259a8b1f9f0984f344a21 languageName: node linkType: hard @@ -5370,6 +5749,13 @@ __metadata: languageName: node linkType: hard +"ms@npm:2.0.0": + version: 2.0.0 + resolution: "ms@npm:2.0.0" + checksum: 0e6a22b8b746d2e0b65a430519934fefd41b6db0682e3477c10f60c76e947c4c0ad06f63ffdf1d78d335f83edee8c0aa928aa66a36c7cd95b69b26f468d527f4 + languageName: node + linkType: hard + "ms@npm:2.1.2": version: 2.1.2 resolution: "ms@npm:2.1.2" @@ -5404,12 +5790,12 @@ __metadata: languageName: node linkType: hard -"nanoid@npm:^3.3.6": - version: 3.3.6 - resolution: "nanoid@npm:3.3.6" +"nanoid@npm:^3.3.7": + version: 3.3.7 + resolution: "nanoid@npm:3.3.7" bin: nanoid: bin/nanoid.cjs - checksum: 7d0eda657002738aa5206107bd0580aead6c95c460ef1bdd0b1a87a9c7ae6277ac2e9b945306aaa5b32c6dcb7feaf462d0f552e7f8b5718abfc6ead5c94a71b3 + checksum: d36c427e530713e4ac6567d488b489a36582ef89da1d6d4e3b87eded11eb10d7042a877958c6f104929809b2ab0bafa17652b076cdf84324aa75b30b722204f2 languageName: node linkType: hard @@ -5435,10 +5821,11 @@ __metadata: linkType: hard "node-gyp@npm:^9.0.0": - version: 9.3.1 - resolution: "node-gyp@npm:9.3.1" + version: 9.4.1 + resolution: "node-gyp@npm:9.4.1" dependencies: env-paths: ^2.2.0 + exponential-backoff: ^3.1.1 glob: ^7.1.4 graceful-fs: ^4.2.6 make-fetch-happen: ^10.0.3 @@ -5450,27 +5837,27 @@ __metadata: which: ^2.0.2 bin: node-gyp: bin/node-gyp.js - checksum: b860e9976fa645ca0789c69e25387401b4396b93c8375489b5151a6c55cf2640a3b6183c212b38625ef7c508994930b72198338e3d09b9d7ade5acc4aaf51ea7 + checksum: 8576c439e9e925ab50679f87b7dfa7aa6739e42822e2ad4e26c36341c0ba7163fdf5a946f0a67a476d2f24662bc40d6c97bd9e79ced4321506738e6b760a1577 languageName: node linkType: hard "node-gyp@npm:latest": - version: 9.1.0 - resolution: "node-gyp@npm:9.1.0" + version: 10.0.1 + resolution: "node-gyp@npm:10.0.1" dependencies: env-paths: ^2.2.0 - glob: ^7.1.4 + exponential-backoff: ^3.1.1 + glob: ^10.3.10 graceful-fs: ^4.2.6 - make-fetch-happen: ^10.0.3 - nopt: ^5.0.0 - npmlog: ^6.0.0 - rimraf: ^3.0.2 + make-fetch-happen: ^13.0.0 + nopt: ^7.0.0 + proc-log: ^3.0.0 semver: ^7.3.5 tar: ^6.1.2 - which: ^2.0.2 + which: ^4.0.0 bin: node-gyp: bin/node-gyp.js - checksum: 1437fa4a879b5b9010604128e8da8609b57c66034262087539ee04a8b764b8436af2be01bab66f8fc729a3adba2dcc21b10a32b9f552696c3fa8cd657d134fc4 + checksum: 60a74e66d364903ce02049966303a57f898521d139860ac82744a5fdd9f7b7b3b61f75f284f3bfe6e6add3b8f1871ce305a1d41f775c7482de837b50c792223f languageName: node linkType: hard @@ -5481,36 +5868,36 @@ __metadata: languageName: node linkType: hard -"node-releases@npm:^2.0.13": - version: 2.0.13 - resolution: "node-releases@npm:2.0.13" - checksum: 17ec8f315dba62710cae71a8dad3cd0288ba943d2ece43504b3b1aa8625bf138637798ab470b1d9035b0545996f63000a8a926e0f6d35d0996424f8b6d36dda3 +"node-releases@npm:^2.0.14": + version: 2.0.14 + resolution: "node-releases@npm:2.0.14" + checksum: 59443a2f77acac854c42d321bf1b43dea0aef55cd544c6a686e9816a697300458d4e82239e2d794ea05f7bbbc8a94500332e2d3ac3f11f52e4b16cbe638b3c41 languageName: node linkType: hard -"nopt@npm:^5.0.0": - version: 5.0.0 - resolution: "nopt@npm:5.0.0" +"nopt@npm:^6.0.0": + version: 6.0.0 + resolution: "nopt@npm:6.0.0" dependencies: - abbrev: 1 + abbrev: ^1.0.0 bin: nopt: bin/nopt.js - checksum: d35fdec187269503843924e0114c0c6533fb54bbf1620d0f28b4b60ba01712d6687f62565c55cc20a504eff0fbe5c63e22340c3fad549ad40469ffb611b04f2f + checksum: 82149371f8be0c4b9ec2f863cc6509a7fd0fa729929c009f3a58e4eb0c9e4cae9920e8f1f8eb46e7d032fec8fb01bede7f0f41a67eb3553b7b8e14fa53de1dac languageName: node linkType: hard -"nopt@npm:^6.0.0": - version: 6.0.0 - resolution: "nopt@npm:6.0.0" +"nopt@npm:^7.0.0": + version: 7.2.0 + resolution: "nopt@npm:7.2.0" dependencies: - abbrev: ^1.0.0 + abbrev: ^2.0.0 bin: nopt: bin/nopt.js - checksum: 82149371f8be0c4b9ec2f863cc6509a7fd0fa729929c009f3a58e4eb0c9e4cae9920e8f1f8eb46e7d032fec8fb01bede7f0f41a67eb3553b7b8e14fa53de1dac + checksum: a9c0f57fb8cb9cc82ae47192ca2b7ef00e199b9480eed202482c962d61b59a7fbe7541920b2a5839a97b42ee39e288c0aed770e38057a608d7f579389dfde410 languageName: node linkType: hard -"normalize-path@npm:^3.0.0, normalize-path@npm:~3.0.0": +"normalize-path@npm:^3.0.0": version: 3.0.0 resolution: "normalize-path@npm:3.0.0" checksum: 88eeb4da891e10b1318c4b2476b6e2ecbeb5ff97d946815ffea7794c31a89017c70d7f34b3c2ebf23ef4e9fc9fb99f7dffe36da22011b5b5c6ffa34f4873ec20 @@ -5525,9 +5912,9 @@ __metadata: linkType: hard "npm-normalize-package-bin@npm:^3.0.0": - version: 3.0.0 - resolution: "npm-normalize-package-bin@npm:3.0.0" - checksum: 6a34886c150b0f5302aad52a9446e5c939aa14eeb462323e75681517b36c6b9eaef83e1f5bc2d7e5154b3b752cbce81bed05e290db3f1f7edf857cbb895e35c0 + version: 3.0.1 + resolution: "npm-normalize-package-bin@npm:3.0.1" + checksum: de416d720ab22137a36292ff8a333af499ea0933ef2320a8c6f56a73b0f0448227fec4db5c890d702e26d21d04f271415eab6580b5546456861cc0c19498a4bf languageName: node linkType: hard @@ -5561,10 +5948,10 @@ __metadata: languageName: node linkType: hard -"object-inspect@npm:^1.12.3, object-inspect@npm:^1.9.0": - version: 1.12.3 - resolution: "object-inspect@npm:1.12.3" - checksum: dabfd824d97a5f407e6d5d24810d888859f6be394d8b733a77442b277e0808860555176719c5905e765e3743a7cada6b8b0a3b85e5331c530fd418cc8ae991db +"object-inspect@npm:^1.13.1": + version: 1.13.1 + resolution: "object-inspect@npm:1.13.1" + checksum: 7d9fa9221de3311dcb5c7c307ee5dc011cdd31dc43624b7c184b3840514e118e05ef0002be5388304c416c0eb592feb46e983db12577fc47e47d5752fbbfb61f languageName: node linkType: hard @@ -5575,26 +5962,26 @@ __metadata: languageName: node linkType: hard -"object.assign@npm:^4.1.4": - version: 4.1.4 - resolution: "object.assign@npm:4.1.4" +"object.assign@npm:^4.1.5": + version: 4.1.5 + resolution: "object.assign@npm:4.1.5" dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.4 + call-bind: ^1.0.5 + define-properties: ^1.2.1 has-symbols: ^1.0.3 object-keys: ^1.1.1 - checksum: 76cab513a5999acbfe0ff355f15a6a125e71805fcf53de4e9d4e082e1989bdb81d1e329291e1e4e0ae7719f0e4ef80e88fb2d367ae60500d79d25a6224ac8864 + checksum: f9aeac0541661370a1fc86e6a8065eb1668d3e771f7dbb33ee54578201336c057b21ee61207a186dd42db0c62201d91aac703d20d12a79fc79c353eed44d4e25 languageName: node linkType: hard -"object.values@npm:^1.1.6": - version: 1.1.6 - resolution: "object.values@npm:1.1.6" +"object.values@npm:^1.1.5": + version: 1.1.7 + resolution: "object.values@npm:1.1.7" dependencies: call-bind: ^1.0.2 - define-properties: ^1.1.4 - es-abstract: ^1.20.4 - checksum: f6fff9fd817c24cfd8107f50fb33061d81cd11bacc4e3dbb3852e9ff7692fde4dbce823d4333ea27cd9637ef1b6690df5fbb61f1ed314fa2959598dc3ae23d8e + define-properties: ^1.2.0 + es-abstract: ^1.22.1 + checksum: f3e4ae4f21eb1cc7cebb6ce036d4c67b36e1c750428d7b7623c56a0db90edced63d08af8a316d81dfb7c41a3a5fa81b05b7cc9426e98d7da986b1682460f0777 languageName: node linkType: hard @@ -5726,6 +6113,13 @@ __metadata: languageName: node linkType: hard +"parse-passwd@npm:^1.0.0": + version: 1.0.0 + resolution: "parse-passwd@npm:1.0.0" + checksum: 4e55e0231d58f828a41d0f1da2bf2ff7bcef8f4cb6146e69d16ce499190de58b06199e6bd9b17fbf0d4d8aef9052099cdf8c4f13a6294b1a522e8e958073066e + languageName: node + linkType: hard + "path-exists@npm:^4.0.0": version: 4.0.0 resolution: "path-exists@npm:4.0.0" @@ -5761,6 +6155,16 @@ __metadata: languageName: node linkType: hard +"path-scurry@npm:^1.10.1": + version: 1.10.1 + resolution: "path-scurry@npm:1.10.1" + dependencies: + lru-cache: ^9.1.1 || ^10.0.0 + minipass: ^5.0.0 || ^6.0.2 || ^7.0.0 + checksum: e2557cff3a8fb8bc07afdd6ab163a92587884f9969b05bbbaf6fe7379348bfb09af9ed292af12ed32398b15fb443e81692047b786d1eeb6d898a51eb17ed7d90 + languageName: node + linkType: hard + "path-type@npm:^4.0.0": version: 4.0.0 resolution: "path-type@npm:4.0.0" @@ -5782,7 +6186,7 @@ __metadata: languageName: node linkType: hard -"picomatch@npm:^2.0.4, picomatch@npm:^2.2.1, picomatch@npm:^2.2.3": +"picomatch@npm:^2.0.4, picomatch@npm:^2.2.1, picomatch@npm:^2.2.3, picomatch@npm:^2.3.1": version: 2.3.1 resolution: "picomatch@npm:2.3.1" checksum: 050c865ce81119c4822c45d3c84f1ced46f93a0126febae20737bd05ca20589c564d6e9226977df859ed5e03dc73f02584a2b0faad36e896936238238b0446cf @@ -5797,9 +6201,9 @@ __metadata: linkType: hard "pirates@npm:^4.0.4": - version: 4.0.5 - resolution: "pirates@npm:4.0.5" - checksum: c9994e61b85260bec6c4fc0307016340d9b0c4f4b6550a957afaaff0c9b1ad58fbbea5cfcf083860a25cb27a375442e2b0edf52e2e1e40e69934e08dcc52d227 + version: 4.0.6 + resolution: "pirates@npm:4.0.6" + checksum: 46a65fefaf19c6f57460388a5af9ab81e3d7fd0e7bc44ca59d753cb5c4d0df97c6c6e583674869762101836d68675f027d60f841c105d72734df9dfca97cbcc6 languageName: node linkType: hard @@ -5828,14 +6232,14 @@ __metadata: languageName: node linkType: hard -"postcss@npm:^8.1.10": - version: 8.4.31 - resolution: "postcss@npm:8.4.31" +"postcss@npm:^8.4.33": + version: 8.4.35 + resolution: "postcss@npm:8.4.35" dependencies: - nanoid: ^3.3.6 + nanoid: ^3.3.7 picocolors: ^1.0.0 source-map-js: ^1.0.2 - checksum: 1d8611341b073143ad90486fcdfeab49edd243377b1f51834dc4f6d028e82ce5190e4f11bb2633276864503654fb7cab28e67abdc0fbf9d1f88cad4a0ff0beea + checksum: cf3c3124d3912a507603f6d9a49b3783f741075e9aa73eb592a6dd9194f9edab9d20a8875d16d137d4f779fe7b6fbd1f5727e39bfd1c3003724980ee4995e1da languageName: node linkType: hard @@ -5856,16 +6260,17 @@ __metadata: linkType: hard "prettier-plugin-packagejson@npm:^2.3.0": - version: 2.3.0 - resolution: "prettier-plugin-packagejson@npm:2.3.0" + version: 2.4.10 + resolution: "prettier-plugin-packagejson@npm:2.4.10" dependencies: - sort-package-json: 1.57.0 + sort-package-json: 2.7.0 + synckit: 0.9.0 peerDependencies: prettier: ">= 1.16.0" peerDependenciesMeta: prettier: optional: true - checksum: fbcf81cedcfd030440c106d502f121deb9acff2d50c2173ec202eccea66c7de03618eafe3d2a4011b73d76d7d41355edcb2fc11b3030e02a1f2ade91220f4a8a + checksum: d501bfbab1949b07fb26b402c523eab89243854ba36990f180415f624ebdb26d68e59fa72a7f1d735719fafd80e1dd0173cca2cc805b6b703afcf3788ccb1314 languageName: node linkType: hard @@ -5890,6 +6295,13 @@ __metadata: languageName: node linkType: hard +"proc-log@npm:^3.0.0": + version: 3.0.0 + resolution: "proc-log@npm:3.0.0" + checksum: 02b64e1b3919e63df06f836b98d3af002b5cd92655cab18b5746e37374bfb73e03b84fe305454614b34c25b485cc687a9eebdccf0242cda8fda2475dd2c97e02 + languageName: node + linkType: hard + "promise-inflight@npm:^1.0.1": version: 1.0.1 resolution: "promise-inflight@npm:1.0.1" @@ -5908,12 +6320,12 @@ __metadata: linkType: hard "prompts@npm:^2.0.1": - version: 2.3.2 - resolution: "prompts@npm:2.3.2" + version: 2.4.2 + resolution: "prompts@npm:2.4.2" dependencies: kleur: ^3.0.3 - sisteransi: ^1.0.4 - checksum: b1f9e92b59e3be30bcca757dd8458205bc0ff2923cc98b533c09971d4aa2507437d102f73300931a2c50fb4b21f3160a4d4b4683d07c1c1a85d730b463127e18 + sisteransi: ^1.0.5 + checksum: d8fd1fe63820be2412c13bfc5d0a01909acc1f0367e32396962e737cb2fc52d004f3302475d5ce7d18a1e8a79985f93ff04ee03007d091029c3f9104bffc007d languageName: node linkType: hard @@ -5935,19 +6347,9 @@ __metadata: linkType: hard "punycode@npm:^2.1.0": - version: 2.1.1 - resolution: "punycode@npm:2.1.1" - checksum: 823bf443c6dd14f669984dea25757b37993f67e8d94698996064035edd43bed8a5a17a9f12e439c2b35df1078c6bec05a6c86e336209eb1061e8025c481168e8 - languageName: node - linkType: hard - -"query-ast@npm:^1.0.3": - version: 1.0.5 - resolution: "query-ast@npm:1.0.5" - dependencies: - invariant: 2.2.4 - lodash: ^4.17.21 - checksum: 4b7ae79bc907d0614c8d306d77fc82a19d40f5900bace286943839b875d84a52aa4993a73fdb8f4e989461b88474c47a60a48c7a42964b53253d5abe1452e9ad + version: 2.3.1 + resolution: "punycode@npm:2.3.1" + checksum: bb0a0ceedca4c3c57a9b981b90601579058903c62be23c5e8e843d2c2d4148a3ecf029d5133486fb0e1822b098ba8bba09e89d6b21742d02fa26bda6441a6fb2 languageName: node linkType: hard @@ -5990,13 +6392,13 @@ __metadata: linkType: hard "readable-stream@npm:^3.6.0": - version: 3.6.0 - resolution: "readable-stream@npm:3.6.0" + version: 3.6.2 + resolution: "readable-stream@npm:3.6.2" dependencies: inherits: ^2.0.3 string_decoder: ^1.1.1 util-deprecate: ^1.0.1 - checksum: d4ea81502d3799439bb955a3a5d1d808592cf3133350ed352aeaa499647858b27b1c4013984900238b0873ec8d0d8defce72469fb7a83e61d53f5ad61cb80dc8 + checksum: bdcbe6c22e846b6af075e32cf8f4751c2576238c5043169a1c221c92ee2878458a816a4ea33f4c67623c0b6827c8a400409bfb3cf0bf3381392d0b1dfb52ac8d languageName: node linkType: hard @@ -6009,7 +6411,7 @@ __metadata: languageName: node linkType: hard -"readdirp@npm:^3.5.0, readdirp@npm:~3.6.0": +"readdirp@npm:^3.6.0": version: 3.6.0 resolution: "readdirp@npm:3.6.0" dependencies: @@ -6018,18 +6420,19 @@ __metadata: languageName: node linkType: hard -"regexp.prototype.flags@npm:^1.4.3": - version: 1.4.3 - resolution: "regexp.prototype.flags@npm:1.4.3" +"regexp.prototype.flags@npm:^1.5.2": + version: 1.5.2 + resolution: "regexp.prototype.flags@npm:1.5.2" dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.3 - functions-have-names: ^1.2.2 - checksum: 51228bae732592adb3ededd5e15426be25f289e9c4ef15212f4da73f4ec3919b6140806374b8894036a86020d054a8d2657d3fee6bb9b4d35d8939c20030b7a6 + call-bind: ^1.0.6 + define-properties: ^1.2.1 + es-errors: ^1.3.0 + set-function-name: ^2.0.1 + checksum: d7f333667d5c564e2d7a97c56c3075d64c722c9bb51b2b4df6822b2e8096d623a5e63088fb4c83df919b6951ef8113841de8b47de7224872fa6838bc5d8a7d64 languageName: node linkType: hard -"regexpp@npm:^3.0.0, regexpp@npm:^3.2.0": +"regexpp@npm:^3.0.0": version: 3.2.0 resolution: "regexpp@npm:3.2.0" checksum: a78dc5c7158ad9ddcfe01aa9144f46e192ddbfa7b263895a70a5c6c73edd9ce85faf7c0430e59ac38839e1734e275b9c3de5c57ee3ab6edc0e0b1bdebefccef8 @@ -6066,6 +6469,16 @@ __metadata: languageName: node linkType: hard +"resolve-dir@npm:^1.0.0, resolve-dir@npm:^1.0.1": + version: 1.0.1 + resolution: "resolve-dir@npm:1.0.1" + dependencies: + expand-tilde: ^2.0.0 + global-modules: ^1.0.0 + checksum: ef736b8ed60d6645c3b573da17d329bfb50ec4e1d6c5ffd6df49e3497acef9226f9810ea6823b8ece1560e01dcb13f77a9f6180d4f242d00cc9a8f4de909c65c + languageName: node + linkType: hard + "resolve-from@npm:^4.0.0": version: 4.0.0 resolution: "resolve-from@npm:4.0.0" @@ -6081,35 +6494,35 @@ __metadata: linkType: hard "resolve.exports@npm:^1.1.0": - version: 1.1.0 - resolution: "resolve.exports@npm:1.1.0" - checksum: 52865af8edb088f6c7759a328584a5de6b226754f004b742523adcfe398cfbc4559515104bc2ae87b8e78b1e4de46c9baec400b3fb1f7d517b86d2d48a098a2d + version: 1.1.1 + resolution: "resolve.exports@npm:1.1.1" + checksum: 485aa10082eb388a569d696e17ad7b16f4186efc97dd34eadd029d95b811f21ffee13b1b733198bb4584dbb3cb296aa6f141835221fb7613b9606b84f1386655 languageName: node linkType: hard -"resolve@npm:^1.18.1, resolve@npm:^1.20.0, resolve@npm:^1.22.1": - version: 1.22.3 - resolution: "resolve@npm:1.22.3" +"resolve@npm:^1.20.0, resolve@npm:^1.22.0, resolve@npm:^1.22.1, resolve@npm:^1.22.3, resolve@npm:^1.22.4": + version: 1.22.8 + resolution: "resolve@npm:1.22.8" dependencies: - is-core-module: ^2.12.0 + is-core-module: ^2.13.0 path-parse: ^1.0.7 supports-preserve-symlinks-flag: ^1.0.0 bin: resolve: bin/resolve - checksum: fb834b81348428cb545ff1b828a72ea28feb5a97c026a1cf40aa1008352c72811ff4d4e71f2035273dc536dcfcae20c13604ba6283c612d70fa0b6e44519c374 + checksum: f8a26958aa572c9b064562750b52131a37c29d072478ea32e129063e2da7f83e31f7f11e7087a18225a8561cfe8d2f0df9dbea7c9d331a897571c0a2527dbb4c languageName: node linkType: hard -"resolve@patch:resolve@^1.18.1#~builtin, resolve@patch:resolve@^1.20.0#~builtin, resolve@patch:resolve@^1.22.1#~builtin": - version: 1.22.3 - resolution: "resolve@patch:resolve@npm%3A1.22.3#~builtin::version=1.22.3&hash=07638b" +"resolve@patch:resolve@^1.20.0#~builtin, resolve@patch:resolve@^1.22.0#~builtin, resolve@patch:resolve@^1.22.1#~builtin, resolve@patch:resolve@^1.22.3#~builtin, resolve@patch:resolve@^1.22.4#~builtin": + version: 1.22.8 + resolution: "resolve@patch:resolve@npm%3A1.22.8#~builtin::version=1.22.8&hash=07638b" dependencies: - is-core-module: ^2.12.0 + is-core-module: ^2.13.0 path-parse: ^1.0.7 supports-preserve-symlinks-flag: ^1.0.0 bin: resolve: bin/resolve - checksum: ad59734723b596d0891321c951592ed9015a77ce84907f89c9d9307dd0c06e11a67906a3e628c4cae143d3e44898603478af0ddeb2bba3f229a9373efe342665 + checksum: 5479b7d431cacd5185f8db64bfcb7286ae5e31eb299f4c4f404ad8aa6098b77599563ac4257cb2c37a42f59dfc06a1bec2bcf283bb448f319e37f0feb9a09847 languageName: node linkType: hard @@ -6163,6 +6576,18 @@ __metadata: languageName: node linkType: hard +"safe-array-concat@npm:^1.1.0": + version: 1.1.0 + resolution: "safe-array-concat@npm:1.1.0" + dependencies: + call-bind: ^1.0.5 + get-intrinsic: ^1.2.2 + has-symbols: ^1.0.3 + isarray: ^2.0.5 + checksum: 5c71eaa999168ee7474929f1cd3aae80f486353a651a094d9968936692cf90aa065224929a6486dcda66334a27dce4250a83612f9e0fef6dced1a925d3ac7296 + languageName: node + linkType: hard + "safe-buffer@npm:5.2.1, safe-buffer@npm:~5.2.0": version: 5.2.1 resolution: "safe-buffer@npm:5.2.1" @@ -6170,21 +6595,14 @@ __metadata: languageName: node linkType: hard -"safe-buffer@npm:~5.1.1": - version: 5.1.2 - resolution: "safe-buffer@npm:5.1.2" - checksum: f2f1f7943ca44a594893a852894055cf619c1fbcb611237fc39e461ae751187e7baf4dc391a72125e0ac4fb2d8c5c0b3c71529622e6a58f46b960211e704903c - languageName: node - linkType: hard - -"safe-regex-test@npm:^1.0.0": - version: 1.0.0 - resolution: "safe-regex-test@npm:1.0.0" +"safe-regex-test@npm:^1.0.3": + version: 1.0.3 + resolution: "safe-regex-test@npm:1.0.3" dependencies: - call-bind: ^1.0.2 - get-intrinsic: ^1.1.3 + call-bind: ^1.0.6 + es-errors: ^1.3.0 is-regex: ^1.1.4 - checksum: bc566d8beb8b43c01b94e67de3f070fd2781685e835959bbbaaec91cc53381145ca91f69bd837ce6ec244817afa0a5e974fc4e40a2957f0aca68ac3add1ddd34 + checksum: 6c7d392ff1ae7a3ae85273450ed02d1d131f1d2c76e177d6b03eb88e6df8fa062639070e7d311802c1615f351f18dc58f9454501c58e28d5ffd9b8f502ba6489 languageName: node linkType: hard @@ -6195,29 +6613,6 @@ __metadata: languageName: node linkType: hard -"sass@npm:^1.29.0": - version: 1.56.2 - resolution: "sass@npm:1.56.2" - dependencies: - chokidar: ">=3.0.0 <4.0.0" - immutable: ^4.0.0 - source-map-js: ">=0.6.2 <2.0.0" - bin: - sass: sass.js - checksum: 7b1f524d04bc42df3bac6dc5201ff7475635b7df9a1390430ed5bd58b6a73ea1ae58b83ccea8da293cb77b85b4c848faf5f2779ca4b91b9303948c251d0ddca4 - languageName: node - linkType: hard - -"scss-parser@npm:^1.0.4": - version: 1.0.6 - resolution: "scss-parser@npm:1.0.6" - dependencies: - invariant: 2.2.4 - lodash: 4.17.21 - checksum: f1424d73e9c6aec006df16da7222a590efc3ee9b2abb622caffb5e19ed029baf66cf0d2d7aaad1e3d84e5d7f75cf7a3f761570341f26b318b499b08a7e5cd91c - languageName: node - linkType: hard - "semver-compare@npm:^1.0.0": version: 1.0.0 resolution: "semver-compare@npm:1.0.0" @@ -6232,27 +6627,27 @@ __metadata: languageName: node linkType: hard -"semver-truncate@npm:^2.0.0": - version: 2.0.0 - resolution: "semver-truncate@npm:2.0.0" +"semver-truncate@npm:^3.0.0": + version: 3.0.0 + resolution: "semver-truncate@npm:3.0.0" dependencies: - semver: ^6.0.0 - checksum: 713c2bd49add098c3fd6271091e7c8c13908ab3f052d58a19b68920da9f101d34eb6a0c60ef4bd5fa3c345f001e0df37bb831602082441bb35ba857cac42e0f4 + semver: ^7.3.5 + checksum: d8c23812218ff147f512ac4830e86860a377dba8a9733ae97d816102aca33236fa1c44c06544727153fffb93d15d0e45c49b2c40a7964aa3671769e9aed2f3f9 languageName: node linkType: hard -"semver@npm:7.x, semver@npm:^7.0.0, semver@npm:^7.3.2, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.3.8, semver@npm:^7.5.4": - version: 7.5.4 - resolution: "semver@npm:7.5.4" +"semver@npm:7.x, semver@npm:^7.0.0, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.3.8, semver@npm:^7.5.3, semver@npm:^7.5.4": + version: 7.6.0 + resolution: "semver@npm:7.6.0" dependencies: lru-cache: ^6.0.0 bin: semver: bin/semver.js - checksum: 12d8ad952fa353b0995bf180cdac205a4068b759a140e5d3c608317098b3575ac2f1e09182206bf2eb26120e1c0ed8fb92c48c592f6099680de56bb071423ca3 + checksum: 7427f05b70786c696640edc29fdd4bc33b2acf3bbe1740b955029044f80575fc664e1a512e4113c3af21e767154a94b4aa214bf6cd6e42a1f6dba5914e0b208c languageName: node linkType: hard -"semver@npm:^6.0.0, semver@npm:^6.3.0, semver@npm:^6.3.1": +"semver@npm:^6.3.0, semver@npm:^6.3.1": version: 6.3.1 resolution: "semver@npm:6.3.1" bin: @@ -6268,6 +6663,31 @@ __metadata: languageName: node linkType: hard +"set-function-length@npm:^1.2.1": + version: 1.2.1 + resolution: "set-function-length@npm:1.2.1" + dependencies: + define-data-property: ^1.1.2 + es-errors: ^1.3.0 + function-bind: ^1.1.2 + get-intrinsic: ^1.2.3 + gopd: ^1.0.1 + has-property-descriptors: ^1.0.1 + checksum: 23742476d695f2eae86348c069bd164d4f25fa7c26546a46a2b5f370f1f84b98ec64366d2cd17785d5b41bbf16b95855da4b7eb188e7056fe3b0248d61f6afda + languageName: node + linkType: hard + +"set-function-name@npm:^2.0.1": + version: 2.0.1 + resolution: "set-function-name@npm:2.0.1" + dependencies: + define-data-property: ^1.0.1 + functions-have-names: ^1.2.3 + has-property-descriptors: ^1.0.0 + checksum: 4975d17d90c40168eee2c7c9c59d023429f0a1690a89d75656306481ece0c3c1fb1ebcc0150ea546d1913e35fbd037bace91372c69e543e51fc5d1f31a9fa126 + languageName: node + linkType: hard + "shebang-command@npm:^1.2.0": version: 1.2.0 resolution: "shebang-command@npm:1.2.0" @@ -6300,25 +6720,27 @@ __metadata: languageName: node linkType: hard -"shiki@npm:^0.11.1": - version: 0.11.1 - resolution: "shiki@npm:0.11.1" +"shiki@npm:^0.14.1": + version: 0.14.7 + resolution: "shiki@npm:0.14.7" dependencies: - jsonc-parser: ^3.0.0 - vscode-oniguruma: ^1.6.1 - vscode-textmate: ^6.0.0 - checksum: 2a4ebc3b466816263fc244ae4f67a4ff96aa74d863b9c5e7e4affc50f37fd6d1a781405de0dbf763b777bc33e49a0d441de7ff3fededb8b01e3b8dbb37e2927d + ansi-sequence-parser: ^1.1.0 + jsonc-parser: ^3.2.0 + vscode-oniguruma: ^1.7.0 + vscode-textmate: ^8.0.0 + checksum: 2aec3b3519df977c4391df9e1825cb496e9a4d7e11395f05a0da77e4fa2f7c3d9d6e6ee94029ac699533017f2b25637ee68f6d39f05f311535c2704d0329b520 languageName: node linkType: hard "side-channel@npm:^1.0.4": - version: 1.0.4 - resolution: "side-channel@npm:1.0.4" + version: 1.0.5 + resolution: "side-channel@npm:1.0.5" dependencies: - call-bind: ^1.0.0 - get-intrinsic: ^1.0.2 - object-inspect: ^1.9.0 - checksum: 351e41b947079c10bd0858364f32bb3a7379514c399edb64ab3dce683933483fc63fb5e4efe0a15a2e8a7e3c436b6a91736ddb8d8c6591b0460a24bb4a1ee245 + call-bind: ^1.0.6 + es-errors: ^1.3.0 + get-intrinsic: ^1.2.4 + object-inspect: ^1.13.1 + checksum: 640446b4e5a9554116ed6f5bec17c6740fa8da2c1a19e4d69c1202191185d4cc24f21ba0dd3ccca140eb6a8ee978d0b5bc5132f09b7962db7f9c4bc7872494ac languageName: node linkType: hard @@ -6330,13 +6752,13 @@ __metadata: linkType: hard "signal-exit@npm:^4.0.1": - version: 4.0.1 - resolution: "signal-exit@npm:4.0.1" - checksum: 832043367dca23e61ab6033e8b41c595fc805119bfe4fee63dea201cdc809a8b086bc54597bbbc1b2cde1a63c7dd554d1295ed2cca92db598233834a0b59b281 + version: 4.1.0 + resolution: "signal-exit@npm:4.1.0" + checksum: 64c757b498cb8629ffa5f75485340594d2f8189e9b08700e69199069c8e3070fb3e255f7ab873c05dc0b3cec412aea7402e10a5990cb6a050bd33ba062a6c549 languageName: node linkType: hard -"sisteransi@npm:^1.0.4": +"sisteransi@npm:^1.0.5": version: 1.0.5 resolution: "sisteransi@npm:1.0.5" checksum: aba6438f46d2bfcef94cf112c835ab395172c75f67453fe05c340c770d3c402363018ae1ab4172a1026a90c47eaccf3af7b6ff6fa749a680c2929bd7fa2b37a4 @@ -6350,6 +6772,13 @@ __metadata: languageName: node linkType: hard +"slash@npm:^4.0.0": + version: 4.0.0 + resolution: "slash@npm:4.0.0" + checksum: da8e4af73712253acd21b7853b7e0dbba776b786e82b010a5bfc8b5051a1db38ed8aba8e1e8f400dd2c9f373be91eb1c42b66e91abb407ff42b10feece5e1d2d + languageName: node + linkType: hard + "smart-buffer@npm:^4.2.0": version: 4.2.0 resolution: "smart-buffer@npm:4.2.0" @@ -6368,13 +6797,24 @@ __metadata: languageName: node linkType: hard -"socks@npm:^2.6.2": - version: 2.7.0 - resolution: "socks@npm:2.7.0" +"socks-proxy-agent@npm:^8.0.1": + version: 8.0.2 + resolution: "socks-proxy-agent@npm:8.0.2" + dependencies: + agent-base: ^7.0.2 + debug: ^4.3.4 + socks: ^2.7.1 + checksum: 4fb165df08f1f380881dcd887b3cdfdc1aba3797c76c1e9f51d29048be6e494c5b06d68e7aea2e23df4572428f27a3ec22b3d7c75c570c5346507433899a4b6d + languageName: node + linkType: hard + +"socks@npm:^2.6.2, socks@npm:^2.7.1": + version: 2.8.0 + resolution: "socks@npm:2.8.0" dependencies: - ip: ^2.0.0 + ip-address: ^9.0.5 smart-buffer: ^4.2.0 - checksum: 0b5d94e2b3c11e7937b40fc5dac1e80d8b92a330e68c51f1d271ce6980c70adca42a3f8cd47c4a5769956bada074823b53374f2dc5f2ea5c2121b222dec6eadf + checksum: b245081650c5fc112f0e10d2ee3976f5665d2191b9f86b181edd3c875d53d84a94bc173752d5be2651a450e3ef799fe7ec405dba3165890c08d9ac0b4ec1a487 languageName: node linkType: hard @@ -6403,23 +6843,24 @@ __metadata: languageName: node linkType: hard -"sort-package-json@npm:1.57.0": - version: 1.57.0 - resolution: "sort-package-json@npm:1.57.0" - dependencies: - detect-indent: ^6.0.0 - detect-newline: 3.1.0 - git-hooks-list: 1.0.3 - globby: 10.0.0 - is-plain-obj: 2.1.0 +"sort-package-json@npm:2.7.0": + version: 2.7.0 + resolution: "sort-package-json@npm:2.7.0" + dependencies: + detect-indent: ^7.0.1 + detect-newline: ^4.0.0 + get-stdin: ^9.0.0 + git-hooks-list: ^3.0.0 + globby: ^13.1.2 + is-plain-obj: ^4.1.0 sort-object-keys: ^1.1.3 bin: sort-package-json: cli.js - checksum: 15758ba6b1033ae136863eabd4b8c8a28e79dd68b71327f6803c2ea740dc149dc9ad708b006d07ee9de56b6dc7cadb7c697801ad50c01348aa91022c6ff6e21d + checksum: 3047c80c8ccd602e678c407df9f48862a613f32992676190cec332116837a65e2c345e4865cff7fad1f681faefa6c4e8cf243cf26c4a923cff369bace768626f languageName: node linkType: hard -"source-map-js@npm:>=0.6.2 <2.0.0, source-map-js@npm:^1.0.2": +"source-map-js@npm:^1.0.2": version: 1.0.2 resolution: "source-map-js@npm:1.0.2" checksum: c049a7fc4deb9a7e9b481ae3d424cc793cb4845daa690bc5a05d428bf41bf231ced49b4cf0c9e77f9d42fdb3d20d6187619fc586605f5eabe995a316da8d377c @@ -6450,17 +6891,10 @@ __metadata: languageName: node linkType: hard -"sourcemap-codec@npm:^1.4.8": - version: 1.4.8 - resolution: "sourcemap-codec@npm:1.4.8" - checksum: b57981c05611afef31605732b598ccf65124a9fcb03b833532659ac4d29ac0f7bfacbc0d6c5a28a03e84c7510e7e556d758d0bb57786e214660016fb94279316 - languageName: node - linkType: hard - "spdx-exceptions@npm:^2.1.0": - version: 2.3.0 - resolution: "spdx-exceptions@npm:2.3.0" - checksum: cb69a26fa3b46305637123cd37c85f75610e8c477b6476fa7354eb67c08128d159f1d36715f19be6f9daf4b680337deb8c65acdcae7f2608ba51931540687ac0 + version: 2.5.0 + resolution: "spdx-exceptions@npm:2.5.0" + checksum: bb127d6e2532de65b912f7c99fc66097cdea7d64c10d3ec9b5e96524dbbd7d20e01cba818a6ddb2ae75e62bb0c63d5e277a7e555a85cbc8ab40044984fa4ae15 languageName: node linkType: hard @@ -6475,9 +6909,16 @@ __metadata: linkType: hard "spdx-license-ids@npm:^3.0.0": - version: 3.0.5 - resolution: "spdx-license-ids@npm:3.0.5" - checksum: b1ceea3f87407ec375d1de90f6fc7610d6c845ff5f8db21d4d752b3d4e121df563c78113df7c564daff4e8778ad54b9a9024a7e9ea3779f13a43dd0e9128c08e + version: 3.0.17 + resolution: "spdx-license-ids@npm:3.0.17" + checksum: 0aba5d16292ff604dd20982200e23b4d425f6ba364765039bdbde2f6c956b9909fce1ad040a897916a5f87388e85e001f90cb64bf706b6e319f3908cfc445a59 + languageName: node + linkType: hard + +"sprintf-js@npm:^1.1.3": + version: 1.1.3 + resolution: "sprintf-js@npm:1.1.3" + checksum: a3fdac7b49643875b70864a9d9b469d87a40dfeaf5d34d9d0c5b1cda5fd7d065531fcb43c76357d62254c57184a7b151954156563a4d6a747015cfb41021cad0 languageName: node linkType: hard @@ -6488,6 +6929,15 @@ __metadata: languageName: node linkType: hard +"ssri@npm:^10.0.0": + version: 10.0.5 + resolution: "ssri@npm:10.0.5" + dependencies: + minipass: ^7.0.3 + checksum: 0a31b65f21872dea1ed3f7c200d7bc1c1b91c15e419deca14f282508ba917cbb342c08a6814c7f68ca4ca4116dd1a85da2bbf39227480e50125a1ceffeecb750 + languageName: node + linkType: hard + "ssri@npm:^9.0.0": version: 9.0.1 resolution: "ssri@npm:9.0.1" @@ -6498,11 +6948,11 @@ __metadata: linkType: hard "stack-utils@npm:^2.0.3": - version: 2.0.5 - resolution: "stack-utils@npm:2.0.5" + version: 2.0.6 + resolution: "stack-utils@npm:2.0.6" dependencies: escape-string-regexp: ^2.0.0 - checksum: 76b69da0f5b48a34a0f93c98ee2a96544d2c4ca2557f7eef5ddb961d3bdc33870b46f498a84a7c4f4ffb781df639840e7ebf6639164ed4da5e1aeb659615b9c7 + checksum: 052bf4d25bbf5f78e06c1d5e67de2e088b06871fa04107ca8d3f0e9d9263326e2942c8bedee3545795fc77d787d443a538345eef74db2f8e35db3558c6f91ff7 languageName: node linkType: hard @@ -6514,16 +6964,16 @@ __metadata: linkType: hard "string-length@npm:^4.0.1": - version: 4.0.1 - resolution: "string-length@npm:4.0.1" + version: 4.0.2 + resolution: "string-length@npm:4.0.2" dependencies: char-regex: ^1.0.2 strip-ansi: ^6.0.0 - checksum: 7bd3191668ddafa6f574a8b17a1bd1b085737d64ceefa51f72cdd19c45a730422cd70d984eee7584d6e5b5c84b6318633c6d6a720a4bfd7c58769985fa77573e + checksum: ce85533ef5113fcb7e522bcf9e62cb33871aa99b3729cec5595f4447f660b0cefd542ca6df4150c97a677d58b0cb727a3fe09ac1de94071d05526c73579bf505 languageName: node linkType: hard -"string-width@npm:^1.0.2 || 2 || 3 || 4, string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3": +"string-width-cjs@npm:string-width@^4.2.0, string-width@npm:^1.0.2 || 2 || 3 || 4, string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3": version: 4.2.3 resolution: "string-width@npm:4.2.3" dependencies: @@ -6534,36 +6984,47 @@ __metadata: languageName: node linkType: hard -"string.prototype.trim@npm:^1.2.7": - version: 1.2.7 - resolution: "string.prototype.trim@npm:1.2.7" +"string-width@npm:^5.0.1, string-width@npm:^5.1.2": + version: 5.1.2 + resolution: "string-width@npm:5.1.2" + dependencies: + eastasianwidth: ^0.2.0 + emoji-regex: ^9.2.2 + strip-ansi: ^7.0.1 + checksum: 7369deaa29f21dda9a438686154b62c2c5f661f8dda60449088f9f980196f7908fc39fdd1803e3e01541970287cf5deae336798337e9319a7055af89dafa7193 + languageName: node + linkType: hard + +"string.prototype.trim@npm:^1.2.8": + version: 1.2.8 + resolution: "string.prototype.trim@npm:1.2.8" dependencies: call-bind: ^1.0.2 - define-properties: ^1.1.4 - es-abstract: ^1.20.4 - checksum: 05b7b2d6af63648e70e44c4a8d10d8cc457536df78b55b9d6230918bde75c5987f6b8604438c4c8652eb55e4fc9725d2912789eb4ec457d6995f3495af190c09 + define-properties: ^1.2.0 + es-abstract: ^1.22.1 + checksum: 49eb1a862a53aba73c3fb6c2a53f5463173cb1f4512374b623bcd6b43ad49dd559a06fb5789bdec771a40fc4d2a564411c0a75d35fb27e76bbe738c211ecff07 languageName: node linkType: hard -"string.prototype.trimend@npm:^1.0.6": - version: 1.0.6 - resolution: "string.prototype.trimend@npm:1.0.6" +"string.prototype.trimend@npm:^1.0.7": + version: 1.0.7 + resolution: "string.prototype.trimend@npm:1.0.7" dependencies: call-bind: ^1.0.2 - define-properties: ^1.1.4 - es-abstract: ^1.20.4 - checksum: 0fdc34645a639bd35179b5a08227a353b88dc089adf438f46be8a7c197fc3f22f8514c1c9be4629b3cd29c281582730a8cbbad6466c60f76b5f99cf2addb132e + define-properties: ^1.2.0 + es-abstract: ^1.22.1 + checksum: 2375516272fd1ba75992f4c4aa88a7b5f3c7a9ca308d963bcd5645adf689eba6f8a04ebab80c33e30ec0aefc6554181a3a8416015c38da0aa118e60ec896310c languageName: node linkType: hard -"string.prototype.trimstart@npm:^1.0.6": - version: 1.0.6 - resolution: "string.prototype.trimstart@npm:1.0.6" +"string.prototype.trimstart@npm:^1.0.7": + version: 1.0.7 + resolution: "string.prototype.trimstart@npm:1.0.7" dependencies: call-bind: ^1.0.2 - define-properties: ^1.1.4 - es-abstract: ^1.20.4 - checksum: 89080feef416621e6ef1279588994305477a7a91648d9436490d56010a1f7adc39167cddac7ce0b9884b8cdbef086987c4dcb2960209f2af8bac0d23ceff4f41 + define-properties: ^1.2.0 + es-abstract: ^1.22.1 + checksum: 13d0c2cb0d5ff9e926fa0bec559158b062eed2b68cd5be777ffba782c96b2b492944e47057274e064549b94dd27cf81f48b27a31fee8af5b574cff253e7eb613 languageName: node linkType: hard @@ -6576,7 +7037,7 @@ __metadata: languageName: node linkType: hard -"strip-ansi@npm:^6.0.0, strip-ansi@npm:^6.0.1": +"strip-ansi-cjs@npm:strip-ansi@^6.0.1, strip-ansi@npm:^6.0.0, strip-ansi@npm:^6.0.1": version: 6.0.1 resolution: "strip-ansi@npm:6.0.1" dependencies: @@ -6585,6 +7046,15 @@ __metadata: languageName: node linkType: hard +"strip-ansi@npm:^7.0.1": + version: 7.1.0 + resolution: "strip-ansi@npm:7.1.0" + dependencies: + ansi-regex: ^6.0.1 + checksum: 859c73fcf27869c22a4e4d8c6acfe690064659e84bef9458aa6d13719d09ca88dcfd40cbf31fd0be63518ea1a643fe070b4827d353e09533a5b0b9fd4553d64d + languageName: node + linkType: hard + "strip-bom@npm:^3.0.0": version: 3.0.0 resolution: "strip-bom@npm:3.0.0" @@ -6613,7 +7083,7 @@ __metadata: languageName: node linkType: hard -"strip-json-comments@npm:^3.1.0, strip-json-comments@npm:^3.1.1": +"strip-json-comments@npm:^3.1.1": version: 3.1.1 resolution: "strip-json-comments@npm:3.1.1" checksum: 492f73e27268f9b1c122733f28ecb0e7e8d8a531a6662efbd08e22cccb3f9475e90a1b82cab06a392f6afae6d2de636f977e231296400d0ec5304ba70f166443 @@ -6672,12 +7142,12 @@ __metadata: linkType: hard "supports-hyperlinks@npm:^2.0.0": - version: 2.1.0 - resolution: "supports-hyperlinks@npm:2.1.0" + version: 2.3.0 + resolution: "supports-hyperlinks@npm:2.3.0" dependencies: has-flag: ^4.0.0 supports-color: ^7.0.0 - checksum: e4f430c870a258c9854b8bd7f166a9c1e76e3b851da84d4399d6a8f1d4a485e4ec36c16455dde80acf06c86e7c0a6df76ed22b6a4644a6ae3eced8616b3f21b5 + checksum: 9ee0de3c8ce919d453511b2b1588a8205bd429d98af94a01df87411391010fe22ca463f268c84b2ce2abad019dfff8452aa02806eeb5c905a8d7ad5c4f4c52b8 languageName: node linkType: hard @@ -6688,17 +7158,27 @@ __metadata: languageName: node linkType: hard +"synckit@npm:0.9.0": + version: 0.9.0 + resolution: "synckit@npm:0.9.0" + dependencies: + "@pkgr/core": ^0.1.0 + tslib: ^2.6.2 + checksum: c38bc3df0306c3242ddc5628d766ef0b4ca85a8a861b0a26b03483f09eca31a7fbdbcefb1b9fdee9e49db7739df25ce728cb2c6aef02ddc58bf46ee71924a36b + languageName: node + linkType: hard + "tar@npm:^6.1.11, tar@npm:^6.1.2": - version: 6.1.11 - resolution: "tar@npm:6.1.11" + version: 6.2.0 + resolution: "tar@npm:6.2.0" dependencies: chownr: ^2.0.0 fs-minipass: ^2.0.0 - minipass: ^3.0.0 + minipass: ^5.0.0 minizlib: ^2.1.1 mkdirp: ^1.0.3 yallist: ^4.0.0 - checksum: a04c07bb9e2d8f46776517d4618f2406fb977a74d914ad98b264fc3db0fe8224da5bec11e5f8902c5b9bcb8ace22d95fbe3c7b36b8593b7dfc8391a25898f32f + checksum: db4d9fe74a2082c3a5016630092c54c8375ff3b280186938cfd104f2e089c4fd9bad58688ef6be9cf186a889671bf355c7cda38f09bbf60604b281715ca57f5c languageName: node linkType: hard @@ -6815,10 +7295,10 @@ __metadata: linkType: hard "ts-node@npm:^10.7.0": - version: 10.7.0 - resolution: "ts-node@npm:10.7.0" + version: 10.9.2 + resolution: "ts-node@npm:10.9.2" dependencies: - "@cspotcode/source-map-support": 0.7.0 + "@cspotcode/source-map-support": ^0.8.0 "@tsconfig/node10": ^1.0.7 "@tsconfig/node12": ^1.0.7 "@tsconfig/node14": ^1.0.0 @@ -6829,7 +7309,7 @@ __metadata: create-require: ^1.1.0 diff: ^4.0.1 make-error: ^1.1.1 - v8-compile-cache-lib: ^3.0.0 + v8-compile-cache-lib: ^3.0.1 yn: 3.1.1 peerDependencies: "@swc/core": ">=1.2.50" @@ -6848,19 +7328,19 @@ __metadata: ts-node-script: dist/bin-script.js ts-node-transpile-only: dist/bin-transpile.js ts-script: dist/bin-script-deprecated.js - checksum: 2a379e43f7478d0b79e1e63af91fe222d83857727957df4bd3bdf3c0a884de5097b12feb9bbf530074526b8874c0338b0e6328cf334f3a5e2c49c71e837273f7 + checksum: fde256c9073969e234526e2cfead42591b9a2aec5222bac154b0de2fa9e4ceb30efcd717ee8bc785a56f3a119bdd5aa27b333d9dbec94ed254bd26f8944c67ac languageName: node linkType: hard "tsconfig-paths@npm:^3.14.1": - version: 3.14.1 - resolution: "tsconfig-paths@npm:3.14.1" + version: 3.15.0 + resolution: "tsconfig-paths@npm:3.15.0" dependencies: "@types/json5": ^0.0.29 - json5: ^1.0.1 + json5: ^1.0.2 minimist: ^1.2.6 strip-bom: ^3.0.0 - checksum: 8afa01c673ebb4782ba53d3a12df97fa837ce524f8ad38ee4e2b2fd57f5ac79abc21c574e9e9eb014d93efe7fe8214001b96233b5c6ea75bd1ea82afe17a4c6d + checksum: 59f35407a390d9482b320451f52a411a256a130ff0e7543d18c6f20afab29ac19fbe55c360a93d6476213cc335a4d76ce90f67df54c4e9037f7d240920832201 languageName: node linkType: hard @@ -6871,6 +7351,13 @@ __metadata: languageName: node linkType: hard +"tslib@npm:^2.6.2": + version: 2.6.2 + resolution: "tslib@npm:2.6.2" + checksum: 329ea56123005922f39642318e3d1f0f8265d1e7fcb92c633e0809521da75eeaca28d2cf96d7248229deb40e5c19adf408259f4b9640afd20d13aecc1430f3ad + languageName: node + linkType: hard + "tsutils@npm:^3.21.0": version: 3.21.0 resolution: "tsutils@npm:3.21.0" @@ -6898,13 +7385,6 @@ __metadata: languageName: node linkType: hard -"type-fest@npm:^0.11.0": - version: 0.11.0 - resolution: "type-fest@npm:0.11.0" - checksum: 8e7589e1eb5ced6c8e1d3051553b59b9f525c41e58baa898229915781c7bf55db8cb2f74e56d8031f6af5af2eecc7cb8da9ca3af7e5b80b49d8ca5a81891f3f9 - languageName: node - linkType: hard - "type-fest@npm:^0.20.2": version: 0.20.2 resolution: "type-fest@npm:0.20.2" @@ -6912,6 +7392,49 @@ __metadata: languageName: node linkType: hard +"type-fest@npm:^0.21.3": + version: 0.21.3 + resolution: "type-fest@npm:0.21.3" + checksum: e6b32a3b3877f04339bae01c193b273c62ba7bfc9e325b8703c4ee1b32dc8fe4ef5dfa54bf78265e069f7667d058e360ae0f37be5af9f153b22382cd55a9afe0 + languageName: node + linkType: hard + +"typed-array-buffer@npm:^1.0.1": + version: 1.0.1 + resolution: "typed-array-buffer@npm:1.0.1" + dependencies: + call-bind: ^1.0.6 + es-errors: ^1.3.0 + is-typed-array: ^1.1.13 + checksum: 1d65e46b2b9b7ec2a30df39b9ddf32e55ad08d6119aec33975506a3dba56057796bdc3c64dbeb7fdb61bf340a75e279dfd55b48ce8f3b874f01731e1da6833d2 + languageName: node + linkType: hard + +"typed-array-byte-length@npm:^1.0.0": + version: 1.0.0 + resolution: "typed-array-byte-length@npm:1.0.0" + dependencies: + call-bind: ^1.0.2 + for-each: ^0.3.3 + has-proto: ^1.0.1 + is-typed-array: ^1.1.10 + checksum: b03db16458322b263d87a702ff25388293f1356326c8a678d7515767ef563ef80e1e67ce648b821ec13178dd628eb2afdc19f97001ceae7a31acf674c849af94 + languageName: node + linkType: hard + +"typed-array-byte-offset@npm:^1.0.0": + version: 1.0.0 + resolution: "typed-array-byte-offset@npm:1.0.0" + dependencies: + available-typed-arrays: ^1.0.5 + call-bind: ^1.0.2 + for-each: ^0.3.3 + has-proto: ^1.0.1 + is-typed-array: ^1.1.10 + checksum: 04f6f02d0e9a948a95fbfe0d5a70b002191fae0b8fe0fe3130a9b2336f043daf7a3dda56a31333c35a067a97e13f539949ab261ca0f3692c41603a46a94e960b + languageName: node + linkType: hard + "typed-array-length@npm:^1.0.4": version: 1.0.4 resolution: "typed-array-length@npm:1.0.4" @@ -6924,18 +7447,18 @@ __metadata: linkType: hard "typedoc@npm:^0.23.15": - version: 0.23.15 - resolution: "typedoc@npm:0.23.15" + version: 0.23.28 + resolution: "typedoc@npm:0.23.28" dependencies: lunr: ^2.3.9 - marked: ^4.0.19 - minimatch: ^5.1.0 - shiki: ^0.11.1 + marked: ^4.2.12 + minimatch: ^7.1.3 + shiki: ^0.14.1 peerDependencies: - typescript: 4.6.x || 4.7.x || 4.8.x + typescript: 4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x bin: typedoc: bin/typedoc - checksum: 2313bcda09755332e15e40fb2e72ac8d72447abfcd60f7c555d3a232ad1fe3596afd87ddcfbdf17eb081fc65f1cbf43b02e05adf38e6ade55f64d475da4271d7 + checksum: 40eb4e207aac1b734e09400cf03f543642cc7b11000895198dd5a0d3166315759ccf4ac30a2915153597c5c186101c72bac2f1fc12b428184a9274d3a0e44c5e languageName: node linkType: hard @@ -6971,21 +7494,46 @@ __metadata: languageName: node linkType: hard -"unique-filename@npm:^1.1.1": - version: 1.1.1 - resolution: "unique-filename@npm:1.1.1" +"undici-types@npm:~5.26.4": + version: 5.26.5 + resolution: "undici-types@npm:5.26.5" + checksum: 3192ef6f3fd5df652f2dc1cd782b49d6ff14dc98e5dced492aa8a8c65425227da5da6aafe22523c67f035a272c599bb89cfe803c1db6311e44bed3042fc25487 + languageName: node + linkType: hard + +"unique-filename@npm:^2.0.0": + version: 2.0.1 + resolution: "unique-filename@npm:2.0.1" dependencies: - unique-slug: ^2.0.0 - checksum: cf4998c9228cc7647ba7814e255dec51be43673903897b1786eff2ac2d670f54d4d733357eb08dea969aa5e6875d0e1bd391d668fbdb5a179744e7c7551a6f80 + unique-slug: ^3.0.0 + checksum: 807acf3381aff319086b64dc7125a9a37c09c44af7620bd4f7f3247fcd5565660ac12d8b80534dcbfd067e6fe88a67e621386dd796a8af828d1337a8420a255f languageName: node linkType: hard -"unique-slug@npm:^2.0.0": - version: 2.0.2 - resolution: "unique-slug@npm:2.0.2" +"unique-filename@npm:^3.0.0": + version: 3.0.0 + resolution: "unique-filename@npm:3.0.0" + dependencies: + unique-slug: ^4.0.0 + checksum: 8e2f59b356cb2e54aab14ff98a51ac6c45781d15ceaab6d4f1c2228b780193dc70fae4463ce9e1df4479cb9d3304d7c2043a3fb905bdeca71cc7e8ce27e063df + languageName: node + linkType: hard + +"unique-slug@npm:^3.0.0": + version: 3.0.0 + resolution: "unique-slug@npm:3.0.0" dependencies: imurmurhash: ^0.1.4 - checksum: 5b6876a645da08d505dedb970d1571f6cebdf87044cb6b740c8dbb24f0d6e1dc8bdbf46825fd09f994d7cf50760e6f6e063cfa197d51c5902c00a861702eb75a + checksum: 49f8d915ba7f0101801b922062ee46b7953256c93ceca74303bd8e6413ae10aa7e8216556b54dc5382895e8221d04f1efaf75f945c2e4a515b4139f77aa6640c + languageName: node + linkType: hard + +"unique-slug@npm:^4.0.0": + version: 4.0.0 + resolution: "unique-slug@npm:4.0.0" + dependencies: + imurmurhash: ^0.1.4 + checksum: 0884b58365af59f89739e6f71e3feacb5b1b41f2df2d842d0757933620e6de08eff347d27e9d499b43c40476cbaf7988638d3acb2ffbcb9d35fd035591adfd15 languageName: node linkType: hard @@ -7004,11 +7552,11 @@ __metadata: linkType: hard "uri-js@npm:^4.2.2": - version: 4.4.0 - resolution: "uri-js@npm:4.4.0" + version: 4.4.1 + resolution: "uri-js@npm:4.4.1" dependencies: punycode: ^2.1.0 - checksum: 0baf85a04dda531b68f4a7e94b31f5300f1719b793ac5e5b3264db9da58dd4ceccb418236eb4535a610ab1e62edabb4e7da78eb1cb90b3171e68d261756c2702 + checksum: 7167432de6817fe8e9e0c9684f1d2de2bb688c94388f7569f7dbdb1587c9f4ca2a77962f134ec90be0cc4d004c939ff0d05acc9f34a0db39a3c797dada262633 languageName: node linkType: hard @@ -7019,35 +7567,35 @@ __metadata: languageName: node linkType: hard -"v8-compile-cache-lib@npm:^3.0.0": - version: 3.0.0 - resolution: "v8-compile-cache-lib@npm:3.0.0" - checksum: 674e312bbca796584b61dc915f33c7e7dc4e06d196e0048cb772c8964493a1ec723f1dd014d9419fd55c24a6eae148f60769da23f622e05cd13268063fa1ed6b +"v8-compile-cache-lib@npm:^3.0.1": + version: 3.0.1 + resolution: "v8-compile-cache-lib@npm:3.0.1" + checksum: 78089ad549e21bcdbfca10c08850022b22024cdcc2da9b168bcf5a73a6ed7bf01a9cebb9eac28e03cd23a684d81e0502797e88f3ccd27a32aeab1cfc44c39da0 languageName: node linkType: hard "v8-to-istanbul@npm:^9.0.1": - version: 9.0.1 - resolution: "v8-to-istanbul@npm:9.0.1" + version: 9.2.0 + resolution: "v8-to-istanbul@npm:9.2.0" dependencies: "@jridgewell/trace-mapping": ^0.3.12 "@types/istanbul-lib-coverage": ^2.0.1 - convert-source-map: ^1.6.0 - checksum: a49c34bf0a3af0c11041a3952a2600913904a983bd1bc87148b5c033bc5c1d02d5a13620fcdbfa2c60bc582a2e2970185780f0c844b4c3a220abf405f8af6311 + convert-source-map: ^2.0.0 + checksum: 31ef98c6a31b1dab6be024cf914f235408cd4c0dc56a5c744a5eea1a9e019ba279e1b6f90d695b78c3186feed391ed492380ccf095009e2eb91f3d058f0b4491 languageName: node linkType: hard -"vscode-oniguruma@npm:^1.6.1": - version: 1.6.2 - resolution: "vscode-oniguruma@npm:1.6.2" - checksum: 6b754acdafd5b68242ea5938bb00a32effc16c77f471d4f0f337d879d0e8e592622998e2441f42d9a7ff799c1593f31c11f26ca8d9bf9917e3ca881d3c1f3e19 +"vscode-oniguruma@npm:^1.7.0": + version: 1.7.0 + resolution: "vscode-oniguruma@npm:1.7.0" + checksum: 53519d91d90593e6fb080260892e87d447e9b200c4964d766772b5053f5699066539d92100f77f1302c91e8fc5d9c772fbe40fe4c90f3d411a96d5a9b1e63f42 languageName: node linkType: hard -"vscode-textmate@npm:^6.0.0": - version: 6.0.0 - resolution: "vscode-textmate@npm:6.0.0" - checksum: ff6f17a406c2906586afc14ef01cb122e33acd35312e815abb5c924347a777c6783ce3fe7db8b83f1760ebf843c669843b9390f905b69c433b3395af28e4b483 +"vscode-textmate@npm:^8.0.0": + version: 8.0.0 + resolution: "vscode-textmate@npm:8.0.0" + checksum: 127780dfea89559d70b8326df6ec344cfd701312dd7f3f591a718693812b7852c30b6715e3cfc8b3200a4e2515b4c96f0843c0eacc0a3020969b5de262c2a4bb languageName: node linkType: hard @@ -7073,21 +7621,20 @@ __metadata: languageName: node linkType: hard -"which-typed-array@npm:^1.1.9": - version: 1.1.10 - resolution: "which-typed-array@npm:1.1.10" +"which-typed-array@npm:^1.1.14": + version: 1.1.14 + resolution: "which-typed-array@npm:1.1.14" dependencies: - available-typed-arrays: ^1.0.5 - call-bind: ^1.0.2 + available-typed-arrays: ^1.0.6 + call-bind: ^1.0.5 for-each: ^0.3.3 gopd: ^1.0.1 - has-tostringtag: ^1.0.0 - is-typed-array: ^1.1.10 - checksum: 149f54f5d11773ce938c60a2c36306720a1824eccb62bda0620170932c2783fa50ad0226254c5741a962e35c7ccba5f4e4c402b8618cb3b4f2cf47bf5e6ade31 + has-tostringtag: ^1.0.1 + checksum: efe30c143c58630dde8ab96f9330e20165bacd77ca843c602b510120a415415573bcdef3ccbc30a0e5aaf20f257360cfe24712aea0008f149ce5bb99834c0c0b languageName: node linkType: hard -"which@npm:^1.2.9": +"which@npm:^1.2.14, which@npm:^1.2.9": version: 1.3.1 resolution: "which@npm:1.3.1" dependencies: @@ -7110,13 +7657,24 @@ __metadata: linkType: hard "which@npm:^3.0.0": - version: 3.0.0 - resolution: "which@npm:3.0.0" + version: 3.0.1 + resolution: "which@npm:3.0.1" dependencies: isexe: ^2.0.0 bin: node-which: bin/which.js - checksum: fdcf3cadab414e60b86c6836e7ac9de9273561a8926f57cbc28641b602a771527239ee4d47f2689ed255666f035ba0a0d72390986cc0c4e45344491adc7d0eeb + checksum: adf720fe9d84be2d9190458194f814b5e9015ae4b88711b150f30d0f4d0b646544794b86f02c7ebeec1db2029bc3e83a7ff156f542d7521447e5496543e26890 + languageName: node + linkType: hard + +"which@npm:^4.0.0": + version: 4.0.0 + resolution: "which@npm:4.0.0" + dependencies: + isexe: ^3.1.1 + bin: + node-which: bin/which.js + checksum: f17e84c042592c21e23c8195108cff18c64050b9efb8459589116999ea9da6dd1509e6a1bac3aeebefd137be00fabbb61b5c2bc0aa0f8526f32b58ee2f545651 languageName: node linkType: hard @@ -7129,7 +7687,7 @@ __metadata: languageName: node linkType: hard -"wrap-ansi@npm:^7.0.0": +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0, wrap-ansi@npm:^7.0.0": version: 7.0.0 resolution: "wrap-ansi@npm:7.0.0" dependencies: @@ -7140,6 +7698,17 @@ __metadata: languageName: node linkType: hard +"wrap-ansi@npm:^8.1.0": + version: 8.1.0 + resolution: "wrap-ansi@npm:8.1.0" + dependencies: + ansi-styles: ^6.1.0 + string-width: ^5.0.1 + strip-ansi: ^7.0.1 + checksum: 371733296dc2d616900ce15a0049dca0ef67597d6394c57347ba334393599e800bab03c41d4d45221b6bc967b8c453ec3ae4749eff3894202d16800fdfe0e238 + languageName: node + linkType: hard + "wrappy@npm:1": version: 1.0.2 resolution: "wrappy@npm:1.0.2" @@ -7203,9 +7772,9 @@ __metadata: linkType: hard "yargs-parser@npm:^20.2.2": - version: 20.2.7 - resolution: "yargs-parser@npm:20.2.7" - checksum: ec0ea9e1b5699977380583f5ab1c0e2c6fc5f1ed374eb3053c458df00c543effba53628ad3297f3ccc769660518d5e376fd1cfb298b8e37077421aca8d75ae89 + version: 20.2.9 + resolution: "yargs-parser@npm:20.2.9" + checksum: 8bb69015f2b0ff9e17b2c8e6bfe224ab463dd00ca211eece72a4cd8a906224d2703fb8a326d36fdd0e68701e201b2a60ed7cf81ce0fd9b3799f9fe7745977ae3 languageName: node linkType: hard @@ -7216,7 +7785,7 @@ __metadata: languageName: node linkType: hard -"yargs@npm:^16.1.0, yargs@npm:^16.2.0": +"yargs@npm:^16.2.0": version: 16.2.0 resolution: "yargs@npm:16.2.0" dependencies: From 43afb368d27a9fbbca51ee0c92ba0fac5dd7b3b4 Mon Sep 17 00:00:00 2001 From: Kanthesha Devaramane Date: Fri, 16 Feb 2024 17:47:21 +0000 Subject: [PATCH 02/12] yarn lock --- yarn.lock | 3260 ++++++++++++++++++++++------------------------------- 1 file changed, 1350 insertions(+), 1910 deletions(-) diff --git a/yarn.lock b/yarn.lock index bca5657..ab1a2ef 100644 --- a/yarn.lock +++ b/yarn.lock @@ -22,68 +22,68 @@ __metadata: languageName: node linkType: hard -"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.23.5": - version: 7.23.5 - resolution: "@babel/code-frame@npm:7.23.5" +"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.22.13": + version: 7.22.13 + resolution: "@babel/code-frame@npm:7.22.13" dependencies: - "@babel/highlight": ^7.23.4 + "@babel/highlight": ^7.22.13 chalk: ^2.4.2 - checksum: d90981fdf56a2824a9b14d19a4c0e8db93633fd488c772624b4e83e0ceac6039a27cd298a247c3214faa952bf803ba23696172ae7e7235f3b97f43ba278c569a + checksum: 22e342c8077c8b77eeb11f554ecca2ba14153f707b85294fcf6070b6f6150aae88a7b7436dd88d8c9289970585f3fe5b9b941c5aa3aa26a6d5a8ef3f292da058 languageName: node linkType: hard -"@babel/compat-data@npm:^7.23.5": - version: 7.23.5 - resolution: "@babel/compat-data@npm:7.23.5" - checksum: 06ce244cda5763295a0ea924728c09bae57d35713b675175227278896946f922a63edf803c322f855a3878323d48d0255a2a3023409d2a123483c8a69ebb4744 +"@babel/compat-data@npm:^7.22.9": + version: 7.23.2 + resolution: "@babel/compat-data@npm:7.23.2" + checksum: d8dc27437d40907b271161d4c88ffe72ccecb034c730deb1960a417b59a14d7c5ebca8cd80dd458a01cd396a7a329eb48cddcc3791b5a84da33d7f278f7bec6a languageName: node linkType: hard "@babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3": - version: 7.23.9 - resolution: "@babel/core@npm:7.23.9" + version: 7.23.2 + resolution: "@babel/core@npm:7.23.2" dependencies: "@ampproject/remapping": ^2.2.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/helpers": ^7.23.9 - "@babel/parser": ^7.23.9 - "@babel/template": ^7.23.9 - "@babel/traverse": ^7.23.9 - "@babel/types": ^7.23.9 + "@babel/code-frame": ^7.22.13 + "@babel/generator": ^7.23.0 + "@babel/helper-compilation-targets": ^7.22.15 + "@babel/helper-module-transforms": ^7.23.0 + "@babel/helpers": ^7.23.2 + "@babel/parser": ^7.23.0 + "@babel/template": ^7.22.15 + "@babel/traverse": ^7.23.2 + "@babel/types": ^7.23.0 convert-source-map: ^2.0.0 debug: ^4.1.0 gensync: ^1.0.0-beta.2 json5: ^2.2.3 semver: ^6.3.1 - checksum: 634a511f74db52a5f5a283c1121f25e2227b006c095b84a02a40a9213842489cd82dc7d61cdc74e10b5bcd9bb0a4e28bab47635b54c7e2256d47ab57356e2a76 + checksum: 003897718ded16f3b75632d63cd49486bf67ff206cc7ebd1a10d49e2456f8d45740910d5ec7e42e3faf0deec7a2e96b1a02e766d19a67a8309053f0d4e57c0fe languageName: node linkType: hard -"@babel/generator@npm:^7.23.6, @babel/generator@npm:^7.7.2": - version: 7.23.6 - resolution: "@babel/generator@npm:7.23.6" +"@babel/generator@npm:^7.23.0, @babel/generator@npm:^7.7.2": + version: 7.23.0 + resolution: "@babel/generator@npm:7.23.0" dependencies: - "@babel/types": ^7.23.6 + "@babel/types": ^7.23.0 "@jridgewell/gen-mapping": ^0.3.2 "@jridgewell/trace-mapping": ^0.3.17 jsesc: ^2.5.1 - checksum: 1a1a1c4eac210f174cd108d479464d053930a812798e09fee069377de39a893422df5b5b146199ead7239ae6d3a04697b45fc9ac6e38e0f6b76374390f91fc6c + checksum: 8efe24adad34300f1f8ea2add420b28171a646edc70f2a1b3e1683842f23b8b7ffa7e35ef0119294e1901f45bfea5b3dc70abe1f10a1917ccdfb41bed69be5f1 languageName: node linkType: hard -"@babel/helper-compilation-targets@npm:^7.23.6": - version: 7.23.6 - resolution: "@babel/helper-compilation-targets@npm:7.23.6" +"@babel/helper-compilation-targets@npm:^7.22.15": + version: 7.22.15 + resolution: "@babel/helper-compilation-targets@npm:7.22.15" dependencies: - "@babel/compat-data": ^7.23.5 - "@babel/helper-validator-option": ^7.23.5 - browserslist: ^4.22.2 + "@babel/compat-data": ^7.22.9 + "@babel/helper-validator-option": ^7.22.15 + browserslist: ^4.21.9 lru-cache: ^5.1.1 semver: ^6.3.1 - checksum: c630b98d4527ac8fe2c58d9a06e785dfb2b73ec71b7c4f2ddf90f814b5f75b547f3c015f110a010fd31f76e3864daaf09f3adcd2f6acdbfb18a8de3a48717590 + checksum: ce85196769e091ae54dd39e4a80c2a9df1793da8588e335c383d536d54f06baf648d0a08fc873044f226398c4ded15c4ae9120ee18e7dfd7c639a68e3cdc9980 languageName: node linkType: hard @@ -122,9 +122,9 @@ __metadata: languageName: node linkType: hard -"@babel/helper-module-transforms@npm:^7.23.3": - version: 7.23.3 - resolution: "@babel/helper-module-transforms@npm:7.23.3" +"@babel/helper-module-transforms@npm:^7.23.0": + version: 7.23.0 + resolution: "@babel/helper-module-transforms@npm:7.23.0" dependencies: "@babel/helper-environment-visitor": ^7.22.20 "@babel/helper-module-imports": ^7.22.15 @@ -133,7 +133,7 @@ __metadata: "@babel/helper-validator-identifier": ^7.22.20 peerDependencies: "@babel/core": ^7.0.0 - checksum: 5d0895cfba0e16ae16f3aa92fee108517023ad89a855289c4eb1d46f7aef4519adf8e6f971e1d55ac20c5461610e17213f1144097a8f932e768a9132e2278d71 + checksum: 6e2afffb058cf3f8ce92f5116f710dda4341c81cfcd872f9a0197ea594f7ce0ab3cb940b0590af2fe99e60d2e5448bfba6bca8156ed70a2ed4be2adc8586c891 languageName: node linkType: hard @@ -162,10 +162,10 @@ __metadata: languageName: node linkType: hard -"@babel/helper-string-parser@npm:^7.23.4": - version: 7.23.4 - resolution: "@babel/helper-string-parser@npm:7.23.4" - checksum: c0641144cf1a7e7dc93f3d5f16d5327465b6cf5d036b48be61ecba41e1eece161b48f46b7f960951b67f8c3533ce506b16dece576baef4d8b3b49f8c65410f90 +"@babel/helper-string-parser@npm:^7.22.5": + version: 7.22.5 + resolution: "@babel/helper-string-parser@npm:7.22.5" + checksum: 836851ca5ec813077bbb303acc992d75a360267aa3b5de7134d220411c852a6f17de7c0d0b8c8dcc0f567f67874c00f4528672b2a4f1bc978a3ada64c8c78467 languageName: node linkType: hard @@ -176,41 +176,50 @@ __metadata: languageName: node linkType: hard -"@babel/helper-validator-option@npm:^7.23.5": - version: 7.23.5 - resolution: "@babel/helper-validator-option@npm:7.23.5" - checksum: 537cde2330a8aede223552510e8a13e9c1c8798afee3757995a7d4acae564124fe2bf7e7c3d90d62d3657434a74340a274b3b3b1c6f17e9a2be1f48af29cb09e +"@babel/helper-validator-option@npm:^7.22.15": + version: 7.22.15 + resolution: "@babel/helper-validator-option@npm:7.22.15" + checksum: 68da52b1e10002a543161494c4bc0f4d0398c8fdf361d5f7f4272e95c45d5b32d974896d44f6a0ea7378c9204988879d73613ca683e13bd1304e46d25ff67a8d languageName: node linkType: hard -"@babel/helpers@npm:^7.23.9": - version: 7.23.9 - resolution: "@babel/helpers@npm:7.23.9" +"@babel/helpers@npm:^7.23.2": + version: 7.23.2 + resolution: "@babel/helpers@npm:7.23.2" dependencies: - "@babel/template": ^7.23.9 - "@babel/traverse": ^7.23.9 - "@babel/types": ^7.23.9 - checksum: 2678231192c0471dbc2fc403fb19456cc46b1afefcfebf6bc0f48b2e938fdb0fef2e0fe90c8c8ae1f021dae5012b700372e4b5d15867f1d7764616532e4a6324 + "@babel/template": ^7.22.15 + "@babel/traverse": ^7.23.2 + "@babel/types": ^7.23.0 + checksum: aaf4828df75ec460eaa70e5c9f66e6dadc28dae3728ddb7f6c13187dbf38030e142194b83d81aa8a31bbc35a5529a5d7d3f3cf59d5d0b595f5dd7f9d8f1ced8e languageName: node linkType: hard -"@babel/highlight@npm:^7.23.4": - version: 7.23.4 - resolution: "@babel/highlight@npm:7.23.4" +"@babel/highlight@npm:^7.22.13": + version: 7.22.20 + resolution: "@babel/highlight@npm:7.22.20" dependencies: "@babel/helper-validator-identifier": ^7.22.20 chalk: ^2.4.2 js-tokens: ^4.0.0 - checksum: 643acecdc235f87d925979a979b539a5d7d1f31ae7db8d89047269082694122d11aa85351304c9c978ceeb6d250591ccadb06c366f358ccee08bb9c122476b89 + checksum: 84bd034dca309a5e680083cd827a766780ca63cef37308404f17653d32366ea76262bd2364b2d38776232f2d01b649f26721417d507e8b4b6da3e4e739f6d134 + languageName: node + linkType: hard + +"@babel/parser@npm:7.16.4": + version: 7.16.4 + resolution: "@babel/parser@npm:7.16.4" + bin: + parser: ./bin/babel-parser.js + checksum: ce0a8f92f440f2a12bc932f070a7b60c5133bf8a63f461841f9e39af0194f573707959d606c6fad1a2fd496a45148553afd9b74d3b8dd36cdb7861598d1f3e36 languageName: node linkType: hard -"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.23.0, @babel/parser@npm:^7.23.9": - version: 7.23.9 - resolution: "@babel/parser@npm:7.23.9" +"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.16.4, @babel/parser@npm:^7.22.15, @babel/parser@npm:^7.23.0": + version: 7.23.0 + resolution: "@babel/parser@npm:7.23.0" bin: parser: ./bin/babel-parser.js - checksum: e7cd4960ac8671774e13803349da88d512f9292d7baa952173260d3e8f15620a28a3701f14f709d769209022f9e7b79965256b8be204fc550cfe783cdcabe7c7 + checksum: 453fdf8b9e2c2b7d7b02139e0ce003d1af21947bbc03eb350fb248ee335c9b85e4ab41697ddbdd97079698de825a265e45a0846bb2ed47a2c7c1df833f42a354 languageName: node linkType: hard @@ -347,53 +356,53 @@ __metadata: linkType: hard "@babel/plugin-syntax-typescript@npm:^7.7.2": - version: 7.23.3 - resolution: "@babel/plugin-syntax-typescript@npm:7.23.3" + version: 7.22.5 + resolution: "@babel/plugin-syntax-typescript@npm:7.22.5" dependencies: "@babel/helper-plugin-utils": ^7.22.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: abfad3a19290d258b028e285a1f34c9b8a0cbe46ef79eafed4ed7ffce11b5d0720b5e536c82f91cbd8442cde35a3dd8e861fa70366d87ff06fdc0d4756e30876 + checksum: 8ab7718fbb026d64da93681a57797d60326097fd7cb930380c8bffd9eb101689e90142c760a14b51e8e69c88a73ba3da956cb4520a3b0c65743aee5c71ef360a languageName: node linkType: hard -"@babel/template@npm:^7.22.15, @babel/template@npm:^7.23.9, @babel/template@npm:^7.3.3": - version: 7.23.9 - resolution: "@babel/template@npm:7.23.9" +"@babel/template@npm:^7.22.15, @babel/template@npm:^7.3.3": + version: 7.22.15 + resolution: "@babel/template@npm:7.22.15" dependencies: - "@babel/code-frame": ^7.23.5 - "@babel/parser": ^7.23.9 - "@babel/types": ^7.23.9 - checksum: 6e67414c0f7125d7ecaf20c11fab88085fa98a96c3ef10da0a61e962e04fdf3a18a496a66047005ddd1bb682a7cc7842d556d1db2f3f3f6ccfca97d5e445d342 + "@babel/code-frame": ^7.22.13 + "@babel/parser": ^7.22.15 + "@babel/types": ^7.22.15 + checksum: 1f3e7dcd6c44f5904c184b3f7fe280394b191f2fed819919ffa1e529c259d5b197da8981b6ca491c235aee8dbad4a50b7e31304aa531271cb823a4a24a0dd8fd languageName: node linkType: hard -"@babel/traverse@npm:^7.23.2, @babel/traverse@npm:^7.23.9, @babel/traverse@npm:^7.7.2": - version: 7.23.9 - resolution: "@babel/traverse@npm:7.23.9" +"@babel/traverse@npm:^7.12.5, @babel/traverse@npm:^7.23.2, @babel/traverse@npm:^7.7.2": + version: 7.23.2 + resolution: "@babel/traverse@npm:7.23.2" dependencies: - "@babel/code-frame": ^7.23.5 - "@babel/generator": ^7.23.6 + "@babel/code-frame": ^7.22.13 + "@babel/generator": ^7.23.0 "@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.23.9 - "@babel/types": ^7.23.9 - debug: ^4.3.1 + "@babel/parser": ^7.23.0 + "@babel/types": ^7.23.0 + debug: ^4.1.0 globals: ^11.1.0 - checksum: a932f7aa850e158c00c97aad22f639d48c72805c687290f6a73e30c5c4957c07f5d28310c9bf59648e2980fe6c9d16adeb2ff92a9ca0f97fa75739c1328fc6c3 + checksum: 26a1eea0dde41ab99dde8b9773a013a0dc50324e5110a049f5d634e721ff08afffd54940b3974a20308d7952085ac769689369e9127dea655f868c0f6e1ab35d languageName: node linkType: hard -"@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.22.15, @babel/types@npm:^7.22.5, @babel/types@npm:^7.23.0, @babel/types@npm:^7.23.6, @babel/types@npm:^7.23.9, @babel/types@npm:^7.3.3, @babel/types@npm:^7.8.3": - version: 7.23.9 - resolution: "@babel/types@npm:7.23.9" +"@babel/types@npm:^7.0.0, @babel/types@npm:^7.22.15, @babel/types@npm:^7.22.5, @babel/types@npm:^7.23.0, @babel/types@npm:^7.3.0, @babel/types@npm:^7.3.3, @babel/types@npm:^7.8.3": + version: 7.23.0 + resolution: "@babel/types@npm:7.23.0" dependencies: - "@babel/helper-string-parser": ^7.23.4 + "@babel/helper-string-parser": ^7.22.5 "@babel/helper-validator-identifier": ^7.22.20 to-fast-properties: ^2.0.0 - checksum: 0a9b008e9bfc89beb8c185e620fa0f8ed6c771f1e1b2e01e1596870969096fec7793898a1d64a035176abf1dd13e2668ee30bf699f2d92c210a8128f4b151e65 + checksum: 215fe04bd7feef79eeb4d33374b39909ce9cad1611c4135a4f7fdf41fe3280594105af6d7094354751514625ea92d0875aba355f53e86a92600f290e77b0e604 languageName: node linkType: hard @@ -404,12 +413,19 @@ __metadata: languageName: node linkType: hard -"@cspotcode/source-map-support@npm:^0.8.0": - version: 0.8.1 - resolution: "@cspotcode/source-map-support@npm:0.8.1" +"@cspotcode/source-map-consumer@npm:0.8.0": + version: 0.8.0 + resolution: "@cspotcode/source-map-consumer@npm:0.8.0" + checksum: c0c16ca3d2f58898f1bd74c4f41a189dbcc202e642e60e489cbcc2e52419c4e89bdead02c886a12fb13ea37798ede9e562b2321df997ebc210ae9bd881561b4e + languageName: node + linkType: hard + +"@cspotcode/source-map-support@npm:0.7.0": + version: 0.7.0 + resolution: "@cspotcode/source-map-support@npm:0.7.0" dependencies: - "@jridgewell/trace-mapping": 0.3.9 - checksum: 5718f267085ed8edb3e7ef210137241775e607ee18b77d95aa5bd7514f47f5019aa2d82d96b3bf342ef7aa890a346fa1044532ff7cc3009e7d24fce3ce6200fa + "@cspotcode/source-map-consumer": 0.8.0 + checksum: 9faddda7757cd778b5fd6812137b2cc265810043680d6399acc20441668fafcdc874053be9dccd0d9110087287bfad27eb3bf342f72bceca9aa9059f5d0c4be8 languageName: node linkType: hard @@ -435,16 +451,16 @@ __metadata: languageName: node linkType: hard -"@eslint-community/regexpp@npm:^4.4.0, @eslint-community/regexpp@npm:^4.6.1": - version: 4.10.0 - resolution: "@eslint-community/regexpp@npm:4.10.0" - checksum: 2a6e345429ea8382aaaf3a61f865cae16ed44d31ca917910033c02dc00d505d939f10b81e079fa14d43b51499c640138e153b7e40743c4c094d9df97d4e56f7b +"@eslint-community/regexpp@npm:^4.4.0": + version: 4.5.1 + resolution: "@eslint-community/regexpp@npm:4.5.1" + checksum: 6d901166d64998d591fab4db1c2f872981ccd5f6fe066a1ad0a93d4e11855ecae6bfb76660869a469563e8882d4307228cebd41142adb409d182f2966771e57e languageName: node linkType: hard -"@eslint/eslintrc@npm:^2.1.4": - version: 2.1.4 - resolution: "@eslint/eslintrc@npm:2.1.4" +"@eslint/eslintrc@npm:^2.1.0": + version: 2.1.0 + resolution: "@eslint/eslintrc@npm:2.1.0" dependencies: ajv: ^6.12.4 debug: ^4.3.2 @@ -455,14 +471,14 @@ __metadata: js-yaml: ^4.1.0 minimatch: ^3.1.2 strip-json-comments: ^3.1.1 - checksum: 10957c7592b20ca0089262d8c2a8accbad14b4f6507e35416c32ee6b4dbf9cad67dfb77096bbd405405e9ada2b107f3797fe94362e1c55e0b09d6e90dd149127 + checksum: d5ed0adbe23f6571d8c9bb0ca6edf7618dc6aed4046aa56df7139f65ae7b578874e0d9c796df784c25bda648ceb754b6320277d828c8b004876d7443b8dc018c languageName: node linkType: hard -"@eslint/js@npm:8.56.0": - version: 8.56.0 - resolution: "@eslint/js@npm:8.56.0" - checksum: 5804130574ef810207bdf321c265437814e7a26f4e6fac9b496de3206afd52f533e09ec002a3be06cd9adcc9da63e727f1883938e663c4e4751c007d5b58e539 +"@eslint/js@npm:8.44.0": + version: 8.44.0 + resolution: "@eslint/js@npm:8.44.0" + checksum: fc539583226a28f5677356e9f00d2789c34253f076643d2e32888250e509a4e13aafe0880cb2425139051de0f3a48d25bfc5afa96b7304f203b706c17340e3cf languageName: node linkType: hard @@ -515,14 +531,14 @@ __metadata: languageName: node linkType: hard -"@humanwhocodes/config-array@npm:^0.11.13": - version: 0.11.14 - resolution: "@humanwhocodes/config-array@npm:0.11.14" +"@humanwhocodes/config-array@npm:^0.11.10": + version: 0.11.10 + resolution: "@humanwhocodes/config-array@npm:0.11.10" dependencies: - "@humanwhocodes/object-schema": ^2.0.2 - debug: ^4.3.1 + "@humanwhocodes/object-schema": ^1.2.1 + debug: ^4.1.1 minimatch: ^3.0.5 - checksum: 861ccce9eaea5de19546653bccf75bf09fe878bc39c3aab00aeee2d2a0e654516adad38dd1098aab5e3af0145bbcbf3f309bdf4d964f8dab9dcd5834ae4c02f2 + checksum: 1b1302e2403d0e35bc43e66d67a2b36b0ad1119efc704b5faff68c41f791a052355b010fb2d27ef022670f550de24cd6d08d5ecf0821c16326b7dcd0ee5d5d8a languageName: node linkType: hard @@ -533,10 +549,10 @@ __metadata: languageName: node linkType: hard -"@humanwhocodes/object-schema@npm:^2.0.2": - version: 2.0.2 - resolution: "@humanwhocodes/object-schema@npm:2.0.2" - checksum: 2fc11503361b5fb4f14714c700c02a3f4c7c93e9acd6b87a29f62c522d90470f364d6161b03d1cc618b979f2ae02aed1106fd29d302695d8927e2fc8165ba8ee +"@humanwhocodes/object-schema@npm:^1.2.1": + version: 1.2.1 + resolution: "@humanwhocodes/object-schema@npm:1.2.1" + checksum: a824a1ec31591231e4bad5787641f59e9633827d0a2eaae131a288d33c9ef0290bd16fda8da6f7c0fcb014147865d12118df10db57f27f41e20da92369fcb3f1 languageName: node linkType: hard @@ -578,20 +594,6 @@ __metadata: languageName: node linkType: hard -"@isaacs/cliui@npm:^8.0.2": - version: 8.0.2 - resolution: "@isaacs/cliui@npm:8.0.2" - dependencies: - string-width: ^5.1.2 - string-width-cjs: "npm:string-width@^4.2.0" - strip-ansi: ^7.0.1 - strip-ansi-cjs: "npm:strip-ansi@^6.0.1" - wrap-ansi: ^8.1.0 - wrap-ansi-cjs: "npm:wrap-ansi@^7.0.0" - checksum: 4a473b9b32a7d4d3cfb7a614226e555091ff0c5a29a1734c28c72a182c2f6699b26fc6b5c2131dfd841e86b185aea714c72201d7c98c2fba5f17709333a67aeb - languageName: node - linkType: hard - "@istanbuljs/load-nyc-config@npm:^1.0.0": version: 1.1.0 resolution: "@istanbuljs/load-nyc-config@npm:1.1.0" @@ -606,9 +608,9 @@ __metadata: linkType: hard "@istanbuljs/schema@npm:^0.1.2": - version: 0.1.3 - resolution: "@istanbuljs/schema@npm:0.1.3" - checksum: 5282759d961d61350f33d9118d16bcaed914ebf8061a52f4fa474b2cb08720c9c81d165e13b82f2e5a8a212cc5af482f0c6fc1ac27b9e067e5394c9a6ed186c9 + version: 0.1.2 + resolution: "@istanbuljs/schema@npm:0.1.2" + checksum: 5ce9facf2f0e3f4a93e56853cdfd78456e22d2c210c677530046e9c634ddc323dd62423ac711cd3554b5be06052c87fb8e0c266aa9010726940654c357290e78 languageName: node linkType: hard @@ -854,10 +856,10 @@ __metadata: languageName: node linkType: hard -"@jridgewell/resolve-uri@npm:^3.0.3, @jridgewell/resolve-uri@npm:^3.1.0": - version: 3.1.2 - resolution: "@jridgewell/resolve-uri@npm:3.1.2" - checksum: 83b85f72c59d1c080b4cbec0fef84528963a1b5db34e4370fa4bd1e3ff64a0d80e0cee7369d11d73c704e0286fb2865b530acac7a871088fbe92b5edf1000870 +"@jridgewell/resolve-uri@npm:^3.1.0": + version: 3.1.1 + resolution: "@jridgewell/resolve-uri@npm:3.1.1" + checksum: f5b441fe7900eab4f9155b3b93f9800a916257f4e8563afbcd3b5a5337b55e52bd8ae6735453b1b745457d9f6cdb16d74cd6220bbdd98cf153239e13f6cbb653 languageName: node linkType: hard @@ -868,62 +870,59 @@ __metadata: languageName: node linkType: hard -"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14, @jridgewell/sourcemap-codec@npm:^1.4.15": +"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14": version: 1.4.15 resolution: "@jridgewell/sourcemap-codec@npm:1.4.15" checksum: b881c7e503db3fc7f3c1f35a1dd2655a188cc51a3612d76efc8a6eb74728bef5606e6758ee77423e564092b4a518aba569bbb21c9bac5ab7a35b0c6ae7e344c8 languageName: node linkType: hard -"@jridgewell/trace-mapping@npm:0.3.9": - version: 0.3.9 - resolution: "@jridgewell/trace-mapping@npm:0.3.9" - dependencies: - "@jridgewell/resolve-uri": ^3.0.3 - "@jridgewell/sourcemap-codec": ^1.4.10 - checksum: d89597752fd88d3f3480845691a05a44bd21faac18e2185b6f436c3b0fd0c5a859fbbd9aaa92050c4052caf325ad3e10e2e1d1b64327517471b7d51babc0ddef - languageName: node - linkType: hard - "@jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.13, @jridgewell/trace-mapping@npm:^0.3.17, @jridgewell/trace-mapping@npm:^0.3.9": - version: 0.3.22 - resolution: "@jridgewell/trace-mapping@npm:0.3.22" + version: 0.3.20 + resolution: "@jridgewell/trace-mapping@npm:0.3.20" dependencies: "@jridgewell/resolve-uri": ^3.1.0 "@jridgewell/sourcemap-codec": ^1.4.14 - checksum: ac7dd2cfe0b479aa1b81776d40d789243131cc792dc8b6b6a028c70fcd6171958ae1a71bf67b618ffe3c0c3feead9870c095ee46a5e30319410d92976b28f498 + checksum: cd1a7353135f385909468ff0cf20bdd37e59f2ee49a13a966dedf921943e222082c583ade2b579ff6cd0d8faafcb5461f253e1bf2a9f48fec439211fdbe788f5 languageName: node linkType: hard -"@lavamoat/aa@npm:^3.1.5": - version: 3.1.5 - resolution: "@lavamoat/aa@npm:3.1.5" +"@lavamoat/aa@npm:^3.1.1": + version: 3.1.2 + resolution: "@lavamoat/aa@npm:3.1.2" dependencies: - resolve: ^1.22.3 + resolve: ^1.20.0 bin: lavamoat-ls: src/cli.js - checksum: 46ced120a30e9472c2e448bd6af694911c644ee036d6cd0087692b47c553b5ac26748a9bff1e99f1220f672579bce664fb48cb2f39884fd0b1a45d16b9195e48 + checksum: e580278f2119e26b968105b1ba61d9285537b2577b2f2a256c12d4e623bc544eb7664989855b90e7b2aee6ed23222179423a0c9009f67995ded85678e132332f languageName: node linkType: hard "@lavamoat/allow-scripts@npm:^2.3.1": - version: 2.5.1 - resolution: "@lavamoat/allow-scripts@npm:2.5.1" + version: 2.3.1 + resolution: "@lavamoat/allow-scripts@npm:2.3.1" dependencies: - "@lavamoat/aa": ^3.1.5 + "@lavamoat/aa": ^3.1.1 "@npmcli/run-script": ^6.0.0 bin-links: 4.0.1 npm-normalize-package-bin: ^3.0.0 yargs: ^16.2.0 bin: allow-scripts: src/cli.js - checksum: 5f249803b13ad1d2900d1be7d500135b3898f700465e748e7f9d88a7c5a8b07829a0665910d4047ffd65877babe94a80c8e8c9ad8ee02e61446e89bcd4179611 + checksum: 334612c1ecd357f0143542837ba9982b16e884e4091083b7f437ddc48e79071e3e5503bc3eaa65adf5aa84e4e3021abc074438dd202a72b80ad6fff785caad69 + languageName: node + linkType: hard + +"@lavamoat/preinstall-always-fail@npm:^1.0.0": + version: 1.0.0 + resolution: "@lavamoat/preinstall-always-fail@npm:1.0.0" + checksum: 93af02b34c8a7d99296025fd2052272f26310b38998c07b39f698ba395a5543b450dea41d3a26005c83a634738e6f7de01a7cea0eb5552cfe83abe619c3e7b31 languageName: node linkType: hard "@metamask/auto-changelog@npm:^3.1.0": - version: 3.4.4 - resolution: "@metamask/auto-changelog@npm:3.4.4" + version: 3.4.2 + resolution: "@metamask/auto-changelog@npm:3.4.2" dependencies: diff: ^5.0.0 execa: ^5.1.1 @@ -932,18 +931,18 @@ __metadata: yargs: ^17.0.1 bin: auto-changelog: dist/cli.js - checksum: 4876ab3ec98f6d0c00a0679f9e44e1ee79d335ae97e18336a638ac19484cac30d2f3750e6875121ee07b0da128f8609490bed0e195c8153c2b74866f34e405ed + checksum: b922db20b3ff8a1957b71128d481c08fdf5ae465a89a03bccacf31cba227e56e48f6b1654ff4c78150cc0cfd3ae57a615d3ab5ab6760f7437e0b9e8aa6aec390 languageName: node linkType: hard "@metamask/eslint-config-jest@npm:^12.0.0": - version: 12.1.0 - resolution: "@metamask/eslint-config-jest@npm:12.1.0" + version: 12.0.0 + resolution: "@metamask/eslint-config-jest@npm:12.0.0" peerDependencies: "@metamask/eslint-config": ^12.0.0 eslint: ^8.27.0 eslint-plugin-jest: ^27.1.5 - checksum: 98f60234412051d429237dbf32b147a648a0e3b6adacafda24999ec9eb8096155c8000c62204415100c97980cc3bfe0a0fe19e4c318b8bb529eaf57e9f96e680 + checksum: 80b3366c558f7c466e2cb7a63b9633b8c1fc374a7730f43bb7136a3bb6fe29d473f09473084d8858f0e89970706787d8fae131ee963693b97722e74929e633b2 languageName: node linkType: hard @@ -959,15 +958,15 @@ __metadata: linkType: hard "@metamask/eslint-config-typescript@npm:^12.0.0": - version: 12.1.0 - resolution: "@metamask/eslint-config-typescript@npm:12.1.0" + version: 12.0.0 + resolution: "@metamask/eslint-config-typescript@npm:12.0.0" peerDependencies: "@metamask/eslint-config": ^12.0.0 "@typescript-eslint/eslint-plugin": ^5.42.1 "@typescript-eslint/parser": ^5.42.1 eslint: ^8.27.0 - typescript: ~4.8.4 || ~5.0 || ~5.1 - checksum: a854574e4c2ca7b036d0a2a454aecb93ba538d1b92c1615878dfe06a14972df6af2fcdd5e2911ef369b3b2eeb04b8c6879bd037c618a35f6cb98950cdab84d50 + typescript: ~4.8.4 + checksum: 0faaa408b33b9d6141e0db2600580cc746f20b858aacbc5d38e52df5b6644a9c985ab105c59c0304135bb09876daf79cc046b2ef20f71fdc9999785da9bf7d49 languageName: node linkType: hard @@ -991,6 +990,7 @@ __metadata: resolution: "@metamask/module-lint@workspace:." dependencies: "@lavamoat/allow-scripts": ^2.3.1 + "@lavamoat/preinstall-always-fail": ^1.0.0 "@metamask/auto-changelog": ^3.1.0 "@metamask/eslint-config": ^12.0.0 "@metamask/eslint-config-jest": ^12.0.0 @@ -1009,7 +1009,7 @@ __metadata: dependency-graph: ^0.11.0 eslint: ^8.44.0 eslint-config-prettier: ^8.8.0 - eslint-plugin-import: 2.26.0 + eslint-plugin-import: ^2.27.5 eslint-plugin-jest: ^27.2.2 eslint-plugin-jsdoc: ^39.9.1 eslint-plugin-n: ^15.7.0 @@ -1037,8 +1037,8 @@ __metadata: linkType: soft "@metamask/utils@npm:^8.2.0": - version: 8.3.0 - resolution: "@metamask/utils@npm:8.3.0" + version: 8.2.0 + resolution: "@metamask/utils@npm:8.2.0" dependencies: "@ethereumjs/tx": ^4.2.0 "@noble/hashes": ^1.3.1 @@ -1048,7 +1048,7 @@ __metadata: pony-cause: ^2.1.10 semver: ^7.5.4 superstruct: ^1.0.3 - checksum: cd60c49b4c0397fb31e6b38937a0d9346cbb8337cb8add59db8db0e0e2156fb063ff4df93a26410157f0cc02aa9a9b785fc1b53cfc4ab73204462893ed11cacb + checksum: 1c70c0f9c375bfa3836c15d48990dbea1c3cadfd3dd69b4867667116c09c3bdeef70a0c7027f1cdea88a9913cb846dc94812ece91be7ec32e65a62e00281b04c languageName: node linkType: hard @@ -1068,19 +1068,26 @@ __metadata: languageName: node linkType: hard -"@noble/curves@npm:1.3.0, @noble/curves@npm:~1.3.0": - version: 1.3.0 - resolution: "@noble/curves@npm:1.3.0" +"@noble/curves@npm:1.1.0, @noble/curves@npm:~1.1.0": + version: 1.1.0 + resolution: "@noble/curves@npm:1.1.0" dependencies: - "@noble/hashes": 1.3.3 - checksum: b65342ee66c4a440eee2978524412eabba9a9efdd16d6370e15218c6a7d80bddf35e66bb57ed52c0dfd32cb9a717b439ab3a72db618f1a0066dfebe3fd12a421 + "@noble/hashes": 1.3.1 + checksum: 2658cdd3f84f71079b4e3516c47559d22cf4b55c23ac8ee9d2b1f8e5b72916d9689e59820e0f9d9cb4a46a8423af5b56dc6bb7782405c88be06a015180508db5 + languageName: node + linkType: hard + +"@noble/hashes@npm:1.3.1": + version: 1.3.1 + resolution: "@noble/hashes@npm:1.3.1" + checksum: 7fdefc0f7a0c1ec27acc6ff88841793e3f93ec4ce6b8a6a12bfc0dd70ae6b7c4c82fe305fdfeda1735d5ad4a9eebe761e6693b3d355689c559e91242f4bc95b1 languageName: node linkType: hard -"@noble/hashes@npm:1.3.3, @noble/hashes@npm:^1.3.1, @noble/hashes@npm:~1.3.2": - version: 1.3.3 - resolution: "@noble/hashes@npm:1.3.3" - checksum: 8a6496d1c0c64797339bc694ad06cdfaa0f9e56cd0c3f68ae3666cfb153a791a55deb0af9c653c7ed2db64d537aa3e3054629740d2f2338bb1dcb7ab60cd205b +"@noble/hashes@npm:^1.3.1, @noble/hashes@npm:~1.3.0, @noble/hashes@npm:~1.3.1": + version: 1.3.2 + resolution: "@noble/hashes@npm:1.3.2" + checksum: fe23536b436539d13f90e4b9be843cc63b1b17666a07634a2b1259dded6f490be3d050249e6af98076ea8f2ea0d56f578773c2197f2aa0eeaa5fba5bc18ba474 languageName: node linkType: hard @@ -1111,45 +1118,23 @@ __metadata: languageName: node linkType: hard -"@npmcli/agent@npm:^2.0.0": - version: 2.2.1 - resolution: "@npmcli/agent@npm:2.2.1" - dependencies: - agent-base: ^7.1.0 - http-proxy-agent: ^7.0.0 - https-proxy-agent: ^7.0.1 - lru-cache: ^10.0.1 - socks-proxy-agent: ^8.0.1 - checksum: c69aca42dbba393f517bc5777ee872d38dc98ea0e5e93c1f6d62b82b8fecdc177a57ea045f07dda1a770c592384b2dd92a5e79e21e2a7cf51c9159466a8f9c9b - languageName: node - linkType: hard - "@npmcli/fs@npm:^2.1.0": - version: 2.1.2 - resolution: "@npmcli/fs@npm:2.1.2" + version: 2.1.0 + resolution: "@npmcli/fs@npm:2.1.0" dependencies: "@gar/promisify": ^1.1.3 semver: ^7.3.5 - checksum: 405074965e72d4c9d728931b64d2d38e6ea12066d4fad651ac253d175e413c06fe4350970c783db0d749181da8fe49c42d3880bd1cbc12cd68e3a7964d820225 - languageName: node - linkType: hard - -"@npmcli/fs@npm:^3.1.0": - version: 3.1.0 - resolution: "@npmcli/fs@npm:3.1.0" - dependencies: - semver: ^7.3.5 - checksum: a50a6818de5fc557d0b0e6f50ec780a7a02ab8ad07e5ac8b16bf519e0ad60a144ac64f97d05c443c3367235d337182e1d012bbac0eb8dbae8dc7b40b193efd0e + checksum: 6ec6d678af6da49f9dac50cd882d7f661934dd278972ffbaacde40d9eaa2871292d634000a0cca9510f6fc29855fbd4af433e1adbff90a524ec3eaf140f1219b languageName: node linkType: hard "@npmcli/move-file@npm:^2.0.0": - version: 2.0.1 - resolution: "@npmcli/move-file@npm:2.0.1" + version: 2.0.0 + resolution: "@npmcli/move-file@npm:2.0.0" dependencies: mkdirp: ^1.0.4 rimraf: ^3.0.2 - checksum: 52dc02259d98da517fae4cb3a0a3850227bdae4939dda1980b788a7670636ca2b4a01b58df03dd5f65c1e3cb70c50fa8ce5762b582b3f499ec30ee5ce1fd9380 + checksum: 1388777b507b0c592d53f41b9d182e1a8de7763bc625fc07999b8edbc22325f074e5b3ec90af79c89d6987fdb2325bc66d59f483258543c14a43661621f841b0 languageName: node linkType: hard @@ -1170,64 +1155,50 @@ __metadata: linkType: hard "@npmcli/run-script@npm:^6.0.0": - version: 6.0.2 - resolution: "@npmcli/run-script@npm:6.0.2" + version: 6.0.1 + resolution: "@npmcli/run-script@npm:6.0.1" dependencies: "@npmcli/node-gyp": ^3.0.0 "@npmcli/promise-spawn": ^6.0.0 node-gyp: ^9.0.0 read-package-json-fast: ^3.0.0 which: ^3.0.0 - checksum: 7a671d7dbeae376496e1c6242f02384928617dc66cd22881b2387272205c3668f8490ec2da4ad63e1abf979efdd2bdf4ea0926601d78578e07d83cfb233b3a1a - languageName: node - linkType: hard - -"@pkgjs/parseargs@npm:^0.11.0": - version: 0.11.0 - resolution: "@pkgjs/parseargs@npm:0.11.0" - checksum: 6ad6a00fc4f2f2cfc6bff76fb1d88b8ee20bc0601e18ebb01b6d4be583733a860239a521a7fbca73b612e66705078809483549d2b18f370eb346c5155c8e4a0f - languageName: node - linkType: hard - -"@pkgr/core@npm:^0.1.0": - version: 0.1.1 - resolution: "@pkgr/core@npm:0.1.1" - checksum: 6f25fd2e3008f259c77207ac9915b02f1628420403b2630c92a07ff963129238c9262afc9e84344c7a23b5cc1f3965e2cd17e3798219f5fd78a63d144d3cceba + checksum: dcc99755f67a535d57d95f25cdaecf414d1adffba4058cbf940fbffce27a953c6d95e40aed127e913ed14c8ac3d9b6223ef002beebd525574750a4be861425d7 languageName: node linkType: hard -"@scure/base@npm:^1.1.3, @scure/base@npm:~1.1.4": - version: 1.1.5 - resolution: "@scure/base@npm:1.1.5" - checksum: 9e9ee6088cb3aa0fb91f5a48497d26682c7829df3019b1251d088d166d7a8c0f941c68aaa8e7b96bbad20c71eb210397cb1099062cde3e29d4bad6b975c18519 +"@scure/base@npm:^1.1.3, @scure/base@npm:~1.1.0": + version: 1.1.3 + resolution: "@scure/base@npm:1.1.3" + checksum: 1606ab8a4db898cb3a1ada16c15437c3bce4e25854fadc8eb03ae93cbbbac1ed90655af4b0be3da37e12056fef11c0374499f69b9e658c9e5b7b3e06353c630c languageName: node linkType: hard -"@scure/bip32@npm:1.3.3": - version: 1.3.3 - resolution: "@scure/bip32@npm:1.3.3" +"@scure/bip32@npm:1.3.1": + version: 1.3.1 + resolution: "@scure/bip32@npm:1.3.1" dependencies: - "@noble/curves": ~1.3.0 - "@noble/hashes": ~1.3.2 - "@scure/base": ~1.1.4 - checksum: f939ca733972622fcc1e61d4fdf170a0ad294b24ddb7ed7cdd4c467e1ef283b970154cb101cf5f1a7b64cf5337e917ad31135911dfc36b1d76625320167df2fa + "@noble/curves": ~1.1.0 + "@noble/hashes": ~1.3.1 + "@scure/base": ~1.1.0 + checksum: 394d65f77a40651eba21a5096da0f4233c3b50d422864751d373fcf142eeedb94a1149f9ab1dbb078086dab2d0bc27e2b1afec8321bf22d4403c7df2fea5bfe2 languageName: node linkType: hard -"@scure/bip39@npm:1.2.2": - version: 1.2.2 - resolution: "@scure/bip39@npm:1.2.2" +"@scure/bip39@npm:1.2.1": + version: 1.2.1 + resolution: "@scure/bip39@npm:1.2.1" dependencies: - "@noble/hashes": ~1.3.2 - "@scure/base": ~1.1.4 - checksum: cb99505e6d2deef8e55e81df8c563ce8dbfdf1595596dc912bceadcf366c91b05a98130e928ecb090df74efdb20150b64acc4be55bc42768cab4d39a2833d234 + "@noble/hashes": ~1.3.0 + "@scure/base": ~1.1.0 + checksum: c5bd6f1328fdbeae2dcdd891825b1610225310e5e62a4942714db51066866e4f7bef242c7b06a1b9dcc8043a4a13412cf5c5df76d3b10aa9e36b82e9b6e3eeaa languageName: node linkType: hard "@sinclair/typebox@npm:^0.24.1": - version: 0.24.51 - resolution: "@sinclair/typebox@npm:0.24.51" - checksum: fd0d855e748ef767eb19da1a60ed0ab928e91e0f358c1dd198d600762c0015440b15755e96d1176e2a0db7e09c6a64ed487828ee10dd0c3e22f61eb09c478cd0 + version: 0.24.28 + resolution: "@sinclair/typebox@npm:0.24.28" + checksum: adc1f06c548f0c495dad5a7124394242553e059c5ea3faa19f404b43958125366513240f17fa2b5272a3aec18618cab4137d5c85259e99ce9eaca67538af2732 languageName: node linkType: hard @@ -1239,11 +1210,11 @@ __metadata: linkType: hard "@sinonjs/commons@npm:^1.7.0": - version: 1.8.6 - resolution: "@sinonjs/commons@npm:1.8.6" + version: 1.8.1 + resolution: "@sinonjs/commons@npm:1.8.1" dependencies: type-detect: 4.0.8 - checksum: 7d3f8c1e85f30cd4e83594fc19b7a657f14d49eb8d95a30095631ce15e906c869e0eff96c5b93dffea7490c00418b07f54582ba49c6560feb2a8c34c0b16832d + checksum: 8f258c039275d217b654c94731409208a3530c56f64ebc2a1bddaa82045800c7f9dbd09806d6dc451ee12cb79c7a5d509a58ad28179a83336da266ba5c231912 languageName: node linkType: hard @@ -1257,13 +1228,12 @@ __metadata: linkType: hard "@swc/cli@npm:^0.1.62": - version: 0.1.65 - resolution: "@swc/cli@npm:0.1.65" + version: 0.1.62 + resolution: "@swc/cli@npm:0.1.62" dependencies: "@mole-inc/bin-wrapper": ^8.0.1 commander: ^7.1.0 fast-glob: ^3.2.5 - minimatch: ^9.0.3 semver: ^7.3.8 slash: 3.0.0 source-map: ^0.7.3 @@ -1277,96 +1247,94 @@ __metadata: spack: bin/spack.js swc: bin/swc.js swcx: bin/swcx.js - checksum: 8c8336176ebcf41ee709a0c67c08004bab6359d0109e0232fc334a8e902d3a171bc85ea533722199a7e8aa935adaefbf35bc07d1b6bc8117a596b9fb14905a9c + checksum: d44e88a724ba32d4f63856f15899f8eff78d90d0c5452e4882412307bf6353a64b25e7dc9992fd6e3975c87e6c0d7b494d859a0d8badb9f3c6103623ca89ddc2 languageName: node linkType: hard -"@swc/core-darwin-arm64@npm:1.4.1": - version: 1.4.1 - resolution: "@swc/core-darwin-arm64@npm:1.4.1" +"@swc/core-darwin-arm64@npm:1.3.66": + version: 1.3.66 + resolution: "@swc/core-darwin-arm64@npm:1.3.66" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"@swc/core-darwin-x64@npm:1.4.1": - version: 1.4.1 - resolution: "@swc/core-darwin-x64@npm:1.4.1" +"@swc/core-darwin-x64@npm:1.3.66": + version: 1.3.66 + resolution: "@swc/core-darwin-x64@npm:1.3.66" conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"@swc/core-linux-arm-gnueabihf@npm:1.4.1": - version: 1.4.1 - resolution: "@swc/core-linux-arm-gnueabihf@npm:1.4.1" +"@swc/core-linux-arm-gnueabihf@npm:1.3.66": + version: 1.3.66 + resolution: "@swc/core-linux-arm-gnueabihf@npm:1.3.66" conditions: os=linux & cpu=arm languageName: node linkType: hard -"@swc/core-linux-arm64-gnu@npm:1.4.1": - version: 1.4.1 - resolution: "@swc/core-linux-arm64-gnu@npm:1.4.1" +"@swc/core-linux-arm64-gnu@npm:1.3.66": + version: 1.3.66 + resolution: "@swc/core-linux-arm64-gnu@npm:1.3.66" conditions: os=linux & cpu=arm64 & libc=glibc languageName: node linkType: hard -"@swc/core-linux-arm64-musl@npm:1.4.1": - version: 1.4.1 - resolution: "@swc/core-linux-arm64-musl@npm:1.4.1" +"@swc/core-linux-arm64-musl@npm:1.3.66": + version: 1.3.66 + resolution: "@swc/core-linux-arm64-musl@npm:1.3.66" conditions: os=linux & cpu=arm64 & libc=musl languageName: node linkType: hard -"@swc/core-linux-x64-gnu@npm:1.4.1": - version: 1.4.1 - resolution: "@swc/core-linux-x64-gnu@npm:1.4.1" +"@swc/core-linux-x64-gnu@npm:1.3.66": + version: 1.3.66 + resolution: "@swc/core-linux-x64-gnu@npm:1.3.66" conditions: os=linux & cpu=x64 & libc=glibc languageName: node linkType: hard -"@swc/core-linux-x64-musl@npm:1.4.1": - version: 1.4.1 - resolution: "@swc/core-linux-x64-musl@npm:1.4.1" +"@swc/core-linux-x64-musl@npm:1.3.66": + version: 1.3.66 + resolution: "@swc/core-linux-x64-musl@npm:1.3.66" conditions: os=linux & cpu=x64 & libc=musl languageName: node linkType: hard -"@swc/core-win32-arm64-msvc@npm:1.4.1": - version: 1.4.1 - resolution: "@swc/core-win32-arm64-msvc@npm:1.4.1" +"@swc/core-win32-arm64-msvc@npm:1.3.66": + version: 1.3.66 + resolution: "@swc/core-win32-arm64-msvc@npm:1.3.66" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard -"@swc/core-win32-ia32-msvc@npm:1.4.1": - version: 1.4.1 - resolution: "@swc/core-win32-ia32-msvc@npm:1.4.1" +"@swc/core-win32-ia32-msvc@npm:1.3.66": + version: 1.3.66 + resolution: "@swc/core-win32-ia32-msvc@npm:1.3.66" conditions: os=win32 & cpu=ia32 languageName: node linkType: hard -"@swc/core-win32-x64-msvc@npm:1.4.1": - version: 1.4.1 - resolution: "@swc/core-win32-x64-msvc@npm:1.4.1" +"@swc/core-win32-x64-msvc@npm:1.3.66": + version: 1.3.66 + resolution: "@swc/core-win32-x64-msvc@npm:1.3.66" conditions: os=win32 & cpu=x64 languageName: node linkType: hard "@swc/core@npm:^1.3.66": - version: 1.4.1 - resolution: "@swc/core@npm:1.4.1" - dependencies: - "@swc/core-darwin-arm64": 1.4.1 - "@swc/core-darwin-x64": 1.4.1 - "@swc/core-linux-arm-gnueabihf": 1.4.1 - "@swc/core-linux-arm64-gnu": 1.4.1 - "@swc/core-linux-arm64-musl": 1.4.1 - "@swc/core-linux-x64-gnu": 1.4.1 - "@swc/core-linux-x64-musl": 1.4.1 - "@swc/core-win32-arm64-msvc": 1.4.1 - "@swc/core-win32-ia32-msvc": 1.4.1 - "@swc/core-win32-x64-msvc": 1.4.1 - "@swc/counter": ^0.1.2 - "@swc/types": ^0.1.5 + version: 1.3.66 + resolution: "@swc/core@npm:1.3.66" + dependencies: + "@swc/core-darwin-arm64": 1.3.66 + "@swc/core-darwin-x64": 1.3.66 + "@swc/core-linux-arm-gnueabihf": 1.3.66 + "@swc/core-linux-arm64-gnu": 1.3.66 + "@swc/core-linux-arm64-musl": 1.3.66 + "@swc/core-linux-x64-gnu": 1.3.66 + "@swc/core-linux-x64-musl": 1.3.66 + "@swc/core-win32-arm64-msvc": 1.3.66 + "@swc/core-win32-ia32-msvc": 1.3.66 + "@swc/core-win32-x64-msvc": 1.3.66 peerDependencies: "@swc/helpers": ^0.5.0 dependenciesMeta: @@ -1393,21 +1361,7 @@ __metadata: peerDependenciesMeta: "@swc/helpers": optional: true - checksum: 3549b4a0ba8201be2dd39954ef8375df5d028da5688a68211dc5cbf69ff7a43533e9ffd36f629095f51555552f4df52116384ef779d5ec45c2b9de938e651d57 - languageName: node - linkType: hard - -"@swc/counter@npm:^0.1.2": - version: 0.1.3 - resolution: "@swc/counter@npm:0.1.3" - checksum: df8f9cfba9904d3d60f511664c70d23bb323b3a0803ec9890f60133954173047ba9bdeabce28cd70ba89ccd3fd6c71c7b0bd58be85f611e1ffbe5d5c18616598 - languageName: node - linkType: hard - -"@swc/types@npm:^0.1.5": - version: 0.1.5 - resolution: "@swc/types@npm:0.1.5" - checksum: 6aee11f62d3d805a64848e0bd5f0e0e615f958e327a9e1260056c368d7d28764d89e38bd8005a536c9bf18afbcd303edd84099d60df34a2975d62540f61df13b + checksum: e6029c648ba47c522bed51a9f2fee606f82de1f9233e2e89197e43b0a4867054174ca05e825e688cdc4de332221c0da2e12ba7ba875549e8b5432aa70fe19263 languageName: node linkType: hard @@ -1435,71 +1389,71 @@ __metadata: linkType: hard "@tsconfig/node10@npm:^1.0.7": - version: 1.0.9 - resolution: "@tsconfig/node10@npm:1.0.9" - checksum: a33ae4dc2a621c0678ac8ac4bceb8e512ae75dac65417a2ad9b022d9b5411e863c4c198b6ba9ef659e14b9fb609bbec680841a2e84c1172df7a5ffcf076539df + version: 1.0.8 + resolution: "@tsconfig/node10@npm:1.0.8" + checksum: b8d5fffbc6b17ef64ef74f7fdbccee02a809a063ade785c3648dae59406bc207f70ea2c4296f92749b33019fa36a5ae716e42e49cc7f1bbf0fd147be0d6b970a languageName: node linkType: hard "@tsconfig/node12@npm:^1.0.7": - version: 1.0.11 - resolution: "@tsconfig/node12@npm:1.0.11" - checksum: 5ce29a41b13e7897a58b8e2df11269c5395999e588b9a467386f99d1d26f6c77d1af2719e407621412520ea30517d718d5192a32403b8dfcc163bf33e40a338a + version: 1.0.9 + resolution: "@tsconfig/node12@npm:1.0.9" + checksum: a01b2400ab3582b86b589c6d31dcd0c0656f333adecde85d6d7d4086adb059808b82692380bb169546d189bf771ae21d02544a75b57bd6da4a5dd95f8567bec9 languageName: node linkType: hard "@tsconfig/node14@npm:^1.0.0": - version: 1.0.3 - resolution: "@tsconfig/node14@npm:1.0.3" - checksum: 19275fe80c4c8d0ad0abed6a96dbf00642e88b220b090418609c4376e1cef81bf16237bf170ad1b341452feddb8115d8dd2e5acdfdea1b27422071163dc9ba9d + version: 1.0.1 + resolution: "@tsconfig/node14@npm:1.0.1" + checksum: 976345e896c0f059867f94f8d0f6ddb8b1844fb62bf36b727de8a9a68f024857e5db97ed51d3325e23e0616a5e48c034ff51a8d595b3fe7e955f3587540489be languageName: node linkType: hard "@tsconfig/node16@npm:^1.0.2": - version: 1.0.4 - resolution: "@tsconfig/node16@npm:1.0.4" - checksum: 202319785901f942a6e1e476b872d421baec20cf09f4b266a1854060efbf78cde16a4d256e8bc949d31e6cd9a90f1e8ef8fb06af96a65e98338a2b6b0de0a0ff + version: 1.0.2 + resolution: "@tsconfig/node16@npm:1.0.2" + checksum: ca94d3639714672bbfd55f03521d3f56bb6a25479bd425da81faf21f13e1e9d15f40f97377dedbbf477a5841c5b0c8f4cd1b391f33553d750b9202c54c2c07aa languageName: node linkType: hard "@types/babel__core@npm:^7.1.14": - version: 7.20.5 - resolution: "@types/babel__core@npm:7.20.5" + version: 7.1.19 + resolution: "@types/babel__core@npm:7.1.19" dependencies: - "@babel/parser": ^7.20.7 - "@babel/types": ^7.20.7 + "@babel/parser": ^7.1.0 + "@babel/types": ^7.0.0 "@types/babel__generator": "*" "@types/babel__template": "*" "@types/babel__traverse": "*" - checksum: a3226f7930b635ee7a5e72c8d51a357e799d19cbf9d445710fa39ab13804f79ab1a54b72ea7d8e504659c7dfc50675db974b526142c754398d7413aa4bc30845 + checksum: 8c9fa87a1c2224cbec251683a58bebb0d74c497118034166aaa0491a4e2627998a6621fc71f8a60ffd27d9c0c52097defedf7637adc6618d0331c15adb302338 languageName: node linkType: hard "@types/babel__generator@npm:*": - version: 7.6.8 - resolution: "@types/babel__generator@npm:7.6.8" + version: 7.6.1 + resolution: "@types/babel__generator@npm:7.6.1" dependencies: "@babel/types": ^7.0.0 - checksum: 5b332ea336a2efffbdeedb92b6781949b73498606ddd4205462f7d96dafd45ff3618770b41de04c4881e333dd84388bfb8afbdf6f2764cbd98be550d85c6bb48 + checksum: d4b1f967fdf3fcc9648bce12ed3de5492abe645c643be36a3ce348051a7da405f2fea504821468a99bfb2089e622faa1fa85688ceb482bb6c8c4af85db31a752 languageName: node linkType: hard "@types/babel__template@npm:*": - version: 7.4.4 - resolution: "@types/babel__template@npm:7.4.4" + version: 7.0.2 + resolution: "@types/babel__template@npm:7.0.2" dependencies: "@babel/parser": ^7.1.0 "@babel/types": ^7.0.0 - checksum: d7a02d2a9b67e822694d8e6a7ddb8f2b71a1d6962dfd266554d2513eefbb205b33ca71a0d163b1caea3981ccf849211f9964d8bd0727124d18ace45aa6c9ae29 + checksum: ce04f0ab702d7d4c753c09e08db3e61e5fc69375ea70f5c991110511b7286124070ca70e260e8074614f8a339424de7e387c08033eaf0a9f5c81a93e350965a8 languageName: node linkType: hard "@types/babel__traverse@npm:*, @types/babel__traverse@npm:^7.0.6": - version: 7.20.5 - resolution: "@types/babel__traverse@npm:7.20.5" + version: 7.0.14 + resolution: "@types/babel__traverse@npm:7.0.14" dependencies: - "@babel/types": ^7.20.7 - checksum: 608e0ab4fc31cd47011d98942e6241b34d461608c0c0e153377c5fd822c436c475f1ded76a56bfa76a1adf8d9266b727bbf9bfac90c4cb152c97f30dadc5b7e8 + "@babel/types": ^7.3.0 + checksum: cd72f7f1d48da4ee02aaa3627259bd189d1addccbec2f05cf670f0a2bf42a1b9c882ead4ae29429d054848f8ebe941c22100c8f5d131e91ae65b1b26667f5491 languageName: node linkType: hard @@ -1515,70 +1469,87 @@ __metadata: languageName: node linkType: hard +"@types/color-name@npm:^1.1.1": + version: 1.1.1 + resolution: "@types/color-name@npm:1.1.1" + checksum: b71fcad728cc68abcba1d405742134410c8f8eb3c2ef18113b047afca158ad23a4f2c229bcf71a38f4a818dead375c45b20db121d0e69259c2d81e97a740daa6 + languageName: node + linkType: hard + "@types/debug@npm:^4.1.7": - version: 4.1.12 - resolution: "@types/debug@npm:4.1.12" + version: 4.1.10 + resolution: "@types/debug@npm:4.1.10" dependencies: "@types/ms": "*" - checksum: 47876a852de8240bfdaf7481357af2b88cb660d30c72e73789abf00c499d6bc7cd5e52f41c915d1b9cd8ec9fef5b05688d7b7aef17f7f272c2d04679508d1053 + checksum: 938f79c5b610f851da9c67ecd8641a09b33ce9cb38fe4c9f4d20ee743d6bccb5d8e9a833a4cd23e0684a316622af67a0634fa706baea5a01f5219961d1976314 + languageName: node + linkType: hard + +"@types/glob@npm:^7.1.1": + version: 7.1.3 + resolution: "@types/glob@npm:7.1.3" + dependencies: + "@types/minimatch": "*" + "@types/node": "*" + checksum: e0eef12285f548f15d887145590594a04ccce7f7e645fb047cbac18cb093f25d507ffbcc725312294c224bb78cf980fce33e5807de8d6f8a868b4186253499d4 languageName: node linkType: hard "@types/graceful-fs@npm:^4.1.3": - version: 4.1.9 - resolution: "@types/graceful-fs@npm:4.1.9" + version: 4.1.5 + resolution: "@types/graceful-fs@npm:4.1.5" dependencies: "@types/node": "*" - checksum: 79d746a8f053954bba36bd3d94a90c78de995d126289d656fb3271dd9f1229d33f678da04d10bce6be440494a5a73438e2e363e92802d16b8315b051036c5256 + checksum: d076bb61f45d0fc42dee496ef8b1c2f8742e15d5e47e90e20d0243386e426c04d4efd408a48875ab432f7960b4ce3414db20ed0fbbfc7bcc89d84e574f6e045a languageName: node linkType: hard "@types/http-cache-semantics@npm:*": - version: 4.0.4 - resolution: "@types/http-cache-semantics@npm:4.0.4" - checksum: 7f4dd832e618bc1e271be49717d7b4066d77c2d4eed5b81198eb987e532bb3e1c7e02f45d77918185bad936f884b700c10cebe06305f50400f382ab75055f9e8 + version: 4.0.1 + resolution: "@types/http-cache-semantics@npm:4.0.1" + checksum: 1048aacf627829f0d5f00184e16548205cd9f964bf0841c29b36bc504509230c40bc57c39778703a1c965a6f5b416ae2cbf4c1d4589c889d2838dd9dbfccf6e9 languageName: node linkType: hard "@types/istanbul-lib-coverage@npm:*, @types/istanbul-lib-coverage@npm:^2.0.0, @types/istanbul-lib-coverage@npm:^2.0.1": - version: 2.0.6 - resolution: "@types/istanbul-lib-coverage@npm:2.0.6" - checksum: 3feac423fd3e5449485afac999dcfcb3d44a37c830af898b689fadc65d26526460bedb889db278e0d4d815a670331796494d073a10ee6e3a6526301fe7415778 + version: 2.0.3 + resolution: "@types/istanbul-lib-coverage@npm:2.0.3" + checksum: 0650cba4be8f464bee89b9de0b71a5ea3b5cc676ce24e1196b5d6a51542ce9e613ae4549bf19756bb33dbbbb32b47931040266100062bfb197c597d73e341eb0 languageName: node linkType: hard "@types/istanbul-lib-report@npm:*": - version: 3.0.3 - resolution: "@types/istanbul-lib-report@npm:3.0.3" + version: 3.0.0 + resolution: "@types/istanbul-lib-report@npm:3.0.0" dependencies: "@types/istanbul-lib-coverage": "*" - checksum: b91e9b60f865ff08cb35667a427b70f6c2c63e88105eadd29a112582942af47ed99c60610180aa8dcc22382fa405033f141c119c69b95db78c4c709fbadfeeb4 + checksum: 656398b62dc288e1b5226f8880af98087233cdb90100655c989a09f3052b5775bf98ba58a16c5ae642fb66c61aba402e07a9f2bff1d1569e3b306026c59f3f36 languageName: node linkType: hard "@types/istanbul-reports@npm:^3.0.0": - version: 3.0.4 - resolution: "@types/istanbul-reports@npm:3.0.4" + version: 3.0.0 + resolution: "@types/istanbul-reports@npm:3.0.0" dependencies: "@types/istanbul-lib-report": "*" - checksum: 93eb18835770b3431f68ae9ac1ca91741ab85f7606f310a34b3586b5a34450ec038c3eed7ab19266635499594de52ff73723a54a72a75b9f7d6a956f01edee95 + checksum: 286a18cff19c4dac4321b9ea406a3560faf577fb2a4df5abf9d577fa81ba831c9baa7d40d03f1daf7fe613d468546b731c00b844b72fad9834c583311a35bb7b languageName: node linkType: hard "@types/jest@npm:^28.1.6": - version: 28.1.8 - resolution: "@types/jest@npm:28.1.8" + version: 28.1.7 + resolution: "@types/jest@npm:28.1.7" dependencies: expect: ^28.0.0 pretty-format: ^28.0.0 - checksum: d4cd36158a3ae1d4b42cc48a77c95de74bc56b84cf81e09af3ee0399c34f4a7da8ab9e787570f10004bd642f9e781b0033c37327fbbf4a8e4b6e37e8ee3693a7 + checksum: 17c9bf9667cd4f062eba5aa9eaea248927bf6479da1cc009e0b7d26d501f460f068dd23eddb67d2602264e915a30b63ae7c9cbb516723ffd18589f6f9d267d43 languageName: node linkType: hard "@types/json-schema@npm:^7.0.9": - version: 7.0.15 - resolution: "@types/json-schema@npm:7.0.15" - checksum: 97ed0cb44d4070aecea772b7b2e2ed971e10c81ec87dd4ecc160322ffa55ff330dace1793489540e3e318d90942064bb697cc0f8989391797792d919737b3b98 + version: 7.0.11 + resolution: "@types/json-schema@npm:7.0.11" + checksum: 527bddfe62db9012fccd7627794bd4c71beb77601861055d87e3ee464f2217c85fca7a4b56ae677478367bbd248dbde13553312b7d4dbc702a2f2bbf60c4018d languageName: node linkType: hard @@ -1605,7 +1576,7 @@ __metadata: languageName: node linkType: hard -"@types/minimatch@npm:^3.0.3": +"@types/minimatch@npm:*, @types/minimatch@npm:^3.0.3": version: 3.0.5 resolution: "@types/minimatch@npm:3.0.5" checksum: c41d136f67231c3131cf1d4ca0b06687f4a322918a3a5adddc87ce90ed9dbd175a3610adee36b106ae68c0b92c637c35e02b58c8a56c424f71d30993ea220b92 @@ -1613,93 +1584,83 @@ __metadata: linkType: hard "@types/ms@npm:*": - version: 0.7.34 - resolution: "@types/ms@npm:0.7.34" - checksum: f38d36e7b6edecd9badc9cf50474159e9da5fa6965a75186cceaf883278611b9df6669dc3a3cc122b7938d317b68a9e3d573d316fcb35d1be47ec9e468c6bd8a - languageName: node - linkType: hard - -"@types/node@npm:*": - version: 20.11.18 - resolution: "@types/node@npm:20.11.18" - dependencies: - undici-types: ~5.26.4 - checksum: b34fb342152b5a5b486e9d54d62003f6ca18e2f0f1682c8c4a3d6388e9456dab310775cbdc8302a7945fb72a42ff283b770f8fb6ca5120f77b9b3b7de40c9760 + version: 0.7.33 + resolution: "@types/ms@npm:0.7.33" + checksum: 2cb5af611ace05ab2ae40422c8539850cf983197982bb04b83acf59e6e692e2faccf336a82ac4db97f7ea28f2baa0a8990fa5eb1cd72c5cab17b5b3609b0b650 languageName: node linkType: hard -"@types/node@npm:^16": - version: 16.18.81 - resolution: "@types/node@npm:16.18.81" - checksum: 7e9de5e42423e2e516cc38e9c3b35bffc1d212d6b9e552b32a521bb51ed496acb49ada7f2af418d93d56bb92db508bf36977a28d0bc5f35ca5d5165f04711656 +"@types/node@npm:*, @types/node@npm:^16": + version: 16.18.31 + resolution: "@types/node@npm:16.18.31" + checksum: 1e0bbbdcfdb80ebb9c5544a58b9692964dca08175a9d2f787a1ed8c75c253d106d56cf7d94c5ba0b44e1627000d093d599f995aeb657f5edbf577e66565b017a languageName: node linkType: hard "@types/parse-json@npm:^4.0.0": - version: 4.0.2 - resolution: "@types/parse-json@npm:4.0.2" - checksum: 5bf62eec37c332ad10059252fc0dab7e7da730764869c980b0714777ad3d065e490627be9f40fc52f238ffa3ac4199b19de4127196910576c2fe34dd47c7a470 + version: 4.0.0 + resolution: "@types/parse-json@npm:4.0.0" + checksum: fd6bce2b674b6efc3db4c7c3d336bd70c90838e8439de639b909ce22f3720d21344f52427f1d9e57b265fcb7f6c018699b99e5e0c208a1a4823014269a6bf35b languageName: node linkType: hard "@types/prettier@npm:^2.1.5": - version: 2.7.3 - resolution: "@types/prettier@npm:2.7.3" - checksum: 705384209cea6d1433ff6c187c80dcc0b95d99d5c5ce21a46a9a58060c527973506822e428789d842761e0280d25e3359300f017fbe77b9755bc772ab3dc2f83 + version: 2.4.4 + resolution: "@types/prettier@npm:2.4.4" + checksum: 2c2cc57efd49c7d8907415a72f96c84a6dd8696dd3bf8aa4ca3a667427bebf71cbfbc912673624bdfc935d272d1c008c639cf155f6449315990a4dc110f0d216 languageName: node linkType: hard "@types/responselike@npm:^1.0.0": - version: 1.0.3 - resolution: "@types/responselike@npm:1.0.3" + version: 1.0.0 + resolution: "@types/responselike@npm:1.0.0" dependencies: "@types/node": "*" - checksum: 6ac4b35723429b11b117e813c7acc42c3af8b5554caaf1fc750404c1ae59f9b7376bc69b9e9e194a5a97357a597c2228b7173d317320f0360d617b6425212f58 + checksum: e99fc7cc6265407987b30deda54c1c24bb1478803faf6037557a774b2f034c5b097ffd65847daa87e82a61a250d919f35c3588654b0fdaa816906650f596d1b0 languageName: node linkType: hard "@types/semver@npm:^7.3.12": - version: 7.5.7 - resolution: "@types/semver@npm:7.5.7" - checksum: 5af9b13e3d74d86d4b618f6506ccbded801fb35dbc28608cd5a7bfb8bcac0021dd35ef305a72a0c2a8def0cff60acd706bfee16a9ed1c39a893d2a175e778ea7 + version: 7.3.13 + resolution: "@types/semver@npm:7.3.13" + checksum: 00c0724d54757c2f4bc60b5032fe91cda6410e48689633d5f35ece8a0a66445e3e57fa1d6e07eb780f792e82ac542948ec4d0b76eb3484297b79bd18b8cf1cb0 languageName: node linkType: hard "@types/stack-utils@npm:^2.0.0": - version: 2.0.3 - resolution: "@types/stack-utils@npm:2.0.3" - checksum: 72576cc1522090fe497337c2b99d9838e320659ac57fa5560fcbdcbafcf5d0216c6b3a0a8a4ee4fdb3b1f5e3420aa4f6223ab57b82fef3578bec3206425c6cf5 + version: 2.0.0 + resolution: "@types/stack-utils@npm:2.0.0" + checksum: b3fbae25b073116977ecb5c67d22f14567b51a7792403b0bf46e5de8f29bde3bd4ec1626afb22065495ca7f1c699c8bd66720050c94b8f8f9bcefbee79d161fd languageName: node linkType: hard "@types/yargs-parser@npm:*": - version: 21.0.3 - resolution: "@types/yargs-parser@npm:21.0.3" - checksum: ef236c27f9432983e91432d974243e6c4cdae227cb673740320eff32d04d853eed59c92ca6f1142a335cfdc0e17cccafa62e95886a8154ca8891cc2dec4ee6fc + version: 15.0.0 + resolution: "@types/yargs-parser@npm:15.0.0" + checksum: 333ab73a1f9c82c64b2fac2441558e58f062fbe7affc35bb53b8e755b62cdd32b1bbc6f4da23773887a2189bf04395e2a8c710df344df4cd578993aeefe98053 languageName: node linkType: hard "@types/yargs@npm:^17.0.8": - version: 17.0.32 - resolution: "@types/yargs@npm:17.0.32" + version: 17.0.11 + resolution: "@types/yargs@npm:17.0.11" dependencies: "@types/yargs-parser": "*" - checksum: 4505bdebe8716ff383640c6e928f855b5d337cb3c68c81f7249fc6b983d0aa48de3eee26062b84f37e0d75a5797bc745e0c6e76f42f81771252a758c638f36ba + checksum: 30a45f9e59a5cc3c967f76036bea6a456b1416175aa4c002b70e1f295772e2247ed8117f392b20eef4557ad761678df8c1fcb141852f2c7c44977130d802c855 languageName: node linkType: hard "@typescript-eslint/eslint-plugin@npm:^5.43.0": - version: 5.62.0 - resolution: "@typescript-eslint/eslint-plugin@npm:5.62.0" + version: 5.43.0 + resolution: "@typescript-eslint/eslint-plugin@npm:5.43.0" dependencies: - "@eslint-community/regexpp": ^4.4.0 - "@typescript-eslint/scope-manager": 5.62.0 - "@typescript-eslint/type-utils": 5.62.0 - "@typescript-eslint/utils": 5.62.0 + "@typescript-eslint/scope-manager": 5.43.0 + "@typescript-eslint/type-utils": 5.43.0 + "@typescript-eslint/utils": 5.43.0 debug: ^4.3.4 - graphemer: ^1.4.0 ignore: ^5.2.0 natural-compare-lite: ^1.4.0 + regexpp: ^3.2.0 semver: ^7.3.7 tsutils: ^3.21.0 peerDependencies: @@ -1708,43 +1669,43 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: fc104b389c768f9fa7d45a48c86d5c1ad522c1d0512943e782a56b1e3096b2cbcc1eea3fcc590647bf0658eef61aac35120a9c6daf979bf629ad2956deb516a1 + checksum: aa0e9bcd9982e9601ada2088f46c1e9389abd31ceaf6cd1d492684fd711a67d595d4c95d97ba14081c2ea7eb3b98a9ebb33f91ef008e7450ce2f70b2a8ec4309 languageName: node linkType: hard "@typescript-eslint/parser@npm:^5.43.0": - version: 5.62.0 - resolution: "@typescript-eslint/parser@npm:5.62.0" + version: 5.43.0 + resolution: "@typescript-eslint/parser@npm:5.43.0" dependencies: - "@typescript-eslint/scope-manager": 5.62.0 - "@typescript-eslint/types": 5.62.0 - "@typescript-eslint/typescript-estree": 5.62.0 + "@typescript-eslint/scope-manager": 5.43.0 + "@typescript-eslint/types": 5.43.0 + "@typescript-eslint/typescript-estree": 5.43.0 debug: ^4.3.4 peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 peerDependenciesMeta: typescript: optional: true - checksum: d168f4c7f21a7a63f47002e2d319bcbb6173597af5c60c1cf2de046b46c76b4930a093619e69faf2d30214c29ab27b54dcf1efc7046a6a6bd6f37f59a990e752 + checksum: a28e0ef2807f1c3381c6dc1d9ddfd83ea8db657d3f808511adf13023b469ed64fc09619e05d7f68746b05ea68770a0882883c77ce908682965ba266f95e168c9 languageName: node linkType: hard -"@typescript-eslint/scope-manager@npm:5.62.0": - version: 5.62.0 - resolution: "@typescript-eslint/scope-manager@npm:5.62.0" +"@typescript-eslint/scope-manager@npm:5.43.0": + version: 5.43.0 + resolution: "@typescript-eslint/scope-manager@npm:5.43.0" dependencies: - "@typescript-eslint/types": 5.62.0 - "@typescript-eslint/visitor-keys": 5.62.0 - checksum: 6062d6b797fe1ce4d275bb0d17204c827494af59b5eaf09d8a78cdd39dadddb31074dded4297aaf5d0f839016d601032857698b0e4516c86a41207de606e9573 + "@typescript-eslint/types": 5.43.0 + "@typescript-eslint/visitor-keys": 5.43.0 + checksum: e594c7a32c3fa29e46dd0b0bc62f97f154bd864682ae7da87a14b6f4336f4cb02f6ed0602bbdb15783e4230ecdf8a0ccc6f7c5820850e8f11240c9e4fb0e388d languageName: node linkType: hard -"@typescript-eslint/type-utils@npm:5.62.0": - version: 5.62.0 - resolution: "@typescript-eslint/type-utils@npm:5.62.0" +"@typescript-eslint/type-utils@npm:5.43.0": + version: 5.43.0 + resolution: "@typescript-eslint/type-utils@npm:5.43.0" dependencies: - "@typescript-eslint/typescript-estree": 5.62.0 - "@typescript-eslint/utils": 5.62.0 + "@typescript-eslint/typescript-estree": 5.43.0 + "@typescript-eslint/utils": 5.43.0 debug: ^4.3.4 tsutils: ^3.21.0 peerDependencies: @@ -1752,23 +1713,23 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: fc41eece5f315dfda14320be0da78d3a971d650ea41300be7196934b9715f3fe1120a80207551eb71d39568275dbbcf359bde540d1ca1439d8be15e9885d2739 + checksum: 08dbc0b194d0ef1454a95d76c082503e04d9957e89a056068002e233f8d98113f50b2707f7c4b9b44f428e223d5b4485ee2b4df4e0cde354827c5edc92ede973 languageName: node linkType: hard -"@typescript-eslint/types@npm:5.62.0": - version: 5.62.0 - resolution: "@typescript-eslint/types@npm:5.62.0" - checksum: 48c87117383d1864766486f24de34086155532b070f6264e09d0e6139449270f8a9559cfef3c56d16e3bcfb52d83d42105d61b36743626399c7c2b5e0ac3b670 +"@typescript-eslint/types@npm:5.43.0": + version: 5.43.0 + resolution: "@typescript-eslint/types@npm:5.43.0" + checksum: fc5e5431c305feee4a3faae84f34df482e08d74b910a6f9376b01326c682ceefeeb0e270d03d7778787bc94ef05b3b85ee6d3c9d732290fbdb4a67ae1b110226 languageName: node linkType: hard -"@typescript-eslint/typescript-estree@npm:5.62.0": - version: 5.62.0 - resolution: "@typescript-eslint/typescript-estree@npm:5.62.0" +"@typescript-eslint/typescript-estree@npm:5.43.0": + version: 5.43.0 + resolution: "@typescript-eslint/typescript-estree@npm:5.43.0" dependencies: - "@typescript-eslint/types": 5.62.0 - "@typescript-eslint/visitor-keys": 5.62.0 + "@typescript-eslint/types": 5.43.0 + "@typescript-eslint/visitor-keys": 5.43.0 debug: ^4.3.4 globby: ^11.1.0 is-glob: ^4.0.3 @@ -1777,116 +1738,115 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: 3624520abb5807ed8f57b1197e61c7b1ed770c56dfcaca66372d584ff50175225798bccb701f7ef129d62c5989070e1ee3a0aa2d84e56d9524dcf011a2bb1a52 + checksum: 3479f9413d73369ab3d574580c90a72f74d2ae1ec4afe485eebfad054c3d15c89f23a137bb9d6197dfdae33e444a76a99f6832688787feabbb064e09d39a3f55 languageName: node linkType: hard -"@typescript-eslint/utils@npm:5.62.0, @typescript-eslint/utils@npm:^5.10.0": - version: 5.62.0 - resolution: "@typescript-eslint/utils@npm:5.62.0" +"@typescript-eslint/utils@npm:5.43.0, @typescript-eslint/utils@npm:^5.10.0": + version: 5.43.0 + resolution: "@typescript-eslint/utils@npm:5.43.0" dependencies: - "@eslint-community/eslint-utils": ^4.2.0 "@types/json-schema": ^7.0.9 "@types/semver": ^7.3.12 - "@typescript-eslint/scope-manager": 5.62.0 - "@typescript-eslint/types": 5.62.0 - "@typescript-eslint/typescript-estree": 5.62.0 + "@typescript-eslint/scope-manager": 5.43.0 + "@typescript-eslint/types": 5.43.0 + "@typescript-eslint/typescript-estree": 5.43.0 eslint-scope: ^5.1.1 + eslint-utils: ^3.0.0 semver: ^7.3.7 peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - checksum: ee9398c8c5db6d1da09463ca7bf36ed134361e20131ea354b2da16a5fdb6df9ba70c62a388d19f6eebb421af1786dbbd79ba95ddd6ab287324fc171c3e28d931 + checksum: 4c6b383b51506b57230f2624f883ae21e5d8411d138587c04fe3145f915bf8c289cc2a9f7b0b3faba98345ba230504e5014922bcc578aa0badd594d9eaa8f9ef languageName: node linkType: hard -"@typescript-eslint/visitor-keys@npm:5.62.0": - version: 5.62.0 - resolution: "@typescript-eslint/visitor-keys@npm:5.62.0" +"@typescript-eslint/visitor-keys@npm:5.43.0": + version: 5.43.0 + resolution: "@typescript-eslint/visitor-keys@npm:5.43.0" dependencies: - "@typescript-eslint/types": 5.62.0 + "@typescript-eslint/types": 5.43.0 eslint-visitor-keys: ^3.3.0 - checksum: 976b05d103fe8335bef5c93ad3f76d781e3ce50329c0243ee0f00c0fcfb186c81df50e64bfdd34970148113f8ade90887f53e3c4938183afba830b4ba8e30a35 + checksum: 4820679e50096dcdaadc7c95d32e5dca3ba8510acf1a865e283822bae3940a2faec02ad8abe793f8a25f75b600f1e7215e1fd3b3ba73779eff737fa90d092550 languageName: node linkType: hard -"@ungap/structured-clone@npm:^1.2.0": - version: 1.2.0 - resolution: "@ungap/structured-clone@npm:1.2.0" - checksum: 4f656b7b4672f2ce6e272f2427d8b0824ed11546a601d8d5412b9d7704e83db38a8d9f402ecdf2b9063fc164af842ad0ec4a55819f621ed7e7ea4d1efcc74524 +"@vue/compiler-core@npm:3.2.45": + version: 3.2.45 + resolution: "@vue/compiler-core@npm:3.2.45" + dependencies: + "@babel/parser": ^7.16.4 + "@vue/shared": 3.2.45 + estree-walker: ^2.0.2 + source-map: ^0.6.1 + checksum: e3c687b24c16c2b320c02ed38960f8bee7dcb88bddb09e60a80d2d4dc004070cbbd4eccbc99cc168d48d753ff60d0b9eefba835e1dec3b7f233a98c89af31c07 languageName: node linkType: hard -"@vue/compiler-core@npm:3.4.19": - version: 3.4.19 - resolution: "@vue/compiler-core@npm:3.4.19" +"@vue/compiler-dom@npm:3.2.45": + version: 3.2.45 + resolution: "@vue/compiler-dom@npm:3.2.45" dependencies: - "@babel/parser": ^7.23.9 - "@vue/shared": 3.4.19 - entities: ^4.5.0 - estree-walker: ^2.0.2 - source-map-js: ^1.0.2 - checksum: 92fbcc52c0e0b44c88a5af84c9beb3aab80c85f9fc81bdb00ea64b6c0e524843670f576d6734c7fe385c116f71ae189bc6e9dc0674fd4898c3163b32c00aaebc + "@vue/compiler-core": 3.2.45 + "@vue/shared": 3.2.45 + checksum: 89115538635f0da9cce615de5488d2759256fa573976a09a049536dbb94e9b5086b46f2f11e743cf0a7b14837161b3191c67611e0493054a5d4c4b96a322c901 languageName: node linkType: hard -"@vue/compiler-dom@npm:3.4.19": - version: 3.4.19 - resolution: "@vue/compiler-dom@npm:3.4.19" +"@vue/compiler-sfc@npm:^3.0.5": + version: 3.2.45 + resolution: "@vue/compiler-sfc@npm:3.2.45" dependencies: - "@vue/compiler-core": 3.4.19 - "@vue/shared": 3.4.19 - checksum: b74c620c40b1bb9c06726fc61320291155bca44cf06ee55a7f030df90cd009af603ffeeacabebcca83a006d2f589997c2f32801f885a899ddb75818fc060d05c + "@babel/parser": ^7.16.4 + "@vue/compiler-core": 3.2.45 + "@vue/compiler-dom": 3.2.45 + "@vue/compiler-ssr": 3.2.45 + "@vue/reactivity-transform": 3.2.45 + "@vue/shared": 3.2.45 + estree-walker: ^2.0.2 + magic-string: ^0.25.7 + postcss: ^8.1.10 + source-map: ^0.6.1 + checksum: bec375faa0012e953dc0887482cc01d52003ad424b6a8a9c8a2506fd4f0197ad62be22f77ce5691c2306068ae7bc0028399f25399e7d4beee668285d431f4d8f languageName: node linkType: hard -"@vue/compiler-sfc@npm:^3.3.4": - version: 3.4.19 - resolution: "@vue/compiler-sfc@npm:3.4.19" +"@vue/compiler-ssr@npm:3.2.45": + version: 3.2.45 + resolution: "@vue/compiler-ssr@npm:3.2.45" dependencies: - "@babel/parser": ^7.23.9 - "@vue/compiler-core": 3.4.19 - "@vue/compiler-dom": 3.4.19 - "@vue/compiler-ssr": 3.4.19 - "@vue/shared": 3.4.19 - estree-walker: ^2.0.2 - magic-string: ^0.30.6 - postcss: ^8.4.33 - source-map-js: ^1.0.2 - checksum: d622207fdb2030320d3612226da077914018cdf9deb06db0368bbb5dd4ee796aa5f83717287cd5834157d67596142957e7d955d16b5345eafa3e13cb48d3a79a + "@vue/compiler-dom": 3.2.45 + "@vue/shared": 3.2.45 + checksum: 830c475506d2b6d1a6872b3fde1024ef5132f725121fd9c34832c5cefcc8cfddf0dcaa3acc9b2da4754162fccdff48b3275b9ff31415a7793b224c04355dc632 languageName: node linkType: hard -"@vue/compiler-ssr@npm:3.4.19": - version: 3.4.19 - resolution: "@vue/compiler-ssr@npm:3.4.19" +"@vue/reactivity-transform@npm:3.2.45": + version: 3.2.45 + resolution: "@vue/reactivity-transform@npm:3.2.45" dependencies: - "@vue/compiler-dom": 3.4.19 - "@vue/shared": 3.4.19 - checksum: b4599560fdad327f30b0a8fc72427bf2c17c44620924e948a3e87c3c35f2e98c080152e0540350b27b4dec832b74752bc94e1334ca8d114c741a4ae1ae67f6f7 + "@babel/parser": ^7.16.4 + "@vue/compiler-core": 3.2.45 + "@vue/shared": 3.2.45 + estree-walker: ^2.0.2 + magic-string: ^0.25.7 + checksum: 401040818947eb04c782487a7861d3ba20f95c9f3ca14282b3d7624002bfe6000547bb48c561afe87ae6d302143fec71a7e0bc3ed3ae2bfad8a228adf7fd90d6 languageName: node linkType: hard -"@vue/shared@npm:3.4.19": - version: 3.4.19 - resolution: "@vue/shared@npm:3.4.19" - checksum: 676c2ec007efc5963a37811e1991f7a114ea603d52721feb59e6c1ac119127d1bdf80c57b09b32a53bb803922edc50e3753d847e800e16018a80fc5f9b84fcf5 +"@vue/shared@npm:3.2.45": + version: 3.2.45 + resolution: "@vue/shared@npm:3.2.45" + checksum: ff3205056caed2a965aa0980e21319515ce13c859a9b269fdab0ee8b3c9f3d8eec7eefdb7fd6c6b47c12acdc7bf23c6c187b6191054221b4a29108139b20c221 languageName: node linkType: hard -"abbrev@npm:^1.0.0": +"abbrev@npm:1, abbrev@npm:^1.0.0": version: 1.1.1 resolution: "abbrev@npm:1.1.1" checksum: a4a97ec07d7ea112c517036882b2ac22f3109b7b19077dc656316d07d308438aac28e4d9746dc4d84bf6b1e75b4a7b0a5f3cb30592419f128ca9a8cee3bcfa17 languageName: node linkType: hard -"abbrev@npm:^2.0.0": - version: 2.0.0 - resolution: "abbrev@npm:2.0.0" - checksum: 0e994ad2aa6575f94670d8a2149afe94465de9cedaaaac364e7fb43a40c3691c980ff74899f682f4ca58fa96b4cbd7421a015d3a6defe43a442117d7821a2f36 - languageName: node - linkType: hard - "acorn-jsx@npm:^5.3.2": version: 5.3.2 resolution: "acorn-jsx@npm:5.3.2" @@ -1897,18 +1857,18 @@ __metadata: linkType: hard "acorn-walk@npm:^8.1.1": - version: 8.3.2 - resolution: "acorn-walk@npm:8.3.2" - checksum: 3626b9d26a37b1b427796feaa5261faf712307a8920392c8dce9a5739fb31077667f4ad2ec71c7ac6aaf9f61f04a9d3d67ff56f459587206fc04aa31c27ef392 + version: 8.2.0 + resolution: "acorn-walk@npm:8.2.0" + checksum: 1715e76c01dd7b2d4ca472f9c58968516a4899378a63ad5b6c2d668bba8da21a71976c14ec5f5b75f887b6317c4ae0b897ab141c831d741dc76024d8745f1ad1 languageName: node linkType: hard "acorn@npm:^8.4.1, acorn@npm:^8.9.0": - version: 8.11.3 - resolution: "acorn@npm:8.11.3" + version: 8.10.0 + resolution: "acorn@npm:8.10.0" bin: acorn: bin/acorn - checksum: 76d8e7d559512566b43ab4aadc374f11f563f0a9e21626dd59cb2888444e9445923ae9f3699972767f18af61df89cd89f5eaaf772d1327b055b45cb829b4a88c + checksum: 538ba38af0cc9e5ef983aee196c4b8b4d87c0c94532334fa7e065b2c8a1f85863467bb774231aae91613fcda5e68740c15d97b1967ae3394d20faddddd8af61d languageName: node linkType: hard @@ -1921,21 +1881,14 @@ __metadata: languageName: node linkType: hard -"agent-base@npm:^7.0.2, agent-base@npm:^7.1.0": - version: 7.1.0 - resolution: "agent-base@npm:7.1.0" - dependencies: - debug: ^4.3.4 - checksum: f7828f991470a0cc22cb579c86a18cbae83d8a3cbed39992ab34fc7217c4d126017f1c74d0ab66be87f71455318a8ea3e757d6a37881b8d0f2a2c6aa55e5418f - languageName: node - linkType: hard - "agentkeepalive@npm:^4.2.1": - version: 4.5.0 - resolution: "agentkeepalive@npm:4.5.0" + version: 4.2.1 + resolution: "agentkeepalive@npm:4.2.1" dependencies: + debug: ^4.1.0 + depd: ^1.1.2 humanize-ms: ^1.2.1 - checksum: 13278cd5b125e51eddd5079f04d6fe0914ac1b8b91c1f3db2c1822f99ac1a7457869068997784342fe455d59daaff22e14fb7b8c3da4e741896e7e31faf92481 + checksum: 39cb49ed8cf217fd6da058a92828a0a84e0b74c35550f82ee0a10e1ee403c4b78ade7948be2279b188b7a7303f5d396ea2738b134731e464bf28de00a4f72a18 languageName: node linkType: hard @@ -1949,7 +1902,7 @@ __metadata: languageName: node linkType: hard -"ajv@npm:^6.12.4": +"ajv@npm:^6.10.0, ajv@npm:^6.12.4": version: 6.12.6 resolution: "ajv@npm:6.12.6" dependencies: @@ -1969,11 +1922,11 @@ __metadata: linkType: hard "ansi-escapes@npm:^4.2.1": - version: 4.3.2 - resolution: "ansi-escapes@npm:4.3.2" + version: 4.3.1 + resolution: "ansi-escapes@npm:4.3.1" dependencies: - type-fest: ^0.21.3 - checksum: 93111c42189c0a6bed9cdb4d7f2829548e943827ee8479c74d6e0b22ee127b2a21d3f8b5ca57723b8ef78ce011fbfc2784350eb2bde3ccfccf2f575fa8489815 + type-fest: ^0.11.0 + checksum: c4962c1791cc4e29efb9976680bad7b23f322ca039e588406680fffc8b6bc6e223721193eb481dab076309d9a7371bbfc4e835efe5fe267e3395ffa047da239d languageName: node linkType: hard @@ -1984,20 +1937,6 @@ __metadata: languageName: node linkType: hard -"ansi-regex@npm:^6.0.1": - version: 6.0.1 - resolution: "ansi-regex@npm:6.0.1" - checksum: 1ff8b7667cded1de4fa2c9ae283e979fc87036864317da86a2e546725f96406746411d0d85e87a2d12fa5abd715d90006de7fa4fa0477c92321ad3b4c7d4e169 - languageName: node - linkType: hard - -"ansi-sequence-parser@npm:^1.1.0": - version: 1.1.1 - resolution: "ansi-sequence-parser@npm:1.1.1" - checksum: ead5b15c596e8e85ca02951a844366c6776769dcc9fd1bd3a0db11bb21364554822c6a439877fb599e7e1ffa0b5f039f1e5501423950457f3dcb2f480c30b188 - languageName: node - linkType: hard - "ansi-styles@npm:^3.2.1": version: 3.2.1 resolution: "ansi-styles@npm:3.2.1" @@ -2008,11 +1947,12 @@ __metadata: linkType: hard "ansi-styles@npm:^4.0.0, ansi-styles@npm:^4.1.0": - version: 4.3.0 - resolution: "ansi-styles@npm:4.3.0" + version: 4.2.1 + resolution: "ansi-styles@npm:4.2.1" dependencies: + "@types/color-name": ^1.1.1 color-convert: ^2.0.1 - checksum: 513b44c3b2105dd14cc42a19271e80f386466c4be574bccf60b627432f9198571ebf4ab1e4c3ba17347658f4ee1711c163d574248c0c1cdc2d5917a0ad582ec4 + checksum: 7c74dbc7ec912b9e45dacbfaa7e2513bea6aa24d5357a0cd3255e7f83ecfc62e1454c77ab150a8df60de700c83c17fbbf040e7c204b4b6fc7aa250c8afcb865f languageName: node linkType: hard @@ -2023,14 +1963,7 @@ __metadata: languageName: node linkType: hard -"ansi-styles@npm:^6.1.0": - version: 6.2.1 - resolution: "ansi-styles@npm:6.2.1" - checksum: ef940f2f0ced1a6347398da88a91da7930c33ecac3c77b72c5905f8b8fe402c52e6fde304ff5347f616e27a742da3f1dc76de98f6866c69251ad0b07a66776d9 - languageName: node - linkType: hard - -"anymatch@npm:^3.0.3": +"anymatch@npm:^3.0.3, anymatch@npm:~3.1.2": version: 3.1.3 resolution: "anymatch@npm:3.1.3" dependencies: @@ -2055,12 +1988,12 @@ __metadata: linkType: hard "are-we-there-yet@npm:^3.0.0": - version: 3.0.1 - resolution: "are-we-there-yet@npm:3.0.1" + version: 3.0.0 + resolution: "are-we-there-yet@npm:3.0.0" dependencies: delegates: ^1.0.0 readable-stream: ^3.6.0 - checksum: 52590c24860fa7173bedeb69a4c05fb573473e860197f618b9a28432ee4379049336727ae3a1f9c4cb083114601c1140cee578376164d0e651217a9843f9fe83 + checksum: 348edfdd931b0b50868b55402c01c3f64df1d4c229ab6f063539a5025fd6c5f5bb8a0cab409bbed8d75d34762d22aa91b7c20b4204eb8177063158d9ba792981 languageName: node linkType: hard @@ -2087,13 +2020,13 @@ __metadata: languageName: node linkType: hard -"array-buffer-byte-length@npm:^1.0.1": - version: 1.0.1 - resolution: "array-buffer-byte-length@npm:1.0.1" +"array-buffer-byte-length@npm:^1.0.0": + version: 1.0.0 + resolution: "array-buffer-byte-length@npm:1.0.0" dependencies: - call-bind: ^1.0.5 - is-array-buffer: ^3.0.4 - checksum: 53524e08f40867f6a9f35318fafe467c32e45e9c682ba67b11943e167344d2febc0f6977a17e699b05699e805c3e8f073d876f8bbf1b559ed494ad2cd0fae09e + call-bind: ^1.0.2 + is-array-buffer: ^3.0.1 + checksum: 044e101ce150f4804ad19c51d6c4d4cfa505c5b2577bd179256e4aa3f3f6a0a5e9874c78cd428ee566ac574c8a04d7ce21af9fe52e844abfdccb82b33035a7c3 languageName: node linkType: hard @@ -2104,16 +2037,16 @@ __metadata: languageName: node linkType: hard -"array-includes@npm:^3.1.4": - version: 3.1.7 - resolution: "array-includes@npm:3.1.7" +"array-includes@npm:^3.1.6": + version: 3.1.6 + resolution: "array-includes@npm:3.1.6" dependencies: call-bind: ^1.0.2 - define-properties: ^1.2.0 - es-abstract: ^1.22.1 - get-intrinsic: ^1.2.1 + define-properties: ^1.1.4 + es-abstract: ^1.20.4 + get-intrinsic: ^1.1.3 is-string: ^1.0.7 - checksum: 06f9e4598fac12a919f7c59a3f04f010ea07f0b7f0585465ed12ef528a60e45f374e79d1bddbb34cdd4338357d00023ddbd0ac18b0be36964f5e726e8965d7fc + checksum: f22f8cd8ba8a6448d91eebdc69f04e4e55085d09232b5216ee2d476dab3ef59984e8d1889e662c6a0ed939dcb1b57fd05b2c0209c3370942fc41b752c82a2ca5 languageName: node linkType: hard @@ -2124,31 +2057,27 @@ __metadata: languageName: node linkType: hard -"array.prototype.flat@npm:^1.2.5": - version: 1.3.2 - resolution: "array.prototype.flat@npm:1.3.2" +"array.prototype.flat@npm:^1.3.1": + version: 1.3.1 + resolution: "array.prototype.flat@npm:1.3.1" dependencies: call-bind: ^1.0.2 - define-properties: ^1.2.0 - es-abstract: ^1.22.1 + define-properties: ^1.1.4 + es-abstract: ^1.20.4 es-shim-unscopables: ^1.0.0 - checksum: 5d6b4bf102065fb3f43764bfff6feb3295d372ce89591e6005df3d0ce388527a9f03c909af6f2a973969a4d178ab232ffc9236654149173e0e187ec3a1a6b87b + checksum: 5a8415949df79bf6e01afd7e8839bbde5a3581300e8ad5d8449dea52639e9e59b26a467665622783697917b43bf39940a6e621877c7dd9b3d1c1f97484b9b88b languageName: node linkType: hard -"arraybuffer.prototype.slice@npm:^1.0.3": - version: 1.0.3 - resolution: "arraybuffer.prototype.slice@npm:1.0.3" - dependencies: - array-buffer-byte-length: ^1.0.1 - call-bind: ^1.0.5 - define-properties: ^1.2.1 - es-abstract: ^1.22.3 - es-errors: ^1.2.1 - get-intrinsic: ^1.2.3 - is-array-buffer: ^3.0.4 - is-shared-array-buffer: ^1.0.2 - checksum: 352259cba534dcdd969c92ab002efd2ba5025b2e3b9bead3973150edbdf0696c629d7f4b3f061c5931511e8207bdc2306da614703c820b45dabce39e3daf7e3e +"array.prototype.flatmap@npm:^1.3.1": + version: 1.3.1 + resolution: "array.prototype.flatmap@npm:1.3.1" + dependencies: + call-bind: ^1.0.2 + define-properties: ^1.1.4 + es-abstract: ^1.20.4 + es-shim-unscopables: ^1.0.0 + checksum: 8c1c43a4995f12cf12523436da28515184c753807b3f0bc2ca6c075f71c470b099e2090cc67dba8e5280958fea401c1d0c59e1db0143272aef6cd1103921a987 languageName: node linkType: hard @@ -2159,10 +2088,10 @@ __metadata: languageName: node linkType: hard -"available-typed-arrays@npm:^1.0.5, available-typed-arrays@npm:^1.0.6": - version: 1.0.6 - resolution: "available-typed-arrays@npm:1.0.6" - checksum: 8295571eb86447138adf64a0df0c08ae61250b17190bba30e1fae8c80a816077a6d028e5506f602c382c0197d3080bae131e92e331139d55460989580eeae659 +"available-typed-arrays@npm:^1.0.5": + version: 1.0.5 + resolution: "available-typed-arrays@npm:1.0.5" + checksum: 20eb47b3cefd7db027b9bbb993c658abd36d4edd3fe1060e83699a03ee275b0c9b216cc076ff3f2db29073225fb70e7613987af14269ac1fe2a19803ccc97f1a languageName: node linkType: hard @@ -2243,9 +2172,9 @@ __metadata: linkType: hard "balanced-match@npm:^1.0.0": - version: 1.0.2 - resolution: "balanced-match@npm:1.0.2" - checksum: 9706c088a283058a8a99e0bf91b0a2f75497f185980d9ffa8b304de1d9e58ebda7c72c07ebf01dadedaac5b2907b2c6f566f660d62bd336c3468e960403b9d65 + version: 1.0.0 + resolution: "balanced-match@npm:1.0.0" + checksum: 9b67bfe558772f40cf743a3469b48b286aecec2ea9fe80c48d74845e53aab1cef524fafedf123a63019b49ac397760573ef5f173f539423061f7217cbb5fbd40 languageName: node linkType: hard @@ -2272,13 +2201,13 @@ __metadata: linkType: hard "bin-version-check@npm:^5.0.0": - version: 5.1.0 - resolution: "bin-version-check@npm:5.1.0" + version: 5.0.0 + resolution: "bin-version-check@npm:5.0.0" dependencies: bin-version: ^6.0.0 - semver: ^7.5.3 - semver-truncate: ^3.0.0 - checksum: d99679cfe0964703045fe0145a98f117888942b621dfe2c2377305ee9a9d735374d8e3ecb3b476507b284af2567699f24f7ecb2feb1f27ad6086ad60b3198893 + semver: ^7.3.5 + semver-truncate: ^2.0.0 + checksum: 1d3dc92847f8ecd5e07109f5f44727f0cb3b17c00be5ae2a2e105b86bf161bc4e5c10ee2e2c21d5d28e6382994d8416b5e06048191a485be909a1e49a959c3c3 languageName: node linkType: hard @@ -2292,6 +2221,13 @@ __metadata: languageName: node linkType: hard +"binary-extensions@npm:^2.0.0": + version: 2.2.0 + resolution: "binary-extensions@npm:2.2.0" + checksum: ccd267956c58d2315f5d3ea6757cf09863c5fc703e50fbeb13a7dc849b812ef76e3cf9ca8f35a0c48498776a7478d7b4a0418e1e2b8cb9cb9731f2922aaad7f8 + languageName: node + linkType: hard + "brace-expansion@npm:^1.1.7": version: 1.1.11 resolution: "brace-expansion@npm:1.1.11" @@ -2311,7 +2247,7 @@ __metadata: languageName: node linkType: hard -"braces@npm:^3.0.2": +"braces@npm:^3.0.1, braces@npm:~3.0.2": version: 3.0.2 resolution: "braces@npm:3.0.2" dependencies: @@ -2320,17 +2256,17 @@ __metadata: languageName: node linkType: hard -"browserslist@npm:^4.22.2": - version: 4.23.0 - resolution: "browserslist@npm:4.23.0" +"browserslist@npm:^4.21.9": + version: 4.22.1 + resolution: "browserslist@npm:4.22.1" dependencies: - caniuse-lite: ^1.0.30001587 - electron-to-chromium: ^1.4.668 - node-releases: ^2.0.14 + caniuse-lite: ^1.0.30001541 + electron-to-chromium: ^1.4.535 + node-releases: ^2.0.13 update-browserslist-db: ^1.0.13 bin: browserslist: cli.js - checksum: 436f49e796782ca751ebab7edc010cfc9c29f68536f387666cd70ea22f7105563f04dd62c6ff89cb24cc3254d17cba385f979eeeb3484d43e012412ff7e75def + checksum: 7e6b10c53f7dd5d83fd2b95b00518889096382539fed6403829d447e05df4744088de46a571071afb447046abc3c66ad06fbc790e70234ec2517452e32ffd862 languageName: node linkType: hard @@ -2353,9 +2289,9 @@ __metadata: linkType: hard "buffer-from@npm:^1.0.0": - version: 1.1.2 - resolution: "buffer-from@npm:1.1.2" - checksum: 0448524a562b37d4d7ed9efd91685a5b77a50672c556ea254ac9a6d30e3403a517d8981f10e565db24e8339413b43c97ca2951f10e399c6125a0d8911f5679bb + version: 1.1.1 + resolution: "buffer-from@npm:1.1.1" + checksum: ccc53b69736008bff764497367c4d24879ba7122bc619ee499ff47eef3a5b885ca496e87272e7ebffa0bec3804c83f84041c616f6e3318f40624e27c1d80f045 languageName: node linkType: hard @@ -2369,8 +2305,8 @@ __metadata: linkType: hard "cacache@npm:^16.1.0": - version: 16.1.3 - resolution: "cacache@npm:16.1.3" + version: 16.1.1 + resolution: "cacache@npm:16.1.1" dependencies: "@npmcli/fs": ^2.1.0 "@npmcli/move-file": ^2.0.0 @@ -2389,28 +2325,8 @@ __metadata: rimraf: ^3.0.2 ssri: ^9.0.0 tar: ^6.1.11 - unique-filename: ^2.0.0 - checksum: d91409e6e57d7d9a3a25e5dcc589c84e75b178ae8ea7de05cbf6b783f77a5fae938f6e8fda6f5257ed70000be27a681e1e44829251bfffe4c10216002f8f14e6 - languageName: node - linkType: hard - -"cacache@npm:^18.0.0": - version: 18.0.2 - resolution: "cacache@npm:18.0.2" - dependencies: - "@npmcli/fs": ^3.1.0 - fs-minipass: ^3.0.0 - glob: ^10.2.2 - lru-cache: ^10.0.1 - minipass: ^7.0.3 - minipass-collect: ^2.0.1 - minipass-flush: ^1.0.5 - minipass-pipeline: ^1.2.4 - p-map: ^4.0.0 - ssri: ^10.0.0 - tar: ^6.1.11 - unique-filename: ^3.0.0 - checksum: 0250df80e1ad0c828c956744850c5f742c24244e9deb5b7dc81bca90f8c10e011e132ecc58b64497cc1cad9a98968676147fb6575f4f94722f7619757b17a11b + unique-filename: ^1.1.1 + checksum: 488524617008b793f0249b0c4ea2c330c710ca997921376e15650cc2415a8054491ae2dee9f01382c2015602c0641f3f977faf2fa7361aa33d2637dcfb03907a languageName: node linkType: hard @@ -2436,23 +2352,13 @@ __metadata: languageName: node linkType: hard -"call-bind@npm:^1.0.2, call-bind@npm:^1.0.5, call-bind@npm:^1.0.6, call-bind@npm:^1.0.7": - version: 1.0.7 - resolution: "call-bind@npm:1.0.7" +"call-bind@npm:^1.0.0, call-bind@npm:^1.0.2": + version: 1.0.2 + resolution: "call-bind@npm:1.0.2" dependencies: - es-define-property: ^1.0.0 - es-errors: ^1.3.0 - function-bind: ^1.1.2 - get-intrinsic: ^1.2.4 - set-function-length: ^1.2.1 - checksum: 295c0c62b90dd6522e6db3b0ab1ce26bdf9e7404215bda13cfee25b626b5ff1a7761324d58d38b1ef1607fc65aca2d06e44d2e18d0dfc6c14b465b00d8660029 - languageName: node - linkType: hard - -"callsite@npm:^1.0.0": - version: 1.0.0 - resolution: "callsite@npm:1.0.0" - checksum: 569686d622a288a4f0a827466c2f967b6d7a98f2ee1e6ada9dcf5a6802267a5e2a995d40f07113b5f95c7b2b2d5cbff4fdde590195f2a8bed24b829d048688f8 + function-bind: ^1.1.1 + get-intrinsic: ^1.0.2 + checksum: f8e31de9d19988a4b80f3e704788c4a2d6b6f3d17cfec4f57dc29ced450c53a49270dc66bf0fbd693329ee948dd33e6c90a329519aef17474a4d961e8d6426b0 languageName: node linkType: hard @@ -2470,17 +2376,17 @@ __metadata: languageName: node linkType: hard -"camelcase@npm:^6.2.0, camelcase@npm:^6.3.0": +"camelcase@npm:^6.2.0": version: 6.3.0 resolution: "camelcase@npm:6.3.0" checksum: 8c96818a9076434998511251dcb2761a94817ea17dbdc37f47ac080bd088fc62c7369429a19e2178b993497132c8cbcf5cc1f44ba963e76782ba469c0474938d languageName: node linkType: hard -"caniuse-lite@npm:^1.0.30001587": - version: 1.0.30001587 - resolution: "caniuse-lite@npm:1.0.30001587" - checksum: fb50aa9beaaae42f9feae92ce038f6ff71e97510f024ef1bef2666f3adcfd36d6c59e5675442e5fe795575193f71bc826cb7721d4b0f6d763e82d193bea57863 +"caniuse-lite@npm:^1.0.30001541": + version: 1.0.30001550 + resolution: "caniuse-lite@npm:1.0.30001550" + checksum: b48d5a0bd25d634d61f410e0130c5e6c328724285c3c6065644eb41f86a227f5db0eb77da25d0fe3c6c9b04bbd040c9c164bf8dc50dd75cb30fc578aaae562f1 languageName: node linkType: hard @@ -2512,6 +2418,25 @@ __metadata: languageName: node linkType: hard +"chokidar@npm:>=3.0.0 <4.0.0": + version: 3.5.3 + resolution: "chokidar@npm:3.5.3" + dependencies: + anymatch: ~3.1.2 + braces: ~3.0.2 + fsevents: ~2.3.2 + glob-parent: ~5.1.2 + is-binary-path: ~2.1.0 + is-glob: ~4.0.1 + normalize-path: ~3.0.0 + readdirp: ~3.6.0 + dependenciesMeta: + fsevents: + optional: true + checksum: b49fcde40176ba007ff361b198a2d35df60d9bb2a5aab228279eb810feae9294a6b4649ab15981304447afe1e6ffbf4788ad5db77235dc770ab777c6e771980c + languageName: node + linkType: hard + "chownr@npm:^2.0.0": version: 2.0.0 resolution: "chownr@npm:2.0.0" @@ -2520,16 +2445,16 @@ __metadata: linkType: hard "ci-info@npm:^3.2.0": - version: 3.9.0 - resolution: "ci-info@npm:3.9.0" - checksum: 6b19dc9b2966d1f8c2041a838217299718f15d6c4b63ae36e4674edd2bee48f780e94761286a56aa59eb305a85fbea4ddffb7630ec063e7ec7e7e5ad42549a87 + version: 3.3.0 + resolution: "ci-info@npm:3.3.0" + checksum: c3d86fe374938ecda5093b1ba39acb535d8309185ba3f23587747c6a057e63f45419b406d880304dbc0e1d72392c9a33e42fe9a1e299209bc0ded5efaa232b66 languageName: node linkType: hard "cjs-module-lexer@npm:^1.0.0": - version: 1.2.3 - resolution: "cjs-module-lexer@npm:1.2.3" - checksum: 5ea3cb867a9bb609b6d476cd86590d105f3cfd6514db38ff71f63992ab40939c2feb68967faa15a6d2b1f90daa6416b79ea2de486e9e2485a6f8b66a21b4fb0a + version: 1.2.2 + resolution: "cjs-module-lexer@npm:1.2.2" + checksum: 977f3f042bd4f08e368c890d91eecfbc4f91da0bc009a3c557bc4dfbf32022ad1141244ac1178d44de70fc9f3dea7add7cd9a658a34b9fae98a55d8f92331ce5 languageName: node linkType: hard @@ -2541,9 +2466,9 @@ __metadata: linkType: hard "cli-spinners@npm:^2.6.0": - version: 2.9.2 - resolution: "cli-spinners@npm:2.9.2" - checksum: 1bd588289b28432e4676cb5d40505cfe3e53f2e4e10fbe05c8a710a154d6fe0ce7836844b00d6858f740f2ffe67cdc36e0fce9c7b6a8430e80e6388d5aa4956c + version: 2.6.1 + resolution: "cli-spinners@npm:2.6.1" + checksum: 423409baaa7a58e5104b46ca1745fbfc5888bbd0b0c5a626e052ae1387060839c8efd512fb127e25769b3dc9562db1dc1b5add6e0b93b7ef64f477feb6416a45 languageName: node linkType: hard @@ -2586,9 +2511,9 @@ __metadata: linkType: hard "cmd-shim@npm:^6.0.0": - version: 6.0.2 - resolution: "cmd-shim@npm:6.0.2" - checksum: df3a01fc4d72a49b450985b991205e65774b28e7f74a2e4d2a11fd0df8732e3828f9e7b644050def3cd0be026cbd3ee46a1f50ce5f57d0b3fb5afe335bdfacde + version: 6.0.1 + resolution: "cmd-shim@npm:6.0.1" + checksum: 359006b3a5bb4a0ff161a44ccc18fbba947db748ef0dd12273e476792e316a5edb0945d74bfa1e91cd88ce0511025fde87901eda092c479d83cfcd6734562683 languageName: node linkType: hard @@ -2600,9 +2525,9 @@ __metadata: linkType: hard "collect-v8-coverage@npm:^1.0.0": - version: 1.0.2 - resolution: "collect-v8-coverage@npm:1.0.2" - checksum: c10f41c39ab84629d16f9f6137bc8a63d332244383fc368caf2d2052b5e04c20cd1fd70f66fcf4e2422b84c8226598b776d39d5f2d2a51867cc1ed5d1982b4da + version: 1.0.1 + resolution: "collect-v8-coverage@npm:1.0.1" + checksum: 4efe0a1fccd517b65478a2364b33dadd0a43fc92a56f59aaece9b6186fe5177b2de471253587de7c91516f07c7268c2f6770b6cbcffc0e0ece353b766ec87e55 languageName: node linkType: hard @@ -2655,9 +2580,9 @@ __metadata: linkType: hard "commander@npm:^9.0.0": - version: 9.5.0 - resolution: "commander@npm:9.5.0" - checksum: c7a3e27aa59e913b54a1bafd366b88650bc41d6651f0cbe258d4ff09d43d6a7394232a4dadd0bf518b3e696fdf595db1028a0d82c785b88bd61f8a440cecfade + version: 9.3.0 + resolution: "commander@npm:9.3.0" + checksum: d421ce66fee25792a1470c69aa8d1b86434bf873a96483aa92c8267f81a6f20c6f7c426f5e82f88ac50a8ec4855d3f2787aebcdef8aa559e1080a2337a95a217 languageName: node linkType: hard @@ -2691,10 +2616,12 @@ __metadata: languageName: node linkType: hard -"convert-source-map@npm:^1.4.0": - version: 1.9.0 - resolution: "convert-source-map@npm:1.9.0" - checksum: dc55a1f28ddd0e9485ef13565f8f756b342f9a46c4ae18b843fe3c30c675d058d6a4823eff86d472f187b176f0adf51ea7b69ea38be34be4a63cbbf91b0593c8 +"convert-source-map@npm:^1.4.0, convert-source-map@npm:^1.6.0": + version: 1.7.0 + resolution: "convert-source-map@npm:1.7.0" + dependencies: + safe-buffer: ~5.1.1 + checksum: bcd2e3ea7d37f96b85a6e362c8a89402ccc73757256e3ee53aa2c22fe915adb854c66b1f81111be815a3a6a6ce3c58e8001858e883c9d5b4fe08a853fa865967 languageName: node linkType: hard @@ -2705,7 +2632,7 @@ __metadata: languageName: node linkType: hard -"cosmiconfig@npm:^7.1.0": +"cosmiconfig@npm:^7.0.0": version: 7.1.0 resolution: "cosmiconfig@npm:7.1.0" dependencies: @@ -2745,7 +2672,7 @@ __metadata: languageName: node linkType: hard -"cross-spawn@npm:^7.0.0, cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3": +"cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3": version: 7.0.3 resolution: "cross-spawn@npm:7.0.3" dependencies: @@ -2756,7 +2683,7 @@ __metadata: languageName: node linkType: hard -"debug@npm:4, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.3, debug@npm:^4.3.4": +"debug@npm:4, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.2.0, debug@npm:^4.3.2, debug@npm:^4.3.3, debug@npm:^4.3.4": version: 4.3.4 resolution: "debug@npm:4.3.4" dependencies: @@ -2768,15 +2695,6 @@ __metadata: languageName: node linkType: hard -"debug@npm:^2.6.9": - version: 2.6.9 - resolution: "debug@npm:2.6.9" - dependencies: - ms: 2.0.0 - checksum: d2f51589ca66df60bf36e1fa6e4386b318c3f1e06772280eea5b1ae9fd3d05e9c2b7fd8a7d862457d00853c75b00451aa2d7459b924629ee385287a650f58fe6 - languageName: node - linkType: hard - "debug@npm:^3.2.7": version: 3.2.7 resolution: "debug@npm:3.2.7" @@ -2803,16 +2721,16 @@ __metadata: linkType: hard "deep-is@npm:^0.1.3": - version: 0.1.4 - resolution: "deep-is@npm:0.1.4" - checksum: edb65dd0d7d1b9c40b2f50219aef30e116cedd6fc79290e740972c132c09106d2e80aa0bc8826673dd5a00222d4179c84b36a790eef63a4c4bca75a37ef90804 + version: 0.1.3 + resolution: "deep-is@npm:0.1.3" + checksum: c15b04c3848a89880c94e25b077c19b47d9a30dd99048e70e5f95d943e7b246bee1da0c1376b56b01bc045be2cae7d9b1c856e68e47e9805634327de7c6cb6d5 languageName: node linkType: hard "deepmerge@npm:^4.2.2": - version: 4.3.1 - resolution: "deepmerge@npm:4.3.1" - checksum: 2024c6a980a1b7128084170c4cf56b0fd58a63f2da1660dcfe977415f27b17dbe5888668b59d0b063753f3220719d5e400b7f113609489c90160bb9a5518d052 + version: 4.2.2 + resolution: "deepmerge@npm:4.2.2" + checksum: a8c43a1ed8d6d1ed2b5bf569fa4c8eb9f0924034baf75d5d406e47e157a451075c4db353efea7b6bcc56ec48116a8ce72fccf867b6e078e7c561904b5897530b languageName: node linkType: hard @@ -2823,25 +2741,13 @@ __metadata: languageName: node linkType: hard -"define-data-property@npm:^1.0.1, define-data-property@npm:^1.1.2": +"define-properties@npm:^1.1.3, define-properties@npm:^1.1.4": version: 1.1.4 - resolution: "define-data-property@npm:1.1.4" + resolution: "define-properties@npm:1.1.4" dependencies: - es-define-property: ^1.0.0 - es-errors: ^1.3.0 - gopd: ^1.0.1 - checksum: 8068ee6cab694d409ac25936eb861eea704b7763f7f342adbdfe337fc27c78d7ae0eff2364b2917b58c508d723c7a074326d068eef2e45c4edcd85cf94d0313b - languageName: node - linkType: hard - -"define-properties@npm:^1.1.3, define-properties@npm:^1.2.0, define-properties@npm:^1.2.1": - version: 1.2.1 - resolution: "define-properties@npm:1.2.1" - dependencies: - define-data-property: ^1.0.1 has-property-descriptors: ^1.0.0 object-keys: ^1.1.1 - checksum: b4ccd00597dd46cb2d4a379398f5b19fca84a16f3374e2249201992f36b30f6835949a9429669ee6b41b6e837205a163eadd745e472069e70dfc10f03e5fcc12 + checksum: ce0aef3f9eb193562b5cfb79b2d2c86b6a109dfc9fdcb5f45d680631a1a908c06824ddcdb72b7573b54e26ace07f0a23420aaba0d5c627b34d2c1de8ef527e2b languageName: node linkType: hard @@ -2853,35 +2759,42 @@ __metadata: linkType: hard "depcheck@npm:^1.4.3": - version: 1.4.7 - resolution: "depcheck@npm:1.4.7" + version: 1.4.3 + resolution: "depcheck@npm:1.4.3" dependencies: - "@babel/parser": ^7.23.0 - "@babel/traverse": ^7.23.2 - "@vue/compiler-sfc": ^3.3.4 - callsite: ^1.0.0 - camelcase: ^6.3.0 - cosmiconfig: ^7.1.0 - debug: ^4.3.4 - deps-regex: ^0.2.0 - findup-sync: ^5.0.0 - ignore: ^5.2.4 - is-core-module: ^2.12.0 - js-yaml: ^3.14.1 - json5: ^2.2.3 - lodash: ^4.17.21 - minimatch: ^7.4.6 + "@babel/parser": 7.16.4 + "@babel/traverse": ^7.12.5 + "@vue/compiler-sfc": ^3.0.5 + camelcase: ^6.2.0 + cosmiconfig: ^7.0.0 + debug: ^4.2.0 + deps-regex: ^0.1.4 + ignore: ^5.1.8 + is-core-module: ^2.4.0 + js-yaml: ^3.14.0 + json5: ^2.1.3 + lodash: ^4.17.20 + minimatch: ^3.0.4 multimatch: ^5.0.0 please-upgrade-node: ^3.2.0 - readdirp: ^3.6.0 + query-ast: ^1.0.3 + readdirp: ^3.5.0 require-package-name: ^2.0.1 - resolve: ^1.22.3 - resolve-from: ^5.0.0 - semver: ^7.5.4 - yargs: ^16.2.0 + resolve: ^1.18.1 + sass: ^1.29.0 + scss-parser: ^1.0.4 + semver: ^7.3.2 + yargs: ^16.1.0 bin: depcheck: bin/depcheck.js - checksum: e648788554ba88bd0dc37ce398f7756f143a78487b4ee3ac01756ad7ed97034476e0709497e9f8e474117bd4258db669a53fd46fafb703f151c9a0394fc8a55a + checksum: 122631cab325707a55e26a8b530eb72c893bd481194100b1853ac2bc944b61320eb0e1ea0ff7e71724009cdfbd4057381d7bf868b9c5aad0c4207ac0bdca5e48 + languageName: node + linkType: hard + +"depd@npm:^1.1.2": + version: 1.1.2 + resolution: "depd@npm:1.1.2" + checksum: 6b406620d269619852885ce15965272b829df6f409724415e0002c8632ab6a8c0a08ec1f0bd2add05dc7bd7507606f7e2cc034fa24224ab829580040b835ecd9 languageName: node linkType: hard @@ -2892,41 +2805,27 @@ __metadata: languageName: node linkType: hard -"deps-regex@npm:^0.2.0": - version: 0.2.0 - resolution: "deps-regex@npm:0.2.0" - checksum: a782304d481824c21c5aaff3d7fbd2eba9b112688cbadb36537304dde61e106595d4858bd097fad1df8b96fbff3df571dc9bfd73b749cbd24fd088cce3a999d8 - languageName: node - linkType: hard - -"detect-file@npm:^1.0.0": - version: 1.0.0 - resolution: "detect-file@npm:1.0.0" - checksum: 1861e4146128622e847abe0e1ed80fef01e78532665858a792267adf89032b7a9c698436137707fcc6f02956c2a6a0052d6a0cef5be3d4b76b1ff0da88e2158a +"deps-regex@npm:^0.1.4": + version: 0.1.4 + resolution: "deps-regex@npm:0.1.4" + checksum: 70c5e7fa887513bb8c55165c53e4ae511786ed7bf3d98d4dbef97a8879a808a5bc549034b1dfcdc7565c153e2fc2f7d8ee766eeb88156e78b2447dd75c1516e9 languageName: node linkType: hard -"detect-indent@npm:^7.0.1": - version: 7.0.1 - resolution: "detect-indent@npm:7.0.1" - checksum: cbf3f0b1c3c881934ca94428e1179b26ab2a587e0d719031d37a67fb506d49d067de54ff057cb1e772e75975fed5155c01cd4518306fee60988b1486e3fc7768 +"detect-indent@npm:^6.0.0": + version: 6.1.0 + resolution: "detect-indent@npm:6.1.0" + checksum: ab953a73c72dbd4e8fc68e4ed4bfd92c97eb6c43734af3900add963fd3a9316f3bc0578b018b24198d4c31a358571eff5f0656e81a1f3b9ad5c547d58b2d093d languageName: node linkType: hard -"detect-newline@npm:^3.0.0": +"detect-newline@npm:3.1.0, detect-newline@npm:^3.0.0": version: 3.1.0 resolution: "detect-newline@npm:3.1.0" checksum: ae6cd429c41ad01b164c59ea36f264a2c479598e61cba7c99da24175a7ab80ddf066420f2bec9a1c57a6bead411b4655ff15ad7d281c000a89791f48cbe939e7 languageName: node linkType: hard -"detect-newline@npm:^4.0.0": - version: 4.0.1 - resolution: "detect-newline@npm:4.0.1" - checksum: 0409ecdfb93419591ccff24fccfe2ddddad29b66637d1ed898872125b25af05014fdeedc9306339577060f69f59fe6e9830cdd80948597f136dfbffefa60599c - languageName: node - linkType: hard - "diff-sequences@npm:^28.1.1": version: 28.1.1 resolution: "diff-sequences@npm:28.1.1" @@ -2942,9 +2841,9 @@ __metadata: linkType: hard "diff@npm:^5.0.0": - version: 5.2.0 - resolution: "diff@npm:5.2.0" - checksum: 12b63ca9c36c72bafa3effa77121f0581b4015df18bc16bac1f8e263597735649f1a173c26f7eba17fb4162b073fee61788abe49610e6c70a2641fe1895443fd + version: 5.0.0 + resolution: "diff@npm:5.0.0" + checksum: f19fe29284b633afdb2725c2a8bb7d25761ea54d321d8e67987ac851c5294be4afeab532bd84531e02583a3fe7f4014aa314a3eda84f5590e7a9e6b371ef3b46 languageName: node linkType: hard @@ -2975,17 +2874,10 @@ __metadata: languageName: node linkType: hard -"eastasianwidth@npm:^0.2.0": - version: 0.2.0 - resolution: "eastasianwidth@npm:0.2.0" - checksum: 7d00d7cd8e49b9afa762a813faac332dee781932d6f2c848dc348939c4253f1d4564341b7af1d041853bc3f32c2ef141b58e0a4d9862c17a7f08f68df1e0f1ed - languageName: node - linkType: hard - -"electron-to-chromium@npm:^1.4.668": - version: 1.4.670 - resolution: "electron-to-chromium@npm:1.4.670" - checksum: 862fb1ebb0ff58816cf2f70c973c1915d5c4b1f88c43dad040130e0fdf162b9477f9ff14d70cac8aa668e45c093dd5b0b3815728ec79a8118aa5e62d8c48ee6b +"electron-to-chromium@npm:^1.4.535": + version: 1.4.559 + resolution: "electron-to-chromium@npm:1.4.559" + checksum: 020388642361ee08744256d3e56842d28611b0ba5967897cba574e08abb6ad851c03626393f326cbb85e65318ee85afd240a5dbf1e72f3fb04f3050243146228 languageName: node linkType: hard @@ -3003,13 +2895,6 @@ __metadata: languageName: node linkType: hard -"emoji-regex@npm:^9.2.2": - version: 9.2.2 - resolution: "emoji-regex@npm:9.2.2" - checksum: 8487182da74aabd810ac6d6f1994111dfc0e331b01271ae01ec1eb0ad7b5ecc2bbbbd2f053c05cb55a1ac30449527d819bbfbf0e3de1023db308cbcb47f86601 - languageName: node - linkType: hard - "encoding@npm:^0.1.13": version: 0.1.13 resolution: "encoding@npm:0.1.13" @@ -3028,13 +2913,6 @@ __metadata: languageName: node linkType: hard -"entities@npm:^4.5.0": - version: 4.5.0 - resolution: "entities@npm:4.5.0" - checksum: 853f8ebd5b425d350bffa97dd6958143179a5938352ccae092c62d1267c4e392a039be1bae7d51b6e4ffad25f51f9617531fedf5237f15df302ccfb452cbf2d7 - languageName: node - linkType: hard - "env-paths@npm:^2.2.0": version: 2.2.1 resolution: "env-paths@npm:2.2.1" @@ -3058,88 +2936,65 @@ __metadata: languageName: node linkType: hard -"es-abstract@npm:^1.22.1, es-abstract@npm:^1.22.3": - version: 1.22.4 - resolution: "es-abstract@npm:1.22.4" +"es-abstract@npm:^1.19.0, es-abstract@npm:^1.20.4": + version: 1.21.2 + resolution: "es-abstract@npm:1.21.2" dependencies: - array-buffer-byte-length: ^1.0.1 - arraybuffer.prototype.slice: ^1.0.3 - available-typed-arrays: ^1.0.6 - call-bind: ^1.0.7 - es-define-property: ^1.0.0 - es-errors: ^1.3.0 - es-set-tostringtag: ^2.0.2 + array-buffer-byte-length: ^1.0.0 + available-typed-arrays: ^1.0.5 + call-bind: ^1.0.2 + es-set-tostringtag: ^2.0.1 es-to-primitive: ^1.2.1 - function.prototype.name: ^1.1.6 - get-intrinsic: ^1.2.4 - get-symbol-description: ^1.0.2 + function.prototype.name: ^1.1.5 + get-intrinsic: ^1.2.0 + get-symbol-description: ^1.0.0 globalthis: ^1.0.3 gopd: ^1.0.1 - has-property-descriptors: ^1.0.2 + has: ^1.0.3 + has-property-descriptors: ^1.0.0 has-proto: ^1.0.1 has-symbols: ^1.0.3 - hasown: ^2.0.1 - internal-slot: ^1.0.7 - is-array-buffer: ^3.0.4 + internal-slot: ^1.0.5 + is-array-buffer: ^3.0.2 is-callable: ^1.2.7 is-negative-zero: ^2.0.2 is-regex: ^1.1.4 is-shared-array-buffer: ^1.0.2 is-string: ^1.0.7 - is-typed-array: ^1.1.13 + is-typed-array: ^1.1.10 is-weakref: ^1.0.2 - object-inspect: ^1.13.1 + object-inspect: ^1.12.3 object-keys: ^1.1.1 - object.assign: ^4.1.5 - regexp.prototype.flags: ^1.5.2 - safe-array-concat: ^1.1.0 - safe-regex-test: ^1.0.3 - string.prototype.trim: ^1.2.8 - string.prototype.trimend: ^1.0.7 - string.prototype.trimstart: ^1.0.7 - typed-array-buffer: ^1.0.1 - typed-array-byte-length: ^1.0.0 - typed-array-byte-offset: ^1.0.0 + object.assign: ^4.1.4 + regexp.prototype.flags: ^1.4.3 + safe-regex-test: ^1.0.0 + string.prototype.trim: ^1.2.7 + string.prototype.trimend: ^1.0.6 + string.prototype.trimstart: ^1.0.6 typed-array-length: ^1.0.4 unbox-primitive: ^1.0.2 - which-typed-array: ^1.1.14 - checksum: c254102395bd59315b713d72a1ce07980c0f71c9edcac6b036868740789ab5344020e940d6321fc1b31aecf6b27941fdd9655b602696e08f170986dd4d75ddc6 - languageName: node - linkType: hard - -"es-define-property@npm:^1.0.0": - version: 1.0.0 - resolution: "es-define-property@npm:1.0.0" - dependencies: - get-intrinsic: ^1.2.4 - checksum: f66ece0a887b6dca71848fa71f70461357c0e4e7249696f81bad0a1f347eed7b31262af4a29f5d726dc026426f085483b6b90301855e647aa8e21936f07293c6 - languageName: node - linkType: hard - -"es-errors@npm:^1.2.1, es-errors@npm:^1.3.0": - version: 1.3.0 - resolution: "es-errors@npm:1.3.0" - checksum: ec1414527a0ccacd7f15f4a3bc66e215f04f595ba23ca75cdae0927af099b5ec865f9f4d33e9d7e86f512f252876ac77d4281a7871531a50678132429b1271b5 + which-typed-array: ^1.1.9 + checksum: 037f55ee5e1cdf2e5edbab5524095a4f97144d95b94ea29e3611b77d852fd8c8a40e7ae7101fa6a759a9b9b1405f188c3c70928f2d3cd88d543a07fc0d5ad41a languageName: node linkType: hard -"es-set-tostringtag@npm:^2.0.2": - version: 2.0.2 - resolution: "es-set-tostringtag@npm:2.0.2" +"es-set-tostringtag@npm:^2.0.1": + version: 2.0.1 + resolution: "es-set-tostringtag@npm:2.0.1" dependencies: - get-intrinsic: ^1.2.2 + get-intrinsic: ^1.1.3 + has: ^1.0.3 has-tostringtag: ^1.0.0 - hasown: ^2.0.0 - checksum: afcec3a4c9890ae14d7ec606204858441c801ff84f312538e1d1ccf1e5493c8b17bd672235df785f803756472cb4f2d49b87bde5237aef33411e74c22f194e07 + checksum: ec416a12948cefb4b2a5932e62093a7cf36ddc3efd58d6c58ca7ae7064475ace556434b869b0bbeb0c365f1032a8ccd577211101234b69837ad83ad204fff884 languageName: node linkType: hard "es-shim-unscopables@npm:^1.0.0": - version: 1.0.2 - resolution: "es-shim-unscopables@npm:1.0.2" + version: 1.0.0 + resolution: "es-shim-unscopables@npm:1.0.0" dependencies: - hasown: ^2.0.0 - checksum: 432bd527c62065da09ed1d37a3f8e623c423683285e6188108286f4a1e8e164a5bcbfbc0051557c7d14633cd2a41ce24c7048e6bbb66a985413fd32f1be72626 + has: ^1.0.3 + checksum: 83e95cadbb6ee44d3644dfad60dcad7929edbc42c85e66c3e99aefd68a3a5c5665f2686885cddb47dfeabfd77bd5ea5a7060f2092a955a729bbd8834f0d86fa1 languageName: node linkType: hard @@ -3155,9 +3010,9 @@ __metadata: linkType: hard "escalade@npm:^3.1.1": - version: 3.1.2 - resolution: "escalade@npm:3.1.2" - checksum: 1ec0977aa2772075493002bdbd549d595ff6e9393b1cb0d7d6fcaf78c750da0c158f180938365486f75cb69fba20294351caddfce1b46552a7b6c3cde52eaa02 + version: 3.1.1 + resolution: "escalade@npm:3.1.1" + checksum: a3e2a99f07acb74b3ad4989c48ca0c3140f69f923e56d0cba0526240ee470b91010f9d39001f2a4a313841d237ede70a729e92125191ba5d21e74b106800b133 languageName: node linkType: hard @@ -3190,28 +3045,28 @@ __metadata: linkType: hard "eslint-config-prettier@npm:^8.8.0": - version: 8.10.0 - resolution: "eslint-config-prettier@npm:8.10.0" + version: 8.8.0 + resolution: "eslint-config-prettier@npm:8.8.0" peerDependencies: eslint: ">=7.0.0" bin: eslint-config-prettier: bin/cli.js - checksum: 153266badd477e49b0759816246b2132f1dbdb6c7f313ca60a9af5822fd1071c2bc5684a3720d78b725452bbac04bb130878b2513aea5e72b1b792de5a69fec8 + checksum: 1e94c3882c4d5e41e1dcfa2c368dbccbfe3134f6ac7d40101644d3bfbe3eb2f2ffac757f3145910b5eacf20c0e85e02b91293d3126d770cbf3dc390b3564681c languageName: node linkType: hard -"eslint-import-resolver-node@npm:^0.3.6": - version: 0.3.9 - resolution: "eslint-import-resolver-node@npm:0.3.9" +"eslint-import-resolver-node@npm:^0.3.7": + version: 0.3.7 + resolution: "eslint-import-resolver-node@npm:0.3.7" dependencies: debug: ^3.2.7 - is-core-module: ^2.13.0 - resolve: ^1.22.4 - checksum: 439b91271236b452d478d0522a44482e8c8540bf9df9bd744062ebb89ab45727a3acd03366a6ba2bdbcde8f9f718bab7fe8db64688aca75acf37e04eafd25e22 + is-core-module: ^2.11.0 + resolve: ^1.22.1 + checksum: 3379aacf1d2c6952c1b9666c6fa5982c3023df695430b0d391c0029f6403a7775414873d90f397e98ba6245372b6c8960e16e74d9e4a3b0c0a4582f3bdbe3d6e languageName: node linkType: hard -"eslint-module-utils@npm:^2.7.3": +"eslint-module-utils@npm:^2.7.4": version: 2.8.0 resolution: "eslint-module-utils@npm:2.8.0" dependencies: @@ -3235,36 +3090,38 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-import@npm:2.26.0": - version: 2.26.0 - resolution: "eslint-plugin-import@npm:2.26.0" +"eslint-plugin-import@npm:^2.27.5": + version: 2.27.5 + resolution: "eslint-plugin-import@npm:2.27.5" dependencies: - array-includes: ^3.1.4 - array.prototype.flat: ^1.2.5 - debug: ^2.6.9 + array-includes: ^3.1.6 + array.prototype.flat: ^1.3.1 + array.prototype.flatmap: ^1.3.1 + debug: ^3.2.7 doctrine: ^2.1.0 - eslint-import-resolver-node: ^0.3.6 - eslint-module-utils: ^2.7.3 + eslint-import-resolver-node: ^0.3.7 + eslint-module-utils: ^2.7.4 has: ^1.0.3 - is-core-module: ^2.8.1 + is-core-module: ^2.11.0 is-glob: ^4.0.3 minimatch: ^3.1.2 - object.values: ^1.1.5 - resolve: ^1.22.0 + object.values: ^1.1.6 + resolve: ^1.22.1 + semver: ^6.3.0 tsconfig-paths: ^3.14.1 peerDependencies: eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 - checksum: 0bf77ad80339554481eafa2b1967449e1f816b94c7a6f9614ce33fb4083c4e6c050f10d241dd50b4975d47922880a34de1e42ea9d8e6fd663ebb768baa67e655 + checksum: f500571a380167e25d72a4d925ef9a7aae8899eada57653e5f3051ec3d3c16d08271fcefe41a30a9a2f4fefc232f066253673ee4ea77b30dba65ae173dade85d languageName: node linkType: hard "eslint-plugin-jest@npm:^27.2.2": - version: 27.8.0 - resolution: "eslint-plugin-jest@npm:27.8.0" + version: 27.2.2 + resolution: "eslint-plugin-jest@npm:27.2.2" dependencies: "@typescript-eslint/utils": ^5.10.0 peerDependencies: - "@typescript-eslint/eslint-plugin": ^5.0.0 || ^6.0.0 || ^7.0.0 + "@typescript-eslint/eslint-plugin": ^5.0.0 eslint: ^7.0.0 || ^8.0.0 jest: "*" peerDependenciesMeta: @@ -3272,7 +3129,7 @@ __metadata: optional: true jest: optional: true - checksum: 1fcdcf332b6d95c2433dcdf908b46e494a671bb101c675f99525c7a664853e60c247d63f302946d5a4f74f497a73c41673bc365a841f81bb4651b527379487e2 + checksum: 98b63252d985f5dedf36ce9587dd4a0d24daf71ca8a997258343402c0d33ddd5070502378dafd9ac7fc0ef2e0d557b5c77f18e09ad73c71a52de8061db88293f languageName: node linkType: hard @@ -3345,13 +3202,13 @@ __metadata: languageName: node linkType: hard -"eslint-scope@npm:^7.2.2": - version: 7.2.2 - resolution: "eslint-scope@npm:7.2.2" +"eslint-scope@npm:^7.2.0": + version: 7.2.0 + resolution: "eslint-scope@npm:7.2.0" dependencies: esrecurse: ^4.3.0 estraverse: ^5.2.0 - checksum: ec97dbf5fb04b94e8f4c5a91a7f0a6dd3c55e46bfc7bbcd0e3138c3a76977570e02ed89a1810c778dcd72072ff0e9621ba1379b4babe53921d71e2e4486fda3e + checksum: 64591a2d8b244ade9c690b59ef238a11d5c721a98bcee9e9f445454f442d03d3e04eda88e95a4daec558220a99fa384309d9faae3d459bd40e7a81b4063980ae languageName: node linkType: hard @@ -3383,40 +3240,39 @@ __metadata: linkType: hard "eslint-visitor-keys@npm:^2.0.0": - version: 2.1.0 - resolution: "eslint-visitor-keys@npm:2.1.0" - checksum: e3081d7dd2611a35f0388bbdc2f5da60b3a3c5b8b6e928daffff7391146b434d691577aa95064c8b7faad0b8a680266bcda0a42439c18c717b80e6718d7e267d + version: 2.0.0 + resolution: "eslint-visitor-keys@npm:2.0.0" + checksum: e07e9863fb8c9b1453f5ad1a26f3cc8dd6b349b26605cc06bc0c61215ac5b6f13a4d08c875218e6c0f8ac8fc06ca6e090df769e32c569f0fd2e6a848b8a76c75 languageName: node linkType: hard -"eslint-visitor-keys@npm:^3.3.0, eslint-visitor-keys@npm:^3.4.1, eslint-visitor-keys@npm:^3.4.3": - version: 3.4.3 - resolution: "eslint-visitor-keys@npm:3.4.3" - checksum: 36e9ef87fca698b6fd7ca5ca35d7b2b6eeaaf106572e2f7fd31c12d3bfdaccdb587bba6d3621067e5aece31c8c3a348b93922ab8f7b2cbc6aaab5e1d89040c60 +"eslint-visitor-keys@npm:^3.3.0, eslint-visitor-keys@npm:^3.4.1": + version: 3.4.1 + resolution: "eslint-visitor-keys@npm:3.4.1" + checksum: f05121d868202736b97de7d750847a328fcfa8593b031c95ea89425333db59676ac087fa905eba438d0a3c5769632f828187e0c1a0d271832a2153c1d3661c2c languageName: node linkType: hard "eslint@npm:^8.44.0": - version: 8.56.0 - resolution: "eslint@npm:8.56.0" + version: 8.44.0 + resolution: "eslint@npm:8.44.0" dependencies: "@eslint-community/eslint-utils": ^4.2.0 - "@eslint-community/regexpp": ^4.6.1 - "@eslint/eslintrc": ^2.1.4 - "@eslint/js": 8.56.0 - "@humanwhocodes/config-array": ^0.11.13 + "@eslint-community/regexpp": ^4.4.0 + "@eslint/eslintrc": ^2.1.0 + "@eslint/js": 8.44.0 + "@humanwhocodes/config-array": ^0.11.10 "@humanwhocodes/module-importer": ^1.0.1 "@nodelib/fs.walk": ^1.2.8 - "@ungap/structured-clone": ^1.2.0 - ajv: ^6.12.4 + ajv: ^6.10.0 chalk: ^4.0.0 cross-spawn: ^7.0.2 debug: ^4.3.2 doctrine: ^3.0.0 escape-string-regexp: ^4.0.0 - eslint-scope: ^7.2.2 - eslint-visitor-keys: ^3.4.3 - espree: ^9.6.1 + eslint-scope: ^7.2.0 + eslint-visitor-keys: ^3.4.1 + espree: ^9.6.0 esquery: ^1.4.2 esutils: ^2.0.2 fast-deep-equal: ^3.1.3 @@ -3426,6 +3282,7 @@ __metadata: globals: ^13.19.0 graphemer: ^1.4.0 ignore: ^5.2.0 + import-fresh: ^3.0.0 imurmurhash: ^0.1.4 is-glob: ^4.0.0 is-path-inside: ^3.0.3 @@ -3437,21 +3294,22 @@ __metadata: natural-compare: ^1.4.0 optionator: ^0.9.3 strip-ansi: ^6.0.1 + strip-json-comments: ^3.1.0 text-table: ^0.2.0 bin: eslint: bin/eslint.js - checksum: 883436d1e809b4a25d9eb03d42f584b84c408dbac28b0019f6ea07b5177940bf3cca86208f749a6a1e0039b63e085ee47aca1236c30721e91f0deef5cc5a5136 + checksum: d06309ce4aafb9d27d558c8e5e5aa5cba3bbec3ce8ceccbc7d4b7a35f2b67fd40189159155553270e2e6febeb69bd8a3b60d6241c8f5ddc2ef1702ccbd328501 languageName: node linkType: hard -"espree@npm:^9.6.0, espree@npm:^9.6.1": - version: 9.6.1 - resolution: "espree@npm:9.6.1" +"espree@npm:^9.6.0": + version: 9.6.0 + resolution: "espree@npm:9.6.0" dependencies: acorn: ^8.9.0 acorn-jsx: ^5.3.2 eslint-visitor-keys: ^3.4.1 - checksum: eb8c149c7a2a77b3f33a5af80c10875c3abd65450f60b8af6db1bfcfa8f101e21c1e56a561c6dc13b848e18148d43469e7cd208506238554fb5395a9ea5a1ab9 + checksum: 1287979510efb052a6a97c73067ea5d0a40701b29adde87bbe2d3eb1667e39ca55e8129e20e2517fed3da570150e7ef470585228459a8f3e3755f45007a1c662 languageName: node linkType: hard @@ -3491,9 +3349,9 @@ __metadata: linkType: hard "estraverse@npm:^5.1.0, estraverse@npm:^5.2.0": - version: 5.3.0 - resolution: "estraverse@npm:5.3.0" - checksum: 072780882dc8416ad144f8fe199628d2b3e7bbc9989d9ed43795d2c90309a2047e6bc5979d7e2322a341163d22cfad9e21f4110597fe487519697389497e4e2b + version: 5.2.0 + resolution: "estraverse@npm:5.2.0" + checksum: ec11b70d946bf5d7f76f91db38ef6f08109ac1b36cda293a26e678e58df4719f57f67b9ec87042afdd1f0267cee91865be3aa48d2161765a93defab5431be7b8 languageName: node linkType: hard @@ -3512,14 +3370,14 @@ __metadata: linkType: hard "ethereum-cryptography@npm:^2.0.0": - version: 2.1.3 - resolution: "ethereum-cryptography@npm:2.1.3" + version: 2.1.2 + resolution: "ethereum-cryptography@npm:2.1.2" dependencies: - "@noble/curves": 1.3.0 - "@noble/hashes": 1.3.3 - "@scure/bip32": 1.3.3 - "@scure/bip39": 1.2.2 - checksum: 7f9c14f868a588641179cace3eb86c332c4743290865db699870710253cabc4dc74bd4bce5e7bc6db667482e032e94d6f79521219eb6be5dc422059d279a27b7 + "@noble/curves": 1.1.0 + "@noble/hashes": 1.3.1 + "@scure/bip32": 1.3.1 + "@scure/bip39": 1.2.1 + checksum: 2e8f7b8cc90232ae838ab6a8167708e8362621404d26e79b5d9e762c7b53d699f7520aff358d9254de658fcd54d2d0af168ff909943259ed27dc4cef2736410c languageName: node linkType: hard @@ -3571,15 +3429,6 @@ __metadata: languageName: node linkType: hard -"expand-tilde@npm:^2.0.0, expand-tilde@npm:^2.0.2": - version: 2.0.2 - resolution: "expand-tilde@npm:2.0.2" - dependencies: - homedir-polyfill: ^1.0.1 - checksum: 2efe6ed407d229981b1b6ceb552438fbc9e5c7d6a6751ad6ced3e0aa5cf12f0b299da695e90d6c2ac79191b5c53c613e508f7149e4573abfbb540698ddb7301a - languageName: node - linkType: hard - "expect@npm:^28.0.0, expect@npm:^28.1.3": version: 28.1.3 resolution: "expect@npm:28.1.3" @@ -3593,13 +3442,6 @@ __metadata: languageName: node linkType: hard -"exponential-backoff@npm:^3.1.1": - version: 3.1.1 - resolution: "exponential-backoff@npm:3.1.1" - checksum: 3d21519a4f8207c99f7457287291316306255a328770d320b401114ec8481986e4e467e854cb9914dd965e0a1ca810a23ccb559c642c88f4c7f55c55778a9b48 - languageName: node - linkType: hard - "ext-list@npm:^2.0.0": version: 2.2.2 resolution: "ext-list@npm:2.2.2" @@ -3627,22 +3469,22 @@ __metadata: linkType: hard "fast-diff@npm:^1.1.2": - version: 1.3.0 - resolution: "fast-diff@npm:1.3.0" - checksum: d22d371b994fdc8cce9ff510d7b8dc4da70ac327bcba20df607dd5b9cae9f908f4d1028f5fe467650f058d1e7270235ae0b8230809a262b4df587a3b3aa216c3 + version: 1.2.0 + resolution: "fast-diff@npm:1.2.0" + checksum: 1b5306eaa9e826564d9e5ffcd6ebd881eb5f770b3f977fcbf38f05c824e42172b53c79920e8429c54eb742ce15a0caf268b0fdd5b38f6de52234c4a8368131ae languageName: node linkType: hard -"fast-glob@npm:^3.2.5, fast-glob@npm:^3.2.9, fast-glob@npm:^3.3.0": - version: 3.3.2 - resolution: "fast-glob@npm:3.3.2" +"fast-glob@npm:^3.0.3, fast-glob@npm:^3.2.5, fast-glob@npm:^3.2.9": + version: 3.2.12 + resolution: "fast-glob@npm:3.2.12" dependencies: "@nodelib/fs.stat": ^2.0.2 "@nodelib/fs.walk": ^1.2.3 glob-parent: ^5.1.2 merge2: ^1.3.0 micromatch: ^4.0.4 - checksum: 900e4979f4dbc3313840078419245621259f349950411ca2fa445a2f9a1a6d98c3b5e7e0660c5ccd563aa61abe133a21765c6c0dec8e57da1ba71d8000b05ec1 + checksum: 0b1990f6ce831c7e28c4d505edcdaad8e27e88ab9fa65eedadb730438cfc7cde4910d6c975d6b7b8dc8a73da4773702ebcfcd6e3518e73938bb1383badfe01c2 languageName: node linkType: hard @@ -3661,20 +3503,20 @@ __metadata: linkType: hard "fastq@npm:^1.6.0": - version: 1.17.1 - resolution: "fastq@npm:1.17.1" + version: 1.11.0 + resolution: "fastq@npm:1.11.0" dependencies: reusify: ^1.0.4 - checksum: a8c5b26788d5a1763f88bae56a8ddeee579f935a831c5fe7a8268cea5b0a91fbfe705f612209e02d639b881d7b48e461a50da4a10cfaa40da5ca7cc9da098d88 + checksum: 9db0ceea9280c5f207da40c562a4e574913c18933cd74b880b01bf8e81a9a6e368ec71e89c9c1b9f4066d0275cc22600efd6dde87f713217acbf67076481734b languageName: node linkType: hard "fb-watchman@npm:^2.0.0": - version: 2.0.2 - resolution: "fb-watchman@npm:2.0.2" + version: 2.0.1 + resolution: "fb-watchman@npm:2.0.1" dependencies: bser: 2.1.1 - checksum: b15a124cef28916fe07b400eb87cbc73ca082c142abf7ca8e8de6af43eca79ca7bd13eb4d4d48240b3bd3136eaac40d16e42d6edf87a8e5d1dd8070626860c78 + checksum: 8510230778ab3a51c27dffb1b76ef2c24fab672a42742d3c0a45c2e9d1e5f20210b1fbca33486088da4a9a3958bde96b5aec0a63aac9894b4e9df65c88b2cbd6 languageName: node linkType: hard @@ -3754,33 +3596,20 @@ __metadata: languageName: node linkType: hard -"findup-sync@npm:^5.0.0": - version: 5.0.0 - resolution: "findup-sync@npm:5.0.0" - dependencies: - detect-file: ^1.0.0 - is-glob: ^4.0.3 - micromatch: ^4.0.4 - resolve-dir: ^1.0.1 - checksum: 576716c77a0e8330b17ae9cba27d1fda8907c8cda7bf33a47f1999e16e089bfc6df4dd62933e0760f430736183c054348c34aa45dd882d49c8c098f55b89ee1d - languageName: node - linkType: hard - "flat-cache@npm:^3.0.4": - version: 3.2.0 - resolution: "flat-cache@npm:3.2.0" + version: 3.0.4 + resolution: "flat-cache@npm:3.0.4" dependencies: - flatted: ^3.2.9 - keyv: ^4.5.3 + flatted: ^3.1.0 rimraf: ^3.0.2 - checksum: e7e0f59801e288b54bee5cb9681e9ee21ee28ef309f886b312c9d08415b79fc0f24ac842f84356ce80f47d6a53de62197ce0e6e148dc42d5db005992e2a756ec + checksum: 4fdd10ecbcbf7d520f9040dd1340eb5dfe951e6f0ecf2252edeec03ee68d989ec8b9a20f4434270e71bcfd57800dc09b3344fca3966b2eb8f613072c7d9a2365 languageName: node linkType: hard -"flatted@npm:^3.2.9": - version: 3.2.9 - resolution: "flatted@npm:3.2.9" - checksum: f14167fbe26a9d20f6fca8d998e8f1f41df72c8e81f9f2c9d61ed2bea058248f5e1cbd05e7f88c0e5087a6a0b822a1e5e2b446e879f3cfbe0b07ba2d7f80b026 +"flatted@npm:^3.1.0": + version: 3.1.1 + resolution: "flatted@npm:3.1.1" + checksum: 508935e3366d95444131f0aaa801a4301f24ea5bcb900d12764e7335b46b910730cc1b5bcfcfb8eccb7c8db261ba0671c6a7ca30d10870ff7a7756dc7e731a7a languageName: node linkType: hard @@ -3793,16 +3622,6 @@ __metadata: languageName: node linkType: hard -"foreground-child@npm:^3.1.0": - version: 3.1.1 - resolution: "foreground-child@npm:3.1.1" - dependencies: - cross-spawn: ^7.0.0 - signal-exit: ^4.0.1 - checksum: 139d270bc82dc9e6f8bc045fe2aae4001dc2472157044fdfad376d0a3457f77857fa883c1c8b21b491c6caade9a926a4bed3d3d2e8d3c9202b151a4cbbd0bcd5 - languageName: node - linkType: hard - "fs-minipass@npm:^2.0.0, fs-minipass@npm:^2.1.0": version: 2.1.0 resolution: "fs-minipass@npm:2.1.0" @@ -3812,15 +3631,6 @@ __metadata: languageName: node linkType: hard -"fs-minipass@npm:^3.0.0": - version: 3.0.3 - resolution: "fs-minipass@npm:3.0.3" - dependencies: - minipass: ^7.0.3 - checksum: 8722a41109130851d979222d3ec88aabaceeaaf8f57b2a8f744ef8bd2d1ce95453b04a61daa0078822bc5cd21e008814f06fe6586f56fef511e71b8d2394d802 - languageName: node - linkType: hard - "fs.realpath@npm:^1.0.0": version: 1.0.0 resolution: "fs.realpath@npm:1.0.0" @@ -3828,45 +3638,45 @@ __metadata: languageName: node linkType: hard -"fsevents@npm:^2.3.2": - version: 2.3.3 - resolution: "fsevents@npm:2.3.3" +"fsevents@npm:^2.3.2, fsevents@npm:~2.3.2": + version: 2.3.2 + resolution: "fsevents@npm:2.3.2" dependencies: node-gyp: latest - checksum: 11e6ea6fea15e42461fc55b4b0e4a0a3c654faa567f1877dbd353f39156f69def97a69936d1746619d656c4b93de2238bf731f6085a03a50cabf287c9d024317 + checksum: 97ade64e75091afee5265e6956cb72ba34db7819b4c3e94c431d4be2b19b8bb7a2d4116da417950c3425f17c8fe693d25e20212cac583ac1521ad066b77ae31f conditions: os=darwin languageName: node linkType: hard -"fsevents@patch:fsevents@^2.3.2#~builtin": - version: 2.3.3 - resolution: "fsevents@patch:fsevents@npm%3A2.3.3#~builtin::version=2.3.3&hash=18f3a7" +"fsevents@patch:fsevents@^2.3.2#~builtin, fsevents@patch:fsevents@~2.3.2#~builtin": + version: 2.3.2 + resolution: "fsevents@patch:fsevents@npm%3A2.3.2#~builtin::version=2.3.2&hash=18f3a7" dependencies: node-gyp: latest conditions: os=darwin languageName: node linkType: hard -"function-bind@npm:^1.1.2": - version: 1.1.2 - resolution: "function-bind@npm:1.1.2" - checksum: 2b0ff4ce708d99715ad14a6d1f894e2a83242e4a52ccfcefaee5e40050562e5f6dafc1adbb4ce2d4ab47279a45dc736ab91ea5042d843c3c092820dfe032efb1 +"function-bind@npm:^1.1.1": + version: 1.1.1 + resolution: "function-bind@npm:1.1.1" + checksum: b32fbaebb3f8ec4969f033073b43f5c8befbb58f1a79e12f1d7490358150359ebd92f49e72ff0144f65f2c48ea2a605bff2d07965f548f6474fd8efd95bf361a languageName: node linkType: hard -"function.prototype.name@npm:^1.1.6": - version: 1.1.6 - resolution: "function.prototype.name@npm:1.1.6" +"function.prototype.name@npm:^1.1.5": + version: 1.1.5 + resolution: "function.prototype.name@npm:1.1.5" dependencies: call-bind: ^1.0.2 - define-properties: ^1.2.0 - es-abstract: ^1.22.1 - functions-have-names: ^1.2.3 - checksum: 7a3f9bd98adab09a07f6e1f03da03d3f7c26abbdeaeee15223f6c04a9fb5674792bdf5e689dac19b97ac71de6aad2027ba3048a9b883aa1b3173eed6ab07f479 + define-properties: ^1.1.3 + es-abstract: ^1.19.0 + functions-have-names: ^1.2.2 + checksum: acd21d733a9b649c2c442f067567743214af5fa248dbeee69d8278ce7df3329ea5abac572be9f7470b4ec1cd4d8f1040e3c5caccf98ebf2bf861a0deab735c27 languageName: node linkType: hard -"functions-have-names@npm:^1.2.3": +"functions-have-names@npm:^1.2.2": version: 1.2.3 resolution: "functions-have-names@npm:1.2.3" checksum: c3f1f5ba20f4e962efb71344ce0a40722163e85bee2101ce25f88214e78182d2d2476aa85ef37950c579eb6cf6ee811c17b3101bb84004bb75655f3e33f3fdb5 @@ -3903,16 +3713,15 @@ __metadata: languageName: node linkType: hard -"get-intrinsic@npm:^1.1.3, get-intrinsic@npm:^1.2.1, get-intrinsic@npm:^1.2.2, get-intrinsic@npm:^1.2.3, get-intrinsic@npm:^1.2.4": - version: 1.2.4 - resolution: "get-intrinsic@npm:1.2.4" +"get-intrinsic@npm:^1.0.2, get-intrinsic@npm:^1.1.1, get-intrinsic@npm:^1.1.3, get-intrinsic@npm:^1.2.0": + version: 1.2.1 + resolution: "get-intrinsic@npm:1.2.1" dependencies: - es-errors: ^1.3.0 - function-bind: ^1.1.2 + function-bind: ^1.1.1 + has: ^1.0.3 has-proto: ^1.0.1 has-symbols: ^1.0.3 - hasown: ^2.0.0 - checksum: 414e3cdf2c203d1b9d7d33111df746a4512a1aa622770b361dadddf8ed0b5aeb26c560f49ca077e24bfafb0acb55ca908d1f709216ccba33ffc548ec8a79a951 + checksum: 5b61d88552c24b0cf6fa2d1b3bc5459d7306f699de060d76442cce49a4721f52b8c560a33ab392cf5575b7810277d54ded9d4d39a1ea61855619ebc005aa7e5f languageName: node linkType: hard @@ -3923,13 +3732,6 @@ __metadata: languageName: node linkType: hard -"get-stdin@npm:^9.0.0": - version: 9.0.0 - resolution: "get-stdin@npm:9.0.0" - checksum: 5972bc34d05932b45512c8e2d67b040f1c1ca8afb95c56cbc480985f2d761b7e37fe90dc8abd22527f062cc5639a6930ff346e9952ae4c11a2d4275869459594 - languageName: node - linkType: hard - "get-stream@npm:^3.0.0": version: 3.0.0 resolution: "get-stream@npm:3.0.0" @@ -3953,25 +3755,24 @@ __metadata: languageName: node linkType: hard -"get-symbol-description@npm:^1.0.2": - version: 1.0.2 - resolution: "get-symbol-description@npm:1.0.2" +"get-symbol-description@npm:^1.0.0": + version: 1.0.0 + resolution: "get-symbol-description@npm:1.0.0" dependencies: - call-bind: ^1.0.5 - es-errors: ^1.3.0 - get-intrinsic: ^1.2.4 - checksum: e1cb53bc211f9dbe9691a4f97a46837a553c4e7caadd0488dc24ac694db8a390b93edd412b48dcdd0b4bbb4c595de1709effc75fc87c0839deedc6968f5bd973 + call-bind: ^1.0.2 + get-intrinsic: ^1.1.1 + checksum: 9ceff8fe968f9270a37a1f73bf3f1f7bda69ca80f4f80850670e0e7b9444ff99323f7ac52f96567f8b5f5fbe7ac717a0d81d3407c7313e82810c6199446a5247 languageName: node linkType: hard -"git-hooks-list@npm:^3.0.0": - version: 3.1.0 - resolution: "git-hooks-list@npm:3.1.0" - checksum: 05cbdb29e1e14f3b6fde78c876a34383e4476b1be32e8486ad03293f01add884c1a8df8c2dce2ca5d99119c94951b2ff9fa9cbd51d834ae6477b6813cefb998f +"git-hooks-list@npm:1.0.3": + version: 1.0.3 + resolution: "git-hooks-list@npm:1.0.3" + checksum: a1dd03d39c1d727ba08a35dbdbdcc6e96de8c4170c942dc95bf787ca6e34998d39fb5295a00242b58a3d265de0b69a0686d0cf583baa6b7830f268542c4576b9 languageName: node linkType: hard -"glob-parent@npm:^5.1.2": +"glob-parent@npm:^5.1.2, glob-parent@npm:~5.1.2": version: 5.1.2 resolution: "glob-parent@npm:5.1.2" dependencies: @@ -3989,69 +3790,30 @@ __metadata: languageName: node linkType: hard -"glob@npm:^10.2.2, glob@npm:^10.3.10": - version: 10.3.10 - resolution: "glob@npm:10.3.10" - dependencies: - foreground-child: ^3.1.0 - jackspeak: ^2.3.5 - minimatch: ^9.0.1 - minipass: ^5.0.0 || ^6.0.2 || ^7.0.0 - path-scurry: ^1.10.1 - bin: - glob: dist/esm/bin.mjs - checksum: 4f2fe2511e157b5a3f525a54092169a5f92405f24d2aed3142f4411df328baca13059f4182f1db1bf933e2c69c0bd89e57ae87edd8950cba8c7ccbe84f721cf3 - languageName: node - linkType: hard - "glob@npm:^7.1.3, glob@npm:^7.1.4": - version: 7.2.3 - resolution: "glob@npm:7.2.3" + version: 7.1.6 + resolution: "glob@npm:7.1.6" dependencies: fs.realpath: ^1.0.0 inflight: ^1.0.4 inherits: 2 - minimatch: ^3.1.1 + minimatch: ^3.0.4 once: ^1.3.0 path-is-absolute: ^1.0.0 - checksum: 29452e97b38fa704dabb1d1045350fb2467cf0277e155aa9ff7077e90ad81d1ea9d53d3ee63bd37c05b09a065e90f16aec4a65f5b8de401d1dac40bc5605d133 + checksum: 351d549dd90553b87c2d3f90ce11aed9e1093c74130440e7ae0592e11bbcd2ce7f0ebb8ba6bfe63aaf9b62166a7f4c80cb84490ae5d78408bb2572bf7d4ee0a6 languageName: node linkType: hard "glob@npm:^8.0.1": - version: 8.1.0 - resolution: "glob@npm:8.1.0" + version: 8.0.3 + resolution: "glob@npm:8.0.3" dependencies: fs.realpath: ^1.0.0 inflight: ^1.0.4 inherits: 2 minimatch: ^5.0.1 once: ^1.3.0 - checksum: 92fbea3221a7d12075f26f0227abac435de868dd0736a17170663783296d0dd8d3d532a5672b4488a439bf5d7fb85cdd07c11185d6cd39184f0385cbdfb86a47 - languageName: node - linkType: hard - -"global-modules@npm:^1.0.0": - version: 1.0.0 - resolution: "global-modules@npm:1.0.0" - dependencies: - global-prefix: ^1.0.1 - is-windows: ^1.0.1 - resolve-dir: ^1.0.0 - checksum: 10be68796c1e1abc1e2ba87ec4ea507f5629873b119ab0cd29c07284ef2b930f1402d10df01beccb7391dedd9cd479611dd6a24311c71be58937beaf18edf85e - languageName: node - linkType: hard - -"global-prefix@npm:^1.0.1": - version: 1.0.2 - resolution: "global-prefix@npm:1.0.2" - dependencies: - expand-tilde: ^2.0.2 - homedir-polyfill: ^1.0.1 - ini: ^1.3.4 - is-windows: ^1.0.1 - which: ^1.2.14 - checksum: 061b43470fe498271bcd514e7746e8a8535032b17ab9570517014ae27d700ff0dca749f76bbde13ba384d185be4310d8ba5712cb0e74f7d54d59390db63dd9a0 + checksum: 50bcdea19d8e79d8de5f460b1939ffc2b3299eac28deb502093fdca22a78efebc03e66bf54f0abc3d3d07d8134d19a32850288b7440d77e072aa55f9d33b18c5 languageName: node linkType: hard @@ -4063,11 +3825,11 @@ __metadata: linkType: hard "globals@npm:^13.19.0": - version: 13.24.0 - resolution: "globals@npm:13.24.0" + version: 13.20.0 + resolution: "globals@npm:13.20.0" dependencies: type-fest: ^0.20.2 - checksum: 56066ef058f6867c04ff203b8a44c15b038346a62efbc3060052a1016be9f56f4cf0b2cd45b74b22b81e521a889fc7786c73691b0549c2f3a6e825b3d394f43c + checksum: ad1ecf914bd051325faad281d02ea2c0b1df5d01bd94d368dcc5513340eac41d14b3c61af325768e3c7f8d44576e72780ec0b6f2d366121f8eec6e03c3a3b97a languageName: node linkType: hard @@ -4080,6 +3842,22 @@ __metadata: languageName: node linkType: hard +"globby@npm:10.0.0": + version: 10.0.0 + resolution: "globby@npm:10.0.0" + dependencies: + "@types/glob": ^7.1.1 + array-union: ^2.1.0 + dir-glob: ^3.0.1 + fast-glob: ^3.0.3 + glob: ^7.1.3 + ignore: ^5.1.1 + merge2: ^1.2.3 + slash: ^3.0.0 + checksum: fbff58d2fcaedd9207901f6e3b5341ff885b6d499c3a095f7befde0fd03ec1ea634452a82f81e894e46f6a5d704da44b842ba93066f90dced52adf84d4b8d1cc + languageName: node + linkType: hard + "globby@npm:^11.1.0": version: 11.1.0 resolution: "globby@npm:11.1.0" @@ -4094,19 +3872,6 @@ __metadata: languageName: node linkType: hard -"globby@npm:^13.1.2": - version: 13.2.2 - resolution: "globby@npm:13.2.2" - dependencies: - dir-glob: ^3.0.1 - fast-glob: ^3.3.0 - ignore: ^5.2.4 - merge2: ^1.4.1 - slash: ^4.0.0 - checksum: f3d84ced58a901b4fcc29c846983108c426631fe47e94872868b65565495f7bee7b3defd68923bd480582771fd4bbe819217803a164a618ad76f1d22f666f41e - languageName: node - linkType: hard - "gopd@npm:^1.0.1": version: 1.0.1 resolution: "gopd@npm:1.0.1" @@ -4136,9 +3901,9 @@ __metadata: linkType: hard "graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.9": - version: 4.2.11 - resolution: "graceful-fs@npm:4.2.11" - checksum: ac85f94da92d8eb6b7f5a8b20ce65e43d66761c55ce85ac96df6865308390da45a8d3f0296dd3a663de65d30ba497bd46c696cc1e248c72b13d6d567138a4fc7 + version: 4.2.10 + resolution: "graceful-fs@npm:4.2.10" + checksum: 3f109d70ae123951905d85032ebeae3c2a5a7a997430df00ea30df0e3a6c60cf6689b109654d6fdacd28810a053348c4d14642da1d075049e6be1ba5216218da languageName: node linkType: hard @@ -4149,7 +3914,7 @@ __metadata: languageName: node linkType: hard -"has-bigints@npm:^1.0.1, has-bigints@npm:^1.0.2": +"has-bigints@npm:^1.0.2": version: 1.0.2 resolution: "has-bigints@npm:1.0.2" checksum: 390e31e7be7e5c6fe68b81babb73dfc35d413604d7ee5f56da101417027a4b4ce6a27e46eff97ad040c835b5d228676eae99a9b5c3bc0e23c8e81a49241ff45b @@ -4170,12 +3935,12 @@ __metadata: languageName: node linkType: hard -"has-property-descriptors@npm:^1.0.0, has-property-descriptors@npm:^1.0.1, has-property-descriptors@npm:^1.0.2": - version: 1.0.2 - resolution: "has-property-descriptors@npm:1.0.2" +"has-property-descriptors@npm:^1.0.0": + version: 1.0.0 + resolution: "has-property-descriptors@npm:1.0.0" dependencies: - es-define-property: ^1.0.0 - checksum: fcbb246ea2838058be39887935231c6d5788babed499d0e9d0cc5737494c48aba4fe17ba1449e0d0fbbb1e36175442faa37f9c427ae357d6ccb1d895fbcd3de3 + get-intrinsic: ^1.1.1 + checksum: a6d3f0a266d0294d972e354782e872e2fe1b6495b321e6ef678c9b7a06a40408a6891817350c62e752adced73a94ac903c54734fee05bf65b1905ee1368194bb languageName: node linkType: hard @@ -4186,19 +3951,19 @@ __metadata: languageName: node linkType: hard -"has-symbols@npm:^1.0.2, has-symbols@npm:^1.0.3": +"has-symbols@npm:^1.0.1, has-symbols@npm:^1.0.2, has-symbols@npm:^1.0.3": version: 1.0.3 resolution: "has-symbols@npm:1.0.3" checksum: a054c40c631c0d5741a8285010a0777ea0c068f99ed43e5d6eb12972da223f8af553a455132fdb0801bdcfa0e0f443c0c03a68d8555aa529b3144b446c3f2410 languageName: node linkType: hard -"has-tostringtag@npm:^1.0.0, has-tostringtag@npm:^1.0.1": - version: 1.0.2 - resolution: "has-tostringtag@npm:1.0.2" +"has-tostringtag@npm:^1.0.0": + version: 1.0.0 + resolution: "has-tostringtag@npm:1.0.0" dependencies: - has-symbols: ^1.0.3 - checksum: 999d60bb753ad714356b2c6c87b7fb74f32463b8426e159397da4bde5bca7e598ab1073f4d8d4deafac297f2eb311484cd177af242776bf05f0d11565680468d + has-symbols: ^1.0.2 + checksum: cc12eb28cb6ae22369ebaad3a8ab0799ed61270991be88f208d508076a1e99abe4198c965935ce85ea90b60c94ddda73693b0920b58e7ead048b4a391b502c1c languageName: node linkType: hard @@ -4210,27 +3975,11 @@ __metadata: linkType: hard "has@npm:^1.0.3": - version: 1.0.4 - resolution: "has@npm:1.0.4" - checksum: 8a11ba062e0627c9578a1d08285401e39f1d071a9692ddf793199070edb5648b21c774dd733e2a181edd635bf6862731885f476f4ccf67c998d7a5ff7cef2550 - languageName: node - linkType: hard - -"hasown@npm:^2.0.0, hasown@npm:^2.0.1": - version: 2.0.1 - resolution: "hasown@npm:2.0.1" - dependencies: - function-bind: ^1.1.2 - checksum: 9081c382a4fe8a62639a8da5c7d3322b203c319147e48783763dd741863d9f2dcaa743574fe2a1283871c445d8ba99ea45d5fff384e5ad27ca9dd7a367d79de0 - languageName: node - linkType: hard - -"homedir-polyfill@npm:^1.0.1": version: 1.0.3 - resolution: "homedir-polyfill@npm:1.0.3" + resolution: "has@npm:1.0.3" dependencies: - parse-passwd: ^1.0.0 - checksum: 18dd4db87052c6a2179d1813adea0c4bfcfa4f9996f0e226fefb29eb3d548e564350fa28ec46b0bf1fbc0a1d2d6922ceceb80093115ea45ff8842a4990139250 + function-bind: ^1.1.1 + checksum: b9ad53d53be4af90ce5d1c38331e712522417d017d5ef1ebd0507e07c2fbad8686fffb8e12ddecd4c39ca9b9b47431afbb975b8abf7f3c3b82c98e9aad052792 languageName: node linkType: hard @@ -4241,7 +3990,7 @@ __metadata: languageName: node linkType: hard -"http-cache-semantics@npm:^4.0.0, http-cache-semantics@npm:^4.1.0, http-cache-semantics@npm:^4.1.1": +"http-cache-semantics@npm:^4.0.0, http-cache-semantics@npm:^4.1.0": version: 4.1.1 resolution: "http-cache-semantics@npm:4.1.1" checksum: 83ac0bc60b17a3a36f9953e7be55e5c8f41acc61b22583060e8dedc9dd5e3607c823a88d0926f9150e571f90946835c7fe150732801010845c72cd8bbff1a236 @@ -4259,16 +4008,6 @@ __metadata: languageName: node linkType: hard -"http-proxy-agent@npm:^7.0.0": - version: 7.0.1 - resolution: "http-proxy-agent@npm:7.0.1" - dependencies: - agent-base: ^7.1.0 - debug: ^4.3.4 - checksum: e8e153dc9106c2a2a05f7a576ea2002ab4a24f2586eeab3947571962532829c0c7cf8a88e67c2cfe2fff9a81deb27e9b5d69452f4a8a1b5d7066a162763e6307 - languageName: node - linkType: hard - "http2-wrapper@npm:^1.0.0-beta.5.2": version: 1.0.3 resolution: "http2-wrapper@npm:1.0.3" @@ -4280,22 +4019,12 @@ __metadata: linkType: hard "https-proxy-agent@npm:^5.0.0": - version: 5.0.1 - resolution: "https-proxy-agent@npm:5.0.1" + version: 5.0.0 + resolution: "https-proxy-agent@npm:5.0.0" dependencies: agent-base: 6 debug: 4 - checksum: 571fccdf38184f05943e12d37d6ce38197becdd69e58d03f43637f7fa1269cf303a7d228aa27e5b27bbd3af8f09fd938e1c91dcfefff2df7ba77c20ed8dfc765 - languageName: node - linkType: hard - -"https-proxy-agent@npm:^7.0.1": - version: 7.0.3 - resolution: "https-proxy-agent@npm:7.0.3" - dependencies: - agent-base: ^7.0.2 - debug: 4 - checksum: 8aacdde7db31d57674e86e23ecb5f37d79baf54dfc674a44671cb33c1f6a302cc78b2bdf042f6ce37f7c0c61b9b556965cb34f5484880b1864171122dedbdd7d + checksum: 165bfb090bd26d47693597661298006841ab733d0c7383a8cb2f17373387a94c903a3ac687090aa739de05e379ab6f868bae84ab4eac288ad85c328cd1ec9e53 languageName: node linkType: hard @@ -4331,14 +4060,21 @@ __metadata: languageName: node linkType: hard -"ignore@npm:^5.1.1, ignore@npm:^5.2.0, ignore@npm:^5.2.4": - version: 5.3.1 - resolution: "ignore@npm:5.3.1" - checksum: 71d7bb4c1dbe020f915fd881108cbe85a0db3d636a0ea3ba911393c53946711d13a9b1143c7e70db06d571a5822c0a324a6bcde5c9904e7ca5047f01f1bf8cd3 +"ignore@npm:^5.1.1, ignore@npm:^5.1.8, ignore@npm:^5.2.0": + version: 5.2.1 + resolution: "ignore@npm:5.2.1" + checksum: 7251d00cba49fe88c4f3565fadeb4aa726ba38294a9a79ffed542edc47bafd989d4b2ccf65700c5b1b26a1e91dfc7218fb23017937c79216025d5caeec0ee9d5 languageName: node linkType: hard -"import-fresh@npm:^3.2.1": +"immutable@npm:^4.0.0": + version: 4.1.0 + resolution: "immutable@npm:4.1.0" + checksum: b9bc1f14fb18eb382d48339c064b24a1f97ae4cf43102e0906c0a6e186a27afcd18b55ca4a0b63c98eefb58143e2b5ebc7755a5fb4da4a7ad84b7a6096ac5b13 + languageName: node + linkType: hard + +"import-fresh@npm:^3.0.0, import-fresh@npm:^3.2.1": version: 3.3.0 resolution: "import-fresh@npm:3.3.0" dependencies: @@ -4349,14 +4085,14 @@ __metadata: linkType: hard "import-local@npm:^3.0.2": - version: 3.1.0 - resolution: "import-local@npm:3.1.0" + version: 3.0.2 + resolution: "import-local@npm:3.0.2" dependencies: pkg-dir: ^4.2.0 resolve-cwd: ^3.0.0 bin: import-local-fixture: fixtures/cli.js - checksum: bfcdb63b5e3c0e245e347f3107564035b128a414c4da1172a20dc67db2504e05ede4ac2eee1252359f78b0bfd7b19ef180aec427c2fce6493ae782d73a04cddd + checksum: c74d9f9484c878cda1de3434613c7ff72d5dadcf20e5482542232d7c2575b713ff88701d6675fcf09a3684cb23fb407c8b333b9cbc59438712723d058d8e976c languageName: node linkType: hard @@ -4398,41 +4134,41 @@ __metadata: languageName: node linkType: hard -"ini@npm:^1.3.4": - version: 1.3.8 - resolution: "ini@npm:1.3.8" - checksum: dfd98b0ca3a4fc1e323e38a6c8eb8936e31a97a918d3b377649ea15bdb15d481207a0dda1021efbd86b464cae29a0d33c1d7dcaf6c5672bee17fa849bc50a1b3 +"internal-slot@npm:^1.0.5": + version: 1.0.5 + resolution: "internal-slot@npm:1.0.5" + dependencies: + get-intrinsic: ^1.2.0 + has: ^1.0.3 + side-channel: ^1.0.4 + checksum: 97e84046bf9e7574d0956bd98d7162313ce7057883b6db6c5c7b5e5f05688864b0978ba07610c726d15d66544ffe4b1050107d93f8a39ebc59b15d8b429b497a languageName: node linkType: hard -"internal-slot@npm:^1.0.7": - version: 1.0.7 - resolution: "internal-slot@npm:1.0.7" +"invariant@npm:2.2.4": + version: 2.2.4 + resolution: "invariant@npm:2.2.4" dependencies: - es-errors: ^1.3.0 - hasown: ^2.0.0 - side-channel: ^1.0.4 - checksum: cadc5eea5d7d9bc2342e93aae9f31f04c196afebb11bde97448327049f492cd7081e18623ae71388aac9cd237b692ca3a105be9c68ac39c1dec679d7409e33eb + loose-envify: ^1.0.0 + checksum: cc3182d793aad82a8d1f0af697b462939cb46066ec48bbf1707c150ad5fad6406137e91a262022c269702e01621f35ef60269f6c0d7fd178487959809acdfb14 languageName: node linkType: hard -"ip-address@npm:^9.0.5": - version: 9.0.5 - resolution: "ip-address@npm:9.0.5" - dependencies: - jsbn: 1.1.0 - sprintf-js: ^1.1.3 - checksum: aa15f12cfd0ef5e38349744e3654bae649a34c3b10c77a674a167e99925d1549486c5b14730eebce9fea26f6db9d5e42097b00aa4f9f612e68c79121c71652dc +"ip@npm:^2.0.0": + version: 2.0.0 + resolution: "ip@npm:2.0.0" + checksum: cfcfac6b873b701996d71ec82a7dd27ba92450afdb421e356f44044ed688df04567344c36cbacea7d01b1c39a4c732dc012570ebe9bebfb06f27314bca625349 languageName: node linkType: hard -"is-array-buffer@npm:^3.0.4": - version: 3.0.4 - resolution: "is-array-buffer@npm:3.0.4" +"is-array-buffer@npm:^3.0.1, is-array-buffer@npm:^3.0.2": + version: 3.0.2 + resolution: "is-array-buffer@npm:3.0.2" dependencies: call-bind: ^1.0.2 - get-intrinsic: ^1.2.1 - checksum: e4e3e6ef0ff2239e75371d221f74bc3c26a03564a22efb39f6bb02609b598917ddeecef4e8c877df2a25888f247a98198959842a5e73236bc7f22cabdf6351a7 + get-intrinsic: ^1.2.0 + is-typed-array: ^1.1.10 + checksum: dcac9dda66ff17df9cabdc58214172bf41082f956eab30bb0d86bc0fab1e44b690fc8e1f855cf2481245caf4e8a5a006a982a71ddccec84032ed41f9d8da8c14 languageName: node linkType: hard @@ -4444,21 +4180,27 @@ __metadata: linkType: hard "is-bigint@npm:^1.0.1": - version: 1.0.4 - resolution: "is-bigint@npm:1.0.4" + version: 1.0.1 + resolution: "is-bigint@npm:1.0.1" + checksum: 04aa6fde59d2b7929df865acb89c8d7f89f919cc149b8be11e3560b1aab8667e5d939cc8954097c496f7dda80fd5bb67f829ca80ab66cc68918e41e2c1b9c5d7 + languageName: node + linkType: hard + +"is-binary-path@npm:~2.1.0": + version: 2.1.0 + resolution: "is-binary-path@npm:2.1.0" dependencies: - has-bigints: ^1.0.1 - checksum: c56edfe09b1154f8668e53ebe8252b6f185ee852a50f9b41e8d921cb2bed425652049fbe438723f6cb48a63ca1aa051e948e7e401e093477c99c84eba244f666 + binary-extensions: ^2.0.0 + checksum: 84192eb88cff70d320426f35ecd63c3d6d495da9d805b19bc65b518984b7c0760280e57dbf119b7e9be6b161784a5a673ab2c6abe83abb5198a432232ad5b35c languageName: node linkType: hard "is-boolean-object@npm:^1.1.0": - version: 1.1.2 - resolution: "is-boolean-object@npm:1.1.2" + version: 1.1.0 + resolution: "is-boolean-object@npm:1.1.0" dependencies: - call-bind: ^1.0.2 - has-tostringtag: ^1.0.0 - checksum: c03b23dbaacadc18940defb12c1c0e3aaece7553ef58b162a0f6bba0c2a7e1551b59f365b91e00d2dbac0522392d576ef322628cb1d036a0fe51eb466db67222 + call-bind: ^1.0.0 + checksum: 3ead0446176ee42a69f87658bf12d53c135095336d34765fa65f137f378ea125429bf777f91f6dd3407db80829d742bc4fb2fdaf8d2cf6ba82a2de2a07fbbac7 languageName: node linkType: hard @@ -4469,21 +4211,19 @@ __metadata: languageName: node linkType: hard -"is-core-module@npm:^2.11.0, is-core-module@npm:^2.12.0, is-core-module@npm:^2.13.0, is-core-module@npm:^2.8.1": - version: 2.13.1 - resolution: "is-core-module@npm:2.13.1" +"is-core-module@npm:^2.11.0, is-core-module@npm:^2.12.0, is-core-module@npm:^2.4.0": + version: 2.12.1 + resolution: "is-core-module@npm:2.12.1" dependencies: - hasown: ^2.0.0 - checksum: 256559ee8a9488af90e4bad16f5583c6d59e92f0742e9e8bb4331e758521ee86b810b93bae44f390766ffbc518a0488b18d9dab7da9a5ff997d499efc9403f7c + has: ^1.0.3 + checksum: f04ea30533b5e62764e7b2e049d3157dc0abd95ef44275b32489ea2081176ac9746ffb1cdb107445cf1ff0e0dfcad522726ca27c27ece64dadf3795428b8e468 languageName: node linkType: hard "is-date-object@npm:^1.0.1": - version: 1.0.5 - resolution: "is-date-object@npm:1.0.5" - dependencies: - has-tostringtag: ^1.0.0 - checksum: baa9077cdf15eb7b58c79398604ca57379b2fc4cf9aa7a9b9e295278648f628c9b201400c01c5e0f7afae56507d741185730307cbe7cad3b9f90a77e5ee342fc + version: 1.0.2 + resolution: "is-date-object@npm:1.0.2" + checksum: ac859426e5df031abd9d1eeed32a41cc0de06e47227bd972b8bc716460a9404654b3dba78f41e8171ccf535c4bfa6d72a8d1d15a0873f9646698af415e92c2fb languageName: node linkType: hard @@ -4508,7 +4248,7 @@ __metadata: languageName: node linkType: hard -"is-glob@npm:^4.0.0, is-glob@npm:^4.0.1, is-glob@npm:^4.0.3": +"is-glob@npm:^4.0.0, is-glob@npm:^4.0.1, is-glob@npm:^4.0.3, is-glob@npm:~4.0.1": version: 4.0.3 resolution: "is-glob@npm:4.0.3" dependencies: @@ -4532,11 +4272,9 @@ __metadata: linkType: hard "is-number-object@npm:^1.0.4": - version: 1.0.7 - resolution: "is-number-object@npm:1.0.7" - dependencies: - has-tostringtag: ^1.0.0 - checksum: d1e8d01bb0a7134c74649c4e62da0c6118a0bfc6771ea3c560914d52a627873e6920dd0fd0ebc0e12ad2ff4687eac4c308f7e80320b973b2c8a2c8f97a7524f7 + version: 1.0.4 + resolution: "is-number-object@npm:1.0.4" + checksum: d8e4525b5c151f1830872bf217901b58b3a9f66d93fe2f71c2087418e03d7f5c19a3ad64afa0feb70dafd93f7b97e205e3520a8ff007be665e54b377f5b736a8 languageName: node linkType: hard @@ -4554,6 +4292,13 @@ __metadata: languageName: node linkType: hard +"is-plain-obj@npm:2.1.0": + version: 2.1.0 + resolution: "is-plain-obj@npm:2.1.0" + checksum: cec9100678b0a9fe0248a81743041ed990c2d4c99f893d935545cfbc42876cbe86d207f3b895700c690ad2fa520e568c44afc1605044b535a7820c1d40e38daa + languageName: node + linkType: hard + "is-plain-obj@npm:^1.0.0": version: 1.1.0 resolution: "is-plain-obj@npm:1.1.0" @@ -4561,13 +4306,6 @@ __metadata: languageName: node linkType: hard -"is-plain-obj@npm:^4.1.0": - version: 4.1.0 - resolution: "is-plain-obj@npm:4.1.0" - checksum: 6dc45da70d04a81f35c9310971e78a6a3c7a63547ef782e3a07ee3674695081b6ca4e977fbb8efc48dae3375e0b34558d2bcd722aec9bddfa2d7db5b041be8ce - languageName: node - linkType: hard - "is-regex@npm:^1.1.4": version: 1.1.4 resolution: "is-regex@npm:1.1.4" @@ -4595,9 +4333,9 @@ __metadata: linkType: hard "is-stream@npm:^2.0.0": - version: 2.0.1 - resolution: "is-stream@npm:2.0.1" - checksum: b8e05ccdf96ac330ea83c12450304d4a591f9958c11fd17bed240af8d5ffe08aedafa4c0f4cfccd4d28dc9d4d129daca1023633d5c11601a6cbc77521f6fae66 + version: 2.0.0 + resolution: "is-stream@npm:2.0.0" + checksum: 4dc47738e26bc4f1b3be9070b6b9e39631144f204fc6f87db56961220add87c10a999ba26cf81699f9ef9610426f69cb08a4713feff8deb7d8cadac907826935 languageName: node linkType: hard @@ -4611,20 +4349,24 @@ __metadata: linkType: hard "is-symbol@npm:^1.0.2, is-symbol@npm:^1.0.3": - version: 1.0.4 - resolution: "is-symbol@npm:1.0.4" + version: 1.0.3 + resolution: "is-symbol@npm:1.0.3" dependencies: - has-symbols: ^1.0.2 - checksum: 92805812ef590738d9de49d677cd17dfd486794773fb6fa0032d16452af46e9b91bb43ffe82c983570f015b37136f4b53b28b8523bfb10b0ece7a66c31a54510 + has-symbols: ^1.0.1 + checksum: c6d54bd01218fa202da8ce91525ca41a907819be5f000df9ab9621467e087eb36f34b2dbfa51a2a699a282e860681ffa6a787d69e944ba99a46d3df553ff2798 languageName: node linkType: hard -"is-typed-array@npm:^1.1.10, is-typed-array@npm:^1.1.13, is-typed-array@npm:^1.1.9": - version: 1.1.13 - resolution: "is-typed-array@npm:1.1.13" +"is-typed-array@npm:^1.1.10, is-typed-array@npm:^1.1.9": + version: 1.1.10 + resolution: "is-typed-array@npm:1.1.10" dependencies: - which-typed-array: ^1.1.14 - checksum: 150f9ada183a61554c91e1c4290086d2c100b0dff45f60b028519be72a8db964da403c48760723bf5253979b8dffe7b544246e0e5351dcd05c5fdb1dcc1dc0f0 + available-typed-arrays: ^1.0.5 + call-bind: ^1.0.2 + for-each: ^0.3.3 + gopd: ^1.0.1 + has-tostringtag: ^1.0.0 + checksum: aac6ecb59d4c56a1cdeb69b1f129154ef462bbffe434cb8a8235ca89b42f258b7ae94073c41b3cb7bce37f6a1733ad4499f07882d5d5093a7ba84dfc4ebb8017 languageName: node linkType: hard @@ -4637,20 +4379,6 @@ __metadata: languageName: node linkType: hard -"is-windows@npm:^1.0.1": - version: 1.0.2 - resolution: "is-windows@npm:1.0.2" - checksum: 438b7e52656fe3b9b293b180defb4e448088e7023a523ec21a91a80b9ff8cdb3377ddb5b6e60f7c7de4fa8b63ab56e121b6705fe081b3cf1b828b0a380009ad7 - languageName: node - linkType: hard - -"isarray@npm:^2.0.5": - version: 2.0.5 - resolution: "isarray@npm:2.0.5" - checksum: bd5bbe4104438c4196ba58a54650116007fa0262eccef13a4c55b2e09a5b36b59f1e75b9fcc49883dd9d4953892e6fc007eef9e9155648ceea036e184b0f930a - languageName: node - linkType: hard - "isexe@npm:^2.0.0": version: 2.0.0 resolution: "isexe@npm:2.0.0" @@ -4658,75 +4386,55 @@ __metadata: languageName: node linkType: hard -"isexe@npm:^3.1.1": - version: 3.1.1 - resolution: "isexe@npm:3.1.1" - checksum: 7fe1931ee4e88eb5aa524cd3ceb8c882537bc3a81b02e438b240e47012eef49c86904d0f0e593ea7c3a9996d18d0f1f3be8d3eaa92333977b0c3a9d353d5563e - languageName: node - linkType: hard - "istanbul-lib-coverage@npm:^3.0.0, istanbul-lib-coverage@npm:^3.2.0": - version: 3.2.2 - resolution: "istanbul-lib-coverage@npm:3.2.2" - checksum: 2367407a8d13982d8f7a859a35e7f8dd5d8f75aae4bb5484ede3a9ea1b426dc245aff28b976a2af48ee759fdd9be374ce2bd2669b644f31e76c5f46a2e29a831 + version: 3.2.0 + resolution: "istanbul-lib-coverage@npm:3.2.0" + checksum: a2a545033b9d56da04a8571ed05c8120bf10e9bce01cf8633a3a2b0d1d83dff4ac4fe78d6d5673c27fc29b7f21a41d75f83a36be09f82a61c367b56aa73c1ff9 languageName: node linkType: hard "istanbul-lib-instrument@npm:^5.0.4, istanbul-lib-instrument@npm:^5.1.0": - version: 5.2.1 - resolution: "istanbul-lib-instrument@npm:5.2.1" + version: 5.1.0 + resolution: "istanbul-lib-instrument@npm:5.1.0" dependencies: "@babel/core": ^7.12.3 "@babel/parser": ^7.14.7 "@istanbuljs/schema": ^0.1.2 istanbul-lib-coverage: ^3.2.0 semver: ^6.3.0 - checksum: bf16f1803ba5e51b28bbd49ed955a736488381e09375d830e42ddeb403855b2006f850711d95ad726f2ba3f1ae8e7366de7e51d2b9ac67dc4d80191ef7ddf272 + checksum: 8b82e733c69fe9f94d2e21f3e5760c9bedb110329aa75df4bd40df95f1cac3bf38767e43f35b125cc547ceca7376b72ce7d95cc5238b7e9088345c7b589233d3 languageName: node linkType: hard "istanbul-lib-report@npm:^3.0.0": - version: 3.0.1 - resolution: "istanbul-lib-report@npm:3.0.1" + version: 3.0.0 + resolution: "istanbul-lib-report@npm:3.0.0" dependencies: istanbul-lib-coverage: ^3.0.0 - make-dir: ^4.0.0 + make-dir: ^3.0.0 supports-color: ^7.1.0 - checksum: fd17a1b879e7faf9bb1dc8f80b2a16e9f5b7b8498fe6ed580a618c34df0bfe53d2abd35bf8a0a00e628fb7405462576427c7df20bbe4148d19c14b431c974b21 + checksum: 3f29eb3f53c59b987386e07fe772d24c7f58c6897f34c9d7a296f4000de7ae3de9eb95c3de3df91dc65b134c84dee35c54eee572a56243e8907c48064e34ff1b languageName: node linkType: hard "istanbul-lib-source-maps@npm:^4.0.0": - version: 4.0.1 - resolution: "istanbul-lib-source-maps@npm:4.0.1" + version: 4.0.0 + resolution: "istanbul-lib-source-maps@npm:4.0.0" dependencies: debug: ^4.1.1 istanbul-lib-coverage: ^3.0.0 source-map: ^0.6.1 - checksum: 21ad3df45db4b81852b662b8d4161f6446cd250c1ddc70ef96a585e2e85c26ed7cd9c2a396a71533cfb981d1a645508bc9618cae431e55d01a0628e7dec62ef2 + checksum: 292bfb4083e5f8783cdf829a7686b1a377d0c6c2119d4343c8478e948b38146c4827cddc7eee9f57605acd63c291376d67e4a84163d37c5fc78ad0f27f7e2621 languageName: node linkType: hard "istanbul-reports@npm:^3.1.3": - version: 3.1.6 - resolution: "istanbul-reports@npm:3.1.6" + version: 3.1.4 + resolution: "istanbul-reports@npm:3.1.4" dependencies: html-escaper: ^2.0.0 istanbul-lib-report: ^3.0.0 - checksum: 44c4c0582f287f02341e9720997f9e82c071627e1e862895745d5f52ec72c9b9f38e1d12370015d2a71dcead794f34c7732aaef3fab80a24bc617a21c3d911d6 - languageName: node - linkType: hard - -"jackspeak@npm:^2.3.5": - version: 2.3.6 - resolution: "jackspeak@npm:2.3.6" - dependencies: - "@isaacs/cliui": ^8.0.2 - "@pkgjs/parseargs": ^0.11.0 - dependenciesMeta: - "@pkgjs/parseargs": - optional: true - checksum: 57d43ad11eadc98cdfe7496612f6bbb5255ea69fe51ea431162db302c2a11011642f50cfad57288bd0aea78384a0612b16e131944ad8ecd09d619041c8531b54 + checksum: 2132983355710c522f6b26808015cab9a0ee8b9f5ae0db0d3edeff40b886dd83cb670fb123cb7b32dbe59473d7c00cdde2ba6136bc0acdb20a865fccea64dfe1 languageName: node linkType: hard @@ -4911,15 +4619,15 @@ __metadata: linkType: hard "jest-it-up@npm:^2.0.2": - version: 2.2.0 - resolution: "jest-it-up@npm:2.2.0" + version: 2.0.2 + resolution: "jest-it-up@npm:2.0.2" dependencies: "@inquirer/confirm": ^0.0.14-alpha.0 ansi-colors: ^4.1.0 commander: ^9.0.0 bin: jest-it-up: bin/jest-it-up - checksum: f329561bff2b96f2ba7b4a0eb2c565782affb4b2f38e1b1c488b7cc3633be59f79932d4c26b25afeedc196c565e6c45094519051b7da7587a87c3f7ad8b780e2 + checksum: 1482d8b9862331b6cc7d858fd1c05d95fb1bc2adbc37e243c20e6e10f259fecf600d3b1023dadf11acadb158ea171677f8f375969e058dff46002be81a49079b languageName: node linkType: hard @@ -4985,14 +4693,14 @@ __metadata: linkType: hard "jest-pnp-resolver@npm:^1.2.2": - version: 1.2.3 - resolution: "jest-pnp-resolver@npm:1.2.3" + version: 1.2.2 + resolution: "jest-pnp-resolver@npm:1.2.2" peerDependencies: jest-resolve: "*" peerDependenciesMeta: jest-resolve: optional: true - checksum: db1a8ab2cb97ca19c01b1cfa9a9c8c69a143fde833c14df1fab0766f411b1148ff0df878adea09007ac6a2085ec116ba9a996a6ad104b1e58c20adbf88eed9b2 + checksum: bd85dcc0e76e0eb0c3d56382ec140f08d25ff4068cda9d0e360bb78fb176cb726d0beab82dc0e8694cafd09f55fee7622b8bcb240afa5fad301f4ed3eebb4f47 languageName: node linkType: hard @@ -5194,14 +4902,14 @@ __metadata: languageName: node linkType: hard -"js-tokens@npm:^4.0.0": +"js-tokens@npm:^3.0.0 || ^4.0.0, js-tokens@npm:^4.0.0": version: 4.0.0 resolution: "js-tokens@npm:4.0.0" checksum: 8a95213a5a77deb6cbe94d86340e8d9ace2b93bc367790b260101d2f36a2eaf4e4e22d9fa9cf459b38af3a32fb4190e638024cf82ec95ef708680e405ea7cc78 languageName: node linkType: hard -"js-yaml@npm:^3.13.1, js-yaml@npm:^3.14.1": +"js-yaml@npm:^3.13.1, js-yaml@npm:^3.14.0": version: 3.14.1 resolution: "js-yaml@npm:3.14.1" dependencies: @@ -5224,13 +4932,6 @@ __metadata: languageName: node linkType: hard -"jsbn@npm:1.1.0": - version: 1.1.0 - resolution: "jsbn@npm:1.1.0" - checksum: 944f924f2bd67ad533b3850eee47603eed0f6ae425fd1ee8c760f477e8c34a05f144c1bd4f5a5dd1963141dc79a2c55f89ccc5ab77d039e7077f3ad196b64965 - languageName: node - linkType: hard - "jsdoc-type-pratt-parser@npm:~3.1.0": version: 3.1.0 resolution: "jsdoc-type-pratt-parser@npm:3.1.0" @@ -5262,9 +4963,9 @@ __metadata: linkType: hard "json-parse-even-better-errors@npm:^3.0.0": - version: 3.0.1 - resolution: "json-parse-even-better-errors@npm:3.0.1" - checksum: bf74fa3f715e56699ccd68b80a7d20908de432a3fae2d5aa2ed530a148e9d9ccdf8e6983b93d9966a553aa70dcf003ce3a7ffec2c0ce74d2a6173e3691a426f0 + version: 3.0.0 + resolution: "json-parse-even-better-errors@npm:3.0.0" + checksum: f1970b5220c7fa23d888565510752c3d5e863f93668a202fcaa719739fa41485dfc6a1db212f702ebd3c873851cc067aebc2917e3f79763cae2fdb95046f38f3 languageName: node linkType: hard @@ -5282,7 +4983,7 @@ __metadata: languageName: node linkType: hard -"json5@npm:^1.0.2": +"json5@npm:^1.0.1": version: 1.0.2 resolution: "json5@npm:1.0.2" dependencies: @@ -5293,7 +4994,7 @@ __metadata: languageName: node linkType: hard -"json5@npm:^2.2.1, json5@npm:^2.2.3": +"json5@npm:^2.1.3, json5@npm:^2.2.1, json5@npm:^2.2.3": version: 2.2.3 resolution: "json5@npm:2.2.3" bin: @@ -5302,19 +5003,19 @@ __metadata: languageName: node linkType: hard -"jsonc-parser@npm:^3.2.0": - version: 3.2.1 - resolution: "jsonc-parser@npm:3.2.1" - checksum: 656d9027b91de98d8ab91b3aa0d0a4cab7dc798a6830845ca664f3e76c82d46b973675bbe9b500fae1de37fd3e81aceacbaa2a57884bf2f8f29192150d2d1ef7 +"jsonc-parser@npm:^3.0.0": + version: 3.2.0 + resolution: "jsonc-parser@npm:3.2.0" + checksum: 946dd9a5f326b745aa326d48a7257e3f4a4b62c5e98ec8e49fa2bdd8d96cef7e6febf1399f5c7016114fd1f68a1c62c6138826d5d90bc650448e3cf0951c53c7 languageName: node linkType: hard -"keyv@npm:^4.0.0, keyv@npm:^4.5.3": - version: 4.5.4 - resolution: "keyv@npm:4.5.4" +"keyv@npm:^4.0.0": + version: 4.5.2 + resolution: "keyv@npm:4.5.2" dependencies: json-buffer: 3.0.1 - checksum: 74a24395b1c34bd44ad5cb2b49140d087553e170625240b86755a6604cd65aa16efdbdeae5cdb17ba1284a0fbb25ad06263755dbc71b8d8b06f74232ce3cdd72 + checksum: 13ad58303acd2261c0d4831b4658451603fd159e61daea2121fcb15feb623e75ee328cded0572da9ca76b7b3ceaf8e614f1806c6b3af5db73c9c35a345259651 languageName: node linkType: hard @@ -5343,9 +5044,9 @@ __metadata: linkType: hard "lines-and-columns@npm:^1.1.6": - version: 1.2.4 - resolution: "lines-and-columns@npm:1.2.4" - checksum: 0c37f9f7fa212b38912b7145e1cd16a5f3cd34d782441c3e6ca653485d326f58b3caccda66efce1c5812bde4961bbde3374fae4b0d11bf1226152337f3894aa5 + version: 1.1.6 + resolution: "lines-and-columns@npm:1.1.6" + checksum: 198a5436b1fa5cf703bae719c01c686b076f0ad7e1aafd95a58d626cabff302dc0414822126f2f80b58a8c3d66cda8a7b6da064f27130f87e1d3506d6dfd0d68 languageName: node linkType: hard @@ -5381,13 +5082,24 @@ __metadata: languageName: node linkType: hard -"lodash@npm:^4.17.21": +"lodash@npm:4.17.21, lodash@npm:^4.17.20, lodash@npm:^4.17.21": version: 4.17.21 resolution: "lodash@npm:4.17.21" checksum: eb835a2e51d381e561e508ce932ea50a8e5a68f4ebdd771ea240d3048244a8d13658acbd502cd4829768c56f2e16bdd4340b9ea141297d472517b83868e677f7 languageName: node linkType: hard +"loose-envify@npm:^1.0.0": + version: 1.4.0 + resolution: "loose-envify@npm:1.4.0" + dependencies: + js-tokens: ^3.0.0 || ^4.0.0 + bin: + loose-envify: cli.js + checksum: 6517e24e0cad87ec9888f500c5b5947032cdfe6ef65e1c1936a0c48a524b81e65542c9c3edc91c97d5bddc806ee2a985dbc79be89215d613b1de5db6d1cfe6f4 + languageName: node + linkType: hard + "lowercase-keys@npm:^2.0.0": version: 2.0.0 resolution: "lowercase-keys@npm:2.0.0" @@ -5395,13 +5107,6 @@ __metadata: languageName: node linkType: hard -"lru-cache@npm:^10.0.1, lru-cache@npm:^9.1.1 || ^10.0.0": - version: 10.2.0 - resolution: "lru-cache@npm:10.2.0" - checksum: eee7ddda4a7475deac51ac81d7dd78709095c6fa46e8350dc2d22462559a1faa3b81ed931d5464b13d48cbd7e08b46100b6f768c76833912bc444b99c37e25db - languageName: node - linkType: hard - "lru-cache@npm:^4.0.1": version: 4.1.5 resolution: "lru-cache@npm:4.1.5" @@ -5431,9 +5136,9 @@ __metadata: linkType: hard "lru-cache@npm:^7.7.1": - version: 7.18.3 - resolution: "lru-cache@npm:7.18.3" - checksum: e550d772384709deea3f141af34b6d4fa392e2e418c1498c078de0ee63670f1f46f5eee746e8ef7e69e1c895af0d4224e62ee33e66a543a14763b0f2e74c1356 + version: 7.13.1 + resolution: "lru-cache@npm:7.13.1" + checksum: f53c7dd098a7afd6342b23f7182629edff206c7665de79445a7f5455440e768a4d1c6ec52e1a16175580c71535c9437dfb6f6bc22ca1a0e4a7454a97cde87329 languageName: node linkType: hard @@ -5444,21 +5149,21 @@ __metadata: languageName: node linkType: hard -"magic-string@npm:^0.30.6": - version: 0.30.7 - resolution: "magic-string@npm:0.30.7" +"magic-string@npm:^0.25.7": + version: 0.25.9 + resolution: "magic-string@npm:0.25.9" dependencies: - "@jridgewell/sourcemap-codec": ^1.4.15 - checksum: bdf102e36a44d1728ec61b69d655caba3f66ca58898e292f6debe57dc30896bd37908bfe3464a7464a435831a9e44aa905cebd681e21c2f44bbe4dddf225619f + sourcemap-codec: ^1.4.8 + checksum: 9a0e55a15c7303fc360f9572a71cffba1f61451bc92c5602b1206c9d17f492403bf96f946dfce7483e66822d6b74607262e24392e87b0ac27b786e69a40e9b1a languageName: node linkType: hard -"make-dir@npm:^4.0.0": - version: 4.0.0 - resolution: "make-dir@npm:4.0.0" +"make-dir@npm:^3.0.0": + version: 3.1.0 + resolution: "make-dir@npm:3.1.0" dependencies: - semver: ^7.5.3 - checksum: bf0731a2dd3aab4db6f3de1585cea0b746bb73eb5a02e3d8d72757e376e64e6ada190b1eddcde5b2f24a81b688a9897efd5018737d05e02e2a671dda9cff8a8a + semver: ^6.0.0 + checksum: 484200020ab5a1fdf12f393fe5f385fc8e4378824c940fba1729dcd198ae4ff24867bc7a5646331e50cead8abff5d9270c456314386e629acec6dff4b8016b78 languageName: node linkType: hard @@ -5470,8 +5175,8 @@ __metadata: linkType: hard "make-fetch-happen@npm:^10.0.3": - version: 10.2.1 - resolution: "make-fetch-happen@npm:10.2.1" + version: 10.2.0 + resolution: "make-fetch-happen@npm:10.2.0" dependencies: agentkeepalive: ^4.2.1 cacache: ^16.1.0 @@ -5489,26 +5194,7 @@ __metadata: promise-retry: ^2.0.1 socks-proxy-agent: ^7.0.0 ssri: ^9.0.0 - checksum: 2332eb9a8ec96f1ffeeea56ccefabcb4193693597b132cd110734d50f2928842e22b84cfa1508e921b8385cdfd06dda9ad68645fed62b50fff629a580f5fb72c - languageName: node - linkType: hard - -"make-fetch-happen@npm:^13.0.0": - version: 13.0.0 - resolution: "make-fetch-happen@npm:13.0.0" - dependencies: - "@npmcli/agent": ^2.0.0 - cacache: ^18.0.0 - http-cache-semantics: ^4.1.1 - is-lambda: ^1.0.1 - minipass: ^7.0.2 - minipass-fetch: ^3.0.0 - minipass-flush: ^1.0.5 - minipass-pipeline: ^1.2.4 - negotiator: ^0.6.3 - promise-retry: ^2.0.1 - ssri: ^10.0.0 - checksum: 7c7a6d381ce919dd83af398b66459a10e2fe8f4504f340d1d090d3fa3d1b0c93750220e1d898114c64467223504bd258612ba83efbc16f31b075cd56de24b4af + checksum: 2f6c294179972f56fab40fd8618f07841e06550692bb78f6da16e7afaa9dca78c345b08cf44a77a8907ef3948e4dc77e93eb7492b8381f1217d7ac057a7522f8 languageName: node linkType: hard @@ -5521,12 +5207,12 @@ __metadata: languageName: node linkType: hard -"marked@npm:^4.2.12": - version: 4.3.0 - resolution: "marked@npm:4.3.0" +"marked@npm:^4.0.19": + version: 4.1.1 + resolution: "marked@npm:4.1.1" bin: marked: bin/marked.js - checksum: 0db6817893952c3ec710eb9ceafb8468bf5ae38cb0f92b7b083baa13d70b19774674be04db5b817681fa7c5c6a088f61300815e4dd75a59696f4716ad69f6260 + checksum: 717e3357952ee53de831bf0eb110ed075bebca2376c58bcdf7ee523ef540d45308ad6d51b2c933da0968832ea4386f31c142ca65443e77c098e84f6cce73e418 languageName: node linkType: hard @@ -5537,7 +5223,7 @@ __metadata: languageName: node linkType: hard -"merge2@npm:^1.3.0, merge2@npm:^1.4.1": +"merge2@npm:^1.2.3, merge2@npm:^1.3.0, merge2@npm:^1.4.1": version: 1.4.1 resolution: "merge2@npm:1.4.1" checksum: 7268db63ed5169466540b6fb947aec313200bcf6d40c5ab722c22e242f651994619bcd85601602972d3c85bd2cc45a358a4c61937e9f11a061919a1da569b0c2 @@ -5552,12 +5238,12 @@ __metadata: linkType: hard "micromatch@npm:^4.0.4": - version: 4.0.5 - resolution: "micromatch@npm:4.0.5" + version: 4.0.4 + resolution: "micromatch@npm:4.0.4" dependencies: - braces: ^3.0.2 - picomatch: ^2.3.1 - checksum: 02a17b671c06e8fefeeb6ef996119c1e597c942e632a21ef589154f23898c9c6a9858526246abb14f8bca6e77734aa9dcf65476fca47cedfb80d9577d52843fc + braces: ^3.0.1 + picomatch: ^2.2.3 + checksum: ef3d1c88e79e0a68b0e94a03137676f3324ac18a908c245a9e5936f838079fcc108ac7170a5fadc265a9c2596963462e402841406bda1a4bb7b68805601d631c languageName: node linkType: hard @@ -5589,7 +5275,7 @@ __metadata: languageName: node linkType: hard -"minimatch@npm:^3.0.4, minimatch@npm:^3.0.5, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2": +"minimatch@npm:^3.0.4, minimatch@npm:^3.0.5, minimatch@npm:^3.1.2": version: 3.1.2 resolution: "minimatch@npm:3.1.2" dependencies: @@ -5598,85 +5284,43 @@ __metadata: languageName: node linkType: hard -"minimatch@npm:^5.0.1": - version: 5.1.6 - resolution: "minimatch@npm:5.1.6" - dependencies: - brace-expansion: ^2.0.1 - checksum: 7564208ef81d7065a370f788d337cd80a689e981042cb9a1d0e6580b6c6a8c9279eba80010516e258835a988363f99f54a6f711a315089b8b42694f5da9d0d77 - languageName: node - linkType: hard - -"minimatch@npm:^7.1.3, minimatch@npm:^7.4.6": - version: 7.4.6 - resolution: "minimatch@npm:7.4.6" - dependencies: - brace-expansion: ^2.0.1 - checksum: 1a6c8d22618df9d2a88aabeef1de5622eb7b558e9f8010be791cb6b0fa6e102d39b11c28d75b855a1e377b12edc7db8ff12a99c20353441caa6a05e78deb5da9 - languageName: node - linkType: hard - -"minimatch@npm:^9.0.1, minimatch@npm:^9.0.3": - version: 9.0.3 - resolution: "minimatch@npm:9.0.3" +"minimatch@npm:^5.0.1, minimatch@npm:^5.1.0": + version: 5.1.0 + resolution: "minimatch@npm:5.1.0" dependencies: brace-expansion: ^2.0.1 - checksum: 253487976bf485b612f16bf57463520a14f512662e592e95c571afdab1442a6a6864b6c88f248ce6fc4ff0b6de04ac7aa6c8bb51e868e99d1d65eb0658a708b5 + checksum: 15ce53d31a06361e8b7a629501b5c75491bc2b59712d53e802b1987121d91b433d73fcc5be92974fde66b2b51d8fb28d75a9ae900d249feb792bb1ba2a4f0a90 languageName: node linkType: hard "minimist@npm:^1.2.0, minimist@npm:^1.2.6": - version: 1.2.8 - resolution: "minimist@npm:1.2.8" - checksum: 75a6d645fb122dad29c06a7597bddea977258957ed88d7a6df59b5cd3fe4a527e253e9bbf2e783e4b73657f9098b96a5fe96ab8a113655d4109108577ecf85b0 + version: 1.2.6 + resolution: "minimist@npm:1.2.6" + checksum: d15428cd1e11eb14e1233bcfb88ae07ed7a147de251441d61158619dfb32c4d7e9061d09cab4825fdee18ecd6fce323228c8c47b5ba7cd20af378ca4048fb3fb languageName: node linkType: hard "minipass-collect@npm:^1.0.2": - version: 1.0.2 - resolution: "minipass-collect@npm:1.0.2" - dependencies: - minipass: ^3.0.0 - checksum: 14df761028f3e47293aee72888f2657695ec66bd7d09cae7ad558da30415fdc4752bbfee66287dcc6fd5e6a2fa3466d6c484dc1cbd986525d9393b9523d97f10 - languageName: node - linkType: hard - -"minipass-collect@npm:^2.0.1": - version: 2.0.1 - resolution: "minipass-collect@npm:2.0.1" - dependencies: - minipass: ^7.0.3 - checksum: b251bceea62090f67a6cced7a446a36f4cd61ee2d5cea9aee7fff79ba8030e416327a1c5aa2908dc22629d06214b46d88fdab8c51ac76bacbf5703851b5ad342 - languageName: node - linkType: hard - -"minipass-fetch@npm:^2.0.3": - version: 2.1.2 - resolution: "minipass-fetch@npm:2.1.2" - dependencies: - encoding: ^0.1.13 - minipass: ^3.1.6 - minipass-sized: ^1.0.3 - minizlib: ^2.1.2 - dependenciesMeta: - encoding: - optional: true - checksum: 3f216be79164e915fc91210cea1850e488793c740534985da017a4cbc7a5ff50506956d0f73bb0cb60e4fe91be08b6b61ef35101706d3ef5da2c8709b5f08f91 + version: 1.0.2 + resolution: "minipass-collect@npm:1.0.2" + dependencies: + minipass: ^3.0.0 + checksum: 14df761028f3e47293aee72888f2657695ec66bd7d09cae7ad558da30415fdc4752bbfee66287dcc6fd5e6a2fa3466d6c484dc1cbd986525d9393b9523d97f10 languageName: node linkType: hard -"minipass-fetch@npm:^3.0.0": - version: 3.0.4 - resolution: "minipass-fetch@npm:3.0.4" +"minipass-fetch@npm:^2.0.3": + version: 2.1.0 + resolution: "minipass-fetch@npm:2.1.0" dependencies: encoding: ^0.1.13 - minipass: ^7.0.3 + minipass: ^3.1.6 minipass-sized: ^1.0.3 minizlib: ^2.1.2 dependenciesMeta: encoding: optional: true - checksum: af7aad15d5c128ab1ebe52e043bdf7d62c3c6f0cecb9285b40d7b395e1375b45dcdfd40e63e93d26a0e8249c9efd5c325c65575aceee192883970ff8cb11364a + checksum: 1334732859a3f7959ed22589bafd9c40384b885aebb5932328071c33f86b3eb181d54c86919675d1825ab5f1c8e4f328878c863873258d113c29d79a4b0c9c9f languageName: node linkType: hard @@ -5708,25 +5352,11 @@ __metadata: linkType: hard "minipass@npm:^3.0.0, minipass@npm:^3.1.1, minipass@npm:^3.1.6": - version: 3.3.6 - resolution: "minipass@npm:3.3.6" + version: 3.3.4 + resolution: "minipass@npm:3.3.4" dependencies: yallist: ^4.0.0 - checksum: a30d083c8054cee83cdcdc97f97e4641a3f58ae743970457b1489ce38ee1167b3aaf7d815cd39ec7a99b9c40397fd4f686e83750e73e652b21cb516f6d845e48 - languageName: node - linkType: hard - -"minipass@npm:^5.0.0": - version: 5.0.0 - resolution: "minipass@npm:5.0.0" - checksum: 425dab288738853fded43da3314a0b5c035844d6f3097a8e3b5b29b328da8f3c1af6fc70618b32c29ff906284cf6406b6841376f21caaadd0793c1d5a6a620ea - languageName: node - linkType: hard - -"minipass@npm:^5.0.0 || ^6.0.2 || ^7.0.0, minipass@npm:^7.0.2, minipass@npm:^7.0.3": - version: 7.0.4 - resolution: "minipass@npm:7.0.4" - checksum: 87585e258b9488caf2e7acea242fd7856bbe9a2c84a7807643513a338d66f368c7d518200ad7b70a508664d408aa000517647b2930c259a8b1f9f0984f344a21 + checksum: 5d95a7738c54852ba78d484141e850c792e062666a2d0c681a5ac1021275beb7e1acb077e59f9523ff1defb80901aea4e30fac10ded9a20a25d819a42916ef1b languageName: node linkType: hard @@ -5749,13 +5379,6 @@ __metadata: languageName: node linkType: hard -"ms@npm:2.0.0": - version: 2.0.0 - resolution: "ms@npm:2.0.0" - checksum: 0e6a22b8b746d2e0b65a430519934fefd41b6db0682e3477c10f60c76e947c4c0ad06f63ffdf1d78d335f83edee8c0aa928aa66a36c7cd95b69b26f468d527f4 - languageName: node - linkType: hard - "ms@npm:2.1.2": version: 2.1.2 resolution: "ms@npm:2.1.2" @@ -5790,12 +5413,12 @@ __metadata: languageName: node linkType: hard -"nanoid@npm:^3.3.7": - version: 3.3.7 - resolution: "nanoid@npm:3.3.7" +"nanoid@npm:^3.3.6": + version: 3.3.6 + resolution: "nanoid@npm:3.3.6" bin: nanoid: bin/nanoid.cjs - checksum: d36c427e530713e4ac6567d488b489a36582ef89da1d6d4e3b87eded11eb10d7042a877958c6f104929809b2ab0bafa17652b076cdf84324aa75b30b722204f2 + checksum: 7d0eda657002738aa5206107bd0580aead6c95c460ef1bdd0b1a87a9c7ae6277ac2e9b945306aaa5b32c6dcb7feaf462d0f552e7f8b5718abfc6ead5c94a71b3 languageName: node linkType: hard @@ -5821,11 +5444,10 @@ __metadata: linkType: hard "node-gyp@npm:^9.0.0": - version: 9.4.1 - resolution: "node-gyp@npm:9.4.1" + version: 9.3.1 + resolution: "node-gyp@npm:9.3.1" dependencies: env-paths: ^2.2.0 - exponential-backoff: ^3.1.1 glob: ^7.1.4 graceful-fs: ^4.2.6 make-fetch-happen: ^10.0.3 @@ -5837,27 +5459,27 @@ __metadata: which: ^2.0.2 bin: node-gyp: bin/node-gyp.js - checksum: 8576c439e9e925ab50679f87b7dfa7aa6739e42822e2ad4e26c36341c0ba7163fdf5a946f0a67a476d2f24662bc40d6c97bd9e79ced4321506738e6b760a1577 + checksum: b860e9976fa645ca0789c69e25387401b4396b93c8375489b5151a6c55cf2640a3b6183c212b38625ef7c508994930b72198338e3d09b9d7ade5acc4aaf51ea7 languageName: node linkType: hard "node-gyp@npm:latest": - version: 10.0.1 - resolution: "node-gyp@npm:10.0.1" + version: 9.1.0 + resolution: "node-gyp@npm:9.1.0" dependencies: env-paths: ^2.2.0 - exponential-backoff: ^3.1.1 - glob: ^10.3.10 + glob: ^7.1.4 graceful-fs: ^4.2.6 - make-fetch-happen: ^13.0.0 - nopt: ^7.0.0 - proc-log: ^3.0.0 + make-fetch-happen: ^10.0.3 + nopt: ^5.0.0 + npmlog: ^6.0.0 + rimraf: ^3.0.2 semver: ^7.3.5 tar: ^6.1.2 - which: ^4.0.0 + which: ^2.0.2 bin: node-gyp: bin/node-gyp.js - checksum: 60a74e66d364903ce02049966303a57f898521d139860ac82744a5fdd9f7b7b3b61f75f284f3bfe6e6add3b8f1871ce305a1d41f775c7482de837b50c792223f + checksum: 1437fa4a879b5b9010604128e8da8609b57c66034262087539ee04a8b764b8436af2be01bab66f8fc729a3adba2dcc21b10a32b9f552696c3fa8cd657d134fc4 languageName: node linkType: hard @@ -5868,36 +5490,36 @@ __metadata: languageName: node linkType: hard -"node-releases@npm:^2.0.14": - version: 2.0.14 - resolution: "node-releases@npm:2.0.14" - checksum: 59443a2f77acac854c42d321bf1b43dea0aef55cd544c6a686e9816a697300458d4e82239e2d794ea05f7bbbc8a94500332e2d3ac3f11f52e4b16cbe638b3c41 +"node-releases@npm:^2.0.13": + version: 2.0.13 + resolution: "node-releases@npm:2.0.13" + checksum: 17ec8f315dba62710cae71a8dad3cd0288ba943d2ece43504b3b1aa8625bf138637798ab470b1d9035b0545996f63000a8a926e0f6d35d0996424f8b6d36dda3 languageName: node linkType: hard -"nopt@npm:^6.0.0": - version: 6.0.0 - resolution: "nopt@npm:6.0.0" +"nopt@npm:^5.0.0": + version: 5.0.0 + resolution: "nopt@npm:5.0.0" dependencies: - abbrev: ^1.0.0 + abbrev: 1 bin: nopt: bin/nopt.js - checksum: 82149371f8be0c4b9ec2f863cc6509a7fd0fa729929c009f3a58e4eb0c9e4cae9920e8f1f8eb46e7d032fec8fb01bede7f0f41a67eb3553b7b8e14fa53de1dac + checksum: d35fdec187269503843924e0114c0c6533fb54bbf1620d0f28b4b60ba01712d6687f62565c55cc20a504eff0fbe5c63e22340c3fad549ad40469ffb611b04f2f languageName: node linkType: hard -"nopt@npm:^7.0.0": - version: 7.2.0 - resolution: "nopt@npm:7.2.0" +"nopt@npm:^6.0.0": + version: 6.0.0 + resolution: "nopt@npm:6.0.0" dependencies: - abbrev: ^2.0.0 + abbrev: ^1.0.0 bin: nopt: bin/nopt.js - checksum: a9c0f57fb8cb9cc82ae47192ca2b7ef00e199b9480eed202482c962d61b59a7fbe7541920b2a5839a97b42ee39e288c0aed770e38057a608d7f579389dfde410 + checksum: 82149371f8be0c4b9ec2f863cc6509a7fd0fa729929c009f3a58e4eb0c9e4cae9920e8f1f8eb46e7d032fec8fb01bede7f0f41a67eb3553b7b8e14fa53de1dac languageName: node linkType: hard -"normalize-path@npm:^3.0.0": +"normalize-path@npm:^3.0.0, normalize-path@npm:~3.0.0": version: 3.0.0 resolution: "normalize-path@npm:3.0.0" checksum: 88eeb4da891e10b1318c4b2476b6e2ecbeb5ff97d946815ffea7794c31a89017c70d7f34b3c2ebf23ef4e9fc9fb99f7dffe36da22011b5b5c6ffa34f4873ec20 @@ -5912,9 +5534,9 @@ __metadata: linkType: hard "npm-normalize-package-bin@npm:^3.0.0": - version: 3.0.1 - resolution: "npm-normalize-package-bin@npm:3.0.1" - checksum: de416d720ab22137a36292ff8a333af499ea0933ef2320a8c6f56a73b0f0448227fec4db5c890d702e26d21d04f271415eab6580b5546456861cc0c19498a4bf + version: 3.0.0 + resolution: "npm-normalize-package-bin@npm:3.0.0" + checksum: 6a34886c150b0f5302aad52a9446e5c939aa14eeb462323e75681517b36c6b9eaef83e1f5bc2d7e5154b3b752cbce81bed05e290db3f1f7edf857cbb895e35c0 languageName: node linkType: hard @@ -5948,10 +5570,10 @@ __metadata: languageName: node linkType: hard -"object-inspect@npm:^1.13.1": - version: 1.13.1 - resolution: "object-inspect@npm:1.13.1" - checksum: 7d9fa9221de3311dcb5c7c307ee5dc011cdd31dc43624b7c184b3840514e118e05ef0002be5388304c416c0eb592feb46e983db12577fc47e47d5752fbbfb61f +"object-inspect@npm:^1.12.3, object-inspect@npm:^1.9.0": + version: 1.12.3 + resolution: "object-inspect@npm:1.12.3" + checksum: dabfd824d97a5f407e6d5d24810d888859f6be394d8b733a77442b277e0808860555176719c5905e765e3743a7cada6b8b0a3b85e5331c530fd418cc8ae991db languageName: node linkType: hard @@ -5962,26 +5584,26 @@ __metadata: languageName: node linkType: hard -"object.assign@npm:^4.1.5": - version: 4.1.5 - resolution: "object.assign@npm:4.1.5" +"object.assign@npm:^4.1.4": + version: 4.1.4 + resolution: "object.assign@npm:4.1.4" dependencies: - call-bind: ^1.0.5 - define-properties: ^1.2.1 + call-bind: ^1.0.2 + define-properties: ^1.1.4 has-symbols: ^1.0.3 object-keys: ^1.1.1 - checksum: f9aeac0541661370a1fc86e6a8065eb1668d3e771f7dbb33ee54578201336c057b21ee61207a186dd42db0c62201d91aac703d20d12a79fc79c353eed44d4e25 + checksum: 76cab513a5999acbfe0ff355f15a6a125e71805fcf53de4e9d4e082e1989bdb81d1e329291e1e4e0ae7719f0e4ef80e88fb2d367ae60500d79d25a6224ac8864 languageName: node linkType: hard -"object.values@npm:^1.1.5": - version: 1.1.7 - resolution: "object.values@npm:1.1.7" +"object.values@npm:^1.1.6": + version: 1.1.6 + resolution: "object.values@npm:1.1.6" dependencies: call-bind: ^1.0.2 - define-properties: ^1.2.0 - es-abstract: ^1.22.1 - checksum: f3e4ae4f21eb1cc7cebb6ce036d4c67b36e1c750428d7b7623c56a0db90edced63d08af8a316d81dfb7c41a3a5fa81b05b7cc9426e98d7da986b1682460f0777 + define-properties: ^1.1.4 + es-abstract: ^1.20.4 + checksum: f6fff9fd817c24cfd8107f50fb33061d81cd11bacc4e3dbb3852e9ff7692fde4dbce823d4333ea27cd9637ef1b6690df5fbb61f1ed314fa2959598dc3ae23d8e languageName: node linkType: hard @@ -6113,13 +5735,6 @@ __metadata: languageName: node linkType: hard -"parse-passwd@npm:^1.0.0": - version: 1.0.0 - resolution: "parse-passwd@npm:1.0.0" - checksum: 4e55e0231d58f828a41d0f1da2bf2ff7bcef8f4cb6146e69d16ce499190de58b06199e6bd9b17fbf0d4d8aef9052099cdf8c4f13a6294b1a522e8e958073066e - languageName: node - linkType: hard - "path-exists@npm:^4.0.0": version: 4.0.0 resolution: "path-exists@npm:4.0.0" @@ -6155,16 +5770,6 @@ __metadata: languageName: node linkType: hard -"path-scurry@npm:^1.10.1": - version: 1.10.1 - resolution: "path-scurry@npm:1.10.1" - dependencies: - lru-cache: ^9.1.1 || ^10.0.0 - minipass: ^5.0.0 || ^6.0.2 || ^7.0.0 - checksum: e2557cff3a8fb8bc07afdd6ab163a92587884f9969b05bbbaf6fe7379348bfb09af9ed292af12ed32398b15fb443e81692047b786d1eeb6d898a51eb17ed7d90 - languageName: node - linkType: hard - "path-type@npm:^4.0.0": version: 4.0.0 resolution: "path-type@npm:4.0.0" @@ -6186,7 +5791,7 @@ __metadata: languageName: node linkType: hard -"picomatch@npm:^2.0.4, picomatch@npm:^2.2.1, picomatch@npm:^2.2.3, picomatch@npm:^2.3.1": +"picomatch@npm:^2.0.4, picomatch@npm:^2.2.1, picomatch@npm:^2.2.3": version: 2.3.1 resolution: "picomatch@npm:2.3.1" checksum: 050c865ce81119c4822c45d3c84f1ced46f93a0126febae20737bd05ca20589c564d6e9226977df859ed5e03dc73f02584a2b0faad36e896936238238b0446cf @@ -6201,9 +5806,9 @@ __metadata: linkType: hard "pirates@npm:^4.0.4": - version: 4.0.6 - resolution: "pirates@npm:4.0.6" - checksum: 46a65fefaf19c6f57460388a5af9ab81e3d7fd0e7bc44ca59d753cb5c4d0df97c6c6e583674869762101836d68675f027d60f841c105d72734df9dfca97cbcc6 + version: 4.0.5 + resolution: "pirates@npm:4.0.5" + checksum: c9994e61b85260bec6c4fc0307016340d9b0c4f4b6550a957afaaff0c9b1ad58fbbea5cfcf083860a25cb27a375442e2b0edf52e2e1e40e69934e08dcc52d227 languageName: node linkType: hard @@ -6232,14 +5837,14 @@ __metadata: languageName: node linkType: hard -"postcss@npm:^8.4.33": - version: 8.4.35 - resolution: "postcss@npm:8.4.35" +"postcss@npm:^8.1.10": + version: 8.4.31 + resolution: "postcss@npm:8.4.31" dependencies: - nanoid: ^3.3.7 + nanoid: ^3.3.6 picocolors: ^1.0.0 source-map-js: ^1.0.2 - checksum: cf3c3124d3912a507603f6d9a49b3783f741075e9aa73eb592a6dd9194f9edab9d20a8875d16d137d4f779fe7b6fbd1f5727e39bfd1c3003724980ee4995e1da + checksum: 1d8611341b073143ad90486fcdfeab49edd243377b1f51834dc4f6d028e82ce5190e4f11bb2633276864503654fb7cab28e67abdc0fbf9d1f88cad4a0ff0beea languageName: node linkType: hard @@ -6260,17 +5865,16 @@ __metadata: linkType: hard "prettier-plugin-packagejson@npm:^2.3.0": - version: 2.4.10 - resolution: "prettier-plugin-packagejson@npm:2.4.10" + version: 2.3.0 + resolution: "prettier-plugin-packagejson@npm:2.3.0" dependencies: - sort-package-json: 2.7.0 - synckit: 0.9.0 + sort-package-json: 1.57.0 peerDependencies: prettier: ">= 1.16.0" peerDependenciesMeta: prettier: optional: true - checksum: d501bfbab1949b07fb26b402c523eab89243854ba36990f180415f624ebdb26d68e59fa72a7f1d735719fafd80e1dd0173cca2cc805b6b703afcf3788ccb1314 + checksum: fbcf81cedcfd030440c106d502f121deb9acff2d50c2173ec202eccea66c7de03618eafe3d2a4011b73d76d7d41355edcb2fc11b3030e02a1f2ade91220f4a8a languageName: node linkType: hard @@ -6295,13 +5899,6 @@ __metadata: languageName: node linkType: hard -"proc-log@npm:^3.0.0": - version: 3.0.0 - resolution: "proc-log@npm:3.0.0" - checksum: 02b64e1b3919e63df06f836b98d3af002b5cd92655cab18b5746e37374bfb73e03b84fe305454614b34c25b485cc687a9eebdccf0242cda8fda2475dd2c97e02 - languageName: node - linkType: hard - "promise-inflight@npm:^1.0.1": version: 1.0.1 resolution: "promise-inflight@npm:1.0.1" @@ -6320,12 +5917,12 @@ __metadata: linkType: hard "prompts@npm:^2.0.1": - version: 2.4.2 - resolution: "prompts@npm:2.4.2" + version: 2.3.2 + resolution: "prompts@npm:2.3.2" dependencies: kleur: ^3.0.3 - sisteransi: ^1.0.5 - checksum: d8fd1fe63820be2412c13bfc5d0a01909acc1f0367e32396962e737cb2fc52d004f3302475d5ce7d18a1e8a79985f93ff04ee03007d091029c3f9104bffc007d + sisteransi: ^1.0.4 + checksum: b1f9e92b59e3be30bcca757dd8458205bc0ff2923cc98b533c09971d4aa2507437d102f73300931a2c50fb4b21f3160a4d4b4683d07c1c1a85d730b463127e18 languageName: node linkType: hard @@ -6347,9 +5944,19 @@ __metadata: linkType: hard "punycode@npm:^2.1.0": - version: 2.3.1 - resolution: "punycode@npm:2.3.1" - checksum: bb0a0ceedca4c3c57a9b981b90601579058903c62be23c5e8e843d2c2d4148a3ecf029d5133486fb0e1822b098ba8bba09e89d6b21742d02fa26bda6441a6fb2 + version: 2.1.1 + resolution: "punycode@npm:2.1.1" + checksum: 823bf443c6dd14f669984dea25757b37993f67e8d94698996064035edd43bed8a5a17a9f12e439c2b35df1078c6bec05a6c86e336209eb1061e8025c481168e8 + languageName: node + linkType: hard + +"query-ast@npm:^1.0.3": + version: 1.0.5 + resolution: "query-ast@npm:1.0.5" + dependencies: + invariant: 2.2.4 + lodash: ^4.17.21 + checksum: 4b7ae79bc907d0614c8d306d77fc82a19d40f5900bace286943839b875d84a52aa4993a73fdb8f4e989461b88474c47a60a48c7a42964b53253d5abe1452e9ad languageName: node linkType: hard @@ -6392,13 +5999,13 @@ __metadata: linkType: hard "readable-stream@npm:^3.6.0": - version: 3.6.2 - resolution: "readable-stream@npm:3.6.2" + version: 3.6.0 + resolution: "readable-stream@npm:3.6.0" dependencies: inherits: ^2.0.3 string_decoder: ^1.1.1 util-deprecate: ^1.0.1 - checksum: bdcbe6c22e846b6af075e32cf8f4751c2576238c5043169a1c221c92ee2878458a816a4ea33f4c67623c0b6827c8a400409bfb3cf0bf3381392d0b1dfb52ac8d + checksum: d4ea81502d3799439bb955a3a5d1d808592cf3133350ed352aeaa499647858b27b1c4013984900238b0873ec8d0d8defce72469fb7a83e61d53f5ad61cb80dc8 languageName: node linkType: hard @@ -6411,7 +6018,7 @@ __metadata: languageName: node linkType: hard -"readdirp@npm:^3.6.0": +"readdirp@npm:^3.5.0, readdirp@npm:~3.6.0": version: 3.6.0 resolution: "readdirp@npm:3.6.0" dependencies: @@ -6420,19 +6027,18 @@ __metadata: languageName: node linkType: hard -"regexp.prototype.flags@npm:^1.5.2": - version: 1.5.2 - resolution: "regexp.prototype.flags@npm:1.5.2" +"regexp.prototype.flags@npm:^1.4.3": + version: 1.4.3 + resolution: "regexp.prototype.flags@npm:1.4.3" dependencies: - call-bind: ^1.0.6 - define-properties: ^1.2.1 - es-errors: ^1.3.0 - set-function-name: ^2.0.1 - checksum: d7f333667d5c564e2d7a97c56c3075d64c722c9bb51b2b4df6822b2e8096d623a5e63088fb4c83df919b6951ef8113841de8b47de7224872fa6838bc5d8a7d64 + call-bind: ^1.0.2 + define-properties: ^1.1.3 + functions-have-names: ^1.2.2 + checksum: 51228bae732592adb3ededd5e15426be25f289e9c4ef15212f4da73f4ec3919b6140806374b8894036a86020d054a8d2657d3fee6bb9b4d35d8939c20030b7a6 languageName: node linkType: hard -"regexpp@npm:^3.0.0": +"regexpp@npm:^3.0.0, regexpp@npm:^3.2.0": version: 3.2.0 resolution: "regexpp@npm:3.2.0" checksum: a78dc5c7158ad9ddcfe01aa9144f46e192ddbfa7b263895a70a5c6c73edd9ce85faf7c0430e59ac38839e1734e275b9c3de5c57ee3ab6edc0e0b1bdebefccef8 @@ -6469,16 +6075,6 @@ __metadata: languageName: node linkType: hard -"resolve-dir@npm:^1.0.0, resolve-dir@npm:^1.0.1": - version: 1.0.1 - resolution: "resolve-dir@npm:1.0.1" - dependencies: - expand-tilde: ^2.0.0 - global-modules: ^1.0.0 - checksum: ef736b8ed60d6645c3b573da17d329bfb50ec4e1d6c5ffd6df49e3497acef9226f9810ea6823b8ece1560e01dcb13f77a9f6180d4f242d00cc9a8f4de909c65c - languageName: node - linkType: hard - "resolve-from@npm:^4.0.0": version: 4.0.0 resolution: "resolve-from@npm:4.0.0" @@ -6494,35 +6090,35 @@ __metadata: linkType: hard "resolve.exports@npm:^1.1.0": - version: 1.1.1 - resolution: "resolve.exports@npm:1.1.1" - checksum: 485aa10082eb388a569d696e17ad7b16f4186efc97dd34eadd029d95b811f21ffee13b1b733198bb4584dbb3cb296aa6f141835221fb7613b9606b84f1386655 + version: 1.1.0 + resolution: "resolve.exports@npm:1.1.0" + checksum: 52865af8edb088f6c7759a328584a5de6b226754f004b742523adcfe398cfbc4559515104bc2ae87b8e78b1e4de46c9baec400b3fb1f7d517b86d2d48a098a2d languageName: node linkType: hard -"resolve@npm:^1.20.0, resolve@npm:^1.22.0, resolve@npm:^1.22.1, resolve@npm:^1.22.3, resolve@npm:^1.22.4": - version: 1.22.8 - resolution: "resolve@npm:1.22.8" +"resolve@npm:^1.18.1, resolve@npm:^1.20.0, resolve@npm:^1.22.1": + version: 1.22.3 + resolution: "resolve@npm:1.22.3" dependencies: - is-core-module: ^2.13.0 + is-core-module: ^2.12.0 path-parse: ^1.0.7 supports-preserve-symlinks-flag: ^1.0.0 bin: resolve: bin/resolve - checksum: f8a26958aa572c9b064562750b52131a37c29d072478ea32e129063e2da7f83e31f7f11e7087a18225a8561cfe8d2f0df9dbea7c9d331a897571c0a2527dbb4c + checksum: fb834b81348428cb545ff1b828a72ea28feb5a97c026a1cf40aa1008352c72811ff4d4e71f2035273dc536dcfcae20c13604ba6283c612d70fa0b6e44519c374 languageName: node linkType: hard -"resolve@patch:resolve@^1.20.0#~builtin, resolve@patch:resolve@^1.22.0#~builtin, resolve@patch:resolve@^1.22.1#~builtin, resolve@patch:resolve@^1.22.3#~builtin, resolve@patch:resolve@^1.22.4#~builtin": - version: 1.22.8 - resolution: "resolve@patch:resolve@npm%3A1.22.8#~builtin::version=1.22.8&hash=07638b" +"resolve@patch:resolve@^1.18.1#~builtin, resolve@patch:resolve@^1.20.0#~builtin, resolve@patch:resolve@^1.22.1#~builtin": + version: 1.22.3 + resolution: "resolve@patch:resolve@npm%3A1.22.3#~builtin::version=1.22.3&hash=07638b" dependencies: - is-core-module: ^2.13.0 + is-core-module: ^2.12.0 path-parse: ^1.0.7 supports-preserve-symlinks-flag: ^1.0.0 bin: resolve: bin/resolve - checksum: 5479b7d431cacd5185f8db64bfcb7286ae5e31eb299f4c4f404ad8aa6098b77599563ac4257cb2c37a42f59dfc06a1bec2bcf283bb448f319e37f0feb9a09847 + checksum: ad59734723b596d0891321c951592ed9015a77ce84907f89c9d9307dd0c06e11a67906a3e628c4cae143d3e44898603478af0ddeb2bba3f229a9373efe342665 languageName: node linkType: hard @@ -6576,18 +6172,6 @@ __metadata: languageName: node linkType: hard -"safe-array-concat@npm:^1.1.0": - version: 1.1.0 - resolution: "safe-array-concat@npm:1.1.0" - dependencies: - call-bind: ^1.0.5 - get-intrinsic: ^1.2.2 - has-symbols: ^1.0.3 - isarray: ^2.0.5 - checksum: 5c71eaa999168ee7474929f1cd3aae80f486353a651a094d9968936692cf90aa065224929a6486dcda66334a27dce4250a83612f9e0fef6dced1a925d3ac7296 - languageName: node - linkType: hard - "safe-buffer@npm:5.2.1, safe-buffer@npm:~5.2.0": version: 5.2.1 resolution: "safe-buffer@npm:5.2.1" @@ -6595,14 +6179,21 @@ __metadata: languageName: node linkType: hard -"safe-regex-test@npm:^1.0.3": - version: 1.0.3 - resolution: "safe-regex-test@npm:1.0.3" +"safe-buffer@npm:~5.1.1": + version: 5.1.2 + resolution: "safe-buffer@npm:5.1.2" + checksum: f2f1f7943ca44a594893a852894055cf619c1fbcb611237fc39e461ae751187e7baf4dc391a72125e0ac4fb2d8c5c0b3c71529622e6a58f46b960211e704903c + languageName: node + linkType: hard + +"safe-regex-test@npm:^1.0.0": + version: 1.0.0 + resolution: "safe-regex-test@npm:1.0.0" dependencies: - call-bind: ^1.0.6 - es-errors: ^1.3.0 + call-bind: ^1.0.2 + get-intrinsic: ^1.1.3 is-regex: ^1.1.4 - checksum: 6c7d392ff1ae7a3ae85273450ed02d1d131f1d2c76e177d6b03eb88e6df8fa062639070e7d311802c1615f351f18dc58f9454501c58e28d5ffd9b8f502ba6489 + checksum: bc566d8beb8b43c01b94e67de3f070fd2781685e835959bbbaaec91cc53381145ca91f69bd837ce6ec244817afa0a5e974fc4e40a2957f0aca68ac3add1ddd34 languageName: node linkType: hard @@ -6613,6 +6204,29 @@ __metadata: languageName: node linkType: hard +"sass@npm:^1.29.0": + version: 1.56.2 + resolution: "sass@npm:1.56.2" + dependencies: + chokidar: ">=3.0.0 <4.0.0" + immutable: ^4.0.0 + source-map-js: ">=0.6.2 <2.0.0" + bin: + sass: sass.js + checksum: 7b1f524d04bc42df3bac6dc5201ff7475635b7df9a1390430ed5bd58b6a73ea1ae58b83ccea8da293cb77b85b4c848faf5f2779ca4b91b9303948c251d0ddca4 + languageName: node + linkType: hard + +"scss-parser@npm:^1.0.4": + version: 1.0.6 + resolution: "scss-parser@npm:1.0.6" + dependencies: + invariant: 2.2.4 + lodash: 4.17.21 + checksum: f1424d73e9c6aec006df16da7222a590efc3ee9b2abb622caffb5e19ed029baf66cf0d2d7aaad1e3d84e5d7f75cf7a3f761570341f26b318b499b08a7e5cd91c + languageName: node + linkType: hard + "semver-compare@npm:^1.0.0": version: 1.0.0 resolution: "semver-compare@npm:1.0.0" @@ -6627,27 +6241,27 @@ __metadata: languageName: node linkType: hard -"semver-truncate@npm:^3.0.0": - version: 3.0.0 - resolution: "semver-truncate@npm:3.0.0" +"semver-truncate@npm:^2.0.0": + version: 2.0.0 + resolution: "semver-truncate@npm:2.0.0" dependencies: - semver: ^7.3.5 - checksum: d8c23812218ff147f512ac4830e86860a377dba8a9733ae97d816102aca33236fa1c44c06544727153fffb93d15d0e45c49b2c40a7964aa3671769e9aed2f3f9 + semver: ^6.0.0 + checksum: 713c2bd49add098c3fd6271091e7c8c13908ab3f052d58a19b68920da9f101d34eb6a0c60ef4bd5fa3c345f001e0df37bb831602082441bb35ba857cac42e0f4 languageName: node linkType: hard -"semver@npm:7.x, semver@npm:^7.0.0, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.3.8, semver@npm:^7.5.3, semver@npm:^7.5.4": - version: 7.6.0 - resolution: "semver@npm:7.6.0" +"semver@npm:7.x, semver@npm:^7.0.0, semver@npm:^7.3.2, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.3.8, semver@npm:^7.5.4": + version: 7.5.4 + resolution: "semver@npm:7.5.4" dependencies: lru-cache: ^6.0.0 bin: semver: bin/semver.js - checksum: 7427f05b70786c696640edc29fdd4bc33b2acf3bbe1740b955029044f80575fc664e1a512e4113c3af21e767154a94b4aa214bf6cd6e42a1f6dba5914e0b208c + checksum: 12d8ad952fa353b0995bf180cdac205a4068b759a140e5d3c608317098b3575ac2f1e09182206bf2eb26120e1c0ed8fb92c48c592f6099680de56bb071423ca3 languageName: node linkType: hard -"semver@npm:^6.3.0, semver@npm:^6.3.1": +"semver@npm:^6.0.0, semver@npm:^6.3.0, semver@npm:^6.3.1": version: 6.3.1 resolution: "semver@npm:6.3.1" bin: @@ -6663,31 +6277,6 @@ __metadata: languageName: node linkType: hard -"set-function-length@npm:^1.2.1": - version: 1.2.1 - resolution: "set-function-length@npm:1.2.1" - dependencies: - define-data-property: ^1.1.2 - es-errors: ^1.3.0 - function-bind: ^1.1.2 - get-intrinsic: ^1.2.3 - gopd: ^1.0.1 - has-property-descriptors: ^1.0.1 - checksum: 23742476d695f2eae86348c069bd164d4f25fa7c26546a46a2b5f370f1f84b98ec64366d2cd17785d5b41bbf16b95855da4b7eb188e7056fe3b0248d61f6afda - languageName: node - linkType: hard - -"set-function-name@npm:^2.0.1": - version: 2.0.1 - resolution: "set-function-name@npm:2.0.1" - dependencies: - define-data-property: ^1.0.1 - functions-have-names: ^1.2.3 - has-property-descriptors: ^1.0.0 - checksum: 4975d17d90c40168eee2c7c9c59d023429f0a1690a89d75656306481ece0c3c1fb1ebcc0150ea546d1913e35fbd037bace91372c69e543e51fc5d1f31a9fa126 - languageName: node - linkType: hard - "shebang-command@npm:^1.2.0": version: 1.2.0 resolution: "shebang-command@npm:1.2.0" @@ -6720,27 +6309,25 @@ __metadata: languageName: node linkType: hard -"shiki@npm:^0.14.1": - version: 0.14.7 - resolution: "shiki@npm:0.14.7" +"shiki@npm:^0.11.1": + version: 0.11.1 + resolution: "shiki@npm:0.11.1" dependencies: - ansi-sequence-parser: ^1.1.0 - jsonc-parser: ^3.2.0 - vscode-oniguruma: ^1.7.0 - vscode-textmate: ^8.0.0 - checksum: 2aec3b3519df977c4391df9e1825cb496e9a4d7e11395f05a0da77e4fa2f7c3d9d6e6ee94029ac699533017f2b25637ee68f6d39f05f311535c2704d0329b520 + jsonc-parser: ^3.0.0 + vscode-oniguruma: ^1.6.1 + vscode-textmate: ^6.0.0 + checksum: 2a4ebc3b466816263fc244ae4f67a4ff96aa74d863b9c5e7e4affc50f37fd6d1a781405de0dbf763b777bc33e49a0d441de7ff3fededb8b01e3b8dbb37e2927d languageName: node linkType: hard "side-channel@npm:^1.0.4": - version: 1.0.5 - resolution: "side-channel@npm:1.0.5" + version: 1.0.4 + resolution: "side-channel@npm:1.0.4" dependencies: - call-bind: ^1.0.6 - es-errors: ^1.3.0 - get-intrinsic: ^1.2.4 - object-inspect: ^1.13.1 - checksum: 640446b4e5a9554116ed6f5bec17c6740fa8da2c1a19e4d69c1202191185d4cc24f21ba0dd3ccca140eb6a8ee978d0b5bc5132f09b7962db7f9c4bc7872494ac + call-bind: ^1.0.0 + get-intrinsic: ^1.0.2 + object-inspect: ^1.9.0 + checksum: 351e41b947079c10bd0858364f32bb3a7379514c399edb64ab3dce683933483fc63fb5e4efe0a15a2e8a7e3c436b6a91736ddb8d8c6591b0460a24bb4a1ee245 languageName: node linkType: hard @@ -6752,13 +6339,13 @@ __metadata: linkType: hard "signal-exit@npm:^4.0.1": - version: 4.1.0 - resolution: "signal-exit@npm:4.1.0" - checksum: 64c757b498cb8629ffa5f75485340594d2f8189e9b08700e69199069c8e3070fb3e255f7ab873c05dc0b3cec412aea7402e10a5990cb6a050bd33ba062a6c549 + version: 4.0.1 + resolution: "signal-exit@npm:4.0.1" + checksum: 832043367dca23e61ab6033e8b41c595fc805119bfe4fee63dea201cdc809a8b086bc54597bbbc1b2cde1a63c7dd554d1295ed2cca92db598233834a0b59b281 languageName: node linkType: hard -"sisteransi@npm:^1.0.5": +"sisteransi@npm:^1.0.4": version: 1.0.5 resolution: "sisteransi@npm:1.0.5" checksum: aba6438f46d2bfcef94cf112c835ab395172c75f67453fe05c340c770d3c402363018ae1ab4172a1026a90c47eaccf3af7b6ff6fa749a680c2929bd7fa2b37a4 @@ -6772,13 +6359,6 @@ __metadata: languageName: node linkType: hard -"slash@npm:^4.0.0": - version: 4.0.0 - resolution: "slash@npm:4.0.0" - checksum: da8e4af73712253acd21b7853b7e0dbba776b786e82b010a5bfc8b5051a1db38ed8aba8e1e8f400dd2c9f373be91eb1c42b66e91abb407ff42b10feece5e1d2d - languageName: node - linkType: hard - "smart-buffer@npm:^4.2.0": version: 4.2.0 resolution: "smart-buffer@npm:4.2.0" @@ -6797,24 +6377,13 @@ __metadata: languageName: node linkType: hard -"socks-proxy-agent@npm:^8.0.1": - version: 8.0.2 - resolution: "socks-proxy-agent@npm:8.0.2" - dependencies: - agent-base: ^7.0.2 - debug: ^4.3.4 - socks: ^2.7.1 - checksum: 4fb165df08f1f380881dcd887b3cdfdc1aba3797c76c1e9f51d29048be6e494c5b06d68e7aea2e23df4572428f27a3ec22b3d7c75c570c5346507433899a4b6d - languageName: node - linkType: hard - -"socks@npm:^2.6.2, socks@npm:^2.7.1": - version: 2.8.0 - resolution: "socks@npm:2.8.0" +"socks@npm:^2.6.2": + version: 2.7.0 + resolution: "socks@npm:2.7.0" dependencies: - ip-address: ^9.0.5 + ip: ^2.0.0 smart-buffer: ^4.2.0 - checksum: b245081650c5fc112f0e10d2ee3976f5665d2191b9f86b181edd3c875d53d84a94bc173752d5be2651a450e3ef799fe7ec405dba3165890c08d9ac0b4ec1a487 + checksum: 0b5d94e2b3c11e7937b40fc5dac1e80d8b92a330e68c51f1d271ce6980c70adca42a3f8cd47c4a5769956bada074823b53374f2dc5f2ea5c2121b222dec6eadf languageName: node linkType: hard @@ -6843,24 +6412,23 @@ __metadata: languageName: node linkType: hard -"sort-package-json@npm:2.7.0": - version: 2.7.0 - resolution: "sort-package-json@npm:2.7.0" - dependencies: - detect-indent: ^7.0.1 - detect-newline: ^4.0.0 - get-stdin: ^9.0.0 - git-hooks-list: ^3.0.0 - globby: ^13.1.2 - is-plain-obj: ^4.1.0 +"sort-package-json@npm:1.57.0": + version: 1.57.0 + resolution: "sort-package-json@npm:1.57.0" + dependencies: + detect-indent: ^6.0.0 + detect-newline: 3.1.0 + git-hooks-list: 1.0.3 + globby: 10.0.0 + is-plain-obj: 2.1.0 sort-object-keys: ^1.1.3 bin: sort-package-json: cli.js - checksum: 3047c80c8ccd602e678c407df9f48862a613f32992676190cec332116837a65e2c345e4865cff7fad1f681faefa6c4e8cf243cf26c4a923cff369bace768626f + checksum: 15758ba6b1033ae136863eabd4b8c8a28e79dd68b71327f6803c2ea740dc149dc9ad708b006d07ee9de56b6dc7cadb7c697801ad50c01348aa91022c6ff6e21d languageName: node linkType: hard -"source-map-js@npm:^1.0.2": +"source-map-js@npm:>=0.6.2 <2.0.0, source-map-js@npm:^1.0.2": version: 1.0.2 resolution: "source-map-js@npm:1.0.2" checksum: c049a7fc4deb9a7e9b481ae3d424cc793cb4845daa690bc5a05d428bf41bf231ced49b4cf0c9e77f9d42fdb3d20d6187619fc586605f5eabe995a316da8d377c @@ -6891,10 +6459,17 @@ __metadata: languageName: node linkType: hard +"sourcemap-codec@npm:^1.4.8": + version: 1.4.8 + resolution: "sourcemap-codec@npm:1.4.8" + checksum: b57981c05611afef31605732b598ccf65124a9fcb03b833532659ac4d29ac0f7bfacbc0d6c5a28a03e84c7510e7e556d758d0bb57786e214660016fb94279316 + languageName: node + linkType: hard + "spdx-exceptions@npm:^2.1.0": - version: 2.5.0 - resolution: "spdx-exceptions@npm:2.5.0" - checksum: bb127d6e2532de65b912f7c99fc66097cdea7d64c10d3ec9b5e96524dbbd7d20e01cba818a6ddb2ae75e62bb0c63d5e277a7e555a85cbc8ab40044984fa4ae15 + version: 2.3.0 + resolution: "spdx-exceptions@npm:2.3.0" + checksum: cb69a26fa3b46305637123cd37c85f75610e8c477b6476fa7354eb67c08128d159f1d36715f19be6f9daf4b680337deb8c65acdcae7f2608ba51931540687ac0 languageName: node linkType: hard @@ -6909,16 +6484,9 @@ __metadata: linkType: hard "spdx-license-ids@npm:^3.0.0": - version: 3.0.17 - resolution: "spdx-license-ids@npm:3.0.17" - checksum: 0aba5d16292ff604dd20982200e23b4d425f6ba364765039bdbde2f6c956b9909fce1ad040a897916a5f87388e85e001f90cb64bf706b6e319f3908cfc445a59 - languageName: node - linkType: hard - -"sprintf-js@npm:^1.1.3": - version: 1.1.3 - resolution: "sprintf-js@npm:1.1.3" - checksum: a3fdac7b49643875b70864a9d9b469d87a40dfeaf5d34d9d0c5b1cda5fd7d065531fcb43c76357d62254c57184a7b151954156563a4d6a747015cfb41021cad0 + version: 3.0.5 + resolution: "spdx-license-ids@npm:3.0.5" + checksum: b1ceea3f87407ec375d1de90f6fc7610d6c845ff5f8db21d4d752b3d4e121df563c78113df7c564daff4e8778ad54b9a9024a7e9ea3779f13a43dd0e9128c08e languageName: node linkType: hard @@ -6929,15 +6497,6 @@ __metadata: languageName: node linkType: hard -"ssri@npm:^10.0.0": - version: 10.0.5 - resolution: "ssri@npm:10.0.5" - dependencies: - minipass: ^7.0.3 - checksum: 0a31b65f21872dea1ed3f7c200d7bc1c1b91c15e419deca14f282508ba917cbb342c08a6814c7f68ca4ca4116dd1a85da2bbf39227480e50125a1ceffeecb750 - languageName: node - linkType: hard - "ssri@npm:^9.0.0": version: 9.0.1 resolution: "ssri@npm:9.0.1" @@ -6948,11 +6507,11 @@ __metadata: linkType: hard "stack-utils@npm:^2.0.3": - version: 2.0.6 - resolution: "stack-utils@npm:2.0.6" + version: 2.0.5 + resolution: "stack-utils@npm:2.0.5" dependencies: escape-string-regexp: ^2.0.0 - checksum: 052bf4d25bbf5f78e06c1d5e67de2e088b06871fa04107ca8d3f0e9d9263326e2942c8bedee3545795fc77d787d443a538345eef74db2f8e35db3558c6f91ff7 + checksum: 76b69da0f5b48a34a0f93c98ee2a96544d2c4ca2557f7eef5ddb961d3bdc33870b46f498a84a7c4f4ffb781df639840e7ebf6639164ed4da5e1aeb659615b9c7 languageName: node linkType: hard @@ -6964,16 +6523,16 @@ __metadata: linkType: hard "string-length@npm:^4.0.1": - version: 4.0.2 - resolution: "string-length@npm:4.0.2" + version: 4.0.1 + resolution: "string-length@npm:4.0.1" dependencies: char-regex: ^1.0.2 strip-ansi: ^6.0.0 - checksum: ce85533ef5113fcb7e522bcf9e62cb33871aa99b3729cec5595f4447f660b0cefd542ca6df4150c97a677d58b0cb727a3fe09ac1de94071d05526c73579bf505 + checksum: 7bd3191668ddafa6f574a8b17a1bd1b085737d64ceefa51f72cdd19c45a730422cd70d984eee7584d6e5b5c84b6318633c6d6a720a4bfd7c58769985fa77573e languageName: node linkType: hard -"string-width-cjs@npm:string-width@^4.2.0, string-width@npm:^1.0.2 || 2 || 3 || 4, string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3": +"string-width@npm:^1.0.2 || 2 || 3 || 4, string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3": version: 4.2.3 resolution: "string-width@npm:4.2.3" dependencies: @@ -6984,47 +6543,36 @@ __metadata: languageName: node linkType: hard -"string-width@npm:^5.0.1, string-width@npm:^5.1.2": - version: 5.1.2 - resolution: "string-width@npm:5.1.2" - dependencies: - eastasianwidth: ^0.2.0 - emoji-regex: ^9.2.2 - strip-ansi: ^7.0.1 - checksum: 7369deaa29f21dda9a438686154b62c2c5f661f8dda60449088f9f980196f7908fc39fdd1803e3e01541970287cf5deae336798337e9319a7055af89dafa7193 - languageName: node - linkType: hard - -"string.prototype.trim@npm:^1.2.8": - version: 1.2.8 - resolution: "string.prototype.trim@npm:1.2.8" +"string.prototype.trim@npm:^1.2.7": + version: 1.2.7 + resolution: "string.prototype.trim@npm:1.2.7" dependencies: call-bind: ^1.0.2 - define-properties: ^1.2.0 - es-abstract: ^1.22.1 - checksum: 49eb1a862a53aba73c3fb6c2a53f5463173cb1f4512374b623bcd6b43ad49dd559a06fb5789bdec771a40fc4d2a564411c0a75d35fb27e76bbe738c211ecff07 + define-properties: ^1.1.4 + es-abstract: ^1.20.4 + checksum: 05b7b2d6af63648e70e44c4a8d10d8cc457536df78b55b9d6230918bde75c5987f6b8604438c4c8652eb55e4fc9725d2912789eb4ec457d6995f3495af190c09 languageName: node linkType: hard -"string.prototype.trimend@npm:^1.0.7": - version: 1.0.7 - resolution: "string.prototype.trimend@npm:1.0.7" +"string.prototype.trimend@npm:^1.0.6": + version: 1.0.6 + resolution: "string.prototype.trimend@npm:1.0.6" dependencies: call-bind: ^1.0.2 - define-properties: ^1.2.0 - es-abstract: ^1.22.1 - checksum: 2375516272fd1ba75992f4c4aa88a7b5f3c7a9ca308d963bcd5645adf689eba6f8a04ebab80c33e30ec0aefc6554181a3a8416015c38da0aa118e60ec896310c + define-properties: ^1.1.4 + es-abstract: ^1.20.4 + checksum: 0fdc34645a639bd35179b5a08227a353b88dc089adf438f46be8a7c197fc3f22f8514c1c9be4629b3cd29c281582730a8cbbad6466c60f76b5f99cf2addb132e languageName: node linkType: hard -"string.prototype.trimstart@npm:^1.0.7": - version: 1.0.7 - resolution: "string.prototype.trimstart@npm:1.0.7" +"string.prototype.trimstart@npm:^1.0.6": + version: 1.0.6 + resolution: "string.prototype.trimstart@npm:1.0.6" dependencies: call-bind: ^1.0.2 - define-properties: ^1.2.0 - es-abstract: ^1.22.1 - checksum: 13d0c2cb0d5ff9e926fa0bec559158b062eed2b68cd5be777ffba782c96b2b492944e47057274e064549b94dd27cf81f48b27a31fee8af5b574cff253e7eb613 + define-properties: ^1.1.4 + es-abstract: ^1.20.4 + checksum: 89080feef416621e6ef1279588994305477a7a91648d9436490d56010a1f7adc39167cddac7ce0b9884b8cdbef086987c4dcb2960209f2af8bac0d23ceff4f41 languageName: node linkType: hard @@ -7037,7 +6585,7 @@ __metadata: languageName: node linkType: hard -"strip-ansi-cjs@npm:strip-ansi@^6.0.1, strip-ansi@npm:^6.0.0, strip-ansi@npm:^6.0.1": +"strip-ansi@npm:^6.0.0, strip-ansi@npm:^6.0.1": version: 6.0.1 resolution: "strip-ansi@npm:6.0.1" dependencies: @@ -7046,15 +6594,6 @@ __metadata: languageName: node linkType: hard -"strip-ansi@npm:^7.0.1": - version: 7.1.0 - resolution: "strip-ansi@npm:7.1.0" - dependencies: - ansi-regex: ^6.0.1 - checksum: 859c73fcf27869c22a4e4d8c6acfe690064659e84bef9458aa6d13719d09ca88dcfd40cbf31fd0be63518ea1a643fe070b4827d353e09533a5b0b9fd4553d64d - languageName: node - linkType: hard - "strip-bom@npm:^3.0.0": version: 3.0.0 resolution: "strip-bom@npm:3.0.0" @@ -7083,7 +6622,7 @@ __metadata: languageName: node linkType: hard -"strip-json-comments@npm:^3.1.1": +"strip-json-comments@npm:^3.1.0, strip-json-comments@npm:^3.1.1": version: 3.1.1 resolution: "strip-json-comments@npm:3.1.1" checksum: 492f73e27268f9b1c122733f28ecb0e7e8d8a531a6662efbd08e22cccb3f9475e90a1b82cab06a392f6afae6d2de636f977e231296400d0ec5304ba70f166443 @@ -7142,12 +6681,12 @@ __metadata: linkType: hard "supports-hyperlinks@npm:^2.0.0": - version: 2.3.0 - resolution: "supports-hyperlinks@npm:2.3.0" + version: 2.1.0 + resolution: "supports-hyperlinks@npm:2.1.0" dependencies: has-flag: ^4.0.0 supports-color: ^7.0.0 - checksum: 9ee0de3c8ce919d453511b2b1588a8205bd429d98af94a01df87411391010fe22ca463f268c84b2ce2abad019dfff8452aa02806eeb5c905a8d7ad5c4f4c52b8 + checksum: e4f430c870a258c9854b8bd7f166a9c1e76e3b851da84d4399d6a8f1d4a485e4ec36c16455dde80acf06c86e7c0a6df76ed22b6a4644a6ae3eced8616b3f21b5 languageName: node linkType: hard @@ -7158,27 +6697,17 @@ __metadata: languageName: node linkType: hard -"synckit@npm:0.9.0": - version: 0.9.0 - resolution: "synckit@npm:0.9.0" - dependencies: - "@pkgr/core": ^0.1.0 - tslib: ^2.6.2 - checksum: c38bc3df0306c3242ddc5628d766ef0b4ca85a8a861b0a26b03483f09eca31a7fbdbcefb1b9fdee9e49db7739df25ce728cb2c6aef02ddc58bf46ee71924a36b - languageName: node - linkType: hard - "tar@npm:^6.1.11, tar@npm:^6.1.2": - version: 6.2.0 - resolution: "tar@npm:6.2.0" + version: 6.1.11 + resolution: "tar@npm:6.1.11" dependencies: chownr: ^2.0.0 fs-minipass: ^2.0.0 - minipass: ^5.0.0 + minipass: ^3.0.0 minizlib: ^2.1.1 mkdirp: ^1.0.3 yallist: ^4.0.0 - checksum: db4d9fe74a2082c3a5016630092c54c8375ff3b280186938cfd104f2e089c4fd9bad58688ef6be9cf186a889671bf355c7cda38f09bbf60604b281715ca57f5c + checksum: a04c07bb9e2d8f46776517d4618f2406fb977a74d914ad98b264fc3db0fe8224da5bec11e5f8902c5b9bcb8ace22d95fbe3c7b36b8593b7dfc8391a25898f32f languageName: node linkType: hard @@ -7295,10 +6824,10 @@ __metadata: linkType: hard "ts-node@npm:^10.7.0": - version: 10.9.2 - resolution: "ts-node@npm:10.9.2" + version: 10.7.0 + resolution: "ts-node@npm:10.7.0" dependencies: - "@cspotcode/source-map-support": ^0.8.0 + "@cspotcode/source-map-support": 0.7.0 "@tsconfig/node10": ^1.0.7 "@tsconfig/node12": ^1.0.7 "@tsconfig/node14": ^1.0.0 @@ -7309,7 +6838,7 @@ __metadata: create-require: ^1.1.0 diff: ^4.0.1 make-error: ^1.1.1 - v8-compile-cache-lib: ^3.0.1 + v8-compile-cache-lib: ^3.0.0 yn: 3.1.1 peerDependencies: "@swc/core": ">=1.2.50" @@ -7328,19 +6857,19 @@ __metadata: ts-node-script: dist/bin-script.js ts-node-transpile-only: dist/bin-transpile.js ts-script: dist/bin-script-deprecated.js - checksum: fde256c9073969e234526e2cfead42591b9a2aec5222bac154b0de2fa9e4ceb30efcd717ee8bc785a56f3a119bdd5aa27b333d9dbec94ed254bd26f8944c67ac + checksum: 2a379e43f7478d0b79e1e63af91fe222d83857727957df4bd3bdf3c0a884de5097b12feb9bbf530074526b8874c0338b0e6328cf334f3a5e2c49c71e837273f7 languageName: node linkType: hard "tsconfig-paths@npm:^3.14.1": - version: 3.15.0 - resolution: "tsconfig-paths@npm:3.15.0" + version: 3.14.1 + resolution: "tsconfig-paths@npm:3.14.1" dependencies: "@types/json5": ^0.0.29 - json5: ^1.0.2 + json5: ^1.0.1 minimist: ^1.2.6 strip-bom: ^3.0.0 - checksum: 59f35407a390d9482b320451f52a411a256a130ff0e7543d18c6f20afab29ac19fbe55c360a93d6476213cc335a4d76ce90f67df54c4e9037f7d240920832201 + checksum: 8afa01c673ebb4782ba53d3a12df97fa837ce524f8ad38ee4e2b2fd57f5ac79abc21c574e9e9eb014d93efe7fe8214001b96233b5c6ea75bd1ea82afe17a4c6d languageName: node linkType: hard @@ -7351,13 +6880,6 @@ __metadata: languageName: node linkType: hard -"tslib@npm:^2.6.2": - version: 2.6.2 - resolution: "tslib@npm:2.6.2" - checksum: 329ea56123005922f39642318e3d1f0f8265d1e7fcb92c633e0809521da75eeaca28d2cf96d7248229deb40e5c19adf408259f4b9640afd20d13aecc1430f3ad - languageName: node - linkType: hard - "tsutils@npm:^3.21.0": version: 3.21.0 resolution: "tsutils@npm:3.21.0" @@ -7385,6 +6907,13 @@ __metadata: languageName: node linkType: hard +"type-fest@npm:^0.11.0": + version: 0.11.0 + resolution: "type-fest@npm:0.11.0" + checksum: 8e7589e1eb5ced6c8e1d3051553b59b9f525c41e58baa898229915781c7bf55db8cb2f74e56d8031f6af5af2eecc7cb8da9ca3af7e5b80b49d8ca5a81891f3f9 + languageName: node + linkType: hard + "type-fest@npm:^0.20.2": version: 0.20.2 resolution: "type-fest@npm:0.20.2" @@ -7392,49 +6921,6 @@ __metadata: languageName: node linkType: hard -"type-fest@npm:^0.21.3": - version: 0.21.3 - resolution: "type-fest@npm:0.21.3" - checksum: e6b32a3b3877f04339bae01c193b273c62ba7bfc9e325b8703c4ee1b32dc8fe4ef5dfa54bf78265e069f7667d058e360ae0f37be5af9f153b22382cd55a9afe0 - languageName: node - linkType: hard - -"typed-array-buffer@npm:^1.0.1": - version: 1.0.1 - resolution: "typed-array-buffer@npm:1.0.1" - dependencies: - call-bind: ^1.0.6 - es-errors: ^1.3.0 - is-typed-array: ^1.1.13 - checksum: 1d65e46b2b9b7ec2a30df39b9ddf32e55ad08d6119aec33975506a3dba56057796bdc3c64dbeb7fdb61bf340a75e279dfd55b48ce8f3b874f01731e1da6833d2 - languageName: node - linkType: hard - -"typed-array-byte-length@npm:^1.0.0": - version: 1.0.0 - resolution: "typed-array-byte-length@npm:1.0.0" - dependencies: - call-bind: ^1.0.2 - for-each: ^0.3.3 - has-proto: ^1.0.1 - is-typed-array: ^1.1.10 - checksum: b03db16458322b263d87a702ff25388293f1356326c8a678d7515767ef563ef80e1e67ce648b821ec13178dd628eb2afdc19f97001ceae7a31acf674c849af94 - languageName: node - linkType: hard - -"typed-array-byte-offset@npm:^1.0.0": - version: 1.0.0 - resolution: "typed-array-byte-offset@npm:1.0.0" - dependencies: - available-typed-arrays: ^1.0.5 - call-bind: ^1.0.2 - for-each: ^0.3.3 - has-proto: ^1.0.1 - is-typed-array: ^1.1.10 - checksum: 04f6f02d0e9a948a95fbfe0d5a70b002191fae0b8fe0fe3130a9b2336f043daf7a3dda56a31333c35a067a97e13f539949ab261ca0f3692c41603a46a94e960b - languageName: node - linkType: hard - "typed-array-length@npm:^1.0.4": version: 1.0.4 resolution: "typed-array-length@npm:1.0.4" @@ -7447,18 +6933,18 @@ __metadata: linkType: hard "typedoc@npm:^0.23.15": - version: 0.23.28 - resolution: "typedoc@npm:0.23.28" + version: 0.23.15 + resolution: "typedoc@npm:0.23.15" dependencies: lunr: ^2.3.9 - marked: ^4.2.12 - minimatch: ^7.1.3 - shiki: ^0.14.1 + marked: ^4.0.19 + minimatch: ^5.1.0 + shiki: ^0.11.1 peerDependencies: - typescript: 4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x + typescript: 4.6.x || 4.7.x || 4.8.x bin: typedoc: bin/typedoc - checksum: 40eb4e207aac1b734e09400cf03f543642cc7b11000895198dd5a0d3166315759ccf4ac30a2915153597c5c186101c72bac2f1fc12b428184a9274d3a0e44c5e + checksum: 2313bcda09755332e15e40fb2e72ac8d72447abfcd60f7c555d3a232ad1fe3596afd87ddcfbdf17eb081fc65f1cbf43b02e05adf38e6ade55f64d475da4271d7 languageName: node linkType: hard @@ -7494,46 +6980,21 @@ __metadata: languageName: node linkType: hard -"undici-types@npm:~5.26.4": - version: 5.26.5 - resolution: "undici-types@npm:5.26.5" - checksum: 3192ef6f3fd5df652f2dc1cd782b49d6ff14dc98e5dced492aa8a8c65425227da5da6aafe22523c67f035a272c599bb89cfe803c1db6311e44bed3042fc25487 - languageName: node - linkType: hard - -"unique-filename@npm:^2.0.0": - version: 2.0.1 - resolution: "unique-filename@npm:2.0.1" - dependencies: - unique-slug: ^3.0.0 - checksum: 807acf3381aff319086b64dc7125a9a37c09c44af7620bd4f7f3247fcd5565660ac12d8b80534dcbfd067e6fe88a67e621386dd796a8af828d1337a8420a255f - languageName: node - linkType: hard - -"unique-filename@npm:^3.0.0": - version: 3.0.0 - resolution: "unique-filename@npm:3.0.0" - dependencies: - unique-slug: ^4.0.0 - checksum: 8e2f59b356cb2e54aab14ff98a51ac6c45781d15ceaab6d4f1c2228b780193dc70fae4463ce9e1df4479cb9d3304d7c2043a3fb905bdeca71cc7e8ce27e063df - languageName: node - linkType: hard - -"unique-slug@npm:^3.0.0": - version: 3.0.0 - resolution: "unique-slug@npm:3.0.0" +"unique-filename@npm:^1.1.1": + version: 1.1.1 + resolution: "unique-filename@npm:1.1.1" dependencies: - imurmurhash: ^0.1.4 - checksum: 49f8d915ba7f0101801b922062ee46b7953256c93ceca74303bd8e6413ae10aa7e8216556b54dc5382895e8221d04f1efaf75f945c2e4a515b4139f77aa6640c + unique-slug: ^2.0.0 + checksum: cf4998c9228cc7647ba7814e255dec51be43673903897b1786eff2ac2d670f54d4d733357eb08dea969aa5e6875d0e1bd391d668fbdb5a179744e7c7551a6f80 languageName: node linkType: hard -"unique-slug@npm:^4.0.0": - version: 4.0.0 - resolution: "unique-slug@npm:4.0.0" +"unique-slug@npm:^2.0.0": + version: 2.0.2 + resolution: "unique-slug@npm:2.0.2" dependencies: imurmurhash: ^0.1.4 - checksum: 0884b58365af59f89739e6f71e3feacb5b1b41f2df2d842d0757933620e6de08eff347d27e9d499b43c40476cbaf7988638d3acb2ffbcb9d35fd035591adfd15 + checksum: 5b6876a645da08d505dedb970d1571f6cebdf87044cb6b740c8dbb24f0d6e1dc8bdbf46825fd09f994d7cf50760e6f6e063cfa197d51c5902c00a861702eb75a languageName: node linkType: hard @@ -7552,11 +7013,11 @@ __metadata: linkType: hard "uri-js@npm:^4.2.2": - version: 4.4.1 - resolution: "uri-js@npm:4.4.1" + version: 4.4.0 + resolution: "uri-js@npm:4.4.0" dependencies: punycode: ^2.1.0 - checksum: 7167432de6817fe8e9e0c9684f1d2de2bb688c94388f7569f7dbdb1587c9f4ca2a77962f134ec90be0cc4d004c939ff0d05acc9f34a0db39a3c797dada262633 + checksum: 0baf85a04dda531b68f4a7e94b31f5300f1719b793ac5e5b3264db9da58dd4ceccb418236eb4535a610ab1e62edabb4e7da78eb1cb90b3171e68d261756c2702 languageName: node linkType: hard @@ -7567,35 +7028,35 @@ __metadata: languageName: node linkType: hard -"v8-compile-cache-lib@npm:^3.0.1": - version: 3.0.1 - resolution: "v8-compile-cache-lib@npm:3.0.1" - checksum: 78089ad549e21bcdbfca10c08850022b22024cdcc2da9b168bcf5a73a6ed7bf01a9cebb9eac28e03cd23a684d81e0502797e88f3ccd27a32aeab1cfc44c39da0 +"v8-compile-cache-lib@npm:^3.0.0": + version: 3.0.0 + resolution: "v8-compile-cache-lib@npm:3.0.0" + checksum: 674e312bbca796584b61dc915f33c7e7dc4e06d196e0048cb772c8964493a1ec723f1dd014d9419fd55c24a6eae148f60769da23f622e05cd13268063fa1ed6b languageName: node linkType: hard "v8-to-istanbul@npm:^9.0.1": - version: 9.2.0 - resolution: "v8-to-istanbul@npm:9.2.0" + version: 9.0.1 + resolution: "v8-to-istanbul@npm:9.0.1" dependencies: "@jridgewell/trace-mapping": ^0.3.12 "@types/istanbul-lib-coverage": ^2.0.1 - convert-source-map: ^2.0.0 - checksum: 31ef98c6a31b1dab6be024cf914f235408cd4c0dc56a5c744a5eea1a9e019ba279e1b6f90d695b78c3186feed391ed492380ccf095009e2eb91f3d058f0b4491 + convert-source-map: ^1.6.0 + checksum: a49c34bf0a3af0c11041a3952a2600913904a983bd1bc87148b5c033bc5c1d02d5a13620fcdbfa2c60bc582a2e2970185780f0c844b4c3a220abf405f8af6311 languageName: node linkType: hard -"vscode-oniguruma@npm:^1.7.0": - version: 1.7.0 - resolution: "vscode-oniguruma@npm:1.7.0" - checksum: 53519d91d90593e6fb080260892e87d447e9b200c4964d766772b5053f5699066539d92100f77f1302c91e8fc5d9c772fbe40fe4c90f3d411a96d5a9b1e63f42 +"vscode-oniguruma@npm:^1.6.1": + version: 1.6.2 + resolution: "vscode-oniguruma@npm:1.6.2" + checksum: 6b754acdafd5b68242ea5938bb00a32effc16c77f471d4f0f337d879d0e8e592622998e2441f42d9a7ff799c1593f31c11f26ca8d9bf9917e3ca881d3c1f3e19 languageName: node linkType: hard -"vscode-textmate@npm:^8.0.0": - version: 8.0.0 - resolution: "vscode-textmate@npm:8.0.0" - checksum: 127780dfea89559d70b8326df6ec344cfd701312dd7f3f591a718693812b7852c30b6715e3cfc8b3200a4e2515b4c96f0843c0eacc0a3020969b5de262c2a4bb +"vscode-textmate@npm:^6.0.0": + version: 6.0.0 + resolution: "vscode-textmate@npm:6.0.0" + checksum: ff6f17a406c2906586afc14ef01cb122e33acd35312e815abb5c924347a777c6783ce3fe7db8b83f1760ebf843c669843b9390f905b69c433b3395af28e4b483 languageName: node linkType: hard @@ -7621,20 +7082,21 @@ __metadata: languageName: node linkType: hard -"which-typed-array@npm:^1.1.14": - version: 1.1.14 - resolution: "which-typed-array@npm:1.1.14" +"which-typed-array@npm:^1.1.9": + version: 1.1.10 + resolution: "which-typed-array@npm:1.1.10" dependencies: - available-typed-arrays: ^1.0.6 - call-bind: ^1.0.5 + available-typed-arrays: ^1.0.5 + call-bind: ^1.0.2 for-each: ^0.3.3 gopd: ^1.0.1 - has-tostringtag: ^1.0.1 - checksum: efe30c143c58630dde8ab96f9330e20165bacd77ca843c602b510120a415415573bcdef3ccbc30a0e5aaf20f257360cfe24712aea0008f149ce5bb99834c0c0b + has-tostringtag: ^1.0.0 + is-typed-array: ^1.1.10 + checksum: 149f54f5d11773ce938c60a2c36306720a1824eccb62bda0620170932c2783fa50ad0226254c5741a962e35c7ccba5f4e4c402b8618cb3b4f2cf47bf5e6ade31 languageName: node linkType: hard -"which@npm:^1.2.14, which@npm:^1.2.9": +"which@npm:^1.2.9": version: 1.3.1 resolution: "which@npm:1.3.1" dependencies: @@ -7657,24 +7119,13 @@ __metadata: linkType: hard "which@npm:^3.0.0": - version: 3.0.1 - resolution: "which@npm:3.0.1" + version: 3.0.0 + resolution: "which@npm:3.0.0" dependencies: isexe: ^2.0.0 bin: node-which: bin/which.js - checksum: adf720fe9d84be2d9190458194f814b5e9015ae4b88711b150f30d0f4d0b646544794b86f02c7ebeec1db2029bc3e83a7ff156f542d7521447e5496543e26890 - languageName: node - linkType: hard - -"which@npm:^4.0.0": - version: 4.0.0 - resolution: "which@npm:4.0.0" - dependencies: - isexe: ^3.1.1 - bin: - node-which: bin/which.js - checksum: f17e84c042592c21e23c8195108cff18c64050b9efb8459589116999ea9da6dd1509e6a1bac3aeebefd137be00fabbb61b5c2bc0aa0f8526f32b58ee2f545651 + checksum: fdcf3cadab414e60b86c6836e7ac9de9273561a8926f57cbc28641b602a771527239ee4d47f2689ed255666f035ba0a0d72390986cc0c4e45344491adc7d0eeb languageName: node linkType: hard @@ -7687,7 +7138,7 @@ __metadata: languageName: node linkType: hard -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0, wrap-ansi@npm:^7.0.0": +"wrap-ansi@npm:^7.0.0": version: 7.0.0 resolution: "wrap-ansi@npm:7.0.0" dependencies: @@ -7698,17 +7149,6 @@ __metadata: languageName: node linkType: hard -"wrap-ansi@npm:^8.1.0": - version: 8.1.0 - resolution: "wrap-ansi@npm:8.1.0" - dependencies: - ansi-styles: ^6.1.0 - string-width: ^5.0.1 - strip-ansi: ^7.0.1 - checksum: 371733296dc2d616900ce15a0049dca0ef67597d6394c57347ba334393599e800bab03c41d4d45221b6bc967b8c453ec3ae4749eff3894202d16800fdfe0e238 - languageName: node - linkType: hard - "wrappy@npm:1": version: 1.0.2 resolution: "wrappy@npm:1.0.2" @@ -7772,9 +7212,9 @@ __metadata: linkType: hard "yargs-parser@npm:^20.2.2": - version: 20.2.9 - resolution: "yargs-parser@npm:20.2.9" - checksum: 8bb69015f2b0ff9e17b2c8e6bfe224ab463dd00ca211eece72a4cd8a906224d2703fb8a326d36fdd0e68701e201b2a60ed7cf81ce0fd9b3799f9fe7745977ae3 + version: 20.2.7 + resolution: "yargs-parser@npm:20.2.7" + checksum: ec0ea9e1b5699977380583f5ab1c0e2c6fc5f1ed374eb3053c458df00c543effba53628ad3297f3ccc769660518d5e376fd1cfb298b8e37077421aca8d75ae89 languageName: node linkType: hard @@ -7785,7 +7225,7 @@ __metadata: languageName: node linkType: hard -"yargs@npm:^16.2.0": +"yargs@npm:^16.1.0, yargs@npm:^16.2.0": version: 16.2.0 resolution: "yargs@npm:16.2.0" dependencies: From 1c25112c0795925bd8283fd654b5c09f197d9039 Mon Sep 17 00:00:00 2001 From: Kanthesha Devaramane Date: Fri, 16 Feb 2024 17:55:34 +0000 Subject: [PATCH 03/12] lint fix --- src/rule-helpers.test.ts | 10 +++++----- src/rules/package-exports-conforms.test.ts | 4 ++-- src/rules/package-files-conforms.test.ts | 4 ++-- src/rules/require-tsconfig-build.test.ts | 2 +- src/rules/require-tsconfig.test.ts | 2 +- src/rules/require-tsup-config.test.ts | 2 +- 6 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/rule-helpers.test.ts b/src/rule-helpers.test.ts index 753fe1a..2089506 100644 --- a/src/rule-helpers.test.ts +++ b/src/rule-helpers.test.ts @@ -4,11 +4,6 @@ import { } from '@metamask/utils/node'; import path from 'path'; -import { - buildMetaMaskRepository, - fakePackageManifest, - withinSandbox, -} from '../tests/helpers'; import { combineRuleExecutionResults, directoryAndContentsConform, @@ -20,6 +15,11 @@ import { packagePropertiesConform, pass, } from './rule-helpers'; +import { + buildMetaMaskRepository, + fakePackageManifest, + withinSandbox, +} from '../tests/helpers'; describe('pass', () => { it('returns a result that represents a passing rule', () => { diff --git a/src/rules/package-exports-conforms.test.ts b/src/rules/package-exports-conforms.test.ts index 3abdf16..38405b4 100644 --- a/src/rules/package-exports-conforms.test.ts +++ b/src/rules/package-exports-conforms.test.ts @@ -1,13 +1,13 @@ import { writeFile } from '@metamask/utils/node'; import path from 'path'; +import { fail, pass } from '../rule-helpers'; +import packageExportsConform from './package-exports-conform'; import { buildMetaMaskRepository, fakePackageManifest, withinSandbox, } from '../../tests/helpers'; -import { fail, pass } from '../rule-helpers'; -import packageExportsConform from './package-exports-conform'; describe('Rule: package-exports-conforms', () => { it('passes if the "exports" field in the project\'s package.json matches the one in the template\'s package.json', async () => { diff --git a/src/rules/package-files-conforms.test.ts b/src/rules/package-files-conforms.test.ts index e9d4515..e8adb04 100644 --- a/src/rules/package-files-conforms.test.ts +++ b/src/rules/package-files-conforms.test.ts @@ -1,13 +1,13 @@ import { writeFile } from '@metamask/utils/node'; import path from 'path'; +import { fail, pass } from '../rule-helpers'; +import packageFilesConform from './package-files-conform'; import { buildMetaMaskRepository, fakePackageManifest, withinSandbox, } from '../../tests/helpers'; -import { fail, pass } from '../rule-helpers'; -import packageFilesConform from './package-files-conform'; describe('Rule: package-files-conforms', () => { it('passes if the "files" field in the project\'s package.json matches the one in the template\'s package.json', async () => { diff --git a/src/rules/require-tsconfig-build.test.ts b/src/rules/require-tsconfig-build.test.ts index 63fd70a..41d34a6 100644 --- a/src/rules/require-tsconfig-build.test.ts +++ b/src/rules/require-tsconfig-build.test.ts @@ -1,9 +1,9 @@ import { writeFile } from '@metamask/utils/node'; import path from 'path'; -import { buildMetaMaskRepository, withinSandbox } from '../../tests/helpers'; import { fail, pass } from '../rule-helpers'; import requireTsconfigBuild from './require-tsconfig-build'; +import { buildMetaMaskRepository, withinSandbox } from '../../tests/helpers'; describe('Rule: require-tsconfig-build', () => { it('passes if the project has a tsconfig.build.json', async () => { diff --git a/src/rules/require-tsconfig.test.ts b/src/rules/require-tsconfig.test.ts index 044697c..66125b6 100644 --- a/src/rules/require-tsconfig.test.ts +++ b/src/rules/require-tsconfig.test.ts @@ -1,9 +1,9 @@ import { writeFile } from '@metamask/utils/node'; import path from 'path'; -import { buildMetaMaskRepository, withinSandbox } from '../../tests/helpers'; import { fail, pass } from '../rule-helpers'; import requireTsconfig from './require-tsconfig'; +import { buildMetaMaskRepository, withinSandbox } from '../../tests/helpers'; describe('Rule: require-tsconfig', () => { it('passes if the project has a tsconfig.json', async () => { diff --git a/src/rules/require-tsup-config.test.ts b/src/rules/require-tsup-config.test.ts index aba1806..38d8cdc 100644 --- a/src/rules/require-tsup-config.test.ts +++ b/src/rules/require-tsup-config.test.ts @@ -1,9 +1,9 @@ import { writeFile } from '@metamask/utils/node'; import path from 'path'; -import { buildMetaMaskRepository, withinSandbox } from '../../tests/helpers'; import { fail, pass } from '../rule-helpers'; import requireTsupConfig from './require-tsup-config'; +import { buildMetaMaskRepository, withinSandbox } from '../../tests/helpers'; describe('Rule: require-tsup-config', () => { it('passes if the project has a tsup.config.ts', async () => { From 21ad0296d98e2d1d407c7b11215292b0688fd824 Mon Sep 17 00:00:00 2001 From: Kanthesha Devaramane Date: Fri, 16 Feb 2024 18:22:07 +0000 Subject: [PATCH 04/12] lint fix --- src/rules/package-exports-conforms.test.ts | 2 +- src/rules/package-files-conforms.test.ts | 2 +- src/rules/require-tsconfig-build.test.ts | 2 +- src/rules/require-tsconfig.test.ts | 2 +- src/rules/require-tsup-config.test.ts | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/rules/package-exports-conforms.test.ts b/src/rules/package-exports-conforms.test.ts index 38405b4..6e17a0f 100644 --- a/src/rules/package-exports-conforms.test.ts +++ b/src/rules/package-exports-conforms.test.ts @@ -1,13 +1,13 @@ import { writeFile } from '@metamask/utils/node'; import path from 'path'; -import { fail, pass } from '../rule-helpers'; import packageExportsConform from './package-exports-conform'; import { buildMetaMaskRepository, fakePackageManifest, withinSandbox, } from '../../tests/helpers'; +import { fail, pass } from '../rule-helpers'; describe('Rule: package-exports-conforms', () => { it('passes if the "exports" field in the project\'s package.json matches the one in the template\'s package.json', async () => { diff --git a/src/rules/package-files-conforms.test.ts b/src/rules/package-files-conforms.test.ts index e8adb04..2038c80 100644 --- a/src/rules/package-files-conforms.test.ts +++ b/src/rules/package-files-conforms.test.ts @@ -1,13 +1,13 @@ import { writeFile } from '@metamask/utils/node'; import path from 'path'; -import { fail, pass } from '../rule-helpers'; import packageFilesConform from './package-files-conform'; import { buildMetaMaskRepository, fakePackageManifest, withinSandbox, } from '../../tests/helpers'; +import { fail, pass } from '../rule-helpers'; describe('Rule: package-files-conforms', () => { it('passes if the "files" field in the project\'s package.json matches the one in the template\'s package.json', async () => { diff --git a/src/rules/require-tsconfig-build.test.ts b/src/rules/require-tsconfig-build.test.ts index 41d34a6..cb527e7 100644 --- a/src/rules/require-tsconfig-build.test.ts +++ b/src/rules/require-tsconfig-build.test.ts @@ -1,9 +1,9 @@ import { writeFile } from '@metamask/utils/node'; import path from 'path'; -import { fail, pass } from '../rule-helpers'; import requireTsconfigBuild from './require-tsconfig-build'; import { buildMetaMaskRepository, withinSandbox } from '../../tests/helpers'; +import { fail, pass } from '../rule-helpers'; describe('Rule: require-tsconfig-build', () => { it('passes if the project has a tsconfig.build.json', async () => { diff --git a/src/rules/require-tsconfig.test.ts b/src/rules/require-tsconfig.test.ts index 66125b6..8ab7546 100644 --- a/src/rules/require-tsconfig.test.ts +++ b/src/rules/require-tsconfig.test.ts @@ -1,9 +1,9 @@ import { writeFile } from '@metamask/utils/node'; import path from 'path'; -import { fail, pass } from '../rule-helpers'; import requireTsconfig from './require-tsconfig'; import { buildMetaMaskRepository, withinSandbox } from '../../tests/helpers'; +import { fail, pass } from '../rule-helpers'; describe('Rule: require-tsconfig', () => { it('passes if the project has a tsconfig.json', async () => { diff --git a/src/rules/require-tsup-config.test.ts b/src/rules/require-tsup-config.test.ts index 38d8cdc..c04d4d8 100644 --- a/src/rules/require-tsup-config.test.ts +++ b/src/rules/require-tsup-config.test.ts @@ -1,9 +1,9 @@ import { writeFile } from '@metamask/utils/node'; import path from 'path'; -import { fail, pass } from '../rule-helpers'; import requireTsupConfig from './require-tsup-config'; import { buildMetaMaskRepository, withinSandbox } from '../../tests/helpers'; +import { fail, pass } from '../rule-helpers'; describe('Rule: require-tsup-config', () => { it('passes if the project has a tsup.config.ts', async () => { From 48b56eb43060ebf0e7cc70136e01506036889f19 Mon Sep 17 00:00:00 2001 From: Kanthesha Devaramane Date: Mon, 19 Feb 2024 09:56:41 +0000 Subject: [PATCH 05/12] rule name correction --- src/rules/package-typescript-dev-dependencies-conform.ts | 2 +- src/rules/package-typescript-scripts-conform.ts | 2 +- src/rules/types.ts | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/rules/package-typescript-dev-dependencies-conform.ts b/src/rules/package-typescript-dev-dependencies-conform.ts index 24fdaf6..f22861f 100644 --- a/src/rules/package-typescript-dev-dependencies-conform.ts +++ b/src/rules/package-typescript-dev-dependencies-conform.ts @@ -3,7 +3,7 @@ import { RuleName } from './types'; import { packagePropertiesConform } from '../rule-helpers'; export default buildRule({ - name: RuleName.PackageTypeScriptDependenciesConform, + name: RuleName.PackageTypescriptDependenciesConform, description: 'Do the typescript-related `devDependencies` in `package.json` conform?', dependencies: [RuleName.RequireValidPackageManifest], diff --git a/src/rules/package-typescript-scripts-conform.ts b/src/rules/package-typescript-scripts-conform.ts index 6623b7b..0f8ba41 100644 --- a/src/rules/package-typescript-scripts-conform.ts +++ b/src/rules/package-typescript-scripts-conform.ts @@ -3,7 +3,7 @@ import { RuleName } from './types'; import { packagePropertiesConform } from '../rule-helpers'; export default buildRule({ - name: RuleName.PackageTypeScriptScriptsConform, + name: RuleName.PackageTypescriptScriptsConform, description: 'Do the typescript-related `scripts` in `package.json` conform?', dependencies: [RuleName.RequireValidPackageManifest], execute: async (ruleExecutionArguments) => { diff --git a/src/rules/types.ts b/src/rules/types.ts index 7199673..d4bf35c 100644 --- a/src/rules/types.ts +++ b/src/rules/types.ts @@ -21,8 +21,8 @@ export enum RuleName { RequireTsConfig = 'require-tsconfig', RequireTsConfigBuild = 'require-tsconfig-build', RequireTsupConfig = 'require-tsup-config', - PackageTypeScriptDependenciesConform = 'package-typescript-dependencies-conform', - PackageTypeScriptScriptsConform = 'package-typescript-scripts-conform', + PackageTypescriptDependenciesConform = 'package-typescript-dependencies-conform', + PackageTypescriptScriptsConform = 'package-typescript-scripts-conform', PackageExportsConform = 'package-exports-conform', PackageMainConform = 'package-main-conform', PackageModuleConform = 'package-module-conform', From 485f8baeb1bcd7769b0be077434dba0c76f8701a Mon Sep 17 00:00:00 2001 From: Kanthesha Devaramane Date: Fri, 23 Feb 2024 16:36:46 +0000 Subject: [PATCH 06/12] Including review suggetions --- src/main.test.ts | 54 ++++-- src/rule-helpers.test.ts | 104 ++++-------- src/rule-helpers.ts | 121 ++++++------- src/rules/index.ts | 20 +-- ...ackage-engines-node-field-conforms.test.ts | 14 +- ...=> package-exports-field-conforms.test.ts} | 57 ++++--- ...m.ts => package-exports-field-conforms.ts} | 9 +- ...s => package-files-field-conforms.test.ts} | 24 ++- ...orm.ts => package-files-field-conforms.ts} | 6 +- .../package-jest-dependencies-conform.test.ts | 55 +++--- ...=> package-lavamoat-tsup-conforms.test.ts} | 89 ++++++---- src/rules/package-lavamoat-tsup-conforms.ts | 36 ++-- .../package-lint-dependencies-conform.test.ts | 160 ++++++++++-------- src/rules/package-main-conform.ts | 12 -- ...ts => package-main-field-conforms.test.ts} | 32 ++-- src/rules/package-main-field-conforms.ts | 12 ++ src/rules/package-module-conform.ts | 12 -- ... => package-module-field-conforms.test.ts} | 32 ++-- src/rules/package-module-field-conforms.ts | 12 ++ ...age-package-manager-field-conforms.test.ts | 22 ++- .../package-test-scripts-conform.test.ts | 62 +++---- src/rules/package-test-scripts-conform.ts | 10 +- ...s => package-types-field-conforms.test.ts} | 24 ++- ...orm.ts => package-types-field-conforms.ts} | 6 +- ...ypescript-dev-dependencies-conform.test.ts | 106 +++++++----- ...age-typescript-dev-dependencies-conform.ts | 14 +- ...package-typescript-scripts-conform.test.ts | 84 +++++---- .../package-typescript-scripts-conform.ts | 8 +- .../require-valid-package-manifest.test.ts | 4 +- src/rules/types.ts | 12 +- tests/helpers.ts | 52 +++--- 31 files changed, 665 insertions(+), 600 deletions(-) rename src/rules/{package-exports-conforms.test.ts => package-exports-field-conforms.test.ts} (62%) rename src/rules/{package-exports-conform.ts => package-exports-field-conforms.ts} (56%) rename src/rules/{package-files-conforms.test.ts => package-files-field-conforms.test.ts} (75%) rename src/rules/{package-files-conform.ts => package-files-field-conforms.ts} (59%) rename src/rules/{package-lavamoat-tsup-conform.test.ts => package-lavamoat-tsup-conforms.test.ts} (75%) delete mode 100644 src/rules/package-main-conform.ts rename src/rules/{package-main-conforms.test.ts => package-main-field-conforms.test.ts} (74%) create mode 100644 src/rules/package-main-field-conforms.ts delete mode 100644 src/rules/package-module-conform.ts rename src/rules/{package-module-conforms.test.ts => package-module-field-conforms.test.ts} (74%) create mode 100644 src/rules/package-module-field-conforms.ts rename src/rules/{package-types-conforms.test.ts => package-types-field-conforms.test.ts} (75%) rename src/rules/{package-types-conform.ts => package-types-field-conforms.ts} (59%) diff --git a/src/main.test.ts b/src/main.test.ts index 2f11314..76e0271 100644 --- a/src/main.test.ts +++ b/src/main.test.ts @@ -11,8 +11,8 @@ import { main } from './main'; import { FakeOutputLogger } from '../tests/fake-output-logger'; import type { PrimaryExecaFunction } from '../tests/helpers'; import { + buildPackageManifestMock, fakeDateOnly, - fakePackageManifest, withinSandbox, } from '../tests/helpers'; import { setupToolWithMockRepositories } from '../tests/setup-tool-with-mock-repositories'; @@ -74,7 +74,23 @@ describe('main', () => { ); await writeFile( path.join(repository.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + devDependencies: { + test: '1.0.0', + jest: '1.0.0', + 'jest-it-up': '1.0.0', + '@types/node': '1.0.0', + 'ts-node': '1.0.0', + tsup: '1.0.0', + typescript: '1.0.0', + }, + scripts: { + test: 'test script', + 'test:watch': 'test watch script', + build: 'test build', + 'build:types': 'test build types', + }, + }), ); await writeFile( path.join(repository.directoryPath, 'README.md'), @@ -129,8 +145,8 @@ repo-1 - Do the typescript-related \`devDependencies\` in \`package.json\` conform? ✅ - Do the typescript-related \`scripts\` in \`package.json\` conform? ✅ - Do the \`exports\` in \`package.json\` conform? ✅ - - Do the \`main\` in \`package.json\` conform? ✅ - - Do the \`module\` in \`package.json\` conform? ✅ + - Does the \`main\` in \`package.json\` conform? ✅ + - Does the \`module\` in \`package.json\` conform? ✅ - Do the \`types\` in \`package.json\` conform? ✅ - Do the \`files\` in \`package.json\` conform? ✅ - Does the \`lavamoat.allowscripts\` field in \`package.json\` conform? ✅ @@ -163,8 +179,8 @@ repo-2 - Do the typescript-related \`devDependencies\` in \`package.json\` conform? ✅ - Do the typescript-related \`scripts\` in \`package.json\` conform? ✅ - Do the \`exports\` in \`package.json\` conform? ✅ - - Do the \`main\` in \`package.json\` conform? ✅ - - Do the \`module\` in \`package.json\` conform? ✅ + - Does the \`main\` in \`package.json\` conform? ✅ + - Does the \`module\` in \`package.json\` conform? ✅ - Do the \`types\` in \`package.json\` conform? ✅ - Do the \`files\` in \`package.json\` conform? ✅ - Does the \`lavamoat.allowscripts\` field in \`package.json\` conform? ✅ @@ -405,7 +421,23 @@ Elapsed time: 0 ms ); await writeFile( path.join(repository.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + devDependencies: { + test: '1.0.0', + jest: '1.0.0', + 'jest-it-up': '1.0.0', + '@types/node': '1.0.0', + 'ts-node': '1.0.0', + tsup: '1.0.0', + typescript: '1.0.0', + }, + scripts: { + test: 'test script', + 'test:watch': 'test watch script', + build: 'test build', + 'build:types': 'test build types', + }, + }), ); await writeFile( path.join(repository.directoryPath, 'README.md'), @@ -460,8 +492,8 @@ repo-1 - Do the typescript-related \`devDependencies\` in \`package.json\` conform? ✅ - Do the typescript-related \`scripts\` in \`package.json\` conform? ✅ - Do the \`exports\` in \`package.json\` conform? ✅ - - Do the \`main\` in \`package.json\` conform? ✅ - - Do the \`module\` in \`package.json\` conform? ✅ + - Does the \`main\` in \`package.json\` conform? ✅ + - Does the \`module\` in \`package.json\` conform? ✅ - Do the \`types\` in \`package.json\` conform? ✅ - Do the \`files\` in \`package.json\` conform? ✅ - Does the \`lavamoat.allowscripts\` field in \`package.json\` conform? ✅ @@ -494,8 +526,8 @@ repo-2 - Do the typescript-related \`devDependencies\` in \`package.json\` conform? ✅ - Do the typescript-related \`scripts\` in \`package.json\` conform? ✅ - Do the \`exports\` in \`package.json\` conform? ✅ - - Do the \`main\` in \`package.json\` conform? ✅ - - Do the \`module\` in \`package.json\` conform? ✅ + - Does the \`main\` in \`package.json\` conform? ✅ + - Does the \`module\` in \`package.json\` conform? ✅ - Do the \`types\` in \`package.json\` conform? ✅ - Do the \`files\` in \`package.json\` conform? ✅ - Does the \`lavamoat.allowscripts\` field in \`package.json\` conform? ✅ diff --git a/src/rule-helpers.test.ts b/src/rule-helpers.test.ts index 2089506..fa01039 100644 --- a/src/rule-helpers.test.ts +++ b/src/rule-helpers.test.ts @@ -11,13 +11,12 @@ import { fail, fileConforms, fileExists, - getString, - packagePropertiesConform, + packageManifestPropertiesConform, pass, } from './rule-helpers'; import { buildMetaMaskRepository, - fakePackageManifest, + buildPackageManifestMock, withinSandbox, } from '../tests/helpers'; @@ -576,8 +575,8 @@ describe('directoryAndContentsConform', () => { }); }); -describe('packagePropertiesConform', () => { - it('passes if the project and template have the same referenced property with its value matching', async () => { +describe('packageManifestPropertiesConform', () => { + it('passes if the project and template have the `main` with its value matching', async () => { await withinSandbox(async (sandbox) => { const template = buildMetaMaskRepository({ shortname: 'template', @@ -585,7 +584,7 @@ describe('packagePropertiesConform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock(), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -593,9 +592,9 @@ describe('packagePropertiesConform', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock(), ); - const result = await packagePropertiesConform('main', { + const result = await packageManifestPropertiesConform(['main'], { template, project, pass, @@ -606,7 +605,7 @@ describe('packagePropertiesConform', () => { }); }); - it('passes if the project and template have the same referenced property and its child properties', async () => { + it('passes if the project and template have the `devDependencies` and its child property `test` matching', async () => { await withinSandbox(async (sandbox) => { const template = buildMetaMaskRepository({ shortname: 'template', @@ -614,7 +613,7 @@ describe('packagePropertiesConform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ devDependencies: { test: '1.0.0' } }), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -622,17 +621,16 @@ describe('packagePropertiesConform', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ devDependencies: { test: '1.0.0' } }), ); - const result = await packagePropertiesConform( - 'devDependencies', + const result = await packageManifestPropertiesConform( + ["devDependencies.['test']"], { template, project, pass, fail, }, - ['test'], ); expect(result).toStrictEqual({ passed: true }); @@ -647,39 +645,32 @@ describe('packagePropertiesConform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ devDependencies: { test: '1.0.0' } }), ); const project = buildMetaMaskRepository({ shortname: 'project', directoryPath: path.join(sandbox.directoryPath, 'project'), }); - const fakeProjectPackageManifest = { - ...fakePackageManifest, - devDependencies: { - test: '0.0.1', - }, - }; - await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakeProjectPackageManifest), + buildPackageManifestMock({ devDependencies: { test: '0.0.1' } }), ); - const result = await packagePropertiesConform( - 'devDependencies', + const result = await packageManifestPropertiesConform( + ["devDependencies.['test']"], { template, project, pass, fail, }, - ['test'], ); expect(result).toStrictEqual({ passed: false, failures: [ { - message: '`test` is "0.0.1", when it should be "1.0.0".', + message: + "`devDependencies.['test']` is '0.0.1', when it should be '1.0.0'.", }, ], }); @@ -692,16 +683,14 @@ describe('packagePropertiesConform', () => { shortname: 'template', directoryPath: path.join(sandbox.directoryPath, 'template'), }); - const fakeTemplatePackageManifest = { - ...fakePackageManifest, - devDependencies: { - test: '1.0.0', - 'new-pack': '1.0.0', - }, - }; await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakeTemplatePackageManifest), + buildPackageManifestMock({ + devDependencies: { + test: '1.0.0', + 'new-pack': '1.0.0', + }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -710,18 +699,17 @@ describe('packagePropertiesConform', () => { await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock(), ); - const result = await packagePropertiesConform( - 'devDependencies', + const result = await packageManifestPropertiesConform( + ["devDependencies.['new-pack']"], { template, project, pass, fail, }, - ['new-pack'], ); expect(result).toStrictEqual({ @@ -729,7 +717,7 @@ describe('packagePropertiesConform', () => { failures: [ { message: - '`package.json` should list `"new-pack": "1.0.0"`, but does not.', + "`package.json` should list `'devDependencies.['new-pack']': '1.0.0'`, but does not.", }, ], }); @@ -744,7 +732,7 @@ describe('packagePropertiesConform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock(), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -752,37 +740,19 @@ describe('packagePropertiesConform', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock(), ); await expect( - packagePropertiesConform( - 'devDependencies', - { - template, - project, - pass, - fail, - }, - ['new-pack'], - ), + packageManifestPropertiesConform(["devDependencies.['new-pack']"], { + template, + project, + pass, + fail, + }), ).rejects.toThrow( - 'Could not find "new-pack" in template\'s package.json. This is not the fault of the project, but is rather a bug in a rule.', + "Could not find `devDependencies.['new-pack']` in reference `package.json`. This is not the fault of the target `package.json`, but is rather a bug in a rule.", ); }); }); }); - -describe('getString', () => { - it('returns empty string when the input is undefined', async () => { - expect(getString(undefined)).toBe(''); - }); - - it('returns same string when the input is string', async () => { - expect(getString('test')).toBe('test'); - }); - - it('returns stringified object when the input is json object', async () => { - expect(getString({ test: 'test' })).toBe("{ test: 'test' }"); - }); -}); diff --git a/src/rule-helpers.ts b/src/rule-helpers.ts index b9a2dfc..e7929d6 100644 --- a/src/rule-helpers.ts +++ b/src/rule-helpers.ts @@ -1,4 +1,4 @@ -import { isEqual } from 'lodash'; +import { isEqual, get, has, isMatch } from 'lodash'; import { inspect } from 'util'; import type { @@ -194,30 +194,15 @@ export async function directoryAndContentsConform( return combineRuleExecutionResults(fileConformsResults); } -/** - * Returns a string representation of object. - * - * @param input - Object to be stringified. - * @returns String. - */ -export function getString(input: Type): string { - if (!input) { - return ''; - } - return typeof input === 'object' ? inspect(input) : input.toString(); -} - /** * Verifies whether project has the required property name/s and with it's value equivalent to the same in template project. * - * @param propertyName - Name of the property from package.json. + * @param propertyPaths - The array of property names to be verified. * @param ruleExecutionArguments - Rule execution arguments. - * @param childPropertyNames - The array of property names to be verified. */ -export async function packagePropertiesConform( - propertyName: string, +export async function packageManifestPropertiesConform( + propertyPaths: string[], ruleExecutionArguments: RuleExecutionArguments, - childPropertyNames?: string[], ): Promise { const { template, project } = ruleExecutionArguments; const entryPath = 'package.json'; @@ -231,70 +216,66 @@ export async function packagePropertiesConform( PackageManifestSchema, ); - type Key = keyof typeof templateManifest; - const propertyKey = propertyName as Key; - const failures: RuleExecutionFailure[] = []; - if (childPropertyNames) { - const templateProperties = templateManifest[propertyKey]; - const projectProperties = projectManifest[propertyKey]; - type SubKey = keyof typeof templateProperties; - for (const childPropetyName of childPropertyNames) { - const failure = dataConform( - templateProperties[childPropetyName as SubKey], - projectProperties[childPropetyName as SubKey], - childPropetyName, - ); - if (failure) { - failures.push(failure); - } - } - } else { - const failure = dataConform( - templateManifest[propertyKey], - projectManifest[propertyKey], - propertyName, + const conformsResults = propertyPaths.map((propertyPath) => { + return dataConform( + templateManifest, + projectManifest, + propertyPath, + entryPath, ); - if (failure) { - failures.push(failure); - } - } - - return failures.length === 0 ? pass() : fail(failures); + }); + return combineRuleExecutionResults(conformsResults); } /** * Performs a deep comparison between template data and project data to determine if they are equivalent. * In case of equals, it returns undefined, otherwise failure message. * - * @param templateProperty - Data from template. - * @param projectProperty - Data from project. - * @param propertyName - Name of the property. - * @returns RuleExecutionFailure. + * @param referenceSchema - Reference schema. + * @param targetSchema - Target schema. + * @param propertyPath - Path of the property. + * @param entryPath - The path to the file from which schema is prepared. + * @returns PartialRuleExecutionResult. */ -function dataConform( - templateProperty: Schema, - projectProperty: Schema, - propertyName: string, -): RuleExecutionFailure | undefined { - if (!templateProperty) { +export function dataConform( + referenceSchema: Schema, + targetSchema: Schema, + propertyPath: string, + entryPath: string, +): PartialRuleExecutionResult { + if (!has(referenceSchema, propertyPath)) { throw new Error( - `Could not find "${propertyName}" in template's package.json. This is not the fault of the project, but is rather a bug in a rule.`, + `Could not find \`${propertyPath}\` in reference \`${entryPath}\`. This is not the fault of the target \`${entryPath}\`, but is rather a bug in a rule.`, ); } - if (!projectProperty) { - return { - message: `\`package.json\` should list \`"${propertyName}": "${getString( - templateProperty, - )}"\`, but does not.`, - }; - } else if (!isEqual(projectProperty, templateProperty)) { - return { - message: `\`${propertyName}\` is "${getString( - projectProperty, - )}", when it should be "${getString(templateProperty)}".`, + const referenceProperty = get(referenceSchema, propertyPath); + let failure: RuleExecutionFailure | undefined; + if (has(targetSchema, propertyPath)) { + const targetProperty = get(targetSchema, propertyPath); + let isFailed = false; + if (typeof referenceProperty === 'object') { + if (!isMatch(targetProperty, referenceProperty)) { + isFailed = true; + } + } else if (!isEqual(targetProperty, referenceProperty)) { + isFailed = true; + } + + if (isFailed) { + failure = { + message: `\`${propertyPath}\` is ${inspect( + targetProperty, + )}, when it should be ${inspect(referenceProperty)}.`, + }; + } + } else { + failure = { + message: `\`${entryPath}\` should list \`'${propertyPath}': ${inspect( + referenceProperty, + )}\`, but does not.`, }; } - return undefined; + return failure ? fail([failure]) : pass(); } diff --git a/src/rules/index.ts b/src/rules/index.ts index 61a6ab2..e78ce75 100644 --- a/src/rules/index.ts +++ b/src/rules/index.ts @@ -1,16 +1,16 @@ import allYarnModernFilesConform from './all-yarn-modern-files-conform'; import classicYarnConfigFileAbsent from './classic-yarn-config-file-absent'; import packageEnginesNodeFieldConforms from './package-engines-node-field-conforms'; -import packageExportsConform from './package-exports-conform'; -import packageFilesConform from './package-files-conform'; +import packageExportsFieldConforms from './package-exports-field-conforms'; +import packageFilesFieldConforms from './package-files-field-conforms'; import packageJestDependenciesConform from './package-jest-dependencies-conform'; import packageLavamoatTsupConforms from './package-lavamoat-tsup-conforms'; import packageLintDependenciesConform from './package-lint-dependencies-conform'; -import packageMainConform from './package-main-conform'; -import packageModuleConform from './package-module-conform'; +import packageMainFieldConforms from './package-main-field-conforms'; +import packageModuleFieldConforms from './package-module-field-conforms'; import packagePackageManagerFieldConforms from './package-package-manager-field-conforms'; import packageTestScriptsConform from './package-test-scripts-conform'; -import packageTypesConform from './package-types-conform'; +import packageTypesFieldConforms from './package-types-field-conforms'; import packageTypescriptDevDependenciesConform from './package-typescript-dev-dependencies-conform'; import packageTypescriptScriptsConform from './package-typescript-scripts-conform'; import readmeListsCorrectYarnVersion from './readme-lists-correct-yarn-version'; @@ -44,10 +44,10 @@ export const rules = [ requireTsupConfig, packageTypescriptDevDependenciesConform, packageTypescriptScriptsConform, - packageExportsConform, - packageMainConform, - packageModuleConform, - packageTypesConform, - packageFilesConform, + packageExportsFieldConforms, + packageMainFieldConforms, + packageModuleFieldConforms, + packageTypesFieldConforms, + packageFilesFieldConforms, packageLavamoatTsupConforms, ] as const; diff --git a/src/rules/package-engines-node-field-conforms.test.ts b/src/rules/package-engines-node-field-conforms.test.ts index 5efcc1e..fe9e2f8 100644 --- a/src/rules/package-engines-node-field-conforms.test.ts +++ b/src/rules/package-engines-node-field-conforms.test.ts @@ -4,7 +4,7 @@ import path from 'path'; import packageEnginesNodeFieldConforms from './package-engines-node-field-conforms'; import { buildMetaMaskRepository, - fakePackageManifest, + buildPackageManifestMock, withinSandbox, } from '../../tests/helpers'; import { fail, pass } from '../rule-helpers'; @@ -18,7 +18,7 @@ describe('Rule: package-engines-node-field-conforms', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ engines: { node: '1.0.0' } }), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -26,7 +26,7 @@ describe('Rule: package-engines-node-field-conforms', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ engines: { node: '1.0.0' } }), ); const result = await packageEnginesNodeFieldConforms.execute({ @@ -50,19 +50,15 @@ describe('Rule: package-engines-node-field-conforms', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ engines: { node: '1.0.0' } }), ); const project = buildMetaMaskRepository({ shortname: 'project', directoryPath: path.join(sandbox.directoryPath, 'project'), }); - const fakeProjectPackageManifest = { - ...fakePackageManifest, - engines: { node: 'wrong version' }, - }; await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakeProjectPackageManifest), + buildPackageManifestMock({ engines: { node: 'wrong version' } }), ); const result = await packageEnginesNodeFieldConforms.execute({ diff --git a/src/rules/package-exports-conforms.test.ts b/src/rules/package-exports-field-conforms.test.ts similarity index 62% rename from src/rules/package-exports-conforms.test.ts rename to src/rules/package-exports-field-conforms.test.ts index 6e17a0f..12537ff 100644 --- a/src/rules/package-exports-conforms.test.ts +++ b/src/rules/package-exports-field-conforms.test.ts @@ -1,15 +1,15 @@ import { writeFile } from '@metamask/utils/node'; import path from 'path'; -import packageExportsConform from './package-exports-conform'; +import packageExportsFieldConforms from './package-exports-field-conforms'; import { buildMetaMaskRepository, - fakePackageManifest, + buildPackageManifestMock, withinSandbox, } from '../../tests/helpers'; import { fail, pass } from '../rule-helpers'; -describe('Rule: package-exports-conforms', () => { +describe('Rule: package-exports-field-conforms', () => { it('passes if the "exports" field in the project\'s package.json matches the one in the template\'s package.json', async () => { await withinSandbox(async (sandbox) => { const template = buildMetaMaskRepository({ @@ -18,7 +18,14 @@ describe('Rule: package-exports-conforms', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + exports: { + '.': { + test: 'test-pack', + }, + './package.json': 'test', + }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -26,10 +33,17 @@ describe('Rule: package-exports-conforms', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + exports: { + '.': { + test: 'test-pack', + }, + './package.json': 'test', + }, + }), ); - const result = await packageExportsConform.execute({ + const result = await packageExportsFieldConforms.execute({ template, project, pass, @@ -50,27 +64,32 @@ describe('Rule: package-exports-conforms', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + exports: { + '.': { + test: 'test-pack', + }, + './package.json': 'test', + }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', directoryPath: path.join(sandbox.directoryPath, 'project'), }); - const fakeProjectPackageManifest = { - ...fakePackageManifest, - exports: { - '.': { - test: 'test', - }, - './package.json': 'test', - }, - }; await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakeProjectPackageManifest), + buildPackageManifestMock({ + exports: { + '.': { + test: 'test', + }, + './package.json': 'test', + }, + }), ); - const result = await packageExportsConform.execute({ + const result = await packageExportsFieldConforms.execute({ template, project, pass, @@ -82,7 +101,7 @@ describe('Rule: package-exports-conforms', () => { failures: [ { message: - "`exports` is \"{ '.': { test: 'test' }, './package.json': 'test' }\", when it should be \"{ '.': { test: 'test-pack' }, './package.json': 'test' }\".", + "`exports` is { '.': { test: 'test' }, './package.json': 'test' }, when it should be { '.': { test: 'test-pack' }, './package.json': 'test' }.", }, ], }); diff --git a/src/rules/package-exports-conform.ts b/src/rules/package-exports-field-conforms.ts similarity index 56% rename from src/rules/package-exports-conform.ts rename to src/rules/package-exports-field-conforms.ts index 8dc7d02..4fe66f4 100644 --- a/src/rules/package-exports-conform.ts +++ b/src/rules/package-exports-field-conforms.ts @@ -1,12 +1,15 @@ import { buildRule } from './build-rule'; import { RuleName } from './types'; -import { packagePropertiesConform } from '../rule-helpers'; +import { packageManifestPropertiesConform } from '../rule-helpers'; export default buildRule({ - name: RuleName.PackageExportsConform, + name: RuleName.PackageExportsFieldConforms, description: 'Do the `exports` in `package.json` conform?', dependencies: [RuleName.RequireValidPackageManifest], execute: async (ruleExecutionArguments) => { - return packagePropertiesConform('exports', ruleExecutionArguments); + return packageManifestPropertiesConform( + ['exports'], + ruleExecutionArguments, + ); }, }); diff --git a/src/rules/package-files-conforms.test.ts b/src/rules/package-files-field-conforms.test.ts similarity index 75% rename from src/rules/package-files-conforms.test.ts rename to src/rules/package-files-field-conforms.test.ts index 2038c80..8259bcb 100644 --- a/src/rules/package-files-conforms.test.ts +++ b/src/rules/package-files-field-conforms.test.ts @@ -1,15 +1,15 @@ import { writeFile } from '@metamask/utils/node'; import path from 'path'; -import packageFilesConform from './package-files-conform'; +import packageFilesFieldConforms from './package-files-field-conforms'; import { buildMetaMaskRepository, - fakePackageManifest, + buildPackageManifestMock, withinSandbox, } from '../../tests/helpers'; import { fail, pass } from '../rule-helpers'; -describe('Rule: package-files-conforms', () => { +describe('Rule: package-files-field-conforms', () => { it('passes if the "files" field in the project\'s package.json matches the one in the template\'s package.json', async () => { await withinSandbox(async (sandbox) => { const template = buildMetaMaskRepository({ @@ -18,7 +18,7 @@ describe('Rule: package-files-conforms', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ files: ['test-files'] }), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -26,10 +26,10 @@ describe('Rule: package-files-conforms', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ files: ['test-files'] }), ); - const result = await packageFilesConform.execute({ + const result = await packageFilesFieldConforms.execute({ template, project, pass, @@ -50,22 +50,18 @@ describe('Rule: package-files-conforms', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ files: ['test-files'] }), ); const project = buildMetaMaskRepository({ shortname: 'project', directoryPath: path.join(sandbox.directoryPath, 'project'), }); - const fakeProjectPackageManifest = { - ...fakePackageManifest, - files: ['test'], - }; await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakeProjectPackageManifest), + buildPackageManifestMock({ files: ['test'] }), ); - const result = await packageFilesConform.execute({ + const result = await packageFilesFieldConforms.execute({ template, project, pass, @@ -77,7 +73,7 @@ describe('Rule: package-files-conforms', () => { failures: [ { message: - '`files` is "[ \'test\' ]", when it should be "[ \'test-files\' ]".', + "`files` is [ 'test' ], when it should be [ 'test-files' ].", }, ], }); diff --git a/src/rules/package-files-conform.ts b/src/rules/package-files-field-conforms.ts similarity index 59% rename from src/rules/package-files-conform.ts rename to src/rules/package-files-field-conforms.ts index 5fd522e..43b15a5 100644 --- a/src/rules/package-files-conform.ts +++ b/src/rules/package-files-field-conforms.ts @@ -1,12 +1,12 @@ import { buildRule } from './build-rule'; import { RuleName } from './types'; -import { packagePropertiesConform } from '../rule-helpers'; +import { packageManifestPropertiesConform } from '../rule-helpers'; export default buildRule({ - name: RuleName.PackageFilesConform, + name: RuleName.PackageFilesFieldConforms, description: 'Do the `files` in `package.json` conform?', dependencies: [RuleName.RequireValidPackageManifest], execute: async (ruleExecutionArguments) => { - return packagePropertiesConform('files', ruleExecutionArguments); + return packageManifestPropertiesConform(['files'], ruleExecutionArguments); }, }); diff --git a/src/rules/package-jest-dependencies-conform.test.ts b/src/rules/package-jest-dependencies-conform.test.ts index daee6a9..cc03f82 100644 --- a/src/rules/package-jest-dependencies-conform.test.ts +++ b/src/rules/package-jest-dependencies-conform.test.ts @@ -4,7 +4,7 @@ import path from 'path'; import packageJestDependenciesConform from './package-jest-dependencies-conform'; import { buildMetaMaskRepository, - fakePackageManifest, + buildPackageManifestMock, withinSandbox, } from '../../tests/helpers'; import { fail, pass } from '../rule-helpers'; @@ -18,7 +18,9 @@ describe('Rule: package-jest-dependencies-conform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + devDependencies: { jest: '1.0.0', 'jest-it-up': '1.0.0' }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -26,7 +28,9 @@ describe('Rule: package-jest-dependencies-conform', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + devDependencies: { jest: '1.0.0', 'jest-it-up': '1.0.0' }, + }), ); const result = await packageJestDependenciesConform.execute({ @@ -48,16 +52,11 @@ describe('Rule: package-jest-dependencies-conform', () => { shortname: 'template', directoryPath: path.join(sandbox.directoryPath, 'template'), }); - const fakeTemplatePackageManifest = { - ...fakePackageManifest, - devDependencies: { - jest: '1.1.0', - 'jest-it-up': '1.0.0', - }, - }; await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakeTemplatePackageManifest), + buildPackageManifestMock({ + devDependencies: { jest: '1.0.0', 'jest-it-up': '1.0.0' }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -65,7 +64,9 @@ describe('Rule: package-jest-dependencies-conform', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + devDependencies: { jest: '0.0.1', 'jest-it-up': '1.0.0' }, + }), ); const result = await packageJestDependenciesConform.execute({ @@ -78,7 +79,7 @@ describe('Rule: package-jest-dependencies-conform', () => { expect(result).toStrictEqual({ passed: false, failures: [ - { message: '`jest` is "1.0.0", when it should be "1.1.0".' }, + { message: '`jest` is "0.0.1", when it should be "1.0.0".' }, ], }); }); @@ -92,21 +93,19 @@ describe('Rule: package-jest-dependencies-conform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + devDependencies: { jest: '1.0.0', 'jest-it-up': '1.0.0' }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', directoryPath: path.join(sandbox.directoryPath, 'project'), }); - const fakeProjectPackageManifest = { - ...fakePackageManifest, - devDependencies: { - 'jest-it-up': '1.0.0', - }, - }; await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakeProjectPackageManifest), + buildPackageManifestMock({ + devDependencies: { 'jest-it-up': '1.0.0' }, + }), ); const result = await packageJestDependenciesConform.execute({ @@ -134,15 +133,11 @@ describe('Rule: package-jest-dependencies-conform', () => { shortname: 'template', directoryPath: path.join(sandbox.directoryPath, 'template'), }); - const fakeTemplatePackageManifest = { - ...fakePackageManifest, - devDependencies: { - 'jest-it-up': '1.0.0', - }, - }; await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakeTemplatePackageManifest), + buildPackageManifestMock({ + devDependencies: { 'jest-it-up': '1.0.0' }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -150,7 +145,9 @@ describe('Rule: package-jest-dependencies-conform', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + devDependencies: { jest: '1.0.0', 'jest-it-up': '1.0.0' }, + }), ); await expect( diff --git a/src/rules/package-lavamoat-tsup-conform.test.ts b/src/rules/package-lavamoat-tsup-conforms.test.ts similarity index 75% rename from src/rules/package-lavamoat-tsup-conform.test.ts rename to src/rules/package-lavamoat-tsup-conforms.test.ts index c8f4d9f..e49e14f 100644 --- a/src/rules/package-lavamoat-tsup-conform.test.ts +++ b/src/rules/package-lavamoat-tsup-conforms.test.ts @@ -4,20 +4,11 @@ import path from 'path'; import packageLavamoatTsupConforms from './package-lavamoat-tsup-conforms'; import { buildMetaMaskRepository, - fakePackageManifest, + buildPackageManifestMock, withinSandbox, } from '../../tests/helpers'; import { fail, pass } from '../rule-helpers'; -const fakeLavamoatPackageManifest = { - ...fakePackageManifest, - lavamoat: { - allowScripts: { - 'tsup>esbuild': true, - }, - }, -}; - describe('Rule: package-lavamoat-tsup-conform', () => { it('passes if the project and template have the same referenced scripts and matches', async () => { await withinSandbox(async (sandbox) => { @@ -27,7 +18,13 @@ describe('Rule: package-lavamoat-tsup-conform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakeLavamoatPackageManifest), + buildPackageManifestMock({ + lavamoat: { + allowScripts: { + 'tsup>esbuild': true, + }, + }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -35,7 +32,13 @@ describe('Rule: package-lavamoat-tsup-conform', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakeLavamoatPackageManifest), + buildPackageManifestMock({ + lavamoat: { + allowScripts: { + 'tsup>esbuild': true, + }, + }, + }), ); const result = await packageLavamoatTsupConforms.execute({ template, @@ -56,24 +59,28 @@ describe('Rule: package-lavamoat-tsup-conform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakeLavamoatPackageManifest), + buildPackageManifestMock({ + lavamoat: { + allowScripts: { + 'tsup>esbuild': true, + }, + }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', directoryPath: path.join(sandbox.directoryPath, 'project'), }); - const fakeProjectPackageManifest = { - ...fakePackageManifest, - lavamoat: { - allowScripts: { - 'tsup>esbuild': false, - }, - }, - }; await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakeProjectPackageManifest), + buildPackageManifestMock({ + lavamoat: { + allowScripts: { + 'tsup>esbuild': false, + }, + }, + }), ); const result = await packageLavamoatTsupConforms.execute({ template, @@ -86,7 +93,7 @@ describe('Rule: package-lavamoat-tsup-conform', () => { passed: false, failures: [ { - message: '`tsup>esbuild` is "false", when it should be "true".', + message: '`tsup>esbuild` is false, when it should be true.', }, ], }); @@ -101,23 +108,27 @@ describe('Rule: package-lavamoat-tsup-conform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakeLavamoatPackageManifest), + buildPackageManifestMock({ + lavamoat: { + allowScripts: { + 'tsup>esbuild': true, + }, + }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', directoryPath: path.join(sandbox.directoryPath, 'project'), }); - const fakeProjectPackageManifest = { - ...fakePackageManifest, - lavamoat: { - allowScripts: { - test: false, - }, - }, - }; await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakeProjectPackageManifest), + buildPackageManifestMock({ + lavamoat: { + allowScripts: { + test: true, + }, + }, + }), ); const result = await packageLavamoatTsupConforms.execute({ template, @@ -131,7 +142,7 @@ describe('Rule: package-lavamoat-tsup-conform', () => { failures: [ { message: - '`package.json` should list `"tsup>esbuild": "true"` in `lavamoat.allowScripts`, but does not.', + "`package.json` should list `'tsup>esbuild': true`, but does not.", }, ], }); @@ -146,7 +157,13 @@ describe('Rule: package-lavamoat-tsup-conform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + lavamoat: { + allowScripts: { + 'tsup>esbuild': true, + }, + }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -154,7 +171,7 @@ describe('Rule: package-lavamoat-tsup-conform', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock(), ); const result = await packageLavamoatTsupConforms.execute({ template, diff --git a/src/rules/package-lavamoat-tsup-conforms.ts b/src/rules/package-lavamoat-tsup-conforms.ts index 0c9a19e..e85ccad 100644 --- a/src/rules/package-lavamoat-tsup-conforms.ts +++ b/src/rules/package-lavamoat-tsup-conforms.ts @@ -1,12 +1,13 @@ import { buildRule } from './build-rule'; import { RuleName } from './types'; +import { dataConform } from '../rule-helpers'; export default buildRule({ - name: RuleName.PackageLavamoatTsupConform, + name: RuleName.PackageLavamoatTsupConforms, description: 'Does the `lavamoat.allowscripts` field in `package.json` conform?', dependencies: [RuleName.RequireValidPackageManifest], - execute: async ({ project, template, pass, fail }) => { + execute: async ({ project, template, pass }) => { const entryPath = 'package.json'; const templateManifest = await template.fs.readJsonFile(entryPath); const projectManifest = await project.fs.readJsonFile(entryPath); @@ -18,31 +19,16 @@ export default buildRule({ type ChildKey = keyof typeof templateLavamoat; const templateAllowScripts = templateLavamoat['allowScripts' as ChildKey]; const projectAllowScripts = projectLavamoat['allowScripts' as ChildKey]; - if (projectAllowScripts && !('tsup>esbuild' in projectAllowScripts)) { - return fail([ - { - message: `\`package.json\` should list \`"tsup>esbuild": "${JSON.stringify( - templateAllowScripts?.['tsup>esbuild'], - )}"\` in \`lavamoat.allowScripts\`, but does not.`, - }, - ]); - } else if ( - !( - projectAllowScripts?.['tsup>esbuild'] === - templateAllowScripts?.['tsup>esbuild'] - ) - ) { - return fail([ - { - message: `\`tsup>esbuild\` is "${JSON.stringify( - projectAllowScripts?.['tsup>esbuild'], - )}", when it should be "${JSON.stringify( - templateAllowScripts?.['tsup>esbuild'], - )}".`, - }, - ]); + if (projectAllowScripts) { + return dataConform( + templateAllowScripts, + projectAllowScripts, + 'tsup>esbuild', + entryPath, + ); } } + return pass(); }, }); diff --git a/src/rules/package-lint-dependencies-conform.test.ts b/src/rules/package-lint-dependencies-conform.test.ts index 339ac56..bcf7f48 100644 --- a/src/rules/package-lint-dependencies-conform.test.ts +++ b/src/rules/package-lint-dependencies-conform.test.ts @@ -4,7 +4,7 @@ import path from 'path'; import packageLintDependenciesConform from './package-lint-dependencies-conform'; import { buildMetaMaskRepository, - fakePackageManifest, + buildPackageManifestMock, withinSandbox, } from '../../tests/helpers'; import { fail, pass } from '../rule-helpers'; @@ -16,22 +16,20 @@ describe('Rule: package-lint-dependencies-conform', () => { shortname: 'template', directoryPath: path.join(sandbox.directoryPath, 'template'), }); - const fakeTemplatePackageManifest = { - ...fakePackageManifest, - devDependencies: { - eslint: '1.0.0', - '@metamask/eslint-config-foo': '1.0.0', - '@typescript-eslint/foo': '1.0.0', - 'eslint-plugin-foo': '1.0.0', - 'eslint-config-foo': '1.0.0', - prettier: '1.0.0', - 'prettier-plugin-foo': '1.0.0', - 'prettier-config-foo': '1.0.0', - }, - }; await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakeTemplatePackageManifest), + buildPackageManifestMock({ + devDependencies: { + eslint: '1.0.0', + '@metamask/eslint-config-foo': '1.0.0', + '@typescript-eslint/foo': '1.0.0', + 'eslint-plugin-foo': '1.0.0', + 'eslint-config-foo': '1.0.0', + prettier: '1.0.0', + 'prettier-plugin-foo': '1.0.0', + 'prettier-config-foo': '1.0.0', + }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -39,7 +37,18 @@ describe('Rule: package-lint-dependencies-conform', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakeTemplatePackageManifest), + buildPackageManifestMock({ + devDependencies: { + eslint: '1.0.0', + '@metamask/eslint-config-foo': '1.0.0', + '@typescript-eslint/foo': '1.0.0', + 'eslint-plugin-foo': '1.0.0', + 'eslint-config-foo': '1.0.0', + prettier: '1.0.0', + 'prettier-plugin-foo': '1.0.0', + 'prettier-config-foo': '1.0.0', + }, + }), ); const result = await packageLintDependenciesConform.execute({ @@ -61,43 +70,39 @@ describe('Rule: package-lint-dependencies-conform', () => { shortname: 'template', directoryPath: path.join(sandbox.directoryPath, 'template'), }); - const fakeTemplatePackageManifest = { - ...fakePackageManifest, - devDependencies: { - eslint: '1.1.0', - '@metamask/eslint-config-foo': '1.0.0', - '@typescript-eslint/foo': '1.0.0', - 'eslint-plugin-foo': '1.0.0', - 'eslint-config-foo': '1.0.0', - prettier: '1.0.0', - 'prettier-plugin-foo': '1.0.0', - 'prettier-config-foo': '1.0.0', - }, - }; await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakeTemplatePackageManifest), + buildPackageManifestMock({ + devDependencies: { + eslint: '1.0.0', + '@metamask/eslint-config-foo': '1.0.0', + '@typescript-eslint/foo': '1.0.0', + 'eslint-plugin-foo': '1.0.0', + 'eslint-config-foo': '1.0.0', + prettier: '1.0.0', + 'prettier-plugin-foo': '1.0.0', + 'prettier-config-foo': '1.0.0', + }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', directoryPath: path.join(sandbox.directoryPath, 'project'), }); - const fakeProjectPackageManifest = { - ...fakePackageManifest, - devDependencies: { - eslint: '1.0.0', - '@metamask/eslint-config-foo': '1.0.0', - '@typescript-eslint/foo': '1.0.0', - 'eslint-plugin-foo': '1.0.0', - 'eslint-config-foo': '1.0.0', - prettier: '1.0.0', - 'prettier-plugin-foo': '1.0.0', - 'prettier-config-foo': '1.0.0', - }, - }; await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakeProjectPackageManifest), + buildPackageManifestMock({ + devDependencies: { + eslint: '0.0.1', + '@metamask/eslint-config-foo': '1.0.0', + '@typescript-eslint/foo': '1.0.0', + 'eslint-plugin-foo': '1.0.0', + 'eslint-config-foo': '1.0.0', + prettier: '1.0.0', + 'prettier-plugin-foo': '1.0.0', + 'prettier-config-foo': '1.0.0', + }, + }), ); const result = await packageLintDependenciesConform.execute({ @@ -110,7 +115,7 @@ describe('Rule: package-lint-dependencies-conform', () => { expect(result).toStrictEqual({ passed: false, failures: [ - { message: '`eslint` is "1.0.0", when it should be "1.1.0".' }, + { message: '`eslint` is "0.0.1", when it should be "1.0.0".' }, ], }); }); @@ -122,42 +127,38 @@ describe('Rule: package-lint-dependencies-conform', () => { shortname: 'template', directoryPath: path.join(sandbox.directoryPath, 'template'), }); - const fakeTemplatePackageManifest = { - ...fakePackageManifest, - devDependencies: { - eslint: '1.0.0', - '@metamask/eslint-config-foo': '1.0.0', - '@typescript-eslint/foo': '1.0.0', - 'eslint-plugin-foo': '1.0.0', - 'eslint-config-foo': '1.0.0', - prettier: '1.0.0', - 'prettier-plugin-foo': '1.0.0', - 'prettier-config-foo': '1.0.0', - }, - }; await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakeTemplatePackageManifest), + buildPackageManifestMock({ + devDependencies: { + eslint: '1.0.0', + '@metamask/eslint-config-foo': '1.0.0', + '@typescript-eslint/foo': '1.0.0', + 'eslint-plugin-foo': '1.0.0', + 'eslint-config-foo': '1.0.0', + prettier: '1.0.0', + 'prettier-plugin-foo': '1.0.0', + 'prettier-config-foo': '1.0.0', + }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', directoryPath: path.join(sandbox.directoryPath, 'project'), }); - const fakeProjectPackageManifest = { - ...fakePackageManifest, - devDependencies: { - '@metamask/eslint-config-foo': '1.0.0', - '@typescript-eslint/foo': '1.0.0', - 'eslint-plugin-foo': '1.0.0', - 'eslint-config-foo': '1.0.0', - prettier: '1.0.0', - 'prettier-plugin-foo': '1.0.0', - 'prettier-config-foo': '1.0.0', - }, - }; await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakeProjectPackageManifest), + buildPackageManifestMock({ + devDependencies: { + '@metamask/eslint-config-foo': '1.0.0', + '@typescript-eslint/foo': '1.0.0', + 'eslint-plugin-foo': '1.0.0', + 'eslint-config-foo': '1.0.0', + prettier: '1.0.0', + 'prettier-plugin-foo': '1.0.0', + 'prettier-config-foo': '1.0.0', + }, + }), ); const result = await packageLintDependenciesConform.execute({ @@ -187,7 +188,7 @@ describe('Rule: package-lint-dependencies-conform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock(), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -195,7 +196,18 @@ describe('Rule: package-lint-dependencies-conform', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + devDependencies: { + eslint: '1.0.0', + '@metamask/eslint-config-foo': '1.0.0', + '@typescript-eslint/foo': '1.0.0', + 'eslint-plugin-foo': '1.0.0', + 'eslint-config-foo': '1.0.0', + prettier: '1.0.0', + 'prettier-plugin-foo': '1.0.0', + 'prettier-config-foo': '1.0.0', + }, + }), ); const result = await packageLintDependenciesConform.execute({ diff --git a/src/rules/package-main-conform.ts b/src/rules/package-main-conform.ts deleted file mode 100644 index 78abdcc..0000000 --- a/src/rules/package-main-conform.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { buildRule } from './build-rule'; -import { RuleName } from './types'; -import { packagePropertiesConform } from '../rule-helpers'; - -export default buildRule({ - name: RuleName.PackageMainConform, - description: 'Do the `main` in `package.json` conform?', - dependencies: [RuleName.RequireValidPackageManifest], - execute: async (ruleExecutionArguments) => { - return packagePropertiesConform('main', ruleExecutionArguments); - }, -}); diff --git a/src/rules/package-main-conforms.test.ts b/src/rules/package-main-field-conforms.test.ts similarity index 74% rename from src/rules/package-main-conforms.test.ts rename to src/rules/package-main-field-conforms.test.ts index e634447..822d929 100644 --- a/src/rules/package-main-conforms.test.ts +++ b/src/rules/package-main-field-conforms.test.ts @@ -1,15 +1,15 @@ import { writeFile } from '@metamask/utils/node'; import path from 'path'; -import packageMainConform from './package-main-conform'; +import packageMainFieldConforms from './package-main-field-conforms'; import { buildMetaMaskRepository, - fakePackageManifest, + buildPackageManifestMock, withinSandbox, } from '../../tests/helpers'; import { fail, pass } from '../rule-helpers'; -describe('Rule: package-main-conforms', () => { +describe('Rule: package-main-field-conforms', () => { it('passes if the "main" field in the project\'s package.json matches the one in the template\'s package.json', async () => { await withinSandbox(async (sandbox) => { const template = buildMetaMaskRepository({ @@ -18,7 +18,9 @@ describe('Rule: package-main-conforms', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + main: 'test-main', + }), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -26,10 +28,12 @@ describe('Rule: package-main-conforms', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + main: 'test-main', + }), ); - const result = await packageMainConform.execute({ + const result = await packageMainFieldConforms.execute({ template, project, pass, @@ -50,22 +54,22 @@ describe('Rule: package-main-conforms', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + main: 'test-main', + }), ); const project = buildMetaMaskRepository({ shortname: 'project', directoryPath: path.join(sandbox.directoryPath, 'project'), }); - const fakeProjectPackageManifest = { - ...fakePackageManifest, - main: 'test', - }; await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakeProjectPackageManifest), + buildPackageManifestMock({ + main: 'test', + }), ); - const result = await packageMainConform.execute({ + const result = await packageMainFieldConforms.execute({ template, project, pass, @@ -76,7 +80,7 @@ describe('Rule: package-main-conforms', () => { passed: false, failures: [ { - message: '`main` is "test", when it should be "test-main".', + message: "`main` is 'test', when it should be 'test-main'.", }, ], }); diff --git a/src/rules/package-main-field-conforms.ts b/src/rules/package-main-field-conforms.ts new file mode 100644 index 0000000..ae1a4fe --- /dev/null +++ b/src/rules/package-main-field-conforms.ts @@ -0,0 +1,12 @@ +import { buildRule } from './build-rule'; +import { RuleName } from './types'; +import { packageManifestPropertiesConform } from '../rule-helpers'; + +export default buildRule({ + name: RuleName.PackageMainFieldConforms, + description: 'Does the `main` in `package.json` conform?', + dependencies: [RuleName.RequireValidPackageManifest], + execute: async (ruleExecutionArguments) => { + return packageManifestPropertiesConform(['main'], ruleExecutionArguments); + }, +}); diff --git a/src/rules/package-module-conform.ts b/src/rules/package-module-conform.ts deleted file mode 100644 index 705e2e1..0000000 --- a/src/rules/package-module-conform.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { buildRule } from './build-rule'; -import { RuleName } from './types'; -import { packagePropertiesConform } from '../rule-helpers'; - -export default buildRule({ - name: RuleName.PackageModuleConform, - description: 'Do the `module` in `package.json` conform?', - dependencies: [RuleName.RequireValidPackageManifest], - execute: async (ruleExecutionArguments) => { - return packagePropertiesConform('module', ruleExecutionArguments); - }, -}); diff --git a/src/rules/package-module-conforms.test.ts b/src/rules/package-module-field-conforms.test.ts similarity index 74% rename from src/rules/package-module-conforms.test.ts rename to src/rules/package-module-field-conforms.test.ts index 262c1bb..11f6e4f 100644 --- a/src/rules/package-module-conforms.test.ts +++ b/src/rules/package-module-field-conforms.test.ts @@ -1,15 +1,15 @@ import { writeFile } from '@metamask/utils/node'; import path from 'path'; -import packageModuleConform from './package-module-conform'; +import packageModuleFieldConforms from './package-module-field-conforms'; import { buildMetaMaskRepository, - fakePackageManifest, + buildPackageManifestMock, withinSandbox, } from '../../tests/helpers'; import { fail, pass } from '../rule-helpers'; -describe('Rule: package-module-conforms', () => { +describe('Rule: package-module-field-conforms', () => { it('passes if the "module" field in the project\'s package.json matches the one in the template\'s package.json', async () => { await withinSandbox(async (sandbox) => { const template = buildMetaMaskRepository({ @@ -18,7 +18,9 @@ describe('Rule: package-module-conforms', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + module: 'test-module', + }), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -26,10 +28,12 @@ describe('Rule: package-module-conforms', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + module: 'test-module', + }), ); - const result = await packageModuleConform.execute({ + const result = await packageModuleFieldConforms.execute({ template, project, pass, @@ -50,22 +54,22 @@ describe('Rule: package-module-conforms', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + module: 'test-module', + }), ); const project = buildMetaMaskRepository({ shortname: 'project', directoryPath: path.join(sandbox.directoryPath, 'project'), }); - const fakeProjectPackageManifest = { - ...fakePackageManifest, - module: 'test', - }; await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakeProjectPackageManifest), + buildPackageManifestMock({ + module: 'test', + }), ); - const result = await packageModuleConform.execute({ + const result = await packageModuleFieldConforms.execute({ template, project, pass, @@ -76,7 +80,7 @@ describe('Rule: package-module-conforms', () => { passed: false, failures: [ { - message: '`module` is "test", when it should be "test-module".', + message: "`module` is 'test', when it should be 'test-module'.", }, ], }); diff --git a/src/rules/package-module-field-conforms.ts b/src/rules/package-module-field-conforms.ts new file mode 100644 index 0000000..16e595d --- /dev/null +++ b/src/rules/package-module-field-conforms.ts @@ -0,0 +1,12 @@ +import { buildRule } from './build-rule'; +import { RuleName } from './types'; +import { packageManifestPropertiesConform } from '../rule-helpers'; + +export default buildRule({ + name: RuleName.PackageModuleFieldConforms, + description: 'Does the `module` in `package.json` conform?', + dependencies: [RuleName.RequireValidPackageManifest], + execute: async (ruleExecutionArguments) => { + return packageManifestPropertiesConform(['module'], ruleExecutionArguments); + }, +}); diff --git a/src/rules/package-package-manager-field-conforms.test.ts b/src/rules/package-package-manager-field-conforms.test.ts index 3d609c6..6eef8c6 100644 --- a/src/rules/package-package-manager-field-conforms.test.ts +++ b/src/rules/package-package-manager-field-conforms.test.ts @@ -4,7 +4,7 @@ import path from 'path'; import packageManagerFieldConforms from './package-package-manager-field-conforms'; import { buildMetaMaskRepository, - fakePackageManifest, + buildPackageManifestMock, withinSandbox, } from '../../tests/helpers'; import { fail, pass } from '../rule-helpers'; @@ -18,7 +18,9 @@ describe('Rule: package-manager-field-conforms', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + packageManager: 'yarn', + }), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -26,7 +28,9 @@ describe('Rule: package-manager-field-conforms', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + packageManager: 'yarn', + }), ); const result = await packageManagerFieldConforms.execute({ @@ -50,19 +54,19 @@ describe('Rule: package-manager-field-conforms', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + packageManager: 'yarn', + }), ); const project = buildMetaMaskRepository({ shortname: 'project', directoryPath: path.join(sandbox.directoryPath, 'project'), }); - const fakeProjectPackageManifest = { - ...fakePackageManifest, - packageManager: 'test', - }; await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakeProjectPackageManifest), + buildPackageManifestMock({ + packageManager: 'test', + }), ); const result = await packageManagerFieldConforms.execute({ diff --git a/src/rules/package-test-scripts-conform.test.ts b/src/rules/package-test-scripts-conform.test.ts index 0c2c3a7..a0dd33a 100644 --- a/src/rules/package-test-scripts-conform.test.ts +++ b/src/rules/package-test-scripts-conform.test.ts @@ -4,7 +4,7 @@ import path from 'path'; import packageTestScriptsConform from './package-test-scripts-conform'; import { buildMetaMaskRepository, - fakePackageManifest, + buildPackageManifestMock, withinSandbox, } from '../../tests/helpers'; import { fail, pass } from '../rule-helpers'; @@ -18,7 +18,9 @@ describe('Rule: package-test-scripts-conform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + scripts: { test: 'test script', 'test:watch': 'test watch script' }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -26,7 +28,9 @@ describe('Rule: package-test-scripts-conform', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + scripts: { test: 'test script', 'test:watch': 'test watch script' }, + }), ); const result = await packageTestScriptsConform.execute({ @@ -50,22 +54,19 @@ describe('Rule: package-test-scripts-conform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + scripts: { test: 'test script', 'test:watch': 'test watch script' }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', directoryPath: path.join(sandbox.directoryPath, 'project'), }); - const fakeProjectPackageManifest = { - ...fakePackageManifest, - scripts: { - test: 'test', - 'test:watch': 'test watch script', - }, - }; await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakeProjectPackageManifest), + buildPackageManifestMock({ + scripts: { test: 'test', 'test:watch': 'test watch script' }, + }), ); const result = await packageTestScriptsConform.execute({ @@ -78,7 +79,10 @@ describe('Rule: package-test-scripts-conform', () => { expect(result).toStrictEqual({ passed: false, failures: [ - { message: '`test` is "test", when it should be "test script".' }, + { + message: + "`scripts.[test]` is 'test', when it should be 'test script'.", + }, ], }); }); @@ -92,21 +96,19 @@ describe('Rule: package-test-scripts-conform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + scripts: { test: 'test script', 'test:watch': 'test watch script' }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', directoryPath: path.join(sandbox.directoryPath, 'project'), }); - const fakeProjectPackageManifest = { - ...fakePackageManifest, - scripts: { - 'test:watch': 'test watch script', - }, - }; await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakeProjectPackageManifest), + buildPackageManifestMock({ + scripts: { 'test:watch': 'test watch script' }, + }), ); const result = await packageTestScriptsConform.execute({ @@ -121,7 +123,7 @@ describe('Rule: package-test-scripts-conform', () => { failures: [ { message: - '`package.json` should list `"test": "test script"`, but does not.', + "`package.json` should list `'scripts.[test]': 'test script'`, but does not.", }, ], }); @@ -134,15 +136,11 @@ describe('Rule: package-test-scripts-conform', () => { shortname: 'template', directoryPath: path.join(sandbox.directoryPath, 'template'), }); - const fakeTemplatePackageManifest = { - ...fakePackageManifest, - scripts: { - 'test:watch': 'test watch script', - }, - }; await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakeTemplatePackageManifest), + buildPackageManifestMock({ + scripts: { 'test:watch': 'test watch script' }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -150,7 +148,9 @@ describe('Rule: package-test-scripts-conform', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + scripts: { test: 'test script', 'test:watch': 'test watch script' }, + }), ); await expect( @@ -161,7 +161,7 @@ describe('Rule: package-test-scripts-conform', () => { fail, }), ).rejects.toThrow( - 'Could not find "test" in template\'s package.json. This is not the fault of the project, but is rather a bug in a rule.', + 'Could not find `scripts.[test]` in reference `package.json`. This is not the fault of the target `package.json`, but is rather a bug in a rule.', ); }); }); diff --git a/src/rules/package-test-scripts-conform.ts b/src/rules/package-test-scripts-conform.ts index be85fb9..f5eeee1 100644 --- a/src/rules/package-test-scripts-conform.ts +++ b/src/rules/package-test-scripts-conform.ts @@ -1,15 +1,15 @@ import { buildRule } from './build-rule'; import { RuleName } from './types'; -import { packagePropertiesConform } from '../rule-helpers'; +import { packageManifestPropertiesConform } from '../rule-helpers'; export default buildRule({ name: RuleName.PackageTestScriptsConform, description: 'Do the test-related `scripts` in `package.json` conform?', dependencies: [RuleName.RequireValidPackageManifest], execute: async (ruleExecutionArguments) => { - return packagePropertiesConform('scripts', ruleExecutionArguments, [ - 'test', - 'test:watch', - ]); + return packageManifestPropertiesConform( + ['scripts.[test]', 'scripts.[test:watch]'], + ruleExecutionArguments, + ); }, }); diff --git a/src/rules/package-types-conforms.test.ts b/src/rules/package-types-field-conforms.test.ts similarity index 75% rename from src/rules/package-types-conforms.test.ts rename to src/rules/package-types-field-conforms.test.ts index 99c1e34..d4345f9 100644 --- a/src/rules/package-types-conforms.test.ts +++ b/src/rules/package-types-field-conforms.test.ts @@ -1,15 +1,15 @@ import { writeFile } from '@metamask/utils/node'; import path from 'path'; -import packageTypesConform from './package-types-conform'; +import packageTypesFieldConforms from './package-types-field-conforms'; import { buildMetaMaskRepository, - fakePackageManifest, + buildPackageManifestMock, withinSandbox, } from '../../tests/helpers'; import { fail, pass } from '../rule-helpers'; -describe('Rule: package-types-conforms', () => { +describe('Rule: package-types-field-conforms', () => { it('passes if the "types" field in the project\'s package.json matches the one in the template\'s package.json', async () => { await withinSandbox(async (sandbox) => { const template = buildMetaMaskRepository({ @@ -18,7 +18,7 @@ describe('Rule: package-types-conforms', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ types: 'test-types' }), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -26,10 +26,10 @@ describe('Rule: package-types-conforms', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ types: 'test-types' }), ); - const result = await packageTypesConform.execute({ + const result = await packageTypesFieldConforms.execute({ template, project, pass, @@ -50,22 +50,18 @@ describe('Rule: package-types-conforms', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ types: 'test-types' }), ); const project = buildMetaMaskRepository({ shortname: 'project', directoryPath: path.join(sandbox.directoryPath, 'project'), }); - const fakeProjectPackageManifest = { - ...fakePackageManifest, - types: 'test', - }; await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakeProjectPackageManifest), + buildPackageManifestMock({ types: 'test' }), ); - const result = await packageTypesConform.execute({ + const result = await packageTypesFieldConforms.execute({ template, project, pass, @@ -76,7 +72,7 @@ describe('Rule: package-types-conforms', () => { passed: false, failures: [ { - message: '`types` is "test", when it should be "test-types".', + message: "`types` is 'test', when it should be 'test-types'.", }, ], }); diff --git a/src/rules/package-types-conform.ts b/src/rules/package-types-field-conforms.ts similarity index 59% rename from src/rules/package-types-conform.ts rename to src/rules/package-types-field-conforms.ts index 75b7124..ecd65c9 100644 --- a/src/rules/package-types-conform.ts +++ b/src/rules/package-types-field-conforms.ts @@ -1,12 +1,12 @@ import { buildRule } from './build-rule'; import { RuleName } from './types'; -import { packagePropertiesConform } from '../rule-helpers'; +import { packageManifestPropertiesConform } from '../rule-helpers'; export default buildRule({ - name: RuleName.PackageTypesConform, + name: RuleName.PackageTypesFieldConforms, description: 'Do the `types` in `package.json` conform?', dependencies: [RuleName.RequireValidPackageManifest], execute: async (ruleExecutionArguments) => { - return packagePropertiesConform('types', ruleExecutionArguments); + return packageManifestPropertiesConform(['types'], ruleExecutionArguments); }, }); diff --git a/src/rules/package-typescript-dev-dependencies-conform.test.ts b/src/rules/package-typescript-dev-dependencies-conform.test.ts index 1ed7f23..675c0d0 100644 --- a/src/rules/package-typescript-dev-dependencies-conform.test.ts +++ b/src/rules/package-typescript-dev-dependencies-conform.test.ts @@ -4,13 +4,13 @@ import path from 'path'; import packageTypescriptDevDependenciesConform from './package-typescript-dev-dependencies-conform'; import { buildMetaMaskRepository, - fakePackageManifest, + buildPackageManifestMock, withinSandbox, } from '../../tests/helpers'; import { fail, pass } from '../rule-helpers'; describe('Rule: package-typescript-dev-dependencies-conform', () => { - it('passes if the project and template have the same referenced package with the same version', async () => { + it('passes if the typescript related devDependencies of template exist in project with the version matching', async () => { await withinSandbox(async (sandbox) => { const template = buildMetaMaskRepository({ shortname: 'template', @@ -18,7 +18,14 @@ describe('Rule: package-typescript-dev-dependencies-conform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + devDependencies: { + '@types/node': '1.0.0', + 'ts-node': '1.0.0', + tsup: '1.0.0', + typescript: '1.0.0', + }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -26,7 +33,14 @@ describe('Rule: package-typescript-dev-dependencies-conform', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + devDependencies: { + '@types/node': '1.0.0', + 'ts-node': '1.0.0', + tsup: '1.0.0', + typescript: '1.0.0', + }, + }), ); const result = await packageTypescriptDevDependenciesConform.execute({ template, @@ -47,24 +61,29 @@ describe('Rule: package-typescript-dev-dependencies-conform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + devDependencies: { + '@types/node': '1.0.0', + 'ts-node': '1.0.0', + tsup: '1.0.0', + typescript: '1.0.0', + }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', directoryPath: path.join(sandbox.directoryPath, 'project'), }); - const fakeProjectPackageManifest = { - ...fakePackageManifest, - devDependencies: { - '@types/node': '1.0.0', - 'ts-node': '0.0.1', - tsup: '1.0.0', - typescript: '1.0.0', - }, - }; await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakeProjectPackageManifest), + buildPackageManifestMock({ + devDependencies: { + '@types/node': '1.0.0', + 'ts-node': '0.0.1', + tsup: '1.0.0', + typescript: '1.0.0', + }, + }), ); const result = await packageTypescriptDevDependenciesConform.execute({ template, @@ -77,7 +96,8 @@ describe('Rule: package-typescript-dev-dependencies-conform', () => { passed: false, failures: [ { - message: '`ts-node` is "0.0.1", when it should be "1.0.0".', + message: + "`devDependencies.[ts-node]` is '0.0.1', when it should be '1.0.0'.", }, ], }); @@ -92,23 +112,28 @@ describe('Rule: package-typescript-dev-dependencies-conform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + devDependencies: { + '@types/node': '1.0.0', + 'ts-node': '1.0.0', + tsup: '1.0.0', + typescript: '1.0.0', + }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', directoryPath: path.join(sandbox.directoryPath, 'project'), }); - const fakeProjectPackageManifest = { - ...fakePackageManifest, - devDependencies: { - '@types/node': '1.0.0', - tsup: '1.0.0', - typescript: '1.0.0', - }, - }; await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakeProjectPackageManifest), + buildPackageManifestMock({ + devDependencies: { + '@types/node': '1.0.0', + tsup: '1.0.0', + typescript: '1.0.0', + }, + }), ); const result = await packageTypescriptDevDependenciesConform.execute({ template, @@ -122,7 +147,7 @@ describe('Rule: package-typescript-dev-dependencies-conform', () => { failures: [ { message: - '`package.json` should list `"ts-node": "1.0.0"`, but does not.', + "`package.json` should list `'devDependencies.[ts-node]': '1.0.0'`, but does not.", }, ], }); @@ -135,17 +160,15 @@ describe('Rule: package-typescript-dev-dependencies-conform', () => { shortname: 'template', directoryPath: path.join(sandbox.directoryPath, 'template'), }); - const fakeTemplatePackageManifest = { - ...fakePackageManifest, - devDependencies: { - '@types/node': '1.0.0', - tsup: '1.0.0', - typescript: '1.0.0', - }, - }; await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakeTemplatePackageManifest), + buildPackageManifestMock({ + devDependencies: { + '@types/node': '1.0.0', + tsup: '1.0.0', + typescript: '1.0.0', + }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -153,7 +176,14 @@ describe('Rule: package-typescript-dev-dependencies-conform', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + devDependencies: { + '@types/node': '1.0.0', + 'ts-node': '1.0.0', + tsup: '1.0.0', + typescript: '1.0.0', + }, + }), ); await expect( packageTypescriptDevDependenciesConform.execute({ @@ -163,7 +193,7 @@ describe('Rule: package-typescript-dev-dependencies-conform', () => { fail, }), ).rejects.toThrow( - 'Could not find "ts-node" in template\'s package.json. This is not the fault of the project, but is rather a bug in a rule.', + 'Could not find `devDependencies.[ts-node]` in reference `package.json`. This is not the fault of the target `package.json`, but is rather a bug in a rule.', ); }); }); diff --git a/src/rules/package-typescript-dev-dependencies-conform.ts b/src/rules/package-typescript-dev-dependencies-conform.ts index f22861f..3414a9f 100644 --- a/src/rules/package-typescript-dev-dependencies-conform.ts +++ b/src/rules/package-typescript-dev-dependencies-conform.ts @@ -1,6 +1,6 @@ import { buildRule } from './build-rule'; import { RuleName } from './types'; -import { packagePropertiesConform } from '../rule-helpers'; +import { packageManifestPropertiesConform } from '../rule-helpers'; export default buildRule({ name: RuleName.PackageTypescriptDependenciesConform, @@ -8,11 +8,15 @@ export default buildRule({ 'Do the typescript-related `devDependencies` in `package.json` conform?', dependencies: [RuleName.RequireValidPackageManifest], execute: async (ruleExecutionArguments) => { - const requiredPackages = ['@types/node', 'ts-node', 'tsup', 'typescript']; - return packagePropertiesConform( - 'devDependencies', - ruleExecutionArguments, + const requiredPackages = [ + 'devDependencies.[@types/node]', + 'devDependencies.[ts-node]', + 'devDependencies.[tsup]', + 'devDependencies.[typescript]', + ]; + return packageManifestPropertiesConform( requiredPackages, + ruleExecutionArguments, ); }, }); diff --git a/src/rules/package-typescript-scripts-conform.test.ts b/src/rules/package-typescript-scripts-conform.test.ts index 02217a8..6ac5896 100644 --- a/src/rules/package-typescript-scripts-conform.test.ts +++ b/src/rules/package-typescript-scripts-conform.test.ts @@ -4,13 +4,13 @@ import path from 'path'; import packageTypescriptScriptsConform from './package-typescript-scripts-conform'; import { buildMetaMaskRepository, - fakePackageManifest, + buildPackageManifestMock, withinSandbox, } from '../../tests/helpers'; import { fail, pass } from '../rule-helpers'; describe('Rule: package-typescript-scripts-conform', () => { - it('passes if the project and template have the same referenced scripts and matches', async () => { + it('passes if the typescript related scripts in template exist in project and its value matches', async () => { await withinSandbox(async (sandbox) => { const template = buildMetaMaskRepository({ shortname: 'template', @@ -18,7 +18,12 @@ describe('Rule: package-typescript-scripts-conform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + scripts: { + build: 'test build', + 'build:types': 'test build types', + }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -26,7 +31,12 @@ describe('Rule: package-typescript-scripts-conform', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + scripts: { + build: 'test build', + 'build:types': 'test build types', + }, + }), ); const result = await packageTypescriptScriptsConform.execute({ template, @@ -47,22 +57,25 @@ describe('Rule: package-typescript-scripts-conform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + scripts: { + build: 'test build', + 'build:types': 'test build types', + }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', directoryPath: path.join(sandbox.directoryPath, 'project'), }); - const fakeProjectPackageManifest = { - ...fakePackageManifest, - scripts: { - build: 'test', - 'build:types': 'test build types', - }, - }; await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakeProjectPackageManifest), + buildPackageManifestMock({ + scripts: { + build: 'test', + 'build:types': 'test build types', + }, + }), ); const result = await packageTypescriptScriptsConform.execute({ template, @@ -75,7 +88,8 @@ describe('Rule: package-typescript-scripts-conform', () => { passed: false, failures: [ { - message: '`build` is "test", when it should be "test build".', + message: + "`scripts.[build]` is 'test', when it should be 'test build'.", }, ], }); @@ -90,21 +104,24 @@ describe('Rule: package-typescript-scripts-conform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + scripts: { + build: 'test build', + 'build:types': 'test build types', + }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', directoryPath: path.join(sandbox.directoryPath, 'project'), }); - const fakeProjectPackageManifest = { - ...fakePackageManifest, - scripts: { - 'build:types': 'test build types', - }, - }; await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakeProjectPackageManifest), + buildPackageManifestMock({ + scripts: { + 'build:types': 'test build types', + }, + }), ); const result = await packageTypescriptScriptsConform.execute({ template, @@ -118,7 +135,7 @@ describe('Rule: package-typescript-scripts-conform', () => { failures: [ { message: - '`package.json` should list `"build": "test build"`, but does not.', + "`package.json` should list `'scripts.[build]': 'test build'`, but does not.", }, ], }); @@ -131,15 +148,13 @@ describe('Rule: package-typescript-scripts-conform', () => { shortname: 'template', directoryPath: path.join(sandbox.directoryPath, 'template'), }); - const fakeTemplatePackageManifest = { - ...fakePackageManifest, - scripts: { - 'build:types': 'test build types', - }, - }; await writeFile( path.join(template.directoryPath, 'package.json'), - JSON.stringify(fakeTemplatePackageManifest), + buildPackageManifestMock({ + scripts: { + 'build:types': 'test build types', + }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -147,7 +162,12 @@ describe('Rule: package-typescript-scripts-conform', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock({ + scripts: { + build: 'test build', + 'build:types': 'test build types', + }, + }), ); await expect( packageTypescriptScriptsConform.execute({ @@ -157,7 +177,7 @@ describe('Rule: package-typescript-scripts-conform', () => { fail, }), ).rejects.toThrow( - 'Could not find "build" in template\'s package.json. This is not the fault of the project, but is rather a bug in a rule.', + 'Could not find `scripts.[build]` in reference `package.json`. This is not the fault of the target `package.json`, but is rather a bug in a rule.', ); }); }); diff --git a/src/rules/package-typescript-scripts-conform.ts b/src/rules/package-typescript-scripts-conform.ts index 0f8ba41..1023242 100644 --- a/src/rules/package-typescript-scripts-conform.ts +++ b/src/rules/package-typescript-scripts-conform.ts @@ -1,17 +1,15 @@ import { buildRule } from './build-rule'; import { RuleName } from './types'; -import { packagePropertiesConform } from '../rule-helpers'; +import { packageManifestPropertiesConform } from '../rule-helpers'; export default buildRule({ name: RuleName.PackageTypescriptScriptsConform, description: 'Do the typescript-related `scripts` in `package.json` conform?', dependencies: [RuleName.RequireValidPackageManifest], execute: async (ruleExecutionArguments) => { - const requiredScripts = ['build', 'build:types']; - return await packagePropertiesConform( - 'scripts', + return await packageManifestPropertiesConform( + ['scripts.[build]', 'scripts.[build:types]'], ruleExecutionArguments, - requiredScripts, ); }, }); diff --git a/src/rules/require-valid-package-manifest.test.ts b/src/rules/require-valid-package-manifest.test.ts index 598ed9e..8fc3433 100644 --- a/src/rules/require-valid-package-manifest.test.ts +++ b/src/rules/require-valid-package-manifest.test.ts @@ -4,7 +4,7 @@ import path from 'path'; import requireValidPackageManifest from './require-valid-package-manifest'; import { buildMetaMaskRepository, - fakePackageManifest, + buildPackageManifestMock, withinSandbox, } from '../../tests/helpers'; import { fail, pass } from '../rule-helpers'; @@ -18,7 +18,7 @@ describe('Rule: require-package-manifest', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - JSON.stringify(fakePackageManifest), + buildPackageManifestMock(), ); const result = await requireValidPackageManifest.execute({ diff --git a/src/rules/types.ts b/src/rules/types.ts index d4bf35c..b0cf57b 100644 --- a/src/rules/types.ts +++ b/src/rules/types.ts @@ -23,12 +23,12 @@ export enum RuleName { RequireTsupConfig = 'require-tsup-config', PackageTypescriptDependenciesConform = 'package-typescript-dependencies-conform', PackageTypescriptScriptsConform = 'package-typescript-scripts-conform', - PackageExportsConform = 'package-exports-conform', - PackageMainConform = 'package-main-conform', - PackageModuleConform = 'package-module-conform', - PackageTypesConform = 'package-types-conform', - PackageFilesConform = 'package-files-conform', - PackageLavamoatTsupConform = 'package-lavamoat-tsup-conform', + PackageExportsFieldConforms = 'package-exports-field-conforms', + PackageMainFieldConforms = 'package-main-field-conforms', + PackageModuleFieldConforms = 'package-module-field-conforms', + PackageTypesFieldConforms = 'package-types-field-conforms', + PackageFilesFieldConforms = 'package-files-field-conforms', + PackageLavamoatTsupConforms = 'package-lavamoat-tsup-conforms', } export const PackageManifestSchema = type({ diff --git a/tests/helpers.ts b/tests/helpers.ts index 66b6e1e..756065a 100644 --- a/tests/helpers.ts +++ b/tests/helpers.ts @@ -144,32 +144,28 @@ export function buildMetaMaskRepository({ }; } -export const fakePackageManifest = { - packageManager: 'yarn', - engines: { node: '1.0.0' }, - main: 'test-main', - module: 'test-module', - types: 'test-types', - files: ['test-files'], - exports: { - '.': { - test: 'test-pack', +/** + * Provides package manifest in string format with all the required properties for testing. + * @param overrides - Properties to override. + * @returns PackageManifestMock. + */ +export function buildPackageManifestMock( + overrides?: Record, +): string { + const validPackageManifestMock = { + packageManager: 'yarn', + engines: { node: '1.0.0' }, + main: 'test-main', + module: 'test-module', + types: 'test-types', + files: ['test-files'], + exports: { + '.': {}, + './package.json': 'test', }, - './package.json': 'test', - }, - devDependencies: { - test: '1.0.0', - jest: '1.0.0', - 'jest-it-up': '1.0.0', - '@types/node': '1.0.0', - 'ts-node': '1.0.0', - tsup: '1.0.0', - typescript: '1.0.0', - }, - scripts: { - test: 'test script', - 'test:watch': 'test watch script', - build: 'test build', - 'build:types': 'test build types', - }, -}; + devDependencies: {}, + scripts: {}, + }; + + return JSON.stringify({ ...validPackageManifestMock, ...overrides }); +} From 4ab7c9772be6fdf9cb456b1b421e06226eeadb62 Mon Sep 17 00:00:00 2001 From: Kanthesha Devaramane Date: Fri, 23 Feb 2024 17:00:11 +0000 Subject: [PATCH 07/12] adding field in rule description --- src/main.test.ts | 40 ++++++++++----------- src/rules/package-exports-field-conforms.ts | 2 +- src/rules/package-files-field-conforms.ts | 2 +- src/rules/package-main-field-conforms.ts | 2 +- src/rules/package-module-field-conforms.ts | 2 +- src/rules/package-types-field-conforms.ts | 2 +- 6 files changed, 25 insertions(+), 25 deletions(-) diff --git a/src/main.test.ts b/src/main.test.ts index 76e0271..5f29d9f 100644 --- a/src/main.test.ts +++ b/src/main.test.ts @@ -144,11 +144,11 @@ repo-1 - Do the test-related \`scripts\` in \`package.json\` conform? ✅ - Do the typescript-related \`devDependencies\` in \`package.json\` conform? ✅ - Do the typescript-related \`scripts\` in \`package.json\` conform? ✅ - - Do the \`exports\` in \`package.json\` conform? ✅ - - Does the \`main\` in \`package.json\` conform? ✅ - - Does the \`module\` in \`package.json\` conform? ✅ - - Do the \`types\` in \`package.json\` conform? ✅ - - Do the \`files\` in \`package.json\` conform? ✅ + - Do the \`exports\` field in \`package.json\` conform? ✅ + - Does the \`main\` field in \`package.json\` conform? ✅ + - Does the \`module\` field in \`package.json\` conform? ✅ + - Do the \`types\` field in \`package.json\` conform? ✅ + - Do the \`files\` field in \`package.json\` conform? ✅ - Does the \`lavamoat.allowscripts\` field in \`package.json\` conform? ✅ - Is \`README.md\` present? ✅ - Does the README conform by recommending the correct Yarn version to install? ✅ @@ -178,11 +178,11 @@ repo-2 - Do the test-related \`scripts\` in \`package.json\` conform? ✅ - Do the typescript-related \`devDependencies\` in \`package.json\` conform? ✅ - Do the typescript-related \`scripts\` in \`package.json\` conform? ✅ - - Do the \`exports\` in \`package.json\` conform? ✅ - - Does the \`main\` in \`package.json\` conform? ✅ - - Does the \`module\` in \`package.json\` conform? ✅ - - Do the \`types\` in \`package.json\` conform? ✅ - - Do the \`files\` in \`package.json\` conform? ✅ + - Do the \`exports\` field in \`package.json\` conform? ✅ + - Does the \`main\` field in \`package.json\` conform? ✅ + - Does the \`module\` field in \`package.json\` conform? ✅ + - Do the \`types\` field in \`package.json\` conform? ✅ + - Do the \`files\` field in \`package.json\` conform? ✅ - Does the \`lavamoat.allowscripts\` field in \`package.json\` conform? ✅ - Is \`README.md\` present? ✅ - Does the README conform by recommending the correct Yarn version to install? ✅ @@ -491,11 +491,11 @@ repo-1 - Do the test-related \`scripts\` in \`package.json\` conform? ✅ - Do the typescript-related \`devDependencies\` in \`package.json\` conform? ✅ - Do the typescript-related \`scripts\` in \`package.json\` conform? ✅ - - Do the \`exports\` in \`package.json\` conform? ✅ - - Does the \`main\` in \`package.json\` conform? ✅ - - Does the \`module\` in \`package.json\` conform? ✅ - - Do the \`types\` in \`package.json\` conform? ✅ - - Do the \`files\` in \`package.json\` conform? ✅ + - Do the \`exports\` field in \`package.json\` conform? ✅ + - Does the \`main\` field in \`package.json\` conform? ✅ + - Does the \`module\` field in \`package.json\` conform? ✅ + - Do the \`types\` field in \`package.json\` conform? ✅ + - Do the \`files\` field in \`package.json\` conform? ✅ - Does the \`lavamoat.allowscripts\` field in \`package.json\` conform? ✅ - Is \`README.md\` present? ✅ - Does the README conform by recommending the correct Yarn version to install? ✅ @@ -525,11 +525,11 @@ repo-2 - Do the test-related \`scripts\` in \`package.json\` conform? ✅ - Do the typescript-related \`devDependencies\` in \`package.json\` conform? ✅ - Do the typescript-related \`scripts\` in \`package.json\` conform? ✅ - - Do the \`exports\` in \`package.json\` conform? ✅ - - Does the \`main\` in \`package.json\` conform? ✅ - - Does the \`module\` in \`package.json\` conform? ✅ - - Do the \`types\` in \`package.json\` conform? ✅ - - Do the \`files\` in \`package.json\` conform? ✅ + - Do the \`exports\` field in \`package.json\` conform? ✅ + - Does the \`main\` field in \`package.json\` conform? ✅ + - Does the \`module\` field in \`package.json\` conform? ✅ + - Do the \`types\` field in \`package.json\` conform? ✅ + - Do the \`files\` field in \`package.json\` conform? ✅ - Does the \`lavamoat.allowscripts\` field in \`package.json\` conform? ✅ - Is \`README.md\` present? ✅ - Does the README conform by recommending the correct Yarn version to install? ✅ diff --git a/src/rules/package-exports-field-conforms.ts b/src/rules/package-exports-field-conforms.ts index 4fe66f4..211d56b 100644 --- a/src/rules/package-exports-field-conforms.ts +++ b/src/rules/package-exports-field-conforms.ts @@ -4,7 +4,7 @@ import { packageManifestPropertiesConform } from '../rule-helpers'; export default buildRule({ name: RuleName.PackageExportsFieldConforms, - description: 'Do the `exports` in `package.json` conform?', + description: 'Do the `exports` field in `package.json` conform?', dependencies: [RuleName.RequireValidPackageManifest], execute: async (ruleExecutionArguments) => { return packageManifestPropertiesConform( diff --git a/src/rules/package-files-field-conforms.ts b/src/rules/package-files-field-conforms.ts index 43b15a5..b06a2a5 100644 --- a/src/rules/package-files-field-conforms.ts +++ b/src/rules/package-files-field-conforms.ts @@ -4,7 +4,7 @@ import { packageManifestPropertiesConform } from '../rule-helpers'; export default buildRule({ name: RuleName.PackageFilesFieldConforms, - description: 'Do the `files` in `package.json` conform?', + description: 'Do the `files` field in `package.json` conform?', dependencies: [RuleName.RequireValidPackageManifest], execute: async (ruleExecutionArguments) => { return packageManifestPropertiesConform(['files'], ruleExecutionArguments); diff --git a/src/rules/package-main-field-conforms.ts b/src/rules/package-main-field-conforms.ts index ae1a4fe..91a8c85 100644 --- a/src/rules/package-main-field-conforms.ts +++ b/src/rules/package-main-field-conforms.ts @@ -4,7 +4,7 @@ import { packageManifestPropertiesConform } from '../rule-helpers'; export default buildRule({ name: RuleName.PackageMainFieldConforms, - description: 'Does the `main` in `package.json` conform?', + description: 'Does the `main` field in `package.json` conform?', dependencies: [RuleName.RequireValidPackageManifest], execute: async (ruleExecutionArguments) => { return packageManifestPropertiesConform(['main'], ruleExecutionArguments); diff --git a/src/rules/package-module-field-conforms.ts b/src/rules/package-module-field-conforms.ts index 16e595d..822b43b 100644 --- a/src/rules/package-module-field-conforms.ts +++ b/src/rules/package-module-field-conforms.ts @@ -4,7 +4,7 @@ import { packageManifestPropertiesConform } from '../rule-helpers'; export default buildRule({ name: RuleName.PackageModuleFieldConforms, - description: 'Does the `module` in `package.json` conform?', + description: 'Does the `module` field in `package.json` conform?', dependencies: [RuleName.RequireValidPackageManifest], execute: async (ruleExecutionArguments) => { return packageManifestPropertiesConform(['module'], ruleExecutionArguments); diff --git a/src/rules/package-types-field-conforms.ts b/src/rules/package-types-field-conforms.ts index ecd65c9..0e616ed 100644 --- a/src/rules/package-types-field-conforms.ts +++ b/src/rules/package-types-field-conforms.ts @@ -4,7 +4,7 @@ import { packageManifestPropertiesConform } from '../rule-helpers'; export default buildRule({ name: RuleName.PackageTypesFieldConforms, - description: 'Do the `types` in `package.json` conform?', + description: 'Do the `types` field in `package.json` conform?', dependencies: [RuleName.RequireValidPackageManifest], execute: async (ruleExecutionArguments) => { return packageManifestPropertiesConform(['types'], ruleExecutionArguments); From 55d1d18aefcb5cdd664977237d6ff11f5c5818ae Mon Sep 17 00:00:00 2001 From: Kanthesha Devaramane Date: Tue, 27 Feb 2024 15:41:49 +0000 Subject: [PATCH 08/12] minor changes --- src/rule-helpers.test.ts | 222 ++++++++++++++++-- src/rule-helpers.ts | 38 ++- .../package-exports-field-conforms.test.ts | 1 + .../package-lavamoat-tsup-conforms.test.ts | 9 +- 4 files changed, 228 insertions(+), 42 deletions(-) diff --git a/src/rule-helpers.test.ts b/src/rule-helpers.test.ts index fa01039..81e2659 100644 --- a/src/rule-helpers.test.ts +++ b/src/rule-helpers.test.ts @@ -6,6 +6,7 @@ import path from 'path'; import { combineRuleExecutionResults, + dataConform, directoryAndContentsConform, directoryExists, fail, @@ -576,7 +577,7 @@ describe('directoryAndContentsConform', () => { }); describe('packageManifestPropertiesConform', () => { - it('passes if the project and template have the `main` with its value matching', async () => { + it('passes if the project and template have the same properties at the first level of the package manifest and their values match', async () => { await withinSandbox(async (sandbox) => { const template = buildMetaMaskRepository({ shortname: 'template', @@ -594,18 +595,21 @@ describe('packageManifestPropertiesConform', () => { path.join(project.directoryPath, 'package.json'), buildPackageManifestMock(), ); - const result = await packageManifestPropertiesConform(['main'], { - template, - project, - pass, - fail, - }); + const result = await packageManifestPropertiesConform( + ['main', 'module'], + { + template, + project, + pass, + fail, + }, + ); expect(result).toStrictEqual({ passed: true }); }); }); - it('passes if the project and template have the `devDependencies` and its child property `test` matching', async () => { + it('passes if the project and template have the same property at a deeper level of the package manifest and its value matches', async () => { await withinSandbox(async (sandbox) => { const template = buildMetaMaskRepository({ shortname: 'template', @@ -613,7 +617,9 @@ describe('packageManifestPropertiesConform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - buildPackageManifestMock({ devDependencies: { test: '1.0.0' } }), + buildPackageManifestMock({ + devDependencies: { test: '1.0.0', 'test-pack': '1.0.0' }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -621,10 +627,12 @@ describe('packageManifestPropertiesConform', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - buildPackageManifestMock({ devDependencies: { test: '1.0.0' } }), + buildPackageManifestMock({ + devDependencies: { test: '1.0.0', 'test-pack': '1.0.0' }, + }), ); const result = await packageManifestPropertiesConform( - ["devDependencies.['test']"], + ["devDependencies.['test']", "devDependencies.['test-pack']"], { template, project, @@ -637,7 +645,7 @@ describe('packageManifestPropertiesConform', () => { }); }); - it('fails if the project has the same referenced package as the template, but its version does not match', async () => { + it('fails if the project and template have the same properties, but one or more of their values do not match', async () => { await withinSandbox(async (sandbox) => { const template = buildMetaMaskRepository({ shortname: 'template', @@ -645,7 +653,9 @@ describe('packageManifestPropertiesConform', () => { }); await writeFile( path.join(template.directoryPath, 'package.json'), - buildPackageManifestMock({ devDependencies: { test: '1.0.0' } }), + buildPackageManifestMock({ + devDependencies: { test: '1.0.0', 'test-pack': '1.0.0' }, + }), ); const project = buildMetaMaskRepository({ shortname: 'project', @@ -653,10 +663,12 @@ describe('packageManifestPropertiesConform', () => { }); await writeFile( path.join(project.directoryPath, 'package.json'), - buildPackageManifestMock({ devDependencies: { test: '0.0.1' } }), + buildPackageManifestMock({ + devDependencies: { test: '0.0.1', 'test-pack': '1.0.0' }, + }), ); const result = await packageManifestPropertiesConform( - ["devDependencies.['test']"], + ["devDependencies.['test']", "devDependencies.['test-pack']"], { template, project, @@ -677,7 +689,7 @@ describe('packageManifestPropertiesConform', () => { }); }); - it('fails if the project does not have the same referenced package as the template', async () => { + it('fails if the template has a property that the project does not have', async () => { await withinSandbox(async (sandbox) => { const template = buildMetaMaskRepository({ shortname: 'template', @@ -724,7 +736,7 @@ describe('packageManifestPropertiesConform', () => { }); }); - it('throws error if the package does not exist in the template devDependencies', async () => { + it("throws error if a property does not exist in the template's package manifest", async () => { await withinSandbox(async (sandbox) => { const template = buildMetaMaskRepository({ shortname: 'template', @@ -756,3 +768,179 @@ describe('packageManifestPropertiesConform', () => { }); }); }); + +describe('dataConform', () => { + it('passes if the reference and target have the same properties at the first level and their values match', () => { + const referenceObject = { + firstLevel: 'test', + }; + const targetObject = { + firstLevel: 'test', + }; + const result = dataConform( + referenceObject, + targetObject, + 'firstLevel', + 'test.json', + ); + + expect(result).toStrictEqual({ passed: true }); + }); + it('passes if the reference and target have the same property at a deeper level and its value matches', () => { + const referenceObject = { + firstLevel: 'test', + deeperLevel: { + test: 'test', + }, + }; + const targetObject = { + firstLevel: 'test', + deeperLevel: { + test: 'test', + }, + }; + const result = dataConform( + referenceObject, + targetObject, + "deeperLevel.['test']", + 'test.json', + ); + + expect(result).toStrictEqual({ passed: true }); + }); + it('passes if the target has same properties as reference with additional properties', () => { + const referenceObject = { + firstLevel: 'test', + deeperLevel: { + test: 'test', + }, + }; + const targetObject = { + firstLevel: 'test', + deeperLevel: { + test: 'test', + 'new-pack': 'new pack', + }, + }; + const result = dataConform( + referenceObject, + targetObject, + 'deeperLevel', + 'test.json', + ); + + expect(result).toStrictEqual({ passed: true }); + }); + it('fails if the reference and target does not match at the first level', () => { + const referenceObject = { + firstLevel: 'first level', + deeperLevel: { + test: 'test', + }, + }; + const targetObject = { + firstLevel: 'test', + deeperLevel: { + test: 'test', + }, + }; + + const result = dataConform( + referenceObject, + targetObject, + 'firstLevel', + 'test.json', + ); + + expect(result).toStrictEqual({ + passed: false, + failures: [ + { + message: "`firstLevel` is 'test', when it should be 'first level'.", + }, + ], + }); + }); + + it('fails if the reference and target does not match at the deeper level', () => { + const referenceObject = { + firstLevel: 'first level', + deeperLevel: { + test: 'deeper level', + }, + }; + const targetObject = { + firstLevel: 'test', + deeperLevel: { + test: 'test', + }, + }; + + const result = dataConform( + referenceObject, + targetObject, + "deeperLevel.['test']", + 'test.json', + ); + + expect(result).toStrictEqual({ + passed: false, + failures: [ + { + message: + "`deeperLevel.['test']` is 'test', when it should be 'deeper level'.", + }, + ], + }); + }); + + it('fails if the reference has a property at the first level that the target does not have', () => { + const referenceObject = { + firstLevel: 'first level', + deeperLevel: { + test: 'deeper level', + }, + }; + const targetObject = { + deeperLevel: { + test: 'test', + }, + }; + + const result = dataConform( + referenceObject, + targetObject, + 'firstLevel', + 'test.json', + ); + + expect(result).toStrictEqual({ + passed: false, + failures: [ + { + message: + "`test.json` should list `'firstLevel': 'first level'`, but does not.", + }, + ], + }); + }); + it('throws error if a propertyPath does not exist in the reference object', () => { + const referenceObject = { + deeperLevel: { + test: 'deeper level', + }, + }; + const targetObject = { + firstLevel: 'first level', + deeperLevel: { + test: 'deeper level', + }, + }; + + expect(() => + dataConform(referenceObject, targetObject, 'firstLevel', 'test.json'), + ).toThrow( + 'Could not find `firstLevel` in reference `test.json`. This is not the fault of the target `test.json`, but is rather a bug in a rule.', + ); + }); +}); diff --git a/src/rule-helpers.ts b/src/rule-helpers.ts index e7929d6..3e80552 100644 --- a/src/rule-helpers.ts +++ b/src/rule-helpers.ts @@ -1,4 +1,4 @@ -import { isEqual, get, has, isMatch } from 'lodash'; +import { isEqual, get, has, isMatch, isObject } from 'lodash'; import { inspect } from 'util'; import type { @@ -231,48 +231,44 @@ export async function packageManifestPropertiesConform( * Performs a deep comparison between template data and project data to determine if they are equivalent. * In case of equals, it returns undefined, otherwise failure message. * - * @param referenceSchema - Reference schema. - * @param targetSchema - Target schema. + * @param referenceObject - Reference object. + * @param targetObject - The object to be compared with reference object. * @param propertyPath - Path of the property. * @param entryPath - The path to the file from which schema is prepared. * @returns PartialRuleExecutionResult. */ export function dataConform( - referenceSchema: Schema, - targetSchema: Schema, + referenceObject: Schema, + targetObject: Schema, propertyPath: string, entryPath: string, ): PartialRuleExecutionResult { - if (!has(referenceSchema, propertyPath)) { + if (!has(referenceObject, propertyPath)) { throw new Error( `Could not find \`${propertyPath}\` in reference \`${entryPath}\`. This is not the fault of the target \`${entryPath}\`, but is rather a bug in a rule.`, ); } - const referenceProperty = get(referenceSchema, propertyPath); + const referenceValue = get(referenceObject, propertyPath); let failure: RuleExecutionFailure | undefined; - if (has(targetSchema, propertyPath)) { - const targetProperty = get(targetSchema, propertyPath); - let isFailed = false; - if (typeof referenceProperty === 'object') { - if (!isMatch(targetProperty, referenceProperty)) { - isFailed = true; - } - } else if (!isEqual(targetProperty, referenceProperty)) { - isFailed = true; - } + if (has(targetObject, propertyPath)) { + const targetValue = get(targetObject, propertyPath); + const isPassed = + isObject(targetValue) && isObject(referenceValue) + ? isMatch(targetValue, referenceValue) + : isEqual(targetValue, referenceValue); - if (isFailed) { + if (!isPassed) { failure = { message: `\`${propertyPath}\` is ${inspect( - targetProperty, - )}, when it should be ${inspect(referenceProperty)}.`, + targetValue, + )}, when it should be ${inspect(referenceValue)}.`, }; } } else { failure = { message: `\`${entryPath}\` should list \`'${propertyPath}': ${inspect( - referenceProperty, + referenceValue, )}\`, but does not.`, }; } diff --git a/src/rules/package-exports-field-conforms.test.ts b/src/rules/package-exports-field-conforms.test.ts index 12537ff..b8a6b7b 100644 --- a/src/rules/package-exports-field-conforms.test.ts +++ b/src/rules/package-exports-field-conforms.test.ts @@ -39,6 +39,7 @@ describe('Rule: package-exports-field-conforms', () => { test: 'test-pack', }, './package.json': 'test', + extra: 'export', }, }), ); diff --git a/src/rules/package-lavamoat-tsup-conforms.test.ts b/src/rules/package-lavamoat-tsup-conforms.test.ts index e49e14f..13017c3 100644 --- a/src/rules/package-lavamoat-tsup-conforms.test.ts +++ b/src/rules/package-lavamoat-tsup-conforms.test.ts @@ -9,8 +9,8 @@ import { } from '../../tests/helpers'; import { fail, pass } from '../rule-helpers'; -describe('Rule: package-lavamoat-tsup-conform', () => { - it('passes if the project and template have the same referenced scripts and matches', async () => { +describe('Rule: package-lavamoat-tsup-conforms', () => { + it('passes if the project\'s and template\'s package manifests list "tsup>esbuild" in lavamoat.allowScripts and the values match', async () => { await withinSandbox(async (sandbox) => { const template = buildMetaMaskRepository({ shortname: 'template', @@ -36,6 +36,7 @@ describe('Rule: package-lavamoat-tsup-conform', () => { lavamoat: { allowScripts: { 'tsup>esbuild': true, + 'another-package': false, }, }, }), @@ -51,7 +52,7 @@ describe('Rule: package-lavamoat-tsup-conform', () => { }); }); - it('fails if the project has the same referenced scripts as the template, but its value does not match', async () => { + it('fails if the project\'s and template\'s package manifests list "tsup>esbuild" in lavamoat.allowScripts, but the values do not match', async () => { await withinSandbox(async (sandbox) => { const template = buildMetaMaskRepository({ shortname: 'template', @@ -100,7 +101,7 @@ describe('Rule: package-lavamoat-tsup-conform', () => { }); }); - it('fails if the project has lavamoat and allowScripts, but does not contain tsup>ebuild', async () => { + it("fails if the project's package manifest has lavamoat and allowScripts, but does not contain tsup>ebuild", async () => { await withinSandbox(async (sandbox) => { const template = buildMetaMaskRepository({ shortname: 'template', From 9d4d44e5cd02585e31e2fad954a6e7439af9e109 Mon Sep 17 00:00:00 2001 From: Kanthesha Devaramane Date: Tue, 27 Feb 2024 15:55:08 +0000 Subject: [PATCH 09/12] add null check unit test to dataConform --- src/rule-helpers.test.ts | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/src/rule-helpers.test.ts b/src/rule-helpers.test.ts index 81e2659..a1757c1 100644 --- a/src/rule-helpers.test.ts +++ b/src/rule-helpers.test.ts @@ -893,6 +893,31 @@ describe('dataConform', () => { ], }); }); + it('fails if the target is null', () => { + const referenceObject = { + firstLevel: 'first level', + deeperLevel: { + test: 'test', + }, + }; + + const result = dataConform( + referenceObject, + null, + 'firstLevel', + 'test.json', + ); + + expect(result).toStrictEqual({ + passed: false, + failures: [ + { + message: + "`test.json` should list `'firstLevel': 'first level'`, but does not.", + }, + ], + }); + }); it('fails if the reference has a property at the first level that the target does not have', () => { const referenceObject = { From 6ca6e833bba7c6e6b875594d767f5a3a19be15ef Mon Sep 17 00:00:00 2001 From: Kanthesha Devaramane Date: Fri, 1 Mar 2024 10:52:47 +0000 Subject: [PATCH 10/12] rule description updated for package exports, files and types --- src/rules/package-exports-field-conforms.ts | 2 +- src/rules/package-files-field-conforms.ts | 2 +- src/rules/package-types-field-conforms.ts | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/rules/package-exports-field-conforms.ts b/src/rules/package-exports-field-conforms.ts index 211d56b..4a19862 100644 --- a/src/rules/package-exports-field-conforms.ts +++ b/src/rules/package-exports-field-conforms.ts @@ -4,7 +4,7 @@ import { packageManifestPropertiesConform } from '../rule-helpers'; export default buildRule({ name: RuleName.PackageExportsFieldConforms, - description: 'Do the `exports` field in `package.json` conform?', + description: 'Does the `exports` field in `package.json` conform?', dependencies: [RuleName.RequireValidPackageManifest], execute: async (ruleExecutionArguments) => { return packageManifestPropertiesConform( diff --git a/src/rules/package-files-field-conforms.ts b/src/rules/package-files-field-conforms.ts index b06a2a5..02b58cd 100644 --- a/src/rules/package-files-field-conforms.ts +++ b/src/rules/package-files-field-conforms.ts @@ -4,7 +4,7 @@ import { packageManifestPropertiesConform } from '../rule-helpers'; export default buildRule({ name: RuleName.PackageFilesFieldConforms, - description: 'Do the `files` field in `package.json` conform?', + description: 'Does the `files` field in `package.json` conform?', dependencies: [RuleName.RequireValidPackageManifest], execute: async (ruleExecutionArguments) => { return packageManifestPropertiesConform(['files'], ruleExecutionArguments); diff --git a/src/rules/package-types-field-conforms.ts b/src/rules/package-types-field-conforms.ts index 0e616ed..5c2c4b3 100644 --- a/src/rules/package-types-field-conforms.ts +++ b/src/rules/package-types-field-conforms.ts @@ -4,7 +4,7 @@ import { packageManifestPropertiesConform } from '../rule-helpers'; export default buildRule({ name: RuleName.PackageTypesFieldConforms, - description: 'Do the `types` field in `package.json` conform?', + description: 'Does the `types` field in `package.json` conform?', dependencies: [RuleName.RequireValidPackageManifest], execute: async (ruleExecutionArguments) => { return packageManifestPropertiesConform(['types'], ruleExecutionArguments); From 52eca0b7b3a9ac0b87694fa764630c65f5985e95 Mon Sep 17 00:00:00 2001 From: Kanthesha Devaramane Date: Fri, 1 Mar 2024 11:01:10 +0000 Subject: [PATCH 11/12] fix the failing tests --- src/main.test.ts | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/src/main.test.ts b/src/main.test.ts index 5f29d9f..182ff12 100644 --- a/src/main.test.ts +++ b/src/main.test.ts @@ -144,11 +144,11 @@ repo-1 - Do the test-related \`scripts\` in \`package.json\` conform? ✅ - Do the typescript-related \`devDependencies\` in \`package.json\` conform? ✅ - Do the typescript-related \`scripts\` in \`package.json\` conform? ✅ - - Do the \`exports\` field in \`package.json\` conform? ✅ + - Does the \`exports\` field in \`package.json\` conform? ✅ - Does the \`main\` field in \`package.json\` conform? ✅ - Does the \`module\` field in \`package.json\` conform? ✅ - - Do the \`types\` field in \`package.json\` conform? ✅ - - Do the \`files\` field in \`package.json\` conform? ✅ + - Does the \`types\` field in \`package.json\` conform? ✅ + - Does the \`files\` field in \`package.json\` conform? ✅ - Does the \`lavamoat.allowscripts\` field in \`package.json\` conform? ✅ - Is \`README.md\` present? ✅ - Does the README conform by recommending the correct Yarn version to install? ✅ @@ -178,11 +178,11 @@ repo-2 - Do the test-related \`scripts\` in \`package.json\` conform? ✅ - Do the typescript-related \`devDependencies\` in \`package.json\` conform? ✅ - Do the typescript-related \`scripts\` in \`package.json\` conform? ✅ - - Do the \`exports\` field in \`package.json\` conform? ✅ + - Does the \`exports\` field in \`package.json\` conform? ✅ - Does the \`main\` field in \`package.json\` conform? ✅ - Does the \`module\` field in \`package.json\` conform? ✅ - - Do the \`types\` field in \`package.json\` conform? ✅ - - Do the \`files\` field in \`package.json\` conform? ✅ + - Does the \`types\` field in \`package.json\` conform? ✅ + - Does the \`files\` field in \`package.json\` conform? ✅ - Does the \`lavamoat.allowscripts\` field in \`package.json\` conform? ✅ - Is \`README.md\` present? ✅ - Does the README conform by recommending the correct Yarn version to install? ✅ @@ -491,11 +491,11 @@ repo-1 - Do the test-related \`scripts\` in \`package.json\` conform? ✅ - Do the typescript-related \`devDependencies\` in \`package.json\` conform? ✅ - Do the typescript-related \`scripts\` in \`package.json\` conform? ✅ - - Do the \`exports\` field in \`package.json\` conform? ✅ + - Does the \`exports\` field in \`package.json\` conform? ✅ - Does the \`main\` field in \`package.json\` conform? ✅ - Does the \`module\` field in \`package.json\` conform? ✅ - - Do the \`types\` field in \`package.json\` conform? ✅ - - Do the \`files\` field in \`package.json\` conform? ✅ + - Does the \`types\` field in \`package.json\` conform? ✅ + - Does the \`files\` field in \`package.json\` conform? ✅ - Does the \`lavamoat.allowscripts\` field in \`package.json\` conform? ✅ - Is \`README.md\` present? ✅ - Does the README conform by recommending the correct Yarn version to install? ✅ @@ -525,11 +525,11 @@ repo-2 - Do the test-related \`scripts\` in \`package.json\` conform? ✅ - Do the typescript-related \`devDependencies\` in \`package.json\` conform? ✅ - Do the typescript-related \`scripts\` in \`package.json\` conform? ✅ - - Do the \`exports\` field in \`package.json\` conform? ✅ + - Does the \`exports\` field in \`package.json\` conform? ✅ - Does the \`main\` field in \`package.json\` conform? ✅ - Does the \`module\` field in \`package.json\` conform? ✅ - - Do the \`types\` field in \`package.json\` conform? ✅ - - Do the \`files\` field in \`package.json\` conform? ✅ + - Does the \`types\` field in \`package.json\` conform? ✅ + - Does the \`files\` field in \`package.json\` conform? ✅ - Does the \`lavamoat.allowscripts\` field in \`package.json\` conform? ✅ - Is \`README.md\` present? ✅ - Does the README conform by recommending the correct Yarn version to install? ✅ From e382643d5e190171b7f7a6f576c0d09d1f491597 Mon Sep 17 00:00:00 2001 From: Kanthesha Devaramane Date: Fri, 1 Mar 2024 17:11:58 +0000 Subject: [PATCH 12/12] lavamoat desc updated --- src/main.test.ts | 8 ++++---- src/rules/package-lavamoat-tsup-conforms.ts | 3 +-- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/src/main.test.ts b/src/main.test.ts index 182ff12..2e8ed28 100644 --- a/src/main.test.ts +++ b/src/main.test.ts @@ -149,7 +149,7 @@ repo-1 - Does the \`module\` field in \`package.json\` conform? ✅ - Does the \`types\` field in \`package.json\` conform? ✅ - Does the \`files\` field in \`package.json\` conform? ✅ - - Does the \`lavamoat.allowscripts\` field in \`package.json\` conform? ✅ + - Does LavaMoat allow scripts for \`tsup>esbuild\`? ✅ - Is \`README.md\` present? ✅ - Does the README conform by recommending the correct Yarn version to install? ✅ - Does the README conform by recommending node install from nodejs.org? ✅ @@ -183,7 +183,7 @@ repo-2 - Does the \`module\` field in \`package.json\` conform? ✅ - Does the \`types\` field in \`package.json\` conform? ✅ - Does the \`files\` field in \`package.json\` conform? ✅ - - Does the \`lavamoat.allowscripts\` field in \`package.json\` conform? ✅ + - Does LavaMoat allow scripts for \`tsup>esbuild\`? ✅ - Is \`README.md\` present? ✅ - Does the README conform by recommending the correct Yarn version to install? ✅ - Does the README conform by recommending node install from nodejs.org? ✅ @@ -496,7 +496,7 @@ repo-1 - Does the \`module\` field in \`package.json\` conform? ✅ - Does the \`types\` field in \`package.json\` conform? ✅ - Does the \`files\` field in \`package.json\` conform? ✅ - - Does the \`lavamoat.allowscripts\` field in \`package.json\` conform? ✅ + - Does LavaMoat allow scripts for \`tsup>esbuild\`? ✅ - Is \`README.md\` present? ✅ - Does the README conform by recommending the correct Yarn version to install? ✅ - Does the README conform by recommending node install from nodejs.org? ✅ @@ -530,7 +530,7 @@ repo-2 - Does the \`module\` field in \`package.json\` conform? ✅ - Does the \`types\` field in \`package.json\` conform? ✅ - Does the \`files\` field in \`package.json\` conform? ✅ - - Does the \`lavamoat.allowscripts\` field in \`package.json\` conform? ✅ + - Does LavaMoat allow scripts for \`tsup>esbuild\`? ✅ - Is \`README.md\` present? ✅ - Does the README conform by recommending the correct Yarn version to install? ✅ - Does the README conform by recommending node install from nodejs.org? ✅ diff --git a/src/rules/package-lavamoat-tsup-conforms.ts b/src/rules/package-lavamoat-tsup-conforms.ts index e85ccad..08b59ee 100644 --- a/src/rules/package-lavamoat-tsup-conforms.ts +++ b/src/rules/package-lavamoat-tsup-conforms.ts @@ -4,8 +4,7 @@ import { dataConform } from '../rule-helpers'; export default buildRule({ name: RuleName.PackageLavamoatTsupConforms, - description: - 'Does the `lavamoat.allowscripts` field in `package.json` conform?', + description: 'Does LavaMoat allow scripts for `tsup>esbuild`?', dependencies: [RuleName.RequireValidPackageManifest], execute: async ({ project, template, pass }) => { const entryPath = 'package.json';