From 0525957f286886d04351c1d58d08a5dd5e8b806b Mon Sep 17 00:00:00 2001 From: Andy Edwards Date: Fri, 13 Feb 2026 14:41:12 -0600 Subject: [PATCH 1/4] chore: wip on eslint 10 --- .circleci/config.yml | 2 +- package.json | 2 +- packages/base/package.json | 10 +- packages/base/plugins/getConfigFiles.cjs | 3 - packages/base/plugins/getEslintConfigs.cjs | 12 + packages/base/scripts/migrate.cjs | 2 + .../migrate/migrateEslintEnvComments.cjs | 68 ++ packages/base/util/getBabelParseOpts.cjs | 151 +++ packages/esnext/package.json | 4 +- packages/esnext/plugins/getConfigFiles.cjs | 2 - packages/flow/package.json | 2 +- packages/mocha/package.json | 2 +- packages/mocha/plugins/getConfigFiles.cjs | 2 - packages/react/package.json | 4 +- .../plugins/getConfigFiles.cjs | 1 - packages/typescript/package.json | 8 +- pnpm-lock.yaml | 1054 +++++++---------- 17 files changed, 678 insertions(+), 651 deletions(-) create mode 100644 packages/base/scripts/migrate/migrateEslintEnvComments.cjs create mode 100644 packages/base/util/getBabelParseOpts.cjs diff --git a/.circleci/config.yml b/.circleci/config.yml index dee129c7..91a2a98d 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -8,7 +8,7 @@ orbs: jobs: build: docker: - - image: cimg/node:20.10.0 + - image: cimg/node:20.19.0 steps: - checkout diff --git a/package.json b/package.json index d31121be..46c533fe 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ "chai": "^4.3.7", "chalk": "^4.1.2", "dedent-js": "^1.0.1", - "eslint": "^9.17.0", + "eslint": "^10.0.0", "execa": "^5.0.0", "fs-extra": "^10.0.0", "gitignore-fs": "^2.2.2", diff --git a/packages/base/package.json b/packages/base/package.json index 752ab2a1..2b800454 100644 --- a/packages/base/package.json +++ b/packages/base/package.json @@ -18,14 +18,14 @@ "@babel/parser": "^7.27.0", "@babel/template": "^7.27.0", "@babel/types": "^7.27.0", - "@eslint/compat": "^1.2.8", - "@eslint/js": "^9.23.0", - "@jcoreio/eslint-plugin-implicit-dependencies": "^1.1.1", + "@eslint/compat": "^2.0.2", + "@eslint/js": "^10.0.1", + "@jcoreio/eslint-plugin-implicit-dependencies": "^1.2.0", "chalk": "^4.0.0", "debug": "^4.4.0", "dedent-js": "^1.0.1", - "eslint": "^9.17.0", - "eslint-config-prettier": "^9.1.0", + "eslint": "^10.0.0", + "eslint-config-prettier": "^10.1.8", "execa": "^5.0.0", "find-up": "^5.0.0", "fs-extra": "^10.0.0", diff --git a/packages/base/plugins/getConfigFiles.cjs b/packages/base/plugins/getConfigFiles.cjs index 7813816d..4ce0118d 100644 --- a/packages/base/plugins/getConfigFiles.cjs +++ b/packages/base/plugins/getConfigFiles.cjs @@ -48,7 +48,6 @@ module.exports = [ 'toolchain.config.cjs': async (existing) => { if (existing) return existing return dedent` - /* eslint-env node, es2018 */ module.exports = { buildIgnore: ${JSON.stringify(await initBuildIgnore(), null, 2)}, // scripts: { @@ -69,7 +68,6 @@ module.exports = [ ) } return dedent` - /* eslint-env node, es2018 */ const base = require('${name}/prettierConfig.cjs') module.exports = { ...base, @@ -84,7 +82,6 @@ module.exports = [ files[file] = async (existing) => existing && fromVersion ? existing : ( dedent` - /* eslint-env node, es2018 */ const base = require('${name}/${file}') module.exports = { ...base, diff --git a/packages/base/plugins/getEslintConfigs.cjs b/packages/base/plugins/getEslintConfigs.cjs index 9afa6a99..aca88db4 100644 --- a/packages/base/plugins/getEslintConfigs.cjs +++ b/packages/base/plugins/getEslintConfigs.cjs @@ -6,6 +6,7 @@ const path = require('path') const fs = require('../util/projectFs.cjs') const { globSync } = require('../util/glob.cjs') const execa = require('../util/execa.cjs') +const globals = require('globals') module.exports = [ () => { @@ -75,6 +76,17 @@ module.exports = [ ], }, }, + { + files: ['**'], + ignores: ['src/**', 'test/**'], + languageOptions: { + ecmaVersion: 2018, + globals: { + ...globals.es2018, + ...globals.node, + }, + }, + }, require('eslint-config-prettier'), ]) }, diff --git a/packages/base/scripts/migrate.cjs b/packages/base/scripts/migrate.cjs index c875f672..b616a419 100755 --- a/packages/base/scripts/migrate.cjs +++ b/packages/base/scripts/migrate.cjs @@ -14,6 +14,7 @@ async function migrate(args = []) { const installGitHooks = require('./install-git-hooks.cjs') const migrateProjectPackageJson = require('./migrate/migrateProjectPackageJson.cjs') const migrateEslintConfigs = require('./migrate/migrateEslintConfigs.cjs') + const migrateEslintEnvComments = require('./migrate/migrateEslintEnvComments.cjs') const migrateConfigFiles = require('./migrate/migrateConfigFiles.cjs') const migrateMoveTypeDefs = require('./migrate/migrateMoveTypeDefs.cjs') const migrateGitignore = require('./migrate/migrateGitignore.cjs') @@ -32,6 +33,7 @@ async function migrate(args = []) { } await migrateConfigFiles({ fromVersion }) await migrateEslintConfigs({ fromVersion }) + await migrateEslintEnvComments({ fromVersion }) if (!fromVersion) await migrateMoveTypeDefs() await migrateGitignore({ fromVersion }) await getPluginsAsyncFunction('migrate')(args, { fromVersion }) diff --git a/packages/base/scripts/migrate/migrateEslintEnvComments.cjs b/packages/base/scripts/migrate/migrateEslintEnvComments.cjs new file mode 100644 index 00000000..63278025 --- /dev/null +++ b/packages/base/scripts/migrate/migrateEslintEnvComments.cjs @@ -0,0 +1,68 @@ +const { gte } = require('semver') + +async function migrateEslintEnvComments({ fromVersion }) { + // istanbul ignore next + if (fromVersion && gte(fromVersion, '6.0.0')) { + return + } + + const fs = require('../../util/projectFs.cjs') + const { glob } = require('../../util/glob.cjs') + const path = require('path') + const replaceRanges = require('../../util/replaceRanges.cjs') + const getBabelParseOpts = require('../../util/getBabelParseOpts.cjs') + const chalk = require('chalk') + const dedent = require('dedent-js') + + const warnings = {} + for (const file of await glob('**/*.{js,jsx,cjs,mjs,ts,cts,mts,tsx}')) { + function warn(warning) { + ;(warnings[file] || (warnings[file] = [])).push(warning) + } + + const { parse } = require('@babel/parser') + const source = await fs.readFile(file) + let parsed + try { + parsed = parse(source, getBabelParseOpts(file)) + } catch (error) { + warn(`parse error: ${error.message}`) + continue + } + + if (!parsed || !('comments' in parsed) || !Array.isArray(parsed.comments)) { + continue + } + + const replacements = [] + for (const comment of parsed.comments) { + const { start, end, value } = comment + const envs = /^\s*eslint-env\s+(.*?)\s*$/.exec(value)?.[1] + if (envs == null) continue + replacements.push({ start, end, value: '' }) + } + + if (!replacements.length) continue + await fs.writeFile(file, replaceRanges(source, replacements), 'utf8') + console.error( + `removed eslint-env comments from ${path.relative(process.cwd(), file)}` + ) + } + + if (warnings.length) { + for (const [file, fileWarnings] of Object.entries(warnings)) { + // eslint-disable-next-line no-console + console.warn( + chalk.yellow( + dedent` + WARNING: ${file} could not be completely migrated because of the following: + ${fileWarnings.map((w) => `- ${w}`).join('\n ')} + + ` + ) + ) + } + } +} + +module.exports = migrateEslintEnvComments diff --git a/packages/base/util/getBabelParseOpts.cjs b/packages/base/util/getBabelParseOpts.cjs new file mode 100644 index 00000000..16a0f1b9 --- /dev/null +++ b/packages/base/util/getBabelParseOpts.cjs @@ -0,0 +1,151 @@ +const commonPlugins = [ + 'asyncGenerators', + 'bigInt', + 'classProperties', + 'classPrivateProperties', + 'classPrivateMethods', + 'classStaticBlock', + 'functionSent', + 'logicalAssignment', + 'moduleStringNames', + 'nullishCoalescingOperator', + 'numericSeparator', + 'objectRestSpread', + 'optionalCatchBinding', + 'optionalChaining', + 'privateIn', +] + +const modulePlugins = [ + 'dynamicImport', + 'exportNamespaceFrom', + 'exportDefaultFrom', + 'importMeta', + 'topLevelAwait', +] + +const babelParseOpts = { + js: { + sourceType: 'unambiguous', + allowImportExportEverywhere: true, + allowReturnOutsideFunction: true, + startLine: 1, + plugins: [ + ...commonPlugins, + ...modulePlugins, + ['flow', { all: true }], + 'flowComments', + 'jsx', + ], + }, + jsx: { + sourceType: 'unambiguous', + allowImportExportEverywhere: true, + allowReturnOutsideFunction: true, + startLine: 1, + plugins: [ + ...commonPlugins, + ...modulePlugins, + ['flow', { all: true }], + 'flowComments', + 'jsx', + ], + }, + cjs: { + sourceType: 'commonjs', + allowReturnOutsideFunction: true, + startLine: 1, + }, + mjs: { + sourceType: 'module', + allowImportExportEverywhere: true, + allowReturnOutsideFunction: true, + startLine: 1, + plugins: [...commonPlugins, ...modulePlugins], + }, + ts: { + sourceType: 'unambiguous', + allowImportExportEverywhere: true, + allowReturnOutsideFunction: true, + startLine: 1, + plugins: [ + ...commonPlugins, + ...modulePlugins, + 'typescript', + 'decorators-legacy', + ], + }, + dts: { + sourceType: 'unambiguous', + allowImportExportEverywhere: true, + allowReturnOutsideFunction: true, + startLine: 1, + plugins: [ + ...commonPlugins, + ...modulePlugins, + ['typescript', { dts: true }], + 'decorators-legacy', + ], + }, + tsx: { + sourceType: 'unambiguous', + allowImportExportEverywhere: true, + allowReturnOutsideFunction: true, + startLine: 1, + plugins: [ + ...commonPlugins, + ...modulePlugins, + 'jsx', + 'typescript', + 'decorators-legacy', + ], + }, + cts: { + sourceType: 'commonjs', + allowReturnOutsideFunction: true, + startLine: 1, + plugins: [...commonPlugins, 'typescript', 'decorators-legacy'], + }, + dcts: { + sourceType: 'commonjs', + allowReturnOutsideFunction: true, + startLine: 1, + plugins: [ + ...commonPlugins, + ['typescript', { dts: true }], + 'decorators-legacy', + ], + }, + mts: { + sourceType: 'module', + allowImportExportEverywhere: true, + allowReturnOutsideFunction: true, + startLine: 1, + plugins: [ + ...commonPlugins, + ...modulePlugins, + 'typescript', + 'decorators-legacy', + ], + }, + dmts: { + sourceType: 'module', + allowImportExportEverywhere: true, + allowReturnOutsideFunction: true, + startLine: 1, + plugins: [ + ...commonPlugins, + ...modulePlugins, + ['typescript', { dts: true }], + 'decorators-legacy', + ], + }, +} + +function getBabelParseOpts(file) { + const ext = + /\.(js|cjs|mjs|jsx|(d\.)?(ts|cts|mts|tsx))$/i.exec(file)?.[0] || 'js' + return babelParseOpts[ext] +} + +module.exports = getBabelParseOpts diff --git a/packages/esnext/package.json b/packages/esnext/package.json index 3b3adddb..a5b94dc0 100644 --- a/packages/esnext/package.json +++ b/packages/esnext/package.json @@ -16,7 +16,7 @@ "dependencies": { "@babel/cli": "^7.26.4", "@babel/core": "^7.26.0", - "@babel/eslint-parser": "^7.25.9", + "@babel/eslint-parser": "^7.28.6", "@babel/plugin-transform-runtime": "^7.25.9", "@babel/preset-env": "^7.26.0", "@babel/register": "^7.25.9", @@ -28,7 +28,7 @@ "babel-plugin-istanbul": "^7.0.0", "babel-register-esm": "^1.2.5", "dedent-js": "^1.0.1", - "eslint": "^9.17.0", + "eslint": "^10.0.0", "find-up": "^5.0.0", "fs-extra": "^10.0.0", "globals": "^16.0.0", diff --git a/packages/esnext/plugins/getConfigFiles.cjs b/packages/esnext/plugins/getConfigFiles.cjs index 47777ce5..8efd0ad3 100644 --- a/packages/esnext/plugins/getConfigFiles.cjs +++ b/packages/esnext/plugins/getConfigFiles.cjs @@ -16,7 +16,6 @@ module.exports = [ const outputCjs = await confirmOutputCjs() const outputEsm = await confirmOutputEsm() return dedent` - /* eslint-env node, es2018 */ module.exports = { ${outputCjs ? '' : '// '}cjsBabelEnv: { targets: { node: 16 } }, ${outputEsm ? '' : '// '}esmBabelEnv: { targets: { node: 16 } }, @@ -46,7 +45,6 @@ module.exports = [ ` }, '.babelrc.cjs': dedent` - /* eslint-env node, es2018 */ module.exports = function (api) { const base = require('${name}/.babelrc.cjs')(api) return { diff --git a/packages/flow/package.json b/packages/flow/package.json index e27698fa..222b5d0f 100644 --- a/packages/flow/package.json +++ b/packages/flow/package.json @@ -21,7 +21,7 @@ "@jcoreio/toolchain": "workspace:*", "@jcoreio/toolchain-esnext": "workspace:*", "dedent-js": "^1.0.1", - "eslint": "^9.17.0", + "eslint": "^10.0.0", "eslint-plugin-ft-flow": "^3.0.11", "semver": "^7.5.3" }, diff --git a/packages/mocha/package.json b/packages/mocha/package.json index 64e7ca6b..2b032dc0 100644 --- a/packages/mocha/package.json +++ b/packages/mocha/package.json @@ -18,7 +18,7 @@ "@jcoreio/toolchain": "workspace:*", "babel-plugin-istanbul": "^7.0.0", "dedent-js": "^1.0.1", - "eslint": "^9.24.0", + "eslint": "^10.0.0", "eslint-plugin-no-only-tests": "^3.3.0", "mocha": "^10.2.0", "nyc": "^15.1.0", diff --git a/packages/mocha/plugins/getConfigFiles.cjs b/packages/mocha/plugins/getConfigFiles.cjs index bdd3556e..eddae5cf 100644 --- a/packages/mocha/plugins/getConfigFiles.cjs +++ b/packages/mocha/plugins/getConfigFiles.cjs @@ -9,7 +9,6 @@ module.exports = [ 'nyc.config.cjs': async (existing) => existing && fromVersion ? existing : ( dedent` - /* eslint-env node, es2018 */ const base = require('${name}/nyc.config.cjs') module.exports = { ...base, @@ -36,7 +35,6 @@ module.exports = [ } if (!specs.length) specs.push('test') return dedent` - /* eslint-env node, es2018 */ const base = require('${name}/.mocharc.cjs') const { getSpecs } = require('${name}') module.exports = { diff --git a/packages/react/package.json b/packages/react/package.json index 47959066..11819b89 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -15,11 +15,11 @@ "homepage": "https://github.com/jcoreio/toolchains/tree/main/packages/react", "dependencies": { "@babel/core": "^7.26.0", - "@babel/eslint-parser": "^7.25.9", + "@babel/eslint-parser": "^7.28.6", "@babel/preset-react": "^7.26.3", "@jcoreio/toolchain": "workspace:*", "@jcoreio/toolchain-esnext": "workspace:*", - "eslint": "^9.17.0", + "eslint": "^10.0.0", "eslint-plugin-react": "^7.37.5" }, "peerDependencies": { diff --git a/packages/semantic-release/plugins/getConfigFiles.cjs b/packages/semantic-release/plugins/getConfigFiles.cjs index abdf7e90..776e5599 100644 --- a/packages/semantic-release/plugins/getConfigFiles.cjs +++ b/packages/semantic-release/plugins/getConfigFiles.cjs @@ -5,7 +5,6 @@ module.exports = [ async function getConfigFiles() { return { 'release.config.cjs': dedent` - /* eslint-env node, es2018 */ module.exports = { extends: [require.resolve('${name}/release.config.cjs')], } diff --git a/packages/typescript/package.json b/packages/typescript/package.json index dc9b1413..5c566789 100644 --- a/packages/typescript/package.json +++ b/packages/typescript/package.json @@ -18,11 +18,11 @@ "@babel/preset-typescript": "^7.26.0", "@jcoreio/toolchain": "workspace:*", "@jcoreio/toolchain-esnext": "workspace:*", - "@typescript-eslint/eslint-plugin": "^8.19.1", - "@typescript-eslint/parser": "^8.19.1", - "eslint": "^9.18.0", + "@typescript-eslint/eslint-plugin": "^8.55.0", + "@typescript-eslint/parser": "^8.55.0", + "eslint": "^10.0.0", "json5": "^2.2.1", - "typescript-eslint": "^8.29.0" + "typescript-eslint": "^8.55.0" }, "peerDependencies": { "typescript": "^5.1.0" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 115c245b..626bc352 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -37,8 +37,8 @@ importers: specifier: ^1.0.1 version: 1.0.1 eslint: - specifier: ^9.17.0 - version: 9.22.0 + specifier: ^10.0.0 + version: 10.0.0 execa: specifier: ^5.0.0 version: 5.1.1 @@ -133,14 +133,14 @@ importers: specifier: ^7.27.0 version: 7.27.0 '@eslint/compat': - specifier: ^1.2.8 - version: 1.2.8(eslint@9.22.0) + specifier: ^2.0.2 + version: 2.0.2(eslint@10.0.0) '@eslint/js': - specifier: ^9.23.0 - version: 9.23.0 + specifier: ^10.0.1 + version: 10.0.1(eslint@10.0.0) '@jcoreio/eslint-plugin-implicit-dependencies': - specifier: ^1.1.1 - version: 1.1.1 + specifier: ^1.2.0 + version: 1.2.0 chalk: specifier: ^4.0.0 version: 4.1.2 @@ -151,11 +151,11 @@ importers: specifier: ^1.0.1 version: 1.0.1 eslint: - specifier: ^9.17.0 - version: 9.22.0 + specifier: ^10.0.0 + version: 10.0.0 eslint-config-prettier: - specifier: ^9.1.0 - version: 9.1.0(eslint@9.22.0) + specifier: ^10.1.8 + version: 10.1.8(eslint@10.0.0) execa: specifier: ^5.0.0 version: 5.1.1 @@ -232,8 +232,8 @@ importers: specifier: ^7.26.0 version: 7.26.10 '@babel/eslint-parser': - specifier: ^7.25.9 - version: 7.26.10(@babel/core@7.26.10)(eslint@9.22.0) + specifier: ^7.28.6 + version: 7.28.6(@babel/core@7.26.10)(eslint@10.0.0) '@babel/plugin-transform-runtime': specifier: ^7.25.9 version: 7.26.10(@babel/core@7.26.10) @@ -268,8 +268,8 @@ importers: specifier: ^1.0.1 version: 1.0.1 eslint: - specifier: ^9.17.0 - version: 9.22.0 + specifier: ^10.0.0 + version: 10.0.0 find-up: specifier: ^5.0.0 version: 5.0.0 @@ -313,11 +313,11 @@ importers: specifier: ^1.0.1 version: 1.0.1 eslint: - specifier: ^9.17.0 - version: 9.22.0 + specifier: ^10.0.0 + version: 10.0.0 eslint-plugin-ft-flow: specifier: ^3.0.11 - version: 3.0.11(eslint@9.22.0)(hermes-eslint@0.26.0) + version: 3.0.11(eslint@10.0.0)(hermes-eslint@0.26.0) semver: specifier: ^7.5.3 version: 7.7.1 @@ -334,8 +334,8 @@ importers: specifier: ^1.0.1 version: 1.0.1 eslint: - specifier: ^9.24.0 - version: 9.24.0 + specifier: ^10.0.0 + version: 10.0.0 eslint-plugin-no-only-tests: specifier: ^3.3.0 version: 3.3.0 @@ -358,8 +358,8 @@ importers: specifier: ^7.26.0 version: 7.26.10 '@babel/eslint-parser': - specifier: ^7.25.9 - version: 7.26.10(@babel/core@7.26.10)(eslint@9.22.0) + specifier: ^7.28.6 + version: 7.28.6(@babel/core@7.26.10)(eslint@10.0.0) '@babel/preset-react': specifier: ^7.26.3 version: 7.26.3(@babel/core@7.26.10) @@ -370,11 +370,11 @@ importers: specifier: workspace:* version: link:../esnext eslint: - specifier: ^9.17.0 - version: 9.22.0 + specifier: ^10.0.0 + version: 10.0.0 eslint-plugin-react: specifier: ^7.37.5 - version: 7.37.5(eslint@9.22.0) + version: 7.37.5(eslint@10.0.0) react: specifier: '*' version: 19.0.0 @@ -406,20 +406,20 @@ importers: specifier: workspace:* version: link:../esnext '@typescript-eslint/eslint-plugin': - specifier: ^8.19.1 - version: 8.27.0(@typescript-eslint/parser@8.27.0(eslint@9.22.0)(typescript@5.8.2))(eslint@9.22.0)(typescript@5.8.2) + specifier: ^8.55.0 + version: 8.55.0(@typescript-eslint/parser@8.55.0(eslint@10.0.0)(typescript@5.8.2))(eslint@10.0.0)(typescript@5.8.2) '@typescript-eslint/parser': - specifier: ^8.19.1 - version: 8.27.0(eslint@9.22.0)(typescript@5.8.2) + specifier: ^8.55.0 + version: 8.55.0(eslint@10.0.0)(typescript@5.8.2) eslint: - specifier: ^9.18.0 - version: 9.22.0 + specifier: ^10.0.0 + version: 10.0.0 json5: specifier: ^2.2.1 version: 2.2.3 typescript-eslint: - specifier: ^8.29.0 - version: 8.29.0(eslint@9.22.0)(typescript@5.8.2) + specifier: ^8.55.0 + version: 8.55.0(eslint@10.0.0)(typescript@5.8.2) devDependencies: typescript: specifier: ^5.1.0 @@ -647,8 +647,8 @@ packages: resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==} engines: {node: '>=6.9.0'} - '@babel/code-frame@7.27.1': - resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==} + '@babel/code-frame@7.29.0': + resolution: {integrity: sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==} engines: {node: '>=6.9.0'} '@babel/compat-data@7.26.8': @@ -659,8 +659,8 @@ packages: resolution: {integrity: sha512-vMqyb7XCDMPvJFFOaT9kxtiRh42GwlZEg1/uIgtZshS5a/8OaduUfCi7kynKgc3Tw/6Uo2D+db9qBttghhmxwQ==} engines: {node: '>=6.9.0'} - '@babel/eslint-parser@7.26.10': - resolution: {integrity: sha512-QsfQZr4AiLpKqn7fz+j7SN+f43z2DZCgGyYbNJ2vJOqKfG4E6MZer1+jqGZqKJaxq/gdO2DC/nUu45+pOL5p2Q==} + '@babel/eslint-parser@7.28.6': + resolution: {integrity: sha512-QGmsKi2PBO/MHSQk+AAgA9R6OHQr+VqnniFE0eMWZcVcfBZoA2dKn2hUsl3Csg/Plt9opRUWdY7//VXsrIlEiA==} engines: {node: ^10.13.0 || ^12.13.0 || >=14.0.0} peerDependencies: '@babel/core': ^7.11.0 @@ -1215,6 +1215,10 @@ packages: resolution: {integrity: sha512-2WJMeRQPHKSPemqk/awGrAiuFfzBmOIPXKizAsVhWH9YJqLZ0H+HS4c8loHGgW6utJ3E/ejXQUsiGaQy2NZ9Fw==} engines: {node: '>=6.9.0'} + '@babel/runtime@7.28.6': + resolution: {integrity: sha512-05WQkdpL9COIMz4LjTxGpPNCdlpyimKppYNoJ5Di5EUObifl8t4tuLuUBBZEpoLYOmfvIWrsp9fCl0HoPRVTdA==} + engines: {node: '>=6.9.0'} + '@babel/template@7.27.0': resolution: {integrity: sha512-2ncevenBqXI6qRMukPlXwHKHchC7RyMuu4xv5JBXRfOGVcTy1mXCD12qrp7Jsoxll1EV3+9sE4GugBVRjT2jFA==} engines: {node: '>=6.9.0'} @@ -1235,72 +1239,53 @@ packages: resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==} engines: {node: '>=0.1.90'} - '@eslint-community/eslint-utils@4.5.1': - resolution: {integrity: sha512-soEIOALTfTK6EjmKMMoLugwaP0rzkad90iIWd1hMO9ARkSAyjfMfkRRhLvD5qH7vvM0Cg72pieUfR6yh6XxC4w==} + '@eslint-community/eslint-utils@4.9.1': + resolution: {integrity: sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - '@eslint-community/regexpp@4.12.1': - resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==} + '@eslint-community/regexpp@4.12.2': + resolution: {integrity: sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - '@eslint/compat@1.2.8': - resolution: {integrity: sha512-LqCYHdWL/QqKIJuZ/ucMAv8d4luKGs4oCPgpt8mWztQAtPrHfXKQ/XAUc8ljCHAfJCn6SvkpTcGt5Tsh8saowA==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/compat@2.0.2': + resolution: {integrity: sha512-pR1DoD0h3HfF675QZx0xsyrsU8q70Z/plx7880NOhS02NuWLgBCOMDL787nUeQ7EWLkxv3bPQJaarjcPQb2Dwg==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} peerDependencies: - eslint: ^9.10.0 + eslint: ^8.40 || 9 || 10 peerDependenciesMeta: eslint: optional: true - '@eslint/config-array@0.19.2': - resolution: {integrity: sha512-GNKqxfHG2ySmJOBSHg7LxeUx4xpuCoFjacmlCoYWEbaPXLwvfIjixRI12xCQZeULksQb23uiA8F40w5TojpV7w==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/config-array@0.23.1': + resolution: {integrity: sha512-uVSdg/V4dfQmTjJzR0szNczjOH/J+FyUMMjYtr07xFRXR7EDf9i1qdxrD0VusZH9knj1/ecxzCQQxyic5NzAiA==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@eslint/config-array@0.20.0': - resolution: {integrity: sha512-fxlS1kkIjx8+vy2SjuCB94q3htSNrufYTXubwiBFeaQHbH6Ipi43gFJq2zCMt6PHhImH3Xmr0NksKDvchWlpQQ==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/config-helpers@0.5.2': + resolution: {integrity: sha512-a5MxrdDXEvqnIq+LisyCX6tQMPF/dSJpCfBgBauY+pNZ28yCtSsTvyTYrMhaI+LK26bVyCJfJkT0u8KIj2i1dQ==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@eslint/config-helpers@0.1.0': - resolution: {integrity: sha512-kLrdPDJE1ckPo94kmPPf9Hfd0DU0Jw6oKYrhe+pwSC0iTUInmTa+w6fw8sGgcfkFJGNdWOUeOaDM4quW4a7OkA==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/core@1.1.0': + resolution: {integrity: sha512-/nr9K9wkr3P1EzFTdFdMoLuo1PmIxjmwvPozwoSodjNBdefGujXQUF93u1DDZpEaTuDvMsIQddsd35BwtrW9Xw==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@eslint/config-helpers@0.2.1': - resolution: {integrity: sha512-RI17tsD2frtDu/3dmI7QRrD4bedNKPM08ziRYaC5AhkGrzIAJelm9kJU1TznK+apx6V+cqRz8tfpEeG3oIyjxw==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - '@eslint/core@0.12.0': - resolution: {integrity: sha512-cmrR6pytBuSMTaBweKoGMwu3EiHiEC+DoyupPmlZ0HxBJBtIxwe+j/E4XPIKNx+Q74c8lXKPwYawBf5glsTkHg==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - '@eslint/eslintrc@3.3.0': - resolution: {integrity: sha512-yaVPAiNAalnCZedKLdR21GOGILMLKPyqSLWaAjQFvYA2i/ciDi8ArYVr69Anohb6cH2Ukhqti4aFnYyPm8wdwQ==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - '@eslint/eslintrc@3.3.1': - resolution: {integrity: sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - '@eslint/js@9.22.0': - resolution: {integrity: sha512-vLFajx9o8d1/oL2ZkpMYbkLv8nDB6yaIwFNt7nI4+I80U/z03SxmfOMsLbvWr3p7C+Wnoh//aOu2pQW8cS0HCQ==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - '@eslint/js@9.23.0': - resolution: {integrity: sha512-35MJ8vCPU0ZMxo7zfev2pypqTwWTofFZO6m4KAtdoFhRpLJUpHTZZ+KB3C7Hb1d7bULYwO4lJXGCi5Se+8OMbw==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - '@eslint/js@9.24.0': - resolution: {integrity: sha512-uIY/y3z0uvOGX8cp1C2fiC4+ZmBhp6yZWkojtHL1YEMnRt1Y63HB9TM17proGEmeG7HeUY+UP36F0aknKYTpYA==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/js@10.0.1': + resolution: {integrity: sha512-zeR9k5pd4gxjZ0abRoIaxdc7I3nDktoXZk2qOv9gCNWx3mVwEn32VRhyLaRsDiJjTs0xq/T8mfPtyuXu7GWBcA==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + peerDependencies: + eslint: ^10.0.0 + peerDependenciesMeta: + eslint: + optional: true - '@eslint/object-schema@2.1.6': - resolution: {integrity: sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/object-schema@3.0.1': + resolution: {integrity: sha512-P9cq2dpr+LU8j3qbLygLcSZrl2/ds/pUpfnHNNuk5HW7mnngHs+6WSq5C9mO3rqRX8A1poxqLTC9cu0KOyJlBg==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@eslint/plugin-kit@0.2.7': - resolution: {integrity: sha512-JubJ5B2pJ4k4yGxaNLdbjrnk9d/iDz6/q8wOilpIowd6PJPgaxCuHBnBszq7Ce2TyMrywm5r4PnKm6V3iiZF+g==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/plugin-kit@0.6.0': + resolution: {integrity: sha512-bIZEUzOI1jkhviX2cp5vNyXQc6olzb2ohewQubuYlMXZ2Q/XjBO0x0XhGPvc9fjSIiUN0vw+0hq53BJ4eQSJKQ==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} '@gar/promisify@1.1.3': resolution: {integrity: sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==} @@ -1309,26 +1294,26 @@ packages: resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==} engines: {node: '>=18.18.0'} - '@humanfs/node@0.16.6': - resolution: {integrity: sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==} + '@humanfs/node@0.16.7': + resolution: {integrity: sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==} engines: {node: '>=18.18.0'} '@humanwhocodes/module-importer@1.0.1': resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} engines: {node: '>=12.22'} - '@humanwhocodes/retry@0.3.1': - resolution: {integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==} - engines: {node: '>=18.18'} - - '@humanwhocodes/retry@0.4.2': - resolution: {integrity: sha512-xeO57FpIu4p1Ri3Jq/EXq4ClRm86dVF2z/+kvFnyqVYRavTZmaFaUBbWCOuuTh0o/g7DSsk6kc2vrS4Vl5oPOQ==} + '@humanwhocodes/retry@0.4.3': + resolution: {integrity: sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==} engines: {node: '>=18.18'} '@isaacs/cliui@8.0.2': resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} engines: {node: '>=12'} + '@isaacs/cliui@9.0.0': + resolution: {integrity: sha512-AokJm4tuBHillT+FpMtxQ60n8ObyXBatq7jD2/JA9dxbDDokKQm8KMht5ibGzLVU9IJDIKK4TPKgMHEYMn3lMg==} + engines: {node: '>=18'} + '@istanbuljs/load-nyc-config@1.1.0': resolution: {integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==} engines: {node: '>=8'} @@ -1349,8 +1334,8 @@ packages: resolution: {integrity: sha512-zlIokP7ZCwwNhu3FVfsKnNCqrVaaWKBIl7AoeUrjLRcjNC/8OFDo2KfQ9rhx4VR1fQI6esSrS48KFVUAxlyCbA==} engines: {node: '>=16'} - '@jcoreio/eslint-plugin-implicit-dependencies@1.1.1': - resolution: {integrity: sha512-Kg+erBdnA1sczSNNGEGIA9k7hwfnN1NrKEnACfJwbGoR6T5E/yhBbpyF5q5dEIvxHTUJ4wL5azEd3m68qq8F+Q==} + '@jcoreio/eslint-plugin-implicit-dependencies@1.2.0': + resolution: {integrity: sha512-svx4ZCjZV46qV75cukBCA0mb0lsBA/bYwA/vNb/CWzV5cYrKDNx8kG5/kdUzqW/VWc2B7HI7Dm8ggB+2bp8VbA==} engines: {node: '>=16'} '@jcoreio/pack-lambda@3.0.1': @@ -1382,18 +1367,6 @@ packages: '@nicolo-ribaudo/eslint-scope-5-internals@5.1.1-v1': resolution: {integrity: sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==} - '@nodelib/fs.scandir@2.1.5': - resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} - engines: {node: '>= 8'} - - '@nodelib/fs.stat@2.0.5': - resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} - engines: {node: '>= 8'} - - '@nodelib/fs.walk@1.2.8': - resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} - engines: {node: '>= 8'} - '@npmcli/fs@1.1.1': resolution: {integrity: sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==} @@ -1490,8 +1463,8 @@ packages: resolution: {integrity: sha512-YcPQ8a0jwYU9bTdJDpXjMi7Brhkr1mXsXrUJvjqM2mQDgkRiz8jFaQGOdaLxgjtUfQgZhKy/O3cG/YwmgKaxLA==} engines: {node: '>=12.22.0'} - '@pnpm/npm-conf@2.3.1': - resolution: {integrity: sha512-c83qWb22rNRuB0UaVCI0uRPNRr8Z0FWnEIvT47jiHAmOIUHbBOg5XvV7pM5x+rKn9HRpjxquDbXYSXr3fAKFcw==} + '@pnpm/npm-conf@3.0.2': + resolution: {integrity: sha512-h104Kh26rR8tm+a3Qkc5S4VLYint3FE48as7+/5oCEcKR2idC/pF1G6AhIXKI+eHPJa/3J9i5z0Al47IeGHPkA==} engines: {node: '>=12'} '@sec-ant/readable-stream@0.4.1': @@ -1763,8 +1736,11 @@ packages: resolution: {integrity: sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==} engines: {node: '>= 10'} - '@types/estree@1.0.6': - resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} + '@types/esrecurse@4.3.1': + resolution: {integrity: sha512-xJBAbDifo5hpffDBuHl0Y8ywswbiAp/Wi7Y/GtAgSlZyIABppyurxVueOPE8LUQOxdlgi6Zqce7uoEpqNTeiUw==} + + '@types/estree@1.0.8': + resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} '@types/json-schema@7.0.15': resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} @@ -1781,98 +1757,63 @@ packages: '@types/validate-npm-package-name@4.0.2': resolution: {integrity: sha512-lrpDziQipxCEeK5kWxvljWYhUvOiB2A9izZd9B2AFarYAkqZshb4lPbRs7zKEic6eGtH8V/2qJW+dPp9OtF6bw==} - '@typescript-eslint/eslint-plugin@8.27.0': - resolution: {integrity: sha512-4henw4zkePi5p252c8ncBLzLce52SEUz2Ebj8faDnuUXz2UuHEONYcJ+G0oaCF+bYCWVZtrGzq3FD7YXetmnSA==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - peerDependencies: - '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 - eslint: ^8.57.0 || ^9.0.0 - typescript: '>=4.8.4 <5.9.0' - - '@typescript-eslint/eslint-plugin@8.29.0': - resolution: {integrity: sha512-PAIpk/U7NIS6H7TEtN45SPGLQaHNgB7wSjsQV/8+KYokAb2T/gloOA/Bee2yd4/yKVhPKe5LlaUGhAZk5zmSaQ==} + '@typescript-eslint/eslint-plugin@8.55.0': + resolution: {integrity: sha512-1y/MVSz0NglV1ijHC8OT49mPJ4qhPYjiK08YUQVbIOyu+5k862LKUHFkpKHWu//zmr7hDR2rhwUm6gnCGNmGBQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 + '@typescript-eslint/parser': ^8.55.0 eslint: ^8.57.0 || ^9.0.0 - typescript: '>=4.8.4 <5.9.0' + typescript: '>=4.8.4 <6.0.0' - '@typescript-eslint/parser@8.27.0': - resolution: {integrity: sha512-XGwIabPallYipmcOk45DpsBSgLC64A0yvdAkrwEzwZ2viqGqRUJ8eEYoPz0CWnutgAFbNMPdsGGvzjSmcWVlEA==} + '@typescript-eslint/parser@8.55.0': + resolution: {integrity: sha512-4z2nCSBfVIMnbuu8uinj+f0o4qOeggYJLbjpPHka3KH1om7e+H9yLKTYgksTaHcGco+NClhhY2vyO3HsMH1RGw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 - typescript: '>=4.8.4 <5.9.0' + typescript: '>=4.8.4 <6.0.0' - '@typescript-eslint/parser@8.29.0': - resolution: {integrity: sha512-8C0+jlNJOwQso2GapCVWWfW/rzaq7Lbme+vGUFKE31djwNncIpgXD7Cd4weEsDdkoZDjH0lwwr3QDQFuyrMg9g==} + '@typescript-eslint/project-service@8.55.0': + resolution: {integrity: sha512-zRcVVPFUYWa3kNnjaZGXSu3xkKV1zXy8M4nO/pElzQhFweb7PPtluDLQtKArEOGmjXoRjnUZ29NjOiF0eCDkcQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - eslint: ^8.57.0 || ^9.0.0 - typescript: '>=4.8.4 <5.9.0' - - '@typescript-eslint/scope-manager@8.27.0': - resolution: {integrity: sha512-8oI9GwPMQmBryaaxG1tOZdxXVeMDte6NyJA4i7/TWa4fBwgnAXYlIQP+uYOeqAaLJ2JRxlG9CAyL+C+YE9Xknw==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + typescript: '>=4.8.4 <6.0.0' - '@typescript-eslint/scope-manager@8.29.0': - resolution: {integrity: sha512-aO1PVsq7Gm+tcghabUpzEnVSFMCU4/nYIgC2GOatJcllvWfnhrgW0ZEbnTxm36QsikmCN1K/6ZgM7fok2I7xNw==} + '@typescript-eslint/scope-manager@8.55.0': + resolution: {integrity: sha512-fVu5Omrd3jeqeQLiB9f1YsuK/iHFOwb04bCtY4BSCLgjNbOD33ZdV6KyEqplHr+IlpgT0QTZ/iJ+wT7hvTx49Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/type-utils@8.27.0': - resolution: {integrity: sha512-wVArTVcz1oJOIEJxui/nRhV0TXzD/zMSOYi/ggCfNq78EIszddXcJb7r4RCp/oBrjt8n9A0BSxRMKxHftpDxDA==} + '@typescript-eslint/tsconfig-utils@8.55.0': + resolution: {integrity: sha512-1R9cXqY7RQd7WuqSN47PK9EDpgFUK3VqdmbYrvWJZYDd0cavROGn+74ktWBlmJ13NXUQKlZ/iAEQHI/V0kKe0Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - eslint: ^8.57.0 || ^9.0.0 - typescript: '>=4.8.4 <5.9.0' + typescript: '>=4.8.4 <6.0.0' - '@typescript-eslint/type-utils@8.29.0': - resolution: {integrity: sha512-ahaWQ42JAOx+NKEf5++WC/ua17q5l+j1GFrbbpVKzFL/tKVc0aYY8rVSYUpUvt2hUP1YBr7mwXzx+E/DfUWI9Q==} + '@typescript-eslint/type-utils@8.55.0': + resolution: {integrity: sha512-x1iH2unH4qAt6I37I2CGlsNs+B9WGxurP2uyZLRz6UJoZWDBx9cJL1xVN/FiOmHEONEg6RIufdvyT0TEYIgC5g==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 - typescript: '>=4.8.4 <5.9.0' - - '@typescript-eslint/types@8.27.0': - resolution: {integrity: sha512-/6cp9yL72yUHAYq9g6DsAU+vVfvQmd1a8KyA81uvfDE21O2DwQ/qxlM4AR8TSdAu+kJLBDrEHKC5/W2/nxsY0A==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + typescript: '>=4.8.4 <6.0.0' - '@typescript-eslint/types@8.29.0': - resolution: {integrity: sha512-wcJL/+cOXV+RE3gjCyl/V2G877+2faqvlgtso/ZRbTCnZazh0gXhe+7gbAnfubzN2bNsBtZjDvlh7ero8uIbzg==} + '@typescript-eslint/types@8.55.0': + resolution: {integrity: sha512-ujT0Je8GI5BJWi+/mMoR0wxwVEQaxM+pi30xuMiJETlX80OPovb2p9E8ss87gnSVtYXtJoU9U1Cowcr6w2FE0w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/typescript-estree@8.27.0': - resolution: {integrity: sha512-BnKq8cqPVoMw71O38a1tEb6iebEgGA80icSxW7g+kndx0o6ot6696HjG7NdgfuAVmVEtwXUr3L8R9ZuVjoQL6A==} + '@typescript-eslint/typescript-estree@8.55.0': + resolution: {integrity: sha512-EwrH67bSWdx/3aRQhCoxDaHM+CrZjotc2UCCpEDVqfCE+7OjKAGWNY2HsCSTEVvWH2clYQK8pdeLp42EVs+xQw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - typescript: '>=4.8.4 <5.9.0' + typescript: '>=4.8.4 <6.0.0' - '@typescript-eslint/typescript-estree@8.29.0': - resolution: {integrity: sha512-yOfen3jE9ISZR/hHpU/bmNvTtBW1NjRbkSFdZOksL1N+ybPEE7UVGMwqvS6CP022Rp00Sb0tdiIkhSCe6NI8ow==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - peerDependencies: - typescript: '>=4.8.4 <5.9.0' - - '@typescript-eslint/utils@8.27.0': - resolution: {integrity: sha512-njkodcwH1yvmo31YWgRHNb/x1Xhhq4/m81PhtvmRngD8iHPehxffz1SNCO+kwaePhATC+kOa/ggmvPoPza5i0Q==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - peerDependencies: - eslint: ^8.57.0 || ^9.0.0 - typescript: '>=4.8.4 <5.9.0' - - '@typescript-eslint/utils@8.29.0': - resolution: {integrity: sha512-gX/A0Mz9Bskm8avSWFcK0gP7cZpbY4AIo6B0hWYFCaIsz750oaiWR4Jr2CI+PQhfW1CpcQr9OlfPS+kMFegjXA==} + '@typescript-eslint/utils@8.55.0': + resolution: {integrity: sha512-BqZEsnPGdYpgyEIkDC1BadNY8oMwckftxBT+C8W0g1iKPdeqKZBtTfnvcq0nf60u7MkjFO8RBvpRGZBPw4L2ow==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 - typescript: '>=4.8.4 <5.9.0' - - '@typescript-eslint/visitor-keys@8.27.0': - resolution: {integrity: sha512-WsXQwMkILJvffP6z4U3FYJPlbf/j07HIxmDjZpbNvBJkMfvwXj5ACRkkHwBDvLBbDbtX5TdU64/rcvKJ/vuInQ==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + typescript: '>=4.8.4 <6.0.0' - '@typescript-eslint/visitor-keys@8.29.0': - resolution: {integrity: sha512-Sne/pVz8ryR03NFK21VpN88dZ2FdQXOlq3VIklbrTYEt8yXtRFr9tvUhqvCeKjqYk5FSim37sHbooT6vzBTZcg==} + '@typescript-eslint/visitor-keys@8.55.0': + resolution: {integrity: sha512-AxNRwEie8Nn4eFS1FzDMJWIISMGoXMb037sgCBJ3UR6o0fQTzr2tqN9WT+DkWJPhIdQCfV7T6D387566VtnCJA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} abbrev@1.1.1: @@ -1883,8 +1824,8 @@ packages: peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - acorn@8.14.1: - resolution: {integrity: sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==} + acorn@8.15.0: + resolution: {integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==} engines: {node: '>=0.4.0'} hasBin: true @@ -1926,8 +1867,8 @@ packages: resolution: {integrity: sha512-GdYO7a61mR0fOlAsvC9/rIHf7L96sBc6dEWzeOu+KAea5bZyQRPIpojrVoI4AXGJS/ycu/fBTdLrUkA4ODrvjw==} engines: {node: '>=18'} - ansi-escapes@7.2.0: - resolution: {integrity: sha512-g6LhBsl+GBPRWGWsBtutpzBYuIIdBkLEvad5C/va/74Db018+5TZiyA26cZJAr3Rft5lprVqOIPxf5Vid6tqAw==} + ansi-escapes@7.3.0: + resolution: {integrity: sha512-BvU8nYgGQBxcmMuEeUEmNTvrMVjJNSH7RgW24vXexN4Ven6qCvy4TntnvlnwnMLTVlcRQQdbRY8NKnaIoeWDNg==} engines: {node: '>=18'} ansi-regex@5.0.1: @@ -2004,8 +1945,8 @@ packages: array-ify@1.0.0: resolution: {integrity: sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==} - array-includes@3.1.8: - resolution: {integrity: sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==} + array-includes@3.1.9: + resolution: {integrity: sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==} engines: {node: '>= 0.4'} array.prototype.findlast@1.2.5: @@ -2084,6 +2025,10 @@ packages: balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + balanced-match@4.0.2: + resolution: {integrity: sha512-x0K50QvKQ97fdEz2kPehIerj+YTeptKF9hyYkKf6egnwmMWAkADiO0QCzSp0R5xN8FTZgYaBfSaue46Ej62nMg==} + engines: {node: 20 || >=22} + base64-js@1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} @@ -2112,6 +2057,10 @@ packages: brace-expansion@2.0.2: resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==} + brace-expansion@5.0.2: + resolution: {integrity: sha512-Pdk8c9poy+YhOgVWw1JNN22/HcivgKWwpxKq04M/jTmHyCZn12WPJebZxdjSa5TmBqISrUSgNYU3eRORljfCCw==} + engines: {node: 20 || >=22} + braces@3.0.3: resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} engines: {node: '>=8'} @@ -2527,8 +2476,8 @@ packages: error-ex@1.3.4: resolution: {integrity: sha512-sqQamAnR14VgCr1A618A3sGrygcpK+HEbenA/HiEAkkUwcZIIB/tgWqHFxWgOyDh4nB4JCRimh79dR5Ywc9MDQ==} - es-abstract@1.23.9: - resolution: {integrity: sha512-py07lI0wjxAC/DcfK1S6G7iANonniZwTISvdPzk9hzeH0IZIshbuuFxLIU96OyF89Yb9hiqWn8M/bY83KY5vzA==} + es-abstract@1.24.1: + resolution: {integrity: sha512-zHXBLhP+QehSSbsS9Pt23Gg964240DPd6QCf8WpkqEXxQ7fhdZzYsocOr5u7apWonsS5EjZDmTF+/slGMyasvw==} engines: {node: '>= 0.4'} es-define-property@1.0.1: @@ -2539,8 +2488,8 @@ packages: resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} engines: {node: '>= 0.4'} - es-iterator-helpers@1.2.1: - resolution: {integrity: sha512-uDn+FE1yrDzyC0pCo961B2IHbdM8y/ACZsKD4dG6WqrjV53BADjwa7D+1aom2rsNVfLyDgU/eigvlJGJ08OQ4w==} + es-iterator-helpers@1.2.2: + resolution: {integrity: sha512-BrUQ0cPTB/IwXj23HtwHjS9n7O4h9FX94b4xc5zlTHxeLgTAdzYUDyy6KdExAl9lbN5rtfe44xpjpmj9grxs5w==} engines: {node: '>= 0.4'} es-object-atoms@1.1.1: @@ -2578,8 +2527,8 @@ packages: resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} engines: {node: '>=12'} - eslint-config-prettier@9.1.0: - resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==} + eslint-config-prettier@10.1.8: + resolution: {integrity: sha512-82GZUjRS0p/jganf6q1rEO25VSoHH0hKPCTrgillPjdI/3bgBhAE1QzHrHTizjpRvy6pGAvKjDJtk2pF9NDq8w==} hasBin: true peerDependencies: eslint: '>=7.0.0' @@ -2604,9 +2553,9 @@ packages: resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} engines: {node: '>=8.0.0'} - eslint-scope@8.3.0: - resolution: {integrity: sha512-pUNxi75F8MJ/GdeKtVLSbYg4ZI34J6C0C7sbL4YOp2exGwen7ZsuBqKzUhXd0qMQ362yET3z+uPwKeg/0C2XCQ==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + eslint-scope@9.1.0: + resolution: {integrity: sha512-CkWE42hOJsNj9FJRaoMX9waUFYhqY4jmyLFdAdzZr6VaCg3ynLYx4WnOdkaIifGfH4gsUcBTn4OZbHXkpLD0FQ==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} eslint-visitor-keys@2.1.0: resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==} @@ -2616,23 +2565,17 @@ packages: resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - eslint-visitor-keys@4.2.0: - resolution: {integrity: sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==} + eslint-visitor-keys@4.2.1: + resolution: {integrity: sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - eslint@9.22.0: - resolution: {integrity: sha512-9V/QURhsRN40xuHXWjV64yvrzMjcz7ZyNoF2jJFmy9j/SLk0u1OLSZgXi28MrXjymnjEGSR80WCdab3RGMDveQ==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - hasBin: true - peerDependencies: - jiti: '*' - peerDependenciesMeta: - jiti: - optional: true + eslint-visitor-keys@5.0.0: + resolution: {integrity: sha512-A0XeIi7CXU7nPlfHS9loMYEKxUaONu/hTEzHTGba9Huu94Cq1hPivf+DE5erJozZOky0LfvXAyrV/tcswpLI0Q==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} - eslint@9.24.0: - resolution: {integrity: sha512-eh/jxIEJyZrvbWRe4XuVclLPDYSYYYgLy5zXGGxD6j8zjSAxFEzI2fL/8xNq6O2yKqVt+eF2YhV+hxjV6UKXwQ==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + eslint@10.0.0: + resolution: {integrity: sha512-O0piBKY36YSJhlFSG8p9VUdPV/SxxS4FYDWVpr/9GJuMaepzwlf4J8I4ov1b+ySQfDTPhc3DtLaxcT1fN0yqCg==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} hasBin: true peerDependencies: jiti: '*' @@ -2640,17 +2583,17 @@ packages: jiti: optional: true - espree@10.3.0: - resolution: {integrity: sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + espree@11.1.0: + resolution: {integrity: sha512-WFWYhO1fV4iYkqOOvq8FbqIhr2pYfoDY0kCotMkDeNtGpiGGkZ1iov2u8ydjtgM8yF8rzK7oaTbw2NAzbAbehw==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} esprima@4.0.1: resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} engines: {node: '>=4'} hasBin: true - esquery@1.6.0: - resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} + esquery@1.7.0: + resolution: {integrity: sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==} engines: {node: '>=0.10'} esrecurse@4.3.0: @@ -2702,10 +2645,6 @@ packages: fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} - fast-glob@3.3.3: - resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} - engines: {node: '>=8.6.0'} - fast-json-stable-stringify@2.1.0: resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} @@ -2719,9 +2658,6 @@ packages: resolution: {integrity: sha512-xkjOecfnKGkSsOwtZ5Pz7Us/T6mrbPQrq0nh+aCO5V9nk5NLWmasAHumTKjiPJPWANe+kAZ84Jc8ooJkzZ88Sw==} hasBin: true - fastq@1.19.1: - resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==} - fdir@6.5.0: resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} engines: {node: '>=12.0.0'} @@ -2830,8 +2766,8 @@ packages: resolution: {integrity: sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew==} engines: {node: '>=14.14'} - fs-extra@11.3.2: - resolution: {integrity: sha512-Xr9F6z6up6Ws+NjzMCZc6WXg2YFRlrLP9NQDO3VQrWrfiojdhS56TzueT88ze0uBdCTwEIhQ3ptnmKeWGFAe0A==} + fs-extra@11.3.3: + resolution: {integrity: sha512-VWSRii4t0AFm6ixFFmLLx1t7wS1gh+ckoa84aOeapGum0h+EZd1EhEumSB+ZdDLnEPuucsVB9oB7cxJHap6Afg==} engines: {node: '>=14.14'} fs-minipass@2.1.0: @@ -2868,6 +2804,10 @@ packages: engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} deprecated: This package is no longer supported. + generator-function@2.0.1: + resolution: {integrity: sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==} + engines: {node: '>= 0.4'} + gensync@1.0.0-beta.2: resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} engines: {node: '>=6.9.0'} @@ -2949,10 +2889,6 @@ packages: resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} engines: {node: '>=4'} - globals@14.0.0: - resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} - engines: {node: '>=18'} - globals@16.0.0: resolution: {integrity: sha512-iInW14XItCXET01CQFqudPOWP2jYMl7T+QRQT+UNcR/iQncN/F0UNpgd76iFkBPgNQb4+X3LV9tLJYzwh+Gl3A==} engines: {node: '>=18'} @@ -2971,9 +2907,6 @@ packages: graceful-fs@4.2.11: resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} - graphemer@1.4.0: - resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} - handlebars@4.7.8: resolution: {integrity: sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==} engines: {node: '>=0.4.7'} @@ -3109,6 +3042,10 @@ packages: resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} engines: {node: '>= 4'} + ignore@7.0.5: + resolution: {integrity: sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==} + engines: {node: '>= 4'} + import-fresh@3.3.1: resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} engines: {node: '>=6'} @@ -3229,8 +3166,8 @@ packages: resolution: {integrity: sha512-OVa3u9kkBbw7b8Xw5F9P+D/T9X+Z4+JruYVNapTjPYZYUznQ5YfWeFkOj606XYYW8yugTfC8Pj0hYqvi4ryAhA==} engines: {node: '>=18'} - is-generator-function@1.1.0: - resolution: {integrity: sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==} + is-generator-function@1.1.2: + resolution: {integrity: sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==} engines: {node: '>= 0.4'} is-glob@4.0.3: @@ -3248,6 +3185,10 @@ packages: resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} engines: {node: '>= 0.4'} + is-negative-zero@2.0.3: + resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==} + engines: {node: '>= 0.4'} + is-number-object@1.1.1: resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==} engines: {node: '>= 0.4'} @@ -3396,6 +3337,10 @@ packages: resolution: {integrity: sha512-9DDdhb5j6cpeitCbvLO7n7J4IxnbM6hoF6O1g4HQ5TfhvvKN8ywDM7668ZhMHRqVmxqhps/F6syWK2KcPxYlkw==} engines: {node: 20 || >=22} + jackspeak@4.2.3: + resolution: {integrity: sha512-ykkVRwrYvFm1nb2AJfKKYPr0emF6IiXDYUaFx4Zn9ZuIH7MrzEZ3sD5RlqGXNRpHtvUHJyOnCEFxOlNDtGo7wg==} + engines: {node: 20 || >=22} + java-properties@1.0.2: resolution: {integrity: sha512-qjdpeo2yKlYTH7nFdK0vbZWuTCesk4o63v5iVOlhMQPfuIZQfW/HI35SjfhA+4qpg36rnFSvUK5b1m+ckIblQQ==} engines: {node: '>= 0.6.0'} @@ -3411,6 +3356,10 @@ packages: resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} hasBin: true + js-yaml@4.1.1: + resolution: {integrity: sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==} + hasBin: true + jsbn@1.1.0: resolution: {integrity: sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==} @@ -3520,8 +3469,8 @@ packages: resolution: {integrity: sha512-XT9ewWAC43tiAV7xDAPflMkG0qOPn2QjHqlgX8FOqmWa/rxnyYDulF9T0F7tRy1u+TVTmK/M//6VIOye+2zDXg==} engines: {node: '>=20'} - lodash-es@4.17.21: - resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==} + lodash-es@4.17.23: + resolution: {integrity: sha512-kVI48u3PZr38HdYz98UmfPnXl2DXrpdctLrFLCd3kOx1xUkOmpFPx7gCWWM5MPkL/fD8zb+Ph0QzjGFs4+hHWg==} lodash.capitalize@4.2.1: resolution: {integrity: sha512-kZzYOKspf8XVX5AvmQF94gQW0lejFVgb80G85bU4ZWzoJ6C03PQg3coYAUpSTpQWelrZELd3XWgHzw4Ck5kaIw==} @@ -3550,9 +3499,6 @@ packages: lodash.isstring@4.0.1: resolution: {integrity: sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==} - lodash.merge@4.6.2: - resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} - lodash.truncate@4.4.2: resolution: {integrity: sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==} @@ -3565,6 +3511,9 @@ packages: lodash@4.17.21: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + lodash@4.17.23: + resolution: {integrity: sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w==} + log-symbols@4.1.0: resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} engines: {node: '>=10'} @@ -3648,10 +3597,6 @@ packages: merge-stream@2.0.0: resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} - merge2@1.4.1: - resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} - engines: {node: '>= 8'} - micromatch@4.0.8: resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} engines: {node: '>=8.6'} @@ -3677,6 +3622,10 @@ packages: resolution: {integrity: sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==} engines: {node: 20 || >=22} + minimatch@10.2.0: + resolution: {integrity: sha512-ugkC31VaVg9cF0DFVoADH12k6061zNZkZON+aX8AWsR9GhPcErkcMBceb6znR8wLERM2AkkOxy2nWRLpT9Jq5w==} + engines: {node: 20 || >=22} + minimatch@3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} @@ -3795,8 +3744,8 @@ packages: resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} engines: {node: '>=0.10.0'} - normalize-url@8.1.0: - resolution: {integrity: sha512-X06Mfd/5aKsRHc0O0J5CUedwnPmnDtLF2+nq+KN9KSDlJHkPuh0JUviWjEWMe0SW/9TDdSLVPuk7L5gGTIA1/w==} + normalize-url@8.1.1: + resolution: {integrity: sha512-JYc0DPlpGWB40kH5g07gGTrYuMqV653k3uBKY6uITPWds3M0ov3GaWGp9lbE3Bzngx8+XkfzgvASb9vk9JDFXQ==} engines: {node: '>=14.16'} npm-bundled@1.1.2: @@ -4253,9 +4202,6 @@ packages: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} - queue-microtask@1.2.3: - resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} - randombytes@2.1.0: resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} @@ -4321,8 +4267,8 @@ packages: resolution: {integrity: sha512-H66BPQMrv+V16t8xtmq+UC0CBpiTBA60V8ibS1QVReIp8T1z8hwFxqcGzm9K6lgsN7sB5edVH8a+ze6Fqm4weA==} engines: {node: '>=4'} - registry-auth-token@5.1.0: - resolution: {integrity: sha512-GdekYuwLXLxMuFTwAPg5UKGLW/UXzQrZvH/Zj791BQif5T05T0RsaLfHc9q3ZOKi7n+BoprPD9mJ0O0k4xzUlw==} + registry-auth-token@5.1.1: + resolution: {integrity: sha512-P7B4+jq8DeD2nMsAcdfaqHbssgHtZ7Z5+++a5ask90fvmJ8p5je4mOa+wzu+DB4vQ5tdJV/xywY+UnVFeQLV5Q==} engines: {node: '>=14'} regjsgen@0.8.0: @@ -4379,10 +4325,6 @@ packages: resolution: {integrity: sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==} engines: {node: '>= 4'} - reusify@1.1.0: - resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} - engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - rfdc@1.4.1: resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==} @@ -4395,9 +4337,6 @@ packages: resolution: {integrity: sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==} engines: {node: '>=0.12.0'} - run-parallel@1.2.0: - resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} - rxjs@7.8.2: resolution: {integrity: sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==} @@ -4448,8 +4387,8 @@ packages: engines: {node: '>=10'} hasBin: true - semver@7.7.3: - resolution: {integrity: sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==} + semver@7.7.4: + resolution: {integrity: sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==} engines: {node: '>=10'} hasBin: true @@ -4592,6 +4531,10 @@ packages: resolution: {integrity: sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==} engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + stop-iteration-iterator@1.1.0: + resolution: {integrity: sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==} + engines: {node: '>= 0.4'} + stream-browserify@3.0.0: resolution: {integrity: sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==} @@ -4722,8 +4665,8 @@ packages: resolution: {integrity: sha512-nHc6S/bwIilKHNRgK/3jlhDoIHcp45YgyiwcAk46Tr0LfEqGBVpmiAyuiuxeVE44m3mXnEeVhaipLOEWmH+Njw==} engines: {node: '>=14.16'} - tempy@3.1.0: - resolution: {integrity: sha512-7jDLIdD2Zp0bDe5r3D2qtkd1QOCacylBuL7oa4udvN6v2pqr4+LcCr67C8DR1zkpaZ8XosF5m1yQSabKAW6f2g==} + tempy@3.2.0: + resolution: {integrity: sha512-d79HhZya5Djd7am0q+W4RTsSU+D/aJzM+4Y4AGJGuGlgM2L6sx5ZvOYTmZjqPhrDrV6xJTtRSm1JCLj6V6LHLQ==} engines: {node: '>=14.16'} test-exclude@6.0.0: @@ -4766,8 +4709,8 @@ packages: resolution: {integrity: sha512-aXJDbk6SnumuaZSANd21XAo15ucCDE38H4fkqiGsc3MhCK+wOlZvLP9cB/TvpHT0mOyWgC4Z8EwRlzqYSUzdsA==} engines: {node: '>= 0.4'} - ts-api-utils@2.1.0: - resolution: {integrity: sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==} + ts-api-utils@2.4.0: + resolution: {integrity: sha512-3TaVTaAv2gTiMB35i3FiGJaRfwb3Pyn/j3m/bfAvGe8FB7CF6u+LMYqYlDh7reQf7UNvoTvdfAqHGmPGOSsPmA==} engines: {node: '>=18.12'} peerDependencies: typescript: '>=4.8.4' @@ -4822,12 +4765,12 @@ packages: typedarray-to-buffer@3.1.5: resolution: {integrity: sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==} - typescript-eslint@8.29.0: - resolution: {integrity: sha512-ep9rVd9B4kQsZ7ZnWCVxUE/xDLUUUsRzE0poAeNu+4CkFErLfuvPt/qtm2EpnSyfvsR0S6QzDFSrPCFBwf64fg==} + typescript-eslint@8.55.0: + resolution: {integrity: sha512-HE4wj+r5lmDVS9gdaN0/+iqNvPZwGfnJ5lZuz7s5vLlg9ODw0bIiiETaios9LvFI1U94/VBXGm3CB2Y5cNFMpw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 - typescript: '>=4.8.4 <5.9.0' + typescript: '>=4.8.4 <6.0.0' typescript@5.8.2: resolution: {integrity: sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==} @@ -4961,8 +4904,8 @@ packages: which-module@2.0.1: resolution: {integrity: sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==} - which-typed-array@1.1.19: - resolution: {integrity: sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==} + which-typed-array@1.1.20: + resolution: {integrity: sha512-LYfpUkmqwl0h9A2HL09Mms427Q1RZWuOHsukfVcKRq9q95iQxdw0ix1JQrqbcDR9PH1QDwf5Qo8OZb5lksZ8Xg==} engines: {node: '>= 0.4'} which@2.0.2: @@ -5949,7 +5892,7 @@ snapshots: js-tokens: 4.0.0 picocolors: 1.1.1 - '@babel/code-frame@7.27.1': + '@babel/code-frame@7.29.0': dependencies: '@babel/helper-validator-identifier': 7.28.5 js-tokens: 4.0.0 @@ -5977,11 +5920,11 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/eslint-parser@7.26.10(@babel/core@7.26.10)(eslint@9.22.0)': + '@babel/eslint-parser@7.28.6(@babel/core@7.26.10)(eslint@10.0.0)': dependencies: '@babel/core': 7.26.10 '@nicolo-ribaudo/eslint-scope-5-internals': 5.1.1-v1 - eslint: 9.22.0 + eslint: 10.0.0 eslint-visitor-keys: 2.1.0 semver: 6.3.1 @@ -6687,6 +6630,8 @@ snapshots: dependencies: regenerator-runtime: 0.14.1 + '@babel/runtime@7.28.6': {} + '@babel/template@7.27.0': dependencies: '@babel/code-frame': 7.26.2 @@ -6718,101 +6663,58 @@ snapshots: '@colors/colors@1.5.0': optional: true - '@eslint-community/eslint-utils@4.5.1(eslint@9.22.0)': - dependencies: - eslint: 9.22.0 - eslint-visitor-keys: 3.4.3 - - '@eslint-community/eslint-utils@4.5.1(eslint@9.24.0)': + '@eslint-community/eslint-utils@4.9.1(eslint@10.0.0)': dependencies: - eslint: 9.24.0 + eslint: 10.0.0 eslint-visitor-keys: 3.4.3 - '@eslint-community/regexpp@4.12.1': {} + '@eslint-community/regexpp@4.12.2': {} - '@eslint/compat@1.2.8(eslint@9.22.0)': + '@eslint/compat@2.0.2(eslint@10.0.0)': + dependencies: + '@eslint/core': 1.1.0 optionalDependencies: - eslint: 9.22.0 + eslint: 10.0.0 - '@eslint/config-array@0.19.2': + '@eslint/config-array@0.23.1': dependencies: - '@eslint/object-schema': 2.1.6 + '@eslint/object-schema': 3.0.1 debug: 4.4.0(supports-color@8.1.1) - minimatch: 3.1.2 + minimatch: 10.2.0 transitivePeerDependencies: - supports-color - '@eslint/config-array@0.20.0': + '@eslint/config-helpers@0.5.2': dependencies: - '@eslint/object-schema': 2.1.6 - debug: 4.4.0(supports-color@8.1.1) - minimatch: 3.1.2 - transitivePeerDependencies: - - supports-color - - '@eslint/config-helpers@0.1.0': {} - - '@eslint/config-helpers@0.2.1': {} + '@eslint/core': 1.1.0 - '@eslint/core@0.12.0': + '@eslint/core@1.1.0': dependencies: '@types/json-schema': 7.0.15 - '@eslint/eslintrc@3.3.0': - dependencies: - ajv: 6.12.6 - debug: 4.4.0(supports-color@8.1.1) - espree: 10.3.0 - globals: 14.0.0 - ignore: 5.3.2 - import-fresh: 3.3.1 - js-yaml: 4.1.0 - minimatch: 3.1.2 - strip-json-comments: 3.1.1 - transitivePeerDependencies: - - supports-color - - '@eslint/eslintrc@3.3.1': - dependencies: - ajv: 6.12.6 - debug: 4.4.0(supports-color@8.1.1) - espree: 10.3.0 - globals: 14.0.0 - ignore: 5.3.2 - import-fresh: 3.3.1 - js-yaml: 4.1.0 - minimatch: 3.1.2 - strip-json-comments: 3.1.1 - transitivePeerDependencies: - - supports-color - - '@eslint/js@9.22.0': {} - - '@eslint/js@9.23.0': {} - - '@eslint/js@9.24.0': {} + '@eslint/js@10.0.1(eslint@10.0.0)': + optionalDependencies: + eslint: 10.0.0 - '@eslint/object-schema@2.1.6': {} + '@eslint/object-schema@3.0.1': {} - '@eslint/plugin-kit@0.2.7': + '@eslint/plugin-kit@0.6.0': dependencies: - '@eslint/core': 0.12.0 + '@eslint/core': 1.1.0 levn: 0.4.1 '@gar/promisify@1.1.3': {} '@humanfs/core@0.19.1': {} - '@humanfs/node@0.16.6': + '@humanfs/node@0.16.7': dependencies: '@humanfs/core': 0.19.1 - '@humanwhocodes/retry': 0.3.1 + '@humanwhocodes/retry': 0.4.3 '@humanwhocodes/module-importer@1.0.1': {} - '@humanwhocodes/retry@0.3.1': {} - - '@humanwhocodes/retry@0.4.2': {} + '@humanwhocodes/retry@0.4.3': {} '@isaacs/cliui@8.0.2': dependencies: @@ -6823,6 +6725,8 @@ snapshots: wrap-ansi: 8.1.0 wrap-ansi-cjs: wrap-ansi@7.0.0 + '@isaacs/cliui@9.0.0': {} + '@istanbuljs/load-nyc-config@1.1.0': dependencies: camelcase: 5.3.1 @@ -6876,9 +6780,9 @@ snapshots: transitivePeerDependencies: - aws-crt - '@jcoreio/eslint-plugin-implicit-dependencies@1.1.1': + '@jcoreio/eslint-plugin-implicit-dependencies@1.2.0': dependencies: - '@babel/runtime': 7.26.10 + '@babel/runtime': 7.28.6 '@types/validate-npm-package-name': 4.0.2 pkg-up: 3.1.0 validate-npm-package-name: 5.0.1 @@ -6926,27 +6830,15 @@ snapshots: dependencies: eslint-scope: 5.1.1 - '@nodelib/fs.scandir@2.1.5': - dependencies: - '@nodelib/fs.stat': 2.0.5 - run-parallel: 1.2.0 - - '@nodelib/fs.stat@2.0.5': {} - - '@nodelib/fs.walk@1.2.8': - dependencies: - '@nodelib/fs.scandir': 2.1.5 - fastq: 1.19.1 - '@npmcli/fs@1.1.1': dependencies: '@gar/promisify': 1.1.3 - semver: 7.7.1 + semver: 7.7.4 '@npmcli/fs@2.1.2': dependencies: '@gar/promisify': 1.1.3 - semver: 7.7.1 + semver: 7.7.4 '@npmcli/git@2.1.0': dependencies: @@ -6956,7 +6848,7 @@ snapshots: npm-pick-manifest: 6.1.1 promise-inflight: 1.0.1 promise-retry: 2.0.1 - semver: 7.7.1 + semver: 7.7.4 which: 2.0.2 transitivePeerDependencies: - bluebird @@ -7063,7 +6955,7 @@ snapshots: dependencies: graceful-fs: 4.2.10 - '@pnpm/npm-conf@2.3.1': + '@pnpm/npm-conf@3.0.2': dependencies: '@pnpm/config.env-replace': 1.1.0 '@pnpm/network.ca-file': 1.0.2 @@ -7079,7 +6971,7 @@ snapshots: conventional-commits-parser: 6.2.1 debug: 4.4.3 import-from-esm: 2.0.0 - lodash-es: 4.17.21 + lodash-es: 4.17.23 micromatch: 4.0.8 semantic-release: 24.2.3(typescript@5.8.2) transitivePeerDependencies: @@ -7114,7 +7006,7 @@ snapshots: http-proxy-agent: 7.0.2 https-proxy-agent: 7.0.6 issue-parser: 7.0.1 - lodash-es: 4.17.21 + lodash-es: 4.17.23 mime: 4.1.0 p-filter: 4.1.0 semantic-release: 24.2.3(typescript@5.8.2) @@ -7128,17 +7020,17 @@ snapshots: '@semantic-release/error': 4.0.0 aggregate-error: 5.0.0 execa: 9.6.1 - fs-extra: 11.3.2 - lodash-es: 4.17.21 + fs-extra: 11.3.3 + lodash-es: 4.17.23 nerf-dart: 1.0.0 - normalize-url: 8.1.0 + normalize-url: 8.1.1 npm: 10.9.4 rc: 1.2.8 read-pkg: 9.0.1 - registry-auth-token: 5.1.0 + registry-auth-token: 5.1.1 semantic-release: 24.2.3(typescript@5.8.2) - semver: 7.7.3 - tempy: 3.1.0 + semver: 7.7.4 + tempy: 3.2.0 '@semantic-release/release-notes-generator@14.1.0(semantic-release@24.2.3(typescript@5.8.2))': dependencies: @@ -7150,7 +7042,7 @@ snapshots: get-stream: 7.0.1 import-from-esm: 2.0.0 into-stream: 7.0.0 - lodash-es: 4.17.21 + lodash-es: 4.17.23 read-package-up: 11.0.0 semantic-release: 24.2.3(typescript@5.8.2) transitivePeerDependencies: @@ -7495,7 +7387,9 @@ snapshots: '@tootallnate/once@2.0.0': {} - '@types/estree@1.0.6': {} + '@types/esrecurse@4.3.1': {} + + '@types/estree@1.0.8': {} '@types/json-schema@7.0.15': {} @@ -7509,167 +7403,104 @@ snapshots: '@types/validate-npm-package-name@4.0.2': {} - '@typescript-eslint/eslint-plugin@8.27.0(@typescript-eslint/parser@8.27.0(eslint@9.22.0)(typescript@5.8.2))(eslint@9.22.0)(typescript@5.8.2)': + '@typescript-eslint/eslint-plugin@8.55.0(@typescript-eslint/parser@8.55.0(eslint@10.0.0)(typescript@5.8.2))(eslint@10.0.0)(typescript@5.8.2)': dependencies: - '@eslint-community/regexpp': 4.12.1 - '@typescript-eslint/parser': 8.27.0(eslint@9.22.0)(typescript@5.8.2) - '@typescript-eslint/scope-manager': 8.27.0 - '@typescript-eslint/type-utils': 8.27.0(eslint@9.22.0)(typescript@5.8.2) - '@typescript-eslint/utils': 8.27.0(eslint@9.22.0)(typescript@5.8.2) - '@typescript-eslint/visitor-keys': 8.27.0 - eslint: 9.22.0 - graphemer: 1.4.0 - ignore: 5.3.2 - natural-compare: 1.4.0 - ts-api-utils: 2.1.0(typescript@5.8.2) - typescript: 5.8.2 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/eslint-plugin@8.29.0(@typescript-eslint/parser@8.29.0(eslint@9.22.0)(typescript@5.8.2))(eslint@9.22.0)(typescript@5.8.2)': - dependencies: - '@eslint-community/regexpp': 4.12.1 - '@typescript-eslint/parser': 8.29.0(eslint@9.22.0)(typescript@5.8.2) - '@typescript-eslint/scope-manager': 8.29.0 - '@typescript-eslint/type-utils': 8.29.0(eslint@9.22.0)(typescript@5.8.2) - '@typescript-eslint/utils': 8.29.0(eslint@9.22.0)(typescript@5.8.2) - '@typescript-eslint/visitor-keys': 8.29.0 - eslint: 9.22.0 - graphemer: 1.4.0 - ignore: 5.3.2 + '@eslint-community/regexpp': 4.12.2 + '@typescript-eslint/parser': 8.55.0(eslint@10.0.0)(typescript@5.8.2) + '@typescript-eslint/scope-manager': 8.55.0 + '@typescript-eslint/type-utils': 8.55.0(eslint@10.0.0)(typescript@5.8.2) + '@typescript-eslint/utils': 8.55.0(eslint@10.0.0)(typescript@5.8.2) + '@typescript-eslint/visitor-keys': 8.55.0 + eslint: 10.0.0 + ignore: 7.0.5 natural-compare: 1.4.0 - ts-api-utils: 2.1.0(typescript@5.8.2) + ts-api-utils: 2.4.0(typescript@5.8.2) typescript: 5.8.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.27.0(eslint@9.22.0)(typescript@5.8.2)': + '@typescript-eslint/parser@8.55.0(eslint@10.0.0)(typescript@5.8.2)': dependencies: - '@typescript-eslint/scope-manager': 8.27.0 - '@typescript-eslint/types': 8.27.0 - '@typescript-eslint/typescript-estree': 8.27.0(typescript@5.8.2) - '@typescript-eslint/visitor-keys': 8.27.0 - debug: 4.4.0(supports-color@8.1.1) - eslint: 9.22.0 + '@typescript-eslint/scope-manager': 8.55.0 + '@typescript-eslint/types': 8.55.0 + '@typescript-eslint/typescript-estree': 8.55.0(typescript@5.8.2) + '@typescript-eslint/visitor-keys': 8.55.0 + debug: 4.4.3 + eslint: 10.0.0 typescript: 5.8.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.29.0(eslint@9.22.0)(typescript@5.8.2)': + '@typescript-eslint/project-service@8.55.0(typescript@5.8.2)': dependencies: - '@typescript-eslint/scope-manager': 8.29.0 - '@typescript-eslint/types': 8.29.0 - '@typescript-eslint/typescript-estree': 8.29.0(typescript@5.8.2) - '@typescript-eslint/visitor-keys': 8.29.0 + '@typescript-eslint/tsconfig-utils': 8.55.0(typescript@5.8.2) + '@typescript-eslint/types': 8.55.0 debug: 4.4.3 - eslint: 9.22.0 typescript: 5.8.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/scope-manager@8.27.0': - dependencies: - '@typescript-eslint/types': 8.27.0 - '@typescript-eslint/visitor-keys': 8.27.0 - - '@typescript-eslint/scope-manager@8.29.0': + '@typescript-eslint/scope-manager@8.55.0': dependencies: - '@typescript-eslint/types': 8.29.0 - '@typescript-eslint/visitor-keys': 8.29.0 + '@typescript-eslint/types': 8.55.0 + '@typescript-eslint/visitor-keys': 8.55.0 - '@typescript-eslint/type-utils@8.27.0(eslint@9.22.0)(typescript@5.8.2)': + '@typescript-eslint/tsconfig-utils@8.55.0(typescript@5.8.2)': dependencies: - '@typescript-eslint/typescript-estree': 8.27.0(typescript@5.8.2) - '@typescript-eslint/utils': 8.27.0(eslint@9.22.0)(typescript@5.8.2) - debug: 4.4.3 - eslint: 9.22.0 - ts-api-utils: 2.1.0(typescript@5.8.2) typescript: 5.8.2 - transitivePeerDependencies: - - supports-color - '@typescript-eslint/type-utils@8.29.0(eslint@9.22.0)(typescript@5.8.2)': + '@typescript-eslint/type-utils@8.55.0(eslint@10.0.0)(typescript@5.8.2)': dependencies: - '@typescript-eslint/typescript-estree': 8.29.0(typescript@5.8.2) - '@typescript-eslint/utils': 8.29.0(eslint@9.22.0)(typescript@5.8.2) + '@typescript-eslint/types': 8.55.0 + '@typescript-eslint/typescript-estree': 8.55.0(typescript@5.8.2) + '@typescript-eslint/utils': 8.55.0(eslint@10.0.0)(typescript@5.8.2) debug: 4.4.3 - eslint: 9.22.0 - ts-api-utils: 2.1.0(typescript@5.8.2) + eslint: 10.0.0 + ts-api-utils: 2.4.0(typescript@5.8.2) typescript: 5.8.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/types@8.27.0': {} - - '@typescript-eslint/types@8.29.0': {} - - '@typescript-eslint/typescript-estree@8.27.0(typescript@5.8.2)': - dependencies: - '@typescript-eslint/types': 8.27.0 - '@typescript-eslint/visitor-keys': 8.27.0 - debug: 4.4.0(supports-color@8.1.1) - fast-glob: 3.3.3 - is-glob: 4.0.3 - minimatch: 9.0.5 - semver: 7.7.1 - ts-api-utils: 2.1.0(typescript@5.8.2) - typescript: 5.8.2 - transitivePeerDependencies: - - supports-color + '@typescript-eslint/types@8.55.0': {} - '@typescript-eslint/typescript-estree@8.29.0(typescript@5.8.2)': + '@typescript-eslint/typescript-estree@8.55.0(typescript@5.8.2)': dependencies: - '@typescript-eslint/types': 8.29.0 - '@typescript-eslint/visitor-keys': 8.29.0 + '@typescript-eslint/project-service': 8.55.0(typescript@5.8.2) + '@typescript-eslint/tsconfig-utils': 8.55.0(typescript@5.8.2) + '@typescript-eslint/types': 8.55.0 + '@typescript-eslint/visitor-keys': 8.55.0 debug: 4.4.3 - fast-glob: 3.3.3 - is-glob: 4.0.3 minimatch: 9.0.5 - semver: 7.7.1 - ts-api-utils: 2.1.0(typescript@5.8.2) - typescript: 5.8.2 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/utils@8.27.0(eslint@9.22.0)(typescript@5.8.2)': - dependencies: - '@eslint-community/eslint-utils': 4.5.1(eslint@9.22.0) - '@typescript-eslint/scope-manager': 8.27.0 - '@typescript-eslint/types': 8.27.0 - '@typescript-eslint/typescript-estree': 8.27.0(typescript@5.8.2) - eslint: 9.22.0 + semver: 7.7.4 + tinyglobby: 0.2.15 + ts-api-utils: 2.4.0(typescript@5.8.2) typescript: 5.8.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.29.0(eslint@9.22.0)(typescript@5.8.2)': + '@typescript-eslint/utils@8.55.0(eslint@10.0.0)(typescript@5.8.2)': dependencies: - '@eslint-community/eslint-utils': 4.5.1(eslint@9.22.0) - '@typescript-eslint/scope-manager': 8.29.0 - '@typescript-eslint/types': 8.29.0 - '@typescript-eslint/typescript-estree': 8.29.0(typescript@5.8.2) - eslint: 9.22.0 + '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.0) + '@typescript-eslint/scope-manager': 8.55.0 + '@typescript-eslint/types': 8.55.0 + '@typescript-eslint/typescript-estree': 8.55.0(typescript@5.8.2) + eslint: 10.0.0 typescript: 5.8.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/visitor-keys@8.27.0': - dependencies: - '@typescript-eslint/types': 8.27.0 - eslint-visitor-keys: 4.2.0 - - '@typescript-eslint/visitor-keys@8.29.0': + '@typescript-eslint/visitor-keys@8.55.0': dependencies: - '@typescript-eslint/types': 8.29.0 - eslint-visitor-keys: 4.2.0 + '@typescript-eslint/types': 8.55.0 + eslint-visitor-keys: 4.2.1 abbrev@1.1.1: {} - acorn-jsx@5.3.2(acorn@8.14.1): + acorn-jsx@5.3.2(acorn@8.15.0): dependencies: - acorn: 8.14.1 + acorn: 8.15.0 - acorn@8.14.1: {} + acorn@8.15.0: {} agent-base@6.0.2: dependencies: @@ -7717,7 +7548,7 @@ snapshots: dependencies: environment: 1.1.0 - ansi-escapes@7.2.0: + ansi-escapes@7.3.0: dependencies: environment: 1.1.0 @@ -7808,20 +7639,22 @@ snapshots: array-ify@1.0.0: {} - array-includes@3.1.8: + array-includes@3.1.9: dependencies: call-bind: 1.0.8 + call-bound: 1.0.4 define-properties: 1.2.1 - es-abstract: 1.23.9 + es-abstract: 1.24.1 es-object-atoms: 1.1.1 get-intrinsic: 1.3.0 is-string: 1.1.1 + math-intrinsics: 1.1.0 array.prototype.findlast@1.2.5: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.23.9 + es-abstract: 1.24.1 es-errors: 1.3.0 es-object-atoms: 1.1.1 es-shim-unscopables: 1.1.0 @@ -7830,21 +7663,21 @@ snapshots: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.23.9 + es-abstract: 1.24.1 es-shim-unscopables: 1.1.0 array.prototype.flatmap@1.3.3: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.23.9 + es-abstract: 1.24.1 es-shim-unscopables: 1.1.0 array.prototype.tosorted@1.1.4: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.23.9 + es-abstract: 1.24.1 es-errors: 1.3.0 es-shim-unscopables: 1.1.0 @@ -7853,7 +7686,7 @@ snapshots: array-buffer-byte-length: 1.0.2 call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.23.9 + es-abstract: 1.24.1 es-errors: 1.3.0 get-intrinsic: 1.3.0 is-array-buffer: 3.0.5 @@ -7921,6 +7754,10 @@ snapshots: balanced-match@1.0.2: {} + balanced-match@4.0.2: + dependencies: + jackspeak: 4.2.3 + base64-js@1.5.1: {} before-after-hook@4.0.0: {} @@ -7950,6 +7787,10 @@ snapshots: dependencies: balanced-match: 1.0.2 + brace-expansion@5.0.2: + dependencies: + balanced-match: 4.0.2 + braces@3.0.3: dependencies: fill-range: 7.1.1 @@ -8220,7 +8061,7 @@ snapshots: conventional-commits-filter: 5.0.0 handlebars: 4.7.8 meow: 13.2.0 - semver: 7.7.3 + semver: 7.7.4 conventional-commits-filter@5.0.0: {} @@ -8246,7 +8087,7 @@ snapshots: dependencies: env-paths: 2.2.1 import-fresh: 3.3.1 - js-yaml: 4.1.0 + js-yaml: 4.1.1 parse-json: 5.2.0 optionalDependencies: typescript: 5.8.2 @@ -8400,7 +8241,7 @@ snapshots: dependencies: is-arrayish: 0.2.1 - es-abstract@1.23.9: + es-abstract@1.24.1: dependencies: array-buffer-byte-length: 1.0.2 arraybuffer.prototype.slice: 1.0.4 @@ -8429,7 +8270,9 @@ snapshots: is-array-buffer: 3.0.5 is-callable: 1.2.7 is-data-view: 1.0.2 + is-negative-zero: 2.0.3 is-regex: 1.2.1 + is-set: 2.0.3 is-shared-array-buffer: 1.0.4 is-string: 1.1.1 is-typed-array: 1.1.15 @@ -8444,6 +8287,7 @@ snapshots: safe-push-apply: 1.0.0 safe-regex-test: 1.1.0 set-proto: 1.0.0 + stop-iteration-iterator: 1.1.0 string.prototype.trim: 1.2.10 string.prototype.trimend: 1.0.9 string.prototype.trimstart: 1.0.8 @@ -8452,18 +8296,18 @@ snapshots: typed-array-byte-offset: 1.0.4 typed-array-length: 1.0.7 unbox-primitive: 1.1.0 - which-typed-array: 1.1.19 + which-typed-array: 1.1.20 es-define-property@1.0.1: {} es-errors@1.3.0: {} - es-iterator-helpers@1.2.1: + es-iterator-helpers@1.2.2: dependencies: call-bind: 1.0.8 call-bound: 1.0.4 define-properties: 1.2.1 - es-abstract: 1.23.9 + es-abstract: 1.24.1 es-errors: 1.3.0 es-set-tostringtag: 2.1.0 function-bind: 1.1.2 @@ -8508,28 +8352,28 @@ snapshots: escape-string-regexp@5.0.0: {} - eslint-config-prettier@9.1.0(eslint@9.22.0): + eslint-config-prettier@10.1.8(eslint@10.0.0): dependencies: - eslint: 9.22.0 + eslint: 10.0.0 - eslint-plugin-ft-flow@3.0.11(eslint@9.22.0)(hermes-eslint@0.26.0): + eslint-plugin-ft-flow@3.0.11(eslint@10.0.0)(hermes-eslint@0.26.0): dependencies: - eslint: 9.22.0 + eslint: 10.0.0 hermes-eslint: 0.26.0 - lodash: 4.17.21 + lodash: 4.17.23 string-natural-compare: 3.0.1 eslint-plugin-no-only-tests@3.3.0: {} - eslint-plugin-react@7.37.5(eslint@9.22.0): + eslint-plugin-react@7.37.5(eslint@10.0.0): dependencies: - array-includes: 3.1.8 + array-includes: 3.1.9 array.prototype.findlast: 1.2.5 array.prototype.flatmap: 1.3.3 array.prototype.tosorted: 1.1.4 doctrine: 2.1.0 - es-iterator-helpers: 1.2.1 - eslint: 9.22.0 + es-iterator-helpers: 1.2.2 + eslint: 10.0.0 estraverse: 5.3.0 hasown: 2.0.2 jsx-ast-utils: 3.3.5 @@ -8548,8 +8392,10 @@ snapshots: esrecurse: 4.3.0 estraverse: 4.3.0 - eslint-scope@8.3.0: + eslint-scope@9.1.0: dependencies: + '@types/esrecurse': 4.3.1 + '@types/estree': 1.0.8 esrecurse: 4.3.0 estraverse: 5.3.0 @@ -8557,72 +8403,30 @@ snapshots: eslint-visitor-keys@3.4.3: {} - eslint-visitor-keys@4.2.0: {} + eslint-visitor-keys@4.2.1: {} - eslint@9.22.0: - dependencies: - '@eslint-community/eslint-utils': 4.5.1(eslint@9.22.0) - '@eslint-community/regexpp': 4.12.1 - '@eslint/config-array': 0.19.2 - '@eslint/config-helpers': 0.1.0 - '@eslint/core': 0.12.0 - '@eslint/eslintrc': 3.3.0 - '@eslint/js': 9.22.0 - '@eslint/plugin-kit': 0.2.7 - '@humanfs/node': 0.16.6 - '@humanwhocodes/module-importer': 1.0.1 - '@humanwhocodes/retry': 0.4.2 - '@types/estree': 1.0.6 - '@types/json-schema': 7.0.15 - ajv: 6.12.6 - chalk: 4.1.2 - cross-spawn: 7.0.6 - debug: 4.4.0(supports-color@8.1.1) - escape-string-regexp: 4.0.0 - eslint-scope: 8.3.0 - eslint-visitor-keys: 4.2.0 - espree: 10.3.0 - esquery: 1.6.0 - esutils: 2.0.3 - fast-deep-equal: 3.1.3 - file-entry-cache: 8.0.0 - find-up: 5.0.0 - glob-parent: 6.0.2 - ignore: 5.3.2 - imurmurhash: 0.1.4 - is-glob: 4.0.3 - json-stable-stringify-without-jsonify: 1.0.1 - lodash.merge: 4.6.2 - minimatch: 3.1.2 - natural-compare: 1.4.0 - optionator: 0.9.4 - transitivePeerDependencies: - - supports-color + eslint-visitor-keys@5.0.0: {} - eslint@9.24.0: - dependencies: - '@eslint-community/eslint-utils': 4.5.1(eslint@9.24.0) - '@eslint-community/regexpp': 4.12.1 - '@eslint/config-array': 0.20.0 - '@eslint/config-helpers': 0.2.1 - '@eslint/core': 0.12.0 - '@eslint/eslintrc': 3.3.1 - '@eslint/js': 9.24.0 - '@eslint/plugin-kit': 0.2.7 - '@humanfs/node': 0.16.6 + eslint@10.0.0: + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.0) + '@eslint-community/regexpp': 4.12.2 + '@eslint/config-array': 0.23.1 + '@eslint/config-helpers': 0.5.2 + '@eslint/core': 1.1.0 + '@eslint/plugin-kit': 0.6.0 + '@humanfs/node': 0.16.7 '@humanwhocodes/module-importer': 1.0.1 - '@humanwhocodes/retry': 0.4.2 - '@types/estree': 1.0.6 - '@types/json-schema': 7.0.15 + '@humanwhocodes/retry': 0.4.3 + '@types/estree': 1.0.8 ajv: 6.12.6 - chalk: 4.1.2 cross-spawn: 7.0.6 debug: 4.4.0(supports-color@8.1.1) escape-string-regexp: 4.0.0 - eslint-scope: 8.3.0 - eslint-visitor-keys: 4.2.0 - espree: 10.3.0 - esquery: 1.6.0 + eslint-scope: 9.1.0 + eslint-visitor-keys: 5.0.0 + espree: 11.1.0 + esquery: 1.7.0 esutils: 2.0.3 fast-deep-equal: 3.1.3 file-entry-cache: 8.0.0 @@ -8632,22 +8436,21 @@ snapshots: imurmurhash: 0.1.4 is-glob: 4.0.3 json-stable-stringify-without-jsonify: 1.0.1 - lodash.merge: 4.6.2 - minimatch: 3.1.2 + minimatch: 10.2.0 natural-compare: 1.4.0 optionator: 0.9.4 transitivePeerDependencies: - supports-color - espree@10.3.0: + espree@11.1.0: dependencies: - acorn: 8.14.1 - acorn-jsx: 5.3.2(acorn@8.14.1) - eslint-visitor-keys: 4.2.0 + acorn: 8.15.0 + acorn-jsx: 5.3.2(acorn@8.15.0) + eslint-visitor-keys: 5.0.0 esprima@4.0.1: {} - esquery@1.6.0: + esquery@1.7.0: dependencies: estraverse: 5.3.0 @@ -8716,14 +8519,6 @@ snapshots: fast-deep-equal@3.1.3: {} - fast-glob@3.3.3: - dependencies: - '@nodelib/fs.stat': 2.0.5 - '@nodelib/fs.walk': 1.2.8 - glob-parent: 5.1.2 - merge2: 1.4.1 - micromatch: 4.0.8 - fast-json-stable-stringify@2.1.0: {} fast-levenshtein@2.0.6: {} @@ -8734,10 +8529,6 @@ snapshots: dependencies: strnum: 1.1.2 - fastq@1.19.1: - dependencies: - reusify: 1.1.0 - fdir@6.5.0(picomatch@4.0.3): optionalDependencies: picomatch: 4.0.3 @@ -8850,7 +8641,7 @@ snapshots: jsonfile: 6.1.0 universalify: 2.0.1 - fs-extra@11.3.2: + fs-extra@11.3.3: dependencies: graceful-fs: 4.2.11 jsonfile: 6.2.0 @@ -8893,6 +8684,8 @@ snapshots: strip-ansi: 6.0.1 wide-align: 1.1.5 + generator-function@2.0.1: {} + gensync@1.0.0-beta.2: {} get-caller-file@2.0.5: {} @@ -8990,8 +8783,6 @@ snapshots: globals@11.12.0: {} - globals@14.0.0: {} - globals@16.0.0: {} globalthis@1.0.4: @@ -9005,8 +8796,6 @@ snapshots: graceful-fs@4.2.11: {} - graphemer@1.4.0: {} - handlebars@4.7.8: dependencies: minimist: 1.2.8 @@ -9145,6 +8934,8 @@ snapshots: ignore@5.3.2: {} + ignore@7.0.5: {} + import-fresh@3.3.1: dependencies: parent-module: 1.0.1 @@ -9186,7 +8977,7 @@ snapshots: cli-width: 3.0.0 external-editor: 3.1.0 figures: 3.2.0 - lodash: 4.17.21 + lodash: 4.17.23 mute-stream: 0.0.8 ora: 5.4.1 run-async: 2.4.1 @@ -9274,9 +9065,10 @@ snapshots: dependencies: get-east-asian-width: 1.3.0 - is-generator-function@1.1.0: + is-generator-function@1.1.2: dependencies: call-bound: 1.0.4 + generator-function: 2.0.1 get-proto: 1.0.1 has-tostringtag: 1.0.2 safe-regex-test: 1.1.0 @@ -9291,6 +9083,8 @@ snapshots: is-map@2.0.3: {} + is-negative-zero@2.0.3: {} + is-number-object@1.1.1: dependencies: call-bound: 1.0.4 @@ -9340,7 +9134,7 @@ snapshots: is-typed-array@1.1.15: dependencies: - which-typed-array: 1.1.19 + which-typed-array: 1.1.20 is-typedarray@1.0.0: {} @@ -9423,7 +9217,7 @@ snapshots: istanbul-lib-source-maps@4.0.1: dependencies: - debug: 4.4.0(supports-color@8.1.1) + debug: 4.4.3 istanbul-lib-coverage: 3.2.2 source-map: 0.6.1 transitivePeerDependencies: @@ -9447,6 +9241,10 @@ snapshots: dependencies: '@isaacs/cliui': 8.0.2 + jackspeak@4.2.3: + dependencies: + '@isaacs/cliui': 9.0.0 + java-properties@1.0.2: {} js-tokens@4.0.0: {} @@ -9460,6 +9258,10 @@ snapshots: dependencies: argparse: 2.0.1 + js-yaml@4.1.1: + dependencies: + argparse: 2.0.1 + jsbn@1.1.0: {} jsesc@3.0.2: {} @@ -9496,7 +9298,7 @@ snapshots: jsx-ast-utils@3.3.5: dependencies: - array-includes: 3.1.8 + array-includes: 3.1.9 array.prototype.flat: 1.3.3 object.assign: 4.1.7 object.values: 1.2.1 @@ -9575,7 +9377,7 @@ snapshots: dependencies: p-locate: 6.0.0 - lodash-es@4.17.21: {} + lodash-es@4.17.23: {} lodash.capitalize@4.2.1: {} @@ -9595,8 +9397,6 @@ snapshots: lodash.isstring@4.0.1: {} - lodash.merge@4.6.2: {} - lodash.truncate@4.4.2: {} lodash.union@4.6.0: {} @@ -9605,6 +9405,8 @@ snapshots: lodash@4.17.21: {} + lodash@4.17.23: {} + log-symbols@4.1.0: dependencies: chalk: 4.1.2 @@ -9709,7 +9511,7 @@ snapshots: marked-terminal@7.3.0(marked@12.0.2): dependencies: - ansi-escapes: 7.2.0 + ansi-escapes: 7.3.0 ansi-regex: 6.2.2 chalk: 5.6.2 cli-highlight: 2.1.11 @@ -9726,8 +9528,6 @@ snapshots: merge-stream@2.0.0: {} - merge2@1.4.1: {} - micromatch@4.0.8: dependencies: braces: 3.0.3 @@ -9745,6 +9545,10 @@ snapshots: dependencies: brace-expansion: 2.0.1 + minimatch@10.2.0: + dependencies: + brace-expansion: 5.0.2 + minimatch@3.1.2: dependencies: brace-expansion: 1.1.11 @@ -9868,7 +9672,7 @@ snapshots: nopt: 5.0.0 npmlog: 6.0.2 rimraf: 3.0.2 - semver: 7.7.1 + semver: 7.7.4 tar: 6.2.1 which: 2.0.2 transitivePeerDependencies: @@ -9888,12 +9692,12 @@ snapshots: normalize-package-data@6.0.2: dependencies: hosted-git-info: 7.0.2 - semver: 7.7.3 + semver: 7.7.4 validate-npm-package-license: 3.0.4 normalize-path@3.0.0: {} - normalize-url@8.1.0: {} + normalize-url@8.1.1: {} npm-bundled@1.1.2: dependencies: @@ -9901,7 +9705,7 @@ snapshots: npm-install-checks@4.0.0: dependencies: - semver: 7.7.1 + semver: 7.7.4 npm-normalize-package-bin@1.0.1: {} @@ -9923,7 +9727,7 @@ snapshots: npm-install-checks: 4.0.0 npm-normalize-package-bin: 1.0.1 npm-package-arg: 8.1.5 - semver: 7.7.1 + semver: 7.7.4 npm-registry-fetch@12.0.2: dependencies: @@ -10017,7 +9821,7 @@ snapshots: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.23.9 + es-abstract: 1.24.1 es-object-atoms: 1.1.1 object.values@1.2.1: @@ -10206,7 +10010,7 @@ snapshots: parse-json@8.3.0: dependencies: - '@babel/code-frame': 7.27.1 + '@babel/code-frame': 7.29.0 index-to-position: 1.2.0 type-fest: 4.41.0 @@ -10316,8 +10120,6 @@ snapshots: punycode@2.3.1: {} - queue-microtask@1.2.3: {} - randombytes@2.1.0: dependencies: safe-buffer: 5.2.1 @@ -10380,7 +10182,7 @@ snapshots: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.23.9 + es-abstract: 1.24.1 es-errors: 1.3.0 es-object-atoms: 1.1.1 get-intrinsic: 1.3.0 @@ -10417,9 +10219,9 @@ snapshots: unicode-match-property-ecmascript: 2.0.0 unicode-match-property-value-ecmascript: 2.2.0 - registry-auth-token@5.1.0: + registry-auth-token@5.1.1: dependencies: - '@pnpm/npm-conf': 2.3.1 + '@pnpm/npm-conf': 3.0.2 regjsgen@0.8.0: {} @@ -10469,8 +10271,6 @@ snapshots: retry@0.12.0: {} - reusify@1.1.0: {} - rfdc@1.4.1: {} rimraf@3.0.2: @@ -10479,10 +10279,6 @@ snapshots: run-async@2.4.1: {} - run-parallel@1.2.0: - dependencies: - queue-microtask: 1.2.3 - rxjs@7.8.2: dependencies: tslib: 2.8.1 @@ -10531,7 +10327,7 @@ snapshots: hook-std: 3.0.0 hosted-git-info: 8.1.0 import-from-esm: 2.0.0 - lodash-es: 4.17.21 + lodash-es: 4.17.23 marked: 12.0.2 marked-terminal: 7.3.0(marked@12.0.2) micromatch: 4.0.8 @@ -10539,7 +10335,7 @@ snapshots: p-reduce: 3.0.0 read-package-up: 11.0.0 resolve-from: 5.0.0 - semver: 7.7.3 + semver: 7.7.4 semver-diff: 4.0.0 signale: 1.4.0 yargs: 17.7.2 @@ -10549,7 +10345,7 @@ snapshots: semver-diff@4.0.0: dependencies: - semver: 7.7.3 + semver: 7.7.4 semver-regex@4.0.5: {} @@ -10559,7 +10355,7 @@ snapshots: semver@7.7.1: {} - semver@7.7.3: {} + semver@7.7.4: {} serialize-javascript@6.0.2: dependencies: @@ -10732,6 +10528,11 @@ snapshots: dependencies: minipass: 3.3.6 + stop-iteration-iterator@1.1.0: + dependencies: + es-errors: 1.3.0 + internal-slot: 1.1.0 + stream-browserify@3.0.0: dependencies: inherits: 2.0.4 @@ -10769,7 +10570,7 @@ snapshots: call-bind: 1.0.8 call-bound: 1.0.4 define-properties: 1.2.1 - es-abstract: 1.23.9 + es-abstract: 1.24.1 es-errors: 1.3.0 es-object-atoms: 1.1.1 get-intrinsic: 1.3.0 @@ -10783,7 +10584,7 @@ snapshots: string.prototype.repeat@1.0.0: dependencies: define-properties: 1.2.1 - es-abstract: 1.23.9 + es-abstract: 1.24.1 string.prototype.trim@1.2.10: dependencies: @@ -10791,7 +10592,7 @@ snapshots: call-bound: 1.0.4 define-data-property: 1.1.4 define-properties: 1.2.1 - es-abstract: 1.23.9 + es-abstract: 1.24.1 es-object-atoms: 1.1.1 has-property-descriptors: 1.0.2 @@ -10892,7 +10693,7 @@ snapshots: temp-dir@3.0.0: {} - tempy@3.1.0: + tempy@3.2.0: dependencies: is-stream: 3.0.0 temp-dir: 3.0.0 @@ -10941,7 +10742,7 @@ snapshots: traverse@0.6.8: {} - ts-api-utils@2.1.0(typescript@5.8.2): + ts-api-utils@2.4.0(typescript@5.8.2): dependencies: typescript: 5.8.2 @@ -11000,12 +10801,13 @@ snapshots: dependencies: is-typedarray: 1.0.0 - typescript-eslint@8.29.0(eslint@9.22.0)(typescript@5.8.2): + typescript-eslint@8.55.0(eslint@10.0.0)(typescript@5.8.2): dependencies: - '@typescript-eslint/eslint-plugin': 8.29.0(@typescript-eslint/parser@8.29.0(eslint@9.22.0)(typescript@5.8.2))(eslint@9.22.0)(typescript@5.8.2) - '@typescript-eslint/parser': 8.29.0(eslint@9.22.0)(typescript@5.8.2) - '@typescript-eslint/utils': 8.29.0(eslint@9.22.0)(typescript@5.8.2) - eslint: 9.22.0 + '@typescript-eslint/eslint-plugin': 8.55.0(@typescript-eslint/parser@8.55.0(eslint@10.0.0)(typescript@5.8.2))(eslint@10.0.0)(typescript@5.8.2) + '@typescript-eslint/parser': 8.55.0(eslint@10.0.0)(typescript@5.8.2) + '@typescript-eslint/typescript-estree': 8.55.0(typescript@5.8.2) + '@typescript-eslint/utils': 8.55.0(eslint@10.0.0)(typescript@5.8.2) + eslint: 10.0.0 typescript: 5.8.2 transitivePeerDependencies: - supports-color @@ -11124,13 +10926,13 @@ snapshots: is-async-function: 2.1.1 is-date-object: 1.1.0 is-finalizationregistry: 1.1.1 - is-generator-function: 1.1.0 + is-generator-function: 1.1.2 is-regex: 1.2.1 is-weakref: 1.1.1 isarray: 2.0.5 which-boxed-primitive: 1.1.1 which-collection: 1.0.2 - which-typed-array: 1.1.19 + which-typed-array: 1.1.20 which-collection@1.0.2: dependencies: @@ -11141,7 +10943,7 @@ snapshots: which-module@2.0.1: {} - which-typed-array@1.1.19: + which-typed-array@1.1.20: dependencies: available-typed-arrays: 1.0.7 call-bind: 1.0.8 From 8a441771af04e56be5c964c896c805b602d6995a Mon Sep 17 00:00:00 2001 From: Andy Edwards Date: Fri, 13 Feb 2026 15:37:32 -0600 Subject: [PATCH 2/4] feat: remove eslint-env comments in migrate script --- .../async-throttle/init-snapshot/.babelrc.cjs | 1 - .../async-throttle/init-snapshot/.mocharc.cjs | 1 - .../init-snapshot/_lint-staged.config.cjs | 1 - .../init-snapshot/dist/pnpm-lock.yaml | 8 +- .../async-throttle/init-snapshot/githooks.cjs | 1 - .../init-snapshot/nyc.config.cjs | 1 - .../init-snapshot/pnpm-lock.yaml | 8 +- .../init-snapshot/prettier.config.cjs | 1 - .../init-snapshot/release.config.cjs | 1 - .../init-snapshot/toolchain.config.cjs | 1 - .../upgrade-snapshot/dist/pnpm-lock.yaml | 24 +- .../upgrade-snapshot/pnpm-lock.yaml | 24 +- .../find-cycle/init-snapshot/.mocharc.cjs | 1 - .../init-snapshot/_lint-staged.config.cjs | 1 - .../init-snapshot/dist/pnpm-lock.yaml | 8 +- .../find-cycle/init-snapshot/githooks.cjs | 1 - .../find-cycle/init-snapshot/nyc.config.cjs | 1 - .../find-cycle/init-snapshot/pnpm-lock.yaml | 8 +- .../init-snapshot/prettier.config.cjs | 1 - .../init-snapshot/release.config.cjs | 1 - .../init-snapshot/toolchain.config.cjs | 1 - fixtures/log4jcore/init-snapshot/.babelrc.cjs | 1 - fixtures/log4jcore/init-snapshot/.mocharc.cjs | 1 - .../init-snapshot/_lint-staged.config.cjs | 1 - .../init-snapshot/dist/pnpm-lock.yaml | 8 +- fixtures/log4jcore/init-snapshot/githooks.cjs | 1 - .../log4jcore/init-snapshot/nyc.config.cjs | 1 - .../log4jcore/init-snapshot/pnpm-lock.yaml | 8 +- .../init-snapshot/prettier.config.cjs | 1 - .../init-snapshot/release.config.cjs | 1 - .../init-snapshot/toolchain.config.cjs | 1 - .../prepublish-snapshot/pnpm-lock.yaml | 42 +-- .../init-snapshot/.babelrc.cjs | 1 - .../init-snapshot/.mocharc.cjs | 1 - .../init-snapshot/_lint-staged.config.cjs | 1 - .../init-snapshot/dist/pnpm-lock.yaml | 8 +- .../init-snapshot/githooks.cjs | 1 - .../init-snapshot/nyc.config.cjs | 1 - .../init-snapshot/pnpm-lock.yaml | 8 +- .../init-snapshot/prettier.config.cjs | 1 - .../init-snapshot/release.config.cjs | 1 - .../init-snapshot/toolchain.config.cjs | 1 - .../init-snapshot/.babelrc.cjs | 1 - .../init-snapshot/.mocharc.cjs | 1 - .../init-snapshot/_lint-staged.config.cjs | 1 - .../init-snapshot/dist/pnpm-lock.yaml | 8 +- .../init-snapshot/githooks.cjs | 1 - .../init-snapshot/nyc.config.cjs | 1 - .../init-snapshot/pnpm-lock.yaml | 8 +- .../init-snapshot/prettier.config.cjs | 1 - .../init-snapshot/release.config.cjs | 1 - .../init-snapshot/toolchain.config.cjs | 1 - package.json | 2 +- packages/base/package.json | 10 +- packages/base/plugins/getEslintConfigs.cjs | 5 +- .../migrate/migrateEslintEnvComments.cjs | 6 +- packages/base/util/findUps.cjs | 3 +- packages/base/util/getBabelParseOpts.cjs | 4 +- packages/esnext/package.json | 4 +- packages/flow/package.json | 2 +- packages/mocha/package.json | 2 +- packages/react/package.json | 4 +- packages/typescript/package.json | 8 +- pnpm-lock.yaml | 337 ++++++++---------- 64 files changed, 269 insertions(+), 327 deletions(-) diff --git a/fixtures/async-throttle/init-snapshot/.babelrc.cjs b/fixtures/async-throttle/init-snapshot/.babelrc.cjs index 66e7a150..42810633 100644 --- a/fixtures/async-throttle/init-snapshot/.babelrc.cjs +++ b/fixtures/async-throttle/init-snapshot/.babelrc.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ module.exports = function (api) { const base = require('@jcoreio/toolchain-esnext/.babelrc.cjs')(api) return { diff --git a/fixtures/async-throttle/init-snapshot/.mocharc.cjs b/fixtures/async-throttle/init-snapshot/.mocharc.cjs index d7b6005c..5fe0dbf2 100644 --- a/fixtures/async-throttle/init-snapshot/.mocharc.cjs +++ b/fixtures/async-throttle/init-snapshot/.mocharc.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain-mocha/.mocharc.cjs') const { getSpecs } = require('@jcoreio/toolchain-mocha') module.exports = { diff --git a/fixtures/async-throttle/init-snapshot/_lint-staged.config.cjs b/fixtures/async-throttle/init-snapshot/_lint-staged.config.cjs index 9656053b..b5631560 100644 --- a/fixtures/async-throttle/init-snapshot/_lint-staged.config.cjs +++ b/fixtures/async-throttle/init-snapshot/_lint-staged.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain/lint-staged.config.cjs') module.exports = { ...base, diff --git a/fixtures/async-throttle/init-snapshot/dist/pnpm-lock.yaml b/fixtures/async-throttle/init-snapshot/dist/pnpm-lock.yaml index b5e92db3..1593b531 100644 --- a/fixtures/async-throttle/init-snapshot/dist/pnpm-lock.yaml +++ b/fixtures/async-throttle/init-snapshot/dist/pnpm-lock.yaml @@ -345,8 +345,8 @@ packages: resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} engines: {node: '>=10'} - caniuse-lite@1.0.30001767: - resolution: {integrity: sha512-34+zUAMhSH+r+9eKmYG+k2Rpt8XttfE4yXAjoZvkAPs15xcYQhyBYdalJ65BzivAvGRMViEjy6oKr/S91loekQ==} + caniuse-lite@1.0.30001769: + resolution: {integrity: sha512-BCfFL1sHijQlBGWBMuJyhZUhzo7wer5sVj9hqekB/7xn0Ypy+pER/edCYQm4exbXj4WiySGp40P8UuTh6w1srg==} chai@4.5.0: resolution: {integrity: sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==} @@ -1565,7 +1565,7 @@ snapshots: browserslist@4.28.1: dependencies: baseline-browser-mapping: 2.9.19 - caniuse-lite: 1.0.30001767 + caniuse-lite: 1.0.30001769 electron-to-chromium: 1.5.286 node-releases: 2.0.27 update-browserslist-db: 1.2.3(browserslist@4.28.1) @@ -1583,7 +1583,7 @@ snapshots: camelcase@6.3.0: {} - caniuse-lite@1.0.30001767: {} + caniuse-lite@1.0.30001769: {} chai@4.5.0: dependencies: diff --git a/fixtures/async-throttle/init-snapshot/githooks.cjs b/fixtures/async-throttle/init-snapshot/githooks.cjs index 6ba6e951..da4257df 100644 --- a/fixtures/async-throttle/init-snapshot/githooks.cjs +++ b/fixtures/async-throttle/init-snapshot/githooks.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain/githooks.cjs') module.exports = { ...base, diff --git a/fixtures/async-throttle/init-snapshot/nyc.config.cjs b/fixtures/async-throttle/init-snapshot/nyc.config.cjs index 5990d283..626cf481 100644 --- a/fixtures/async-throttle/init-snapshot/nyc.config.cjs +++ b/fixtures/async-throttle/init-snapshot/nyc.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain-mocha/nyc.config.cjs') module.exports = { ...base, diff --git a/fixtures/async-throttle/init-snapshot/pnpm-lock.yaml b/fixtures/async-throttle/init-snapshot/pnpm-lock.yaml index b5e92db3..1593b531 100644 --- a/fixtures/async-throttle/init-snapshot/pnpm-lock.yaml +++ b/fixtures/async-throttle/init-snapshot/pnpm-lock.yaml @@ -345,8 +345,8 @@ packages: resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} engines: {node: '>=10'} - caniuse-lite@1.0.30001767: - resolution: {integrity: sha512-34+zUAMhSH+r+9eKmYG+k2Rpt8XttfE4yXAjoZvkAPs15xcYQhyBYdalJ65BzivAvGRMViEjy6oKr/S91loekQ==} + caniuse-lite@1.0.30001769: + resolution: {integrity: sha512-BCfFL1sHijQlBGWBMuJyhZUhzo7wer5sVj9hqekB/7xn0Ypy+pER/edCYQm4exbXj4WiySGp40P8UuTh6w1srg==} chai@4.5.0: resolution: {integrity: sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==} @@ -1565,7 +1565,7 @@ snapshots: browserslist@4.28.1: dependencies: baseline-browser-mapping: 2.9.19 - caniuse-lite: 1.0.30001767 + caniuse-lite: 1.0.30001769 electron-to-chromium: 1.5.286 node-releases: 2.0.27 update-browserslist-db: 1.2.3(browserslist@4.28.1) @@ -1583,7 +1583,7 @@ snapshots: camelcase@6.3.0: {} - caniuse-lite@1.0.30001767: {} + caniuse-lite@1.0.30001769: {} chai@4.5.0: dependencies: diff --git a/fixtures/async-throttle/init-snapshot/prettier.config.cjs b/fixtures/async-throttle/init-snapshot/prettier.config.cjs index 157ba11a..a9d5b227 100644 --- a/fixtures/async-throttle/init-snapshot/prettier.config.cjs +++ b/fixtures/async-throttle/init-snapshot/prettier.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain/prettierConfig.cjs') module.exports = { ...base, diff --git a/fixtures/async-throttle/init-snapshot/release.config.cjs b/fixtures/async-throttle/init-snapshot/release.config.cjs index e0e62533..1b44bd99 100644 --- a/fixtures/async-throttle/init-snapshot/release.config.cjs +++ b/fixtures/async-throttle/init-snapshot/release.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ module.exports = { extends: [ require.resolve('@jcoreio/toolchain-semantic-release/release.config.cjs'), diff --git a/fixtures/async-throttle/init-snapshot/toolchain.config.cjs b/fixtures/async-throttle/init-snapshot/toolchain.config.cjs index 74b3074b..53218409 100644 --- a/fixtures/async-throttle/init-snapshot/toolchain.config.cjs +++ b/fixtures/async-throttle/init-snapshot/toolchain.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ module.exports = { cjsBabelEnv: { targets: { node: 16 } }, esmBabelEnv: { targets: { node: 16 } }, diff --git a/fixtures/async-throttle/upgrade-snapshot/dist/pnpm-lock.yaml b/fixtures/async-throttle/upgrade-snapshot/dist/pnpm-lock.yaml index 26f94fff..9551842f 100644 --- a/fixtures/async-throttle/upgrade-snapshot/dist/pnpm-lock.yaml +++ b/fixtures/async-throttle/upgrade-snapshot/dist/pnpm-lock.yaml @@ -399,8 +399,8 @@ packages: resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} engines: {node: '>=10'} - caniuse-lite@1.0.30001767: - resolution: {integrity: sha512-34+zUAMhSH+r+9eKmYG+k2Rpt8XttfE4yXAjoZvkAPs15xcYQhyBYdalJ65BzivAvGRMViEjy6oKr/S91loekQ==} + caniuse-lite@1.0.30001769: + resolution: {integrity: sha512-BCfFL1sHijQlBGWBMuJyhZUhzo7wer5sVj9hqekB/7xn0Ypy+pER/edCYQm4exbXj4WiySGp40P8UuTh6w1srg==} chai-as-promised@7.1.2: resolution: {integrity: sha512-aBDHZxRzYnUYuIAIPBH2s511DjlKPzXNlXSGFC8CwmroWQLfrW0LtE1nK3MAwwNhJPa9raEjNCmRoFpG0Hurdw==} @@ -558,8 +558,8 @@ packages: resolution: {integrity: sha512-xUtoPkMggbz0MPyPiIWr1Kp4aeWJjDZ6SMvURhimjdZgsRuDplF5/s9hcgGhyXMhs+6vpnuoiZ2kFiu3FMnS8Q==} engines: {node: '>=18'} - es-abstract@1.24.0: - resolution: {integrity: sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg==} + es-abstract@1.24.1: + resolution: {integrity: sha512-zHXBLhP+QehSSbsS9Pt23Gg964240DPd6QCf8WpkqEXxQ7fhdZzYsocOr5u7apWonsS5EjZDmTF+/slGMyasvw==} engines: {node: '>= 0.4'} es-array-method-boxes-properly@1.0.0: @@ -2046,7 +2046,7 @@ snapshots: call-bind: 1.0.8 call-bound: 1.0.4 define-properties: 1.2.1 - es-abstract: 1.24.0 + es-abstract: 1.24.1 es-array-method-boxes-properly: 1.0.0 es-errors: 1.3.0 es-object-atoms: 1.1.1 @@ -2057,7 +2057,7 @@ snapshots: array-buffer-byte-length: 1.0.2 call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.24.0 + es-abstract: 1.24.1 es-errors: 1.3.0 get-intrinsic: 1.3.0 is-array-buffer: 3.0.5 @@ -2094,7 +2094,7 @@ snapshots: browserslist@4.28.1: dependencies: baseline-browser-mapping: 2.9.19 - caniuse-lite: 1.0.30001767 + caniuse-lite: 1.0.30001769 electron-to-chromium: 1.5.286 node-releases: 2.0.27 update-browserslist-db: 1.2.3(browserslist@4.28.1) @@ -2131,7 +2131,7 @@ snapshots: camelcase@6.3.0: {} - caniuse-lite@1.0.30001767: {} + caniuse-lite@1.0.30001769: {} chai-as-promised@7.1.2(chai@4.5.0): dependencies: @@ -2296,7 +2296,7 @@ snapshots: environment@1.1.0: {} - es-abstract@1.24.0: + es-abstract@1.24.1: dependencies: array-buffer-byte-length: 1.0.2 arraybuffer.prototype.slice: 1.0.4 @@ -3104,7 +3104,7 @@ snapshots: array.prototype.reduce: 1.0.8 call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.24.0 + es-abstract: 1.24.1 es-object-atoms: 1.1.1 gopd: 1.2.0 safe-array-concat: 1.1.3 @@ -3233,7 +3233,7 @@ snapshots: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.24.0 + es-abstract: 1.24.1 es-errors: 1.3.0 es-object-atoms: 1.1.1 get-intrinsic: 1.3.0 @@ -3433,7 +3433,7 @@ snapshots: call-bound: 1.0.4 define-data-property: 1.1.4 define-properties: 1.2.1 - es-abstract: 1.24.0 + es-abstract: 1.24.1 es-object-atoms: 1.1.1 has-property-descriptors: 1.0.2 diff --git a/fixtures/async-throttle/upgrade-snapshot/pnpm-lock.yaml b/fixtures/async-throttle/upgrade-snapshot/pnpm-lock.yaml index 26f94fff..9551842f 100644 --- a/fixtures/async-throttle/upgrade-snapshot/pnpm-lock.yaml +++ b/fixtures/async-throttle/upgrade-snapshot/pnpm-lock.yaml @@ -399,8 +399,8 @@ packages: resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} engines: {node: '>=10'} - caniuse-lite@1.0.30001767: - resolution: {integrity: sha512-34+zUAMhSH+r+9eKmYG+k2Rpt8XttfE4yXAjoZvkAPs15xcYQhyBYdalJ65BzivAvGRMViEjy6oKr/S91loekQ==} + caniuse-lite@1.0.30001769: + resolution: {integrity: sha512-BCfFL1sHijQlBGWBMuJyhZUhzo7wer5sVj9hqekB/7xn0Ypy+pER/edCYQm4exbXj4WiySGp40P8UuTh6w1srg==} chai-as-promised@7.1.2: resolution: {integrity: sha512-aBDHZxRzYnUYuIAIPBH2s511DjlKPzXNlXSGFC8CwmroWQLfrW0LtE1nK3MAwwNhJPa9raEjNCmRoFpG0Hurdw==} @@ -558,8 +558,8 @@ packages: resolution: {integrity: sha512-xUtoPkMggbz0MPyPiIWr1Kp4aeWJjDZ6SMvURhimjdZgsRuDplF5/s9hcgGhyXMhs+6vpnuoiZ2kFiu3FMnS8Q==} engines: {node: '>=18'} - es-abstract@1.24.0: - resolution: {integrity: sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg==} + es-abstract@1.24.1: + resolution: {integrity: sha512-zHXBLhP+QehSSbsS9Pt23Gg964240DPd6QCf8WpkqEXxQ7fhdZzYsocOr5u7apWonsS5EjZDmTF+/slGMyasvw==} engines: {node: '>= 0.4'} es-array-method-boxes-properly@1.0.0: @@ -2046,7 +2046,7 @@ snapshots: call-bind: 1.0.8 call-bound: 1.0.4 define-properties: 1.2.1 - es-abstract: 1.24.0 + es-abstract: 1.24.1 es-array-method-boxes-properly: 1.0.0 es-errors: 1.3.0 es-object-atoms: 1.1.1 @@ -2057,7 +2057,7 @@ snapshots: array-buffer-byte-length: 1.0.2 call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.24.0 + es-abstract: 1.24.1 es-errors: 1.3.0 get-intrinsic: 1.3.0 is-array-buffer: 3.0.5 @@ -2094,7 +2094,7 @@ snapshots: browserslist@4.28.1: dependencies: baseline-browser-mapping: 2.9.19 - caniuse-lite: 1.0.30001767 + caniuse-lite: 1.0.30001769 electron-to-chromium: 1.5.286 node-releases: 2.0.27 update-browserslist-db: 1.2.3(browserslist@4.28.1) @@ -2131,7 +2131,7 @@ snapshots: camelcase@6.3.0: {} - caniuse-lite@1.0.30001767: {} + caniuse-lite@1.0.30001769: {} chai-as-promised@7.1.2(chai@4.5.0): dependencies: @@ -2296,7 +2296,7 @@ snapshots: environment@1.1.0: {} - es-abstract@1.24.0: + es-abstract@1.24.1: dependencies: array-buffer-byte-length: 1.0.2 arraybuffer.prototype.slice: 1.0.4 @@ -3104,7 +3104,7 @@ snapshots: array.prototype.reduce: 1.0.8 call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.24.0 + es-abstract: 1.24.1 es-object-atoms: 1.1.1 gopd: 1.2.0 safe-array-concat: 1.1.3 @@ -3233,7 +3233,7 @@ snapshots: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.24.0 + es-abstract: 1.24.1 es-errors: 1.3.0 es-object-atoms: 1.1.1 get-intrinsic: 1.3.0 @@ -3433,7 +3433,7 @@ snapshots: call-bound: 1.0.4 define-data-property: 1.1.4 define-properties: 1.2.1 - es-abstract: 1.24.0 + es-abstract: 1.24.1 es-object-atoms: 1.1.1 has-property-descriptors: 1.0.2 diff --git a/fixtures/find-cycle/init-snapshot/.mocharc.cjs b/fixtures/find-cycle/init-snapshot/.mocharc.cjs index d7b6005c..5fe0dbf2 100644 --- a/fixtures/find-cycle/init-snapshot/.mocharc.cjs +++ b/fixtures/find-cycle/init-snapshot/.mocharc.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain-mocha/.mocharc.cjs') const { getSpecs } = require('@jcoreio/toolchain-mocha') module.exports = { diff --git a/fixtures/find-cycle/init-snapshot/_lint-staged.config.cjs b/fixtures/find-cycle/init-snapshot/_lint-staged.config.cjs index 9656053b..b5631560 100644 --- a/fixtures/find-cycle/init-snapshot/_lint-staged.config.cjs +++ b/fixtures/find-cycle/init-snapshot/_lint-staged.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain/lint-staged.config.cjs') module.exports = { ...base, diff --git a/fixtures/find-cycle/init-snapshot/dist/pnpm-lock.yaml b/fixtures/find-cycle/init-snapshot/dist/pnpm-lock.yaml index a57f42e3..06a19f45 100644 --- a/fixtures/find-cycle/init-snapshot/dist/pnpm-lock.yaml +++ b/fixtures/find-cycle/init-snapshot/dist/pnpm-lock.yaml @@ -304,8 +304,8 @@ packages: resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} engines: {node: '>=10'} - caniuse-lite@1.0.30001767: - resolution: {integrity: sha512-34+zUAMhSH+r+9eKmYG+k2Rpt8XttfE4yXAjoZvkAPs15xcYQhyBYdalJ65BzivAvGRMViEjy6oKr/S91loekQ==} + caniuse-lite@1.0.30001769: + resolution: {integrity: sha512-BCfFL1sHijQlBGWBMuJyhZUhzo7wer5sVj9hqekB/7xn0Ypy+pER/edCYQm4exbXj4WiySGp40P8UuTh6w1srg==} chai@4.5.0: resolution: {integrity: sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==} @@ -1464,7 +1464,7 @@ snapshots: browserslist@4.28.1: dependencies: baseline-browser-mapping: 2.9.19 - caniuse-lite: 1.0.30001767 + caniuse-lite: 1.0.30001769 electron-to-chromium: 1.5.286 node-releases: 2.0.27 update-browserslist-db: 1.2.3(browserslist@4.28.1) @@ -1482,7 +1482,7 @@ snapshots: camelcase@6.3.0: {} - caniuse-lite@1.0.30001767: {} + caniuse-lite@1.0.30001769: {} chai@4.5.0: dependencies: diff --git a/fixtures/find-cycle/init-snapshot/githooks.cjs b/fixtures/find-cycle/init-snapshot/githooks.cjs index 6ba6e951..da4257df 100644 --- a/fixtures/find-cycle/init-snapshot/githooks.cjs +++ b/fixtures/find-cycle/init-snapshot/githooks.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain/githooks.cjs') module.exports = { ...base, diff --git a/fixtures/find-cycle/init-snapshot/nyc.config.cjs b/fixtures/find-cycle/init-snapshot/nyc.config.cjs index 5990d283..626cf481 100644 --- a/fixtures/find-cycle/init-snapshot/nyc.config.cjs +++ b/fixtures/find-cycle/init-snapshot/nyc.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain-mocha/nyc.config.cjs') module.exports = { ...base, diff --git a/fixtures/find-cycle/init-snapshot/pnpm-lock.yaml b/fixtures/find-cycle/init-snapshot/pnpm-lock.yaml index a57f42e3..06a19f45 100644 --- a/fixtures/find-cycle/init-snapshot/pnpm-lock.yaml +++ b/fixtures/find-cycle/init-snapshot/pnpm-lock.yaml @@ -304,8 +304,8 @@ packages: resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} engines: {node: '>=10'} - caniuse-lite@1.0.30001767: - resolution: {integrity: sha512-34+zUAMhSH+r+9eKmYG+k2Rpt8XttfE4yXAjoZvkAPs15xcYQhyBYdalJ65BzivAvGRMViEjy6oKr/S91loekQ==} + caniuse-lite@1.0.30001769: + resolution: {integrity: sha512-BCfFL1sHijQlBGWBMuJyhZUhzo7wer5sVj9hqekB/7xn0Ypy+pER/edCYQm4exbXj4WiySGp40P8UuTh6w1srg==} chai@4.5.0: resolution: {integrity: sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==} @@ -1464,7 +1464,7 @@ snapshots: browserslist@4.28.1: dependencies: baseline-browser-mapping: 2.9.19 - caniuse-lite: 1.0.30001767 + caniuse-lite: 1.0.30001769 electron-to-chromium: 1.5.286 node-releases: 2.0.27 update-browserslist-db: 1.2.3(browserslist@4.28.1) @@ -1482,7 +1482,7 @@ snapshots: camelcase@6.3.0: {} - caniuse-lite@1.0.30001767: {} + caniuse-lite@1.0.30001769: {} chai@4.5.0: dependencies: diff --git a/fixtures/find-cycle/init-snapshot/prettier.config.cjs b/fixtures/find-cycle/init-snapshot/prettier.config.cjs index 157ba11a..a9d5b227 100644 --- a/fixtures/find-cycle/init-snapshot/prettier.config.cjs +++ b/fixtures/find-cycle/init-snapshot/prettier.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain/prettierConfig.cjs') module.exports = { ...base, diff --git a/fixtures/find-cycle/init-snapshot/release.config.cjs b/fixtures/find-cycle/init-snapshot/release.config.cjs index e0e62533..1b44bd99 100644 --- a/fixtures/find-cycle/init-snapshot/release.config.cjs +++ b/fixtures/find-cycle/init-snapshot/release.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ module.exports = { extends: [ require.resolve('@jcoreio/toolchain-semantic-release/release.config.cjs'), diff --git a/fixtures/find-cycle/init-snapshot/toolchain.config.cjs b/fixtures/find-cycle/init-snapshot/toolchain.config.cjs index 59834ab6..ae02c337 100644 --- a/fixtures/find-cycle/init-snapshot/toolchain.config.cjs +++ b/fixtures/find-cycle/init-snapshot/toolchain.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ module.exports = { buildIgnore: [], // scripts: { diff --git a/fixtures/log4jcore/init-snapshot/.babelrc.cjs b/fixtures/log4jcore/init-snapshot/.babelrc.cjs index 66e7a150..42810633 100644 --- a/fixtures/log4jcore/init-snapshot/.babelrc.cjs +++ b/fixtures/log4jcore/init-snapshot/.babelrc.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ module.exports = function (api) { const base = require('@jcoreio/toolchain-esnext/.babelrc.cjs')(api) return { diff --git a/fixtures/log4jcore/init-snapshot/.mocharc.cjs b/fixtures/log4jcore/init-snapshot/.mocharc.cjs index b9ad1262..3a539687 100644 --- a/fixtures/log4jcore/init-snapshot/.mocharc.cjs +++ b/fixtures/log4jcore/init-snapshot/.mocharc.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain-mocha/.mocharc.cjs') const { getSpecs } = require('@jcoreio/toolchain-mocha') module.exports = { diff --git a/fixtures/log4jcore/init-snapshot/_lint-staged.config.cjs b/fixtures/log4jcore/init-snapshot/_lint-staged.config.cjs index 9656053b..b5631560 100644 --- a/fixtures/log4jcore/init-snapshot/_lint-staged.config.cjs +++ b/fixtures/log4jcore/init-snapshot/_lint-staged.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain/lint-staged.config.cjs') module.exports = { ...base, diff --git a/fixtures/log4jcore/init-snapshot/dist/pnpm-lock.yaml b/fixtures/log4jcore/init-snapshot/dist/pnpm-lock.yaml index de20a6ba..276e5f01 100644 --- a/fixtures/log4jcore/init-snapshot/dist/pnpm-lock.yaml +++ b/fixtures/log4jcore/init-snapshot/dist/pnpm-lock.yaml @@ -470,8 +470,8 @@ packages: resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} engines: {node: '>=10'} - caniuse-lite@1.0.30001767: - resolution: {integrity: sha512-34+zUAMhSH+r+9eKmYG+k2Rpt8XttfE4yXAjoZvkAPs15xcYQhyBYdalJ65BzivAvGRMViEjy6oKr/S91loekQ==} + caniuse-lite@1.0.30001769: + resolution: {integrity: sha512-BCfFL1sHijQlBGWBMuJyhZUhzo7wer5sVj9hqekB/7xn0Ypy+pER/edCYQm4exbXj4WiySGp40P8UuTh6w1srg==} chai@4.5.0: resolution: {integrity: sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==} @@ -1944,7 +1944,7 @@ snapshots: browserslist@4.28.1: dependencies: baseline-browser-mapping: 2.9.19 - caniuse-lite: 1.0.30001767 + caniuse-lite: 1.0.30001769 electron-to-chromium: 1.5.286 node-releases: 2.0.27 update-browserslist-db: 1.2.3(browserslist@4.28.1) @@ -1964,7 +1964,7 @@ snapshots: camelcase@6.3.0: {} - caniuse-lite@1.0.30001767: {} + caniuse-lite@1.0.30001769: {} chai@4.5.0: dependencies: diff --git a/fixtures/log4jcore/init-snapshot/githooks.cjs b/fixtures/log4jcore/init-snapshot/githooks.cjs index 6ba6e951..da4257df 100644 --- a/fixtures/log4jcore/init-snapshot/githooks.cjs +++ b/fixtures/log4jcore/init-snapshot/githooks.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain/githooks.cjs') module.exports = { ...base, diff --git a/fixtures/log4jcore/init-snapshot/nyc.config.cjs b/fixtures/log4jcore/init-snapshot/nyc.config.cjs index 5990d283..626cf481 100644 --- a/fixtures/log4jcore/init-snapshot/nyc.config.cjs +++ b/fixtures/log4jcore/init-snapshot/nyc.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain-mocha/nyc.config.cjs') module.exports = { ...base, diff --git a/fixtures/log4jcore/init-snapshot/pnpm-lock.yaml b/fixtures/log4jcore/init-snapshot/pnpm-lock.yaml index de20a6ba..276e5f01 100644 --- a/fixtures/log4jcore/init-snapshot/pnpm-lock.yaml +++ b/fixtures/log4jcore/init-snapshot/pnpm-lock.yaml @@ -470,8 +470,8 @@ packages: resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} engines: {node: '>=10'} - caniuse-lite@1.0.30001767: - resolution: {integrity: sha512-34+zUAMhSH+r+9eKmYG+k2Rpt8XttfE4yXAjoZvkAPs15xcYQhyBYdalJ65BzivAvGRMViEjy6oKr/S91loekQ==} + caniuse-lite@1.0.30001769: + resolution: {integrity: sha512-BCfFL1sHijQlBGWBMuJyhZUhzo7wer5sVj9hqekB/7xn0Ypy+pER/edCYQm4exbXj4WiySGp40P8UuTh6w1srg==} chai@4.5.0: resolution: {integrity: sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==} @@ -1944,7 +1944,7 @@ snapshots: browserslist@4.28.1: dependencies: baseline-browser-mapping: 2.9.19 - caniuse-lite: 1.0.30001767 + caniuse-lite: 1.0.30001769 electron-to-chromium: 1.5.286 node-releases: 2.0.27 update-browserslist-db: 1.2.3(browserslist@4.28.1) @@ -1964,7 +1964,7 @@ snapshots: camelcase@6.3.0: {} - caniuse-lite@1.0.30001767: {} + caniuse-lite@1.0.30001769: {} chai@4.5.0: dependencies: diff --git a/fixtures/log4jcore/init-snapshot/prettier.config.cjs b/fixtures/log4jcore/init-snapshot/prettier.config.cjs index 157ba11a..a9d5b227 100644 --- a/fixtures/log4jcore/init-snapshot/prettier.config.cjs +++ b/fixtures/log4jcore/init-snapshot/prettier.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain/prettierConfig.cjs') module.exports = { ...base, diff --git a/fixtures/log4jcore/init-snapshot/release.config.cjs b/fixtures/log4jcore/init-snapshot/release.config.cjs index e0e62533..1b44bd99 100644 --- a/fixtures/log4jcore/init-snapshot/release.config.cjs +++ b/fixtures/log4jcore/init-snapshot/release.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ module.exports = { extends: [ require.resolve('@jcoreio/toolchain-semantic-release/release.config.cjs'), diff --git a/fixtures/log4jcore/init-snapshot/toolchain.config.cjs b/fixtures/log4jcore/init-snapshot/toolchain.config.cjs index 1aba1453..eb88a0c9 100644 --- a/fixtures/log4jcore/init-snapshot/toolchain.config.cjs +++ b/fixtures/log4jcore/init-snapshot/toolchain.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ module.exports = { cjsBabelEnv: { targets: { node: 16 } }, esmBabelEnv: { targets: { node: 16 } }, diff --git a/fixtures/monorepo/prepublish-snapshot/pnpm-lock.yaml b/fixtures/monorepo/prepublish-snapshot/pnpm-lock.yaml index 0f662238..430d9cb1 100644 --- a/fixtures/monorepo/prepublish-snapshot/pnpm-lock.yaml +++ b/fixtures/monorepo/prepublish-snapshot/pnpm-lock.yaml @@ -1358,18 +1358,6 @@ packages: deprecated: Use @eslint/object-schema instead dev: true - /@isaacs/balanced-match@4.0.1: - resolution: {integrity: sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==} - engines: {node: 20 || >=22} - dev: true - - /@isaacs/brace-expansion@5.0.1: - resolution: {integrity: sha512-WMz71T1JS624nWj2n2fnYAuPovhv7EUhk69R6i9dsVyzxt5eM3bjwvgk9L+APE1TRscGysAVMANkB0jh0LQZrQ==} - engines: {node: 20 || >=22} - dependencies: - '@isaacs/balanced-match': 4.0.1 - dev: true - /@isaacs/cliui@9.0.0: resolution: {integrity: sha512-AokJm4tuBHillT+FpMtxQ60n8ObyXBatq7jD2/JA9dxbDDokKQm8KMht5ibGzLVU9IJDIKK4TPKgMHEYMn3lMg==} engines: {node: '>=18'} @@ -1498,7 +1486,7 @@ packages: glob: 11.1.0 json5: 2.2.3 lint-staged: 15.5.2 - minimatch: 10.1.2 + minimatch: 10.2.0 open: 8.4.2 prettier: 2.8.8 prompts: 2.4.2 @@ -1934,6 +1922,13 @@ packages: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} dev: true + /balanced-match@4.0.2: + resolution: {integrity: sha512-x0K50QvKQ97fdEz2kPehIerj+YTeptKF9hyYkKf6egnwmMWAkADiO0QCzSp0R5xN8FTZgYaBfSaue46Ej62nMg==} + engines: {node: 20 || >=22} + dependencies: + jackspeak: 4.2.3 + dev: true + /baseline-browser-mapping@2.9.19: resolution: {integrity: sha512-ipDqC8FrAl/76p2SSWKSI+H9tFwm7vYqXQrItCuiVPt26Km0jS+NzSsBWAaBusvSbQcfJG+JitdMm+wZAgTYqg==} hasBin: true @@ -1957,6 +1952,13 @@ packages: balanced-match: 1.0.2 dev: true + /brace-expansion@5.0.2: + resolution: {integrity: sha512-Pdk8c9poy+YhOgVWw1JNN22/HcivgKWwpxKq04M/jTmHyCZn12WPJebZxdjSa5TmBqISrUSgNYU3eRORljfCCw==} + engines: {node: 20 || >=22} + dependencies: + balanced-match: 4.0.2 + dev: true + /braces@3.0.3: resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} engines: {node: '>=8'} @@ -2638,7 +2640,7 @@ packages: dependencies: foreground-child: 3.3.1 jackspeak: 4.2.3 - minimatch: 10.1.2 + minimatch: 10.2.0 minipass: 7.1.2 package-json-from-dist: 1.0.1 path-scurry: 2.0.1 @@ -3134,8 +3136,8 @@ packages: get-func-name: 2.0.2 dev: true - /lru-cache@11.2.5: - resolution: {integrity: sha512-vFrFJkWtJvJnD5hg+hJvVE8Lh/TcMzKnTgCWmtBipwI5yLX/iX+5UB2tfuyODF5E7k9xEzMdYgGqaSb1c0c5Yw==} + /lru-cache@11.2.6: + resolution: {integrity: sha512-ESL2CrkS/2wTPfuend7Zhkzo2u0daGJ/A2VucJOgQ/C48S/zB8MMeMHSGKYpXhIjbPxfuezITkaBH1wqv00DDQ==} engines: {node: 20 || >=22} dev: true @@ -3199,11 +3201,11 @@ packages: engines: {node: '>=18'} dev: true - /minimatch@10.1.2: - resolution: {integrity: sha512-fu656aJ0n2kcXwsnwnv9g24tkU5uSmOlTjd6WyyaKm2Z+h1qmY6bAjrcaIxF/BslFqbZ8UBtbJi7KgQOZD2PTw==} + /minimatch@10.2.0: + resolution: {integrity: sha512-ugkC31VaVg9cF0DFVoADH12k6061zNZkZON+aX8AWsR9GhPcErkcMBceb6znR8wLERM2AkkOxy2nWRLpT9Jq5w==} engines: {node: 20 || >=22} dependencies: - '@isaacs/brace-expansion': 5.0.1 + brace-expansion: 5.0.2 dev: true /minimatch@3.1.2: @@ -3481,7 +3483,7 @@ packages: resolution: {integrity: sha512-oWyT4gICAu+kaA7QWk/jvCHWarMKNs6pXOGWKDTr7cw4IGcUbW+PeTfbaQiLGheFRpjo6O9J0PmyMfQPjH71oA==} engines: {node: 20 || >=22} dependencies: - lru-cache: 11.2.5 + lru-cache: 11.2.6 minipass: 7.1.2 dev: true diff --git a/fixtures/react-view-slider-ts/init-snapshot/.babelrc.cjs b/fixtures/react-view-slider-ts/init-snapshot/.babelrc.cjs index 66e7a150..42810633 100644 --- a/fixtures/react-view-slider-ts/init-snapshot/.babelrc.cjs +++ b/fixtures/react-view-slider-ts/init-snapshot/.babelrc.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ module.exports = function (api) { const base = require('@jcoreio/toolchain-esnext/.babelrc.cjs')(api) return { diff --git a/fixtures/react-view-slider-ts/init-snapshot/.mocharc.cjs b/fixtures/react-view-slider-ts/init-snapshot/.mocharc.cjs index 72bb73ce..8cffa086 100644 --- a/fixtures/react-view-slider-ts/init-snapshot/.mocharc.cjs +++ b/fixtures/react-view-slider-ts/init-snapshot/.mocharc.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain-mocha/.mocharc.cjs') const { getSpecs } = require('@jcoreio/toolchain-mocha') module.exports = { diff --git a/fixtures/react-view-slider-ts/init-snapshot/_lint-staged.config.cjs b/fixtures/react-view-slider-ts/init-snapshot/_lint-staged.config.cjs index 9656053b..b5631560 100644 --- a/fixtures/react-view-slider-ts/init-snapshot/_lint-staged.config.cjs +++ b/fixtures/react-view-slider-ts/init-snapshot/_lint-staged.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain/lint-staged.config.cjs') module.exports = { ...base, diff --git a/fixtures/react-view-slider-ts/init-snapshot/dist/pnpm-lock.yaml b/fixtures/react-view-slider-ts/init-snapshot/dist/pnpm-lock.yaml index cd6b87d3..b1ae20c4 100644 --- a/fixtures/react-view-slider-ts/init-snapshot/dist/pnpm-lock.yaml +++ b/fixtures/react-view-slider-ts/init-snapshot/dist/pnpm-lock.yaml @@ -498,8 +498,8 @@ packages: resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} engines: {node: '>=10'} - caniuse-lite@1.0.30001767: - resolution: {integrity: sha512-34+zUAMhSH+r+9eKmYG+k2Rpt8XttfE4yXAjoZvkAPs15xcYQhyBYdalJ65BzivAvGRMViEjy6oKr/S91loekQ==} + caniuse-lite@1.0.30001769: + resolution: {integrity: sha512-BCfFL1sHijQlBGWBMuJyhZUhzo7wer5sVj9hqekB/7xn0Ypy+pER/edCYQm4exbXj4WiySGp40P8UuTh6w1srg==} chai@4.5.0: resolution: {integrity: sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==} @@ -2355,7 +2355,7 @@ snapshots: browserslist@4.28.1: dependencies: baseline-browser-mapping: 2.9.19 - caniuse-lite: 1.0.30001767 + caniuse-lite: 1.0.30001769 electron-to-chromium: 1.5.286 node-releases: 2.0.27 update-browserslist-db: 1.2.3(browserslist@4.28.1) @@ -2390,7 +2390,7 @@ snapshots: camelcase@6.3.0: {} - caniuse-lite@1.0.30001767: {} + caniuse-lite@1.0.30001769: {} chai@4.5.0: dependencies: diff --git a/fixtures/react-view-slider-ts/init-snapshot/githooks.cjs b/fixtures/react-view-slider-ts/init-snapshot/githooks.cjs index 6ba6e951..da4257df 100644 --- a/fixtures/react-view-slider-ts/init-snapshot/githooks.cjs +++ b/fixtures/react-view-slider-ts/init-snapshot/githooks.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain/githooks.cjs') module.exports = { ...base, diff --git a/fixtures/react-view-slider-ts/init-snapshot/nyc.config.cjs b/fixtures/react-view-slider-ts/init-snapshot/nyc.config.cjs index 5990d283..626cf481 100644 --- a/fixtures/react-view-slider-ts/init-snapshot/nyc.config.cjs +++ b/fixtures/react-view-slider-ts/init-snapshot/nyc.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain-mocha/nyc.config.cjs') module.exports = { ...base, diff --git a/fixtures/react-view-slider-ts/init-snapshot/pnpm-lock.yaml b/fixtures/react-view-slider-ts/init-snapshot/pnpm-lock.yaml index cd6b87d3..b1ae20c4 100644 --- a/fixtures/react-view-slider-ts/init-snapshot/pnpm-lock.yaml +++ b/fixtures/react-view-slider-ts/init-snapshot/pnpm-lock.yaml @@ -498,8 +498,8 @@ packages: resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} engines: {node: '>=10'} - caniuse-lite@1.0.30001767: - resolution: {integrity: sha512-34+zUAMhSH+r+9eKmYG+k2Rpt8XttfE4yXAjoZvkAPs15xcYQhyBYdalJ65BzivAvGRMViEjy6oKr/S91loekQ==} + caniuse-lite@1.0.30001769: + resolution: {integrity: sha512-BCfFL1sHijQlBGWBMuJyhZUhzo7wer5sVj9hqekB/7xn0Ypy+pER/edCYQm4exbXj4WiySGp40P8UuTh6w1srg==} chai@4.5.0: resolution: {integrity: sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==} @@ -2355,7 +2355,7 @@ snapshots: browserslist@4.28.1: dependencies: baseline-browser-mapping: 2.9.19 - caniuse-lite: 1.0.30001767 + caniuse-lite: 1.0.30001769 electron-to-chromium: 1.5.286 node-releases: 2.0.27 update-browserslist-db: 1.2.3(browserslist@4.28.1) @@ -2390,7 +2390,7 @@ snapshots: camelcase@6.3.0: {} - caniuse-lite@1.0.30001767: {} + caniuse-lite@1.0.30001769: {} chai@4.5.0: dependencies: diff --git a/fixtures/react-view-slider-ts/init-snapshot/prettier.config.cjs b/fixtures/react-view-slider-ts/init-snapshot/prettier.config.cjs index 157ba11a..a9d5b227 100644 --- a/fixtures/react-view-slider-ts/init-snapshot/prettier.config.cjs +++ b/fixtures/react-view-slider-ts/init-snapshot/prettier.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain/prettierConfig.cjs') module.exports = { ...base, diff --git a/fixtures/react-view-slider-ts/init-snapshot/release.config.cjs b/fixtures/react-view-slider-ts/init-snapshot/release.config.cjs index e0e62533..1b44bd99 100644 --- a/fixtures/react-view-slider-ts/init-snapshot/release.config.cjs +++ b/fixtures/react-view-slider-ts/init-snapshot/release.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ module.exports = { extends: [ require.resolve('@jcoreio/toolchain-semantic-release/release.config.cjs'), diff --git a/fixtures/react-view-slider-ts/init-snapshot/toolchain.config.cjs b/fixtures/react-view-slider-ts/init-snapshot/toolchain.config.cjs index d15f6400..59cb56b3 100644 --- a/fixtures/react-view-slider-ts/init-snapshot/toolchain.config.cjs +++ b/fixtures/react-view-slider-ts/init-snapshot/toolchain.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ module.exports = { cjsBabelEnv: { targets: { node: 16 } }, esmBabelEnv: { targets: { node: 16 } }, diff --git a/fixtures/react-view-slider/init-snapshot/.babelrc.cjs b/fixtures/react-view-slider/init-snapshot/.babelrc.cjs index 66e7a150..42810633 100644 --- a/fixtures/react-view-slider/init-snapshot/.babelrc.cjs +++ b/fixtures/react-view-slider/init-snapshot/.babelrc.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ module.exports = function (api) { const base = require('@jcoreio/toolchain-esnext/.babelrc.cjs')(api) return { diff --git a/fixtures/react-view-slider/init-snapshot/.mocharc.cjs b/fixtures/react-view-slider/init-snapshot/.mocharc.cjs index d7b6005c..5fe0dbf2 100644 --- a/fixtures/react-view-slider/init-snapshot/.mocharc.cjs +++ b/fixtures/react-view-slider/init-snapshot/.mocharc.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain-mocha/.mocharc.cjs') const { getSpecs } = require('@jcoreio/toolchain-mocha') module.exports = { diff --git a/fixtures/react-view-slider/init-snapshot/_lint-staged.config.cjs b/fixtures/react-view-slider/init-snapshot/_lint-staged.config.cjs index 9656053b..b5631560 100644 --- a/fixtures/react-view-slider/init-snapshot/_lint-staged.config.cjs +++ b/fixtures/react-view-slider/init-snapshot/_lint-staged.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain/lint-staged.config.cjs') module.exports = { ...base, diff --git a/fixtures/react-view-slider/init-snapshot/dist/pnpm-lock.yaml b/fixtures/react-view-slider/init-snapshot/dist/pnpm-lock.yaml index a694894a..b712c803 100644 --- a/fixtures/react-view-slider/init-snapshot/dist/pnpm-lock.yaml +++ b/fixtures/react-view-slider/init-snapshot/dist/pnpm-lock.yaml @@ -465,8 +465,8 @@ packages: resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} engines: {node: '>=10'} - caniuse-lite@1.0.30001767: - resolution: {integrity: sha512-34+zUAMhSH+r+9eKmYG+k2Rpt8XttfE4yXAjoZvkAPs15xcYQhyBYdalJ65BzivAvGRMViEjy6oKr/S91loekQ==} + caniuse-lite@1.0.30001769: + resolution: {integrity: sha512-BCfFL1sHijQlBGWBMuJyhZUhzo7wer5sVj9hqekB/7xn0Ypy+pER/edCYQm4exbXj4WiySGp40P8UuTh6w1srg==} chai@4.5.0: resolution: {integrity: sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==} @@ -2307,7 +2307,7 @@ snapshots: browserslist@4.28.1: dependencies: baseline-browser-mapping: 2.9.19 - caniuse-lite: 1.0.30001767 + caniuse-lite: 1.0.30001769 electron-to-chromium: 1.5.286 node-releases: 2.0.27 update-browserslist-db: 1.2.3(browserslist@4.28.1) @@ -2342,7 +2342,7 @@ snapshots: camelcase@6.3.0: {} - caniuse-lite@1.0.30001767: {} + caniuse-lite@1.0.30001769: {} chai@4.5.0: dependencies: diff --git a/fixtures/react-view-slider/init-snapshot/githooks.cjs b/fixtures/react-view-slider/init-snapshot/githooks.cjs index 6ba6e951..da4257df 100644 --- a/fixtures/react-view-slider/init-snapshot/githooks.cjs +++ b/fixtures/react-view-slider/init-snapshot/githooks.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain/githooks.cjs') module.exports = { ...base, diff --git a/fixtures/react-view-slider/init-snapshot/nyc.config.cjs b/fixtures/react-view-slider/init-snapshot/nyc.config.cjs index 5990d283..626cf481 100644 --- a/fixtures/react-view-slider/init-snapshot/nyc.config.cjs +++ b/fixtures/react-view-slider/init-snapshot/nyc.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain-mocha/nyc.config.cjs') module.exports = { ...base, diff --git a/fixtures/react-view-slider/init-snapshot/pnpm-lock.yaml b/fixtures/react-view-slider/init-snapshot/pnpm-lock.yaml index a694894a..b712c803 100644 --- a/fixtures/react-view-slider/init-snapshot/pnpm-lock.yaml +++ b/fixtures/react-view-slider/init-snapshot/pnpm-lock.yaml @@ -465,8 +465,8 @@ packages: resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} engines: {node: '>=10'} - caniuse-lite@1.0.30001767: - resolution: {integrity: sha512-34+zUAMhSH+r+9eKmYG+k2Rpt8XttfE4yXAjoZvkAPs15xcYQhyBYdalJ65BzivAvGRMViEjy6oKr/S91loekQ==} + caniuse-lite@1.0.30001769: + resolution: {integrity: sha512-BCfFL1sHijQlBGWBMuJyhZUhzo7wer5sVj9hqekB/7xn0Ypy+pER/edCYQm4exbXj4WiySGp40P8UuTh6w1srg==} chai@4.5.0: resolution: {integrity: sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==} @@ -2307,7 +2307,7 @@ snapshots: browserslist@4.28.1: dependencies: baseline-browser-mapping: 2.9.19 - caniuse-lite: 1.0.30001767 + caniuse-lite: 1.0.30001769 electron-to-chromium: 1.5.286 node-releases: 2.0.27 update-browserslist-db: 1.2.3(browserslist@4.28.1) @@ -2342,7 +2342,7 @@ snapshots: camelcase@6.3.0: {} - caniuse-lite@1.0.30001767: {} + caniuse-lite@1.0.30001769: {} chai@4.5.0: dependencies: diff --git a/fixtures/react-view-slider/init-snapshot/prettier.config.cjs b/fixtures/react-view-slider/init-snapshot/prettier.config.cjs index 157ba11a..a9d5b227 100644 --- a/fixtures/react-view-slider/init-snapshot/prettier.config.cjs +++ b/fixtures/react-view-slider/init-snapshot/prettier.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain/prettierConfig.cjs') module.exports = { ...base, diff --git a/fixtures/react-view-slider/init-snapshot/release.config.cjs b/fixtures/react-view-slider/init-snapshot/release.config.cjs index e0e62533..1b44bd99 100644 --- a/fixtures/react-view-slider/init-snapshot/release.config.cjs +++ b/fixtures/react-view-slider/init-snapshot/release.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ module.exports = { extends: [ require.resolve('@jcoreio/toolchain-semantic-release/release.config.cjs'), diff --git a/fixtures/react-view-slider/init-snapshot/toolchain.config.cjs b/fixtures/react-view-slider/init-snapshot/toolchain.config.cjs index 74b3074b..53218409 100644 --- a/fixtures/react-view-slider/init-snapshot/toolchain.config.cjs +++ b/fixtures/react-view-slider/init-snapshot/toolchain.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ module.exports = { cjsBabelEnv: { targets: { node: 16 } }, esmBabelEnv: { targets: { node: 16 } }, diff --git a/package.json b/package.json index 46c533fe..d31121be 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ "chai": "^4.3.7", "chalk": "^4.1.2", "dedent-js": "^1.0.1", - "eslint": "^10.0.0", + "eslint": "^9.17.0", "execa": "^5.0.0", "fs-extra": "^10.0.0", "gitignore-fs": "^2.2.2", diff --git a/packages/base/package.json b/packages/base/package.json index 2b800454..752ab2a1 100644 --- a/packages/base/package.json +++ b/packages/base/package.json @@ -18,14 +18,14 @@ "@babel/parser": "^7.27.0", "@babel/template": "^7.27.0", "@babel/types": "^7.27.0", - "@eslint/compat": "^2.0.2", - "@eslint/js": "^10.0.1", - "@jcoreio/eslint-plugin-implicit-dependencies": "^1.2.0", + "@eslint/compat": "^1.2.8", + "@eslint/js": "^9.23.0", + "@jcoreio/eslint-plugin-implicit-dependencies": "^1.1.1", "chalk": "^4.0.0", "debug": "^4.4.0", "dedent-js": "^1.0.1", - "eslint": "^10.0.0", - "eslint-config-prettier": "^10.1.8", + "eslint": "^9.17.0", + "eslint-config-prettier": "^9.1.0", "execa": "^5.0.0", "find-up": "^5.0.0", "fs-extra": "^10.0.0", diff --git a/packages/base/plugins/getEslintConfigs.cjs b/packages/base/plugins/getEslintConfigs.cjs index aca88db4..cfb7e26c 100644 --- a/packages/base/plugins/getEslintConfigs.cjs +++ b/packages/base/plugins/getEslintConfigs.cjs @@ -22,7 +22,8 @@ module.exports = [ if (globalGitignore && fs.pathExistsSync(globalGitignore)) { gitignores.push(globalGitignore) } - } catch { + // eslint-disable-next-line no-unused-vars + } catch (err) { // ignore } if (fs.pathExistsSync('.eslintignore')) { @@ -77,7 +78,7 @@ module.exports = [ }, }, { - files: ['**'], + files: ['**/*.{js,cjs,mjs,ts,cts,mts}'], ignores: ['src/**', 'test/**'], languageOptions: { ecmaVersion: 2018, diff --git a/packages/base/scripts/migrate/migrateEslintEnvComments.cjs b/packages/base/scripts/migrate/migrateEslintEnvComments.cjs index 63278025..6949194e 100644 --- a/packages/base/scripts/migrate/migrateEslintEnvComments.cjs +++ b/packages/base/scripts/migrate/migrateEslintEnvComments.cjs @@ -2,7 +2,7 @@ const { gte } = require('semver') async function migrateEslintEnvComments({ fromVersion }) { // istanbul ignore next - if (fromVersion && gte(fromVersion, '6.0.0')) { + if (fromVersion && gte(fromVersion, '5.10.0')) { return } @@ -37,13 +37,15 @@ async function migrateEslintEnvComments({ fromVersion }) { const replacements = [] for (const comment of parsed.comments) { const { start, end, value } = comment - const envs = /^\s*eslint-env\s+(.*?)\s*$/.exec(value)?.[1] + const match = /^\s*eslint-env\s+(.*?)\s*$/.exec(value) + const envs = match ? match[1] : undefined if (envs == null) continue replacements.push({ start, end, value: '' }) } if (!replacements.length) continue await fs.writeFile(file, replaceRanges(source, replacements), 'utf8') + // eslint-disable-next-line no-console console.error( `removed eslint-env comments from ${path.relative(process.cwd(), file)}` ) diff --git a/packages/base/util/findUps.cjs b/packages/base/util/findUps.cjs index da0f1919..4e866317 100644 --- a/packages/base/util/findUps.cjs +++ b/packages/base/util/findUps.cjs @@ -17,7 +17,8 @@ function matchNamedPackageJson(directory) { try { const json = fs.readJsonSync(Path.join(directory, 'package.json')) if (json.name) return 'package.json' - } catch { + // eslint-disable-next-line no-unused-vars + } catch (err) { return undefined } } diff --git a/packages/base/util/getBabelParseOpts.cjs b/packages/base/util/getBabelParseOpts.cjs index 16a0f1b9..2b1c20c3 100644 --- a/packages/base/util/getBabelParseOpts.cjs +++ b/packages/base/util/getBabelParseOpts.cjs @@ -143,8 +143,8 @@ const babelParseOpts = { } function getBabelParseOpts(file) { - const ext = - /\.(js|cjs|mjs|jsx|(d\.)?(ts|cts|mts|tsx))$/i.exec(file)?.[0] || 'js' + const match = /\.(js|cjs|mjs|jsx|(d\.)?(ts|cts|mts|tsx))$/i.exec(file) + const ext = (match ? match[0] : undefined) || 'js' return babelParseOpts[ext] } diff --git a/packages/esnext/package.json b/packages/esnext/package.json index a5b94dc0..3b3adddb 100644 --- a/packages/esnext/package.json +++ b/packages/esnext/package.json @@ -16,7 +16,7 @@ "dependencies": { "@babel/cli": "^7.26.4", "@babel/core": "^7.26.0", - "@babel/eslint-parser": "^7.28.6", + "@babel/eslint-parser": "^7.25.9", "@babel/plugin-transform-runtime": "^7.25.9", "@babel/preset-env": "^7.26.0", "@babel/register": "^7.25.9", @@ -28,7 +28,7 @@ "babel-plugin-istanbul": "^7.0.0", "babel-register-esm": "^1.2.5", "dedent-js": "^1.0.1", - "eslint": "^10.0.0", + "eslint": "^9.17.0", "find-up": "^5.0.0", "fs-extra": "^10.0.0", "globals": "^16.0.0", diff --git a/packages/flow/package.json b/packages/flow/package.json index 222b5d0f..e27698fa 100644 --- a/packages/flow/package.json +++ b/packages/flow/package.json @@ -21,7 +21,7 @@ "@jcoreio/toolchain": "workspace:*", "@jcoreio/toolchain-esnext": "workspace:*", "dedent-js": "^1.0.1", - "eslint": "^10.0.0", + "eslint": "^9.17.0", "eslint-plugin-ft-flow": "^3.0.11", "semver": "^7.5.3" }, diff --git a/packages/mocha/package.json b/packages/mocha/package.json index 2b032dc0..64e7ca6b 100644 --- a/packages/mocha/package.json +++ b/packages/mocha/package.json @@ -18,7 +18,7 @@ "@jcoreio/toolchain": "workspace:*", "babel-plugin-istanbul": "^7.0.0", "dedent-js": "^1.0.1", - "eslint": "^10.0.0", + "eslint": "^9.24.0", "eslint-plugin-no-only-tests": "^3.3.0", "mocha": "^10.2.0", "nyc": "^15.1.0", diff --git a/packages/react/package.json b/packages/react/package.json index 11819b89..47959066 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -15,11 +15,11 @@ "homepage": "https://github.com/jcoreio/toolchains/tree/main/packages/react", "dependencies": { "@babel/core": "^7.26.0", - "@babel/eslint-parser": "^7.28.6", + "@babel/eslint-parser": "^7.25.9", "@babel/preset-react": "^7.26.3", "@jcoreio/toolchain": "workspace:*", "@jcoreio/toolchain-esnext": "workspace:*", - "eslint": "^10.0.0", + "eslint": "^9.17.0", "eslint-plugin-react": "^7.37.5" }, "peerDependencies": { diff --git a/packages/typescript/package.json b/packages/typescript/package.json index 5c566789..dc9b1413 100644 --- a/packages/typescript/package.json +++ b/packages/typescript/package.json @@ -18,11 +18,11 @@ "@babel/preset-typescript": "^7.26.0", "@jcoreio/toolchain": "workspace:*", "@jcoreio/toolchain-esnext": "workspace:*", - "@typescript-eslint/eslint-plugin": "^8.55.0", - "@typescript-eslint/parser": "^8.55.0", - "eslint": "^10.0.0", + "@typescript-eslint/eslint-plugin": "^8.19.1", + "@typescript-eslint/parser": "^8.19.1", + "eslint": "^9.18.0", "json5": "^2.2.1", - "typescript-eslint": "^8.55.0" + "typescript-eslint": "^8.29.0" }, "peerDependencies": { "typescript": "^5.1.0" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 626bc352..17413c22 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -37,8 +37,8 @@ importers: specifier: ^1.0.1 version: 1.0.1 eslint: - specifier: ^10.0.0 - version: 10.0.0 + specifier: ^9.17.0 + version: 9.39.2 execa: specifier: ^5.0.0 version: 5.1.1 @@ -133,13 +133,13 @@ importers: specifier: ^7.27.0 version: 7.27.0 '@eslint/compat': - specifier: ^2.0.2 - version: 2.0.2(eslint@10.0.0) + specifier: ^1.2.8 + version: 1.4.1(eslint@9.39.2) '@eslint/js': - specifier: ^10.0.1 - version: 10.0.1(eslint@10.0.0) + specifier: ^9.23.0 + version: 9.39.2 '@jcoreio/eslint-plugin-implicit-dependencies': - specifier: ^1.2.0 + specifier: ^1.1.1 version: 1.2.0 chalk: specifier: ^4.0.0 @@ -151,11 +151,11 @@ importers: specifier: ^1.0.1 version: 1.0.1 eslint: - specifier: ^10.0.0 - version: 10.0.0 + specifier: ^9.17.0 + version: 9.39.2 eslint-config-prettier: - specifier: ^10.1.8 - version: 10.1.8(eslint@10.0.0) + specifier: ^9.1.0 + version: 9.1.2(eslint@9.39.2) execa: specifier: ^5.0.0 version: 5.1.1 @@ -232,8 +232,8 @@ importers: specifier: ^7.26.0 version: 7.26.10 '@babel/eslint-parser': - specifier: ^7.28.6 - version: 7.28.6(@babel/core@7.26.10)(eslint@10.0.0) + specifier: ^7.25.9 + version: 7.28.6(@babel/core@7.26.10)(eslint@9.39.2) '@babel/plugin-transform-runtime': specifier: ^7.25.9 version: 7.26.10(@babel/core@7.26.10) @@ -268,8 +268,8 @@ importers: specifier: ^1.0.1 version: 1.0.1 eslint: - specifier: ^10.0.0 - version: 10.0.0 + specifier: ^9.17.0 + version: 9.39.2 find-up: specifier: ^5.0.0 version: 5.0.0 @@ -313,11 +313,11 @@ importers: specifier: ^1.0.1 version: 1.0.1 eslint: - specifier: ^10.0.0 - version: 10.0.0 + specifier: ^9.17.0 + version: 9.39.2 eslint-plugin-ft-flow: specifier: ^3.0.11 - version: 3.0.11(eslint@10.0.0)(hermes-eslint@0.26.0) + version: 3.0.11(eslint@9.39.2)(hermes-eslint@0.26.0) semver: specifier: ^7.5.3 version: 7.7.1 @@ -334,8 +334,8 @@ importers: specifier: ^1.0.1 version: 1.0.1 eslint: - specifier: ^10.0.0 - version: 10.0.0 + specifier: ^9.24.0 + version: 9.39.2 eslint-plugin-no-only-tests: specifier: ^3.3.0 version: 3.3.0 @@ -358,8 +358,8 @@ importers: specifier: ^7.26.0 version: 7.26.10 '@babel/eslint-parser': - specifier: ^7.28.6 - version: 7.28.6(@babel/core@7.26.10)(eslint@10.0.0) + specifier: ^7.25.9 + version: 7.28.6(@babel/core@7.26.10)(eslint@9.39.2) '@babel/preset-react': specifier: ^7.26.3 version: 7.26.3(@babel/core@7.26.10) @@ -370,11 +370,11 @@ importers: specifier: workspace:* version: link:../esnext eslint: - specifier: ^10.0.0 - version: 10.0.0 + specifier: ^9.17.0 + version: 9.39.2 eslint-plugin-react: specifier: ^7.37.5 - version: 7.37.5(eslint@10.0.0) + version: 7.37.5(eslint@9.39.2) react: specifier: '*' version: 19.0.0 @@ -406,20 +406,20 @@ importers: specifier: workspace:* version: link:../esnext '@typescript-eslint/eslint-plugin': - specifier: ^8.55.0 - version: 8.55.0(@typescript-eslint/parser@8.55.0(eslint@10.0.0)(typescript@5.8.2))(eslint@10.0.0)(typescript@5.8.2) + specifier: ^8.19.1 + version: 8.55.0(@typescript-eslint/parser@8.55.0(eslint@9.39.2)(typescript@5.8.2))(eslint@9.39.2)(typescript@5.8.2) '@typescript-eslint/parser': - specifier: ^8.55.0 - version: 8.55.0(eslint@10.0.0)(typescript@5.8.2) + specifier: ^8.19.1 + version: 8.55.0(eslint@9.39.2)(typescript@5.8.2) eslint: - specifier: ^10.0.0 - version: 10.0.0 + specifier: ^9.18.0 + version: 9.39.2 json5: specifier: ^2.2.1 version: 2.2.3 typescript-eslint: - specifier: ^8.55.0 - version: 8.55.0(eslint@10.0.0)(typescript@5.8.2) + specifier: ^8.29.0 + version: 8.55.0(eslint@9.39.2)(typescript@5.8.2) devDependencies: typescript: specifier: ^5.1.0 @@ -1249,43 +1249,42 @@ packages: resolution: {integrity: sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - '@eslint/compat@2.0.2': - resolution: {integrity: sha512-pR1DoD0h3HfF675QZx0xsyrsU8q70Z/plx7880NOhS02NuWLgBCOMDL787nUeQ7EWLkxv3bPQJaarjcPQb2Dwg==} - engines: {node: ^20.19.0 || ^22.13.0 || >=24} + '@eslint/compat@1.4.1': + resolution: {integrity: sha512-cfO82V9zxxGBxcQDr1lfaYB7wykTa0b00mGa36FrJl7iTFd0Z2cHfEYuxcBRP/iNijCsWsEkA+jzT8hGYmv33w==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - eslint: ^8.40 || 9 || 10 + eslint: ^8.40 || 9 peerDependenciesMeta: eslint: optional: true - '@eslint/config-array@0.23.1': - resolution: {integrity: sha512-uVSdg/V4dfQmTjJzR0szNczjOH/J+FyUMMjYtr07xFRXR7EDf9i1qdxrD0VusZH9knj1/ecxzCQQxyic5NzAiA==} - engines: {node: ^20.19.0 || ^22.13.0 || >=24} + '@eslint/config-array@0.21.1': + resolution: {integrity: sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/config-helpers@0.5.2': - resolution: {integrity: sha512-a5MxrdDXEvqnIq+LisyCX6tQMPF/dSJpCfBgBauY+pNZ28yCtSsTvyTYrMhaI+LK26bVyCJfJkT0u8KIj2i1dQ==} - engines: {node: ^20.19.0 || ^22.13.0 || >=24} + '@eslint/config-helpers@0.4.2': + resolution: {integrity: sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/core@1.1.0': - resolution: {integrity: sha512-/nr9K9wkr3P1EzFTdFdMoLuo1PmIxjmwvPozwoSodjNBdefGujXQUF93u1DDZpEaTuDvMsIQddsd35BwtrW9Xw==} - engines: {node: ^20.19.0 || ^22.13.0 || >=24} + '@eslint/core@0.17.0': + resolution: {integrity: sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/js@10.0.1': - resolution: {integrity: sha512-zeR9k5pd4gxjZ0abRoIaxdc7I3nDktoXZk2qOv9gCNWx3mVwEn32VRhyLaRsDiJjTs0xq/T8mfPtyuXu7GWBcA==} - engines: {node: ^20.19.0 || ^22.13.0 || >=24} - peerDependencies: - eslint: ^10.0.0 - peerDependenciesMeta: - eslint: - optional: true + '@eslint/eslintrc@3.3.3': + resolution: {integrity: sha512-Kr+LPIUVKz2qkx1HAMH8q1q6azbqBAsXJUxBl/ODDuVPX45Z9DfwB8tPjTi6nNZ8BuM3nbJxC5zCAg5elnBUTQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/object-schema@3.0.1': - resolution: {integrity: sha512-P9cq2dpr+LU8j3qbLygLcSZrl2/ds/pUpfnHNNuk5HW7mnngHs+6WSq5C9mO3rqRX8A1poxqLTC9cu0KOyJlBg==} - engines: {node: ^20.19.0 || ^22.13.0 || >=24} + '@eslint/js@9.39.2': + resolution: {integrity: sha512-q1mjIoW1VX4IvSocvM/vbTiveKC4k9eLrajNEuSsmjymSDEbpGddtpfOoN7YGAqBK3NG+uqo8ia4PDTt8buCYA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/plugin-kit@0.6.0': - resolution: {integrity: sha512-bIZEUzOI1jkhviX2cp5vNyXQc6olzb2ohewQubuYlMXZ2Q/XjBO0x0XhGPvc9fjSIiUN0vw+0hq53BJ4eQSJKQ==} - engines: {node: ^20.19.0 || ^22.13.0 || >=24} + '@eslint/object-schema@2.1.7': + resolution: {integrity: sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/plugin-kit@0.4.1': + resolution: {integrity: sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@gar/promisify@1.1.3': resolution: {integrity: sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==} @@ -1310,10 +1309,6 @@ packages: resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} engines: {node: '>=12'} - '@isaacs/cliui@9.0.0': - resolution: {integrity: sha512-AokJm4tuBHillT+FpMtxQ60n8ObyXBatq7jD2/JA9dxbDDokKQm8KMht5ibGzLVU9IJDIKK4TPKgMHEYMn3lMg==} - engines: {node: '>=18'} - '@istanbuljs/load-nyc-config@1.1.0': resolution: {integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==} engines: {node: '>=8'} @@ -1736,9 +1731,6 @@ packages: resolution: {integrity: sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==} engines: {node: '>= 10'} - '@types/esrecurse@4.3.1': - resolution: {integrity: sha512-xJBAbDifo5hpffDBuHl0Y8ywswbiAp/Wi7Y/GtAgSlZyIABppyurxVueOPE8LUQOxdlgi6Zqce7uoEpqNTeiUw==} - '@types/estree@1.0.8': resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} @@ -2025,10 +2017,6 @@ packages: balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} - balanced-match@4.0.2: - resolution: {integrity: sha512-x0K50QvKQ97fdEz2kPehIerj+YTeptKF9hyYkKf6egnwmMWAkADiO0QCzSp0R5xN8FTZgYaBfSaue46Ej62nMg==} - engines: {node: 20 || >=22} - base64-js@1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} @@ -2057,10 +2045,6 @@ packages: brace-expansion@2.0.2: resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==} - brace-expansion@5.0.2: - resolution: {integrity: sha512-Pdk8c9poy+YhOgVWw1JNN22/HcivgKWwpxKq04M/jTmHyCZn12WPJebZxdjSa5TmBqISrUSgNYU3eRORljfCCw==} - engines: {node: 20 || >=22} - braces@3.0.3: resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} engines: {node: '>=8'} @@ -2527,8 +2511,8 @@ packages: resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} engines: {node: '>=12'} - eslint-config-prettier@10.1.8: - resolution: {integrity: sha512-82GZUjRS0p/jganf6q1rEO25VSoHH0hKPCTrgillPjdI/3bgBhAE1QzHrHTizjpRvy6pGAvKjDJtk2pF9NDq8w==} + eslint-config-prettier@9.1.2: + resolution: {integrity: sha512-iI1f+D2ViGn+uvv5HuHVUamg8ll4tN+JRHGc6IJi4TP9Kl976C57fzPXgseXNs8v0iA8aSJpHsTWjDb9QJamGQ==} hasBin: true peerDependencies: eslint: '>=7.0.0' @@ -2553,9 +2537,9 @@ packages: resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} engines: {node: '>=8.0.0'} - eslint-scope@9.1.0: - resolution: {integrity: sha512-CkWE42hOJsNj9FJRaoMX9waUFYhqY4jmyLFdAdzZr6VaCg3ynLYx4WnOdkaIifGfH4gsUcBTn4OZbHXkpLD0FQ==} - engines: {node: ^20.19.0 || ^22.13.0 || >=24} + eslint-scope@8.4.0: + resolution: {integrity: sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} eslint-visitor-keys@2.1.0: resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==} @@ -2569,13 +2553,9 @@ packages: resolution: {integrity: sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - eslint-visitor-keys@5.0.0: - resolution: {integrity: sha512-A0XeIi7CXU7nPlfHS9loMYEKxUaONu/hTEzHTGba9Huu94Cq1hPivf+DE5erJozZOky0LfvXAyrV/tcswpLI0Q==} - engines: {node: ^20.19.0 || ^22.13.0 || >=24} - - eslint@10.0.0: - resolution: {integrity: sha512-O0piBKY36YSJhlFSG8p9VUdPV/SxxS4FYDWVpr/9GJuMaepzwlf4J8I4ov1b+ySQfDTPhc3DtLaxcT1fN0yqCg==} - engines: {node: ^20.19.0 || ^22.13.0 || >=24} + eslint@9.39.2: + resolution: {integrity: sha512-LEyamqS7W5HB3ujJyvi0HQK/dtVINZvd5mAAp9eT5S/ujByGjiZLCzPcHVzuXbpJDJF/cxwHlfceVUDZ2lnSTw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} hasBin: true peerDependencies: jiti: '*' @@ -2583,9 +2563,9 @@ packages: jiti: optional: true - espree@11.1.0: - resolution: {integrity: sha512-WFWYhO1fV4iYkqOOvq8FbqIhr2pYfoDY0kCotMkDeNtGpiGGkZ1iov2u8ydjtgM8yF8rzK7oaTbw2NAzbAbehw==} - engines: {node: ^20.19.0 || ^22.13.0 || >=24} + espree@10.4.0: + resolution: {integrity: sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} esprima@4.0.1: resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} @@ -2889,6 +2869,10 @@ packages: resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} engines: {node: '>=4'} + globals@14.0.0: + resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} + engines: {node: '>=18'} + globals@16.0.0: resolution: {integrity: sha512-iInW14XItCXET01CQFqudPOWP2jYMl7T+QRQT+UNcR/iQncN/F0UNpgd76iFkBPgNQb4+X3LV9tLJYzwh+Gl3A==} engines: {node: '>=18'} @@ -3337,10 +3321,6 @@ packages: resolution: {integrity: sha512-9DDdhb5j6cpeitCbvLO7n7J4IxnbM6hoF6O1g4HQ5TfhvvKN8ywDM7668ZhMHRqVmxqhps/F6syWK2KcPxYlkw==} engines: {node: 20 || >=22} - jackspeak@4.2.3: - resolution: {integrity: sha512-ykkVRwrYvFm1nb2AJfKKYPr0emF6IiXDYUaFx4Zn9ZuIH7MrzEZ3sD5RlqGXNRpHtvUHJyOnCEFxOlNDtGo7wg==} - engines: {node: 20 || >=22} - java-properties@1.0.2: resolution: {integrity: sha512-qjdpeo2yKlYTH7nFdK0vbZWuTCesk4o63v5iVOlhMQPfuIZQfW/HI35SjfhA+4qpg36rnFSvUK5b1m+ckIblQQ==} engines: {node: '>= 0.6.0'} @@ -3499,6 +3479,9 @@ packages: lodash.isstring@4.0.1: resolution: {integrity: sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==} + lodash.merge@4.6.2: + resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + lodash.truncate@4.4.2: resolution: {integrity: sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==} @@ -3622,10 +3605,6 @@ packages: resolution: {integrity: sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==} engines: {node: 20 || >=22} - minimatch@10.2.0: - resolution: {integrity: sha512-ugkC31VaVg9cF0DFVoADH12k6061zNZkZON+aX8AWsR9GhPcErkcMBceb6znR8wLERM2AkkOxy2nWRLpT9Jq5w==} - engines: {node: 20 || >=22} - minimatch@3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} @@ -5920,11 +5899,11 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/eslint-parser@7.28.6(@babel/core@7.26.10)(eslint@10.0.0)': + '@babel/eslint-parser@7.28.6(@babel/core@7.26.10)(eslint@9.39.2)': dependencies: '@babel/core': 7.26.10 '@nicolo-ribaudo/eslint-scope-5-internals': 5.1.1-v1 - eslint: 10.0.0 + eslint: 9.39.2 eslint-visitor-keys: 2.1.0 semver: 6.3.1 @@ -6663,44 +6642,56 @@ snapshots: '@colors/colors@1.5.0': optional: true - '@eslint-community/eslint-utils@4.9.1(eslint@10.0.0)': + '@eslint-community/eslint-utils@4.9.1(eslint@9.39.2)': dependencies: - eslint: 10.0.0 + eslint: 9.39.2 eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.12.2': {} - '@eslint/compat@2.0.2(eslint@10.0.0)': + '@eslint/compat@1.4.1(eslint@9.39.2)': dependencies: - '@eslint/core': 1.1.0 + '@eslint/core': 0.17.0 optionalDependencies: - eslint: 10.0.0 + eslint: 9.39.2 - '@eslint/config-array@0.23.1': + '@eslint/config-array@0.21.1': dependencies: - '@eslint/object-schema': 3.0.1 - debug: 4.4.0(supports-color@8.1.1) - minimatch: 10.2.0 + '@eslint/object-schema': 2.1.7 + debug: 4.4.3 + minimatch: 3.1.2 transitivePeerDependencies: - supports-color - '@eslint/config-helpers@0.5.2': + '@eslint/config-helpers@0.4.2': dependencies: - '@eslint/core': 1.1.0 + '@eslint/core': 0.17.0 - '@eslint/core@1.1.0': + '@eslint/core@0.17.0': dependencies: '@types/json-schema': 7.0.15 - '@eslint/js@10.0.1(eslint@10.0.0)': - optionalDependencies: - eslint: 10.0.0 + '@eslint/eslintrc@3.3.3': + dependencies: + ajv: 6.12.6 + debug: 4.4.3 + espree: 10.4.0 + globals: 14.0.0 + ignore: 5.3.2 + import-fresh: 3.3.1 + js-yaml: 4.1.1 + minimatch: 3.1.2 + strip-json-comments: 3.1.1 + transitivePeerDependencies: + - supports-color + + '@eslint/js@9.39.2': {} - '@eslint/object-schema@3.0.1': {} + '@eslint/object-schema@2.1.7': {} - '@eslint/plugin-kit@0.6.0': + '@eslint/plugin-kit@0.4.1': dependencies: - '@eslint/core': 1.1.0 + '@eslint/core': 0.17.0 levn: 0.4.1 '@gar/promisify@1.1.3': {} @@ -6725,8 +6716,6 @@ snapshots: wrap-ansi: 8.1.0 wrap-ansi-cjs: wrap-ansi@7.0.0 - '@isaacs/cliui@9.0.0': {} - '@istanbuljs/load-nyc-config@1.1.0': dependencies: camelcase: 5.3.1 @@ -7387,8 +7376,6 @@ snapshots: '@tootallnate/once@2.0.0': {} - '@types/esrecurse@4.3.1': {} - '@types/estree@1.0.8': {} '@types/json-schema@7.0.15': {} @@ -7403,15 +7390,15 @@ snapshots: '@types/validate-npm-package-name@4.0.2': {} - '@typescript-eslint/eslint-plugin@8.55.0(@typescript-eslint/parser@8.55.0(eslint@10.0.0)(typescript@5.8.2))(eslint@10.0.0)(typescript@5.8.2)': + '@typescript-eslint/eslint-plugin@8.55.0(@typescript-eslint/parser@8.55.0(eslint@9.39.2)(typescript@5.8.2))(eslint@9.39.2)(typescript@5.8.2)': dependencies: '@eslint-community/regexpp': 4.12.2 - '@typescript-eslint/parser': 8.55.0(eslint@10.0.0)(typescript@5.8.2) + '@typescript-eslint/parser': 8.55.0(eslint@9.39.2)(typescript@5.8.2) '@typescript-eslint/scope-manager': 8.55.0 - '@typescript-eslint/type-utils': 8.55.0(eslint@10.0.0)(typescript@5.8.2) - '@typescript-eslint/utils': 8.55.0(eslint@10.0.0)(typescript@5.8.2) + '@typescript-eslint/type-utils': 8.55.0(eslint@9.39.2)(typescript@5.8.2) + '@typescript-eslint/utils': 8.55.0(eslint@9.39.2)(typescript@5.8.2) '@typescript-eslint/visitor-keys': 8.55.0 - eslint: 10.0.0 + eslint: 9.39.2 ignore: 7.0.5 natural-compare: 1.4.0 ts-api-utils: 2.4.0(typescript@5.8.2) @@ -7419,14 +7406,14 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.55.0(eslint@10.0.0)(typescript@5.8.2)': + '@typescript-eslint/parser@8.55.0(eslint@9.39.2)(typescript@5.8.2)': dependencies: '@typescript-eslint/scope-manager': 8.55.0 '@typescript-eslint/types': 8.55.0 '@typescript-eslint/typescript-estree': 8.55.0(typescript@5.8.2) '@typescript-eslint/visitor-keys': 8.55.0 debug: 4.4.3 - eslint: 10.0.0 + eslint: 9.39.2 typescript: 5.8.2 transitivePeerDependencies: - supports-color @@ -7449,13 +7436,13 @@ snapshots: dependencies: typescript: 5.8.2 - '@typescript-eslint/type-utils@8.55.0(eslint@10.0.0)(typescript@5.8.2)': + '@typescript-eslint/type-utils@8.55.0(eslint@9.39.2)(typescript@5.8.2)': dependencies: '@typescript-eslint/types': 8.55.0 '@typescript-eslint/typescript-estree': 8.55.0(typescript@5.8.2) - '@typescript-eslint/utils': 8.55.0(eslint@10.0.0)(typescript@5.8.2) + '@typescript-eslint/utils': 8.55.0(eslint@9.39.2)(typescript@5.8.2) debug: 4.4.3 - eslint: 10.0.0 + eslint: 9.39.2 ts-api-utils: 2.4.0(typescript@5.8.2) typescript: 5.8.2 transitivePeerDependencies: @@ -7478,13 +7465,13 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.55.0(eslint@10.0.0)(typescript@5.8.2)': + '@typescript-eslint/utils@8.55.0(eslint@9.39.2)(typescript@5.8.2)': dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.0) + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.2) '@typescript-eslint/scope-manager': 8.55.0 '@typescript-eslint/types': 8.55.0 '@typescript-eslint/typescript-estree': 8.55.0(typescript@5.8.2) - eslint: 10.0.0 + eslint: 9.39.2 typescript: 5.8.2 transitivePeerDependencies: - supports-color @@ -7754,10 +7741,6 @@ snapshots: balanced-match@1.0.2: {} - balanced-match@4.0.2: - dependencies: - jackspeak: 4.2.3 - base64-js@1.5.1: {} before-after-hook@4.0.0: {} @@ -7787,10 +7770,6 @@ snapshots: dependencies: balanced-match: 1.0.2 - brace-expansion@5.0.2: - dependencies: - balanced-match: 4.0.2 - braces@3.0.3: dependencies: fill-range: 7.1.1 @@ -8087,7 +8066,7 @@ snapshots: dependencies: env-paths: 2.2.1 import-fresh: 3.3.1 - js-yaml: 4.1.1 + js-yaml: 4.1.0 parse-json: 5.2.0 optionalDependencies: typescript: 5.8.2 @@ -8352,20 +8331,20 @@ snapshots: escape-string-regexp@5.0.0: {} - eslint-config-prettier@10.1.8(eslint@10.0.0): + eslint-config-prettier@9.1.2(eslint@9.39.2): dependencies: - eslint: 10.0.0 + eslint: 9.39.2 - eslint-plugin-ft-flow@3.0.11(eslint@10.0.0)(hermes-eslint@0.26.0): + eslint-plugin-ft-flow@3.0.11(eslint@9.39.2)(hermes-eslint@0.26.0): dependencies: - eslint: 10.0.0 + eslint: 9.39.2 hermes-eslint: 0.26.0 lodash: 4.17.23 string-natural-compare: 3.0.1 eslint-plugin-no-only-tests@3.3.0: {} - eslint-plugin-react@7.37.5(eslint@10.0.0): + eslint-plugin-react@7.37.5(eslint@9.39.2): dependencies: array-includes: 3.1.9 array.prototype.findlast: 1.2.5 @@ -8373,7 +8352,7 @@ snapshots: array.prototype.tosorted: 1.1.4 doctrine: 2.1.0 es-iterator-helpers: 1.2.2 - eslint: 10.0.0 + eslint: 9.39.2 estraverse: 5.3.0 hasown: 2.0.2 jsx-ast-utils: 3.3.5 @@ -8392,10 +8371,8 @@ snapshots: esrecurse: 4.3.0 estraverse: 4.3.0 - eslint-scope@9.1.0: + eslint-scope@8.4.0: dependencies: - '@types/esrecurse': 4.3.1 - '@types/estree': 1.0.8 esrecurse: 4.3.0 estraverse: 5.3.0 @@ -8405,27 +8382,28 @@ snapshots: eslint-visitor-keys@4.2.1: {} - eslint-visitor-keys@5.0.0: {} - - eslint@10.0.0: + eslint@9.39.2: dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.0) + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.2) '@eslint-community/regexpp': 4.12.2 - '@eslint/config-array': 0.23.1 - '@eslint/config-helpers': 0.5.2 - '@eslint/core': 1.1.0 - '@eslint/plugin-kit': 0.6.0 + '@eslint/config-array': 0.21.1 + '@eslint/config-helpers': 0.4.2 + '@eslint/core': 0.17.0 + '@eslint/eslintrc': 3.3.3 + '@eslint/js': 9.39.2 + '@eslint/plugin-kit': 0.4.1 '@humanfs/node': 0.16.7 '@humanwhocodes/module-importer': 1.0.1 '@humanwhocodes/retry': 0.4.3 '@types/estree': 1.0.8 ajv: 6.12.6 + chalk: 4.1.2 cross-spawn: 7.0.6 - debug: 4.4.0(supports-color@8.1.1) + debug: 4.4.3 escape-string-regexp: 4.0.0 - eslint-scope: 9.1.0 - eslint-visitor-keys: 5.0.0 - espree: 11.1.0 + eslint-scope: 8.4.0 + eslint-visitor-keys: 4.2.1 + espree: 10.4.0 esquery: 1.7.0 esutils: 2.0.3 fast-deep-equal: 3.1.3 @@ -8436,17 +8414,18 @@ snapshots: imurmurhash: 0.1.4 is-glob: 4.0.3 json-stable-stringify-without-jsonify: 1.0.1 - minimatch: 10.2.0 + lodash.merge: 4.6.2 + minimatch: 3.1.2 natural-compare: 1.4.0 optionator: 0.9.4 transitivePeerDependencies: - supports-color - espree@11.1.0: + espree@10.4.0: dependencies: acorn: 8.15.0 acorn-jsx: 5.3.2(acorn@8.15.0) - eslint-visitor-keys: 5.0.0 + eslint-visitor-keys: 4.2.1 esprima@4.0.1: {} @@ -8783,6 +8762,8 @@ snapshots: globals@11.12.0: {} + globals@14.0.0: {} + globals@16.0.0: {} globalthis@1.0.4: @@ -9241,10 +9222,6 @@ snapshots: dependencies: '@isaacs/cliui': 8.0.2 - jackspeak@4.2.3: - dependencies: - '@isaacs/cliui': 9.0.0 - java-properties@1.0.2: {} js-tokens@4.0.0: {} @@ -9397,6 +9374,8 @@ snapshots: lodash.isstring@4.0.1: {} + lodash.merge@4.6.2: {} + lodash.truncate@4.4.2: {} lodash.union@4.6.0: {} @@ -9545,10 +9524,6 @@ snapshots: dependencies: brace-expansion: 2.0.1 - minimatch@10.2.0: - dependencies: - brace-expansion: 5.0.2 - minimatch@3.1.2: dependencies: brace-expansion: 1.1.11 @@ -10801,13 +10776,13 @@ snapshots: dependencies: is-typedarray: 1.0.0 - typescript-eslint@8.55.0(eslint@10.0.0)(typescript@5.8.2): + typescript-eslint@8.55.0(eslint@9.39.2)(typescript@5.8.2): dependencies: - '@typescript-eslint/eslint-plugin': 8.55.0(@typescript-eslint/parser@8.55.0(eslint@10.0.0)(typescript@5.8.2))(eslint@10.0.0)(typescript@5.8.2) - '@typescript-eslint/parser': 8.55.0(eslint@10.0.0)(typescript@5.8.2) + '@typescript-eslint/eslint-plugin': 8.55.0(@typescript-eslint/parser@8.55.0(eslint@9.39.2)(typescript@5.8.2))(eslint@9.39.2)(typescript@5.8.2) + '@typescript-eslint/parser': 8.55.0(eslint@9.39.2)(typescript@5.8.2) '@typescript-eslint/typescript-estree': 8.55.0(typescript@5.8.2) - '@typescript-eslint/utils': 8.55.0(eslint@10.0.0)(typescript@5.8.2) - eslint: 10.0.0 + '@typescript-eslint/utils': 8.55.0(eslint@9.39.2)(typescript@5.8.2) + eslint: 9.39.2 typescript: 5.8.2 transitivePeerDependencies: - supports-color From 19715a34da585b211787c25f5920b83e4ac79463 Mon Sep 17 00:00:00 2001 From: Andy Edwards Date: Fri, 13 Feb 2026 17:07:55 -0600 Subject: [PATCH 3/4] fix: add entries to eslint.config.cjs for migrated eslint-env comments --- .../init-snapshot/eslint.config.cjs | 6 + .../init-snapshot/test/clearConsole.js | 2 - .../init-snapshot/test/configure.js | 2 - .../upgrade-snapshot/_lint-staged.config.cjs | 1 - .../upgrade-snapshot/eslint.config.cjs | 6 + .../upgrade-snapshot/githooks.cjs | 1 - .../upgrade-snapshot/nyc.config.cjs | 1 - .../upgrade-snapshot/prettier.config.cjs | 1 - .../upgrade-snapshot/release.config.cjs | 1 - .../upgrade-snapshot/test/clearConsole.js | 2 - .../upgrade-snapshot/toolchain.config.cjs | 1 - .../init-snapshot/eslint.config.cjs | 6 + .../init-snapshot/test/clearConsole.js | 2 - .../log4jcore/init-snapshot/eslint.config.cjs | 6 + .../init-snapshot/test/clearConsole.js | 2 - package.json | 1 + packages/base/package.json | 1 + .../migrate/migrateEslintEnvComments.cjs | 54 ++++- .../base/util/addEslintConfigsCodemod.cjs | 73 +++++++ pnpm-lock.yaml | 17 +- test/unit/addEslintConfigsCodemod.test.js | 202 ++++++++++++++++++ 21 files changed, 359 insertions(+), 29 deletions(-) create mode 100644 packages/base/util/addEslintConfigsCodemod.cjs create mode 100644 test/unit/addEslintConfigsCodemod.test.js diff --git a/fixtures/async-throttle/init-snapshot/eslint.config.cjs b/fixtures/async-throttle/init-snapshot/eslint.config.cjs index 3fbbfeab..e39820c0 100644 --- a/fixtures/async-throttle/init-snapshot/eslint.config.cjs +++ b/fixtures/async-throttle/init-snapshot/eslint.config.cjs @@ -30,4 +30,10 @@ module.exports = defineConfig([ }, }, }, + { + files: ['test/configure.js', 'test/clearConsole.js'], + languageOptions: { + globals: globals.node, + }, + }, ]) diff --git a/fixtures/async-throttle/init-snapshot/test/clearConsole.js b/fixtures/async-throttle/init-snapshot/test/clearConsole.js index 55376a47..be6ab8a8 100644 --- a/fixtures/async-throttle/init-snapshot/test/clearConsole.js +++ b/fixtures/async-throttle/init-snapshot/test/clearConsole.js @@ -1,5 +1,3 @@ -/* eslint-env node */ - if (process.argv.indexOf('--watch') >= 0) { before(() => process.stdout.write('\u001b[2J\u001b[1;1H\u001b[3J')) } diff --git a/fixtures/async-throttle/init-snapshot/test/configure.js b/fixtures/async-throttle/init-snapshot/test/configure.js index 55376a47..be6ab8a8 100644 --- a/fixtures/async-throttle/init-snapshot/test/configure.js +++ b/fixtures/async-throttle/init-snapshot/test/configure.js @@ -1,5 +1,3 @@ -/* eslint-env node */ - if (process.argv.indexOf('--watch') >= 0) { before(() => process.stdout.write('\u001b[2J\u001b[1;1H\u001b[3J')) } diff --git a/fixtures/async-throttle/upgrade-snapshot/_lint-staged.config.cjs b/fixtures/async-throttle/upgrade-snapshot/_lint-staged.config.cjs index 9656053b..b5631560 100644 --- a/fixtures/async-throttle/upgrade-snapshot/_lint-staged.config.cjs +++ b/fixtures/async-throttle/upgrade-snapshot/_lint-staged.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain/lint-staged.config.cjs') module.exports = { ...base, diff --git a/fixtures/async-throttle/upgrade-snapshot/eslint.config.cjs b/fixtures/async-throttle/upgrade-snapshot/eslint.config.cjs index 066619d8..9cf9b50a 100644 --- a/fixtures/async-throttle/upgrade-snapshot/eslint.config.cjs +++ b/fixtures/async-throttle/upgrade-snapshot/eslint.config.cjs @@ -21,4 +21,10 @@ module.exports = defineConfig([ }, }, }, + { + files: ['test/clearConsole.js'], + languageOptions: { + globals: globals.node, + }, + }, ]) diff --git a/fixtures/async-throttle/upgrade-snapshot/githooks.cjs b/fixtures/async-throttle/upgrade-snapshot/githooks.cjs index 6ba6e951..da4257df 100644 --- a/fixtures/async-throttle/upgrade-snapshot/githooks.cjs +++ b/fixtures/async-throttle/upgrade-snapshot/githooks.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain/githooks.cjs') module.exports = { ...base, diff --git a/fixtures/async-throttle/upgrade-snapshot/nyc.config.cjs b/fixtures/async-throttle/upgrade-snapshot/nyc.config.cjs index 5990d283..626cf481 100644 --- a/fixtures/async-throttle/upgrade-snapshot/nyc.config.cjs +++ b/fixtures/async-throttle/upgrade-snapshot/nyc.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain-mocha/nyc.config.cjs') module.exports = { ...base, diff --git a/fixtures/async-throttle/upgrade-snapshot/prettier.config.cjs b/fixtures/async-throttle/upgrade-snapshot/prettier.config.cjs index 157ba11a..a9d5b227 100644 --- a/fixtures/async-throttle/upgrade-snapshot/prettier.config.cjs +++ b/fixtures/async-throttle/upgrade-snapshot/prettier.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ const base = require('@jcoreio/toolchain/prettierConfig.cjs') module.exports = { ...base, diff --git a/fixtures/async-throttle/upgrade-snapshot/release.config.cjs b/fixtures/async-throttle/upgrade-snapshot/release.config.cjs index e0e62533..1b44bd99 100644 --- a/fixtures/async-throttle/upgrade-snapshot/release.config.cjs +++ b/fixtures/async-throttle/upgrade-snapshot/release.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ module.exports = { extends: [ require.resolve('@jcoreio/toolchain-semantic-release/release.config.cjs'), diff --git a/fixtures/async-throttle/upgrade-snapshot/test/clearConsole.js b/fixtures/async-throttle/upgrade-snapshot/test/clearConsole.js index 55376a47..be6ab8a8 100644 --- a/fixtures/async-throttle/upgrade-snapshot/test/clearConsole.js +++ b/fixtures/async-throttle/upgrade-snapshot/test/clearConsole.js @@ -1,5 +1,3 @@ -/* eslint-env node */ - if (process.argv.indexOf('--watch') >= 0) { before(() => process.stdout.write('\u001b[2J\u001b[1;1H\u001b[3J')) } diff --git a/fixtures/async-throttle/upgrade-snapshot/toolchain.config.cjs b/fixtures/async-throttle/upgrade-snapshot/toolchain.config.cjs index adf2e2c0..67f4ea00 100644 --- a/fixtures/async-throttle/upgrade-snapshot/toolchain.config.cjs +++ b/fixtures/async-throttle/upgrade-snapshot/toolchain.config.cjs @@ -1,4 +1,3 @@ -/* eslint-env node, es2018 */ module.exports = { cjsBabelEnv: { targets: { node: 16 } }, esmBabelEnv: { targets: { node: 16 } }, diff --git a/fixtures/find-cycle/init-snapshot/eslint.config.cjs b/fixtures/find-cycle/init-snapshot/eslint.config.cjs index ee7abba1..d340e0a0 100644 --- a/fixtures/find-cycle/init-snapshot/eslint.config.cjs +++ b/fixtures/find-cycle/init-snapshot/eslint.config.cjs @@ -20,4 +20,10 @@ module.exports = defineConfig([ }, }, }, + { + files: ['test/clearConsole.js'], + languageOptions: { + globals: globals.node, + }, + }, ]) diff --git a/fixtures/find-cycle/init-snapshot/test/clearConsole.js b/fixtures/find-cycle/init-snapshot/test/clearConsole.js index 76c7360d..21a2cad3 100644 --- a/fixtures/find-cycle/init-snapshot/test/clearConsole.js +++ b/fixtures/find-cycle/init-snapshot/test/clearConsole.js @@ -1,5 +1,3 @@ -/* eslint-env node */ - if (process.argv.indexOf('--watch') >= 0) { before(function () { process.stdout.write('\u001b[2J\u001b[1;1H\u001b[3J') diff --git a/fixtures/log4jcore/init-snapshot/eslint.config.cjs b/fixtures/log4jcore/init-snapshot/eslint.config.cjs index c35b300a..3bb44f2e 100644 --- a/fixtures/log4jcore/init-snapshot/eslint.config.cjs +++ b/fixtures/log4jcore/init-snapshot/eslint.config.cjs @@ -12,4 +12,10 @@ module.exports = defineConfig([ }, }, }, + { + files: ['test/clearConsole.js'], + languageOptions: { + globals: globals.node, + }, + }, ]) diff --git a/fixtures/log4jcore/init-snapshot/test/clearConsole.js b/fixtures/log4jcore/init-snapshot/test/clearConsole.js index ef0d7d30..459f3ea2 100644 --- a/fixtures/log4jcore/init-snapshot/test/clearConsole.js +++ b/fixtures/log4jcore/init-snapshot/test/clearConsole.js @@ -1,3 +1 @@ -/* eslint-env node */ - before(() => process.stdout.write('\u001b[2J\u001b[1;1H\u001b[3J')) diff --git a/package.json b/package.json index d31121be..0153de58 100644 --- a/package.json +++ b/package.json @@ -15,6 +15,7 @@ }, "homepage": "https://github.com/jcoreio/toolchains#readme", "devDependencies": { + "@babel/types": "^7.27.0", "@jcoreio/toolchain": "workspace:*", "@jcoreio/toolchain-circle": "workspace:*", "@jcoreio/toolchain-mocha": "workspace:*", diff --git a/packages/base/package.json b/packages/base/package.json index 752ab2a1..4b81f718 100644 --- a/packages/base/package.json +++ b/packages/base/package.json @@ -17,6 +17,7 @@ "@babel/generator": "^7.27.0", "@babel/parser": "^7.27.0", "@babel/template": "^7.27.0", + "@babel/traverse": "^7.26.4", "@babel/types": "^7.27.0", "@eslint/compat": "^1.2.8", "@eslint/js": "^9.23.0", diff --git a/packages/base/scripts/migrate/migrateEslintEnvComments.cjs b/packages/base/scripts/migrate/migrateEslintEnvComments.cjs index 6949194e..abd4323a 100644 --- a/packages/base/scripts/migrate/migrateEslintEnvComments.cjs +++ b/packages/base/scripts/migrate/migrateEslintEnvComments.cjs @@ -13,15 +13,17 @@ async function migrateEslintEnvComments({ fromVersion }) { const getBabelParseOpts = require('../../util/getBabelParseOpts.cjs') const chalk = require('chalk') const dedent = require('dedent-js') + const { parse } = require('@babel/parser') + /** env name -> array of paths from proj root to file */ + const envFileMap = new Map() const warnings = {} for (const file of await glob('**/*.{js,jsx,cjs,mjs,ts,cts,mts,tsx}')) { function warn(warning) { ;(warnings[file] || (warnings[file] = [])).push(warning) } - const { parse } = require('@babel/parser') - const source = await fs.readFile(file) + const source = await fs.readFile(file, 'utf8') let parsed try { parsed = parse(source, getBabelParseOpts(file)) @@ -38,9 +40,17 @@ async function migrateEslintEnvComments({ fromVersion }) { for (const comment of parsed.comments) { const { start, end, value } = comment const match = /^\s*eslint-env\s+(.*?)\s*$/.exec(value) - const envs = match ? match[1] : undefined + const envs = match ? match[1].split(/\s*,\s*/g) : undefined if (envs == null) continue replacements.push({ start, end, value: '' }) + + if (file.startsWith('src/') || file.startsWith('test/')) { + for (const env of envs) { + let group = envFileMap.get(env) + if (!group) envFileMap.set(env, (group = [])) + group.push(file) + } + } } if (!replacements.length) continue @@ -65,6 +75,44 @@ async function migrateEslintEnvComments({ fromVersion }) { ) } } + if (!envFileMap.size) return + + const t = require('@babel/types') + const addEslintConfigsCodemod = require('../../util/addEslintConfigsCodemod.cjs') + + const newConfigs = [...envFileMap].map(([env, files]) => + t.objectExpression([ + t.objectProperty( + t.identifier('files'), + t.arrayExpression(files.map((file) => t.stringLiteral(file))) + ), + t.objectProperty( + t.identifier('languageOptions'), + t.objectExpression([ + t.objectProperty( + t.identifier('globals'), + t.memberExpression( + t.identifier('globals'), + /^[_a-z$][_a-z0-9$]*$/.test(env) ? + t.identifier(env) + : t.stringLiteral(env) + ) + ), + ]) + ), + ]) + ) + + await fs.writeFile( + 'eslint.config.cjs', + await addEslintConfigsCodemod({ + file: 'eslint.config.cjs', + source: await fs.readFile('eslint.config.cjs', 'utf8'), + configs: newConfigs, + requireGlobals: true, + }), + 'utf8' + ) } module.exports = migrateEslintEnvComments diff --git a/packages/base/util/addEslintConfigsCodemod.cjs b/packages/base/util/addEslintConfigsCodemod.cjs new file mode 100644 index 00000000..d70fd403 --- /dev/null +++ b/packages/base/util/addEslintConfigsCodemod.cjs @@ -0,0 +1,73 @@ +const traverse = require('@babel/traverse').default +const { generate } = require('@babel/generator') +const { parse } = require('@babel/parser') +const getBabelParseOpts = require('./getBabelParseOpts.cjs') +const { format } = require('prettier') +const prettierConfig = require('../prettierConfig.cjs') +const replaceRanges = require('./replaceRanges.cjs') + +async function addEslintConfigsCodemod({ + file, + source, + configs, + requireGlobals, +}) { + const ast = parse(source, getBabelParseOpts(file)) + const replacements = [] + + let needsRequireGlobals = requireGlobals + + traverse(ast, { + VariableDeclarator(path) { + const { id, init } = path.node + if ( + id.type === 'Identifier' && + id.name === 'globals' && + init.type === 'CallExpression' && + init.callee.type === 'Identifier' && + init.callee.name === 'require' && + init.arguments.length === 1 && + init.arguments[0].type === 'StringLiteral' && + init.arguments[0].value === 'globals' + ) { + needsRequireGlobals = false + } + }, + CallExpression(path) { + const { callee, arguments: args } = path.node + const arg0 = args ? args[0] : undefined + if ( + callee.type !== 'Identifier' || + callee.name !== 'defineConfig' || + arg0 == null || + arg0.type !== 'ArrayExpression' + ) { + return + } + + const { start, end } = arg0 + const needsComma = !/,\s*\]\s*$/.test(source.substring(start, end)) + replacements.push({ + start: end - 1, + end: end - 1, + value: + (needsComma ? ',' : '') + + configs.map((config) => generate(config).code).join(','), + }) + }, + }) + + if (needsRequireGlobals) { + replacements.push({ + start: 0, + end: 0, + value: `const globals = require('globals')\n`, + }) + } + + return await format(replaceRanges(source, replacements), { + ...prettierConfig, + parser: 'babel', + }) +} +module.exports = addEslintConfigsCodemod diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 17413c22..e34a8052 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -12,6 +12,9 @@ importers: specifier: ^7.18.6 version: 7.26.10 devDependencies: + '@babel/types': + specifier: ^7.27.0 + version: 7.27.0 '@jcoreio/toolchain': specifier: workspace:* version: link:packages/base @@ -129,6 +132,9 @@ importers: '@babel/template': specifier: ^7.27.0 version: 7.27.0 + '@babel/traverse': + specifier: ^7.26.4 + version: 7.26.10 '@babel/types': specifier: ^7.27.0 version: 7.27.0 @@ -1227,10 +1233,6 @@ packages: resolution: {integrity: sha512-k8NuDrxr0WrPH5Aupqb2LCVURP/S0vBEn5mK6iH+GIYob66U5EtoZvcdudR2jQ4cmTwhEwW1DLB+Yyas9zjF6A==} engines: {node: '>=6.9.0'} - '@babel/types@7.26.10': - resolution: {integrity: sha512-emqcG3vHrpxUKTrxcblR36dcrcoRDvKmnL/dCL6ZsHaShW80qxCAcNhzQZrpeM765VzEos+xOi4s+r4IXzTwdQ==} - engines: {node: '>=6.9.0'} - '@babel/types@7.27.0': resolution: {integrity: sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg==} engines: {node: '>=6.9.0'} @@ -6383,7 +6385,7 @@ snapshots: '@babel/helper-module-imports': 7.25.9 '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.26.10) - '@babel/types': 7.26.10 + '@babel/types': 7.27.0 transitivePeerDependencies: - supports-color @@ -6629,11 +6631,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/types@7.26.10': - dependencies: - '@babel/helper-string-parser': 7.25.9 - '@babel/helper-validator-identifier': 7.25.9 - '@babel/types@7.27.0': dependencies: '@babel/helper-string-parser': 7.25.9 diff --git a/test/unit/addEslintConfigsCodemod.test.js b/test/unit/addEslintConfigsCodemod.test.js new file mode 100644 index 00000000..c1e599dc --- /dev/null +++ b/test/unit/addEslintConfigsCodemod.test.js @@ -0,0 +1,202 @@ +const dedent = require('dedent-js') + +const { describe, it } = require('mocha') +const { expect } = require('chai') +const t = require('@babel/types') +const addEslintConfigsCodemod = require('../../packages/base/util/addEslintConfigsCodemod.cjs') + +describe('addEslintConfigsCodemod', () => { + it(`works when it doesn't have to add globals`, async () => { + const source = dedent` + const { defineConfig, globalIgnores } = require('eslint/config') + const globals = require('globals') + + module.exports = defineConfig([ + ...require('@jcoreio/toolchain/eslintConfig.cjs'), + { + files: ['packages/**/*.{js,cjs,mjs}'], + languageOptions: { + globals: { + ...globals.node, + ...globals.es2018, + }, + }, + rules: { + '@jcoreio/implicit-dependencies/no-implicit': [ + 'error', + { + dev: false, + peer: true, + optional: true, + }, + ], + }, + }, + ]) + ` + + const newConfigs = [ + ['node', ['test/configure.ts', 'env/dev.cjs']], + ['es2018', ['.babelrc.cjs']], + ].map(([env, files]) => + t.objectExpression([ + t.objectProperty( + t.identifier('files'), + t.arrayExpression(files.map((file) => t.stringLiteral(file))) + ), + t.objectProperty( + t.identifier('languageOptions'), + t.objectExpression([ + t.objectProperty( + t.identifier('globals'), + t.memberExpression( + t.identifier('globals'), + /^[_a-z$][_a-z0-9$]*$/.test(env) ? + t.identifier(env) + : t.stringLiteral(env) + ) + ), + ]) + ), + ]) + ) + + const actual = await addEslintConfigsCodemod({ + filename: 'eslint.config.cjs', + source, + configs: newConfigs, + requireGlobals: true, + }) + expect(actual.trim()).to.equal( + dedent` + const { defineConfig, globalIgnores } = require('eslint/config') + const globals = require('globals') + + module.exports = defineConfig([ + ...require('@jcoreio/toolchain/eslintConfig.cjs'), + { + files: ['packages/**/*.{js,cjs,mjs}'], + languageOptions: { + globals: { + ...globals.node, + ...globals.es2018, + }, + }, + rules: { + '@jcoreio/implicit-dependencies/no-implicit': [ + 'error', + { + dev: false, + peer: true, + optional: true, + }, + ], + }, + }, + { + files: ['test/configure.ts', 'env/dev.cjs'], + languageOptions: { + globals: globals.node, + }, + }, + { + files: ['.babelrc.cjs'], + languageOptions: { + globals: globals.es2018, + }, + }, + ]) + `.trim() + ) + }) + it(`works when it has to add globals`, async () => { + const source = dedent` + const { defineConfig, globalIgnores } = require('eslint/config') + + module.exports = defineConfig([ + ...require('@jcoreio/toolchain/eslintConfig.cjs'), + { + files: ['packages/**/*.{js,cjs,mjs}'], + rules: { + '@jcoreio/implicit-dependencies/no-implicit': [ + 'error', + { + dev: false, + peer: true, + optional: true, + }, + ], + }, + } + ]) + ` + + const newConfigs = [ + ['node', ['test/configure.ts', 'env/dev.cjs']], + ['es2018', ['.babelrc.cjs']], + ].map(([env, files]) => + t.objectExpression([ + t.objectProperty( + t.identifier('files'), + t.arrayExpression(files.map((file) => t.stringLiteral(file))) + ), + t.objectProperty( + t.identifier('languageOptions'), + t.objectExpression([ + t.objectProperty( + t.identifier('globals'), + t.memberExpression( + t.identifier('globals'), + /^[_a-z$][_a-z0-9$]*$/.test(env) ? + t.identifier(env) + : t.stringLiteral(env) + ) + ), + ]) + ), + ]) + ) + + const actual = await addEslintConfigsCodemod({ + filename: 'eslint.config.cjs', + source, + configs: newConfigs, + requireGlobals: true, + }) + expect(actual.trim()).to.equal( + dedent` + const globals = require('globals') + const { defineConfig, globalIgnores } = require('eslint/config') + + module.exports = defineConfig([ + ...require('@jcoreio/toolchain/eslintConfig.cjs'), + { + files: ['packages/**/*.{js,cjs,mjs}'], + rules: { + '@jcoreio/implicit-dependencies/no-implicit': [ + 'error', + { + dev: false, + peer: true, + optional: true, + }, + ], + }, + }, + { + files: ['test/configure.ts', 'env/dev.cjs'], + languageOptions: { + globals: globals.node, + }, + }, + { + files: ['.babelrc.cjs'], + languageOptions: { + globals: globals.es2018, + }, + }, + ]) + `.trim() + ) + }) +}) From 134d5482f244186389d16826a2500c4669804760 Mon Sep 17 00:00:00 2001 From: Andy Edwards Date: Fri, 13 Feb 2026 17:27:21 -0600 Subject: [PATCH 4/4] chore: fix eslint error --- eslint.config.cjs | 1 + 1 file changed, 1 insertion(+) diff --git a/eslint.config.cjs b/eslint.config.cjs index c9843f88..6b45b8cf 100644 --- a/eslint.config.cjs +++ b/eslint.config.cjs @@ -10,6 +10,7 @@ module.exports = defineConfig([ { files: ['packages/**/*.{js,cjs,mjs}'], languageOptions: { + ecmaVersion: 2020, globals: { ...globals.node, ...globals.es2018,