diff --git a/README.md b/README.md index b4fed234..814e6551 100644 --- a/README.md +++ b/README.md @@ -376,7 +376,7 @@ const { result } = concurrently( killOthers: ['failure', 'success'], restartTries: 3, cwd: path.resolve(__dirname, 'scripts'), - } + }, ); result.then(success, failure); ``` diff --git a/bin/concurrently.spec.ts b/bin/concurrently.spec.ts index ad384071..c0b2e1bb 100644 --- a/bin/concurrently.spec.ts +++ b/bin/concurrently.spec.ts @@ -89,8 +89,8 @@ const run = (args: string, ctrlcWrapper?: boolean) => { /** The signal by which the child process was terminated. */ signal: exit[1], }; - }) - ) + }), + ), ); const getLogLines = async (): Promise => { @@ -197,9 +197,9 @@ describe('exiting conditions', () => { // TODO: Flappy value due to race condition, sometimes killed by concurrently (exit code 1), // sometimes terminated on its own (exit code 0). // Related issue: https://github.com/open-cli-tools/concurrently/issues/283 - isWindows ? '(3221225786|0|1)' : 'SIGINT' - ) - ) + isWindows ? '(3221225786|0|1)' : 'SIGINT', + ), + ), ); }); }); @@ -233,7 +233,7 @@ describe('--hide', () => { describe('--group', () => { it('groups output per process', async () => { const lines = await run( - '--group "echo foo && node fixtures/sleep.mjs 1 && echo bar" "echo baz"' + '--group "echo foo && node fixtures/sleep.mjs 1 && echo bar" "echo baz"', ).getLogLines(); expect(lines.slice(0, 4)).toEqual([ @@ -257,7 +257,7 @@ describe('--names', () => { it('is split using --name-separator arg', async () => { const lines = await run( - '--names "foo|bar" --name-separator "|" "echo foo" "echo bar"' + '--names "foo|bar" --name-separator "|" "echo foo" "echo bar"', ).getLogLines(); expect(lines).toContainEqual(expect.stringContaining('[foo] foo')); @@ -302,25 +302,25 @@ describe('--kill-others', () => { expect(lines).toContainEqual(expect.stringContaining('[1] exit 0 exited with code 0')); expect(lines).toContainEqual( - expect.stringContaining('Sending SIGTERM to other processes') + expect.stringContaining('Sending SIGTERM to other processes'), ); expect(lines).toContainEqual( expect.stringMatching( - createKillMessage('[0] node fixtures/sleep.mjs 10', 'SIGTERM') - ) + createKillMessage('[0] node fixtures/sleep.mjs 10', 'SIGTERM'), + ), ); }); }); it('kills on failure', async () => { const lines = await run( - '--kill-others "node fixtures/sleep.mjs 10" "exit 1"' + '--kill-others "node fixtures/sleep.mjs 10" "exit 1"', ).getLogLines(); expect(lines).toContainEqual(expect.stringContaining('[1] exit 1 exited with code 1')); expect(lines).toContainEqual(expect.stringContaining('Sending SIGTERM to other processes')); expect(lines).toContainEqual( - expect.stringMatching(createKillMessage('[0] node fixtures/sleep.mjs 10', 'SIGTERM')) + expect.stringMatching(createKillMessage('[0] node fixtures/sleep.mjs 10', 'SIGTERM')), ); }); }); @@ -328,24 +328,24 @@ describe('--kill-others', () => { describe('--kill-others-on-fail', () => { it('does not kill on success', async () => { const lines = await run( - '--kill-others-on-fail "node fixtures/sleep.mjs 0.5" "exit 0"' + '--kill-others-on-fail "node fixtures/sleep.mjs 0.5" "exit 0"', ).getLogLines(); expect(lines).toContainEqual(expect.stringContaining('[1] exit 0 exited with code 0')); expect(lines).toContainEqual( - expect.stringContaining('[0] node fixtures/sleep.mjs 0.5 exited with code 0') + expect.stringContaining('[0] node fixtures/sleep.mjs 0.5 exited with code 0'), ); }); it('kills on failure', async () => { const lines = await run( - '--kill-others-on-fail "node fixtures/sleep.mjs 10" "exit 1"' + '--kill-others-on-fail "node fixtures/sleep.mjs 10" "exit 1"', ).getLogLines(); expect(lines).toContainEqual(expect.stringContaining('[1] exit 1 exited with code 1')); expect(lines).toContainEqual(expect.stringContaining('Sending SIGTERM to other processes')); expect(lines).toContainEqual( - expect.stringMatching(createKillMessage('[0] node fixtures/sleep.mjs 10', 'SIGTERM')) + expect.stringMatching(createKillMessage('[0] node fixtures/sleep.mjs 10', 'SIGTERM')), ); }); }); @@ -365,14 +365,14 @@ describe('--handle-input', () => { expect(exit.code).toBe(0); expect(lines).toContainEqual(expect.stringContaining('[0] stop')); expect(lines).toContainEqual( - expect.stringContaining('[0] node fixtures/read-echo.js exited with code 0') + expect.stringContaining('[0] node fixtures/read-echo.js exited with code 0'), ); }); }); it('forwards input to process --default-input-target', async () => { const child = run( - '-ki --default-input-target 1 "node fixtures/read-echo.js" "node fixtures/read-echo.js"' + '-ki --default-input-target 1 "node fixtures/read-echo.js" "node fixtures/read-echo.js"', ); child.log.subscribe((line) => { if (/\[1\] READING/.test(line)) { @@ -385,7 +385,7 @@ describe('--handle-input', () => { expect(exit.code).toBeGreaterThan(0); expect(lines).toContainEqual(expect.stringContaining('[1] stop')); expect(lines).toContainEqual( - expect.stringMatching(createKillMessage('[0] node fixtures/read-echo.js', 'SIGTERM')) + expect.stringMatching(createKillMessage('[0] node fixtures/read-echo.js', 'SIGTERM')), ); }); @@ -402,7 +402,7 @@ describe('--handle-input', () => { expect(exit.code).toBeGreaterThan(0); expect(lines).toContainEqual(expect.stringContaining('[1] stop')); expect(lines).toContainEqual( - expect.stringMatching(createKillMessage('[0] node fixtures/read-echo.js', 'SIGTERM')) + expect.stringMatching(createKillMessage('[0] node fixtures/read-echo.js', 'SIGTERM')), ); }); }); @@ -411,12 +411,12 @@ describe('--timings', () => { const defaultTimestampFormatRegex = /\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}.\d{3}/; const processStartedMessageRegex = (index: number, command: string) => { return new RegExp( - `^\\[${index}] ${command} started at ${defaultTimestampFormatRegex.source}$` + `^\\[${index}] ${command} started at ${defaultTimestampFormatRegex.source}$`, ); }; const processStoppedMessageRegex = (index: number, command: string) => { return new RegExp( - `^\\[${index}] ${command} stopped at ${defaultTimestampFormatRegex.source} after (\\d|,)+ms$` + `^\\[${index}] ${command} stopped at ${defaultTimestampFormatRegex.source} after (\\d|,)+ms$`, ); }; @@ -430,17 +430,17 @@ describe('--timings', () => { }; it.each(Object.entries(timingsTests))('%s', async (_, commands) => { const lines = await run( - `--timings ${commands.map((command) => `"${command}"`).join(' ')}` + `--timings ${commands.map((command) => `"${command}"`).join(' ')}`, ).getLogLines(); // Expect output to contain process start / stop messages for each command commands.forEach((command, index) => { const escapedCommand = escapeRegExp(command); expect(lines).toContainEqual( - expect.stringMatching(processStartedMessageRegex(index, escapedCommand)) + expect.stringMatching(processStartedMessageRegex(index, escapedCommand)), ); expect(lines).toContainEqual( - expect.stringMatching(processStoppedMessageRegex(index, escapedCommand)) + expect.stringMatching(processStoppedMessageRegex(index, escapedCommand)), ); }); diff --git a/bin/concurrently.ts b/bin/concurrently.ts index 6c47f7a6..13cfe271 100755 --- a/bin/concurrently.ts +++ b/bin/concurrently.ts @@ -188,7 +188,7 @@ const args = yargs(argsBeforeSep) }) .group( ['m', 'n', 'name-separator', 's', 'r', 'no-color', 'hide', 'g', 'timings', 'P'], - 'General' + 'General', ) .group(['p', 'c', 'l', 't'], 'Prefix styling') .group(['i', 'default-input-target'], 'Input handling') @@ -229,8 +229,8 @@ concurrently( timestampFormat: args.timestampFormat, timings: args.timings, additionalArguments: args.passthroughArguments ? argsAfterSep : undefined, - } + }, ).result.then( () => process.exit(0), - () => process.exit(1) + () => process.exit(1), ); diff --git a/bin/epilogue.ts b/bin/epilogue.ts index 72726c88..d8a598bb 100644 --- a/bin/epilogue.ts +++ b/bin/epilogue.ts @@ -81,7 +81,7 @@ const examplesString = examples .split('\n') .map((line) => ` ${line}`) .join('\n'), - ].join('\n\n') + ].join('\n\n'), ) .join('\n\n'); diff --git a/package.json b/package.json index 9f489f28..2fa4a170 100644 --- a/package.json +++ b/package.json @@ -62,33 +62,33 @@ }, "devDependencies": { "@hirez_io/observer-spy": "^2.2.0", - "@swc/core": "^1.3.66", - "@swc/jest": "^0.2.26", - "@types/jest": "^29.5.2", - "@types/lodash": "^4.14.195", - "@types/node": "^14.18.51", + "@swc/core": "^1.3.78", + "@swc/jest": "^0.2.29", + "@types/jest": "^29.5.3", + "@types/lodash": "^4.14.197", + "@types/node": "^14.18.54", "@types/shell-quote": "^1.7.1", "@types/supports-color": "^8.1.1", "@types/yargs": "^17.0.24", - "@typescript-eslint/eslint-plugin": "^5.60.0", - "@typescript-eslint/parser": "^5.60.0", + "@typescript-eslint/eslint-plugin": "^6.4.1", + "@typescript-eslint/parser": "^6.4.1", "coveralls-next": "^4.2.0", "ctrlc-wrapper": "^0.0.4", - "esbuild": "~0.18.7", - "eslint": "^8.43.0", - "eslint-config-prettier": "^8.8.0", - "eslint-plugin-import": "^2.27.5", - "eslint-plugin-jest": "^27.2.2", - "eslint-plugin-prettier": "^4.2.1", + "esbuild": "~0.19.2", + "eslint": "^8.47.0", + "eslint-config-prettier": "^9.0.0", + "eslint-plugin-import": "^2.28.1", + "eslint-plugin-jest": "^27.2.3", + "eslint-plugin-prettier": "^5.0.0", "eslint-plugin-simple-import-sort": "^10.0.0", "husky": "^8.0.3", - "jest": "^29.5.0", + "jest": "^29.6.3", "jest-create-mock-instance": "^2.0.0", - "lint-staged": "^13.2.2", - "prettier": "^2.8.8", + "lint-staged": "^13.3.0", + "prettier": "^3.0.2", "safe-publish-latest": "^2.0.0", "string-argv": "^0.3.2", - "typescript": "~5.1.3" + "typescript": "~5.1.6" }, "files": [ "dist", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 586c6255..3be23421 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -36,22 +36,22 @@ dependencies: devDependencies: '@hirez_io/observer-spy': specifier: ^2.2.0 - version: 2.2.0(rxjs@7.8.1)(typescript@5.1.3) + version: 2.2.0(rxjs@7.8.1)(typescript@5.1.6) '@swc/core': - specifier: ^1.3.66 - version: 1.3.66 + specifier: ^1.3.78 + version: 1.3.78 '@swc/jest': - specifier: ^0.2.26 - version: 0.2.26(@swc/core@1.3.66) + specifier: ^0.2.29 + version: 0.2.29(@swc/core@1.3.78) '@types/jest': - specifier: ^29.5.2 - version: 29.5.2 + specifier: ^29.5.3 + version: 29.5.3 '@types/lodash': - specifier: ^4.14.195 - version: 4.14.195 + specifier: ^4.14.197 + version: 4.14.197 '@types/node': - specifier: ^14.18.51 - version: 14.18.51 + specifier: ^14.18.54 + version: 14.18.54 '@types/shell-quote': specifier: ^1.7.1 version: 1.7.1 @@ -62,11 +62,11 @@ devDependencies: specifier: ^17.0.24 version: 17.0.24 '@typescript-eslint/eslint-plugin': - specifier: ^5.60.0 - version: 5.60.0(@typescript-eslint/parser@5.60.0)(eslint@8.43.0)(supports-color@8.1.1)(typescript@5.1.3) + specifier: ^6.4.1 + version: 6.4.1(@typescript-eslint/parser@6.4.1)(eslint@8.47.0)(supports-color@8.1.1)(typescript@5.1.6) '@typescript-eslint/parser': - specifier: ^5.60.0 - version: 5.60.0(eslint@8.43.0)(supports-color@8.1.1)(typescript@5.1.3) + specifier: ^6.4.1 + version: 6.4.1(eslint@8.47.0)(supports-color@8.1.1)(typescript@5.1.6) coveralls-next: specifier: ^4.2.0 version: 4.2.0 @@ -74,41 +74,41 @@ devDependencies: specifier: ^0.0.4 version: 0.0.4 esbuild: - specifier: ~0.18.7 - version: 0.18.7 + specifier: ~0.19.2 + version: 0.19.2 eslint: - specifier: ^8.43.0 - version: 8.43.0(supports-color@8.1.1) + specifier: ^8.47.0 + version: 8.47.0(supports-color@8.1.1) eslint-config-prettier: - specifier: ^8.8.0 - version: 8.8.0(eslint@8.43.0) + specifier: ^9.0.0 + version: 9.0.0(eslint@8.47.0) eslint-plugin-import: - specifier: ^2.27.5 - version: 2.27.5(@typescript-eslint/parser@5.60.0)(eslint@8.43.0)(supports-color@8.1.1) + specifier: ^2.28.1 + version: 2.28.1(@typescript-eslint/parser@6.4.1)(eslint@8.47.0)(supports-color@8.1.1) eslint-plugin-jest: - specifier: ^27.2.2 - version: 27.2.2(@typescript-eslint/eslint-plugin@5.60.0)(eslint@8.43.0)(jest@29.5.0)(supports-color@8.1.1)(typescript@5.1.3) + specifier: ^27.2.3 + version: 27.2.3(@typescript-eslint/eslint-plugin@6.4.1)(eslint@8.47.0)(jest@29.6.3)(supports-color@8.1.1)(typescript@5.1.6) eslint-plugin-prettier: - specifier: ^4.2.1 - version: 4.2.1(eslint-config-prettier@8.8.0)(eslint@8.43.0)(prettier@2.8.8) + specifier: ^5.0.0 + version: 5.0.0(eslint-config-prettier@9.0.0)(eslint@8.47.0)(prettier@3.0.2) eslint-plugin-simple-import-sort: specifier: ^10.0.0 - version: 10.0.0(eslint@8.43.0) + version: 10.0.0(eslint@8.47.0) husky: specifier: ^8.0.3 version: 8.0.3 jest: - specifier: ^29.5.0 - version: 29.5.0(@types/node@14.18.51)(supports-color@8.1.1) + specifier: ^29.6.3 + version: 29.6.3(@types/node@14.18.54)(supports-color@8.1.1) jest-create-mock-instance: specifier: ^2.0.0 version: 2.0.0 lint-staged: - specifier: ^13.2.2 - version: 13.2.2(supports-color@8.1.1) + specifier: ^13.3.0 + version: 13.3.0(supports-color@8.1.1) prettier: - specifier: ^2.8.8 - version: 2.8.8 + specifier: ^3.0.2 + version: 3.0.2 safe-publish-latest: specifier: ^2.0.0 version: 2.0.0 @@ -116,17 +116,22 @@ devDependencies: specifier: ^0.3.2 version: 0.3.2 typescript: - specifier: ~5.1.3 - version: 5.1.3 + specifier: ~5.1.6 + version: 5.1.6 packages: + /@aashutoshrathi/word-wrap@1.2.6: + resolution: {integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==} + engines: {node: '>=0.10.0'} + dev: true + /@ampproject/remapping@2.2.0: resolution: {integrity: sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==} engines: {node: '>=6.0.0'} dependencies: '@jridgewell/gen-mapping': 0.1.1 - '@jridgewell/trace-mapping': 0.3.17 + '@jridgewell/trace-mapping': 0.3.19 dev: true /@babel/code-frame@7.18.6: @@ -159,7 +164,7 @@ packages: debug: 4.3.4(supports-color@8.1.1) gensync: 1.0.0-beta.2 json5: 2.2.3 - semver: 6.3.0 + semver: 6.3.1 transitivePeerDependencies: - supports-color dev: true @@ -184,7 +189,7 @@ packages: '@babel/helper-validator-option': 7.18.6 browserslist: 4.21.4 lru-cache: 5.1.1 - semver: 6.3.0 + semver: 6.3.1 dev: true /@babel/helper-environment-visitor@7.18.9: @@ -468,8 +473,8 @@ packages: resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} dev: true - /@esbuild/android-arm64@0.18.7: - resolution: {integrity: sha512-o0VVztxJPkfDYbaU1tA1G1iwKiBh6Zt3bX5OdHDoITMFdRg+Mgdt3nHXMEtNlIjYA/Xn6hmlOYDHjJfQUduPuw==} + /@esbuild/android-arm64@0.19.2: + resolution: {integrity: sha512-lsB65vAbe90I/Qe10OjkmrdxSX4UJDjosDgb8sZUKcg3oefEuW2OT2Vozz8ef7wrJbMcmhvCC+hciF8jY/uAkw==} engines: {node: '>=12'} cpu: [arm64] os: [android] @@ -477,8 +482,8 @@ packages: dev: true optional: true - /@esbuild/android-arm@0.18.7: - resolution: {integrity: sha512-nDQ7AC5WVKOqxaip/E5YbaRgnilBMsoGKjoGLCeCOYNePaBCBDwJsLfa2fn3FEtktiLaAF990W592avsHjJ/Vg==} + /@esbuild/android-arm@0.19.2: + resolution: {integrity: sha512-tM8yLeYVe7pRyAu9VMi/Q7aunpLwD139EY1S99xbQkT4/q2qa6eA4ige/WJQYdJ8GBL1K33pPFhPfPdJ/WzT8Q==} engines: {node: '>=12'} cpu: [arm] os: [android] @@ -486,8 +491,8 @@ packages: dev: true optional: true - /@esbuild/android-x64@0.18.7: - resolution: {integrity: sha512-ga8Dtpb01GorCi1dk3jEwDk3AK/3F+cR5P+//Tl0ERL2K2pK/J1f3t8hcJ+RRt3UYBV/uTL9GEnx7touX0KRPQ==} + /@esbuild/android-x64@0.19.2: + resolution: {integrity: sha512-qK/TpmHt2M/Hg82WXHRc/W/2SGo/l1thtDHZWqFq7oi24AjZ4O/CpPSu6ZuYKFkEgmZlFoa7CooAyYmuvnaG8w==} engines: {node: '>=12'} cpu: [x64] os: [android] @@ -495,8 +500,8 @@ packages: dev: true optional: true - /@esbuild/darwin-arm64@0.18.7: - resolution: {integrity: sha512-FVDOdfgyGOOISpd0b+UtA6YNbu5+RzZu7kDztjVsA/iZhGnyxbCR/vZ+B2j5yxbMZ9j3iz5uFiHIq1sl6nrZ0Q==} + /@esbuild/darwin-arm64@0.19.2: + resolution: {integrity: sha512-Ora8JokrvrzEPEpZO18ZYXkH4asCdc1DLdcVy8TGf5eWtPO1Ie4WroEJzwI52ZGtpODy3+m0a2yEX9l+KUn0tA==} engines: {node: '>=12'} cpu: [arm64] os: [darwin] @@ -504,8 +509,8 @@ packages: dev: true optional: true - /@esbuild/darwin-x64@0.18.7: - resolution: {integrity: sha512-w7aeD1UjDFXqyrZQLBIPYGmLR+gJsl+7QSwmSz+nVrCZOB7cyWEkIjCF8s4inUD3ja3WtKUIqzX5S4qDnU5q7Q==} + /@esbuild/darwin-x64@0.19.2: + resolution: {integrity: sha512-tP+B5UuIbbFMj2hQaUr6EALlHOIOmlLM2FK7jeFBobPy2ERdohI4Ka6ZFjZ1ZYsrHE/hZimGuU90jusRE0pwDw==} engines: {node: '>=12'} cpu: [x64] os: [darwin] @@ -513,8 +518,8 @@ packages: dev: true optional: true - /@esbuild/freebsd-arm64@0.18.7: - resolution: {integrity: sha512-wKyySDdoKVOPn9eDci/b3eP3EJVAVXC3b2CiaHphhCKfh4n5pWLwj7Ue96anK1HnpcZ0Uti8Sw9xq3Im0earHA==} + /@esbuild/freebsd-arm64@0.19.2: + resolution: {integrity: sha512-YbPY2kc0acfzL1VPVK6EnAlig4f+l8xmq36OZkU0jzBVHcOTyQDhnKQaLzZudNJQyymd9OqQezeaBgkTGdTGeQ==} engines: {node: '>=12'} cpu: [arm64] os: [freebsd] @@ -522,8 +527,8 @@ packages: dev: true optional: true - /@esbuild/freebsd-x64@0.18.7: - resolution: {integrity: sha512-rbfjbgSvzWRjQMKIntogK1d2oIAiA/ZVayXfK1WjcIIMQYLg74sAoT8CZBj30+bwn13YR0t6lgIxA1mJaS2Lhw==} + /@esbuild/freebsd-x64@0.19.2: + resolution: {integrity: sha512-nSO5uZT2clM6hosjWHAsS15hLrwCvIWx+b2e3lZ3MwbYSaXwvfO528OF+dLjas1g3bZonciivI8qKR/Hm7IWGw==} engines: {node: '>=12'} cpu: [x64] os: [freebsd] @@ -531,8 +536,8 @@ packages: dev: true optional: true - /@esbuild/linux-arm64@0.18.7: - resolution: {integrity: sha512-cwfxKYroaD5BZ42NsfxdVU1issD2NxcuJHlCNsN5LtWq+kZMpwmIVDCJxKlgLIG7zH/4yq8lTuZJurxq058GsA==} + /@esbuild/linux-arm64@0.19.2: + resolution: {integrity: sha512-ig2P7GeG//zWlU0AggA3pV1h5gdix0MA3wgB+NsnBXViwiGgY77fuN9Wr5uoCrs2YzaYfogXgsWZbm+HGr09xg==} engines: {node: '>=12'} cpu: [arm64] os: [linux] @@ -540,8 +545,8 @@ packages: dev: true optional: true - /@esbuild/linux-arm@0.18.7: - resolution: {integrity: sha512-GpUBqqJnQ+7qdb7NqKNVj7TgD2JnLrEdzPtatPow77Me/EQ01GE1tHKZLePqhf5thdLDb5Se2Kcf4D9WTbSjmw==} + /@esbuild/linux-arm@0.19.2: + resolution: {integrity: sha512-Odalh8hICg7SOD7XCj0YLpYCEc+6mkoq63UnExDCiRA2wXEmGlK5JVrW50vZR9Qz4qkvqnHcpH+OFEggO3PgTg==} engines: {node: '>=12'} cpu: [arm] os: [linux] @@ -549,8 +554,8 @@ packages: dev: true optional: true - /@esbuild/linux-ia32@0.18.7: - resolution: {integrity: sha512-SsvsGStwbArBcB/XNh+2MvUtgOLp0CR6Hn1PBWcdApCuAaMibHCDyzHS06+u/YOD1UpeXFHJZphix61HeVMH/w==} + /@esbuild/linux-ia32@0.19.2: + resolution: {integrity: sha512-mLfp0ziRPOLSTek0Gd9T5B8AtzKAkoZE70fneiiyPlSnUKKI4lp+mGEnQXcQEHLJAcIYDPSyBvsUbKUG2ri/XQ==} engines: {node: '>=12'} cpu: [ia32] os: [linux] @@ -558,8 +563,8 @@ packages: dev: true optional: true - /@esbuild/linux-loong64@0.18.7: - resolution: {integrity: sha512-WOqQ0eaWGE/e9vmbxFT2exbWuXxHuG8ld0fN7oX5f0v7W6oveUIF4DLJYVae93t1+Icv5R0NBo8wv/o4hEvxBQ==} + /@esbuild/linux-loong64@0.19.2: + resolution: {integrity: sha512-hn28+JNDTxxCpnYjdDYVMNTR3SKavyLlCHHkufHV91fkewpIyQchS1d8wSbmXhs1fiYDpNww8KTFlJ1dHsxeSw==} engines: {node: '>=12'} cpu: [loong64] os: [linux] @@ -567,8 +572,8 @@ packages: dev: true optional: true - /@esbuild/linux-mips64el@0.18.7: - resolution: {integrity: sha512-/dKQ3OLr2Tmj0kuf4ZJioD+qnADUEJSBaiuDbk8v5602HnNNBSGHPrEB6S8PSb8y8jWsX9MMnxqk5KpLTf86OQ==} + /@esbuild/linux-mips64el@0.19.2: + resolution: {integrity: sha512-KbXaC0Sejt7vD2fEgPoIKb6nxkfYW9OmFUK9XQE4//PvGIxNIfPk1NmlHmMg6f25x57rpmEFrn1OotASYIAaTg==} engines: {node: '>=12'} cpu: [mips64el] os: [linux] @@ -576,8 +581,8 @@ packages: dev: true optional: true - /@esbuild/linux-ppc64@0.18.7: - resolution: {integrity: sha512-x/k1+daIqiGJt0Yhr5llFJ/zkRg1XAqcS2ntAYzS3pHogO8oIyc+LjsINgVyFCeFMFUZ9Ae9W5z2Ib05bMum3g==} + /@esbuild/linux-ppc64@0.19.2: + resolution: {integrity: sha512-dJ0kE8KTqbiHtA3Fc/zn7lCd7pqVr4JcT0JqOnbj4LLzYnp+7h8Qi4yjfq42ZlHfhOCM42rBh0EwHYLL6LEzcw==} engines: {node: '>=12'} cpu: [ppc64] os: [linux] @@ -585,8 +590,8 @@ packages: dev: true optional: true - /@esbuild/linux-riscv64@0.18.7: - resolution: {integrity: sha512-LegTDzK9gL/sTkiZUGYLigTISwppZJvQL3MRmFgXgHrj3IzdWkPgMwEtOItK3YiFzhBSSNyKA0mSKEg4UuK8JQ==} + /@esbuild/linux-riscv64@0.19.2: + resolution: {integrity: sha512-7Z/jKNFufZ/bbu4INqqCN6DDlrmOTmdw6D0gH+6Y7auok2r02Ur661qPuXidPOJ+FSgbEeQnnAGgsVynfLuOEw==} engines: {node: '>=12'} cpu: [riscv64] os: [linux] @@ -594,8 +599,8 @@ packages: dev: true optional: true - /@esbuild/linux-s390x@0.18.7: - resolution: {integrity: sha512-fjBl45O8ivc3Nl14hdGpbHoVtdHnYGsLpwnlv2rNyb5NOsgY3Y8EhVe/fqR9ndHgO4eL68knKxkrRveEJq+v1g==} + /@esbuild/linux-s390x@0.19.2: + resolution: {integrity: sha512-U+RinR6aXXABFCcAY4gSlv4CL1oOVvSSCdseQmGO66H+XyuQGZIUdhG56SZaDJQcLmrSfRmx5XZOWyCJPRqS7g==} engines: {node: '>=12'} cpu: [s390x] os: [linux] @@ -603,8 +608,8 @@ packages: dev: true optional: true - /@esbuild/linux-x64@0.18.7: - resolution: {integrity: sha512-apYLJsg3wd3hW8nEt7H++8c8rTDvwXxX7h7YeI89g1RDPCT2QSXTO/xT1BCvFa/BFFoau+yvepQg2o5556FIWQ==} + /@esbuild/linux-x64@0.19.2: + resolution: {integrity: sha512-oxzHTEv6VPm3XXNaHPyUTTte+3wGv7qVQtqaZCrgstI16gCuhNOtBXLEBkBREP57YTd68P0VgDgG73jSD8bwXQ==} engines: {node: '>=12'} cpu: [x64] os: [linux] @@ -612,8 +617,8 @@ packages: dev: true optional: true - /@esbuild/netbsd-x64@0.18.7: - resolution: {integrity: sha512-f82sUnrzdoW4MiiCDn1G3RSsPH8+no+okDhkHgGTGa+5F5wZCyxdXxzR6ctsiimvyPn9FIu9Zs+MesVsBRwyTw==} + /@esbuild/netbsd-x64@0.19.2: + resolution: {integrity: sha512-WNa5zZk1XpTTwMDompZmvQLHszDDDN7lYjEHCUmAGB83Bgs20EMs7ICD+oKeT6xt4phV4NDdSi/8OfjPbSbZfQ==} engines: {node: '>=12'} cpu: [x64] os: [netbsd] @@ -621,8 +626,8 @@ packages: dev: true optional: true - /@esbuild/openbsd-x64@0.18.7: - resolution: {integrity: sha512-1TNDfpFYhIloHeqSRbJFjHFMYtTJWgqI2+S9uCLVCWrADLl5tCe8vQKDfkM7Afz/lZyqi6qEX/Eg2KA5S7FcNQ==} + /@esbuild/openbsd-x64@0.19.2: + resolution: {integrity: sha512-S6kI1aT3S++Dedb7vxIuUOb3oAxqxk2Rh5rOXOTYnzN8JzW1VzBd+IqPiSpgitu45042SYD3HCoEyhLKQcDFDw==} engines: {node: '>=12'} cpu: [x64] os: [openbsd] @@ -630,8 +635,8 @@ packages: dev: true optional: true - /@esbuild/sunos-x64@0.18.7: - resolution: {integrity: sha512-lBhsHaM6EYCmzQCj+xeFev+dgqTgpSRqF7qXrxp5V4waFuidTBbWgqSXY5rsLRNLOyMMCh1cA+RqF8UL30oOJQ==} + /@esbuild/sunos-x64@0.19.2: + resolution: {integrity: sha512-VXSSMsmb+Z8LbsQGcBMiM+fYObDNRm8p7tkUDMPG/g4fhFX5DEFmjxIEa3N8Zr96SjsJ1woAhF0DUnS3MF3ARw==} engines: {node: '>=12'} cpu: [x64] os: [sunos] @@ -639,8 +644,8 @@ packages: dev: true optional: true - /@esbuild/win32-arm64@0.18.7: - resolution: {integrity: sha512-p9ipv7rPKitXAAeufg5BzmyYZHZtFfrLGUX15+AxpTQqSZDAZd2wIusaOW5oONTf8RB53ujIqQw7W0QnZMuiUw==} + /@esbuild/win32-arm64@0.19.2: + resolution: {integrity: sha512-5NayUlSAyb5PQYFAU9x3bHdsqB88RC3aM9lKDAz4X1mo/EchMIT1Q+pSeBXNgkfNmRecLXA0O8xP+x8V+g/LKg==} engines: {node: '>=12'} cpu: [arm64] os: [win32] @@ -648,8 +653,8 @@ packages: dev: true optional: true - /@esbuild/win32-ia32@0.18.7: - resolution: {integrity: sha512-WmNxuE+j1wUT2rK+e1Oakx3zobS1rPpQudPytGM4nxXEGv0gpXEvnZnrykRwriNFbGVCwFJoE4txayjW76LsCw==} + /@esbuild/win32-ia32@0.19.2: + resolution: {integrity: sha512-47gL/ek1v36iN0wL9L4Q2MFdujR0poLZMJwhO2/N3gA89jgHp4MR8DKCmwYtGNksbfJb9JoTtbkoe6sDhg2QTA==} engines: {node: '>=12'} cpu: [ia32] os: [win32] @@ -657,8 +662,8 @@ packages: dev: true optional: true - /@esbuild/win32-x64@0.18.7: - resolution: {integrity: sha512-6RENfAwwL6dxQk/V1PxO/ejYRiOUVUaHi99hP3Dso/38jfNKFzU6YSSR/haJGNV/2wAHIgBMROQodna0IejAuA==} + /@esbuild/win32-x64@0.19.2: + resolution: {integrity: sha512-tcuhV7ncXBqbt/Ybf0IyrMcwVOAPDckMK9rXNHtF17UTK18OKLpg08glminN06pt2WCoALhXdLfSPbVvK/6fxw==} engines: {node: '>=12'} cpu: [x64] os: [win32] @@ -666,28 +671,28 @@ packages: dev: true optional: true - /@eslint-community/eslint-utils@4.4.0(eslint@8.43.0): + /@eslint-community/eslint-utils@4.4.0(eslint@8.47.0): resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 dependencies: - eslint: 8.43.0(supports-color@8.1.1) - eslint-visitor-keys: 3.4.1 + eslint: 8.47.0(supports-color@8.1.1) + eslint-visitor-keys: 3.4.3 dev: true - /@eslint-community/regexpp@4.4.1: - resolution: {integrity: sha512-BISJ6ZE4xQsuL/FmsyRaiffpq977bMlsKfGHTQrOGFErfByxIe6iZTxPf/00Zon9b9a7iUykfQwejN3s2ZW/Bw==} + /@eslint-community/regexpp@4.7.0: + resolution: {integrity: sha512-+HencqxU7CFJnQb7IKtuNBqS6Yx3Tz4kOL8BJXo+JyeiBm5MEX6pO8onXDkjrkCRlfYXS1Axro15ZjVFe9YgsA==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} dev: true - /@eslint/eslintrc@2.0.3(supports-color@8.1.1): - resolution: {integrity: sha512-+5gy6OQfk+xx3q0d6jGZZC3f3KzAkXc/IanVxd1is/VIIziRqqt3ongQz0FiTUXqTk0c7aDB3OaFuKnuSoJicQ==} + /@eslint/eslintrc@2.1.2(supports-color@8.1.1): + resolution: {integrity: sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: ajv: 6.12.6 debug: 4.3.4(supports-color@8.1.1) - espree: 9.5.2 + espree: 9.6.1 globals: 13.19.0 ignore: 5.2.4 import-fresh: 3.3.0 @@ -698,19 +703,19 @@ packages: - supports-color dev: true - /@eslint/js@8.43.0: - resolution: {integrity: sha512-s2UHCoiXfxMvmfzqoN+vrQ84ahUSYde9qNO1MdxmoEhyHWsfmwOpFlwYV+ePJEVc7gFnATGUi376WowX1N7tFg==} + /@eslint/js@8.47.0: + resolution: {integrity: sha512-P6omY1zv5MItm93kLM8s2vr1HICJH8v0dvddDhysbIuZ+vcjOHg5Zbkf1mTkcmi2JA9oBG2anOkRnW8WJTS8Og==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /@hirez_io/observer-spy@2.2.0(rxjs@7.8.1)(typescript@5.1.3): + /@hirez_io/observer-spy@2.2.0(rxjs@7.8.1)(typescript@5.1.6): resolution: {integrity: sha512-G9nv87vjRILgB/X1AtKBv1DZX7yXSYAOCXon/f+QULKoXVhVehYUF5Lv0SQ97ebf1sA48Z2CyQ9h2v4Pz6DgaQ==} peerDependencies: rxjs: '>=6.0.0' typescript: '>=2.8.1' dependencies: rxjs: 7.8.1 - typescript: 5.1.3 + typescript: 5.1.6 dev: true /@humanwhocodes/config-array@0.11.10(supports-color@8.1.1): @@ -749,20 +754,20 @@ packages: engines: {node: '>=8'} dev: true - /@jest/console@29.5.0: - resolution: {integrity: sha512-NEpkObxPwyw/XxZVLPmAGKE89IQRp4puc6IQRPru6JKd1M3fW9v1xM1AnzIJE65hbCkzQAdnL8P47e9hzhiYLQ==} + /@jest/console@29.6.3: + resolution: {integrity: sha512-ukZbHAdDH4ktZIOKvWs1juAXhiVAdvCyM8zv4S/7Ii3vJSDvMW5k+wOVGMQmHLHUFw3Ko63ZQNy7NI6PSlsD5w==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@jest/types': 29.5.0 - '@types/node': 14.18.51 + '@jest/types': 29.6.3 + '@types/node': 14.18.54 chalk: 4.1.2 - jest-message-util: 29.5.0 - jest-util: 29.5.0 + jest-message-util: 29.6.3 + jest-util: 29.6.3 slash: 3.0.0 dev: true - /@jest/core@29.5.0(supports-color@8.1.1): - resolution: {integrity: sha512-28UzQc7ulUrOQw1IsN/kv1QES3q2kkbl/wGslyhAclqZ/8cMdB5M68BffkIdSJgKBUt50d3hbwJ92XESlE7LiQ==} + /@jest/core@29.6.3(supports-color@8.1.1): + resolution: {integrity: sha512-skV1XrfNxfagmjRUrk2FyN5/2YwIzdWVVBa/orUfbLvQUANXxERq2pTvY0I+FinWHjDKB2HRmpveUiph4X0TJw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 @@ -770,35 +775,36 @@ packages: node-notifier: optional: true dependencies: - '@jest/console': 29.5.0 - '@jest/reporters': 29.5.0(supports-color@8.1.1) - '@jest/test-result': 29.5.0 - '@jest/transform': 29.5.0(supports-color@8.1.1) - '@jest/types': 29.5.0 - '@types/node': 14.18.51 + '@jest/console': 29.6.3 + '@jest/reporters': 29.6.3(supports-color@8.1.1) + '@jest/test-result': 29.6.3 + '@jest/transform': 29.6.3(supports-color@8.1.1) + '@jest/types': 29.6.3 + '@types/node': 14.18.54 ansi-escapes: 4.3.2 chalk: 4.1.2 ci-info: 3.7.1 exit: 0.1.2 graceful-fs: 4.2.10 - jest-changed-files: 29.5.0 - jest-config: 29.5.0(@types/node@14.18.51)(supports-color@8.1.1) - jest-haste-map: 29.5.0 - jest-message-util: 29.5.0 - jest-regex-util: 29.4.3 - jest-resolve: 29.5.0 - jest-resolve-dependencies: 29.5.0(supports-color@8.1.1) - jest-runner: 29.5.0(supports-color@8.1.1) - jest-runtime: 29.5.0(supports-color@8.1.1) - jest-snapshot: 29.5.0(supports-color@8.1.1) - jest-util: 29.5.0 - jest-validate: 29.5.0 - jest-watcher: 29.5.0 + jest-changed-files: 29.6.3 + jest-config: 29.6.3(@types/node@14.18.54)(supports-color@8.1.1) + jest-haste-map: 29.6.3 + jest-message-util: 29.6.3 + jest-regex-util: 29.6.3 + jest-resolve: 29.6.3 + jest-resolve-dependencies: 29.6.3(supports-color@8.1.1) + jest-runner: 29.6.3(supports-color@8.1.1) + jest-runtime: 29.6.3(supports-color@8.1.1) + jest-snapshot: 29.6.3(supports-color@8.1.1) + jest-util: 29.6.3 + jest-validate: 29.6.3 + jest-watcher: 29.6.3 micromatch: 4.0.5 - pretty-format: 29.5.0 + pretty-format: 29.6.3 slash: 3.0.0 strip-ansi: 6.0.1 transitivePeerDependencies: + - babel-plugin-macros - supports-color - ts-node dev: true @@ -810,14 +816,14 @@ packages: '@jest/types': 27.5.1 dev: true - /@jest/environment@29.5.0: - resolution: {integrity: sha512-5FXw2+wD29YU1d4I2htpRX7jYnAyTRjP2CsXQdo9SAM8g3ifxWPSV0HnClSn71xwctr0U3oZIIH+dtbfmnbXVQ==} + /@jest/environment@29.6.3: + resolution: {integrity: sha512-u/u3cCztYCfgBiGHsamqP5x+XvucftOGPbf5RJQxfpeC1y4AL8pCjKvPDA3oCmdhZYPgk5AE0VOD/flweR69WA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@jest/fake-timers': 29.5.0 - '@jest/types': 29.5.0 - '@types/node': 14.18.51 - jest-mock: 29.5.0 + '@jest/fake-timers': 29.6.3 + '@jest/types': 29.6.3 + '@types/node': 14.18.54 + jest-mock: 29.6.3 dev: true /@jest/expect-utils@29.5.0: @@ -827,42 +833,49 @@ packages: jest-get-type: 29.4.3 dev: true - /@jest/expect@29.5.0(supports-color@8.1.1): - resolution: {integrity: sha512-PueDR2HGihN3ciUNGr4uelropW7rqUfTiOn+8u0leg/42UhblPxHkfoh0Ruu3I9Y1962P3u2DY4+h7GVTSVU6g==} + /@jest/expect-utils@29.6.3: + resolution: {integrity: sha512-nvOEW4YoqRKD9HBJ9OJ6przvIvP9qilp5nAn1462P5ZlL/MM9SgPEZFyjTGPfs7QkocdUsJa6KjHhyRn4ueItA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - expect: 29.5.0 - jest-snapshot: 29.5.0(supports-color@8.1.1) + jest-get-type: 29.6.3 + dev: true + + /@jest/expect@29.6.3(supports-color@8.1.1): + resolution: {integrity: sha512-Ic08XbI2jlg6rECy+CGwk/8NDa6VE7UmIG6++9OTPAMnQmNGY28hu69Nf629CWv6T7YMODLbONxDFKdmQeI9FA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + expect: 29.6.3 + jest-snapshot: 29.6.3(supports-color@8.1.1) transitivePeerDependencies: - supports-color dev: true - /@jest/fake-timers@29.5.0: - resolution: {integrity: sha512-9ARvuAAQcBwDAqOnglWq2zwNIRUDtk/SCkp/ToGEhFv5r86K21l+VEs0qNTaXtyiY0lEePl3kylijSYJQqdbDg==} + /@jest/fake-timers@29.6.3: + resolution: {integrity: sha512-pa1wmqvbj6eX0nMvOM2VDAWvJOI5A/Mk3l8O7n7EsAh71sMZblaKO9iT4GjIj0LwwK3CP/Jp1ypEV0x3m89RvA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@jest/types': 29.5.0 + '@jest/types': 29.6.3 '@sinonjs/fake-timers': 10.0.2 - '@types/node': 14.18.51 - jest-message-util: 29.5.0 - jest-mock: 29.5.0 - jest-util: 29.5.0 + '@types/node': 14.18.54 + jest-message-util: 29.6.3 + jest-mock: 29.6.3 + jest-util: 29.6.3 dev: true - /@jest/globals@29.5.0(supports-color@8.1.1): - resolution: {integrity: sha512-S02y0qMWGihdzNbUiqSAiKSpSozSuHX5UYc7QbnHP+D9Lyw8DgGGCinrN9uSuHPeKgSSzvPom2q1nAtBvUsvPQ==} + /@jest/globals@29.6.3(supports-color@8.1.1): + resolution: {integrity: sha512-RB+uI+CZMHntzlnOPlll5x/jgRff3LEPl/td/jzMXiIgR0iIhKq9qm1HLU+EC52NuoVy/1swit/sDGjVn4bc6A==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@jest/environment': 29.5.0 - '@jest/expect': 29.5.0(supports-color@8.1.1) - '@jest/types': 29.5.0 - jest-mock: 29.5.0 + '@jest/environment': 29.6.3 + '@jest/expect': 29.6.3(supports-color@8.1.1) + '@jest/types': 29.6.3 + jest-mock: 29.6.3 transitivePeerDependencies: - supports-color dev: true - /@jest/reporters@29.5.0(supports-color@8.1.1): - resolution: {integrity: sha512-D05STXqj/M8bP9hQNSICtPqz97u7ffGzZu+9XLucXhkOFBqKcXe04JLZOgIekOxdb73MAoBUFnqvf7MCpKk5OA==} + /@jest/reporters@29.6.3(supports-color@8.1.1): + resolution: {integrity: sha512-kGz59zMi0GkVjD2CJeYWG9k6cvj7eBqt9aDAqo2rcCLRTYlvQ62Gu/n+tOmJMBHGjzeijjuCENjzTyYBgrtLUw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 @@ -871,25 +884,25 @@ packages: optional: true dependencies: '@bcoe/v8-coverage': 0.2.3 - '@jest/console': 29.5.0 - '@jest/test-result': 29.5.0 - '@jest/transform': 29.5.0(supports-color@8.1.1) - '@jest/types': 29.5.0 - '@jridgewell/trace-mapping': 0.3.17 - '@types/node': 14.18.51 + '@jest/console': 29.6.3 + '@jest/test-result': 29.6.3 + '@jest/transform': 29.6.3(supports-color@8.1.1) + '@jest/types': 29.6.3 + '@jridgewell/trace-mapping': 0.3.19 + '@types/node': 14.18.54 chalk: 4.1.2 collect-v8-coverage: 1.0.1 exit: 0.1.2 glob: 7.2.3 graceful-fs: 4.2.10 istanbul-lib-coverage: 3.2.0 - istanbul-lib-instrument: 5.2.1(supports-color@8.1.1) + istanbul-lib-instrument: 6.0.0(supports-color@8.1.1) istanbul-lib-report: 3.0.0 istanbul-lib-source-maps: 4.0.1(supports-color@8.1.1) istanbul-reports: 3.1.5 - jest-message-util: 29.5.0 - jest-util: 29.5.0 - jest-worker: 29.5.0 + jest-message-util: 29.6.3 + jest-util: 29.6.3 + jest-worker: 29.6.3 slash: 3.0.0 string-length: 4.0.2 strip-ansi: 6.0.1 @@ -905,50 +918,57 @@ packages: '@sinclair/typebox': 0.25.24 dev: true - /@jest/source-map@29.4.3: - resolution: {integrity: sha512-qyt/mb6rLyd9j1jUts4EQncvS6Yy3PM9HghnNv86QBlV+zdL2inCdK1tuVlL+J+lpiw2BI67qXOrX3UurBqQ1w==} + /@jest/schemas@29.6.3: + resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@sinclair/typebox': 0.27.8 + dev: true + + /@jest/source-map@29.6.3: + resolution: {integrity: sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@jridgewell/trace-mapping': 0.3.17 + '@jridgewell/trace-mapping': 0.3.19 callsites: 3.1.0 graceful-fs: 4.2.10 dev: true - /@jest/test-result@29.5.0: - resolution: {integrity: sha512-fGl4rfitnbfLsrfx1uUpDEESS7zM8JdgZgOCQuxQvL1Sn/I6ijeAVQWGfXI9zb1i9Mzo495cIpVZhA0yr60PkQ==} + /@jest/test-result@29.6.3: + resolution: {integrity: sha512-k7ZZaNvOSMBHPZYiy0kuiaFoyansR5QnTwDux1EjK3kD5iWpRVyJIJ0RAIV39SThafchuW59vra7F8mdy5Hfgw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@jest/console': 29.5.0 - '@jest/types': 29.5.0 + '@jest/console': 29.6.3 + '@jest/types': 29.6.3 '@types/istanbul-lib-coverage': 2.0.4 collect-v8-coverage: 1.0.1 dev: true - /@jest/test-sequencer@29.5.0: - resolution: {integrity: sha512-yPafQEcKjkSfDXyvtgiV4pevSeyuA6MQr6ZIdVkWJly9vkqjnFfcfhRQqpD5whjoU8EORki752xQmjaqoFjzMQ==} + /@jest/test-sequencer@29.6.3: + resolution: {integrity: sha512-/SmijaAU2TY9ComFGIYa6Z+fmKqQMnqs2Nmwb0P/Z/tROdZ7M0iruES1EaaU9PBf8o9uED5xzaJ3YPFEIcDgAg==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@jest/test-result': 29.5.0 + '@jest/test-result': 29.6.3 graceful-fs: 4.2.10 - jest-haste-map: 29.5.0 + jest-haste-map: 29.6.3 slash: 3.0.0 dev: true - /@jest/transform@29.5.0(supports-color@8.1.1): - resolution: {integrity: sha512-8vbeZWqLJOvHaDfeMuoHITGKSz5qWc9u04lnWrQE3VyuSw604PzQM824ZeX9XSjUCeDiE3GuxZe5UKa8J61NQw==} + /@jest/transform@29.6.3(supports-color@8.1.1): + resolution: {integrity: sha512-dPIc3DsvMZ/S8ut4L2ViCj265mKO0owB0wfzBv2oGzL9pQ+iRvJewHqLBmsGb7XFb5UotWIEtvY5A/lnylaIoQ==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: '@babel/core': 7.20.7(supports-color@8.1.1) - '@jest/types': 29.5.0 - '@jridgewell/trace-mapping': 0.3.17 + '@jest/types': 29.6.3 + '@jridgewell/trace-mapping': 0.3.19 babel-plugin-istanbul: 6.1.1(supports-color@8.1.1) chalk: 4.1.2 convert-source-map: 2.0.0 fast-json-stable-stringify: 2.1.0 graceful-fs: 4.2.10 - jest-haste-map: 29.5.0 - jest-regex-util: 29.4.3 - jest-util: 29.5.0 + jest-haste-map: 29.6.3 + jest-regex-util: 29.6.3 + jest-util: 29.6.3 micromatch: 4.0.5 pirates: 4.0.5 slash: 3.0.0 @@ -963,19 +983,19 @@ packages: dependencies: '@types/istanbul-lib-coverage': 2.0.4 '@types/istanbul-reports': 3.0.1 - '@types/node': 14.18.51 + '@types/node': 14.18.54 '@types/yargs': 16.0.4 chalk: 4.1.2 dev: true - /@jest/types@29.5.0: - resolution: {integrity: sha512-qbu7kN6czmVRc3xWFQcAN03RAUamgppVUdXrvl1Wr3jlNF93o9mJbGcDWrwGB6ht44u7efB1qCFgVQmca24Uog==} + /@jest/types@29.6.3: + resolution: {integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@jest/schemas': 29.4.3 + '@jest/schemas': 29.6.3 '@types/istanbul-lib-coverage': 2.0.4 '@types/istanbul-reports': 3.0.1 - '@types/node': 14.18.51 + '@types/node': 14.18.54 '@types/yargs': 17.0.24 chalk: 4.1.2 dev: true @@ -994,7 +1014,7 @@ packages: dependencies: '@jridgewell/set-array': 1.1.2 '@jridgewell/sourcemap-codec': 1.4.14 - '@jridgewell/trace-mapping': 0.3.17 + '@jridgewell/trace-mapping': 0.3.19 dev: true /@jridgewell/resolve-uri@3.1.0: @@ -1011,8 +1031,8 @@ packages: resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==} dev: true - /@jridgewell/trace-mapping@0.3.17: - resolution: {integrity: sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==} + /@jridgewell/trace-mapping@0.3.19: + resolution: {integrity: sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==} dependencies: '@jridgewell/resolve-uri': 3.1.0 '@jridgewell/sourcemap-codec': 1.4.14 @@ -1039,10 +1059,26 @@ packages: fastq: 1.15.0 dev: true + /@pkgr/utils@2.4.2: + resolution: {integrity: sha512-POgTXhjrTfbTV63DiFXav4lBHiICLKKwDeaKn9Nphwj7WH6m0hMMCaJkMyRWjgtPFyRKRVoMXXjczsTQRDEhYw==} + engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} + dependencies: + cross-spawn: 7.0.3 + fast-glob: 3.3.1 + is-glob: 4.0.3 + open: 9.1.0 + picocolors: 1.0.0 + tslib: 2.6.2 + dev: true + /@sinclair/typebox@0.25.24: resolution: {integrity: sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ==} dev: true + /@sinclair/typebox@0.27.8: + resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} + dev: true + /@sinonjs/commons@2.0.0: resolution: {integrity: sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==} dependencies: @@ -1055,8 +1091,8 @@ packages: '@sinonjs/commons': 2.0.0 dev: true - /@swc/core-darwin-arm64@1.3.66: - resolution: {integrity: sha512-UijJsvuLy73vxeVYEy7urIHksXS+3BdvJ9s9AY+bRMSQW483NO7RLp8g4FdTyJbRaN0BH15SQnY0dcjQBkVuHw==} + /@swc/core-darwin-arm64@1.3.78: + resolution: {integrity: sha512-596KRua/d5Gx1buHKKchSyHuwoIL4S1BRD/wCvYNLNZ3xOzcuBBmXOjrDVigKi1ztNDeS07p30RO5UyYur0XAA==} engines: {node: '>=10'} cpu: [arm64] os: [darwin] @@ -1064,8 +1100,8 @@ packages: dev: true optional: true - /@swc/core-darwin-x64@1.3.66: - resolution: {integrity: sha512-xGsHKvViQnwTNLF30Y/5OqWdnN6RsiyUI8awZXfz1sHcXCEaLe+v+WLQ+/E8sgw0YUkYVHzzfV/sAN2CezJK5Q==} + /@swc/core-darwin-x64@1.3.78: + resolution: {integrity: sha512-w0RsD1onQAj0vuLAoOVi48HgnW6D6oBEIZP17l0HYejCDBZ+FRZLjml7wgNAWMqHcd2qNRqgtZ+v7aLza2JtBQ==} engines: {node: '>=10'} cpu: [x64] os: [darwin] @@ -1073,8 +1109,8 @@ packages: dev: true optional: true - /@swc/core-linux-arm-gnueabihf@1.3.66: - resolution: {integrity: sha512-gNbLcSIV2pq90BkMSpzvK4xPXOl8GEF3YR4NaqF0CYSzQsVXXTTqMuX/r26xNYudBKzH0345S1MpoRk2qricnA==} + /@swc/core-linux-arm-gnueabihf@1.3.78: + resolution: {integrity: sha512-v1CpRn+H6fha1WIqmdRvJM40pFdjUHrGfhf4Ygci72nlAU41l5XimN8Iwkm8FgIwf2wnv0lLzedSM4IHvpq/yA==} engines: {node: '>=10'} cpu: [arm] os: [linux] @@ -1082,8 +1118,8 @@ packages: dev: true optional: true - /@swc/core-linux-arm64-gnu@1.3.66: - resolution: {integrity: sha512-cJSQ0oplyWbJqy4rzVcnBYLAi6z1QT3QCcR7iAey0aAmCvfRBZJfXlyjggMjn4iosuadkauwCZR1xYNhBDRn7w==} + /@swc/core-linux-arm64-gnu@1.3.78: + resolution: {integrity: sha512-Sis17dz9joJRFVvR/gteOZSUNrrrioo81RQzani0Zr5ZZOfWLMTB9DA+0MVlfnVa2taYcsJHJZFoAv9JkLwbzg==} engines: {node: '>=10'} cpu: [arm64] os: [linux] @@ -1091,8 +1127,8 @@ packages: dev: true optional: true - /@swc/core-linux-arm64-musl@1.3.66: - resolution: {integrity: sha512-GDQZpcB9aGxG9PTA2shdIkoMZlGK5omJ8NR49uoBTtLBVYiGeXAwV0U1Uaw8kXEZj9i7wZDkvjzjSaNH3evRsg==} + /@swc/core-linux-arm64-musl@1.3.78: + resolution: {integrity: sha512-E5F8/qp+QupnfBnsP4vN1PKyCmAHYHDG1GMyPE/zLFOUYLgw+jK4C9rfyLBR0o2bWo1ay2WCIjusBZD9XHGOSA==} engines: {node: '>=10'} cpu: [arm64] os: [linux] @@ -1100,8 +1136,8 @@ packages: dev: true optional: true - /@swc/core-linux-x64-gnu@1.3.66: - resolution: {integrity: sha512-lg8E4O/Pd9KfK0lajdinVMuGME8dSv7V9arhEpmlfGE2eXSDCWqDn5Htk5QVBstt9lt1lsRhWHJ/YYc2eQY30Q==} + /@swc/core-linux-x64-gnu@1.3.78: + resolution: {integrity: sha512-iDxa+RknnTQlyy+WfPor1FM6y44ERNI2E0xiUV6gV6uPwegCngi8LFC+E7IvP6+p+yXtAkesunAaiZ8nn0s+rw==} engines: {node: '>=10'} cpu: [x64] os: [linux] @@ -1109,8 +1145,8 @@ packages: dev: true optional: true - /@swc/core-linux-x64-musl@1.3.66: - resolution: {integrity: sha512-lo8ZcAO/zL2pZWH+LZIyge8u2MklaeuT6+FpVVpBFktMVdYXbaVtzpvWbgRFBZHvL3SRDF+u8jxjtkXhvGUpTw==} + /@swc/core-linux-x64-musl@1.3.78: + resolution: {integrity: sha512-dWtIYUFL5sMTE2UKshkXTusHcK8+zAhhGzvqWq1wJS45pqTlrAbzpyqB780fle880x3A6DMitWmsAFARdNzpuQ==} engines: {node: '>=10'} cpu: [x64] os: [linux] @@ -1118,8 +1154,8 @@ packages: dev: true optional: true - /@swc/core-win32-arm64-msvc@1.3.66: - resolution: {integrity: sha512-cQoVwBuJY5WkHbfpCOlndNwYr1ZThatRjQQvKy540NUIeAEk9Fa6ozlDBtU75UdaWKtUG6YQ/bWz+KTemheVxw==} + /@swc/core-win32-arm64-msvc@1.3.78: + resolution: {integrity: sha512-CXFaGEc2M9Su3UoUMC8AnzKb9g+GwPxXfakLWZsjwS448h6jcreExq3nwtBNdVGzQ26xqeVLMFfb1l/oK99Hwg==} engines: {node: '>=10'} cpu: [arm64] os: [win32] @@ -1127,8 +1163,8 @@ packages: dev: true optional: true - /@swc/core-win32-ia32-msvc@1.3.66: - resolution: {integrity: sha512-y/FrAIINK4UBeUQQknGlWXEyjo+MBvjF7WkUf2KP7sNr9EHHy8+dXohAGd5Anz0eJrqOM1ZXR/GEjxRp7bGQ1Q==} + /@swc/core-win32-ia32-msvc@1.3.78: + resolution: {integrity: sha512-FaH1jwWnJpWkdImpMoiZpMg9oy9UUyZwltzN7hFwjR48e3Li82cRFb+9PifIBHCUSBM+CrrsJXbHP213IMVAyw==} engines: {node: '>=10'} cpu: [ia32] os: [win32] @@ -1136,8 +1172,8 @@ packages: dev: true optional: true - /@swc/core-win32-x64-msvc@1.3.66: - resolution: {integrity: sha512-yI64ACzS14qFLrfyO12qW+f/UROTotzDeEbuyJAaPD2IZexoT1cICznI3sBmIfrSt33mVuW8eF5m3AG/NUImzw==} + /@swc/core-win32-x64-msvc@1.3.78: + resolution: {integrity: sha512-oYxa+tPdhlx1aH14AIoF6kvVjo49tEOW0drNqoEaVHufvgH0y43QU2Jum3b2+xXztmMRtzK2CSN3GPOAXDKKKg==} engines: {node: '>=10'} cpu: [x64] os: [win32] @@ -1145,8 +1181,8 @@ packages: dev: true optional: true - /@swc/core@1.3.66: - resolution: {integrity: sha512-Hpf91kH5ly7fHkWnApwryTQryT+TO4kMMPH3WyciUSQOWLE3UuQz1PtETHQQk7PZ/b1QF0qQurJrgfBr5bSKUA==} + /@swc/core@1.3.78: + resolution: {integrity: sha512-y6DQP571v7fbUUY7nz5G4lNIRGofuO48K5pGhD9VnuOCTuptfooCdi8wnigIrIhM/M4zQ53m/YCMDCbOtDgEww==} engines: {node: '>=10'} requiresBuild: true peerDependencies: @@ -1155,26 +1191,26 @@ packages: '@swc/helpers': optional: true optionalDependencies: - '@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 - dev: true - - /@swc/jest@0.2.26(@swc/core@1.3.66): - resolution: {integrity: sha512-7lAi7q7ShTO3E5Gt1Xqf3pIhRbERxR1DUxvtVa9WKzIB+HGQ7wZP5sYx86zqnaEoKKGhmOoZ7gyW0IRu8Br5+A==} + '@swc/core-darwin-arm64': 1.3.78 + '@swc/core-darwin-x64': 1.3.78 + '@swc/core-linux-arm-gnueabihf': 1.3.78 + '@swc/core-linux-arm64-gnu': 1.3.78 + '@swc/core-linux-arm64-musl': 1.3.78 + '@swc/core-linux-x64-gnu': 1.3.78 + '@swc/core-linux-x64-musl': 1.3.78 + '@swc/core-win32-arm64-msvc': 1.3.78 + '@swc/core-win32-ia32-msvc': 1.3.78 + '@swc/core-win32-x64-msvc': 1.3.78 + dev: true + + /@swc/jest@0.2.29(@swc/core@1.3.78): + resolution: {integrity: sha512-8reh5RvHBsSikDC3WGCd5ZTd2BXKkyOdK7QwynrCH58jk2cQFhhHhFBg/jvnWZehUQe/EoOImLENc9/DwbBFow==} engines: {npm: '>= 7.0.0'} peerDependencies: '@swc/core': '*' dependencies: '@jest/create-cache-key-function': 27.5.1 - '@swc/core': 1.3.66 + '@swc/core': 1.3.78 jsonc-parser: 3.2.0 dev: true @@ -1210,7 +1246,7 @@ packages: /@types/graceful-fs@4.1.5: resolution: {integrity: sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==} dependencies: - '@types/node': 14.18.51 + '@types/node': 14.18.54 dev: true /@types/istanbul-lib-coverage@2.0.4: @@ -1229,8 +1265,8 @@ packages: '@types/istanbul-lib-report': 3.0.0 dev: true - /@types/jest@29.5.2: - resolution: {integrity: sha512-mSoZVJF5YzGVCk+FsDxzDuH7s+SCkzrgKZzf0Z0T2WudhBUPoF6ktoTPC4R0ZoCPCV5xUvuU6ias5NvxcBcMMg==} + /@types/jest@29.5.3: + resolution: {integrity: sha512-1Nq7YrO/vJE/FYnqYyw0FS8LdrjExSgIiHyKg7xPpn+yi8Q4huZryKnkJatN1ZRH89Kw2v33/8ZMB7DuZeSLlA==} dependencies: expect: 29.5.0 pretty-format: 29.5.0 @@ -1240,26 +1276,30 @@ packages: resolution: {integrity: sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==} dev: true - /@types/json5@0.0.29: - resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} + /@types/json-schema@7.0.12: + resolution: {integrity: sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==} dev: true - /@types/lodash@4.14.195: - resolution: {integrity: sha512-Hwx9EUgdwf2GLarOjQp5ZH8ZmblzcbTBC2wtQWNKARBSxM9ezRIAUpeDTgoQRAFB0+8CNWXVA9+MaSOzOF3nPg==} + /@types/json5@0.0.29: + resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} dev: true - /@types/node@14.18.51: - resolution: {integrity: sha512-P9bsdGFPpVtofEKlhWMVS2qqx1A/rt9QBfihWlklfHHpUpjtYse5AzFz6j4DWrARLYh6gRnw9+5+DJcrq3KvBA==} + /@types/lodash@4.14.197: + resolution: {integrity: sha512-BMVOiWs0uNxHVlHBgzTIqJYmj+PgCo4euloGF+5m4okL3rEYzM2EEv78mw8zWSMM57dM7kVIgJ2QDvwHSoCI5g==} dev: true - /@types/prettier@2.7.2: - resolution: {integrity: sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg==} + /@types/node@14.18.54: + resolution: {integrity: sha512-uq7O52wvo2Lggsx1x21tKZgqkJpvwCseBBPtX/nKQfpVlEsLOb11zZ1CRsWUKvJF0+lzuA9jwvA7Pr2Wt7i3xw==} dev: true /@types/semver@7.3.13: resolution: {integrity: sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==} dev: true + /@types/semver@7.5.0: + resolution: {integrity: sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==} + dev: true + /@types/shell-quote@1.7.1: resolution: {integrity: sha512-SWZ2Nom1pkyXCDohRSrkSKvDh8QOG9RfAsrt5/NsPQC4UQJ55eG0qClA40I+Gkez4KTQ0uDUT8ELRXThf3J5jw==} dev: true @@ -1288,62 +1328,56 @@ packages: '@types/yargs-parser': 21.0.0 dev: true - /@typescript-eslint/eslint-plugin@5.60.0(@typescript-eslint/parser@5.60.0)(eslint@8.43.0)(supports-color@8.1.1)(typescript@5.1.3): - resolution: {integrity: sha512-78B+anHLF1TI8Jn/cD0Q00TBYdMgjdOn980JfAVa9yw5sop8nyTfVOQAv6LWywkOGLclDBtv5z3oxN4w7jxyNg==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + /@typescript-eslint/eslint-plugin@6.4.1(@typescript-eslint/parser@6.4.1)(eslint@8.47.0)(supports-color@8.1.1)(typescript@5.1.6): + resolution: {integrity: sha512-3F5PtBzUW0dYlq77Lcqo13fv+58KDwUib3BddilE8ajPJT+faGgxmI9Sw+I8ZS22BYwoir9ZhNXcLi+S+I2bkw==} + engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: - '@typescript-eslint/parser': ^5.0.0 - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha + eslint: ^7.0.0 || ^8.0.0 typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - '@eslint-community/regexpp': 4.4.1 - '@typescript-eslint/parser': 5.60.0(eslint@8.43.0)(supports-color@8.1.1)(typescript@5.1.3) - '@typescript-eslint/scope-manager': 5.60.0 - '@typescript-eslint/type-utils': 5.60.0(eslint@8.43.0)(supports-color@8.1.1)(typescript@5.1.3) - '@typescript-eslint/utils': 5.60.0(eslint@8.43.0)(supports-color@8.1.1)(typescript@5.1.3) + '@eslint-community/regexpp': 4.7.0 + '@typescript-eslint/parser': 6.4.1(eslint@8.47.0)(supports-color@8.1.1)(typescript@5.1.6) + '@typescript-eslint/scope-manager': 6.4.1 + '@typescript-eslint/type-utils': 6.4.1(eslint@8.47.0)(supports-color@8.1.1)(typescript@5.1.6) + '@typescript-eslint/utils': 6.4.1(eslint@8.47.0)(supports-color@8.1.1)(typescript@5.1.6) + '@typescript-eslint/visitor-keys': 6.4.1 debug: 4.3.4(supports-color@8.1.1) - eslint: 8.43.0(supports-color@8.1.1) - grapheme-splitter: 1.0.4 + eslint: 8.47.0(supports-color@8.1.1) + graphemer: 1.4.0 ignore: 5.2.4 - natural-compare-lite: 1.4.0 - semver: 7.3.8 - tsutils: 3.21.0(typescript@5.1.3) - typescript: 5.1.3 + natural-compare: 1.4.0 + semver: 7.5.4 + ts-api-utils: 1.0.2(typescript@5.1.6) + typescript: 5.1.6 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/parser@5.60.0(eslint@8.43.0)(supports-color@8.1.1)(typescript@5.1.3): - resolution: {integrity: sha512-jBONcBsDJ9UoTWrARkRRCgDz6wUggmH5RpQVlt7BimSwaTkTjwypGzKORXbR4/2Hqjk9hgwlon2rVQAjWNpkyQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + /@typescript-eslint/parser@6.4.1(eslint@8.47.0)(supports-color@8.1.1)(typescript@5.1.6): + resolution: {integrity: sha512-610G6KHymg9V7EqOaNBMtD1GgpAmGROsmfHJPXNLCU9bfIuLrkdOygltK784F6Crboyd5tBFayPB7Sf0McrQwg==} + engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + eslint: ^7.0.0 || ^8.0.0 typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - '@typescript-eslint/scope-manager': 5.60.0 - '@typescript-eslint/types': 5.60.0 - '@typescript-eslint/typescript-estree': 5.60.0(supports-color@8.1.1)(typescript@5.1.3) + '@typescript-eslint/scope-manager': 6.4.1 + '@typescript-eslint/types': 6.4.1 + '@typescript-eslint/typescript-estree': 6.4.1(supports-color@8.1.1)(typescript@5.1.6) + '@typescript-eslint/visitor-keys': 6.4.1 debug: 4.3.4(supports-color@8.1.1) - eslint: 8.43.0(supports-color@8.1.1) - typescript: 5.1.3 + eslint: 8.47.0(supports-color@8.1.1) + typescript: 5.1.6 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/scope-manager@5.59.9: - resolution: {integrity: sha512-8RA+E+w78z1+2dzvK/tGZ2cpGigBZ58VMEHDZtpE1v+LLjzrYGc8mMaTONSxKyEkz3IuXFM0IqYiGHlCsmlZxQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - '@typescript-eslint/types': 5.59.9 - '@typescript-eslint/visitor-keys': 5.59.9 - dev: true - /@typescript-eslint/scope-manager@5.60.0: resolution: {integrity: sha512-hakuzcxPwXi2ihf9WQu1BbRj1e/Pd8ZZwVTG9kfbxAMZstKz8/9OoexIwnmLzShtsdap5U/CoQGRCWlSuPbYxQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -1352,38 +1386,46 @@ packages: '@typescript-eslint/visitor-keys': 5.60.0 dev: true - /@typescript-eslint/type-utils@5.60.0(eslint@8.43.0)(supports-color@8.1.1)(typescript@5.1.3): - resolution: {integrity: sha512-X7NsRQddORMYRFH7FWo6sA9Y/zbJ8s1x1RIAtnlj6YprbToTiQnM6vxcMu7iYhdunmoC0rUWlca13D5DVHkK2g==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + /@typescript-eslint/scope-manager@6.4.1: + resolution: {integrity: sha512-p/OavqOQfm4/Hdrr7kvacOSFjwQ2rrDVJRPxt/o0TOWdFnjJptnjnZ+sYDR7fi4OimvIuKp+2LCkc+rt9fIW+A==} + engines: {node: ^16.0.0 || >=18.0.0} + dependencies: + '@typescript-eslint/types': 6.4.1 + '@typescript-eslint/visitor-keys': 6.4.1 + dev: true + + /@typescript-eslint/type-utils@6.4.1(eslint@8.47.0)(supports-color@8.1.1)(typescript@5.1.6): + resolution: {integrity: sha512-7ON8M8NXh73SGZ5XvIqWHjgX2f+vvaOarNliGhjrJnv1vdjG0LVIz+ToYfPirOoBi56jxAKLfsLm40+RvxVVXA==} + engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: - eslint: '*' + eslint: ^7.0.0 || ^8.0.0 typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - '@typescript-eslint/typescript-estree': 5.60.0(supports-color@8.1.1)(typescript@5.1.3) - '@typescript-eslint/utils': 5.60.0(eslint@8.43.0)(supports-color@8.1.1)(typescript@5.1.3) + '@typescript-eslint/typescript-estree': 6.4.1(supports-color@8.1.1)(typescript@5.1.6) + '@typescript-eslint/utils': 6.4.1(eslint@8.47.0)(supports-color@8.1.1)(typescript@5.1.6) debug: 4.3.4(supports-color@8.1.1) - eslint: 8.43.0(supports-color@8.1.1) - tsutils: 3.21.0(typescript@5.1.3) - typescript: 5.1.3 + eslint: 8.47.0(supports-color@8.1.1) + ts-api-utils: 1.0.2(typescript@5.1.6) + typescript: 5.1.6 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/types@5.59.9: - resolution: {integrity: sha512-uW8H5NRgTVneSVTfiCVffBb8AbwWSKg7qcA4Ot3JI3MPCJGsB4Db4BhvAODIIYE5mNj7Q+VJkK7JxmRhk2Lyjw==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dev: true - /@typescript-eslint/types@5.60.0: resolution: {integrity: sha512-ascOuoCpNZBccFVNJRSC6rPq4EmJ2NkuoKnd6LDNyAQmdDnziAtxbCGWCbefG1CNzmDvd05zO36AmB7H8RzKPA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /@typescript-eslint/typescript-estree@5.59.9(supports-color@8.1.1)(typescript@5.1.3): - resolution: {integrity: sha512-pmM0/VQ7kUhd1QyIxgS+aRvMgw+ZljB3eDb+jYyp6d2bC0mQWLzUDF+DLwCTkQ3tlNyVsvZRXjFyV0LkU/aXjA==} + /@typescript-eslint/types@6.4.1: + resolution: {integrity: sha512-zAAopbNuYu++ijY1GV2ylCsQsi3B8QvfPHVqhGdDcbx/NK5lkqMnCGU53amAjccSpk+LfeONxwzUhDzArSfZJg==} + engines: {node: ^16.0.0 || >=18.0.0} + dev: true + + /@typescript-eslint/typescript-estree@5.60.0(supports-color@8.1.1)(typescript@5.1.6): + resolution: {integrity: sha512-R43thAuwarC99SnvrBmh26tc7F6sPa2B3evkXp/8q954kYL6Ro56AwASYWtEEi+4j09GbiNAHqYwNNZuNlARGQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: typescript: '*' @@ -1391,52 +1433,52 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/types': 5.59.9 - '@typescript-eslint/visitor-keys': 5.59.9 + '@typescript-eslint/types': 5.60.0 + '@typescript-eslint/visitor-keys': 5.60.0 debug: 4.3.4(supports-color@8.1.1) globby: 11.1.0 is-glob: 4.0.3 semver: 7.3.8 - tsutils: 3.21.0(typescript@5.1.3) - typescript: 5.1.3 + tsutils: 3.21.0(typescript@5.1.6) + typescript: 5.1.6 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/typescript-estree@5.60.0(supports-color@8.1.1)(typescript@5.1.3): - resolution: {integrity: sha512-R43thAuwarC99SnvrBmh26tc7F6sPa2B3evkXp/8q954kYL6Ro56AwASYWtEEi+4j09GbiNAHqYwNNZuNlARGQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + /@typescript-eslint/typescript-estree@6.4.1(supports-color@8.1.1)(typescript@5.1.6): + resolution: {integrity: sha512-xF6Y7SatVE/OyV93h1xGgfOkHr2iXuo8ip0gbfzaKeGGuKiAnzS+HtVhSPx8Www243bwlW8IF7X0/B62SzFftg==} + engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - '@typescript-eslint/types': 5.60.0 - '@typescript-eslint/visitor-keys': 5.60.0 + '@typescript-eslint/types': 6.4.1 + '@typescript-eslint/visitor-keys': 6.4.1 debug: 4.3.4(supports-color@8.1.1) globby: 11.1.0 is-glob: 4.0.3 - semver: 7.3.8 - tsutils: 3.21.0(typescript@5.1.3) - typescript: 5.1.3 + semver: 7.5.4 + ts-api-utils: 1.0.2(typescript@5.1.6) + typescript: 5.1.6 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/utils@5.59.9(eslint@8.43.0)(supports-color@8.1.1)(typescript@5.1.3): - resolution: {integrity: sha512-1PuMYsju/38I5Ggblaeb98TOoUvjhRvLpLa1DoTOFaLWqaXl/1iQ1eGurTXgBY58NUdtfTXKP5xBq7q9NDaLKg==} + /@typescript-eslint/utils@5.60.0(eslint@8.47.0)(supports-color@8.1.1)(typescript@5.1.6): + resolution: {integrity: sha512-ba51uMqDtfLQ5+xHtwlO84vkdjrqNzOnqrnwbMHMRY8Tqeme8C2Q8Fc7LajfGR+e3/4LoYiWXUM6BpIIbHJ4hQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.43.0) + '@eslint-community/eslint-utils': 4.4.0(eslint@8.47.0) '@types/json-schema': 7.0.11 '@types/semver': 7.3.13 - '@typescript-eslint/scope-manager': 5.59.9 - '@typescript-eslint/types': 5.59.9 - '@typescript-eslint/typescript-estree': 5.59.9(supports-color@8.1.1)(typescript@5.1.3) - eslint: 8.43.0(supports-color@8.1.1) + '@typescript-eslint/scope-manager': 5.60.0 + '@typescript-eslint/types': 5.60.0 + '@typescript-eslint/typescript-estree': 5.60.0(supports-color@8.1.1)(typescript@5.1.6) + eslint: 8.47.0(supports-color@8.1.1) eslint-scope: 5.1.1 semver: 7.3.8 transitivePeerDependencies: @@ -1444,64 +1486,55 @@ packages: - typescript dev: true - /@typescript-eslint/utils@5.60.0(eslint@8.43.0)(supports-color@8.1.1)(typescript@5.1.3): - resolution: {integrity: sha512-ba51uMqDtfLQ5+xHtwlO84vkdjrqNzOnqrnwbMHMRY8Tqeme8C2Q8Fc7LajfGR+e3/4LoYiWXUM6BpIIbHJ4hQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + /@typescript-eslint/utils@6.4.1(eslint@8.47.0)(supports-color@8.1.1)(typescript@5.1.6): + resolution: {integrity: sha512-F/6r2RieNeorU0zhqZNv89s9bDZSovv3bZQpUNOmmQK1L80/cV4KEu95YUJWi75u5PhboFoKUJBnZ4FQcoqhDw==} + engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + eslint: ^7.0.0 || ^8.0.0 dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.43.0) - '@types/json-schema': 7.0.11 - '@types/semver': 7.3.13 - '@typescript-eslint/scope-manager': 5.60.0 - '@typescript-eslint/types': 5.60.0 - '@typescript-eslint/typescript-estree': 5.60.0(supports-color@8.1.1)(typescript@5.1.3) - eslint: 8.43.0(supports-color@8.1.1) - eslint-scope: 5.1.1 - semver: 7.3.8 + '@eslint-community/eslint-utils': 4.4.0(eslint@8.47.0) + '@types/json-schema': 7.0.12 + '@types/semver': 7.5.0 + '@typescript-eslint/scope-manager': 6.4.1 + '@typescript-eslint/types': 6.4.1 + '@typescript-eslint/typescript-estree': 6.4.1(supports-color@8.1.1)(typescript@5.1.6) + eslint: 8.47.0(supports-color@8.1.1) + semver: 7.5.4 transitivePeerDependencies: - supports-color - typescript dev: true - /@typescript-eslint/visitor-keys@5.59.9: - resolution: {integrity: sha512-bT7s0td97KMaLwpEBckbzj/YohnvXtqbe2XgqNvTl6RJVakY5mvENOTPvw5u66nljfZxthESpDozs86U+oLY8Q==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - '@typescript-eslint/types': 5.59.9 - eslint-visitor-keys: 3.4.1 - dev: true - /@typescript-eslint/visitor-keys@5.60.0: resolution: {integrity: sha512-wm9Uz71SbCyhUKgcaPRauBdTegUyY/ZWl8gLwD/i/ybJqscrrdVSFImpvUz16BLPChIeKBK5Fa9s6KDQjsjyWw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: '@typescript-eslint/types': 5.60.0 - eslint-visitor-keys: 3.4.1 + eslint-visitor-keys: 3.4.3 + dev: true + + /@typescript-eslint/visitor-keys@6.4.1: + resolution: {integrity: sha512-y/TyRJsbZPkJIZQXrHfdnxVnxyKegnpEvnRGNam7s3TRR2ykGefEWOhaef00/UUN3IZxizS7BTO3svd3lCOJRQ==} + engines: {node: ^16.0.0 || >=18.0.0} + dependencies: + '@typescript-eslint/types': 6.4.1 + eslint-visitor-keys: 3.4.3 dev: true - /acorn-jsx@5.3.2(acorn@8.8.1): + /acorn-jsx@5.3.2(acorn@8.10.0): resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: - acorn: 8.8.1 + acorn: 8.10.0 dev: true - /acorn@8.8.1: - resolution: {integrity: sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==} + /acorn@8.10.0: + resolution: {integrity: sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==} engines: {node: '>=0.4.0'} hasBin: true dev: true - /aggregate-error@3.1.0: - resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} - engines: {node: '>=8'} - dependencies: - clean-stack: 2.2.0 - indent-string: 4.0.0 - dev: true - /ajv@6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} dependencies: @@ -1518,6 +1551,13 @@ packages: type-fest: 0.21.3 dev: true + /ansi-escapes@5.0.0: + resolution: {integrity: sha512-5GFMVX8HqE/TB+FuBJGuO5XG0WrsA6ptUqoODaT/n9mmUaZFkqnBueB4leqGBCmrUHnCnC4PCZTCd0E7QQ83bA==} + engines: {node: '>=12'} + dependencies: + type-fest: 1.4.0 + dev: true + /ansi-regex@5.0.1: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} @@ -1568,6 +1608,13 @@ packages: resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} dev: true + /array-buffer-byte-length@1.0.0: + resolution: {integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==} + dependencies: + call-bind: 1.0.2 + is-array-buffer: 3.0.2 + dev: true + /array-includes@3.1.6: resolution: {integrity: sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==} engines: {node: '>= 0.4'} @@ -1584,6 +1631,17 @@ packages: engines: {node: '>=8'} dev: true + /array.prototype.findlastindex@1.2.2: + resolution: {integrity: sha512-tb5thFFlUcp7NdNF6/MpDk/1r/4awWG1FIz3YqDf+/zJSTezBb+/5WViH41obXULHVpDzoiCLpJ/ZO9YbJMsdw==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + define-properties: 1.1.4 + es-abstract: 1.20.5 + es-shim-unscopables: 1.0.0 + get-intrinsic: 1.1.3 + dev: true + /array.prototype.flat@1.3.1: resolution: {integrity: sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==} engines: {node: '>= 0.4'} @@ -1604,26 +1662,38 @@ packages: es-shim-unscopables: 1.0.0 dev: true - /astral-regex@2.0.0: - resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==} - engines: {node: '>=8'} + /arraybuffer.prototype.slice@1.0.1: + resolution: {integrity: sha512-09x0ZWFEjj4WD8PDbykUwo3t9arLn8NIzmmYEJFpYekOAQjpkGSyrQhNoRTcwwcFRu+ycWF78QZ63oWTqSjBcw==} + engines: {node: '>= 0.4'} + dependencies: + array-buffer-byte-length: 1.0.0 + call-bind: 1.0.2 + define-properties: 1.2.0 + get-intrinsic: 1.2.1 + is-array-buffer: 3.0.2 + is-shared-array-buffer: 1.0.2 dev: true /asynckit@0.4.0: resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} dev: true - /babel-jest@29.5.0(@babel/core@7.20.7)(supports-color@8.1.1): - resolution: {integrity: sha512-mA4eCDh5mSo2EcA9xQjVTpmbbNk32Zb3Q3QFQsNhaK56Q+yoXowzFodLux30HRgyOho5rsQ6B0P9QpMkvvnJ0Q==} + /available-typed-arrays@1.0.5: + resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} + engines: {node: '>= 0.4'} + dev: true + + /babel-jest@29.6.3(@babel/core@7.20.7)(supports-color@8.1.1): + resolution: {integrity: sha512-1Ne93zZZEy5XmTa4Q+W5+zxBrDpExX8E3iy+xJJ+24ewlfo/T3qHfQJCzi/MMVFmBQDNxtRR/Gfd2dwb/0yrQw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} peerDependencies: '@babel/core': ^7.8.0 dependencies: '@babel/core': 7.20.7(supports-color@8.1.1) - '@jest/transform': 29.5.0(supports-color@8.1.1) + '@jest/transform': 29.6.3(supports-color@8.1.1) '@types/babel__core': 7.1.20 babel-plugin-istanbul: 6.1.1(supports-color@8.1.1) - babel-preset-jest: 29.5.0(@babel/core@7.20.7) + babel-preset-jest: 29.6.3(@babel/core@7.20.7) chalk: 4.1.2 graceful-fs: 4.2.10 slash: 3.0.0 @@ -1644,8 +1714,8 @@ packages: - supports-color dev: true - /babel-plugin-jest-hoist@29.5.0: - resolution: {integrity: sha512-zSuuuAlTMT4mzLj2nPnUm6fsE6270vdOfnpbJ+RmruU75UhLFvL0N2NgI7xpeS7NaB6hGqmd5pVpGTDYvi4Q3w==} + /babel-plugin-jest-hoist@29.6.3: + resolution: {integrity: sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: '@babel/template': 7.20.7 @@ -1674,14 +1744,14 @@ packages: '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.20.7) dev: true - /babel-preset-jest@29.5.0(@babel/core@7.20.7): - resolution: {integrity: sha512-JOMloxOqdiBSxMAzjRaH023/vvcaSaec49zvg+2LmNsktC7ei39LTJGw02J+9uUtTZUq6xbLyJ4dxe9sSmIuAg==} + /babel-preset-jest@29.6.3(@babel/core@7.20.7): + resolution: {integrity: sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} peerDependencies: '@babel/core': ^7.0.0 dependencies: '@babel/core': 7.20.7(supports-color@8.1.1) - babel-plugin-jest-hoist: 29.5.0 + babel-plugin-jest-hoist: 29.6.3 babel-preset-current-node-syntax: 1.0.1(@babel/core@7.20.7) dev: true @@ -1689,6 +1759,18 @@ packages: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} dev: true + /big-integer@1.6.51: + resolution: {integrity: sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==} + engines: {node: '>=0.6'} + dev: true + + /bplist-parser@0.2.0: + resolution: {integrity: sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==} + engines: {node: '>= 5.10.0'} + dependencies: + big-integer: 1.6.51 + dev: true + /brace-expansion@1.1.11: resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} dependencies: @@ -1724,11 +1806,18 @@ packages: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} dev: true + /bundle-name@3.0.0: + resolution: {integrity: sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw==} + engines: {node: '>=12'} + dependencies: + run-applescript: 5.0.0 + dev: true + /call-bind@1.0.2: resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==} dependencies: function-bind: 1.1.1 - get-intrinsic: 1.1.3 + get-intrinsic: 1.2.1 dev: true /callsites@3.1.0: @@ -1766,8 +1855,8 @@ packages: ansi-styles: 4.3.0 supports-color: 7.2.0 - /chalk@5.2.0: - resolution: {integrity: sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==} + /chalk@5.3.0: + resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==} engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} dev: true @@ -1785,24 +1874,11 @@ packages: resolution: {integrity: sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==} dev: true - /clean-stack@2.2.0: - resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} - engines: {node: '>=6'} - dev: true - - /cli-cursor@3.1.0: - resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==} - engines: {node: '>=8'} - dependencies: - restore-cursor: 3.1.0 - dev: true - - /cli-truncate@2.1.0: - resolution: {integrity: sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==} - engines: {node: '>=8'} + /cli-cursor@4.0.0: + resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: - slice-ansi: 3.0.0 - string-width: 4.2.3 + restore-cursor: 4.0.0 dev: true /cli-truncate@3.1.0: @@ -1849,8 +1925,8 @@ packages: /color-name@1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} - /colorette@2.0.19: - resolution: {integrity: sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==} + /colorette@2.0.20: + resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} dev: true /combined-stream@1.0.8: @@ -1860,9 +1936,9 @@ packages: delayed-stream: 1.0.0 dev: true - /commander@10.0.0: - resolution: {integrity: sha512-zS5PnTI22FIRM6ylNW8G4Ap0IEOyk62fhLSD0+uHRT9McRCLGpkVNvao4bjimpK/GShynyQkFFxHhwMcETmduA==} - engines: {node: '>=14'} + /commander@11.0.0: + resolution: {integrity: sha512-9HMlXtt/BNoYr8ooyjjNRdIilOTkVJXB+GhxMTtOKwk0R4j4lS4NpjuqmRxroBfnfTSHQIHQB7wryHhXarNjmQ==} + engines: {node: '>=16'} dev: true /concat-map@0.0.1: @@ -1955,8 +2031,13 @@ packages: supports-color: 8.1.1 dev: true - /dedent@0.7.0: - resolution: {integrity: sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==} + /dedent@1.5.1: + resolution: {integrity: sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg==} + peerDependencies: + babel-plugin-macros: ^3.1.0 + peerDependenciesMeta: + babel-plugin-macros: + optional: true dev: true /deep-is@0.1.4: @@ -1968,6 +2049,29 @@ packages: engines: {node: '>=0.10.0'} dev: true + /default-browser-id@3.0.0: + resolution: {integrity: sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==} + engines: {node: '>=12'} + dependencies: + bplist-parser: 0.2.0 + untildify: 4.0.0 + dev: true + + /default-browser@4.0.0: + resolution: {integrity: sha512-wX5pXO1+BrhMkSbROFsyxUm0i/cJEScyNhA4PPxc41ICuv05ZZB/MX28s8aZx6xjmatvebIapF6hLEKEcpneUA==} + engines: {node: '>=14.16'} + dependencies: + bundle-name: 3.0.0 + default-browser-id: 3.0.0 + execa: 7.2.0 + titleize: 3.0.0 + dev: true + + /define-lazy-prop@3.0.0: + resolution: {integrity: sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==} + engines: {node: '>=12'} + dev: true + /define-properties@1.1.4: resolution: {integrity: sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==} engines: {node: '>= 0.4'} @@ -1976,6 +2080,14 @@ packages: object-keys: 1.1.1 dev: true + /define-properties@1.2.0: + resolution: {integrity: sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==} + engines: {node: '>= 0.4'} + dependencies: + has-property-descriptors: 1.0.0 + object-keys: 1.1.1 + dev: true + /delayed-stream@1.0.0: resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} engines: {node: '>=0.4.0'} @@ -1991,6 +2103,11 @@ packages: engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dev: true + /diff-sequences@29.6.3: + resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dev: true + /dir-glob@3.0.1: resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} engines: {node: '>=8'} @@ -2046,7 +2163,7 @@ packages: es-to-primitive: 1.2.1 function-bind: 1.1.1 function.prototype.name: 1.1.5 - get-intrinsic: 1.1.3 + get-intrinsic: 1.2.1 get-symbol-description: 1.0.0 gopd: 1.0.1 has: 1.0.3 @@ -2069,6 +2186,60 @@ packages: unbox-primitive: 1.0.2 dev: true + /es-abstract@1.22.1: + resolution: {integrity: sha512-ioRRcXMO6OFyRpyzV3kE1IIBd4WG5/kltnzdxSCqoP8CMGs/Li+M1uF5o7lOkZVFjDs+NLesthnF66Pg/0q0Lw==} + engines: {node: '>= 0.4'} + dependencies: + array-buffer-byte-length: 1.0.0 + arraybuffer.prototype.slice: 1.0.1 + available-typed-arrays: 1.0.5 + call-bind: 1.0.2 + es-set-tostringtag: 2.0.1 + es-to-primitive: 1.2.1 + function.prototype.name: 1.1.5 + get-intrinsic: 1.2.1 + get-symbol-description: 1.0.0 + globalthis: 1.0.3 + gopd: 1.0.1 + has: 1.0.3 + has-property-descriptors: 1.0.0 + has-proto: 1.0.1 + has-symbols: 1.0.3 + internal-slot: 1.0.5 + is-array-buffer: 3.0.2 + is-callable: 1.2.7 + is-negative-zero: 2.0.2 + is-regex: 1.1.4 + is-shared-array-buffer: 1.0.2 + is-string: 1.0.7 + is-typed-array: 1.1.12 + is-weakref: 1.0.2 + object-inspect: 1.12.3 + object-keys: 1.1.1 + object.assign: 4.1.4 + regexp.prototype.flags: 1.5.0 + safe-array-concat: 1.0.0 + safe-regex-test: 1.0.0 + string.prototype.trim: 1.2.7 + string.prototype.trimend: 1.0.6 + string.prototype.trimstart: 1.0.6 + typed-array-buffer: 1.0.0 + typed-array-byte-length: 1.0.0 + typed-array-byte-offset: 1.0.0 + typed-array-length: 1.0.4 + unbox-primitive: 1.0.2 + which-typed-array: 1.1.11 + dev: true + + /es-set-tostringtag@2.0.1: + resolution: {integrity: sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==} + engines: {node: '>= 0.4'} + dependencies: + get-intrinsic: 1.2.1 + has: 1.0.3 + has-tostringtag: 1.0.0 + dev: true + /es-shim-unscopables@1.0.0: resolution: {integrity: sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==} dependencies: @@ -2084,34 +2255,34 @@ packages: is-symbol: 1.0.4 dev: true - /esbuild@0.18.7: - resolution: {integrity: sha512-46V0EFvQ/urmruUCChD1e0SZJWM0Ulny5F+uf5QkBry97HfvgvZTnjpTrwmw0+CGRhqTh9zpFeB+W8WGIEXOAQ==} + /esbuild@0.19.2: + resolution: {integrity: sha512-G6hPax8UbFakEj3hWO0Vs52LQ8k3lnBhxZWomUJDxfz3rZTLqF5k/FCzuNdLx2RbpBiQQF9H9onlDDH1lZsnjg==} engines: {node: '>=12'} hasBin: true requiresBuild: true optionalDependencies: - '@esbuild/android-arm': 0.18.7 - '@esbuild/android-arm64': 0.18.7 - '@esbuild/android-x64': 0.18.7 - '@esbuild/darwin-arm64': 0.18.7 - '@esbuild/darwin-x64': 0.18.7 - '@esbuild/freebsd-arm64': 0.18.7 - '@esbuild/freebsd-x64': 0.18.7 - '@esbuild/linux-arm': 0.18.7 - '@esbuild/linux-arm64': 0.18.7 - '@esbuild/linux-ia32': 0.18.7 - '@esbuild/linux-loong64': 0.18.7 - '@esbuild/linux-mips64el': 0.18.7 - '@esbuild/linux-ppc64': 0.18.7 - '@esbuild/linux-riscv64': 0.18.7 - '@esbuild/linux-s390x': 0.18.7 - '@esbuild/linux-x64': 0.18.7 - '@esbuild/netbsd-x64': 0.18.7 - '@esbuild/openbsd-x64': 0.18.7 - '@esbuild/sunos-x64': 0.18.7 - '@esbuild/win32-arm64': 0.18.7 - '@esbuild/win32-ia32': 0.18.7 - '@esbuild/win32-x64': 0.18.7 + '@esbuild/android-arm': 0.19.2 + '@esbuild/android-arm64': 0.19.2 + '@esbuild/android-x64': 0.19.2 + '@esbuild/darwin-arm64': 0.19.2 + '@esbuild/darwin-x64': 0.19.2 + '@esbuild/freebsd-arm64': 0.19.2 + '@esbuild/freebsd-x64': 0.19.2 + '@esbuild/linux-arm': 0.19.2 + '@esbuild/linux-arm64': 0.19.2 + '@esbuild/linux-ia32': 0.19.2 + '@esbuild/linux-loong64': 0.19.2 + '@esbuild/linux-mips64el': 0.19.2 + '@esbuild/linux-ppc64': 0.19.2 + '@esbuild/linux-riscv64': 0.19.2 + '@esbuild/linux-s390x': 0.19.2 + '@esbuild/linux-x64': 0.19.2 + '@esbuild/netbsd-x64': 0.19.2 + '@esbuild/openbsd-x64': 0.19.2 + '@esbuild/sunos-x64': 0.19.2 + '@esbuild/win32-arm64': 0.19.2 + '@esbuild/win32-ia32': 0.19.2 + '@esbuild/win32-x64': 0.19.2 dev: true /escalade@3.1.1: @@ -2133,27 +2304,27 @@ packages: engines: {node: '>=10'} dev: true - /eslint-config-prettier@8.8.0(eslint@8.43.0): - resolution: {integrity: sha512-wLbQiFre3tdGgpDv67NQKnJuTlcUVYHas3k+DZCc2U2BadthoEY4B7hLPvAxaqdyOGCzuLfii2fqGph10va7oA==} + /eslint-config-prettier@9.0.0(eslint@8.47.0): + resolution: {integrity: sha512-IcJsTkJae2S35pRsRAwoCE+925rJJStOdkKnLVgtE+tEpqU0EVVM7OqrwxqgptKdX29NUwC82I5pXsGFIgSevw==} hasBin: true peerDependencies: eslint: '>=7.0.0' dependencies: - eslint: 8.43.0(supports-color@8.1.1) + eslint: 8.47.0(supports-color@8.1.1) dev: true /eslint-import-resolver-node@0.3.7(supports-color@8.1.1): resolution: {integrity: sha512-gozW2blMLJCeFpBwugLTGyvVjNoeo1knonXAcatC6bjPBZitotxdWf7Gimr25N4c0AAOo4eOUfaG82IJPDpqCA==} dependencies: debug: 3.2.7(supports-color@8.1.1) - is-core-module: 2.11.0 + is-core-module: 2.13.0 resolve: 1.22.1 transitivePeerDependencies: - supports-color dev: true - /eslint-module-utils@2.7.4(@typescript-eslint/parser@5.60.0)(eslint-import-resolver-node@0.3.7)(eslint@8.43.0)(supports-color@8.1.1): - resolution: {integrity: sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA==} + /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.4.1)(eslint-import-resolver-node@0.3.7)(eslint@8.47.0)(supports-color@8.1.1): + resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==} engines: {node: '>=4'} peerDependencies: '@typescript-eslint/parser': '*' @@ -2173,16 +2344,16 @@ packages: eslint-import-resolver-webpack: optional: true dependencies: - '@typescript-eslint/parser': 5.60.0(eslint@8.43.0)(supports-color@8.1.1)(typescript@5.1.3) + '@typescript-eslint/parser': 6.4.1(eslint@8.47.0)(supports-color@8.1.1)(typescript@5.1.6) debug: 3.2.7(supports-color@8.1.1) - eslint: 8.43.0(supports-color@8.1.1) + eslint: 8.47.0(supports-color@8.1.1) eslint-import-resolver-node: 0.3.7(supports-color@8.1.1) transitivePeerDependencies: - supports-color dev: true - /eslint-plugin-import@2.27.5(@typescript-eslint/parser@5.60.0)(eslint@8.43.0)(supports-color@8.1.1): - resolution: {integrity: sha512-LmEt3GVofgiGuiE+ORpnvP+kAm3h6MLZJ4Q5HCyHADofsb4VzXFsRiWj3c0OFiV+3DWFh0qg3v9gcPlfc3zRow==} + /eslint-plugin-import@2.28.1(@typescript-eslint/parser@6.4.1)(eslint@8.47.0)(supports-color@8.1.1): + resolution: {integrity: sha512-9I9hFlITvOV55alzoKBI+K9q74kv0iKMeY6av5+umsNwayt59fz692daGyjR+oStBQgx6nwR9rXldDev3Clw+A==} engines: {node: '>=4'} peerDependencies: '@typescript-eslint/parser': '*' @@ -2191,34 +2362,36 @@ packages: '@typescript-eslint/parser': optional: true dependencies: - '@typescript-eslint/parser': 5.60.0(eslint@8.43.0)(supports-color@8.1.1)(typescript@5.1.3) + '@typescript-eslint/parser': 6.4.1(eslint@8.47.0)(supports-color@8.1.1)(typescript@5.1.6) array-includes: 3.1.6 + array.prototype.findlastindex: 1.2.2 array.prototype.flat: 1.3.1 array.prototype.flatmap: 1.3.1 debug: 3.2.7(supports-color@8.1.1) doctrine: 2.1.0 - eslint: 8.43.0(supports-color@8.1.1) + eslint: 8.47.0(supports-color@8.1.1) eslint-import-resolver-node: 0.3.7(supports-color@8.1.1) - eslint-module-utils: 2.7.4(@typescript-eslint/parser@5.60.0)(eslint-import-resolver-node@0.3.7)(eslint@8.43.0)(supports-color@8.1.1) + eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.4.1)(eslint-import-resolver-node@0.3.7)(eslint@8.47.0)(supports-color@8.1.1) has: 1.0.3 - is-core-module: 2.11.0 + is-core-module: 2.13.0 is-glob: 4.0.3 minimatch: 3.1.2 + object.fromentries: 2.0.6 + object.groupby: 1.0.0 object.values: 1.1.6 - resolve: 1.22.1 - semver: 6.3.0 - tsconfig-paths: 3.14.1 + semver: 6.3.1 + tsconfig-paths: 3.14.2 transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack - supports-color dev: true - /eslint-plugin-jest@27.2.2(@typescript-eslint/eslint-plugin@5.60.0)(eslint@8.43.0)(jest@29.5.0)(supports-color@8.1.1)(typescript@5.1.3): - resolution: {integrity: sha512-euzbp06F934Z7UDl5ZUaRPLAc9MKjh0rMPERrHT7UhlCEwgb25kBj37TvMgWeHZVkR5I9CayswrpoaqZU1RImw==} + /eslint-plugin-jest@27.2.3(@typescript-eslint/eslint-plugin@6.4.1)(eslint@8.47.0)(jest@29.6.3)(supports-color@8.1.1)(typescript@5.1.6): + resolution: {integrity: sha512-sRLlSCpICzWuje66Gl9zvdF6mwD5X86I4u55hJyFBsxYOsBCmT5+kSUjf+fkFWVMMgpzNEupjW8WzUqi83hJAQ==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} peerDependencies: - '@typescript-eslint/eslint-plugin': ^5.0.0 + '@typescript-eslint/eslint-plugin': ^5.0.0 || ^6.0.0 eslint: ^7.0.0 || ^8.0.0 jest: '*' peerDependenciesMeta: @@ -2227,38 +2400,42 @@ packages: jest: optional: true dependencies: - '@typescript-eslint/eslint-plugin': 5.60.0(@typescript-eslint/parser@5.60.0)(eslint@8.43.0)(supports-color@8.1.1)(typescript@5.1.3) - '@typescript-eslint/utils': 5.59.9(eslint@8.43.0)(supports-color@8.1.1)(typescript@5.1.3) - eslint: 8.43.0(supports-color@8.1.1) - jest: 29.5.0(@types/node@14.18.51)(supports-color@8.1.1) + '@typescript-eslint/eslint-plugin': 6.4.1(@typescript-eslint/parser@6.4.1)(eslint@8.47.0)(supports-color@8.1.1)(typescript@5.1.6) + '@typescript-eslint/utils': 5.60.0(eslint@8.47.0)(supports-color@8.1.1)(typescript@5.1.6) + eslint: 8.47.0(supports-color@8.1.1) + jest: 29.6.3(@types/node@14.18.54)(supports-color@8.1.1) transitivePeerDependencies: - supports-color - typescript dev: true - /eslint-plugin-prettier@4.2.1(eslint-config-prettier@8.8.0)(eslint@8.43.0)(prettier@2.8.8): - resolution: {integrity: sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==} - engines: {node: '>=12.0.0'} + /eslint-plugin-prettier@5.0.0(eslint-config-prettier@9.0.0)(eslint@8.47.0)(prettier@3.0.2): + resolution: {integrity: sha512-AgaZCVuYDXHUGxj/ZGu1u8H8CYgDY3iG6w5kUFw4AzMVXzB7VvbKgYR4nATIN+OvUrghMbiDLeimVjVY5ilq3w==} + engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: - eslint: '>=7.28.0' + '@types/eslint': '>=8.0.0' + eslint: '>=8.0.0' eslint-config-prettier: '*' - prettier: '>=2.0.0' + prettier: '>=3.0.0' peerDependenciesMeta: + '@types/eslint': + optional: true eslint-config-prettier: optional: true dependencies: - eslint: 8.43.0(supports-color@8.1.1) - eslint-config-prettier: 8.8.0(eslint@8.43.0) - prettier: 2.8.8 + eslint: 8.47.0(supports-color@8.1.1) + eslint-config-prettier: 9.0.0(eslint@8.47.0) + prettier: 3.0.2 prettier-linter-helpers: 1.0.0 + synckit: 0.8.5 dev: true - /eslint-plugin-simple-import-sort@10.0.0(eslint@8.43.0): + /eslint-plugin-simple-import-sort@10.0.0(eslint@8.47.0): resolution: {integrity: sha512-AeTvO9UCMSNzIHRkg8S6c3RPy5YEwKWSQPx3DYghLedo2ZQxowPFLGDN1AZ2evfg6r6mjBSZSLxLFsWSu3acsw==} peerDependencies: eslint: '>=5.0.0' dependencies: - eslint: 8.43.0(supports-color@8.1.1) + eslint: 8.47.0(supports-color@8.1.1) dev: true /eslint-scope@5.1.1: @@ -2269,28 +2446,28 @@ packages: estraverse: 4.3.0 dev: true - /eslint-scope@7.2.0: - resolution: {integrity: sha512-DYj5deGlHBfMt15J7rdtyKNq/Nqlv5KfU4iodrQ019XESsRnwXH9KAE0y3cwtUHDo2ob7CypAnCqefh6vioWRw==} + /eslint-scope@7.2.2: + resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: esrecurse: 4.3.0 estraverse: 5.3.0 dev: true - /eslint-visitor-keys@3.4.1: - resolution: {integrity: sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==} + /eslint-visitor-keys@3.4.3: + resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /eslint@8.43.0(supports-color@8.1.1): - resolution: {integrity: sha512-aaCpf2JqqKesMFGgmRPessmVKjcGXqdlAYLLC3THM8t5nBRZRQ+st5WM/hoJXkdioEXLLbXgclUpM0TXo5HX5Q==} + /eslint@8.47.0(supports-color@8.1.1): + resolution: {integrity: sha512-spUQWrdPt+pRVP1TTJLmfRNJJHHZryFmptzcafwSvHsceV81djHOdnEeDmkdotZyLNjDhrOasNK8nikkoG1O8Q==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} hasBin: true dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.43.0) - '@eslint-community/regexpp': 4.4.1 - '@eslint/eslintrc': 2.0.3(supports-color@8.1.1) - '@eslint/js': 8.43.0 + '@eslint-community/eslint-utils': 4.4.0(eslint@8.47.0) + '@eslint-community/regexpp': 4.7.0 + '@eslint/eslintrc': 2.1.2(supports-color@8.1.1) + '@eslint/js': 8.47.0 '@humanwhocodes/config-array': 0.11.10(supports-color@8.1.1) '@humanwhocodes/module-importer': 1.0.1 '@nodelib/fs.walk': 1.2.8 @@ -2300,9 +2477,9 @@ packages: debug: 4.3.4(supports-color@8.1.1) doctrine: 3.0.0 escape-string-regexp: 4.0.0 - eslint-scope: 7.2.0 - eslint-visitor-keys: 3.4.1 - espree: 9.5.2 + eslint-scope: 7.2.2 + eslint-visitor-keys: 3.4.3 + espree: 9.6.1 esquery: 1.5.0 esutils: 2.0.3 fast-deep-equal: 3.1.3 @@ -2312,7 +2489,6 @@ packages: globals: 13.19.0 graphemer: 1.4.0 ignore: 5.2.4 - import-fresh: 3.3.0 imurmurhash: 0.1.4 is-glob: 4.0.3 is-path-inside: 3.0.3 @@ -2322,21 +2498,20 @@ packages: lodash.merge: 4.6.2 minimatch: 3.1.2 natural-compare: 1.4.0 - optionator: 0.9.1 + optionator: 0.9.3 strip-ansi: 6.0.1 - strip-json-comments: 3.1.1 text-table: 0.2.0 transitivePeerDependencies: - supports-color dev: true - /espree@9.5.2: - resolution: {integrity: sha512-7OASN1Wma5fum5SrNhFMAMJxOUAbhyfQ8dQ//PJaJbNw0URTPWqIghHWt1MmAANKhHZIYOHruW4Kw4ruUWOdGw==} + /espree@9.6.1: + resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: - acorn: 8.8.1 - acorn-jsx: 5.3.2(acorn@8.8.1) - eslint-visitor-keys: 3.4.1 + acorn: 8.10.0 + acorn-jsx: 5.3.2(acorn@8.10.0) + eslint-visitor-keys: 3.4.3 dev: true /esprima@4.0.1: @@ -2374,6 +2549,10 @@ packages: engines: {node: '>=0.10.0'} dev: true + /eventemitter3@5.0.1: + resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} + dev: true + /execa@5.1.1: resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} engines: {node: '>=10'} @@ -2389,8 +2568,8 @@ packages: strip-final-newline: 2.0.0 dev: true - /execa@7.1.1: - resolution: {integrity: sha512-wH0eMf/UXckdUYnO21+HDztteVv05rq2GXksxT4fCGeHkBhw1DROXh40wcjMcRqDOWE7iPJ4n3M7e2+YFP+76Q==} + /execa@7.2.0: + resolution: {integrity: sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==} engines: {node: ^14.18.0 || ^16.14.0 || >=18.0.0} dependencies: cross-spawn: 7.0.3 @@ -2420,6 +2599,17 @@ packages: jest-util: 29.5.0 dev: true + /expect@29.6.3: + resolution: {integrity: sha512-x1vY4LlEMWUYVZQrFi4ZANXFwqYbJ/JNQspLVvzhW2BNY28aNcXMQH6imBbt+RBf5sVRTodYHXtSP/TLEU0Dxw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/expect-utils': 29.6.3 + jest-get-type: 29.6.3 + jest-matcher-utils: 29.6.3 + jest-message-util: 29.6.3 + jest-util: 29.6.3 + dev: true + /fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} dev: true @@ -2439,6 +2629,17 @@ packages: micromatch: 4.0.5 dev: true + /fast-glob@3.3.1: + resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==} + engines: {node: '>=8.6.0'} + dependencies: + '@nodelib/fs.stat': 2.0.5 + '@nodelib/fs.walk': 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.5 + dev: true + /fast-json-stable-stringify@2.1.0: resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} dev: true @@ -2501,6 +2702,12 @@ packages: resolution: {integrity: sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==} dev: true + /for-each@0.3.3: + resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} + dependencies: + is-callable: 1.2.7 + dev: true + /form-data@4.0.0: resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} engines: {node: '>= 6'} @@ -2531,8 +2738,8 @@ packages: engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - define-properties: 1.1.4 - es-abstract: 1.20.5 + define-properties: 1.2.0 + es-abstract: 1.22.1 functions-have-names: 1.2.3 dev: true @@ -2557,6 +2764,15 @@ packages: has-symbols: 1.0.3 dev: true + /get-intrinsic@1.2.1: + resolution: {integrity: sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==} + dependencies: + function-bind: 1.1.1 + has: 1.0.3 + has-proto: 1.0.1 + has-symbols: 1.0.3 + dev: true + /get-package-type@0.1.0: resolution: {integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==} engines: {node: '>=8.0.0'} @@ -2572,7 +2788,7 @@ packages: engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - get-intrinsic: 1.1.3 + get-intrinsic: 1.2.1 dev: true /glob-parent@5.1.2: @@ -2612,6 +2828,13 @@ packages: type-fest: 0.20.2 dev: true + /globalthis@1.0.3: + resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} + engines: {node: '>= 0.4'} + dependencies: + define-properties: 1.2.0 + dev: true + /globby@11.1.0: resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} engines: {node: '>=10'} @@ -2627,17 +2850,13 @@ packages: /gopd@1.0.1: resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} dependencies: - get-intrinsic: 1.1.3 + get-intrinsic: 1.2.1 dev: true /graceful-fs@4.2.10: resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==} dev: true - /grapheme-splitter@1.0.4: - resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==} - dev: true - /graphemer@1.4.0: resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} dev: true @@ -2658,7 +2877,12 @@ packages: /has-property-descriptors@1.0.0: resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==} dependencies: - get-intrinsic: 1.1.3 + get-intrinsic: 1.2.1 + dev: true + + /has-proto@1.0.1: + resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==} + engines: {node: '>= 0.4'} dev: true /has-symbols@1.0.3: @@ -2732,11 +2956,6 @@ packages: hasBin: true dev: true - /indent-string@4.0.0: - resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} - engines: {node: '>=8'} - dev: true - /inflight@1.0.6: resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} dependencies: @@ -2752,11 +2971,28 @@ packages: resolution: {integrity: sha512-tA8URYccNzMo94s5MQZgH8NB/XTa6HsOo0MLfXTKKEnHVVdegzaQoFZ7Jp44bdvLvY2waT5dc+j5ICEswhi7UQ==} engines: {node: '>= 0.4'} dependencies: - get-intrinsic: 1.1.3 + get-intrinsic: 1.2.1 has: 1.0.3 side-channel: 1.0.4 dev: true + /internal-slot@1.0.5: + resolution: {integrity: sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==} + engines: {node: '>= 0.4'} + dependencies: + get-intrinsic: 1.2.1 + has: 1.0.3 + side-channel: 1.0.4 + dev: true + + /is-array-buffer@3.0.2: + resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==} + dependencies: + call-bind: 1.0.2 + get-intrinsic: 1.2.1 + is-typed-array: 1.1.12 + dev: true + /is-arrayish@0.2.1: resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} dev: true @@ -2780,8 +3016,8 @@ packages: engines: {node: '>= 0.4'} dev: true - /is-core-module@2.11.0: - resolution: {integrity: sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==} + /is-core-module@2.13.0: + resolution: {integrity: sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==} dependencies: has: 1.0.3 dev: true @@ -2793,6 +3029,18 @@ packages: has-tostringtag: 1.0.0 dev: true + /is-docker@2.2.1: + resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} + engines: {node: '>=8'} + hasBin: true + dev: true + + /is-docker@3.0.0: + resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + hasBin: true + dev: true + /is-extglob@2.1.1: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} @@ -2819,6 +3067,14 @@ packages: is-extglob: 2.1.1 dev: true + /is-inside-container@1.0.0: + resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==} + engines: {node: '>=14.16'} + hasBin: true + dependencies: + is-docker: 3.0.0 + dev: true + /is-negative-zero@2.0.2: resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} engines: {node: '>= 0.4'} @@ -2879,12 +3135,30 @@ packages: has-symbols: 1.0.3 dev: true + /is-typed-array@1.1.12: + resolution: {integrity: sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==} + engines: {node: '>= 0.4'} + dependencies: + which-typed-array: 1.1.11 + dev: true + /is-weakref@1.0.2: resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} dependencies: call-bind: 1.0.2 dev: true + /is-wsl@2.2.0: + resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==} + engines: {node: '>=8'} + dependencies: + is-docker: 2.2.1 + dev: true + + /isarray@2.0.5: + resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} + dev: true + /isexe@2.0.0: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} dev: true @@ -2902,7 +3176,20 @@ packages: '@babel/parser': 7.20.7 '@istanbuljs/schema': 0.1.3 istanbul-lib-coverage: 3.2.0 - semver: 6.3.0 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + dev: true + + /istanbul-lib-instrument@6.0.0(supports-color@8.1.1): + resolution: {integrity: sha512-x58orMzEVfzPUKqlbLd1hXCnySCxKdDKa6Rjg97CwuLLRI4g3FHTdnExu1OqffVFay6zeMW+T6/DowFLndWnIw==} + engines: {node: '>=10'} + dependencies: + '@babel/core': 7.20.7(supports-color@8.1.1) + '@babel/parser': 7.20.7 + '@istanbuljs/schema': 0.1.3 + istanbul-lib-coverage: 3.2.0 + semver: 7.5.4 transitivePeerDependencies: - supports-color dev: true @@ -2935,44 +3222,46 @@ packages: istanbul-lib-report: 3.0.0 dev: true - /jest-changed-files@29.5.0: - resolution: {integrity: sha512-IFG34IUMUaNBIxjQXF/iu7g6EcdMrGRRxaUSw92I/2g2YC6vCdTltl4nHvt7Ci5nSJwXIkCu8Ka1DKF+X7Z1Ag==} + /jest-changed-files@29.6.3: + resolution: {integrity: sha512-G5wDnElqLa4/c66ma5PG9eRjE342lIbF6SUnTJi26C3J28Fv2TVY2rOyKB9YGbSA5ogwevgmxc4j4aVjrEK6Yg==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: execa: 5.1.1 + jest-util: 29.6.3 p-limit: 3.1.0 dev: true - /jest-circus@29.5.0(supports-color@8.1.1): - resolution: {integrity: sha512-gq/ongqeQKAplVxqJmbeUOJJKkW3dDNPY8PjhJ5G0lBRvu0e3EWGxGy5cI4LAGA7gV2UHCtWBI4EMXK8c9nQKA==} + /jest-circus@29.6.3(supports-color@8.1.1): + resolution: {integrity: sha512-p0R5YqZEMnOpHqHLWRSjm2z/0p6RNsrNE/GRRT3eli8QGOAozj6Ys/3Tv+Ej+IfltJoSPwcQ6/hOCRkNlxLLCw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@jest/environment': 29.5.0 - '@jest/expect': 29.5.0(supports-color@8.1.1) - '@jest/test-result': 29.5.0 - '@jest/types': 29.5.0 - '@types/node': 14.18.51 + '@jest/environment': 29.6.3 + '@jest/expect': 29.6.3(supports-color@8.1.1) + '@jest/test-result': 29.6.3 + '@jest/types': 29.6.3 + '@types/node': 14.18.54 chalk: 4.1.2 co: 4.6.0 - dedent: 0.7.0 + dedent: 1.5.1 is-generator-fn: 2.1.0 - jest-each: 29.5.0 - jest-matcher-utils: 29.5.0 - jest-message-util: 29.5.0 - jest-runtime: 29.5.0(supports-color@8.1.1) - jest-snapshot: 29.5.0(supports-color@8.1.1) - jest-util: 29.5.0 + jest-each: 29.6.3 + jest-matcher-utils: 29.6.3 + jest-message-util: 29.6.3 + jest-runtime: 29.6.3(supports-color@8.1.1) + jest-snapshot: 29.6.3(supports-color@8.1.1) + jest-util: 29.6.3 p-limit: 3.1.0 - pretty-format: 29.5.0 + pretty-format: 29.6.3 pure-rand: 6.0.1 slash: 3.0.0 stack-utils: 2.0.6 transitivePeerDependencies: + - babel-plugin-macros - supports-color dev: true - /jest-cli@29.5.0(@types/node@14.18.51)(supports-color@8.1.1): - resolution: {integrity: sha512-L1KcP1l4HtfwdxXNFCL5bmUbLQiKrakMUriBEcc1Vfz6gx31ORKdreuWvmQVBit+1ss9NNR3yxjwfwzZNdQXJw==} + /jest-cli@29.6.3(@types/node@14.18.54)(supports-color@8.1.1): + resolution: {integrity: sha512-KuPdXUPXQIf0t6DvmG8MV4QyhcjR1a6ruKl3YL7aGn/AQ8JkROwFkWzEpDIpt11Qy188dHbRm8WjwMsV/4nmnQ==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} hasBin: true peerDependencies: @@ -2981,26 +3270,27 @@ packages: node-notifier: optional: true dependencies: - '@jest/core': 29.5.0(supports-color@8.1.1) - '@jest/test-result': 29.5.0 - '@jest/types': 29.5.0 + '@jest/core': 29.6.3(supports-color@8.1.1) + '@jest/test-result': 29.6.3 + '@jest/types': 29.6.3 chalk: 4.1.2 exit: 0.1.2 graceful-fs: 4.2.10 import-local: 3.1.0 - jest-config: 29.5.0(@types/node@14.18.51)(supports-color@8.1.1) - jest-util: 29.5.0 - jest-validate: 29.5.0 + jest-config: 29.6.3(@types/node@14.18.54)(supports-color@8.1.1) + jest-util: 29.6.3 + jest-validate: 29.6.3 prompts: 2.4.2 yargs: 17.7.2 transitivePeerDependencies: - '@types/node' + - babel-plugin-macros - supports-color - ts-node dev: true - /jest-config@29.5.0(@types/node@14.18.51)(supports-color@8.1.1): - resolution: {integrity: sha512-kvDUKBnNJPNBmFFOhDbm59iu1Fii1Q6SxyhXfvylq3UTHbg6o7j/g8k2dZyXWLvfdKB1vAPxNZnMgtKJcmu3kA==} + /jest-config@29.6.3(@types/node@14.18.54)(supports-color@8.1.1): + resolution: {integrity: sha512-nb9bOq2aEqogbyL4F9mLkAeQGAgNt7Uz6U59YtQDIxFPiL7Ejgq0YIrp78oyEHD6H4CIV/k7mFrK7eFDzUJ69w==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} peerDependencies: '@types/node': '*' @@ -3012,29 +3302,30 @@ packages: optional: true dependencies: '@babel/core': 7.20.7(supports-color@8.1.1) - '@jest/test-sequencer': 29.5.0 - '@jest/types': 29.5.0 - '@types/node': 14.18.51 - babel-jest: 29.5.0(@babel/core@7.20.7)(supports-color@8.1.1) + '@jest/test-sequencer': 29.6.3 + '@jest/types': 29.6.3 + '@types/node': 14.18.54 + babel-jest: 29.6.3(@babel/core@7.20.7)(supports-color@8.1.1) chalk: 4.1.2 ci-info: 3.7.1 deepmerge: 4.2.2 glob: 7.2.3 graceful-fs: 4.2.10 - jest-circus: 29.5.0(supports-color@8.1.1) - jest-environment-node: 29.5.0 - jest-get-type: 29.4.3 - jest-regex-util: 29.4.3 - jest-resolve: 29.5.0 - jest-runner: 29.5.0(supports-color@8.1.1) - jest-util: 29.5.0 - jest-validate: 29.5.0 + jest-circus: 29.6.3(supports-color@8.1.1) + jest-environment-node: 29.6.3 + jest-get-type: 29.6.3 + jest-regex-util: 29.6.3 + jest-resolve: 29.6.3 + jest-runner: 29.6.3(supports-color@8.1.1) + jest-util: 29.6.3 + jest-validate: 29.6.3 micromatch: 4.0.5 parse-json: 5.2.0 - pretty-format: 29.5.0 + pretty-format: 29.6.3 slash: 3.0.0 strip-json-comments: 3.1.1 transitivePeerDependencies: + - babel-plugin-macros - supports-color dev: true @@ -3048,38 +3339,48 @@ packages: dependencies: chalk: 4.1.2 diff-sequences: 29.4.3 - jest-get-type: 29.4.3 - pretty-format: 29.5.0 + jest-get-type: 29.6.3 + pretty-format: 29.6.3 + dev: true + + /jest-diff@29.6.3: + resolution: {integrity: sha512-3sw+AdWnwH9sSNohMRKA7JiYUJSRr/WS6+sEFfBuhxU5V5GlEVKfvUn8JuMHE0wqKowemR1C2aHy8VtXbaV8dQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + chalk: 4.1.2 + diff-sequences: 29.6.3 + jest-get-type: 29.6.3 + pretty-format: 29.6.3 dev: true - /jest-docblock@29.4.3: - resolution: {integrity: sha512-fzdTftThczeSD9nZ3fzA/4KkHtnmllawWrXO69vtI+L9WjEIuXWs4AmyME7lN5hU7dB0sHhuPfcKofRsUb/2Fg==} + /jest-docblock@29.6.3: + resolution: {integrity: sha512-2+H+GOTQBEm2+qFSQ7Ma+BvyV+waiIFxmZF5LdpBsAEjWX8QYjSCa4FrkIYtbfXUJJJnFCYrOtt6TZ+IAiTjBQ==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: detect-newline: 3.1.0 dev: true - /jest-each@29.5.0: - resolution: {integrity: sha512-HM5kIJ1BTnVt+DQZ2ALp3rzXEl+g726csObrW/jpEGl+CDSSQpOJJX2KE/vEg8cxcMXdyEPu6U4QX5eruQv5hA==} + /jest-each@29.6.3: + resolution: {integrity: sha512-KoXfJ42k8cqbkfshW7sSHcdfnv5agDdHCPA87ZBdmHP+zJstTJc0ttQaJ/x7zK6noAL76hOuTIJ6ZkQRS5dcyg==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@jest/types': 29.5.0 + '@jest/types': 29.6.3 chalk: 4.1.2 - jest-get-type: 29.4.3 - jest-util: 29.5.0 - pretty-format: 29.5.0 + jest-get-type: 29.6.3 + jest-util: 29.6.3 + pretty-format: 29.6.3 dev: true - /jest-environment-node@29.5.0: - resolution: {integrity: sha512-ExxuIK/+yQ+6PRGaHkKewYtg6hto2uGCgvKdb2nfJfKXgZ17DfXjvbZ+jA1Qt9A8EQSfPnt5FKIfnOO3u1h9qw==} + /jest-environment-node@29.6.3: + resolution: {integrity: sha512-PKl7upfPJXMYbWpD+60o4HP86KvFO2c9dZ+Zr6wUzsG5xcPx/65o3ArNgHW5M0RFvLYdW4/aieR4JSooD0a2ew==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@jest/environment': 29.5.0 - '@jest/fake-timers': 29.5.0 - '@jest/types': 29.5.0 - '@types/node': 14.18.51 - jest-mock: 29.5.0 - jest-util: 29.5.0 + '@jest/environment': 29.6.3 + '@jest/fake-timers': 29.6.3 + '@jest/types': 29.6.3 + '@types/node': 14.18.54 + jest-mock: 29.6.3 + jest-util: 29.6.3 dev: true /jest-get-type@29.4.3: @@ -3087,31 +3388,36 @@ packages: engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dev: true - /jest-haste-map@29.5.0: - resolution: {integrity: sha512-IspOPnnBro8YfVYSw6yDRKh/TiCdRngjxeacCps1cQ9cgVN6+10JUcuJ1EabrgYLOATsIAigxA0rLR9x/YlrSA==} + /jest-get-type@29.6.3: + resolution: {integrity: sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dev: true + + /jest-haste-map@29.6.3: + resolution: {integrity: sha512-GecR5YavfjkhOytEFHAeI6aWWG3f/cOKNB1YJvj/B76xAmeVjy4zJUYobGF030cRmKaO1FBw3V8CZZ6KVh9ZSw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@jest/types': 29.5.0 + '@jest/types': 29.6.3 '@types/graceful-fs': 4.1.5 - '@types/node': 14.18.51 + '@types/node': 14.18.54 anymatch: 3.1.3 fb-watchman: 2.0.2 graceful-fs: 4.2.10 - jest-regex-util: 29.4.3 - jest-util: 29.5.0 - jest-worker: 29.5.0 + jest-regex-util: 29.6.3 + jest-util: 29.6.3 + jest-worker: 29.6.3 micromatch: 4.0.5 walker: 1.0.8 optionalDependencies: fsevents: 2.3.2 dev: true - /jest-leak-detector@29.5.0: - resolution: {integrity: sha512-u9YdeeVnghBUtpN5mVxjID7KbkKE1QU4f6uUwuxiY0vYRi9BUCLKlPEZfDGR67ofdFmDz9oPAy2G92Ujrntmow==} + /jest-leak-detector@29.6.3: + resolution: {integrity: sha512-0kfbESIHXYdhAdpLsW7xdwmYhLf1BRu4AA118/OxFm0Ho1b2RcTmO4oF6aAMaxpxdxnJ3zve2rgwzNBD4Zbm7Q==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - jest-get-type: 29.4.3 - pretty-format: 29.5.0 + jest-get-type: 29.6.3 + pretty-format: 29.6.3 dev: true /jest-matcher-utils@29.5.0: @@ -3121,7 +3427,17 @@ packages: chalk: 4.1.2 jest-diff: 29.5.0 jest-get-type: 29.4.3 - pretty-format: 29.5.0 + pretty-format: 29.6.3 + dev: true + + /jest-matcher-utils@29.6.3: + resolution: {integrity: sha512-6ZrMYINZdwduSt5Xu18/n49O1IgXdjsfG7NEZaQws9k69eTKWKcVbJBw/MZsjOZe2sSyJFmuzh8042XWwl54Zg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + chalk: 4.1.2 + jest-diff: 29.6.3 + jest-get-type: 29.6.3 + pretty-format: 29.6.3 dev: true /jest-message-util@29.5.0: @@ -3129,26 +3445,41 @@ packages: engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: '@babel/code-frame': 7.18.6 - '@jest/types': 29.5.0 + '@jest/types': 29.6.3 '@types/stack-utils': 2.0.1 chalk: 4.1.2 graceful-fs: 4.2.10 micromatch: 4.0.5 - pretty-format: 29.5.0 + pretty-format: 29.6.3 slash: 3.0.0 stack-utils: 2.0.6 dev: true - /jest-mock@29.5.0: - resolution: {integrity: sha512-GqOzvdWDE4fAV2bWQLQCkujxYWL7RxjCnj71b5VhDAGOevB3qj3Ovg26A5NI84ZpODxyzaozXLOh2NCgkbvyaw==} + /jest-message-util@29.6.3: + resolution: {integrity: sha512-FtzaEEHzjDpQp51HX4UMkPZjy46ati4T5pEMyM6Ik48ztu4T9LQplZ6OsimHx7EuM9dfEh5HJa6D3trEftu3dA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@jest/types': 29.5.0 - '@types/node': 14.18.51 - jest-util: 29.5.0 + '@babel/code-frame': 7.18.6 + '@jest/types': 29.6.3 + '@types/stack-utils': 2.0.1 + chalk: 4.1.2 + graceful-fs: 4.2.10 + micromatch: 4.0.5 + pretty-format: 29.6.3 + slash: 3.0.0 + stack-utils: 2.0.6 + dev: true + + /jest-mock@29.6.3: + resolution: {integrity: sha512-Z7Gs/mOyTSR4yPsaZ72a/MtuK6RnC3JYqWONe48oLaoEcYwEDxqvbXz85G4SJrm2Z5Ar9zp6MiHF4AlFlRM4Pg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/types': 29.6.3 + '@types/node': 14.18.54 + jest-util: 29.6.3 dev: true - /jest-pnp-resolver@1.2.3(jest-resolve@29.5.0): + /jest-pnp-resolver@1.2.3(jest-resolve@29.6.3): resolution: {integrity: sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==} engines: {node: '>=6'} peerDependencies: @@ -3157,125 +3488,122 @@ packages: jest-resolve: optional: true dependencies: - jest-resolve: 29.5.0 + jest-resolve: 29.6.3 dev: true - /jest-regex-util@29.4.3: - resolution: {integrity: sha512-O4FglZaMmWXbGHSQInfXewIsd1LMn9p3ZXB/6r4FOkyhX2/iP/soMG98jGvk/A3HAN78+5VWcBGO0BJAPRh4kg==} + /jest-regex-util@29.6.3: + resolution: {integrity: sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dev: true - /jest-resolve-dependencies@29.5.0(supports-color@8.1.1): - resolution: {integrity: sha512-sjV3GFr0hDJMBpYeUuGduP+YeCRbd7S/ck6IvL3kQ9cpySYKqcqhdLLC2rFwrcL7tz5vYibomBrsFYWkIGGjOg==} + /jest-resolve-dependencies@29.6.3(supports-color@8.1.1): + resolution: {integrity: sha512-iah5nhSPTwtUV7yzpTc9xGg8gP3Ch2VNsuFMsKoCkNCrQSbFtx5KRPemmPJ32AUhTSDqJXB6djPN6zAaUGV53g==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - jest-regex-util: 29.4.3 - jest-snapshot: 29.5.0(supports-color@8.1.1) + jest-regex-util: 29.6.3 + jest-snapshot: 29.6.3(supports-color@8.1.1) transitivePeerDependencies: - supports-color dev: true - /jest-resolve@29.5.0: - resolution: {integrity: sha512-1TzxJ37FQq7J10jPtQjcc+MkCkE3GBpBecsSUWJ0qZNJpmg6m0D9/7II03yJulm3H/fvVjgqLh/k2eYg+ui52w==} + /jest-resolve@29.6.3: + resolution: {integrity: sha512-WMXwxhvzDeA/J+9jz1i8ZKGmbw/n+s988EiUvRI4egM+eTn31Hb5v10Re3slG3/qxntkBt2/6GkQVDGu6Bwyhw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: chalk: 4.1.2 graceful-fs: 4.2.10 - jest-haste-map: 29.5.0 - jest-pnp-resolver: 1.2.3(jest-resolve@29.5.0) - jest-util: 29.5.0 - jest-validate: 29.5.0 + jest-haste-map: 29.6.3 + jest-pnp-resolver: 1.2.3(jest-resolve@29.6.3) + jest-util: 29.6.3 + jest-validate: 29.6.3 resolve: 1.22.1 resolve.exports: 2.0.2 slash: 3.0.0 dev: true - /jest-runner@29.5.0(supports-color@8.1.1): - resolution: {integrity: sha512-m7b6ypERhFghJsslMLhydaXBiLf7+jXy8FwGRHO3BGV1mcQpPbwiqiKUR2zU2NJuNeMenJmlFZCsIqzJCTeGLQ==} + /jest-runner@29.6.3(supports-color@8.1.1): + resolution: {integrity: sha512-E4zsMhQnjhirFPhDTJgoLMWUrVCDij/KGzWlbslDHGuO8Hl2pVUfOiygMzVZtZq+BzmlqwEr7LYmW+WFLlmX8w==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@jest/console': 29.5.0 - '@jest/environment': 29.5.0 - '@jest/test-result': 29.5.0 - '@jest/transform': 29.5.0(supports-color@8.1.1) - '@jest/types': 29.5.0 - '@types/node': 14.18.51 + '@jest/console': 29.6.3 + '@jest/environment': 29.6.3 + '@jest/test-result': 29.6.3 + '@jest/transform': 29.6.3(supports-color@8.1.1) + '@jest/types': 29.6.3 + '@types/node': 14.18.54 chalk: 4.1.2 emittery: 0.13.1 graceful-fs: 4.2.10 - jest-docblock: 29.4.3 - jest-environment-node: 29.5.0 - jest-haste-map: 29.5.0 - jest-leak-detector: 29.5.0 - jest-message-util: 29.5.0 - jest-resolve: 29.5.0 - jest-runtime: 29.5.0(supports-color@8.1.1) - jest-util: 29.5.0 - jest-watcher: 29.5.0 - jest-worker: 29.5.0 + jest-docblock: 29.6.3 + jest-environment-node: 29.6.3 + jest-haste-map: 29.6.3 + jest-leak-detector: 29.6.3 + jest-message-util: 29.6.3 + jest-resolve: 29.6.3 + jest-runtime: 29.6.3(supports-color@8.1.1) + jest-util: 29.6.3 + jest-watcher: 29.6.3 + jest-worker: 29.6.3 p-limit: 3.1.0 source-map-support: 0.5.13 transitivePeerDependencies: - supports-color dev: true - /jest-runtime@29.5.0(supports-color@8.1.1): - resolution: {integrity: sha512-1Hr6Hh7bAgXQP+pln3homOiEZtCDZFqwmle7Ew2j8OlbkIu6uE3Y/etJQG8MLQs3Zy90xrp2C0BRrtPHG4zryw==} + /jest-runtime@29.6.3(supports-color@8.1.1): + resolution: {integrity: sha512-VM0Z3a9xaqizGpEKwCOIhImkrINYzxgwk8oQAvrmAiXX8LNrJrRjyva30RkuRY0ETAotHLlUcd2moviCA1hgsQ==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@jest/environment': 29.5.0 - '@jest/fake-timers': 29.5.0 - '@jest/globals': 29.5.0(supports-color@8.1.1) - '@jest/source-map': 29.4.3 - '@jest/test-result': 29.5.0 - '@jest/transform': 29.5.0(supports-color@8.1.1) - '@jest/types': 29.5.0 - '@types/node': 14.18.51 + '@jest/environment': 29.6.3 + '@jest/fake-timers': 29.6.3 + '@jest/globals': 29.6.3(supports-color@8.1.1) + '@jest/source-map': 29.6.3 + '@jest/test-result': 29.6.3 + '@jest/transform': 29.6.3(supports-color@8.1.1) + '@jest/types': 29.6.3 + '@types/node': 14.18.54 chalk: 4.1.2 cjs-module-lexer: 1.2.2 collect-v8-coverage: 1.0.1 glob: 7.2.3 graceful-fs: 4.2.10 - jest-haste-map: 29.5.0 - jest-message-util: 29.5.0 - jest-mock: 29.5.0 - jest-regex-util: 29.4.3 - jest-resolve: 29.5.0 - jest-snapshot: 29.5.0(supports-color@8.1.1) - jest-util: 29.5.0 + jest-haste-map: 29.6.3 + jest-message-util: 29.6.3 + jest-mock: 29.6.3 + jest-regex-util: 29.6.3 + jest-resolve: 29.6.3 + jest-snapshot: 29.6.3(supports-color@8.1.1) + jest-util: 29.6.3 slash: 3.0.0 strip-bom: 4.0.0 transitivePeerDependencies: - supports-color dev: true - /jest-snapshot@29.5.0(supports-color@8.1.1): - resolution: {integrity: sha512-x7Wolra5V0tt3wRs3/ts3S6ciSQVypgGQlJpz2rsdQYoUKxMxPNaoHMGJN6qAuPJqS+2iQ1ZUn5kl7HCyls84g==} + /jest-snapshot@29.6.3(supports-color@8.1.1): + resolution: {integrity: sha512-66Iu7H1ojiveQMGFnKecHIZPPPBjZwfQEnF6wxqpxGf57sV3YSUtAb5/sTKM5TPa3OndyxZp1wxHFbmgVhc53w==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: '@babel/core': 7.20.7(supports-color@8.1.1) '@babel/generator': 7.20.7 '@babel/plugin-syntax-jsx': 7.18.6(@babel/core@7.20.7) '@babel/plugin-syntax-typescript': 7.20.0(@babel/core@7.20.7) - '@babel/traverse': 7.20.10(supports-color@8.1.1) '@babel/types': 7.20.7 - '@jest/expect-utils': 29.5.0 - '@jest/transform': 29.5.0(supports-color@8.1.1) - '@jest/types': 29.5.0 - '@types/babel__traverse': 7.18.3 - '@types/prettier': 2.7.2 + '@jest/expect-utils': 29.6.3 + '@jest/transform': 29.6.3(supports-color@8.1.1) + '@jest/types': 29.6.3 babel-preset-current-node-syntax: 1.0.1(@babel/core@7.20.7) chalk: 4.1.2 - expect: 29.5.0 + expect: 29.6.3 graceful-fs: 4.2.10 - jest-diff: 29.5.0 - jest-get-type: 29.4.3 - jest-matcher-utils: 29.5.0 - jest-message-util: 29.5.0 - jest-util: 29.5.0 + jest-diff: 29.6.3 + jest-get-type: 29.6.3 + jest-matcher-utils: 29.6.3 + jest-message-util: 29.6.3 + jest-util: 29.6.3 natural-compare: 1.4.0 - pretty-format: 29.5.0 - semver: 7.3.8 + pretty-format: 29.6.3 + semver: 7.5.4 transitivePeerDependencies: - supports-color dev: true @@ -3284,52 +3612,64 @@ packages: resolution: {integrity: sha512-RYMgG/MTadOr5t8KdhejfvUU82MxsCu5MF6KuDUHl+NuwzUt+Sm6jJWxTJVrDR1j5M/gJVCPKQEpWXY+yIQ6lQ==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@jest/types': 29.5.0 - '@types/node': 14.18.51 + '@jest/types': 29.6.3 + '@types/node': 14.18.54 chalk: 4.1.2 ci-info: 3.7.1 graceful-fs: 4.2.10 picomatch: 2.3.1 dev: true - /jest-validate@29.5.0: - resolution: {integrity: sha512-pC26etNIi+y3HV8A+tUGr/lph9B18GnzSRAkPaaZJIE1eFdiYm6/CewuiJQ8/RlfHd1u/8Ioi8/sJ+CmbA+zAQ==} + /jest-util@29.6.3: + resolution: {integrity: sha512-QUjna/xSy4B32fzcKTSz1w7YYzgiHrjjJjevdRf61HYk998R5vVMMNmrHESYZVDS5DSWs+1srPLPKxXPkeSDOA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@jest/types': 29.5.0 + '@jest/types': 29.6.3 + '@types/node': 14.18.54 + chalk: 4.1.2 + ci-info: 3.7.1 + graceful-fs: 4.2.10 + picomatch: 2.3.1 + dev: true + + /jest-validate@29.6.3: + resolution: {integrity: sha512-e7KWZcAIX+2W1o3cHfnqpGajdCs1jSM3DkXjGeLSNmCazv1EeI1ggTeK5wdZhF+7N+g44JI2Od3veojoaumlfg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/types': 29.6.3 camelcase: 6.3.0 chalk: 4.1.2 - jest-get-type: 29.4.3 + jest-get-type: 29.6.3 leven: 3.1.0 - pretty-format: 29.5.0 + pretty-format: 29.6.3 dev: true - /jest-watcher@29.5.0: - resolution: {integrity: sha512-KmTojKcapuqYrKDpRwfqcQ3zjMlwu27SYext9pt4GlF5FUgB+7XE1mcCnSm6a4uUpFyQIkb6ZhzZvHl+jiBCiA==} + /jest-watcher@29.6.3: + resolution: {integrity: sha512-NgpFjZ2U2MKusjidbi4Oiu7tfs+nrgdIxIEVROvH1cFmOei9Uj25lwkMsakqLnH/s0nEcvxO1ck77FiRlcnpZg==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@jest/test-result': 29.5.0 - '@jest/types': 29.5.0 - '@types/node': 14.18.51 + '@jest/test-result': 29.6.3 + '@jest/types': 29.6.3 + '@types/node': 14.18.54 ansi-escapes: 4.3.2 chalk: 4.1.2 emittery: 0.13.1 - jest-util: 29.5.0 + jest-util: 29.6.3 string-length: 4.0.2 dev: true - /jest-worker@29.5.0: - resolution: {integrity: sha512-NcrQnevGoSp4b5kg+akIpthoAFHxPBcb5P6mYPY0fUNT+sSvmtu6jlkEle3anczUKIKEbMxFimk9oTP/tpIPgA==} + /jest-worker@29.6.3: + resolution: {integrity: sha512-wacANXecZ/GbQakpf2CClrqrlwsYYDSXFd4fIGdL+dXpM2GWoJ+6bhQ7vR3TKi3+gkSfBkjy1/khH/WrYS4Q6g==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@types/node': 14.18.51 - jest-util: 29.5.0 + '@types/node': 14.18.54 + jest-util: 29.6.3 merge-stream: 2.0.0 supports-color: 8.1.1 dev: true - /jest@29.5.0(@types/node@14.18.51)(supports-color@8.1.1): - resolution: {integrity: sha512-juMg3he2uru1QoXX078zTa7pO85QyB9xajZc6bU+d9yEGwrKX6+vGmJQ3UdVZsvTEUARIdObzH68QItim6OSSQ==} + /jest@29.6.3(@types/node@14.18.54)(supports-color@8.1.1): + resolution: {integrity: sha512-alueLuoPCDNHFcFGmgETR4KpQ+0ff3qVaiJwxQM4B5sC0CvXcgg4PEi7xrDkxuItDmdz/FVc7SSit4KEu8GRvw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} hasBin: true peerDependencies: @@ -3338,12 +3678,13 @@ packages: node-notifier: optional: true dependencies: - '@jest/core': 29.5.0(supports-color@8.1.1) - '@jest/types': 29.5.0 + '@jest/core': 29.6.3(supports-color@8.1.1) + '@jest/types': 29.6.3 import-local: 3.1.0 - jest-cli: 29.5.0(@types/node@14.18.51)(supports-color@8.1.1) + jest-cli: 29.6.3(@types/node@14.18.54)(supports-color@8.1.1) transitivePeerDependencies: - '@types/node' + - babel-plugin-macros - supports-color - ts-node dev: true @@ -3434,21 +3775,18 @@ packages: resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} dev: true - /lint-staged@13.2.2(supports-color@8.1.1): - resolution: {integrity: sha512-71gSwXKy649VrSU09s10uAT0rWCcY3aewhMaHyl2N84oBk4Xs9HgxvUp3AYu+bNsK4NrOYYxvSgg7FyGJ+jGcA==} - engines: {node: ^14.13.1 || >=16.0.0} + /lint-staged@13.3.0(supports-color@8.1.1): + resolution: {integrity: sha512-mPRtrYnipYYv1FEE134ufbWpeggNTo+O/UPzngoaKzbzHAthvR55am+8GfHTnqNRQVRRrYQLGW9ZyUoD7DsBHQ==} + engines: {node: ^16.14.0 || >=18.0.0} hasBin: true dependencies: - chalk: 5.2.0 - cli-truncate: 3.1.0 - commander: 10.0.0 + chalk: 5.3.0 + commander: 11.0.0 debug: 4.3.4(supports-color@8.1.1) - execa: 7.1.1 + execa: 7.2.0 lilconfig: 2.1.0 - listr2: 5.0.8 + listr2: 6.6.1 micromatch: 4.0.5 - normalize-path: 3.0.0 - object-inspect: 1.12.3 pidtree: 0.6.0 string-argv: 0.3.2 yaml: 2.3.1 @@ -3457,23 +3795,21 @@ packages: - supports-color dev: true - /listr2@5.0.8: - resolution: {integrity: sha512-mC73LitKHj9w6v30nLNGPetZIlfpUniNSsxxrbaPcWOjDb92SHPzJPi/t+v1YC/lxKz/AJ9egOjww0qUuFxBpA==} - engines: {node: ^14.13.1 || >=16.0.0} + /listr2@6.6.1: + resolution: {integrity: sha512-+rAXGHh0fkEWdXBmX+L6mmfmXmXvDGEKzkjxO+8mP3+nI/r/CWznVBvsibXdxda9Zz0OW2e2ikphN3OwCT/jSg==} + engines: {node: '>=16.0.0'} peerDependencies: enquirer: '>= 2.3.0 < 3' peerDependenciesMeta: enquirer: optional: true dependencies: - cli-truncate: 2.1.0 - colorette: 2.0.19 - log-update: 4.0.0 - p-map: 4.0.0 + cli-truncate: 3.1.0 + colorette: 2.0.20 + eventemitter3: 5.0.1 + log-update: 5.0.1 rfdc: 1.3.0 - rxjs: 7.8.1 - through: 2.3.8 - wrap-ansi: 7.0.0 + wrap-ansi: 8.1.0 dev: true /locate-path@5.0.0: @@ -3503,14 +3839,15 @@ packages: engines: {node: '>=0.8.6'} dev: true - /log-update@4.0.0: - resolution: {integrity: sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==} - engines: {node: '>=10'} + /log-update@5.0.1: + resolution: {integrity: sha512-5UtUDQ/6edw4ofyljDNcOVJQ4c7OjDro4h3y8e1GQL5iYElYclVHJ3zeWchylvMaKnDbDilC8irOVyexnA/Slw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: - ansi-escapes: 4.3.2 - cli-cursor: 3.1.0 - slice-ansi: 4.0.0 - wrap-ansi: 6.2.0 + ansi-escapes: 5.0.0 + cli-cursor: 4.0.0 + slice-ansi: 5.0.0 + strip-ansi: 7.0.1 + wrap-ansi: 8.1.0 dev: true /lru-cache@5.1.1: @@ -3530,7 +3867,7 @@ packages: resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} engines: {node: '>=8'} dependencies: - semver: 6.3.0 + semver: 6.3.1 dev: true /makeerror@1.0.12: @@ -3596,10 +3933,6 @@ packages: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} dev: true - /natural-compare-lite@1.4.0: - resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==} - dev: true - /natural-compare@1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} dev: true @@ -3645,11 +3978,29 @@ packages: engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - define-properties: 1.1.4 + define-properties: 1.2.0 has-symbols: 1.0.3 object-keys: 1.1.1 dev: true + /object.fromentries@2.0.6: + resolution: {integrity: sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + define-properties: 1.1.4 + es-abstract: 1.20.5 + dev: true + + /object.groupby@1.0.0: + resolution: {integrity: sha512-70MWG6NfRH9GnbZOikuhPPYzpUpof9iW2J9E4dW7FXTqPNb6rllE6u39SKwwiNh8lCwX3DDb5OgcKGiEBrTTyw==} + dependencies: + call-bind: 1.0.2 + define-properties: 1.2.0 + es-abstract: 1.22.1 + get-intrinsic: 1.2.1 + dev: true + /object.values@1.1.6: resolution: {integrity: sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==} engines: {node: '>= 0.4'} @@ -3679,16 +4030,26 @@ packages: mimic-fn: 4.0.0 dev: true - /optionator@0.9.1: - resolution: {integrity: sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==} + /open@9.1.0: + resolution: {integrity: sha512-OS+QTnw1/4vrf+9hh1jc1jnYjzSG4ttTBB8UxOwAnInG3Uo4ssetzC1ihqaIHjLJnA5GGlRl6QlZXOTQhRBUvg==} + engines: {node: '>=14.16'} + dependencies: + default-browser: 4.0.0 + define-lazy-prop: 3.0.0 + is-inside-container: 1.0.0 + is-wsl: 2.2.0 + dev: true + + /optionator@0.9.3: + resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==} engines: {node: '>= 0.8.0'} dependencies: + '@aashutoshrathi/word-wrap': 1.2.6 deep-is: 0.1.4 fast-levenshtein: 2.0.6 levn: 0.4.1 prelude-ls: 1.2.1 type-check: 0.4.0 - word-wrap: 1.2.3 dev: true /p-limit@2.3.0: @@ -3719,13 +4080,6 @@ packages: p-limit: 3.1.0 dev: true - /p-map@4.0.0: - resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==} - engines: {node: '>=10'} - dependencies: - aggregate-error: 3.1.0 - dev: true - /p-try@2.2.0: resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} engines: {node: '>=6'} @@ -3816,9 +4170,9 @@ packages: fast-diff: 1.2.0 dev: true - /prettier@2.8.8: - resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==} - engines: {node: '>=10.13.0'} + /prettier@3.0.2: + resolution: {integrity: sha512-o2YR9qtniXvwEZlOKbveKfDQVyqxbEIWn48Z8m3ZJjBjcCmUy3xZGIv+7AkaeuaTr6yPXJjwv07ZWlsWbEy1rQ==} + engines: {node: '>=14'} hasBin: true dev: true @@ -3831,6 +4185,15 @@ packages: react-is: 18.2.0 dev: true + /pretty-format@29.6.3: + resolution: {integrity: sha512-ZsBgjVhFAj5KeK+nHfF1305/By3lechHQSMWCTl8iHSbfOm2TN5nHEtFc/+W7fAyUeCs2n5iow72gld4gW0xDw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/schemas': 29.6.3 + ansi-styles: 5.2.0 + react-is: 18.2.0 + dev: true + /prompts@2.4.2: resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} engines: {node: '>= 6'} @@ -3865,7 +4228,16 @@ packages: engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - define-properties: 1.1.4 + define-properties: 1.2.0 + functions-have-names: 1.2.3 + dev: true + + /regexp.prototype.flags@1.5.0: + resolution: {integrity: sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + define-properties: 1.2.0 functions-have-names: 1.2.3 dev: true @@ -3899,14 +4271,14 @@ packages: resolution: {integrity: sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==} hasBin: true dependencies: - is-core-module: 2.11.0 + is-core-module: 2.13.0 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 dev: true - /restore-cursor@3.1.0: - resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==} - engines: {node: '>=8'} + /restore-cursor@4.0.0: + resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: onetime: 5.1.2 signal-exit: 3.0.7 @@ -3928,6 +4300,13 @@ packages: glob: 7.2.3 dev: true + /run-applescript@5.0.0: + resolution: {integrity: sha512-XcT5rBksx1QdIhlFOCtgZkB99ZEouFZ1E2Kc2LHqNW13U3/74YGdkQRmThTwxy4QIyookibDKYZOPqX//6BlAg==} + engines: {node: '>=12'} + dependencies: + execa: 5.1.1 + dev: true + /run-parallel@1.2.0: resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} dependencies: @@ -3939,6 +4318,16 @@ packages: dependencies: tslib: 2.4.1 + /safe-array-concat@1.0.0: + resolution: {integrity: sha512-9dVEFruWIsnie89yym+xWTAYASdpw3CJV7Li/6zBewGf9z2i1j31rP6jnY0pHEO4QZh6N0K11bFjWmdR8UGdPQ==} + engines: {node: '>=0.4'} + dependencies: + call-bind: 1.0.2 + get-intrinsic: 1.2.1 + has-symbols: 1.0.3 + isarray: 2.0.5 + dev: true + /safe-publish-latest@2.0.0: resolution: {integrity: sha512-Qc6L9iNKfNl24X8O4XS31yHo49jX1IH+DsnxHIbCDjoARckTOk0Cj9v8G2IYVvZjj94dc9tjs2WIUtL8epJqvw==} engines: {node: '>= 12'} @@ -3953,12 +4342,12 @@ packages: resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==} dependencies: call-bind: 1.0.2 - get-intrinsic: 1.1.3 + get-intrinsic: 1.2.1 is-regex: 1.1.4 dev: true - /semver@6.3.0: - resolution: {integrity: sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==} + /semver@6.3.1: + resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true dev: true @@ -3970,6 +4359,14 @@ packages: lru-cache: 6.0.0 dev: true + /semver@7.5.4: + resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} + engines: {node: '>=10'} + hasBin: true + dependencies: + lru-cache: 6.0.0 + dev: true + /shebang-command@2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} engines: {node: '>=8'} @@ -3990,7 +4387,7 @@ packages: resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} dependencies: call-bind: 1.0.2 - get-intrinsic: 1.1.3 + get-intrinsic: 1.2.1 object-inspect: 1.12.3 dev: true @@ -4007,24 +4404,6 @@ packages: engines: {node: '>=8'} dev: true - /slice-ansi@3.0.0: - resolution: {integrity: sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==} - engines: {node: '>=8'} - dependencies: - ansi-styles: 4.3.0 - astral-regex: 2.0.0 - is-fullwidth-code-point: 3.0.0 - dev: true - - /slice-ansi@4.0.0: - resolution: {integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==} - engines: {node: '>=10'} - dependencies: - ansi-styles: 4.3.0 - astral-regex: 2.0.0 - is-fullwidth-code-point: 3.0.0 - dev: true - /slice-ansi@5.0.0: resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==} engines: {node: '>=12'} @@ -4090,20 +4469,29 @@ packages: strip-ansi: 7.0.1 dev: true + /string.prototype.trim@1.2.7: + resolution: {integrity: sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + define-properties: 1.2.0 + es-abstract: 1.22.1 + dev: true + /string.prototype.trimend@1.0.6: resolution: {integrity: sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==} dependencies: call-bind: 1.0.2 - define-properties: 1.1.4 - es-abstract: 1.20.5 + define-properties: 1.2.0 + es-abstract: 1.22.1 dev: true /string.prototype.trimstart@1.0.6: resolution: {integrity: sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==} dependencies: call-bind: 1.0.2 - define-properties: 1.1.4 - es-abstract: 1.20.5 + define-properties: 1.2.0 + es-abstract: 1.22.1 dev: true /strip-ansi@6.0.1: @@ -4168,6 +4556,14 @@ packages: engines: {node: '>= 0.4'} dev: true + /synckit@0.8.5: + resolution: {integrity: sha512-L1dapNV6vu2s/4Sputv8xGsCdAVlb5nRDMFU/E27D44l5U6cw1g0dGd45uLc+OXjNMmF4ntiMdCimzcjFKQI8Q==} + engines: {node: ^14.18.0 || >=16.0.0} + dependencies: + '@pkgr/utils': 2.4.2 + tslib: 2.6.2 + dev: true + /test-exclude@6.0.0: resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==} engines: {node: '>=8'} @@ -4181,8 +4577,9 @@ packages: resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} dev: true - /through@2.3.8: - resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==} + /titleize@3.0.0: + resolution: {integrity: sha512-KxVu8EYHDPBdUYdKZdKtU2aj2XfEx9AfjXxE/Aj0vT06w2icA09Vus1rh6eSu1y01akYg6BjIK/hxyLJINoMLQ==} + engines: {node: '>=12'} dev: true /tmpl@1.0.5: @@ -4206,8 +4603,17 @@ packages: hasBin: true dev: false - /tsconfig-paths@3.14.1: - resolution: {integrity: sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==} + /ts-api-utils@1.0.2(typescript@5.1.6): + resolution: {integrity: sha512-Cbu4nIqnEdd+THNEsBdkolnOXhg0I8XteoHaEKgvsxpsbWda4IsUut2c187HxywQCvveojow0Dgw/amxtSKVkQ==} + engines: {node: '>=16.13.0'} + peerDependencies: + typescript: '>=4.2.0' + dependencies: + typescript: 5.1.6 + dev: true + + /tsconfig-paths@3.14.2: + resolution: {integrity: sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==} dependencies: '@types/json5': 0.0.29 json5: 1.0.2 @@ -4222,14 +4628,18 @@ packages: /tslib@2.4.1: resolution: {integrity: sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==} - /tsutils@3.21.0(typescript@5.1.3): + /tslib@2.6.2: + resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} + dev: true + + /tsutils@3.21.0(typescript@5.1.6): resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} engines: {node: '>= 6'} peerDependencies: typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' dependencies: tslib: 1.14.1 - typescript: 5.1.3 + typescript: 5.1.6 dev: true /type-check@0.4.0: @@ -4254,8 +4664,51 @@ packages: engines: {node: '>=10'} dev: true - /typescript@5.1.3: - resolution: {integrity: sha512-XH627E9vkeqhlZFQuL+UsyAXEnibT0kWR2FWONlr4sTjvxyJYnyefgrkyECLzM5NenmKzRAy2rR/OlYLA1HkZw==} + /type-fest@1.4.0: + resolution: {integrity: sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==} + engines: {node: '>=10'} + dev: true + + /typed-array-buffer@1.0.0: + resolution: {integrity: sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + get-intrinsic: 1.2.1 + is-typed-array: 1.1.12 + dev: true + + /typed-array-byte-length@1.0.0: + resolution: {integrity: sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + for-each: 0.3.3 + has-proto: 1.0.1 + is-typed-array: 1.1.12 + dev: true + + /typed-array-byte-offset@1.0.0: + resolution: {integrity: sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==} + engines: {node: '>= 0.4'} + dependencies: + available-typed-arrays: 1.0.5 + call-bind: 1.0.2 + for-each: 0.3.3 + has-proto: 1.0.1 + is-typed-array: 1.1.12 + dev: true + + /typed-array-length@1.0.4: + resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} + dependencies: + call-bind: 1.0.2 + for-each: 0.3.3 + is-typed-array: 1.1.12 + dev: true + + /typescript@5.1.6: + resolution: {integrity: sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==} engines: {node: '>=14.17'} hasBin: true dev: true @@ -4269,6 +4722,11 @@ packages: which-boxed-primitive: 1.0.2 dev: true + /untildify@4.0.0: + resolution: {integrity: sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==} + engines: {node: '>=8'} + dev: true + /update-browserslist-db@1.0.10(browserslist@4.21.4): resolution: {integrity: sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==} hasBin: true @@ -4290,7 +4748,7 @@ packages: resolution: {integrity: sha512-74Y4LqY74kLE6IFyIjPtkSTWzUZmj8tdHT9Ii/26dvQ6K9Dl2NbEfj0XgU2sHCtKgt5VupqhlO/5aWuqS+IY1w==} engines: {node: '>=10.12.0'} dependencies: - '@jridgewell/trace-mapping': 0.3.17 + '@jridgewell/trace-mapping': 0.3.19 '@types/istanbul-lib-coverage': 2.0.4 convert-source-map: 1.9.0 dev: true @@ -4311,6 +4769,17 @@ packages: is-symbol: 1.0.4 dev: true + /which-typed-array@1.1.11: + resolution: {integrity: sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==} + engines: {node: '>= 0.4'} + 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 + dev: true + /which@2.0.2: resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} engines: {node: '>= 8'} @@ -4319,20 +4788,6 @@ packages: isexe: 2.0.0 dev: true - /word-wrap@1.2.3: - resolution: {integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==} - engines: {node: '>=0.10.0'} - dev: true - - /wrap-ansi@6.2.0: - resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} - engines: {node: '>=8'} - dependencies: - ansi-styles: 4.3.0 - string-width: 4.2.3 - strip-ansi: 6.0.1 - dev: true - /wrap-ansi@7.0.0: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} engines: {node: '>=10'} @@ -4341,6 +4796,15 @@ packages: string-width: 4.2.3 strip-ansi: 6.0.1 + /wrap-ansi@8.1.0: + resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} + engines: {node: '>=12'} + dependencies: + ansi-styles: 6.2.1 + string-width: 5.1.2 + strip-ansi: 7.0.1 + dev: true + /wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} dev: true diff --git a/src/command-parser/expand-arguments.ts b/src/command-parser/expand-arguments.ts index 01dfdd8f..2e9e77ad 100644 --- a/src/command-parser/expand-arguments.ts +++ b/src/command-parser/expand-arguments.ts @@ -35,7 +35,7 @@ export class ExpandArguments implements CommandParser { // Replace placeholder with empty string // if value doesn't exist in additional arguments. return ''; - } + }, ); return { ...commandInfo, command }; diff --git a/src/command-parser/expand-npm-wildcard.spec.ts b/src/command-parser/expand-npm-wildcard.spec.ts index 85667e27..8fb0c469 100644 --- a/src/command-parser/expand-npm-wildcard.spec.ts +++ b/src/command-parser/expand-npm-wildcard.spec.ts @@ -95,7 +95,7 @@ for (const npmCmd of ['npm', 'yarn', 'pnpm', 'bun']) { parser.parse({ name: '', command: `${npmCmd} run watch-*`, - }) + }), ).toEqual([ { name: 'js', command: `${npmCmd} run watch-js` }, { name: 'css', command: `${npmCmd} run watch-css` }, @@ -114,7 +114,7 @@ for (const npmCmd of ['npm', 'yarn', 'pnpm', 'bun']) { parser.parse({ name: 'w:', command: `${npmCmd} run watch-*`, - }) + }), ).toEqual([ { name: 'w:js', command: `${npmCmd} run watch-js` }, { name: 'w:css', command: `${npmCmd} run watch-css` }, diff --git a/src/command.spec.ts b/src/command.spec.ts index b6e25172..3cf746ca 100644 --- a/src/command.spec.ts +++ b/src/command.spec.ts @@ -49,7 +49,7 @@ const createCommand = (overrides?: Partial, spawnOpts: SpawnOptions { index: 0, name: '', command: 'echo foo', ...overrides }, spawnOpts, spawn, - killProcess + killProcess, ); let error: unknown; @@ -70,7 +70,7 @@ const createCommand = (overrides?: Partial, spawnOpts: SpawnOptions observer.complete(); }, }); - }) + }), ); const values = async (): Promise => { await finished.onComplete(); diff --git a/src/command.ts b/src/command.ts index d2c5b3cc..c5593e0c 100644 --- a/src/command.ts +++ b/src/command.ts @@ -126,7 +126,7 @@ export class Command implements CommandInfo { { index, name, command, prefixColor, env, cwd }: CommandInfo & { index: number }, spawnOpts: SpawnOptions, spawn: SpawnCommand, - killProcess: KillProcess + killProcess: KillProcess, ) { this.index = index; this.name = name; @@ -180,12 +180,12 @@ export class Command implements CommandInfo { child.stdout && pipeTo( Rx.fromEvent(child.stdout, 'data').pipe(Rx.map((event) => event as Buffer)), - this.stdout + this.stdout, ); child.stderr && pipeTo( Rx.fromEvent(child.stderr, 'data').pipe(Rx.map((event) => event as Buffer)), - this.stderr + this.stderr, ); this.stdin = child.stdin || undefined; } diff --git a/src/completion-listener.ts b/src/completion-listener.ts index 325b7b63..6889a676 100644 --- a/src/completion-listener.ts +++ b/src/completion-listener.ts @@ -65,12 +65,12 @@ export class CompletionListener { // in which case all of them must meet the success condition. const nameOrIndex = commandSyntaxMatch[1]; const targetCommandsEvents = events.filter( - ({ command, index }) => command.name === nameOrIndex || index === Number(nameOrIndex) + ({ command, index }) => command.name === nameOrIndex || index === Number(nameOrIndex), ); if (this.successCondition.startsWith('!')) { // All commands except the specified ones must exit succesfully return events.every( - (event) => targetCommandsEvents.includes(event) || event.exitCode === 0 + (event) => targetCommandsEvents.includes(event) || event.exitCode === 0, ); } // Only the specified commands must exit succesfully @@ -93,10 +93,10 @@ export class CompletionListener { switchMap((exitInfos) => this.isSuccess(exitInfos) ? this.emitWithScheduler(Rx.of(exitInfos)) - : this.emitWithScheduler(Rx.throwError(() => exitInfos)) + : this.emitWithScheduler(Rx.throwError(() => exitInfos)), ), - take(1) - ) + take(1), + ), ); } diff --git a/src/concurrently.spec.ts b/src/concurrently.spec.ts index 86956237..dcd65b0b 100644 --- a/src/concurrently.spec.ts +++ b/src/concurrently.spec.ts @@ -90,7 +90,7 @@ it('spawns commands up to percent based limit at once', () => { model: 'Intel', speed: 0, times: { user: 0, nice: 0, sys: 0, idle: 0, irq: 0 }, - }) + }), ); create(['foo', 'bar', 'baz', 'qux'], { maxProcesses: '50%' }); @@ -173,19 +173,19 @@ it('merges extra env vars into each command', () => { 'echo', expect.objectContaining({ env: expect.objectContaining({ foo: 'bar' }), - }) + }), ); expect(spawn).toHaveBeenCalledWith( 'echo', expect.objectContaining({ env: expect.objectContaining({ foo: 'baz' }), - }) + }), ); expect(spawn).toHaveBeenCalledWith( 'kill', expect.objectContaining({ env: expect.not.objectContaining({ foo: expect.anything() }), - }) + }), ); }); @@ -198,7 +198,7 @@ it('uses cwd from options for each command', () => { ], { cwd: 'foobar', - } + }, ); expect(spawn).toHaveBeenCalledTimes(3); @@ -207,21 +207,21 @@ it('uses cwd from options for each command', () => { expect.objectContaining({ env: expect.objectContaining({ foo: 'bar' }), cwd: 'foobar', - }) + }), ); expect(spawn).toHaveBeenCalledWith( 'echo', expect.objectContaining({ env: expect.objectContaining({ foo: 'baz' }), cwd: 'foobar', - }) + }), ); expect(spawn).toHaveBeenCalledWith( 'kill', expect.objectContaining({ env: expect.not.objectContaining({ foo: expect.anything() }), cwd: 'foobar', - }) + }), ); }); @@ -233,7 +233,7 @@ it('uses overridden cwd option for each command if specified', () => { ], { cwd: 'foobar', - } + }, ); expect(spawn).toHaveBeenCalledTimes(2); @@ -242,14 +242,14 @@ it('uses overridden cwd option for each command if specified', () => { expect.objectContaining({ env: expect.objectContaining({ foo: 'bar' }), cwd: 'baz', - }) + }), ); expect(spawn).toHaveBeenCalledWith( 'echo', expect.objectContaining({ env: expect.objectContaining({ foo: 'baz' }), cwd: 'foobar', - }) + }), ); }); @@ -263,13 +263,13 @@ it('uses raw from options for each command', () => { 'echo', expect.objectContaining({ stdio: 'inherit', - }) + }), ); expect(spawn).toHaveBeenCalledWith( 'kill', expect.objectContaining({ stdio: 'inherit', - }) + }), ); }); @@ -283,13 +283,13 @@ it('uses overridden raw option for each command if specified', () => { 'echo', expect.not.objectContaining({ stdio: expect.anything(), - }) + }), ); expect(spawn).toHaveBeenCalledWith( 'echo', expect.objectContaining({ stdio: 'inherit', - }) + }), ); }); @@ -303,7 +303,7 @@ it('argument placeholders are properly replaced when additional arguments are pa ], { additionalArguments: ['foo', 'bar'], - } + }, ); expect(spawn).toHaveBeenCalledTimes(4); diff --git a/src/concurrently.ts b/src/concurrently.ts index ea3136a8..ad3f8f7d 100644 --- a/src/concurrently.ts +++ b/src/concurrently.ts @@ -132,7 +132,7 @@ export type ConcurrentlyOptions = { */ export function concurrently( baseCommands: ConcurrentlyCommandInput[], - baseOptions?: Partial + baseOptions?: Partial, ): ConcurrentlyResult { assert.ok(Array.isArray(baseCommands), '[concurrently] commands should be an array'); assert.notStrictEqual(baseCommands.length, 0, '[concurrently] no commands provided'); @@ -167,7 +167,7 @@ export function concurrently( cwd: command.cwd || options.cwd, }), options.spawn, - options.kill + options.kill, ); }) .value(); @@ -183,7 +183,7 @@ export function concurrently( { commands, onFinishCallbacks: [] } as { commands: Command[]; onFinishCallbacks: (() => void)[]; - } + }, ); commands = handleResult.commands; @@ -201,7 +201,7 @@ export function concurrently( 1, (typeof options.maxProcesses === 'string' && options.maxProcesses.endsWith('%') ? Math.round((cpus().length * Number(options.maxProcesses.slice(0, -1))) / 100) - : Number(options.maxProcesses)) || commandsLeft.length + : Number(options.maxProcesses)) || commandsLeft.length, ); for (let i = 0; i < maxProcesses; i++) { maybeRunMore(commandsLeft); @@ -246,7 +246,7 @@ function mapToCommandInfo(command: ConcurrentlyCommandInput): CommandInfo { function parseCommand(command: CommandInfo, parsers: CommandParser[]) { return parsers.reduce( (commands, parser) => _.flatMap(commands, (command) => parser.parse(command)), - _.castArray(command) + _.castArray(command), ); } diff --git a/src/fixtures/fake-command.ts b/src/fixtures/fake-command.ts index 864a9a04..6d0107fe 100644 --- a/src/fixtures/fake-command.ts +++ b/src/fixtures/fake-command.ts @@ -18,7 +18,7 @@ export class FakeCommand extends Command { }, {}, jest.fn(), - jest.fn() + jest.fn(), ); this.stdin = createMockInstance(Writable); diff --git a/src/flow-control/input-handler.spec.ts b/src/flow-control/input-handler.spec.ts index 0dfafe7e..68e393d4 100644 --- a/src/flow-control/input-handler.spec.ts +++ b/src/flow-control/input-handler.spec.ts @@ -116,7 +116,7 @@ it('logs error if command has no stdin open', () => { expect(commands[1].stdin?.write).not.toHaveBeenCalled(); expect(logger.logGlobalEvent).toHaveBeenCalledWith( - 'Unable to find command "0", or it has no stdin open\n' + 'Unable to find command "0", or it has no stdin open\n', ); }); diff --git a/src/flow-control/input-handler.ts b/src/flow-control/input-handler.ts index 2f6bd714..779607ec 100644 --- a/src/flow-control/input-handler.ts +++ b/src/flow-control/input-handler.ts @@ -76,7 +76,7 @@ export class InputHandler implements FlowController { command.stdin.write(input); } else { this.logger.logGlobalEvent( - `Unable to find command "${target}", or it has no stdin open\n` + `Unable to find command "${target}", or it has no stdin open\n`, ); } }); diff --git a/src/flow-control/kill-on-signal.ts b/src/flow-control/kill-on-signal.ts index aa8a040f..91a579b9 100644 --- a/src/flow-control/kill-on-signal.ts +++ b/src/flow-control/kill-on-signal.ts @@ -30,7 +30,7 @@ export class KillOnSignal implements FlowController { map((exitInfo) => { const exitCode = caughtSignal === 'SIGINT' ? 0 : exitInfo.exitCode; return { ...exitInfo, exitCode }; - }) + }), ); return new Proxy(command, { get(target, prop: keyof Command) { diff --git a/src/flow-control/kill-others.spec.ts b/src/flow-control/kill-others.spec.ts index a41e3e7f..a96e9179 100644 --- a/src/flow-control/kill-others.spec.ts +++ b/src/flow-control/kill-others.spec.ts @@ -8,7 +8,7 @@ import { KillOthers, ProcessCloseCondition } from './kill-others'; // Return a custom value for `canKill` (also see 'FakeCommand'). beforeAll(() => { jest.spyOn(Command, 'canKill').mockImplementation( - (command) => (command as FakeCommand).isKillable + (command) => (command as FakeCommand).isKillable, ); }); diff --git a/src/flow-control/kill-others.ts b/src/flow-control/kill-others.ts index 733f66c3..abc20e06 100644 --- a/src/flow-control/kill-others.ts +++ b/src/flow-control/kill-others.ts @@ -31,7 +31,7 @@ export class KillOthers implements FlowController { handle(commands: Command[]) { const conditions = this.conditions.filter( - (condition) => condition === 'failure' || condition === 'success' + (condition) => condition === 'failure' || condition === 'success', ); if (!conditions.length) { @@ -41,10 +41,10 @@ export class KillOthers implements FlowController { const closeStates = commands.map((command) => command.close.pipe( map(({ exitCode }) => - exitCode === 0 ? ('success' as const) : ('failure' as const) + exitCode === 0 ? ('success' as const) : ('failure' as const), ), - filter((state) => conditions.includes(state)) - ) + filter((state) => conditions.includes(state)), + ), ); closeStates.forEach((closeState) => @@ -52,11 +52,11 @@ export class KillOthers implements FlowController { const killableCommands = commands.filter((command) => Command.canKill(command)); if (killableCommands.length) { this.logger.logGlobalEvent( - `Sending ${this.killSignal || 'SIGTERM'} to other processes..` + `Sending ${this.killSignal || 'SIGTERM'} to other processes..`, ); killableCommands.forEach((command) => command.kill(this.killSignal)); } - }) + }), ); return { commands }; diff --git a/src/flow-control/log-error.spec.ts b/src/flow-control/log-error.spec.ts index ad18e8f5..c141a566 100644 --- a/src/flow-control/log-error.spec.ts +++ b/src/flow-control/log-error.spec.ts @@ -33,19 +33,19 @@ it('logs the error event of each command', () => { expect(logger.logCommandEvent).toHaveBeenCalledTimes(6); expect(logger.logCommandEvent).toHaveBeenCalledWith( `Error occurred when executing command: ${commands[0].command}`, - commands[0] + commands[0], ); expect(logger.logCommandEvent).toHaveBeenCalledWith('error from command 0', commands[0]); expect(logger.logCommandEvent).toHaveBeenCalledWith( `Error occurred when executing command: ${commands[1].command}`, - commands[1] + commands[1], ); expect(logger.logCommandEvent).toHaveBeenCalledWith(error1.stack, commands[1]); expect(logger.logCommandEvent).toHaveBeenCalledWith( `Error occurred when executing command: ${commands[2].command}`, - commands[2] + commands[2], ); expect(logger.logCommandEvent).toHaveBeenCalledWith(String(error2), commands[2]); }); diff --git a/src/flow-control/log-error.ts b/src/flow-control/log-error.ts index 3f2024da..8ecf4867 100644 --- a/src/flow-control/log-error.ts +++ b/src/flow-control/log-error.ts @@ -17,12 +17,12 @@ export class LogError implements FlowController { command.error.subscribe((event) => { this.logger.logCommandEvent( `Error occurred when executing command: ${command.command}`, - command + command, ); const errorText = String(event instanceof Error ? event.stack || event : event); this.logger.logCommandEvent(errorText, command); - }) + }), ); return { commands }; diff --git a/src/flow-control/log-exit.spec.ts b/src/flow-control/log-exit.spec.ts index 6f63cf7e..3d6d136b 100644 --- a/src/flow-control/log-exit.spec.ts +++ b/src/flow-control/log-exit.spec.ts @@ -27,10 +27,10 @@ it('logs the close event of each command', () => { expect(logger.logCommandEvent).toHaveBeenCalledTimes(2); expect(logger.logCommandEvent).toHaveBeenCalledWith( `${commands[0].command} exited with code 0`, - commands[0] + commands[0], ); expect(logger.logCommandEvent).toHaveBeenCalledWith( `${commands[1].command} exited with code SIGTERM`, - commands[1] + commands[1], ); }); diff --git a/src/flow-control/log-exit.ts b/src/flow-control/log-exit.ts index 63025694..fee52ea0 100644 --- a/src/flow-control/log-exit.ts +++ b/src/flow-control/log-exit.ts @@ -17,9 +17,9 @@ export class LogExit implements FlowController { command.close.subscribe(({ exitCode }) => { this.logger.logCommandEvent( `${command.command} exited with code ${exitCode}`, - command + command, ); - }) + }), ); return { commands }; diff --git a/src/flow-control/log-output.ts b/src/flow-control/log-output.ts index 8a636da2..a26c0a50 100644 --- a/src/flow-control/log-output.ts +++ b/src/flow-control/log-output.ts @@ -14,10 +14,10 @@ export class LogOutput implements FlowController { handle(commands: Command[]) { commands.forEach((command) => { command.stdout.subscribe((text) => - this.logger.logCommandText(text.toString(), command) + this.logger.logCommandText(text.toString(), command), ); command.stderr.subscribe((text) => - this.logger.logCommandText(text.toString(), command) + this.logger.logCommandText(text.toString(), command), ); }); diff --git a/src/flow-control/log-timings.spec.ts b/src/flow-control/log-timings.spec.ts index 80ed9d05..d5518c23 100644 --- a/src/flow-control/log-timings.spec.ts +++ b/src/flow-control/log-timings.spec.ts @@ -80,25 +80,25 @@ it('logs the timings at the start and end (ie complete or error) event of each c expect(logger.logCommandEvent).toHaveBeenCalledTimes(4); expect(logger.logCommandEvent).toHaveBeenCalledWith( `${commands[0].command} started at ${formatDate(startDate0, timestampFormat)}`, - commands[0] + commands[0], ); expect(logger.logCommandEvent).toHaveBeenCalledWith( `${commands[1].command} started at ${formatDate(startDate1, timestampFormat)}`, - commands[1] + commands[1], ); expect(logger.logCommandEvent).toHaveBeenCalledWith( `${commands[1].command} stopped at ${formatDate( endDate1, - timestampFormat + timestampFormat, )} after ${command1DurationTextMs}`, - commands[1] + commands[1], ); expect(logger.logCommandEvent).toHaveBeenCalledWith( `${commands[0].command} stopped at ${formatDate( endDate0, - timestampFormat + timestampFormat, )} after ${command0DurationTextMs}`, - commands[0] + commands[0], ); }); diff --git a/src/flow-control/log-timings.ts b/src/flow-control/log-timings.ts index 0ce59ff5..04eacb03 100644 --- a/src/flow-control/log-timings.ts +++ b/src/flow-control/log-timings.ts @@ -80,7 +80,7 @@ export class LogTimings implements FlowController { const formattedStartDate = formatDate(startDate, this.timestampFormat); logger.logCommandEvent( `${command.command} started at ${formattedStartDate}`, - command + command, ); } else { const durationMs = endDate.getTime() - startDate.getTime(); @@ -89,7 +89,7 @@ export class LogTimings implements FlowController { `${ command.command } stopped at ${formattedEndDate} after ${durationMs.toLocaleString()}ms`, - command + command, ); } }); @@ -101,7 +101,7 @@ export class LogTimings implements FlowController { const allProcessesClosed = Rx.merge(...closeStreams).pipe( bufferCount(closeStreams.length), take(1), - combineLatestWith(finished) + combineLatestWith(finished), ); allProcessesClosed.subscribe(([exitInfos]) => this.printExitInfoTimingTable(exitInfos)); return { commands, onFinish: () => finished.next() }; diff --git a/src/flow-control/restart-process.spec.ts b/src/flow-control/restart-process.spec.ts index c4724563..f0759faa 100644 --- a/src/flow-control/restart-process.spec.ts +++ b/src/flow-control/restart-process.spec.ts @@ -45,7 +45,7 @@ it('restarts processes that fail after delay has passed', () => { expect(logger.logCommandEvent).toHaveBeenCalledTimes(1); expect(logger.logCommandEvent).toHaveBeenCalledWith( `${commands[0].command} restarted`, - commands[0] + commands[0], ); expect(commands[0].start).toHaveBeenCalledTimes(1); expect(commands[1].start).not.toHaveBeenCalled(); @@ -64,7 +64,7 @@ it('restarts processes up to tries', () => { expect(logger.logCommandEvent).toHaveBeenCalledTimes(2); expect(logger.logCommandEvent).toHaveBeenCalledWith( `${commands[0].command} restarted`, - commands[0] + commands[0], ); expect(commands[0].start).toHaveBeenCalledTimes(2); }); @@ -91,7 +91,7 @@ it('restarts processes until they succeed', () => { expect(logger.logCommandEvent).toHaveBeenCalledTimes(1); expect(logger.logCommandEvent).toHaveBeenCalledWith( `${commands[0].command} restarted`, - commands[0] + commands[0], ); expect(commands[0].start).toHaveBeenCalledTimes(1); }); diff --git a/src/flow-control/restart-process.ts b/src/flow-control/restart-process.ts index 91746b06..b02474c6 100644 --- a/src/flow-control/restart-process.ts +++ b/src/flow-control/restart-process.ts @@ -42,8 +42,8 @@ export class RestartProcess implements FlowController { .map((command) => command.close.pipe( take(this.tries), - takeWhile(({ exitCode }) => exitCode !== 0) - ) + takeWhile(({ exitCode }) => exitCode !== 0), + ), ) .map((failure, index) => Rx.merge( @@ -51,7 +51,7 @@ export class RestartProcess implements FlowController { // explicitly telling the subscriber that a restart is needed failure.pipe( delay(this.delay, this.scheduler), - map(() => true) + map(() => true), ), // Skip the first N emissions (as these would be duplicates of the above), // meaning it will be empty because of success, or failed all N times, @@ -59,15 +59,15 @@ export class RestartProcess implements FlowController { failure.pipe( skip(this.tries), map(() => false), - defaultIfEmpty(false) - ) + defaultIfEmpty(false), + ), ).subscribe((restart) => { const command = commands[index]; if (restart) { this.logger.logCommandEvent(`${command.command} restarted`, command); command.start(); } - }) + }), ); return { @@ -76,7 +76,7 @@ export class RestartProcess implements FlowController { filter(({ exitCode }, emission) => { // We let all success codes pass, and failures only after restarting won't happen again return exitCode === 0 || emission >= this.tries; - }) + }), ); return new Proxy(command, { diff --git a/src/index.ts b/src/index.ts index 76c3ab11..3dce77b6 100644 --- a/src/index.ts +++ b/src/index.ts @@ -93,7 +93,7 @@ export type ConcurrentlyOptions = BaseConcurrentlyOptions & { export default ( commands: ConcurrentlyCommandInput[], - options: Partial = {} + options: Partial = {}, ) => { const logger = new Logger({ hide: options.hide, diff --git a/src/logger.spec.ts b/src/logger.spec.ts index 4eab2d68..6d75cc4f 100644 --- a/src/logger.spec.ts +++ b/src/logger.spec.ts @@ -69,7 +69,7 @@ describe('#logGlobalEvent()', () => { expect(logger.log).toHaveBeenCalledWith( chalk.reset('-->') + ' ', - chalk.reset('foo') + '\n' + chalk.reset('foo') + '\n', ); }); }); @@ -245,7 +245,7 @@ describe('#logCommandEvent()', () => { expect(logger.log).toHaveBeenCalledWith( chalk.reset('[1]') + ' ', chalk.reset('foo') + '\n', - cmd + cmd, ); }); }); @@ -288,7 +288,7 @@ describe('#logTable()', () => { expect(logger.log).toHaveBeenCalledWith( chalk.reset('-->') + ' ', - chalk.reset('│ foo │ bar │') + '\n' + chalk.reset('│ foo │ bar │') + '\n', ); }); @@ -298,7 +298,7 @@ describe('#logTable()', () => { expect(logger.log).toHaveBeenCalledWith( chalk.reset('-->') + ' ', - chalk.reset('│ a │ b │') + '\n' + chalk.reset('│ a │ b │') + '\n', ); }); @@ -308,11 +308,11 @@ describe('#logTable()', () => { expect(logger.log).toHaveBeenCalledWith( chalk.reset('-->') + ' ', - chalk.reset('│ 123 │') + '\n' + chalk.reset('│ 123 │') + '\n', ); expect(logger.log).toHaveBeenCalledWith( chalk.reset('-->') + ' ', - chalk.reset('│ 456 │') + '\n' + chalk.reset('│ 456 │') + '\n', ); }); @@ -322,11 +322,11 @@ describe('#logTable()', () => { expect(logger.log).toHaveBeenCalledWith( chalk.reset('-->') + ' ', - chalk.reset('│ 123 │') + '\n' + chalk.reset('│ 123 │') + '\n', ); expect(logger.log).toHaveBeenCalledWith( chalk.reset('-->') + ' ', - chalk.reset('│ │') + '\n' + chalk.reset('│ │') + '\n', ); }); @@ -336,7 +336,7 @@ describe('#logTable()', () => { expect(logger.log).toHaveBeenCalledWith( chalk.reset('-->') + ' ', - chalk.reset('│ 1 │') + '\n' + chalk.reset('│ 1 │') + '\n', ); }); @@ -346,15 +346,15 @@ describe('#logTable()', () => { expect(logger.log).toHaveBeenCalledWith( chalk.reset('-->') + ' ', - chalk.reset('│ foo │ bar │') + '\n' + chalk.reset('│ foo │ bar │') + '\n', ); expect(logger.log).toHaveBeenCalledWith( chalk.reset('-->') + ' ', - chalk.reset('│ 1 │ │') + '\n' + chalk.reset('│ 1 │ │') + '\n', ); expect(logger.log).toHaveBeenCalledWith( chalk.reset('-->') + ' ', - chalk.reset('│ │ 2 │') + '\n' + chalk.reset('│ │ 2 │') + '\n', ); }); }); diff --git a/src/logger.ts b/src/logger.ts index 1498c508..bc3f7d6d 100644 --- a/src/logger.ts +++ b/src/logger.ts @@ -114,7 +114,7 @@ export class Logger { const keyRegex = new RegExp(_.escapeRegExp(`{${key}}`), 'g'); return prev.replace(keyRegex, String(val)); }, - prefix + prefix, ); } @@ -198,7 +198,7 @@ export class Logger { }); const headersFormatted = Object.keys(headers).map((header) => - header.padEnd(headers[header].length, ' ') + header.padEnd(headers[header].length, ' '), ); if (!headersFormatted.length) { diff --git a/src/prefix-color-selector.spec.ts b/src/prefix-color-selector.spec.ts index aaa5e383..5a7febcf 100644 --- a/src/prefix-color-selector.spec.ts +++ b/src/prefix-color-selector.spec.ts @@ -128,16 +128,16 @@ describe('#getNextColor', function () { (_, { acceptableConsoleColors, customColors, expectedColors }) => { if (acceptableConsoleColors) { jest.spyOn(PrefixColorSelector, 'ACCEPTABLE_CONSOLE_COLORS', 'get').mockReturnValue( - acceptableConsoleColors + acceptableConsoleColors, ); } const prefixColorSelector = new PrefixColorSelector(customColors); const prefixColorSelectorValues = expectedColors.map(() => - prefixColorSelector.getNextColor() + prefixColorSelector.getNextColor(), ); expect(prefixColorSelectorValues).toEqual(expectedColors); - } + }, ); const autoTests = { @@ -152,7 +152,7 @@ describe('#getNextColor', function () { ]; const prefixColorSelector = new PrefixColorSelector( - map ? expectedColors.map(() => 'auto') : ['auto'] + map ? expectedColors.map(() => 'auto') : ['auto'], ); expectedColors.reduce((previousColor, currentExpectedColor) => { diff --git a/src/prefix-color-selector.ts b/src/prefix-color-selector.ts index 95c17580..092b5e02 100644 --- a/src/prefix-color-selector.ts +++ b/src/prefix-color-selector.ts @@ -3,7 +3,7 @@ import chalk from 'chalk'; function getConsoleColorsWithoutCustomColors(customColors: string[]): string[] { return PrefixColorSelector.ACCEPTABLE_CONSOLE_COLORS.filter( // Consider the "Bright" variants of colors to be the same as the plain color to avoid similar colors - (color) => !customColors.includes(color.replace(/Bright$/, '')) + (color) => !customColors.includes(color.replace(/Bright$/, '')), ); }