From 02f626f529288414fc9a5d8fc148365fab0f5362 Mon Sep 17 00:00:00 2001 From: Mark Wubben Date: Fri, 26 Aug 2022 16:59:40 +0200 Subject: [PATCH] Update dependencies Exclude Acorn stack traces from reporter logs. Export types not interfaces. --- .xo-config.cjs | 10 +- entrypoints/plugin.d.ts | 2 +- lib/cli.js | 12 +- lib/load-config.js | 2 +- lib/plugin-support/shared-worker-loader.js | 2 +- lib/provider-manager.js | 2 +- lib/worker/base.js | 4 +- lib/worker/channel.cjs | 2 +- package-lock.json | 1390 +++++++++-------- package.json | 30 +- test-tap/api.js | 6 +- .../fail-fast/multiple-files/passes-slow.cjs | 2 +- test-tap/fixture/process-cwd-default.cjs | 2 +- .../with-dependencies/require-custom.cjs | 2 +- test-tap/helper/report-worker.js | 2 +- test-tap/helper/report.js | 1 + test-tap/integration/snapshots.js | 4 +- test-tap/reporters/default.edgecases.v14.log | 22 +- test-tap/reporters/default.edgecases.v16.log | 22 +- test-tap/reporters/default.edgecases.v18.log | 22 +- test-tap/reporters/default.failfast.v14.log | 2 +- test-tap/reporters/default.failfast.v16.log | 2 +- test-tap/reporters/default.failfast.v18.log | 2 +- test-tap/reporters/default.failfast2.v14.log | 2 +- test-tap/reporters/default.failfast2.v16.log | 2 +- test-tap/reporters/default.failfast2.v18.log | 2 +- test-tap/reporters/default.js | 4 +- test-tap/reporters/default.regular.v14.log | 30 +- test-tap/reporters/default.regular.v16.log | 30 +- test-tap/reporters/default.regular.v18.log | 30 +- .../default.timeoutinmultiplefiles.v14.log | 4 +- .../default.timeoutinmultiplefiles.v16.log | 4 +- .../default.timeoutinmultiplefiles.v18.log | 4 +- .../default.timeoutinsinglefile.v14.log | 2 +- .../default.timeoutinsinglefile.v16.log | 2 +- .../default.timeoutinsinglefile.v18.log | 2 +- .../default.timeoutwithmatch.v14.log | 2 +- .../default.timeoutwithmatch.v16.log | 2 +- .../default.timeoutwithmatch.v18.log | 2 +- test-tap/reporters/tap.js | 2 +- test-types/module/context.ts | 11 +- test-types/module/macros.ts | 9 +- test-types/module/try-commit.ts | 11 +- test/cjs-default/fixtures/test.cjs | 2 +- test/config/integration.js | 4 +- test/helpers/with-temporary-fixture.js | 4 +- types/assertions.d.ts | 80 +- types/subscribable.d.ts | 4 +- types/test-fn.d.ts | 56 +- types/try-fn.d.ts | 10 +- 50 files changed, 958 insertions(+), 906 deletions(-) diff --git a/.xo-config.cjs b/.xo-config.cjs index 138d98b07..01f8786db 100644 --- a/.xo-config.cjs +++ b/.xo-config.cjs @@ -64,7 +64,13 @@ module.exports = { files: 'test/**', rules: { 'import/no-anonymous-default-export': 'off', - 'node/prefer-global/process': 'off', + 'n/prefer-global/process': 'off', + }, + }, + { + files: 'test/**/fixtures/**', + rules: { + 'n/file-extension-in-import': 'off', }, }, { @@ -79,7 +85,7 @@ module.exports = { files: 'test-tap/**', rules: { 'import/no-anonymous-default-export': 'off', - 'node/prefer-global/process': 'off', + 'n/prefer-global/process': 'off', 'unicorn/error-message': 'off', }, }, diff --git a/entrypoints/plugin.d.ts b/entrypoints/plugin.d.ts index a2f68e179..24319ce25 100644 --- a/entrypoints/plugin.d.ts +++ b/entrypoints/plugin.d.ts @@ -1,4 +1,4 @@ -import {URL} from 'node:url'; +import type {URL} from 'node:url'; export namespace SharedWorker { export type ProtocolIdentifier = 'ava-4'; diff --git a/lib/cli.js b/lib/cli.js index a4c89ac09..c2ddcbca6 100644 --- a/lib/cli.js +++ b/lib/cli.js @@ -5,10 +5,10 @@ import process from 'node:process'; import arrify from 'arrify'; import ciParallelVars from 'ci-parallel-vars'; -import del from 'del'; +import {deleteAsync} from 'del'; import figures from 'figures'; import yargs from 'yargs'; -import {hideBin} from 'yargs/helpers'; // eslint-disable-line node/file-extension-in-import +import {hideBin} from 'yargs/helpers'; // eslint-disable-line n/file-extension-in-import import Api from './api.js'; import {chalk} from './chalk.js'; @@ -124,7 +124,7 @@ export default async function loadCli() { // eslint-disable-line complexity // run AVA with the debug command, though it's allowed. let activeInspector = false; try { - const {default: inspector} = await import('node:inspector'); // eslint-disable-line node/no-unsupported-features/es-syntax + const {default: inspector} = await import('node:inspector'); activeInspector = inspector.url() !== undefined; } catch {} @@ -242,11 +242,11 @@ export default async function loadCli() { // eslint-disable-line complexity const chalkOptions = {level: 0}; if (combined.color !== false) { - const {supportsColor: {level}} = await import('chalk'); // eslint-disable-line node/no-unsupported-features/es-syntax, unicorn/import-style + const {supportsColor: {level}} = await import('chalk'); // eslint-disable-line unicorn/import-style chalkOptions.level = level; } - const {set: setChalk} = await import('./chalk.js'); // eslint-disable-line node/no-unsupported-features/es-syntax + const {set: setChalk} = await import('./chalk.js'); setChalk(chalkOptions); if (confError) { @@ -262,7 +262,7 @@ export default async function loadCli() { // eslint-disable-line complexity const cacheDir = path.join(projectDir, 'node_modules', '.cache', 'ava'); try { - const deletedFilePaths = await del('*', {cwd: cacheDir}); + const deletedFilePaths = await deleteAsync('*', {cwd: cacheDir}); if (deletedFilePaths.length === 0) { console.log(`\n${chalk.green(figures.tick)} No cache files to remove`); diff --git a/lib/load-config.js b/lib/load-config.js index e3c70fd70..9ffa2aa6e 100644 --- a/lib/load-config.js +++ b/lib/load-config.js @@ -11,7 +11,7 @@ const MISSING_DEFAULT_EXPORT = Symbol('missing default export'); const EXPERIMENTS = new Set(); const importConfig = async ({configFile, fileForErrorMessage}) => { - const {default: config = MISSING_DEFAULT_EXPORT} = await import(url.pathToFileURL(configFile)); // eslint-disable-line node/no-unsupported-features/es-syntax + const {default: config = MISSING_DEFAULT_EXPORT} = await import(url.pathToFileURL(configFile)); if (config === MISSING_DEFAULT_EXPORT) { throw new Error(`${fileForErrorMessage} must have a default export`); } diff --git a/lib/plugin-support/shared-worker-loader.js b/lib/plugin-support/shared-worker-loader.js index 2813fe69c..8ab57d444 100644 --- a/lib/plugin-support/shared-worker-loader.js +++ b/lib/plugin-support/shared-worker-loader.js @@ -156,7 +156,7 @@ function broadcastMessage(data) { } async function loadFactory() { - const {default: factory} = await import(workerData.filename); // eslint-disable-line node/no-unsupported-features/es-syntax + const {default: factory} = await import(workerData.filename); return factory; } diff --git a/lib/provider-manager.js b/lib/provider-manager.js index c3b7c85d8..faf61f78b 100644 --- a/lib/provider-manager.js +++ b/lib/provider-manager.js @@ -15,7 +15,7 @@ const levelsByProtocol = { async function load(providerModule, projectDir) { const ava = {version: pkg.version}; - const {default: makeProvider} = await import(providerModule); // eslint-disable-line node/no-unsupported-features/es-syntax + const {default: makeProvider} = await import(providerModule); let fatal; let level; diff --git a/lib/worker/base.js b/lib/worker/base.js index e62e30eb4..a9ed9e4a3 100644 --- a/lib/worker/base.js +++ b/lib/worker/base.js @@ -141,7 +141,7 @@ const run = async options => { for (const extension of extensionsToLoadAsModules) { if (ref.endsWith(`.${extension}`)) { - return import(pathToFileURL(ref)); // eslint-disable-line node/no-unsupported-features/es-syntax + return import(pathToFileURL(ref)); } } @@ -161,7 +161,7 @@ const run = async options => { if (options.debug && options.debug.port !== undefined && options.debug.host !== undefined) { // If an inspector was active when the main process started, and is // already active for the worker process, do not open a new one. - const {default: inspector} = await import('node:inspector'); // eslint-disable-line node/no-unsupported-features/es-syntax + const {default: inspector} = await import('node:inspector'); if (!options.debug.active || inspector.url() === undefined) { inspector.open(options.debug.port, options.debug.host, true); } diff --git a/lib/worker/channel.cjs b/lib/worker/channel.cjs index 7eed7960a..6444f752b 100644 --- a/lib/worker/channel.cjs +++ b/lib/worker/channel.cjs @@ -15,7 +15,7 @@ let pEvent = async (emitter, event, options) => { emitter.on(event, addToBuffer); try { - ({pEvent} = await import('p-event')); // eslint-disable-line node/no-unsupported-features/es-syntax + ({pEvent} = await import('p-event')); } finally { emitter.off(event, addToBuffer); } diff --git a/package-lock.json b/package-lock.json index 33334eb00..d93bae76b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "4.3.3", "license": "MIT", "dependencies": { - "acorn": "^8.7.1", + "acorn": "^8.8.0", "acorn-walk": "^8.2.0", "ansi-styles": "^6.1.0", "arrgv": "^1.0.2", @@ -19,7 +19,7 @@ "chalk": "^5.0.1", "chokidar": "^3.5.3", "chunkd": "^2.0.1", - "ci-info": "^3.3.1", + "ci-info": "^3.3.2", "ci-parallel-vars": "^1.0.1", "clean-yaml-object": "^0.1.0", "cli-truncate": "^3.1.0", @@ -28,10 +28,10 @@ "concordance": "^5.0.4", "currently-unhandled": "^0.4.1", "debug": "^4.3.4", - "del": "^6.1.1", - "emittery": "^0.11.0", - "figures": "^4.0.1", - "globby": "^13.1.1", + "del": "^7.0.0", + "emittery": "^0.13.1", + "figures": "^5.0.0", + "globby": "^13.1.2", "ignore-by-default": "^2.1.0", "indent-string": "^5.0.0", "is-error": "^2.2.2", @@ -41,18 +41,18 @@ "mem": "^9.0.2", "ms": "^2.1.3", "p-event": "^5.0.1", - "p-map": "^5.4.0", + "p-map": "^5.5.0", "picomatch": "^2.3.1", "pkg-conf": "^4.0.0", "plur": "^5.1.0", - "pretty-ms": "^7.0.1", + "pretty-ms": "^8.0.0", "resolve-cwd": "^3.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.5", "strip-ansi": "^7.0.1", "supertap": "^3.0.1", "temp-dir": "^2.0.0", - "write-file-atomic": "^4.0.1", + "write-file-atomic": "^4.0.2", "yargs": "^17.5.1" }, "bin": { @@ -64,20 +64,20 @@ "@sindresorhus/tsconfig": "^3.0.1", "@sinonjs/fake-timers": "^9.1.2", "ansi-escapes": "^5.0.0", - "c8": "^7.11.3", + "c8": "^7.12.0", "delay": "^5.0.0", "execa": "^6.1.0", "fs-extra": "^10.1.0", "get-stream": "^6.0.1", "replace-string": "^4.0.0", - "sinon": "^13.0.2", - "tap": "^16.2.0", + "sinon": "^14.0.0", + "tap": "^16.3.0", "temp-write": "^5.0.0", - "tempy": "^2.0.0", + "tempy": "^3.0.0", "touch": "^3.1.0", - "tsd": "^0.20.0", + "tsd": "^0.22.0", "typescript": "^4.7.3", - "xo": "^0.49.0", + "xo": "^0.52.2", "zen-observable": "^0.8.15" }, "engines": { @@ -287,43 +287,201 @@ } } }, + "node_modules/@ava/v4/node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ava/v4/node_modules/aggregate-error/node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ava/v4/node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ava/v4/node_modules/del": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", + "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==", + "dev": true, + "dependencies": { + "globby": "^11.0.1", + "graceful-fs": "^4.2.4", + "is-glob": "^4.0.1", + "is-path-cwd": "^2.2.0", + "is-path-inside": "^3.0.2", + "p-map": "^4.0.0", + "rimraf": "^3.0.2", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ava/v4/node_modules/del/node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ava/v4/node_modules/del/node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ava/v4/node_modules/emittery": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.11.0.tgz", + "integrity": "sha512-S/7tzL6v5i+4iJd627Nhv9cLFIo5weAIlGccqJFpnBoDB8U1TF2k5tez4J/QNuxyyhWuFqHg1L84Kd3m7iXg6g==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" + } + }, + "node_modules/@ava/v4/node_modules/figures": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/figures/-/figures-4.0.1.tgz", + "integrity": "sha512-rElJwkA/xS04Vfg+CaZodpso7VqBknOYbzi6I76hI4X80RUjkSxO2oAyPmGbuXUppywjqndOrQDl817hDnI++w==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^5.0.0", + "is-unicode-supported": "^1.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ava/v4/node_modules/is-path-cwd": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", + "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ava/v4/node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ava/v4/node_modules/parse-ms": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-2.1.0.tgz", + "integrity": "sha512-kHt7kzLoS9VBZfUsiKjv43mr91ea+U05EyKkEtqp7vNbHxmaVuEqN7XxeEVnGrMtYOAxGrDElSi96K7EgO1zCA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ava/v4/node_modules/pretty-ms": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-7.0.1.tgz", + "integrity": "sha512-973driJZvxiGOQ5ONsFhOF/DtzPMOMtgC11kCpUrPGMTgqp2q/1gwzCquocrN33is0VZ5GFHXZYMM9l6h67v2Q==", + "dev": true, + "dependencies": { + "parse-ms": "^2.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/@babel/code-frame": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", - "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", "dev": true, "dependencies": { - "@babel/highlight": "^7.16.7" + "@babel/highlight": "^7.18.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/compat-data": { - "version": "7.17.10", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.10.tgz", - "integrity": "sha512-GZt/TCsG70Ms19gfZO1tM4CVnXsPgEPBCpJu+Qz3L0LUDsY5nZqFZglIoPC1kIYOtNBZlrnFT+klg12vFGZXrw==", + "version": "7.18.13", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.18.13.tgz", + "integrity": "sha512-5yUzC5LqyTFp2HLmDoxGQelcdYgSpP9xsnMWBphAscOdFrHSAVbLNzWiy32sVNDqJRDiJK6klfDnAgu6PAGSHw==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.2.tgz", - "integrity": "sha512-A8pri1YJiC5UnkdrWcmfZTJTV85b4UXTAfImGmCfYmax4TR9Cw8sDS0MOk++Gp2mE/BefVJ5nwy5yzqNJbP/DQ==", + "version": "7.18.13", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.13.tgz", + "integrity": "sha512-ZisbOvRRusFktksHSG6pjj1CSvkPkcZq/KHD45LAkVP/oiHJkNBZWfpvlLmX8OtHDG8IuzsFlVRWo08w7Qxn0A==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.18.2", - "@babel/helper-compilation-targets": "^7.18.2", - "@babel/helper-module-transforms": "^7.18.0", - "@babel/helpers": "^7.18.2", - "@babel/parser": "^7.18.0", - "@babel/template": "^7.16.7", - "@babel/traverse": "^7.18.2", - "@babel/types": "^7.18.2", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.18.13", + "@babel/helper-compilation-targets": "^7.18.9", + "@babel/helper-module-transforms": "^7.18.9", + "@babel/helpers": "^7.18.9", + "@babel/parser": "^7.18.13", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.18.13", + "@babel/types": "^7.18.13", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -348,13 +506,13 @@ } }, "node_modules/@babel/generator": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.2.tgz", - "integrity": "sha512-W1lG5vUwFvfMd8HVXqdfbuG7RuaSrTCCD8cl8fP8wOivdbtbIg2Db3IWUcgvfxKbbn6ZBGYRW/Zk1MIwK49mgw==", + "version": "7.18.13", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.13.tgz", + "integrity": "sha512-CkPg8ySSPuHTYPJYo7IRALdqyjM9HCbt/3uOBEFbzyGVP6Mn8bwFPB0jX6982JVNBlYzM1nnPkfjuXSOPtQeEQ==", "dev": true, "dependencies": { - "@babel/types": "^7.18.2", - "@jridgewell/gen-mapping": "^0.3.0", + "@babel/types": "^7.18.13", + "@jridgewell/gen-mapping": "^0.3.2", "jsesc": "^2.5.1" }, "engines": { @@ -362,12 +520,12 @@ } }, "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.1.tgz", - "integrity": "sha512-GcHwniMlA2z+WFPWuY8lp3fsza0I8xPFMWL5+n8LYyP6PSvPrXf4+n8stDHZY2DM0zy9sVkRDy1jDI4XGzYVqg==", + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", "dev": true, "dependencies": { - "@jridgewell/set-array": "^1.0.0", + "@jridgewell/set-array": "^1.0.1", "@jridgewell/sourcemap-codec": "^1.4.10", "@jridgewell/trace-mapping": "^0.3.9" }, @@ -376,13 +534,13 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.2.tgz", - "integrity": "sha512-s1jnPotJS9uQnzFtiZVBUxe67CuBa679oWFHpxYYnTpRL/1ffhyX44R9uYiXoa/pLXcY9H2moJta0iaanlk/rQ==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.9.tgz", + "integrity": "sha512-tzLCyVmqUiFlcFoAPLA/gL9TeYrF61VLNtb+hvkuVaB5SUjW7jcfrglBIX1vUIoT7CLP3bBlIMeyEsIl2eFQNg==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.17.10", - "@babel/helper-validator-option": "^7.16.7", + "@babel/compat-data": "^7.18.8", + "@babel/helper-validator-option": "^7.18.6", "browserslist": "^4.20.2", "semver": "^6.3.0" }, @@ -403,133 +561,142 @@ } }, "node_modules/@babel/helper-environment-visitor": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.2.tgz", - "integrity": "sha512-14GQKWkX9oJzPiQQ7/J36FTXcD4kSp8egKjO9nINlSKiHITRA9q/R74qu8S9xlc/b/yjsJItQUeeh3xnGN0voQ==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", + "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-function-name": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.17.9.tgz", - "integrity": "sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.18.9.tgz", + "integrity": "sha512-fJgWlZt7nxGksJS9a0XdSaI4XvpExnNIgRP+rVefWh5U7BL8pPuir6SJUmFKRfjWQ51OtWSzwOxhaH/EBWWc0A==", "dev": true, "dependencies": { - "@babel/template": "^7.16.7", - "@babel/types": "^7.17.0" + "@babel/template": "^7.18.6", + "@babel/types": "^7.18.9" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-hoist-variables": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz", - "integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", "dev": true, "dependencies": { - "@babel/types": "^7.16.7" + "@babel/types": "^7.18.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-imports": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz", - "integrity": "sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", "dev": true, "dependencies": { - "@babel/types": "^7.16.7" + "@babel/types": "^7.18.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.18.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.0.tgz", - "integrity": "sha512-kclUYSUBIjlvnzN2++K9f2qzYKFgjmnmjwL4zlmU5f8ZtzgWe8s0rUPSTGy2HmK4P8T52MQsS+HTQAgZd3dMEA==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.9.tgz", + "integrity": "sha512-KYNqY0ICwfv19b31XzvmI/mfcylOzbLtowkw+mfvGPAQ3kfCnMLYbED3YecL5tPd8nAYFQFAd6JHp2LxZk/J1g==", "dev": true, "dependencies": { - "@babel/helper-environment-visitor": "^7.16.7", - "@babel/helper-module-imports": "^7.16.7", - "@babel/helper-simple-access": "^7.17.7", - "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/helper-validator-identifier": "^7.16.7", - "@babel/template": "^7.16.7", - "@babel/traverse": "^7.18.0", - "@babel/types": "^7.18.0" + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-simple-access": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/helper-validator-identifier": "^7.18.6", + "@babel/template": "^7.18.6", + "@babel/traverse": "^7.18.9", + "@babel/types": "^7.18.9" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-simple-access": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.2.tgz", - "integrity": "sha512-7LIrjYzndorDY88MycupkpQLKS1AFfsVRm2k/9PtKScSy5tZq0McZTj+DiMRynboZfIqOKvo03pmhTaUgiD6fQ==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.6.tgz", + "integrity": "sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g==", "dev": true, "dependencies": { - "@babel/types": "^7.18.2" + "@babel/types": "^7.18.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-split-export-declaration": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz", - "integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", "dev": true, "dependencies": { - "@babel/types": "^7.16.7" + "@babel/types": "^7.18.6" }, "engines": { "node": ">=6.9.0" } }, + "node_modules/@babel/helper-string-parser": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz", + "integrity": "sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz", - "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz", + "integrity": "sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-option": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz", - "integrity": "sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", + "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.2.tgz", - "integrity": "sha512-j+d+u5xT5utcQSzrh9p+PaJX94h++KN+ng9b9WEJq7pkUPAd61FGqhjuUEdfknb3E/uDBb7ruwEeKkIxNJPIrg==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.9.tgz", + "integrity": "sha512-Jf5a+rbrLoR4eNdUmnFu8cN5eNJT6qdTdOg5IHIzq87WwyRw9PwguLFOWYgktN/60IP4fgDUawJvs7PjQIzELQ==", "dev": true, "dependencies": { - "@babel/template": "^7.16.7", - "@babel/traverse": "^7.18.2", - "@babel/types": "^7.18.2" + "@babel/template": "^7.18.6", + "@babel/traverse": "^7.18.9", + "@babel/types": "^7.18.9" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { - "version": "7.17.12", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.12.tgz", - "integrity": "sha512-7yykMVF3hfZY2jsHZEEgLc+3x4o1O+fYyULu11GynEUQNwB6lua+IIQn1FiJxNucd5UlyJryrwsOh8PL9Sn8Qg==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", "dev": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.16.7", + "@babel/helper-validator-identifier": "^7.18.6", "chalk": "^2.0.0", "js-tokens": "^4.0.0" }, @@ -594,9 +761,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.18.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.4.tgz", - "integrity": "sha512-FDge0dFazETFcxGw/EXzOkN8uJp0PC7Qbm+Pe9T+av2zlBpOgunFHkQPPn+eRuClU73JF+98D531UgayY89tow==", + "version": "7.18.13", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.13.tgz", + "integrity": "sha512-dgXcIfMuQ0kgzLB2b9tRZs7TTFFaGM2AbtA4fJgUUYukzGH4jwsS7hzQHEGs67jdehpm22vkgKwvbU+aEflgwg==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -606,33 +773,33 @@ } }, "node_modules/@babel/template": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz", - "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==", + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", + "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.16.7", - "@babel/parser": "^7.16.7", - "@babel/types": "^7.16.7" + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.18.10", + "@babel/types": "^7.18.10" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.2.tgz", - "integrity": "sha512-9eNwoeovJ6KH9zcCNnENY7DMFwTU9JdGCFtqNLfUAqtUHRCOsTOqWoffosP8vKmNYeSBUv3yVJXjfd8ucwOjUA==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.18.2", - "@babel/helper-environment-visitor": "^7.18.2", - "@babel/helper-function-name": "^7.17.9", - "@babel/helper-hoist-variables": "^7.16.7", - "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/parser": "^7.18.0", - "@babel/types": "^7.18.2", + "version": "7.18.13", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.13.tgz", + "integrity": "sha512-N6kt9X1jRMLPxxxPYWi7tgvJRH/rtoU+dbKAPDM44RFHiMH8igdsaSBgFeskhSl/kLWLDUvIh1RXCrTmg0/zvA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.18.13", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.18.9", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.18.13", + "@babel/types": "^7.18.13", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -641,12 +808,13 @@ } }, "node_modules/@babel/types": { - "version": "7.18.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.4.tgz", - "integrity": "sha512-ThN1mBcMq5pG/Vm2IcBmPPfyPXbd8S02rS+OBIDENdufvqC7Z/jHPCv9IcP01277aKtDI8g/2XysBN4hA8niiw==", + "version": "7.18.13", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.13.tgz", + "integrity": "sha512-ePqfTihzW0W6XAU+aMw2ykilisStJfDnsejDCXRchCcMJ4O0+8DhPXf2YUbZ6wjBlsEmZwLK/sPweWtu8hcJYQ==", "dev": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.16.7", + "@babel/helper-string-parser": "^7.18.10", + "@babel/helper-validator-identifier": "^7.18.6", "to-fast-properties": "^2.0.0" }, "engines": { @@ -686,9 +854,9 @@ "dev": true }, "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.15.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.15.0.tgz", - "integrity": "sha512-bpzcOlgDhMG070Av0Vy5Owklpv1I6+j96GhUI7Rh7IzDCKLzboflLrrfqMu8NquDbiR4EOQk7XzJwqVJxicxog==", + "version": "13.17.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz", + "integrity": "sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -725,9 +893,9 @@ } }, "node_modules/@humanwhocodes/config-array": { - "version": "0.9.5", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz", - "integrity": "sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==", + "version": "0.10.4", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.10.4.tgz", + "integrity": "sha512-mXAIHxZT3Vcpg83opl1wGlVZ9xydbfZO3r5YfRSH6Gpp2J/PfdBP0wbDa2sO6/qRbcalpoevVyW6A/fI6LfeMw==", "dev": true, "dependencies": { "@humanwhocodes/object-schema": "^1.2.1", @@ -738,6 +906,16 @@ "node": ">=10.10.0" } }, + "node_modules/@humanwhocodes/gitignore-to-minimatch": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@humanwhocodes/gitignore-to-minimatch/-/gitignore-to-minimatch-1.0.2.tgz", + "integrity": "sha512-rSqmMJDdLFUsyxR6FMtD00nfQKKLFb1kv+qBbOVKqErvloEIJLo5bDTJTQNTYgeyp78JsA7u/NPi5jT1GR/MuA==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, "node_modules/@humanwhocodes/object-schema": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", @@ -835,18 +1013,18 @@ } }, "node_modules/@jridgewell/resolve-uri": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.7.tgz", - "integrity": "sha512-8cXDaBBHOr2pQ7j77Y6Vp5VDT2sIqWyWQ56TjEq4ih/a4iST3dItRe8Q9fp0rrIl9DoKhWQtUQz/YpOxLkXbNA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", "dev": true, "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/set-array": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.1.tgz", - "integrity": "sha512-Ct5MqZkLGEXTVmQYbGtx9SVqD2fqwvdubdps5D3djjAkgkKwT918VNOz65pEHFaYTeWcukmJmH5SwsA9Tn2ObQ==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", "dev": true, "engines": { "node": ">=6.0.0" @@ -864,13 +1042,13 @@ } }, "node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.1.tgz", - "integrity": "sha512-GcHwniMlA2z+WFPWuY8lp3fsza0I8xPFMWL5+n8LYyP6PSvPrXf4+n8stDHZY2DM0zy9sVkRDy1jDI4XGzYVqg==", + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", "dev": true, "peer": true, "dependencies": { - "@jridgewell/set-array": "^1.0.0", + "@jridgewell/set-array": "^1.0.1", "@jridgewell/sourcemap-codec": "^1.4.10", "@jridgewell/trace-mapping": "^0.3.9" }, @@ -879,15 +1057,15 @@ } }, "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.13", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.13.tgz", - "integrity": "sha512-GryiOJmNcWbovBxTfZSF71V/mXbgcV3MewDe3kIMCLyIh5e7SKAeUZs+rMnJ8jkMolZ/4/VsdBmMrw3l+VdZ3w==", + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", "dev": true }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.13", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.13.tgz", - "integrity": "sha512-o1xbKhp9qnIAoHJSWd6KlCZfqslL4valSF81H8ImioOAxluWYWOpWkpyktY2vnt4tbrX9XYaxovq6cgowaJp2w==", + "version": "0.3.15", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.15.tgz", + "integrity": "sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g==", "dev": true, "dependencies": { "@jridgewell/resolve-uri": "^3.0.3", @@ -965,15 +1143,15 @@ } }, "node_modules/@sinonjs/text-encoding": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz", - "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.2.tgz", + "integrity": "sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ==", "dev": true }, "node_modules/@tsd/typescript": { - "version": "4.6.4", - "resolved": "https://registry.npmjs.org/@tsd/typescript/-/typescript-4.6.4.tgz", - "integrity": "sha512-+9o716aWbcjKLbV4bCrGlJKJbS0UZNogfVk9U7ffooYSf/9GOJ6wwahTSrRjW7mWQdywQ/sIg9xxbuPLnkmhwg==", + "version": "4.7.4", + "resolved": "https://registry.npmjs.org/@tsd/typescript/-/typescript-4.7.4.tgz", + "integrity": "sha512-jbtC+RgKZ9Kk65zuRZbKLTACf+tvFW4Rfq0JEMXrlmV3P3yme+Hm+pnb5fJRyt61SjIitcrC810wj7+1tgsEmg==", "dev": true, "bin": { "tsc": "typescript/bin/tsc", @@ -991,9 +1169,9 @@ } }, "node_modules/@types/eslint-scope": { - "version": "3.7.3", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.3.tgz", - "integrity": "sha512-PB3ldyrcnAicT35TWPs5IcwKD8S333HMaa2VVv4+wdvebJkjWuW/xESoB8IwRcog8HYVYamb1g/R31Qv5Bx03g==", + "version": "3.7.4", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", + "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", "dev": true, "peer": true, "dependencies": { @@ -1002,9 +1180,9 @@ } }, "node_modules/@types/estree": { - "version": "0.0.51", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", - "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.0.tgz", + "integrity": "sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==", "dev": true }, "node_modules/@types/istanbul-lib-coverage": { @@ -1032,9 +1210,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "17.0.38", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.38.tgz", - "integrity": "sha512-5jY9RhV7c0Z4Jy09G+NIDTsCZ5G0L5n+Z+p+Y7t5VJHM30bgwzSjVtlcBxqAj+6L/swIlvtOSzr8rBk/aNyV2g==", + "version": "18.7.13", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.7.13.tgz", + "integrity": "sha512-46yIhxSe5xEaJZXWdIBP7GU4HDTG8/eo0qd9atdiL+lFpA03y8KS+lkTN834TWJj5767GbWv4n/P6efyTFt1Dw==", "dev": true, "peer": true }, @@ -1232,9 +1410,9 @@ "dev": true }, "node_modules/acorn": { - "version": "8.7.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz", - "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==", + "version": "8.8.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz", + "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==", "bin": { "acorn": "bin/acorn" }, @@ -1418,6 +1596,15 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/array.prototype.flat": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.0.tgz", @@ -1512,9 +1699,9 @@ } }, "node_modules/browserslist": { - "version": "4.20.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.3.tgz", - "integrity": "sha512-NBhymBQl1zM0Y5dQT/O+xiLP9/rzOIQdKM/eMJBAq7yBgaB6krIYLGejrwVYnSHZdqjscB1SPuAjHwxjvN6Wdg==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.3.tgz", + "integrity": "sha512-898rgRXLAyRkM1GryrrBHGkqA5hlpkV5MhtZwg9QXeiyLUYs2k00Un05aX5l2/yJIOObYKOpS2JNo8nJDE7fWQ==", "dev": true, "funding": [ { @@ -1527,11 +1714,10 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001332", - "electron-to-chromium": "^1.4.118", - "escalade": "^3.1.1", - "node-releases": "^2.0.3", - "picocolors": "^1.0.0" + "caniuse-lite": "^1.0.30001370", + "electron-to-chromium": "^1.4.202", + "node-releases": "^2.0.6", + "update-browserslist-db": "^1.0.5" }, "bin": { "browserslist": "cli.js" @@ -1559,18 +1745,18 @@ } }, "node_modules/builtins": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-4.1.0.tgz", - "integrity": "sha512-1bPRZQtmKaO6h7qV1YHXNtr6nCK28k0Zo95KM4dXfILcZZwoHJBN1m3lfLv9LPkcOZlrSr+J1bzMaZFO98Yq0w==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", + "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==", "dev": true, "dependencies": { "semver": "^7.0.0" } }, "node_modules/c8": { - "version": "7.11.3", - "resolved": "https://registry.npmjs.org/c8/-/c8-7.11.3.tgz", - "integrity": "sha512-6YBmsaNmqRm9OS3ZbIiL2EZgi1+Xc4O24jL3vMYGE6idixYuGdy76rIfIdltSKDj9DpLNrcXSonUTR1miBD0wA==", + "version": "7.12.0", + "resolved": "https://registry.npmjs.org/c8/-/c8-7.12.0.tgz", + "integrity": "sha512-CtgQrHOkyxr5koX1wEUmN/5cfDa2ckbHRA4Gy5LAL0zaCFtVWJS5++n+w4/sr2GWGerBxgTjpKeDclk/Qk6W/A==", "dev": true, "dependencies": { "@bcoe/v8-coverage": "^0.2.3", @@ -1739,9 +1925,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001346", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001346.tgz", - "integrity": "sha512-q6ibZUO2t88QCIPayP/euuDREq+aMAxFE5S70PkrLh0iTDj/zEhgvJRKC2+CvXY6EWc6oQwUR48lL5vCW6jiXQ==", + "version": "1.0.30001383", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001383.tgz", + "integrity": "sha512-swMpEoTp5vDoGBZsYZX7L7nXHe6dsHxi9o6/LKf/f0LukVtnrxly5GVb/fWdCDTqi/yw6Km6tiJ0pmBacm0gbg==", "dev": true, "funding": [ { @@ -1818,9 +2004,9 @@ "integrity": "sha512-7d58XsFmOq0j6el67Ug9mHf9ELUXsQXYJBkyxhH/k+6Ke0qXRnv0kbemx+Twc6fRJ07C49lcbdgm9FL1Ei/6SQ==" }, "node_modules/ci-info": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.3.1.tgz", - "integrity": "sha512-SXgeMX9VwDe7iFFaEWkA5AstuER9YKqy4EhHqr4DVqkwmD9rpVimkMKWHdjn30Ja45txyjhSn63lVX69eVCckg==" + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.3.2.tgz", + "integrity": "sha512-xmDt/QIAdeZ9+nfdPsaBCpMvHNLFiLdjj59qjqn+6iPe6YmHGQ35sBnQ8uslRBXFmXkiZQOJRjvQeoGppoTjjg==" }, "node_modules/ci-parallel-vars": { "version": "1.0.1", @@ -2205,90 +2391,32 @@ } }, "node_modules/del": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", - "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/del/-/del-7.0.0.tgz", + "integrity": "sha512-tQbV/4u5WVB8HMJr08pgw0b6nG4RGt/tj+7Numvq+zqcvUFeMaIWWOUFltiU+6go8BSO2/ogsB4EasDaj0y68Q==", "dependencies": { - "globby": "^11.0.1", - "graceful-fs": "^4.2.4", - "is-glob": "^4.0.1", - "is-path-cwd": "^2.2.0", - "is-path-inside": "^3.0.2", - "p-map": "^4.0.0", + "globby": "^13.1.2", + "graceful-fs": "^4.2.10", + "is-glob": "^4.0.3", + "is-path-cwd": "^3.0.0", + "is-path-inside": "^4.0.0", + "p-map": "^5.5.0", "rimraf": "^3.0.2", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/del/node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/del/node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "engines": { - "node": ">=8" - } - }, - "node_modules/del/node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "engines": { - "node": ">=6" - } - }, - "node_modules/del/node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" + "slash": "^4.0.0" }, "engines": { - "node": ">=10" + "node": ">=14.16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/del/node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/del/node_modules/p-map": { + "node_modules/del/node_modules/slash": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dependencies": { - "aggregate-error": "^3.0.0" - }, + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", "engines": { - "node": ">=10" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -2344,15 +2472,15 @@ "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" }, "node_modules/electron-to-chromium": { - "version": "1.4.144", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.144.tgz", - "integrity": "sha512-R3RV3rU1xWwFJlSClVWDvARaOk6VUO/FubHLodIASDB3Mc2dzuWvNdfOgH9bwHUTqT79u92qw60NWfwUdzAqdg==", + "version": "1.4.232", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.232.tgz", + "integrity": "sha512-nd+FW8xHjM+PxNWG44nKnwHaBDdVpJUZuI2sS2JJPt/QpdombnmoCRWEEQNnzaktdIQhsNWdD+dlqxwO8Bn99g==", "dev": true }, "node_modules/emittery": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.11.0.tgz", - "integrity": "sha512-S/7tzL6v5i+4iJd627Nhv9cLFIo5weAIlGccqJFpnBoDB8U1TF2k5tez4J/QNuxyyhWuFqHg1L84Kd3m7iXg6g==", + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", + "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", "engines": { "node": ">=12" }, @@ -2508,13 +2636,14 @@ } }, "node_modules/eslint": { - "version": "8.16.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.16.0.tgz", - "integrity": "sha512-MBndsoXY/PeVTDJeWsYj7kLZ5hQpJOfMYLsF6LicLHQWbRDG19lK5jOix4DPl8yY4SUFcE3txy86OzFLWT+yoA==", + "version": "8.22.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.22.0.tgz", + "integrity": "sha512-ci4t0sz6vSRKdmkOGmprBo6fmI4PrphDFMy5JEq/fNS0gQkJM3rLmrqcp8ipMcdobH3KtUP40KniAE9W19S4wA==", "dev": true, "dependencies": { "@eslint/eslintrc": "^1.3.0", - "@humanwhocodes/config-array": "^0.9.2", + "@humanwhocodes/config-array": "^0.10.4", + "@humanwhocodes/gitignore-to-minimatch": "^1.0.2", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -2524,14 +2653,17 @@ "eslint-scope": "^7.1.1", "eslint-utils": "^3.0.0", "eslint-visitor-keys": "^3.3.0", - "espree": "^9.3.2", + "espree": "^9.3.3", "esquery": "^1.4.0", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", "functional-red-black-tree": "^1.0.1", "glob-parent": "^6.0.1", "globals": "^13.15.0", + "globby": "^11.1.0", + "grapheme-splitter": "^1.0.4", "ignore": "^5.2.0", "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", @@ -2572,9 +2704,9 @@ } }, "node_modules/eslint-config-xo": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/eslint-config-xo/-/eslint-config-xo-0.41.0.tgz", - "integrity": "sha512-cyTc182COQVdalOi5105h0Cw/Qb52IRGyIZLmUICIauANm9Upmv81UEsuFkdKnvwr4NtU95qjdk3g4/kNspA6g==", + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/eslint-config-xo/-/eslint-config-xo-0.42.0.tgz", + "integrity": "sha512-HIfd+AM6tHFoaZ/NXYDV3Mr/CJrAj/DoP6IOYt1/v+90XtCwVYOfW7LXbRDYDmhQMzT16h7eqPRcex72waRqdA==", "dev": true, "dependencies": { "confusing-browser-globals": "1.0.11" @@ -2816,92 +2948,29 @@ } }, "node_modules/eslint-module-utils": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.3.tgz", - "integrity": "sha512-088JEC7O3lDZM9xGe0RerkOMd0EjFl+Yvd1jPWIkMT5u3H9+HC34mWWPnqPrN13gieT9pBOO+Qt07Nb/6TresQ==", - "dev": true, - "dependencies": { - "debug": "^3.2.7", - "find-up": "^2.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-module-utils/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-module-utils/node_modules/find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==", - "dev": true, - "dependencies": { - "locate-path": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-module-utils/node_modules/locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==", + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.4.tgz", + "integrity": "sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA==", "dev": true, "dependencies": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" + "debug": "^3.2.7" }, "engines": { "node": ">=4" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + } } }, - "node_modules/eslint-module-utils/node_modules/p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "dependencies": { - "p-try": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-module-utils/node_modules/p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==", - "dev": true, - "dependencies": { - "p-limit": "^1.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-module-utils/node_modules/p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-module-utils/node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, - "engines": { - "node": ">=4" + "dependencies": { + "ms": "^2.1.1" } }, "node_modules/eslint-plugin-ava": { @@ -2939,9 +3008,9 @@ } }, "node_modules/eslint-plugin-es": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", - "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-4.1.0.tgz", + "integrity": "sha512-GILhQTnjYE2WorX5Jyi5i4dz5ALWxBIdQECVQavL6s7cI76IZTDWleTHkxz/QT3kvcs2QlGHvKLYsSlPOlPXnQ==", "dev": true, "dependencies": { "eslint-utils": "^2.0.0", @@ -3063,84 +3132,56 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true }, - "node_modules/eslint-plugin-no-use-extend-native": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-no-use-extend-native/-/eslint-plugin-no-use-extend-native-0.5.0.tgz", - "integrity": "sha512-dBNjs8hor8rJgeXLH4HTut5eD3RGWf9JUsadIfuL7UosVQ/dnvOKwxEcRrXrFxrMZ8llUVWT+hOimxJABsAUzQ==", - "dev": true, - "dependencies": { - "is-get-set-prop": "^1.0.0", - "is-js-type": "^2.0.0", - "is-obj-prop": "^1.0.0", - "is-proto-prop": "^2.0.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/eslint-plugin-node": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", - "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", + "node_modules/eslint-plugin-n": { + "version": "15.2.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-15.2.5.tgz", + "integrity": "sha512-8+BYsqiyZfpu6NXmdLOXVUfk8IocpCjpd8nMRRH0A9ulrcemhb2VI9RSJMEy5udx++A/YcVPD11zT8hpFq368g==", "dev": true, "dependencies": { - "eslint-plugin-es": "^3.0.0", - "eslint-utils": "^2.0.0", + "builtins": "^5.0.1", + "eslint-plugin-es": "^4.1.0", + "eslint-utils": "^3.0.0", "ignore": "^5.1.1", - "minimatch": "^3.0.4", - "resolve": "^1.10.1", - "semver": "^6.1.0" + "is-core-module": "^2.10.0", + "minimatch": "^3.1.2", + "resolve": "^1.22.1", + "semver": "^7.3.7" }, "engines": { - "node": ">=8.10.0" + "node": ">=12.22.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" }, "peerDependencies": { - "eslint": ">=5.16.0" + "eslint": ">=7.0.0" } }, - "node_modules/eslint-plugin-node/node_modules/eslint-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "node_modules/eslint-plugin-no-use-extend-native": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-no-use-extend-native/-/eslint-plugin-no-use-extend-native-0.5.0.tgz", + "integrity": "sha512-dBNjs8hor8rJgeXLH4HTut5eD3RGWf9JUsadIfuL7UosVQ/dnvOKwxEcRrXrFxrMZ8llUVWT+hOimxJABsAUzQ==", "dev": true, "dependencies": { - "eslint-visitor-keys": "^1.1.0" - }, - "engines": { - "node": ">=6" + "is-get-set-prop": "^1.0.0", + "is-js-type": "^2.0.0", + "is-obj-prop": "^1.0.0", + "is-proto-prop": "^2.0.0" }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - } - }, - "node_modules/eslint-plugin-node/node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true, "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-plugin-node/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" + "node": ">=6.0.0" } }, "node_modules/eslint-plugin-prettier": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.0.0.tgz", - "integrity": "sha512-98MqmCJ7vJodoQK359bqQWaxOE0CS8paAz/GgjaZLyex4TTk3g9HugoO89EqWCrFiOqn9EVvcoo7gZzONCWVwQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz", + "integrity": "sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==", "dev": true, "dependencies": { "prettier-linter-helpers": "^1.0.0" }, "engines": { - "node": ">=6.0.0" + "node": ">=12.0.0" }, "peerDependencies": { "eslint": ">=7.28.0", @@ -3336,9 +3377,9 @@ } }, "node_modules/eslint/node_modules/globals": { - "version": "13.15.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.15.0.tgz", - "integrity": "sha512-bpzcOlgDhMG070Av0Vy5Owklpv1I6+j96GhUI7Rh7IzDCKLzboflLrrfqMu8NquDbiR4EOQk7XzJwqVJxicxog==", + "version": "13.17.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz", + "integrity": "sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -3350,6 +3391,26 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/eslint/node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/eslint/node_modules/js-yaml": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", @@ -3387,12 +3448,12 @@ } }, "node_modules/esm-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/esm-utils/-/esm-utils-4.0.0.tgz", - "integrity": "sha512-1x5H25/8BQWV94T8+KRb1gcSdVQ3g+8P0NikggAujVaurUa0cOoR+UO8ie3y29iQO70HjNA93c9ie+qqI/8zzw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/esm-utils/-/esm-utils-4.1.0.tgz", + "integrity": "sha512-/oTSIjfeNL/gzVgM7CbRL4bqE8aKU1ANJqr8voBwTXvVMjYYm15PdYG6c6zNSAHNa3s9b6UMRHDosIq26OBdWg==", "dev": true, "dependencies": { - "import-meta-resolve": "1.1.1", + "import-meta-resolve": "2.1.0", "url-or-path": "2.1.0" }, "funding": { @@ -3400,17 +3461,20 @@ } }, "node_modules/espree": { - "version": "9.3.2", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.2.tgz", - "integrity": "sha512-D211tC7ZwouTIuY5x9XnS0E9sWNChB7IYKX/Xp5eQj3nFXhqmiUDB9q27y76oFl8jTg3pXcQx/bpxMfs3CIZbA==", + "version": "9.3.3", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.3.tgz", + "integrity": "sha512-ORs1Rt/uQTqUKjDdGCyrtYxbazf5umATSf/K4qxjmZHORR6HJk+2s/2Pqe+Kk49HHINC/xNIrGfgh8sZcll0ng==", "dev": true, "dependencies": { - "acorn": "^8.7.1", + "acorn": "^8.8.0", "acorn-jsx": "^5.3.2", "eslint-visitor-keys": "^3.3.0" }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, "node_modules/esprima": { @@ -3558,15 +3622,15 @@ } }, "node_modules/figures": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/figures/-/figures-4.0.1.tgz", - "integrity": "sha512-rElJwkA/xS04Vfg+CaZodpso7VqBknOYbzi6I76hI4X80RUjkSxO2oAyPmGbuXUppywjqndOrQDl817hDnI++w==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-5.0.0.tgz", + "integrity": "sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==", "dependencies": { "escape-string-regexp": "^5.0.0", "is-unicode-supported": "^1.2.0" }, "engines": { - "node": ">=12" + "node": ">=14" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -3654,9 +3718,9 @@ } }, "node_modules/flatted": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.5.tgz", - "integrity": "sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", "dev": true }, "node_modules/foreground-child": { @@ -3793,14 +3857,14 @@ } }, "node_modules/get-intrinsic": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", - "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.2.tgz", + "integrity": "sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==", "dev": true, "dependencies": { "function-bind": "^1.1.1", "has": "^1.0.3", - "has-symbols": "^1.0.1" + "has-symbols": "^1.0.3" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -3911,9 +3975,9 @@ } }, "node_modules/globby": { - "version": "13.1.1", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.1.tgz", - "integrity": "sha512-XMzoDZbGZ37tufiv7g0N4F/zp3zkwdFtVbV3EHsVl1KQr4RPLfNoT068/97RPshz2J5xYNEjLKKBKaGHifBd3Q==", + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.2.tgz", + "integrity": "sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ==", "dependencies": { "dir-glob": "^3.0.1", "fast-glob": "^3.2.11", @@ -3944,6 +4008,12 @@ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, + "node_modules/grapheme-splitter": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", + "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", + "dev": true + }, "node_modules/hard-rejection": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", @@ -4128,13 +4198,10 @@ } }, "node_modules/import-meta-resolve": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/import-meta-resolve/-/import-meta-resolve-1.1.1.tgz", - "integrity": "sha512-JiTuIvVyPaUg11eTrNDx5bgQ/yMKMZffc7YSjvQeSMXy58DO2SQ8BtAf3xteZvmzvjYh14wnqNjL8XVeDy2o9A==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-meta-resolve/-/import-meta-resolve-2.1.0.tgz", + "integrity": "sha512-yG9pxkWJVTy4cmRsNWE3ztFdtFuYIV8G4N+cbCkO8b+qngkLyIUhxQFuZ0qJm67+0nUOxjMPT7nfksPKza1v2g==", "dev": true, - "dependencies": { - "builtins": "^4.0.0" - }, "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -4275,15 +4342,18 @@ } }, "node_modules/is-builtin-module": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.1.0.tgz", - "integrity": "sha512-OV7JjAgOTfAFJmHZLvpSTb4qi0nIILDV1gWPYDnDJUTNFM5aGlRAhk4QcT8i7TuAleeEV5Fdkqn3t4mS+Q11fg==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.0.tgz", + "integrity": "sha512-phDA4oSGt7vl1n5tJvTWooWWAsXLY+2xCnxNqvKhGEzujg+A43wPlPOyDg3C8XQHN+6k/JTQWJ/j0dQh/qr+Hw==", "dev": true, "dependencies": { - "builtin-modules": "^3.0.0" + "builtin-modules": "^3.3.0" }, "engines": { "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/is-callable": { @@ -4299,9 +4369,9 @@ } }, "node_modules/is-core-module": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", - "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==", + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.10.0.tgz", + "integrity": "sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==", "dev": true, "dependencies": { "has": "^1.0.3" @@ -4449,19 +4519,25 @@ } }, "node_modules/is-path-cwd": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", - "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-3.0.0.tgz", + "integrity": "sha512-kyiNFFLU0Ampr6SDZitD/DwUo4Zs1nSdnygUBqsu3LooL00Qvb5j+UnvApUn/TTj1J3OuE6BTdQ5rudKmU2ZaA==", "engines": { - "node": ">=6" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-4.0.0.tgz", + "integrity": "sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==", "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/is-plain-obj": { @@ -4698,18 +4774,17 @@ } }, "node_modules/istanbul-lib-processinfo": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/istanbul-lib-processinfo/-/istanbul-lib-processinfo-2.0.2.tgz", - "integrity": "sha512-kOwpa7z9hme+IBPZMzQ5vdQj8srYgAtaRqeI48NGmAQ+/5yKiHLV0QbYqQpxsdEF0+w14SoB8YbnHKcXE2KnYw==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-processinfo/-/istanbul-lib-processinfo-2.0.3.tgz", + "integrity": "sha512-NkwHbo3E00oybX6NGJi6ar0B29vxyvNwoC7eJ4G4Yq28UfY758Hgn/heV8VRFhevPED4LXfFz0DQ8z/0kw9zMg==", "dev": true, "dependencies": { "archy": "^1.0.0", - "cross-spawn": "^7.0.0", - "istanbul-lib-coverage": "^3.0.0-alpha.1", - "make-dir": "^3.0.0", + "cross-spawn": "^7.0.3", + "istanbul-lib-coverage": "^3.2.0", "p-map": "^3.0.0", "rimraf": "^3.0.0", - "uuid": "^3.3.3" + "uuid": "^8.3.2" }, "engines": { "node": ">=8" @@ -4787,9 +4862,9 @@ } }, "node_modules/istanbul-reports": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.4.tgz", - "integrity": "sha512-r1/DshN4KSE7xWEknZLLLLDn5CJybV3nw01VTkp6D5jzLuELlcbudfj/eSQFvrKsJuTVCGnePO7ho82Nw9zzfw==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", + "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", "dev": true, "dependencies": { "html-escaper": "^2.0.0", @@ -5011,9 +5086,9 @@ } }, "node_modules/line-column-path/node_modules/type-fest": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.13.0.tgz", - "integrity": "sha512-lPfAm42MxE4/456+QyIaaVBAwgpJb6xZ8PRu09utnhPdWwcyj9vgy6Sq0Z5yNbJ21EdxB5dRU/Qg8bsyAMtlcw==", + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", + "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", "dev": true, "engines": { "node": ">=12.20" @@ -5437,9 +5512,9 @@ } }, "node_modules/minipass": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", - "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.4.tgz", + "integrity": "sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==", "dev": true, "dependencies": { "yallist": "^4.0.0" @@ -5504,9 +5579,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.5.tgz", - "integrity": "sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz", + "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==", "dev": true }, "node_modules/nofilter": { @@ -5895,14 +5970,14 @@ } }, "node_modules/object.assign": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", - "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "has-symbols": "^1.0.1", + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", "object-keys": "^1.1.1" }, "engines": { @@ -6179,9 +6254,9 @@ } }, "node_modules/p-map": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-5.4.0.tgz", - "integrity": "sha512-obHraaWkwl4y1NHR4vW5D5k+33+S5QrkFqsNrrvK0R7lilXdzo/DZgnloDvYUaRT+Sk6vVK47JUQMQY6cjPMXg==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-5.5.0.tgz", + "integrity": "sha512-VFqfGDHlx87K66yZrNdI4YGtD70IRyd+zSvgks6mzHPRNkoKy+9EKP4SFC77/vTTQYmRmti7dvqC+m5jBrBAcg==", "dependencies": { "aggregate-error": "^4.0.0" }, @@ -6267,11 +6342,14 @@ } }, "node_modules/parse-ms": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-2.1.0.tgz", - "integrity": "sha512-kHt7kzLoS9VBZfUsiKjv43mr91ea+U05EyKkEtqp7vNbHxmaVuEqN7XxeEVnGrMtYOAxGrDElSi96K7EgO1zCA==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-3.0.0.tgz", + "integrity": "sha512-Tpb8Z7r7XbbtBTrM9UhpkzzaMrqA2VXMT3YChzYltwV3P3pM6t8wl7TvpMnSTosz1aQAdVib7kdoys7vYOPerw==", "engines": { - "node": ">=6" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/path-exists": { @@ -6371,9 +6449,9 @@ } }, "node_modules/pkg-conf/node_modules/locate-path": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.1.0.tgz", - "integrity": "sha512-HNx5uOnYeK4SxEoid5qnhRfprlJeGMzFRKPLCf/15N3/B4AiofNwC/yq7VBKdVk9dx7m+PiYCJOGg55JYTAqoQ==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.1.1.tgz", + "integrity": "sha512-vJXaRMJgRVD3+cUZs3Mncj2mxpt5mP0EmNOsxRSZRMlbqjvxzDEOIUWXGmavo0ZC9+tNZCBLQ66reA11nbpHZg==", "dependencies": { "p-locate": "^6.0.0" }, @@ -6528,9 +6606,9 @@ } }, "node_modules/prettier": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.6.2.tgz", - "integrity": "sha512-PkUpF+qoXTqhOeWL9fu7As8LXsIUZ1WYaJiY/a7McAQzxjk82OF0tibkFXVCDImZtWxbvojFjerkiLb0/q8mew==", + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.7.1.tgz", + "integrity": "sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==", "dev": true, "bin": { "prettier": "bin-prettier.js" @@ -6555,14 +6633,14 @@ } }, "node_modules/pretty-ms": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-7.0.1.tgz", - "integrity": "sha512-973driJZvxiGOQ5ONsFhOF/DtzPMOMtgC11kCpUrPGMTgqp2q/1gwzCquocrN33is0VZ5GFHXZYMM9l6h67v2Q==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-8.0.0.tgz", + "integrity": "sha512-ASJqOugUF1bbzI35STMBUpZqdfYKlJugy6JBziGi2EE+AL5JPJGSzvpeVXojxrr0ViUYoToUjb5kjSEGf7Y83Q==", "dependencies": { - "parse-ms": "^2.1.0" + "parse-ms": "^3.0.0" }, "engines": { - "node": ">=10" + "node": ">=14.16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -6839,7 +6917,7 @@ "node_modules/release-zalgo": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", - "integrity": "sha1-CXALflB0Mpc5Mw5TXFqQ+2eFFzA=", + "integrity": "sha512-gUAyHVHPPC5wdqX/LG4LWtRYtgjxyX78oanFNTMMyFEfOqdC54s3eE82imuWKbOeqYht2CrNf64Qb8vgmmtZGA==", "dev": true, "dependencies": { "es6-error": "^4.0.1" @@ -6863,7 +6941,7 @@ "node_modules/require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", "engines": { "node": ">=0.10.0" } @@ -6875,12 +6953,12 @@ "dev": true }, "node_modules/resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", "dev": true, "dependencies": { - "is-core-module": "^2.8.1", + "is-core-module": "^2.9.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -7041,7 +7119,7 @@ "node_modules/set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", "dev": true }, "node_modules/shebang-command": { @@ -7085,9 +7163,9 @@ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" }, "node_modules/sinon": { - "version": "13.0.2", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-13.0.2.tgz", - "integrity": "sha512-KvOrztAVqzSJWMDoxM4vM+GPys1df2VBoXm+YciyB/OLMamfS3VXh3oGh5WtrAGSzrgczNWFFY22oKb7Fi5eeA==", + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-14.0.0.tgz", + "integrity": "sha512-ugA6BFmE+WrJdh0owRZHToLd32Uw3Lxq6E6LtNRU+xTVBefx632h03Q7apXWRsRdZAJ41LB8aUfn2+O4jsDNMw==", "dev": true, "dependencies": { "@sinonjs/commons": "^1.8.3", @@ -7188,15 +7266,15 @@ } }, "node_modules/spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", + "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==", "dev": true }, "node_modules/sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" }, "node_modules/stack-utils": { "version": "2.0.5", @@ -7372,9 +7450,9 @@ } }, "node_modules/tap": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/tap/-/tap-16.2.0.tgz", - "integrity": "sha512-ikfNLy701p2+sH3R0pAXQ/Aen6ZByaguUY7UsoTLL4AXa2c9gYQL+pI21p13lq54R7/CEoLaViC1sexcWG32ig==", + "version": "16.3.0", + "resolved": "https://registry.npmjs.org/tap/-/tap-16.3.0.tgz", + "integrity": "sha512-J9GffPUAbX6FnWbQ/jj7ktzd9nnDFP1fH44OzidqOmxUfZ1hPLMOvpS99LnDiP0H2mO8GY3kGN5XoY0xIKbNFA==", "bundleDependencies": [ "ink", "treport", @@ -9376,7 +9454,7 @@ "node_modules/tapable": { "version": "0.1.10", "resolved": "https://registry.npmjs.org/tapable/-/tapable-0.1.10.tgz", - "integrity": "sha1-KcNXB8K3DlDQdIK10gLo7URtr9Q=", + "integrity": "sha512-jX8Et4hHg57mug1/079yitEKWGB3LCwoxByLsNim89LABq8NqgiX+6iYVOsq0vX8uJHkU+DZ5fnq95f800bEsQ==", "dev": true, "engines": { "node": ">=0.6" @@ -9441,38 +9519,28 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/temp-write/node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "dev": true, - "bin": { - "uuid": "dist/bin/uuid" - } - }, "node_modules/tempy": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/tempy/-/tempy-2.0.0.tgz", - "integrity": "sha512-m+QReZVhpa0Y56fmfoLFRZN4aDFdd3qVd8a9k3RfyTw/1utVYNg+Ar4BY6l4/TlkhYCCJFfhYWt9uy0127buJg==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tempy/-/tempy-3.0.0.tgz", + "integrity": "sha512-B2I9X7+o2wOaW4r/CWMkpOO9mdiTRCxXNgob6iGvPmfPWgH/KyUD6Uy5crtWBxIBe3YrNZKR2lSzv1JJKWD4vA==", "dev": true, "dependencies": { - "del": "^6.0.0", "is-stream": "^3.0.0", "temp-dir": "^2.0.0", - "type-fest": "^2.0.0", + "type-fest": "^2.12.2", "unique-string": "^3.0.0" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=14.16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/tempy/node_modules/type-fest": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.13.0.tgz", - "integrity": "sha512-lPfAm42MxE4/456+QyIaaVBAwgpJb6xZ8PRu09utnhPdWwcyj9vgy6Sq0Z5yNbJ21EdxB5dRU/Qg8bsyAMtlcw==", + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", + "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", "dev": true, "engines": { "node": ">=12.20" @@ -9482,9 +9550,9 @@ } }, "node_modules/terser": { - "version": "5.14.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.14.0.tgz", - "integrity": "sha512-JC6qfIEkPBd9j1SMO3Pfn+A6w2kQV54tv+ABQLgZr7dA3k/DL/OBoYSWxzVpZev3J+bUHXfr55L8Mox7AaNo6g==", + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.15.0.tgz", + "integrity": "sha512-L1BJiXVmheAQQy+as0oF3Pwtlo4s3Wi1X2zNZ2NxOB4wx9bdS9Vk67XQENLFdLYGCK/Z2di53mTj/hBafR+dTA==", "dev": true, "peer": true, "dependencies": { @@ -9501,17 +9569,17 @@ } }, "node_modules/terser-webpack-plugin": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.3.tgz", - "integrity": "sha512-Fx60G5HNYknNTNQnzQ1VePRuu89ZVYWfjRAeT5rITuCY/1b08s49e5kSQwHDirKZWuoKOBRFS98EUUoZ9kLEwQ==", + "version": "5.3.5", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.5.tgz", + "integrity": "sha512-AOEDLDxD2zylUGf/wxHxklEkOe2/r+seuyOWujejFrIxHf11brA1/dWQNIgXa1c6/Wkxgu7zvv0JhOWfc2ELEA==", "dev": true, "peer": true, "dependencies": { - "@jridgewell/trace-mapping": "^0.3.7", + "@jridgewell/trace-mapping": "^0.3.14", "jest-worker": "^27.4.5", "schema-utils": "^3.1.1", "serialize-javascript": "^6.0.0", - "terser": "^5.7.2" + "terser": "^5.14.1" }, "engines": { "node": ">= 10.13.0" @@ -9552,13 +9620,13 @@ "node_modules/text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "dev": true }, "node_modules/time-zone": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/time-zone/-/time-zone-1.0.0.tgz", - "integrity": "sha1-mcW/VZWJZq9tBtg73zgA3IL67F0=", + "integrity": "sha512-TIsDdtKo6+XrPtiTm1ssmMngN1sAhyKnTO2kunQWqNPWIVvCm15Wmw4SWInwTVgJ5u/Tr04+8Ei9TNcw4x4ONA==", "engines": { "node": ">=4" } @@ -9566,7 +9634,7 @@ "node_modules/to-absolute-glob": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz", - "integrity": "sha1-GGX0PZ50sIItufFFt4z/fQ98hJs=", + "integrity": "sha512-rtwLUQEwT8ZeKQbyFJyomBRYXyE16U5VKuy0ftxLMK/PZb2fkOsg5r9kHdauuVDbsNdIBoC/HCthpidamQFXYA==", "dev": true, "dependencies": { "is-absolute": "^1.0.0", @@ -9579,7 +9647,7 @@ "node_modules/to-fast-properties": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", "dev": true, "engines": { "node": ">=4" @@ -9620,7 +9688,7 @@ "node_modules/trivial-deferred": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/trivial-deferred/-/trivial-deferred-1.0.1.tgz", - "integrity": "sha1-N21NKdlR1jaKb3oK6FwvTV4GWPM=", + "integrity": "sha512-dagAKX7vaesNNAwOc9Np9C2mJ+7YopF4lk+jE2JML9ta4kZ91Y6UruJNH65bLRYoUROD8EY+Pmi44qQWwXR7sw==", "dev": true }, "node_modules/tsconfig-paths": { @@ -9650,19 +9718,19 @@ "node_modules/tsconfig-paths/node_modules/strip-bom": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", "dev": true, "engines": { "node": ">=4" } }, "node_modules/tsd": { - "version": "0.20.0", - "resolved": "https://registry.npmjs.org/tsd/-/tsd-0.20.0.tgz", - "integrity": "sha512-iba/JlyT3qtnA9t8VrX2Fipu3L31U48oRIf1PNs+lIwQ7n63GTkt9eQlB5bLtfb7nYfy9t8oZzs+K4QEoEIS8Q==", + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/tsd/-/tsd-0.22.0.tgz", + "integrity": "sha512-NH+tfEDQ0Ze8gH7TorB6IxYybD+M68EYawe45YNVrbQcydNBfdQHP9IiD0QbnqmwNXrv+l9GAiULT68mo4q/xA==", "dev": true, "dependencies": { - "@tsd/typescript": "~4.6.3", + "@tsd/typescript": "~4.7.4", "eslint-formatter-pretty": "^4.1.0", "globby": "^11.0.1", "meow": "^9.0.0", @@ -9673,16 +9741,7 @@ "tsd": "dist/cli.js" }, "engines": { - "node": ">=12" - } - }, - "node_modules/tsd/node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true, - "engines": { - "node": ">=8" + "node": ">=14.16" } }, "node_modules/tsd/node_modules/globby": { @@ -9748,9 +9807,9 @@ } }, "node_modules/typescript": { - "version": "4.7.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.3.tgz", - "integrity": "sha512-WOkT3XYvrpXx4vMMqlD+8R8R37fZkjyLGlxavMc4iB8lrl8L0DeTcHbYgw/v0N/z9wAFsgBhcsF0ruoySS22mA==", + "version": "4.8.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.8.2.tgz", + "integrity": "sha512-C0I1UsrrDHo2fYI5oaCGbSejwX4ch+9Y5jTQELvovfmFkK3HHSZJB8MSJcWLmCUBzQBchCrZ9rMRV6GuNrvGtw==", "dev": true, "bin": { "tsc": "bin/tsc", @@ -9778,41 +9837,19 @@ "node_modules/unc-path-regex": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", - "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=", + "integrity": "sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg==", "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/unicode-length": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/unicode-length/-/unicode-length-2.0.2.tgz", - "integrity": "sha512-Ph/j1VbS3/r77nhoY2WU0GWGjVYOHL3xpKp0y/Eq2e5r0mT/6b649vm7KFO6RdAdrZkYLdxphYVgvODxPB+Ebg==", - "dev": true, - "dependencies": { - "punycode": "^2.0.0", - "strip-ansi": "^3.0.1" - } - }, - "node_modules/unicode-length/node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/unicode-length/node_modules/strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-length/-/unicode-length-2.1.0.tgz", + "integrity": "sha512-4bV582zTV9Q02RXBxSUMiuN/KHo5w4aTojuKTNT96DIKps/SIawFp7cS5Mu25VuY1AioGXrmYyzKZUzh8OqoUw==", "dev": true, "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" + "punycode": "^2.0.0" } }, "node_modules/unique-string": { @@ -9839,6 +9876,32 @@ "node": ">= 10.0.0" } }, + "node_modules/update-browserslist-db": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.5.tgz", + "integrity": "sha512-dteFFpCyvuDdr9S/ff1ISkKt/9YZxKjI9WlRR99c180GaztJtRa/fn18FdxGVKVsnPY7/a/FDN68mcvUmP4U7Q==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "browserslist-lint": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, "node_modules/uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -9858,13 +9921,12 @@ } }, "node_modules/uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", "dev": true, "bin": { - "uuid": "bin/uuid" + "uuid": "dist/bin/uuid" } }, "node_modules/v8-compile-cache": { @@ -9874,12 +9936,12 @@ "dev": true }, "node_modules/v8-to-istanbul": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.0.0.tgz", - "integrity": "sha512-HcvgY/xaRm7isYmyx+lFKA4uQmfUbN0J4M0nNItvzTvH/iQ9kW5j/t4YSR+Ge323/lrgDAWJoF46tzGQHwBHFw==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.0.1.tgz", + "integrity": "sha512-74Y4LqY74kLE6IFyIjPtkSTWzUZmj8tdHT9Ii/26dvQ6K9Dl2NbEfj0XgU2sHCtKgt5VupqhlO/5aWuqS+IY1w==", "dev": true, "dependencies": { - "@jridgewell/trace-mapping": "^0.3.7", + "@jridgewell/trace-mapping": "^0.3.12", "@types/istanbul-lib-coverage": "^2.0.1", "convert-source-map": "^1.6.0" }, @@ -9912,9 +9974,9 @@ } }, "node_modules/webpack": { - "version": "5.73.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.73.0.tgz", - "integrity": "sha512-svjudQRPPa0YiOYa2lM/Gacw0r6PvxptHj4FuEKQ2kX05ZLkjbVc5MnPs6its5j7IZljnIqSVo/OsY2X0IpHGA==", + "version": "5.74.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.74.0.tgz", + "integrity": "sha512-A2InDwnhhGN4LYctJj6M1JEaGL7Luj6LOmyBHjcI8529cm5p6VXiTIW2sn6ffvEAKmveLzvu4jrihwXtPojlAA==", "dev": true, "peer": true, "dependencies": { @@ -9923,11 +9985,11 @@ "@webassemblyjs/ast": "1.11.1", "@webassemblyjs/wasm-edit": "1.11.1", "@webassemblyjs/wasm-parser": "1.11.1", - "acorn": "^8.4.1", + "acorn": "^8.7.1", "acorn-import-assertions": "^1.7.6", "browserslist": "^4.14.5", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.9.3", + "enhanced-resolve": "^5.10.0", "es-module-lexer": "^0.9.0", "eslint-scope": "5.1.1", "events": "^3.2.0", @@ -9940,7 +10002,7 @@ "schema-utils": "^3.1.0", "tapable": "^2.1.1", "terser-webpack-plugin": "^5.1.3", - "watchpack": "^2.3.1", + "watchpack": "^2.4.0", "webpack-sources": "^3.2.3" }, "bin": { @@ -9969,10 +10031,17 @@ "node": ">=10.13.0" } }, + "node_modules/webpack/node_modules/@types/estree": { + "version": "0.0.51", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", + "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==", + "dev": true, + "peer": true + }, "node_modules/webpack/node_modules/enhanced-resolve": { - "version": "5.9.3", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.9.3.tgz", - "integrity": "sha512-Bq9VSor+kjvW3f9/MiiR4eE3XYgOl7/rS8lnSxbRbF3kS0B2r+Y9w5krBWxZgDxASVZbdYrn5wT4j/Wb0J9qow==", + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.10.0.tgz", + "integrity": "sha512-T0yTFjdpldGY8PmuXXR0PyQ1ufZpEGiHVrp7zHKB7jdR4qlmZHhONVM5AQOAWXuF/w3dnHbEQVrNptJgt7F+cQ==", "dev": true, "peer": true, "dependencies": { @@ -10059,7 +10128,7 @@ "node_modules/which-module": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==", "dev": true }, "node_modules/word-wrap": { @@ -10165,24 +10234,24 @@ "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" }, "node_modules/write-file-atomic": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.1.tgz", - "integrity": "sha512-nSKUxgAbyioruk6hU87QzVbY279oYT6uiwgDoujth2ju4mJ+TZau7SQBhtbTmUyuNYTuXnSyRn66FV0+eCgcrQ==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", "dependencies": { "imurmurhash": "^0.1.4", "signal-exit": "^3.0.7" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, "node_modules/xo": { - "version": "0.49.0", - "resolved": "https://registry.npmjs.org/xo/-/xo-0.49.0.tgz", - "integrity": "sha512-dDj1bYy3LJ/8C2XItw/lFVckZtO68C2YCx9TR8xfSLVcmael3y0SkeFse/3OMUPMvG5jG44bQ2CAI6wFTpRqVg==", + "version": "0.52.2", + "resolved": "https://registry.npmjs.org/xo/-/xo-0.52.2.tgz", + "integrity": "sha512-FTvJb6P6w1h3tu5jy3firRyLSqvJSHeffajpZ05RP4Xe0OUJkQzcwwOEF9/VUHC7lTBPnOrewEGJzQo8Mujx3Q==", "bundleDependencies": [ "@typescript-eslint/eslint-plugin", "@typescript-eslint/parser", @@ -10190,26 +10259,26 @@ ], "dev": true, "dependencies": { - "@eslint/eslintrc": "^1.2.3", + "@eslint/eslintrc": "^1.3.0", "@typescript-eslint/eslint-plugin": "*", "@typescript-eslint/parser": "*", "arrify": "^3.0.0", "cosmiconfig": "^7.0.1", "define-lazy-prop": "^3.0.0", - "eslint": "^8.15.0", + "eslint": "^8.22.0", "eslint-config-prettier": "^8.5.0", - "eslint-config-xo": "^0.41.0", + "eslint-config-xo": "^0.42.0", "eslint-config-xo-typescript": "*", "eslint-formatter-pretty": "^4.1.0", "eslint-import-resolver-webpack": "^0.13.2", "eslint-plugin-ava": "^13.2.0", "eslint-plugin-eslint-comments": "^3.2.0", "eslint-plugin-import": "^2.26.0", + "eslint-plugin-n": "^15.2.5", "eslint-plugin-no-use-extend-native": "^0.5.0", - "eslint-plugin-node": "^11.1.0", "eslint-plugin-prettier": "^4.0.0", "eslint-plugin-unicorn": "^42.0.0", - "esm-utils": "^4.0.0", + "esm-utils": "^4.1.0", "find-cache-dir": "^3.3.2", "find-up": "^6.3.0", "get-stdin": "^9.0.0", @@ -10225,7 +10294,7 @@ "semver": "^7.3.7", "slash": "^4.0.0", "to-absolute-glob": "^2.0.2", - "typescript": "^4.6.4" + "typescript": "^4.7.3" }, "bin": { "xo": "cli.js" @@ -10279,14 +10348,14 @@ "license": "MIT" }, "node_modules/xo/node_modules/@typescript-eslint/eslint-plugin": { - "version": "5.24.0", + "version": "5.35.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { - "@typescript-eslint/scope-manager": "5.24.0", - "@typescript-eslint/type-utils": "5.24.0", - "@typescript-eslint/utils": "5.24.0", + "@typescript-eslint/scope-manager": "5.35.1", + "@typescript-eslint/type-utils": "5.35.1", + "@typescript-eslint/utils": "5.35.1", "debug": "^4.3.4", "functional-red-black-tree": "^1.0.1", "ignore": "^5.2.0", @@ -10312,14 +10381,14 @@ } }, "node_modules/xo/node_modules/@typescript-eslint/parser": { - "version": "5.24.0", + "version": "5.35.1", "dev": true, "inBundle": true, "license": "BSD-2-Clause", "dependencies": { - "@typescript-eslint/scope-manager": "5.24.0", - "@typescript-eslint/types": "5.24.0", - "@typescript-eslint/typescript-estree": "5.24.0", + "@typescript-eslint/scope-manager": "5.35.1", + "@typescript-eslint/types": "5.35.1", + "@typescript-eslint/typescript-estree": "5.35.1", "debug": "^4.3.4" }, "engines": { @@ -10339,13 +10408,13 @@ } }, "node_modules/xo/node_modules/@typescript-eslint/scope-manager": { - "version": "5.24.0", + "version": "5.35.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "5.24.0", - "@typescript-eslint/visitor-keys": "5.24.0" + "@typescript-eslint/types": "5.35.1", + "@typescript-eslint/visitor-keys": "5.35.1" }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -10356,12 +10425,12 @@ } }, "node_modules/xo/node_modules/@typescript-eslint/type-utils": { - "version": "5.24.0", + "version": "5.35.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { - "@typescript-eslint/utils": "5.24.0", + "@typescript-eslint/utils": "5.35.1", "debug": "^4.3.4", "tsutils": "^3.21.0" }, @@ -10382,7 +10451,7 @@ } }, "node_modules/xo/node_modules/@typescript-eslint/types": { - "version": "5.24.0", + "version": "5.35.1", "dev": true, "inBundle": true, "license": "MIT", @@ -10395,13 +10464,13 @@ } }, "node_modules/xo/node_modules/@typescript-eslint/typescript-estree": { - "version": "5.24.0", + "version": "5.35.1", "dev": true, "inBundle": true, "license": "BSD-2-Clause", "dependencies": { - "@typescript-eslint/types": "5.24.0", - "@typescript-eslint/visitor-keys": "5.24.0", + "@typescript-eslint/types": "5.35.1", + "@typescript-eslint/visitor-keys": "5.35.1", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -10451,15 +10520,15 @@ } }, "node_modules/xo/node_modules/@typescript-eslint/utils": { - "version": "5.24.0", + "version": "5.35.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "@types/json-schema": "^7.0.9", - "@typescript-eslint/scope-manager": "5.24.0", - "@typescript-eslint/types": "5.24.0", - "@typescript-eslint/typescript-estree": "5.24.0", + "@typescript-eslint/scope-manager": "5.35.1", + "@typescript-eslint/types": "5.35.1", + "@typescript-eslint/typescript-estree": "5.35.1", "eslint-scope": "^5.1.1", "eslint-utils": "^3.0.0" }, @@ -10475,12 +10544,12 @@ } }, "node_modules/xo/node_modules/@typescript-eslint/visitor-keys": { - "version": "5.24.0", + "version": "5.35.1", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "5.24.0", + "@typescript-eslint/types": "5.35.1", "eslint-visitor-keys": "^3.3.0" }, "engines": { @@ -10590,7 +10659,7 @@ } }, "node_modules/xo/node_modules/eslint-config-xo-typescript": { - "version": "0.51.1", + "version": "0.53.0", "dev": true, "inBundle": true, "license": "MIT", @@ -10601,7 +10670,8 @@ "url": "https://github.com/sponsors/sindresorhus" }, "peerDependencies": { - "@typescript-eslint/eslint-plugin": ">=5.22.0", + "@typescript-eslint/eslint-plugin": ">=5.31.0", + "@typescript-eslint/parser": ">=5.31.0", "eslint": ">=8.0.0", "typescript": ">=4.4" } @@ -10796,9 +10866,9 @@ } }, "node_modules/xo/node_modules/locate-path": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.1.0.tgz", - "integrity": "sha512-HNx5uOnYeK4SxEoid5qnhRfprlJeGMzFRKPLCf/15N3/B4AiofNwC/yq7VBKdVk9dx7m+PiYCJOGg55JYTAqoQ==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.1.1.tgz", + "integrity": "sha512-vJXaRMJgRVD3+cUZs3Mncj2mxpt5mP0EmNOsxRSZRMlbqjvxzDEOIUWXGmavo0ZC9+tNZCBLQ66reA11nbpHZg==", "dev": true, "dependencies": { "p-locate": "^6.0.0" @@ -10823,9 +10893,9 @@ } }, "node_modules/xo/node_modules/meow": { - "version": "10.1.2", - "resolved": "https://registry.npmjs.org/meow/-/meow-10.1.2.tgz", - "integrity": "sha512-zbuAlN+V/sXlbGchNS9WTWjUzeamwMt/BApKCJi7B0QyZstZaMx0n4Unll/fg0njGtMdC9UP5SAscvOCLYdM+Q==", + "version": "10.1.3", + "resolved": "https://registry.npmjs.org/meow/-/meow-10.1.3.tgz", + "integrity": "sha512-0WL7RMCPPdUTE00+GxJjL4d5Dm6eUbmAzxlzywJWiRUKCW093owmZ7/q74tH9VI91vxw9KJJNxAcvdpxb2G4iA==", "dev": true, "dependencies": { "@types/minimist": "^1.2.2", @@ -11339,9 +11409,9 @@ } }, "node_modules/yargs/node_modules/yargs-parser": { - "version": "21.0.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.0.1.tgz", - "integrity": "sha512-9BK1jFpLzJROCI5TzwZL/TU4gqjK5xiHV/RfWLOahrjAko/e4DJkRDZQXfvqAsiZzzYhgAzbgz6lg48jcm4GLg==", + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "engines": { "node": ">=12" } diff --git a/package.json b/package.json index 69a3d9f20..fd0452a1a 100644 --- a/package.json +++ b/package.json @@ -80,7 +80,7 @@ "typescript" ], "dependencies": { - "acorn": "^8.7.1", + "acorn": "^8.8.0", "acorn-walk": "^8.2.0", "ansi-styles": "^6.1.0", "arrgv": "^1.0.2", @@ -90,7 +90,7 @@ "chalk": "^5.0.1", "chokidar": "^3.5.3", "chunkd": "^2.0.1", - "ci-info": "^3.3.1", + "ci-info": "^3.3.2", "ci-parallel-vars": "^1.0.1", "clean-yaml-object": "^0.1.0", "cli-truncate": "^3.1.0", @@ -99,10 +99,10 @@ "concordance": "^5.0.4", "currently-unhandled": "^0.4.1", "debug": "^4.3.4", - "del": "^6.1.1", - "emittery": "^0.11.0", - "figures": "^4.0.1", - "globby": "^13.1.1", + "del": "^7.0.0", + "emittery": "^0.13.1", + "figures": "^5.0.0", + "globby": "^13.1.2", "ignore-by-default": "^2.1.0", "indent-string": "^5.0.0", "is-error": "^2.2.2", @@ -112,18 +112,18 @@ "mem": "^9.0.2", "ms": "^2.1.3", "p-event": "^5.0.1", - "p-map": "^5.4.0", + "p-map": "^5.5.0", "picomatch": "^2.3.1", "pkg-conf": "^4.0.0", "plur": "^5.1.0", - "pretty-ms": "^7.0.1", + "pretty-ms": "^8.0.0", "resolve-cwd": "^3.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.5", "strip-ansi": "^7.0.1", "supertap": "^3.0.1", "temp-dir": "^2.0.0", - "write-file-atomic": "^4.0.1", + "write-file-atomic": "^4.0.2", "yargs": "^17.5.1" }, "devDependencies": { @@ -132,20 +132,20 @@ "@sindresorhus/tsconfig": "^3.0.1", "@sinonjs/fake-timers": "^9.1.2", "ansi-escapes": "^5.0.0", - "c8": "^7.11.3", + "c8": "^7.12.0", "delay": "^5.0.0", "execa": "^6.1.0", "fs-extra": "^10.1.0", "get-stream": "^6.0.1", "replace-string": "^4.0.0", - "sinon": "^13.0.2", - "tap": "^16.2.0", + "sinon": "^14.0.0", + "tap": "^16.3.0", "temp-write": "^5.0.0", - "tempy": "^2.0.0", + "tempy": "^3.0.0", "touch": "^3.1.0", - "tsd": "^0.20.0", + "tsd": "^0.22.0", "typescript": "^4.7.3", - "xo": "^0.49.0", + "xo": "^0.52.2", "zen-observable": "^0.8.15" }, "peerDependencies": { diff --git a/test-tap/api.js b/test-tap/api.js index c8c96866b..0d0c271e5 100644 --- a/test-tap/api.js +++ b/test-tap/api.js @@ -3,7 +3,7 @@ import path from 'node:path'; import {fileURLToPath} from 'node:url'; import ciInfo from 'ci-info'; -import del from 'del'; +import {deleteSync} from 'del'; import {test} from 'tap'; import Api from '../lib/api.js'; @@ -380,7 +380,7 @@ for (const opt of options) { }); test(`caching is enabled by default - workerThreads: ${opt.workerThreads}`, async t => { - del.sync(path.join(__dirname, 'fixture/caching/node_modules')); + deleteSync(path.join(__dirname, 'fixture/caching/node_modules')); const api = await apiCreator({ ...opt, @@ -400,7 +400,7 @@ for (const opt of options) { }); test(`caching can be disabled - workerThreads: ${opt.workerThreads}`, async t => { - del.sync(path.join(__dirname, 'fixture/caching/node_modules')); + deleteSync(path.join(__dirname, 'fixture/caching/node_modules')); const api = await apiCreator({ ...opt, diff --git a/test-tap/fixture/fail-fast/multiple-files/passes-slow.cjs b/test-tap/fixture/fail-fast/multiple-files/passes-slow.cjs index 97dda564c..a529c2cb3 100644 --- a/test-tap/fixture/fail-fast/multiple-files/passes-slow.cjs +++ b/test-tap/fixture/fail-fast/multiple-files/passes-slow.cjs @@ -6,7 +6,7 @@ test.serial('first pass', async t => { t.pass(); const timer = setTimeout(() => {}, 60_000); // Ensure process stays alive. const source = parentPort || process; - const {pEvent} = await import('p-event'); // eslint-disable-line node/no-unsupported-features/es-syntax + const {pEvent} = await import('p-event'); await pEvent(source, 'message', message => { if (message.ava) { return message.ava.type === 'peer-failed'; diff --git a/test-tap/fixture/process-cwd-default.cjs b/test-tap/fixture/process-cwd-default.cjs index 1a2bf55d7..a59bc0b87 100644 --- a/test-tap/fixture/process-cwd-default.cjs +++ b/test-tap/fixture/process-cwd-default.cjs @@ -3,7 +3,7 @@ const path = require('path'); const test = require('../../entrypoints/main.cjs'); test('test', async t => { - const {packageConfigSync, packageJsonPath} = await import('pkg-conf'); // eslint-disable-line node/no-unsupported-features/es-syntax + const {packageConfigSync, packageJsonPath} = await import('pkg-conf'); const conf = packageConfigSync('ava'); const pkgDir = path.dirname(packageJsonPath(conf)); t.is(process.cwd(), pkgDir); diff --git a/test-tap/fixture/with-dependencies/require-custom.cjs b/test-tap/fixture/with-dependencies/require-custom.cjs index ccc22e9dc..6a46d7edb 100644 --- a/test-tap/fixture/with-dependencies/require-custom.cjs +++ b/test-tap/fixture/with-dependencies/require-custom.cjs @@ -1,2 +1,2 @@ -/* eslint-disable node/no-deprecated-api */ +/* eslint-disable n/no-deprecated-api */ require.extensions['.custom'] = require.extensions['.js']; diff --git a/test-tap/helper/report-worker.js b/test-tap/helper/report-worker.js index 8d1faa4fc..4c14ecd75 100644 --- a/test-tap/helper/report-worker.js +++ b/test-tap/helper/report-worker.js @@ -1,4 +1,4 @@ import {onlyColors} from './fix-reporter-env.js'; onlyColors(); -import('../../lib/worker/base.js'); // eslint-disable-line node/no-unsupported-features/es-syntax +import('../../lib/worker/base.js'); diff --git a/test-tap/helper/report.js b/test-tap/helper/report.js index 2fe159dd2..3da08b777 100644 --- a/test-tap/helper/report.js +++ b/test-tap/helper/report.js @@ -41,6 +41,7 @@ exports.assert = (t, logFile, buffer) => { const cwdFileUrlPrefix = pathToFileURL(process.cwd()); exports.sanitizers = { + acorn: string => string.split('\n').filter(line => !/node_modules.acorn/.test(line)).join('\n'), cwd: string => replaceString(replaceString(string, cwdFileUrlPrefix, ''), process.cwd(), '~'), experimentalWarning: string => string.replace(/^\(node:\d+\) ExperimentalWarning.+\n/g, ''), lineEndings: string => replaceString(string, '\r\n', '\n'), diff --git a/test-tap/integration/snapshots.js b/test-tap/integration/snapshots.js index ddd5b9a38..73e311db0 100644 --- a/test-tap/integration/snapshots.js +++ b/test-tap/integration/snapshots.js @@ -5,7 +5,7 @@ import {fileURLToPath} from 'node:url'; import {execa} from 'execa'; import {test} from 'tap'; -import tempy from 'tempy'; +import {temporaryDirectory} from 'tempy'; import {execCli} from '../helper/cli.js'; @@ -46,7 +46,7 @@ test('appends to existing snapshots', t => { const cliPath = fileURLToPath(new URL('../../entrypoints/cli.mjs', import.meta.url)); const avaPath = fileURLToPath(new URL('../../entrypoints/main.cjs', import.meta.url)); - const cwd = tempy.directory(); + const cwd = temporaryDirectory(); fs.writeFileSync(path.join(cwd, 'package.json'), '{}'); const initial = `const test = require(${JSON.stringify(avaPath)}) diff --git a/test-tap/reporters/default.edgecases.v14.log b/test-tap/reporters/default.edgecases.v14.log index 47a58d804..e935849f2 100644 --- a/test-tap/reporters/default.edgecases.v14.log +++ b/test-tap/reporters/default.edgecases.v14.log @@ -3,16 +3,6 @@ ⚠ Could not parse ast-syntax-error.cjs for line number selection SyntaxError: Unexpected token (3:11) -  at Parser.pp$4.raise (~/node_modules/acorn/dist/acorn.js:3462:15) -  at Parser.pp$9.unexpected (~/node_modules/acorn/dist/acorn.js:756:10) -  at Parser.pp$5.parseExprAtom (~/node_modules/acorn/dist/acorn.js:2837:12) -  at Parser.pp$5.parseExprSubscripts (~/node_modules/acorn/dist/acorn.js:2629:21) -  at Parser.pp$5.parseMaybeUnary (~/node_modules/acorn/dist/acorn.js:2595:19) -  at Parser.pp$5.parseExprOps (~/node_modules/acorn/dist/acorn.js:2522:21) -  at Parser.pp$5.parseMaybeConditional (~/node_modules/acorn/dist/acorn.js:2505:21) -  at Parser.pp$5.parseMaybeAssign (~/node_modules/acorn/dist/acorn.js:2472:21) -  at Parser.pp$8.parseVar (~/node_modules/acorn/dist/acorn.js:1299:26) -  at Parser.pp$8.parseVarStatement (~/node_modules/acorn/dist/acorn.js:1163:10) ---tty-stream-chunk-separator Uncaught exception in ast-syntax-error.cjs @@ -20,9 +10,9 @@ SyntaxError: Unexpected token 'do' ---tty-stream-chunk-separator - ✖ ast-syntax-error.cjs exited with a non-zero exit code: 1 + ✘ ast-syntax-error.cjs exited with a non-zero exit code: 1 ---tty-stream-chunk-separator - ✖ No tests found in ava-import-no-test-declaration.cjs + ✘ No tests found in ava-import-no-test-declaration.cjs ---tty-stream-chunk-separator Uncaught exception in import-and-use-test-member.cjs @@ -38,11 +28,11 @@ › Object. (test-tap/fixture/report/edgecases/import-and-use-test-member.cjs:3:1) ---tty-stream-chunk-separator - ✖ import-and-use-test-member.cjs exited with a non-zero exit code: 1 + ✘ import-and-use-test-member.cjs exited with a non-zero exit code: 1 ---tty-stream-chunk-separator - ✖ No tests found in no-ava-import.cjs, make sure to import "ava" at the top of your test file + ✘ No tests found in no-ava-import.cjs, make sure to import "ava" at the top of your test file ---tty-stream-chunk-separator - ✖ Line numbers for test.cjs did not match any tests + ✘ Line numbers for test.cjs did not match any tests ---tty-stream-chunk-separator Uncaught exception in throws.cjs @@ -57,7 +47,7 @@ › Object. (test-tap/fixture/report/edgecases/throws.cjs:1:7) ---tty-stream-chunk-separator - ✖ throws.cjs exited with a non-zero exit code: 1 + ✘ throws.cjs exited with a non-zero exit code: 1 ---tty-stream-chunk-separator ─ diff --git a/test-tap/reporters/default.edgecases.v16.log b/test-tap/reporters/default.edgecases.v16.log index 47a58d804..e935849f2 100644 --- a/test-tap/reporters/default.edgecases.v16.log +++ b/test-tap/reporters/default.edgecases.v16.log @@ -3,16 +3,6 @@ ⚠ Could not parse ast-syntax-error.cjs for line number selection SyntaxError: Unexpected token (3:11) -  at Parser.pp$4.raise (~/node_modules/acorn/dist/acorn.js:3462:15) -  at Parser.pp$9.unexpected (~/node_modules/acorn/dist/acorn.js:756:10) -  at Parser.pp$5.parseExprAtom (~/node_modules/acorn/dist/acorn.js:2837:12) -  at Parser.pp$5.parseExprSubscripts (~/node_modules/acorn/dist/acorn.js:2629:21) -  at Parser.pp$5.parseMaybeUnary (~/node_modules/acorn/dist/acorn.js:2595:19) -  at Parser.pp$5.parseExprOps (~/node_modules/acorn/dist/acorn.js:2522:21) -  at Parser.pp$5.parseMaybeConditional (~/node_modules/acorn/dist/acorn.js:2505:21) -  at Parser.pp$5.parseMaybeAssign (~/node_modules/acorn/dist/acorn.js:2472:21) -  at Parser.pp$8.parseVar (~/node_modules/acorn/dist/acorn.js:1299:26) -  at Parser.pp$8.parseVarStatement (~/node_modules/acorn/dist/acorn.js:1163:10) ---tty-stream-chunk-separator Uncaught exception in ast-syntax-error.cjs @@ -20,9 +10,9 @@ SyntaxError: Unexpected token 'do' ---tty-stream-chunk-separator - ✖ ast-syntax-error.cjs exited with a non-zero exit code: 1 + ✘ ast-syntax-error.cjs exited with a non-zero exit code: 1 ---tty-stream-chunk-separator - ✖ No tests found in ava-import-no-test-declaration.cjs + ✘ No tests found in ava-import-no-test-declaration.cjs ---tty-stream-chunk-separator Uncaught exception in import-and-use-test-member.cjs @@ -38,11 +28,11 @@ › Object. (test-tap/fixture/report/edgecases/import-and-use-test-member.cjs:3:1) ---tty-stream-chunk-separator - ✖ import-and-use-test-member.cjs exited with a non-zero exit code: 1 + ✘ import-and-use-test-member.cjs exited with a non-zero exit code: 1 ---tty-stream-chunk-separator - ✖ No tests found in no-ava-import.cjs, make sure to import "ava" at the top of your test file + ✘ No tests found in no-ava-import.cjs, make sure to import "ava" at the top of your test file ---tty-stream-chunk-separator - ✖ Line numbers for test.cjs did not match any tests + ✘ Line numbers for test.cjs did not match any tests ---tty-stream-chunk-separator Uncaught exception in throws.cjs @@ -57,7 +47,7 @@ › Object. (test-tap/fixture/report/edgecases/throws.cjs:1:7) ---tty-stream-chunk-separator - ✖ throws.cjs exited with a non-zero exit code: 1 + ✘ throws.cjs exited with a non-zero exit code: 1 ---tty-stream-chunk-separator ─ diff --git a/test-tap/reporters/default.edgecases.v18.log b/test-tap/reporters/default.edgecases.v18.log index 0aef8246b..e9c93adda 100644 --- a/test-tap/reporters/default.edgecases.v18.log +++ b/test-tap/reporters/default.edgecases.v18.log @@ -3,16 +3,6 @@ ⚠ Could not parse ast-syntax-error.cjs for line number selection SyntaxError: Unexpected token (3:11) -  at pp$4.raise (~/node_modules/acorn/dist/acorn.js:3462:15) -  at pp$9.unexpected (~/node_modules/acorn/dist/acorn.js:756:10) -  at pp$5.parseExprAtom (~/node_modules/acorn/dist/acorn.js:2837:12) -  at pp$5.parseExprSubscripts (~/node_modules/acorn/dist/acorn.js:2629:21) -  at pp$5.parseMaybeUnary (~/node_modules/acorn/dist/acorn.js:2595:19) -  at pp$5.parseExprOps (~/node_modules/acorn/dist/acorn.js:2522:21) -  at pp$5.parseMaybeConditional (~/node_modules/acorn/dist/acorn.js:2505:21) -  at pp$5.parseMaybeAssign (~/node_modules/acorn/dist/acorn.js:2472:21) -  at pp$8.parseVar (~/node_modules/acorn/dist/acorn.js:1299:26) -  at pp$8.parseVarStatement (~/node_modules/acorn/dist/acorn.js:1163:10) ---tty-stream-chunk-separator Uncaught exception in ast-syntax-error.cjs @@ -24,9 +14,9 @@ SyntaxError: Unexpected token 'do' ---tty-stream-chunk-separator - ✖ ast-syntax-error.cjs exited with a non-zero exit code: 1 + ✘ ast-syntax-error.cjs exited with a non-zero exit code: 1 ---tty-stream-chunk-separator - ✖ No tests found in ava-import-no-test-declaration.cjs + ✘ No tests found in ava-import-no-test-declaration.cjs ---tty-stream-chunk-separator Uncaught exception in import-and-use-test-member.cjs @@ -42,11 +32,11 @@ › Object. (test-tap/fixture/report/edgecases/import-and-use-test-member.cjs:3:1) ---tty-stream-chunk-separator - ✖ import-and-use-test-member.cjs exited with a non-zero exit code: 1 + ✘ import-and-use-test-member.cjs exited with a non-zero exit code: 1 ---tty-stream-chunk-separator - ✖ No tests found in no-ava-import.cjs, make sure to import "ava" at the top of your test file + ✘ No tests found in no-ava-import.cjs, make sure to import "ava" at the top of your test file ---tty-stream-chunk-separator - ✖ Line numbers for test.cjs did not match any tests + ✘ Line numbers for test.cjs did not match any tests ---tty-stream-chunk-separator Uncaught exception in throws.cjs @@ -61,7 +51,7 @@ › Object. (test-tap/fixture/report/edgecases/throws.cjs:1:7) ---tty-stream-chunk-separator - ✖ throws.cjs exited with a non-zero exit code: 1 + ✘ throws.cjs exited with a non-zero exit code: 1 ---tty-stream-chunk-separator ─ diff --git a/test-tap/reporters/default.failfast.v14.log b/test-tap/reporters/default.failfast.v14.log index 831e81f6c..51a209534 100644 --- a/test-tap/reporters/default.failfast.v14.log +++ b/test-tap/reporters/default.failfast.v14.log @@ -1,6 +1,6 @@ ---tty-stream-chunk-separator - ✖ a › fails Test failed via `t.fail()` + ✘ a › fails Test failed via `t.fail()` ---tty-stream-chunk-separator ─ diff --git a/test-tap/reporters/default.failfast.v16.log b/test-tap/reporters/default.failfast.v16.log index 831e81f6c..51a209534 100644 --- a/test-tap/reporters/default.failfast.v16.log +++ b/test-tap/reporters/default.failfast.v16.log @@ -1,6 +1,6 @@ ---tty-stream-chunk-separator - ✖ a › fails Test failed via `t.fail()` + ✘ a › fails Test failed via `t.fail()` ---tty-stream-chunk-separator ─ diff --git a/test-tap/reporters/default.failfast.v18.log b/test-tap/reporters/default.failfast.v18.log index 831e81f6c..51a209534 100644 --- a/test-tap/reporters/default.failfast.v18.log +++ b/test-tap/reporters/default.failfast.v18.log @@ -1,6 +1,6 @@ ---tty-stream-chunk-separator - ✖ a › fails Test failed via `t.fail()` + ✘ a › fails Test failed via `t.fail()` ---tty-stream-chunk-separator ─ diff --git a/test-tap/reporters/default.failfast2.v14.log b/test-tap/reporters/default.failfast2.v14.log index 22d9cd398..9fd21bbee 100644 --- a/test-tap/reporters/default.failfast2.v14.log +++ b/test-tap/reporters/default.failfast2.v14.log @@ -1,6 +1,6 @@ ---tty-stream-chunk-separator - ✖ a › fails Test failed via `t.fail()` + ✘ a › fails Test failed via `t.fail()` ---tty-stream-chunk-separator ─ diff --git a/test-tap/reporters/default.failfast2.v16.log b/test-tap/reporters/default.failfast2.v16.log index 22d9cd398..9fd21bbee 100644 --- a/test-tap/reporters/default.failfast2.v16.log +++ b/test-tap/reporters/default.failfast2.v16.log @@ -1,6 +1,6 @@ ---tty-stream-chunk-separator - ✖ a › fails Test failed via `t.fail()` + ✘ a › fails Test failed via `t.fail()` ---tty-stream-chunk-separator ─ diff --git a/test-tap/reporters/default.failfast2.v18.log b/test-tap/reporters/default.failfast2.v18.log index 22d9cd398..9fd21bbee 100644 --- a/test-tap/reporters/default.failfast2.v18.log +++ b/test-tap/reporters/default.failfast2.v18.log @@ -1,6 +1,6 @@ ---tty-stream-chunk-separator - ✖ a › fails Test failed via `t.fail()` + ✘ a › fails Test failed via `t.fail()` ---tty-stream-chunk-separator ─ diff --git a/test-tap/reporters/default.js b/test-tap/reporters/default.js index 2d9859473..3ab81d01d 100644 --- a/test-tap/reporters/default.js +++ b/test-tap/reporters/default.js @@ -9,7 +9,7 @@ import TTYStream from '../helper/tty-stream.js'; const {restoreClock} = fixReporterEnv(); test(async t => { - const {default: Reporter} = await import('../../lib/reporters/default.js'); // eslint-disable-line node/no-unsupported-features/es-syntax + const {default: Reporter} = await import('../../lib/reporters/default.js'); const run = (type, sanitizers = []) => t => { t.plan(1); @@ -43,7 +43,7 @@ test(async t => { t.test('default reporter - second failFast run', run('failFast2')); t.test('default reporter - only run', run('only')); t.test('default reporter - watch mode run', run('watch')); - t.test('default reporter - edge cases', run('edgeCases')); + t.test('default reporter - edge cases', run('edgeCases', [report.sanitizers.acorn])); t.test('default reporter - timeout', t => { restoreClock(); diff --git a/test-tap/reporters/default.regular.v14.log b/test-tap/reporters/default.regular.v14.log index aafc12bfb..de3e4e73d 100644 --- a/test-tap/reporters/default.regular.v14.log +++ b/test-tap/reporters/default.regular.v14.log @@ -13,11 +13,11 @@ › Object. (test-tap/fixture/report/regular/bad-test-chain.cjs:3:13) ---tty-stream-chunk-separator - ✖ bad-test-chain.cjs exited with a non-zero exit code: 1 + ✘ bad-test-chain.cjs exited with a non-zero exit code: 1 ---tty-stream-chunk-separator - ✖ nested-objects › format with max depth 4 + ✘ nested-objects › format with max depth 4 ---tty-stream-chunk-separator - ✖ nested-objects › format like with max depth 4 + ✘ nested-objects › format like with max depth 4 ---tty-stream-chunk-separator output-in-hook › before hook ℹ before @@ -30,7 +30,7 @@ ---tty-stream-chunk-separator ✔ output-in-hook › passing test ---tty-stream-chunk-separator - ✖ output-in-hook › failing test Test failed via `t.fail()` + ✘ output-in-hook › failing test Test failed via `t.fail()` ---tty-stream-chunk-separator output-in-hook › afterEach hook for passing test ℹ afterEach @@ -50,29 +50,29 @@ ---tty-stream-chunk-separator ✔ test › passes ---tty-stream-chunk-separator - ✖ test › fails Test failed via `t.fail()` + ✘ test › fails Test failed via `t.fail()` ---tty-stream-chunk-separator ✔ test › known failure ---tty-stream-chunk-separator - ✖ test › no longer failing Test was expected to fail, but succeeded, you should stop marking the test as failing + ✘ test › no longer failing Test was expected to fail, but succeeded, you should stop marking the test as failing ---tty-stream-chunk-separator - ✖ test › logs Test failed via `t.fail()` + ✘ test › logs Test failed via `t.fail()` ℹ hello ℹ world ---tty-stream-chunk-separator - ✖ test › formatted + ✘ test › formatted ---tty-stream-chunk-separator - ✖ test › implementation throws non-error Error thrown in test + ✘ test › implementation throws non-error Error thrown in test ---tty-stream-chunk-separator - ✖ traces-in-t-throws › throws + ✘ traces-in-t-throws › throws ---tty-stream-chunk-separator - ✖ traces-in-t-throws › notThrows + ✘ traces-in-t-throws › notThrows ---tty-stream-chunk-separator - ✖ traces-in-t-throws › notThrowsAsync + ✘ traces-in-t-throws › notThrowsAsync ---tty-stream-chunk-separator - ✖ traces-in-t-throws › throwsAsync + ✘ traces-in-t-throws › throwsAsync ---tty-stream-chunk-separator - ✖ traces-in-t-throws › throwsAsync different error + ✘ traces-in-t-throws › throwsAsync different error ---tty-stream-chunk-separator ✔ uncaught-exception › passes ---tty-stream-chunk-separator @@ -90,7 +90,7 @@ › Immediate. (test-tap/fixture/report/regular/uncaught-exception.cjs:5:9) ---tty-stream-chunk-separator - ✖ uncaught-exception.cjs exited with a non-zero exit code: 1 + ✘ uncaught-exception.cjs exited with a non-zero exit code: 1 ---tty-stream-chunk-separator ✔ unhandled-rejection › passes ---tty-stream-chunk-separator diff --git a/test-tap/reporters/default.regular.v16.log b/test-tap/reporters/default.regular.v16.log index aafc12bfb..de3e4e73d 100644 --- a/test-tap/reporters/default.regular.v16.log +++ b/test-tap/reporters/default.regular.v16.log @@ -13,11 +13,11 @@ › Object. (test-tap/fixture/report/regular/bad-test-chain.cjs:3:13) ---tty-stream-chunk-separator - ✖ bad-test-chain.cjs exited with a non-zero exit code: 1 + ✘ bad-test-chain.cjs exited with a non-zero exit code: 1 ---tty-stream-chunk-separator - ✖ nested-objects › format with max depth 4 + ✘ nested-objects › format with max depth 4 ---tty-stream-chunk-separator - ✖ nested-objects › format like with max depth 4 + ✘ nested-objects › format like with max depth 4 ---tty-stream-chunk-separator output-in-hook › before hook ℹ before @@ -30,7 +30,7 @@ ---tty-stream-chunk-separator ✔ output-in-hook › passing test ---tty-stream-chunk-separator - ✖ output-in-hook › failing test Test failed via `t.fail()` + ✘ output-in-hook › failing test Test failed via `t.fail()` ---tty-stream-chunk-separator output-in-hook › afterEach hook for passing test ℹ afterEach @@ -50,29 +50,29 @@ ---tty-stream-chunk-separator ✔ test › passes ---tty-stream-chunk-separator - ✖ test › fails Test failed via `t.fail()` + ✘ test › fails Test failed via `t.fail()` ---tty-stream-chunk-separator ✔ test › known failure ---tty-stream-chunk-separator - ✖ test › no longer failing Test was expected to fail, but succeeded, you should stop marking the test as failing + ✘ test › no longer failing Test was expected to fail, but succeeded, you should stop marking the test as failing ---tty-stream-chunk-separator - ✖ test › logs Test failed via `t.fail()` + ✘ test › logs Test failed via `t.fail()` ℹ hello ℹ world ---tty-stream-chunk-separator - ✖ test › formatted + ✘ test › formatted ---tty-stream-chunk-separator - ✖ test › implementation throws non-error Error thrown in test + ✘ test › implementation throws non-error Error thrown in test ---tty-stream-chunk-separator - ✖ traces-in-t-throws › throws + ✘ traces-in-t-throws › throws ---tty-stream-chunk-separator - ✖ traces-in-t-throws › notThrows + ✘ traces-in-t-throws › notThrows ---tty-stream-chunk-separator - ✖ traces-in-t-throws › notThrowsAsync + ✘ traces-in-t-throws › notThrowsAsync ---tty-stream-chunk-separator - ✖ traces-in-t-throws › throwsAsync + ✘ traces-in-t-throws › throwsAsync ---tty-stream-chunk-separator - ✖ traces-in-t-throws › throwsAsync different error + ✘ traces-in-t-throws › throwsAsync different error ---tty-stream-chunk-separator ✔ uncaught-exception › passes ---tty-stream-chunk-separator @@ -90,7 +90,7 @@ › Immediate. (test-tap/fixture/report/regular/uncaught-exception.cjs:5:9) ---tty-stream-chunk-separator - ✖ uncaught-exception.cjs exited with a non-zero exit code: 1 + ✘ uncaught-exception.cjs exited with a non-zero exit code: 1 ---tty-stream-chunk-separator ✔ unhandled-rejection › passes ---tty-stream-chunk-separator diff --git a/test-tap/reporters/default.regular.v18.log b/test-tap/reporters/default.regular.v18.log index aafc12bfb..de3e4e73d 100644 --- a/test-tap/reporters/default.regular.v18.log +++ b/test-tap/reporters/default.regular.v18.log @@ -13,11 +13,11 @@ › Object. (test-tap/fixture/report/regular/bad-test-chain.cjs:3:13) ---tty-stream-chunk-separator - ✖ bad-test-chain.cjs exited with a non-zero exit code: 1 + ✘ bad-test-chain.cjs exited with a non-zero exit code: 1 ---tty-stream-chunk-separator - ✖ nested-objects › format with max depth 4 + ✘ nested-objects › format with max depth 4 ---tty-stream-chunk-separator - ✖ nested-objects › format like with max depth 4 + ✘ nested-objects › format like with max depth 4 ---tty-stream-chunk-separator output-in-hook › before hook ℹ before @@ -30,7 +30,7 @@ ---tty-stream-chunk-separator ✔ output-in-hook › passing test ---tty-stream-chunk-separator - ✖ output-in-hook › failing test Test failed via `t.fail()` + ✘ output-in-hook › failing test Test failed via `t.fail()` ---tty-stream-chunk-separator output-in-hook › afterEach hook for passing test ℹ afterEach @@ -50,29 +50,29 @@ ---tty-stream-chunk-separator ✔ test › passes ---tty-stream-chunk-separator - ✖ test › fails Test failed via `t.fail()` + ✘ test › fails Test failed via `t.fail()` ---tty-stream-chunk-separator ✔ test › known failure ---tty-stream-chunk-separator - ✖ test › no longer failing Test was expected to fail, but succeeded, you should stop marking the test as failing + ✘ test › no longer failing Test was expected to fail, but succeeded, you should stop marking the test as failing ---tty-stream-chunk-separator - ✖ test › logs Test failed via `t.fail()` + ✘ test › logs Test failed via `t.fail()` ℹ hello ℹ world ---tty-stream-chunk-separator - ✖ test › formatted + ✘ test › formatted ---tty-stream-chunk-separator - ✖ test › implementation throws non-error Error thrown in test + ✘ test › implementation throws non-error Error thrown in test ---tty-stream-chunk-separator - ✖ traces-in-t-throws › throws + ✘ traces-in-t-throws › throws ---tty-stream-chunk-separator - ✖ traces-in-t-throws › notThrows + ✘ traces-in-t-throws › notThrows ---tty-stream-chunk-separator - ✖ traces-in-t-throws › notThrowsAsync + ✘ traces-in-t-throws › notThrowsAsync ---tty-stream-chunk-separator - ✖ traces-in-t-throws › throwsAsync + ✘ traces-in-t-throws › throwsAsync ---tty-stream-chunk-separator - ✖ traces-in-t-throws › throwsAsync different error + ✘ traces-in-t-throws › throwsAsync different error ---tty-stream-chunk-separator ✔ uncaught-exception › passes ---tty-stream-chunk-separator @@ -90,7 +90,7 @@ › Immediate. (test-tap/fixture/report/regular/uncaught-exception.cjs:5:9) ---tty-stream-chunk-separator - ✖ uncaught-exception.cjs exited with a non-zero exit code: 1 + ✘ uncaught-exception.cjs exited with a non-zero exit code: 1 ---tty-stream-chunk-separator ✔ unhandled-rejection › passes ---tty-stream-chunk-separator diff --git a/test-tap/reporters/default.timeoutinmultiplefiles.v14.log b/test-tap/reporters/default.timeoutinmultiplefiles.v14.log index 16d1ddd6b..f3a678ae2 100644 --- a/test-tap/reporters/default.timeoutinmultiplefiles.v14.log +++ b/test-tap/reporters/default.timeoutinmultiplefiles.v14.log @@ -5,7 +5,7 @@ ✔ a › a passes two ---tty-stream-chunk-separator  - ✖ Timed out while running tests + ✘ Timed out while running tests 2 tests were pending in a.cjs @@ -18,7 +18,7 @@ ✔ b › b passes two ---tty-stream-chunk-separator  - ✖ Timed out while running tests + ✘ Timed out while running tests 3 tests were pending in b.cjs diff --git a/test-tap/reporters/default.timeoutinmultiplefiles.v16.log b/test-tap/reporters/default.timeoutinmultiplefiles.v16.log index 16d1ddd6b..f3a678ae2 100644 --- a/test-tap/reporters/default.timeoutinmultiplefiles.v16.log +++ b/test-tap/reporters/default.timeoutinmultiplefiles.v16.log @@ -5,7 +5,7 @@ ✔ a › a passes two ---tty-stream-chunk-separator  - ✖ Timed out while running tests + ✘ Timed out while running tests 2 tests were pending in a.cjs @@ -18,7 +18,7 @@ ✔ b › b passes two ---tty-stream-chunk-separator  - ✖ Timed out while running tests + ✘ Timed out while running tests 3 tests were pending in b.cjs diff --git a/test-tap/reporters/default.timeoutinmultiplefiles.v18.log b/test-tap/reporters/default.timeoutinmultiplefiles.v18.log index 16d1ddd6b..f3a678ae2 100644 --- a/test-tap/reporters/default.timeoutinmultiplefiles.v18.log +++ b/test-tap/reporters/default.timeoutinmultiplefiles.v18.log @@ -5,7 +5,7 @@ ✔ a › a passes two ---tty-stream-chunk-separator  - ✖ Timed out while running tests + ✘ Timed out while running tests 2 tests were pending in a.cjs @@ -18,7 +18,7 @@ ✔ b › b passes two ---tty-stream-chunk-separator  - ✖ Timed out while running tests + ✘ Timed out while running tests 3 tests were pending in b.cjs diff --git a/test-tap/reporters/default.timeoutinsinglefile.v14.log b/test-tap/reporters/default.timeoutinsinglefile.v14.log index 3c4830fb5..a1059e094 100644 --- a/test-tap/reporters/default.timeoutinsinglefile.v14.log +++ b/test-tap/reporters/default.timeoutinsinglefile.v14.log @@ -5,7 +5,7 @@ ✔ passes two ---tty-stream-chunk-separator  - ✖ Timed out while running tests + ✘ Timed out while running tests 2 tests were pending in a.cjs diff --git a/test-tap/reporters/default.timeoutinsinglefile.v16.log b/test-tap/reporters/default.timeoutinsinglefile.v16.log index 3c4830fb5..a1059e094 100644 --- a/test-tap/reporters/default.timeoutinsinglefile.v16.log +++ b/test-tap/reporters/default.timeoutinsinglefile.v16.log @@ -5,7 +5,7 @@ ✔ passes two ---tty-stream-chunk-separator  - ✖ Timed out while running tests + ✘ Timed out while running tests 2 tests were pending in a.cjs diff --git a/test-tap/reporters/default.timeoutinsinglefile.v18.log b/test-tap/reporters/default.timeoutinsinglefile.v18.log index 3c4830fb5..a1059e094 100644 --- a/test-tap/reporters/default.timeoutinsinglefile.v18.log +++ b/test-tap/reporters/default.timeoutinsinglefile.v18.log @@ -5,7 +5,7 @@ ✔ passes two ---tty-stream-chunk-separator  - ✖ Timed out while running tests + ✘ Timed out while running tests 2 tests were pending in a.cjs diff --git a/test-tap/reporters/default.timeoutwithmatch.v14.log b/test-tap/reporters/default.timeoutwithmatch.v14.log index 2ed31ca03..ae7070c95 100644 --- a/test-tap/reporters/default.timeoutwithmatch.v14.log +++ b/test-tap/reporters/default.timeoutwithmatch.v14.log @@ -3,7 +3,7 @@ ✔ passes needle ---tty-stream-chunk-separator  - ✖ Timed out while running tests + ✘ Timed out while running tests 2 tests were pending in a.cjs diff --git a/test-tap/reporters/default.timeoutwithmatch.v16.log b/test-tap/reporters/default.timeoutwithmatch.v16.log index 2ed31ca03..ae7070c95 100644 --- a/test-tap/reporters/default.timeoutwithmatch.v16.log +++ b/test-tap/reporters/default.timeoutwithmatch.v16.log @@ -3,7 +3,7 @@ ✔ passes needle ---tty-stream-chunk-separator  - ✖ Timed out while running tests + ✘ Timed out while running tests 2 tests were pending in a.cjs diff --git a/test-tap/reporters/default.timeoutwithmatch.v18.log b/test-tap/reporters/default.timeoutwithmatch.v18.log index 2ed31ca03..ae7070c95 100644 --- a/test-tap/reporters/default.timeoutwithmatch.v18.log +++ b/test-tap/reporters/default.timeoutwithmatch.v18.log @@ -3,7 +3,7 @@ ✔ passes needle ---tty-stream-chunk-separator  - ✖ Timed out while running tests + ✘ Timed out while running tests 2 tests were pending in a.cjs diff --git a/test-tap/reporters/tap.js b/test-tap/reporters/tap.js index 738e4cb6c..47050fad8 100644 --- a/test-tap/reporters/tap.js +++ b/test-tap/reporters/tap.js @@ -9,7 +9,7 @@ import TTYStream from '../helper/tty-stream.js'; fixReporterEnv(); test(async t => { - const {default: TapReporter} = await import('../../lib/reporters/tap.js'); // eslint-disable-line node/no-unsupported-features/es-syntax + const {default: TapReporter} = await import('../../lib/reporters/tap.js'); const run = (type, sanitizers = []) => t => { t.plan(1); diff --git a/test-types/module/context.ts b/test-types/module/context.ts index f2901be88..b8d516a1f 100644 --- a/test-types/module/context.ts +++ b/test-types/module/context.ts @@ -1,10 +1,11 @@ /* eslint-disable @typescript-eslint/no-empty-function */ -import anyTest, {ExecutionContext, TestFn} from 'ava'; +import type {ExecutionContext, TestFn} from 'ava'; +import anyTest from 'ava'; import {expectError, expectType} from 'tsd'; -interface Context { +type Context = { foo: string; -} +}; const test = anyTest as TestFn; @@ -24,9 +25,9 @@ anyTest('default context is unknown', t => { }); // See https://github.com/avajs/ava/issues/2253 -interface Covariant extends Context { +type Covariant = { bar: number; -} +} & Context; const test2 = anyTest as TestFn; const hook = (_t: ExecutionContext) => {}; diff --git a/test-types/module/macros.ts b/test-types/module/macros.ts index f775ed7aa..220438756 100644 --- a/test-types/module/macros.ts +++ b/test-types/module/macros.ts @@ -1,5 +1,6 @@ /* eslint-disable no-lone-blocks */ -import test, {ExecutionContext} from 'ava'; +import type {ExecutionContext} from 'ava'; +import test from 'ava'; import {expectType} from 'tsd'; // Typed arguments through generics. @@ -105,20 +106,20 @@ import {expectType} from 'tsd'; } // Inline function with explicit argument types. -test('has length 3', (t: ExecutionContext, input: string, expected: number) => { +test('has length 3 (explicit)', (t: ExecutionContext, input: string, expected: number) => { // @ts-expect-error TS2345 t.is(input, expected); }, 'bar', 3); // Completely inferred arguments for inline functions. -test('has length 3', (t, input, expected) => { +test('has length 3 (inferred)', (t, input, expected) => { expectType(input); expectType(expected); // @ts-expect-error TS2345 t.is(input, expected); }, 'foo', 3); -test.skip('skip', (t, input, expected) => { +test.skip('skip', (t, input, expected) => { // eslint-disable-line ava/no-skip-test expectType(input); expectType(expected); // @ts-expect-error TS2345 diff --git a/test-types/module/try-commit.ts b/test-types/module/try-commit.ts index c207a050b..e726ce2c7 100644 --- a/test-types/module/try-commit.ts +++ b/test-types/module/try-commit.ts @@ -1,4 +1,5 @@ -import test, {ExecutionContext} from 'ava'; +import type {ExecutionContext} from 'ava'; +import test from 'ava'; import {expectType} from 'tsd'; test('attempt', async t => { @@ -37,7 +38,7 @@ test('attempt with helper', async t => { attempt.commit(); }); -test('attempt with title', async t => { +test('attempt with title and helper', async t => { const attempt = await t.try('title', lengthCheck, 'string', 6); attempt.commit(); }); @@ -54,11 +55,13 @@ test('all possible variants to pass to t.try', async t => { void t.try('test', (tt, a, b) => tt.is(a.length, b), 'hello', 5); // Macro with title - const macro1 = test.macro<[string, number]>({ + const macro1 = test.macro<[string, number]>({ // eslint-disable-line ava/no-nested-tests exec: (tt, a, b) => tt.is(a.length, b), title: (title, a, b) => `${title ? `${String(title)} ` : ''}str: "${String(a)}" with len: "${String(b)}"`, }); - const macro2 = test.macro<[string, number]>((tt, a, b) => tt.is(a.slice(b), '')); + const macro2 = test.macro<[string, number]>((tt, a, b) => { // eslint-disable-line ava/no-nested-tests + tt.is(a.slice(b), ''); + }); void t.try(macro1, 'hello', 5); void t.try(macro2, 'hello', 5); diff --git a/test/cjs-default/fixtures/test.cjs b/test/cjs-default/fixtures/test.cjs index 1482fcef6..597f7d610 100644 --- a/test/cjs-default/fixtures/test.cjs +++ b/test/cjs-default/fixtures/test.cjs @@ -15,6 +15,6 @@ test('not enumerable', t => { }); test('main export equals the ESM export', async t => { - const {default: exported} = await import('ava'); // eslint-disable-line node/no-unsupported-features/es-syntax + const {default: exported} = await import('ava'); t.is(test, exported); }); diff --git a/test/config/integration.js b/test/config/integration.js index 0e97f96cb..a36676e9a 100644 --- a/test/config/integration.js +++ b/test/config/integration.js @@ -2,7 +2,7 @@ import fs from 'node:fs'; import path from 'node:path'; import test from '@ava/test'; -import tempy from 'tempy'; +import {temporaryDirectory} from 'tempy'; import {cwd, fixture} from '../helpers/exec.js'; @@ -64,7 +64,7 @@ test('looks for config files outside of project directory', async t => { }); test('use current working directory if `package.json` is not found', async t => { - const cwd = tempy.directory(); + const cwd = temporaryDirectory(); const testFilePath = path.join(cwd, 'test.js'); fs.writeFileSync(testFilePath, 'const test = require(process.env.TEST_AVA_IMPORT_FROM);\ntest(\'test name\', t => { t.pass(); });'); diff --git a/test/helpers/with-temporary-fixture.js b/test/helpers/with-temporary-fixture.js index ee2ec4443..f92d8382e 100644 --- a/test/helpers/with-temporary-fixture.js +++ b/test/helpers/with-temporary-fixture.js @@ -1,9 +1,9 @@ import fse from 'fs-extra'; -import tempy from 'tempy'; +import {temporaryDirectoryTask} from 'tempy'; export async function withTemporaryFixture(cwd, task) { let result; - await tempy.directory.task(async temporary => { + await temporaryDirectoryTask(async temporary => { await fse.copy(cwd, temporary); result = await task(temporary); }); diff --git a/types/assertions.d.ts b/types/assertions.d.ts index 68fd8d85b..08c3e05f1 100644 --- a/types/assertions.d.ts +++ b/types/assertions.d.ts @@ -18,7 +18,7 @@ export type ThrowsExpectation = { name?: string; }; -export interface Assertions { +export type Assertions = { /** * Assert that `actual` is [truthy](https://developer.mozilla.org/en-US/docs/Glossary/Truthy), returning a boolean * indicating whether the assertion passed. @@ -118,9 +118,9 @@ export interface Assertions { * indicating whether the assertion passed. */ truthy: TruthyAssertion; -} +}; -export interface AssertAssertion { +export type AssertAssertion = { /** * Assert that `actual` is [truthy](https://developer.mozilla.org/en-US/docs/Glossary/Truthy), returning a boolean * indicating whether the assertion passed. @@ -129,9 +129,9 @@ export interface AssertAssertion { /** Skip this assertion. */ skip(actual: any, message?: string): void; -} +}; -export interface DeepEqualAssertion { +export type DeepEqualAssertion = { /** * Assert that `actual` is [deeply equal](https://github.com/concordancejs/concordance#comparison-details) to * `expected`, returning a boolean indicating whether the assertion passed. @@ -152,9 +152,9 @@ export interface DeepEqualAssertion { /** Skip this assertion. */ skip(actual: any, expected: any, message?: string): void; -} +}; -export interface LikeAssertion { +export type LikeAssertion = { /** * Assert that `value` is like `selector`, returning a boolean indicating whether the assertion passed. */ @@ -162,17 +162,17 @@ export interface LikeAssertion { /** Skip this assertion. */ skip(value: any, selector: any, message?: string): void; -} +}; -export interface FailAssertion { +export type FailAssertion = { /** Fail the test, always returning `false`. */ (message?: string): boolean; /** Skip this assertion. */ skip(message?: string): void; -} +}; -export interface FalseAssertion { +export type FalseAssertion = { /** * Assert that `actual` is strictly false, returning a boolean indicating whether the assertion passed. */ @@ -180,9 +180,9 @@ export interface FalseAssertion { /** Skip this assertion. */ skip(actual: any, message?: string): void; -} +}; -export interface FalsyAssertion { +export type FalsyAssertion = { /** * Assert that `actual` is [falsy](https://developer.mozilla.org/en-US/docs/Glossary/Falsy), returning a boolean * indicating whether the assertion passed. @@ -191,9 +191,9 @@ export interface FalsyAssertion { /** Skip this assertion. */ skip(actual: any, message?: string): void; -} +}; -export interface IsAssertion { +export type IsAssertion = { /** * Assert that `actual` is [the same * value](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is) as `expected`, @@ -203,9 +203,9 @@ export interface IsAssertion { /** Skip this assertion. */ skip(actual: any, expected: any, message?: string): void; -} +}; -export interface NotAssertion { +export type NotAssertion = { /** * Assert that `actual` is not [the same * value](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is) as `expected`, @@ -215,9 +215,9 @@ export interface NotAssertion { /** Skip this assertion. */ skip(actual: any, expected: any, message?: string): void; -} +}; -export interface NotDeepEqualAssertion { +export type NotDeepEqualAssertion = { /** * Assert that `actual` is not [deeply equal](https://github.com/concordancejs/concordance#comparison-details) to * `expected`, returning a boolean indicating whether the assertion passed. @@ -226,9 +226,9 @@ export interface NotDeepEqualAssertion { /** Skip this assertion. */ skip(actual: any, expected: any, message?: string): void; -} +}; -export interface NotRegexAssertion { +export type NotRegexAssertion = { /** * Assert that `string` does not match the regular expression, returning a boolean indicating whether the assertion * passed. @@ -237,17 +237,17 @@ export interface NotRegexAssertion { /** Skip this assertion. */ skip(string: string, regex: RegExp, message?: string): void; -} +}; -export interface NotThrowsAssertion { +export type NotThrowsAssertion = { /** Assert that the function does not throw. */ (fn: () => any, message?: string): void; /** Skip this assertion. */ skip(fn: () => any, message?: string): void; -} +}; -export interface NotThrowsAsyncAssertion { +export type NotThrowsAsyncAssertion = { /** Assert that the async function does not throw. You must await the result. */ (fn: () => PromiseLike, message?: string): Promise; @@ -256,17 +256,17 @@ export interface NotThrowsAsyncAssertion { /** Skip this assertion. */ skip(nonThrower: any, message?: string): void; -} +}; -export interface PassAssertion { +export type PassAssertion = { /** Count a passing assertion, always returning `true`. */ (message?: string): boolean; /** Skip this assertion. */ skip(message?: string): void; -} +}; -export interface RegexAssertion { +export type RegexAssertion = { /** * Assert that `string` matches the regular expression, returning a boolean indicating whether the assertion passed. */ @@ -274,9 +274,9 @@ export interface RegexAssertion { /** Skip this assertion. */ skip(string: string, regex: RegExp, message?: string): void; -} +}; -export interface SnapshotAssertion { +export type SnapshotAssertion = { /** * Assert that `expected` is [deeply equal](https://github.com/concordancejs/concordance#comparison-details) to a * previously recorded [snapshot](https://github.com/concordancejs/concordance#serialization-details), or if @@ -286,9 +286,9 @@ export interface SnapshotAssertion { /** Skip this assertion. */ skip(expected: any, message?: string): void; -} +}; -export interface ThrowsAssertion { +export type ThrowsAssertion = { /** * Assert that the function throws [an error](https://www.npmjs.com/package/is-error). If so, returns the error value. * The error must satisfy all expectations. Returns undefined when the assertion fails. @@ -297,9 +297,9 @@ export interface ThrowsAssertion { /** Skip this assertion. */ skip(fn: () => any, expectations?: any, message?: string): void; -} +}; -export interface ThrowsAsyncAssertion { +export type ThrowsAsyncAssertion = { /** * Assert that the async function throws [an error](https://www.npmjs.com/package/is-error). If so, returns the error * value. Returns undefined when the assertion fails. You must await the result. The error must satisfy all expectations. @@ -315,9 +315,9 @@ export interface ThrowsAsyncAssertion { /** Skip this assertion. */ skip(thrower: any, expectations?: any, message?: string): void; -} +}; -export interface TrueAssertion { +export type TrueAssertion = { /** * Assert that `actual` is strictly true, returning a boolean indicating whether the assertion passed. */ @@ -325,9 +325,9 @@ export interface TrueAssertion { /** Skip this assertion. */ skip(actual: any, message?: string): void; -} +}; -export interface TruthyAssertion { +export type TruthyAssertion = { /** * Assert that `actual` is [truthy](https://developer.mozilla.org/en-US/docs/Glossary/Truthy), returning a boolean * indicating whether the assertion passed. @@ -336,4 +336,4 @@ export interface TruthyAssertion { /** Skip this assertion. */ skip(actual: any, message?: string): void; -} +}; diff --git a/types/subscribable.d.ts b/types/subscribable.d.ts index 3a3399bca..42bb0f17c 100644 --- a/types/subscribable.d.ts +++ b/types/subscribable.d.ts @@ -1,6 +1,6 @@ -export interface Subscribable { +export type Subscribable = { subscribe(observer: { error(error: any): void; complete(): void; }): void; -} +}; diff --git a/types/test-fn.d.ts b/types/test-fn.d.ts index 730651ddb..f58a5d2cf 100644 --- a/types/test-fn.d.ts +++ b/types/test-fn.d.ts @@ -3,7 +3,7 @@ import type {Subscribable} from './subscribable.js'; import type {TryFn} from './try-fn.js'; /** The `t` value passed to test & hook implementations. */ -export interface ExecutionContext extends Assertions { +export type ExecutionContext = { /** Test context, shared with hooks. */ context: Context; @@ -18,17 +18,17 @@ export interface ExecutionContext extends Assertions { readonly teardown: TeardownFn; readonly timeout: TimeoutFn; readonly try: TryFn; -} +} & Assertions; -export interface LogFn { +export type LogFn = { /** Log one or more values. */ (...values: any[]): void; /** Skip logging. */ skip(...values: any[]): void; -} +}; -export interface PlanFn { +export type PlanFn = { /** * Plan how many assertion there are in the test. The test will fail if the actual assertion count doesn't match the * number of planned assertions. See [assertion planning](https://github.com/avajs/ava#assertion-planning). @@ -37,7 +37,7 @@ export interface PlanFn { /** Don't plan assertions. */ skip(count: number): void; -} +}; /** * Set a timeout for the test, in milliseconds. The test will fail if the timeout is exceeded. @@ -67,7 +67,7 @@ export type Macro = { /** A test or hook implementation. */ export type Implementation = ImplementationFn | Macro; -export interface TestFn { +export type TestFn = { /** Declare a concurrent test. Additional arguments are passed to the implementation or macro. */ (title: string, implementation: Implementation, ...args: Args): void; @@ -88,9 +88,9 @@ export interface TestFn { serial: SerialFn; skip: SkipFn; todo: TodoFn; -} +}; -export interface AfterFn { +export type AfterFn = { /** * Declare a hook that is run once, after all tests have passed. * Additional arguments are passed to the implementation or macro. @@ -105,9 +105,9 @@ export interface AfterFn { always: AlwaysInterface; skip: HookSkipFn; -} +}; -export interface AlwaysInterface { +export type AlwaysInterface = { /** * Declare a hook that is run once, after all tests are done. * Additional arguments are passed to the implementation or macro. @@ -121,9 +121,9 @@ export interface AlwaysInterface { (implementation: Implementation, ...args: Args): void; skip: HookSkipFn; -} +}; -export interface BeforeFn { +export type BeforeFn = { /** * Declare a hook that is run once, before all tests. * Additional arguments are passed to the implementation or macro. @@ -137,9 +137,9 @@ export interface BeforeFn { (implementation: Implementation, ...args: Args): void; skip: HookSkipFn; -} +}; -export interface FailingFn { +export type FailingFn = { /** * Declare a concurrent test that is expected to fail. * Additional arguments are passed to the implementation or macro. @@ -154,17 +154,17 @@ export interface FailingFn { only: OnlyFn; skip: SkipFn; -} +}; -export interface HookSkipFn { +export type HookSkipFn = { /** Skip this hook. */ (title: string, implementation: Implementation, ...args: Args): void; /** Skip this hook. */ (implementation: Implementation, ...args: Args): void; -} +}; -export interface OnlyFn { +export type OnlyFn = { /** * Declare a test. Only this test and others declared with `.only()` are run. * Additional arguments are passed to the implementation or macro. @@ -176,9 +176,9 @@ export interface OnlyFn { * Additional arguments are passed to the macro. The macro is responsible for generating a unique test title. */ (macro: Macro, ...args: Args): void; -} +}; -export interface SerialFn { +export type SerialFn = { /** Declare a serial test. Additional arguments are passed to the implementation or macro. */ (title: string, implementation: Implementation, ...args: Args): void; @@ -195,15 +195,15 @@ export interface SerialFn { only: OnlyFn; skip: SkipFn; todo: TodoFn; -} +}; -export interface SkipFn { +export type SkipFn = { /** Skip this test. */ (title: string, implementation: Implementation, ...args: Args): void; /** Skip this test. */ (macro: Macro, ...args: Args): void; -} +}; /** Declare a test that should be implemented later. */ export type TodoFn = (title: string) => void; @@ -216,16 +216,16 @@ export type MacroDeclarationOptions = title: TitleFn; }; -export interface MacroFn { +export type MacroFn = { /** Declare a reusable test implementation. */ (/** The function that is executed when the macro is used. */ exec: ImplementationFn): Macro; (declaration: MacroDeclarationOptions): Macro; -} +}; -export interface Meta { +export type Meta = { /** Path to the test file being executed. */ file: string; /** Directory where snapshots are stored. */ snapshotDirectory: string; -} +}; diff --git a/types/try-fn.d.ts b/types/try-fn.d.ts index 8009df0c9..f1381d82d 100644 --- a/types/try-fn.d.ts +++ b/types/try-fn.d.ts @@ -7,9 +7,9 @@ export type CommitDiscardOptions = { retainLogs?: boolean; }; -export interface AssertionError extends Error {} +export type AssertionError = Record & Error; -export interface TryResult { +export type TryResult = { /** * Title of the attempt, helping you tell attempts aparts. */ @@ -40,9 +40,9 @@ export interface TryResult { * Discard the attempt. */ discard(options?: CommitDiscardOptions): void; -} +}; -export interface TryFn { +export type TryFn = { /** * Attempt to run some assertions. The result must be explicitly committed or discarded or else * the test will fail. The title may help distinguish attempts from one another. @@ -54,5 +54,5 @@ export interface TryFn { * the test will fail. */ (fn: Implementation, ...args: Args): Promise; -} +};