From 0f2b68b52572a9c5f5034459d5c9ffb8bc088f4c Mon Sep 17 00:00:00 2001 From: Tom Selfin Date: Fri, 31 Oct 2025 19:44:46 +0200 Subject: [PATCH 01/43] update all dependencies to latest versions --- .eslintrc.js | 32 -- .eslintrc.json | 45 +++ eslint.config.mjs | 61 +++ package.json | 13 +- src/BlockMode.ts | 7 +- src/FileTree.ts | 1 - src/Installer.ts | 3 +- src/examples/suite/index.ts | 55 ++- src/test/suite/Selection.test.ts | 4 +- src/test/suite/index.ts | 47 +-- yarn.lock | 611 +++++++++++++++---------------- 11 files changed, 456 insertions(+), 423 deletions(-) delete mode 100644 .eslintrc.js create mode 100644 .eslintrc.json create mode 100644 eslint.config.mjs diff --git a/.eslintrc.js b/.eslintrc.js deleted file mode 100644 index 0ac19d0e..00000000 --- a/.eslintrc.js +++ /dev/null @@ -1,32 +0,0 @@ -module.exports = { - extends: [ - "eslint:recommended", - "plugin:@typescript-eslint/recommended", - "plugin:@typescript-eslint/recommended-requiring-type-checking", - "plugin:@typescript-eslint/strict", - ], - parser: "@typescript-eslint/parser", - parserOptions: { - ecmaVersion: 6, - sourceType: "module", - project: "tsconfig.json", - tsconfigRootDir: __dirname, - }, - plugins: ["@typescript-eslint"], - root: true, - rules: { - "@typescript-eslint/no-unused-vars": ["error", { argsIgnorePattern: "^_.*" }], - "@typescript-eslint/naming-convention": "warn", - "@typescript-eslint/semi": "warn", - "@typescript-eslint/consistent-type-definitions": ["error", "type"], - "curly": "warn", - "eqeqeq": "warn", - "no-throw-literal": "warn", - "semi": "off", - "@typescript-eslint/explicit-function-return-type": "warn", - "no-duplicate-imports": "warn", - "sort-imports": "warn", - "no-trailing-spaces": "warn", - }, - ignorePatterns: ["webview-ui/**", ".eslintrc.js"], -}; diff --git a/.eslintrc.json b/.eslintrc.json new file mode 100644 index 00000000..d921a30a --- /dev/null +++ b/.eslintrc.json @@ -0,0 +1,45 @@ +{ + "extends": [ + "eslint:recommended", + "plugin:@typescript-eslint/recommended", + "plugin:@typescript-eslint/recommended-requiring-type-checking", + "plugin:@typescript-eslint/strict" + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "ecmaVersion": 6, + "sourceType": "module", + "project": "tsconfig.json", + "tsconfigRootDir": "." + }, + "plugins": [ + "@typescript-eslint" + ], + "root": true, + "rules": { + "@typescript-eslint/no-unused-vars": [ + "error", + { + "argsIgnorePattern": "^_.*" + } + ], + "@typescript-eslint/naming-convention": "warn", + "@typescript-eslint/semi": "warn", + "@typescript-eslint/consistent-type-definitions": [ + "error", + "type" + ], + "curly": "warn", + "eqeqeq": "warn", + "no-throw-literal": "warn", + "semi": "off", + "@typescript-eslint/explicit-function-return-type": "warn", + "no-duplicate-imports": "warn", + "sort-imports": "warn", + "no-trailing-spaces": "warn" + }, + "ignorePatterns": [ + "webview-ui/**", + ".eslintrc.js" + ] +} \ No newline at end of file diff --git a/eslint.config.mjs b/eslint.config.mjs new file mode 100644 index 00000000..80474f07 --- /dev/null +++ b/eslint.config.mjs @@ -0,0 +1,61 @@ +import { defineConfig, globalIgnores } from "eslint/config"; +import typescriptEslint from "@typescript-eslint/eslint-plugin"; +import tsParser from "@typescript-eslint/parser"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; +import js from "@eslint/js"; +import { FlatCompat } from "@eslint/eslintrc"; + +const __filename = fileURLToPath(import.meta.url); +const __dirname = path.dirname(__filename); +const compat = new FlatCompat({ + baseDirectory: __dirname, + recommendedConfig: js.configs.recommended, + allConfig: js.configs.all, +}); + +export default defineConfig([ + globalIgnores(["webview-ui/**/*", "**/.eslintrc.js"]), + { + extends: compat.extends( + "eslint:recommended", + "plugin:@typescript-eslint/recommended", + "plugin:@typescript-eslint/recommended-requiring-type-checking", + "plugin:@typescript-eslint/strict" + ), + + plugins: { + "@typescript-eslint": typescriptEslint, + }, + + languageOptions: { + parser: tsParser, + ecmaVersion: 2022, + sourceType: "commonjs", + + parserOptions: { + project: "tsconfig.json", + tsconfigRootDir: __dirname, + }, + }, + + rules: { + "@typescript-eslint/no-unused-vars": [ + "error", + { + argsIgnorePattern: "^_.*", + }, + ], + + "@typescript-eslint/naming-convention": "warn", + "@typescript-eslint/consistent-type-definitions": ["error", "type"], + "curly": "warn", + "eqeqeq": "warn", + "no-throw-literal": "warn", + "@typescript-eslint/explicit-function-return-type": "warn", + "no-duplicate-imports": "warn", + "sort-imports": "warn", + "no-trailing-spaces": "warn", + }, + }, +]); diff --git a/package.json b/package.json index 7874cf81..43f79cf4 100644 --- a/package.json +++ b/package.json @@ -368,21 +368,22 @@ }, "devDependencies": { "@types/chai": "5.2.3", - "@types/glob": "8.0.1", + "@types/glob": "8.1.0", "@types/mocha": "10.0.10", "@types/node": "24.9.2", "@types/tar": "6.1.13", "@types/vscode": "1.105.0", "@types/which": "3.0.4", - "@typescript-eslint/eslint-plugin": "^5.49.0", - "@typescript-eslint/parser": "^5.49.0", + "@typescript-eslint/eslint-plugin": "8.46.2", + "@typescript-eslint/parser": "8.46.2", "@vscode/test-electron": "2.5.2", "chai": "6.2.0", "esbuild": "0.25.11", - "eslint": "^8.44.0", - "glob": "8.1.0", + "eslint": "9.38.0", + "glob": "11.0.3", "mocha": "11.7.4", - "typescript": "5.9.3" + "typescript": "5.9.3", + "typescript-eslint": "8.46.2" }, "dependencies": { "tar": "7.5.2", diff --git a/src/BlockMode.ts b/src/BlockMode.ts index 7d7b545e..37521bf1 100644 --- a/src/BlockMode.ts +++ b/src/BlockMode.ts @@ -390,7 +390,12 @@ export function activate(): vscode.Disposable[] { await vscode.commands.executeCommand("setContext", "codeBlocks.blockMode", active); }), blockModeActive.onDidChange((active) => { - active ? statusBar.show() : statusBar.hide(); + if (active) { + statusBar.show(); + } else { + statusBar.hide(); + } + resetDecorations(); if (vscode.window.activeTextEditor !== undefined) { diff --git a/src/FileTree.ts b/src/FileTree.ts index b65e0912..d3db0e77 100644 --- a/src/FileTree.ts +++ b/src/FileTree.ts @@ -78,7 +78,6 @@ export class FileTree implements vscode.Disposable { logger.log( `Setting language for parser, language !== undefined = ${JSON.stringify( // sanity check - // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition language !== undefined )}` ); diff --git a/src/Installer.ts b/src/Installer.ts index 13d14cb0..f25e92e6 100644 --- a/src/Installer.ts +++ b/src/Installer.ts @@ -43,8 +43,7 @@ export function loadParser( // make sure to test well on windows before changing this // TODO(02/11/24): change to dynamic import // let { default: language } = (await import(bindingsDir)) as { default: Language }; - - // eslint-disable-next-line @typescript-eslint/no-var-requires + // eslint-disable-next-line @typescript-eslint/no-require-imports let language = require(bindingsDir) as Language; logger.log(`Got language: ${JSON.stringify(Object.keys(language))}`); diff --git a/src/examples/suite/index.ts b/src/examples/suite/index.ts index 393c55f4..5c5059e1 100644 --- a/src/examples/suite/index.ts +++ b/src/examples/suite/index.ts @@ -1,48 +1,39 @@ import * as path from "path"; import Mocha from "mocha"; -import glob from "glob"; +import { glob } from "glob"; // ✅ named import for v10+ -export function run(): Promise { - if (process.env.EXAMPLE === undefined) { +export async function run(): Promise { + let example = process.env.EXAMPLE; + if (example === undefined) { console.log("@".repeat(1000)); console.error("No example file specified, set EXAMPLE environ found"); process.exit(1); } // change extension to .js - let example = process.env.EXAMPLE; - example = example.substring(0, example.length - 2) + "js"; - - // Create the mocha test - const mocha = new Mocha({ - ui: "tdd", - color: true, - }); + example = example.slice(0, -2) + "js"; + const mocha = new Mocha({ ui: "tdd", color: true }); const testsRoot = path.resolve(__dirname, ".."); - return new Promise((c, e) => { - glob(`suite/${example}`, { cwd: testsRoot }, (err, files) => { - if (err) { - return e(err); - } + try { + const files = await glob(`suite/${example}`, { cwd: testsRoot }); - // Add files to the test suite - files.forEach((f) => mocha.addFile(path.resolve(testsRoot, f))); + // Add files to the test suite + files.forEach((f) => mocha.addFile(path.resolve(testsRoot, f))); - try { - // Run the mocha test - mocha.run((failures) => { - if (failures > 0) { - e(new Error(`${failures} tests failed.`)); - } else { - c(); - } - }); - } catch (err) { - console.error(err); - e(err); - } + await new Promise((resolve, reject) => { + // Run the mocha test + mocha.run((failures) => { + if (failures > 0) { + reject(new Error(`${failures} tests failed.`)); + } else { + resolve(); + } + }); }); - }); + } catch (err) { + console.error(err); + throw err; + } } diff --git a/src/test/suite/Selection.test.ts b/src/test/suite/Selection.test.ts index df477b8a..760c74c0 100644 --- a/src/test/suite/Selection.test.ts +++ b/src/test/suite/Selection.test.ts @@ -32,7 +32,7 @@ suite("Selection", function () { suite(".update", function () { test("Select source_file node is undefined", async () => { - expect(await selectionAt("rust", "fn main() { }@")).to.be.undefined; + expect(await selectionAt("rust", "fn main() { }@")).to.equal(undefined); }); test("Update selection parent/child", async () => { @@ -59,7 +59,7 @@ suite("Selection", function () { }); test("Select source_file node is undefined", async () => { - expect(await selectionAt("typescriptreact", "function main() { }@")).to.be.undefined; + expect(await selectionAt("typescriptreact", "function main() { }@")).to.equal(undefined); }); test("Update selection parent/child", async () => { diff --git a/src/test/suite/index.ts b/src/test/suite/index.ts index e18f884d..7b591fab 100644 --- a/src/test/suite/index.ts +++ b/src/test/suite/index.ts @@ -1,41 +1,28 @@ import * as path from "path"; import Mocha from "mocha"; -import glob from "glob"; +import { glob } from "glob"; export async function run(): Promise { - // Create the mocha test - const mocha = new Mocha({ - ui: "tdd", - color: true, - bail: false, - }); - + const mocha = new Mocha({ ui: "tdd", color: true, bail: false }); const testsRoot = path.resolve(__dirname, ".."); - return new Promise((c, e) => { - glob.glob("**/**.test.js", { cwd: testsRoot }, (err, files) => { - if (err) { - return e(err); - } + try { + const files = await glob("**/**.test.js", { cwd: testsRoot }); - // Add files to the test suite - files.forEach((f) => mocha.addFile(path.resolve(testsRoot, f))); + files.forEach((f) => mocha.addFile(path.resolve(testsRoot, f))); - try { - // Run the mocha test - mocha.run((failures) => { - if (failures > 0) { - // eslint-disable-next-line @typescript-eslint/restrict-template-expressions - e(new Error(`${failures} tests failed.`)); - } else { - c(); - } - }); - } catch (err) { - console.error(err); - e(err); - } + await new Promise((resolve, reject) => { + mocha.run((failures) => { + if (failures > 0) { + reject(new Error(`${failures} tests failed.`)); + } else { + resolve(); + } + }); }); - }); + } catch (err) { + console.error(err); + throw err; + } } diff --git a/yarn.lock b/yarn.lock index 55f048d5..c3390ed7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -132,56 +132,115 @@ resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.25.11.tgz#5ecda6f3fe138b7e456f4e429edde33c823f392f" integrity sha512-D7Hpz6A2L4hzsRpPaCYkQnGOotdUpDzSGRIv9I+1ITdHROSFUWW95ZPZWQmGka1Fg7W3zFJowyn9WGwMJ0+KPA== -"@eslint-community/eslint-utils@^4.2.0": +"@eslint-community/eslint-utils@^4.7.0", "@eslint-community/eslint-utils@^4.8.0": version "4.9.0" resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.9.0.tgz#7308df158e064f0dd8b8fdb58aa14fa2a7f913b3" integrity sha512-ayVFHdtZ+hsq1t2Dy24wCmGXGe4q9Gu3smhLYALJrr473ZH27MsnSL+LKUlimp4BWJqMDMLmPpx/Q9R3OAlL4g== dependencies: eslint-visitor-keys "^3.4.3" -"@eslint-community/regexpp@^4.4.0", "@eslint-community/regexpp@^4.6.1": +"@eslint-community/regexpp@^4.10.0", "@eslint-community/regexpp@^4.12.1": version "4.12.2" resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.12.2.tgz#bccdf615bcf7b6e8db830ec0b8d21c9a25de597b" integrity sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew== -"@eslint/eslintrc@^2.1.4": - version "2.1.4" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-2.1.4.tgz#388a269f0f25c1b6adc317b5a2c55714894c70ad" - integrity sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ== +"@eslint/config-array@^0.21.1": + version "0.21.1" + resolved "https://registry.yarnpkg.com/@eslint/config-array/-/config-array-0.21.1.tgz#7d1b0060fea407f8301e932492ba8c18aff29713" + integrity sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA== + dependencies: + "@eslint/object-schema" "^2.1.7" + debug "^4.3.1" + minimatch "^3.1.2" + +"@eslint/config-helpers@^0.4.1": + version "0.4.2" + resolved "https://registry.yarnpkg.com/@eslint/config-helpers/-/config-helpers-0.4.2.tgz#1bd006ceeb7e2e55b2b773ab318d300e1a66aeda" + integrity sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw== + dependencies: + "@eslint/core" "^0.17.0" + +"@eslint/core@^0.16.0": + version "0.16.0" + resolved "https://registry.yarnpkg.com/@eslint/core/-/core-0.16.0.tgz#490254f275ba9667ddbab344f4f0a6b7a7bd7209" + integrity sha512-nmC8/totwobIiFcGkDza3GIKfAw1+hLiYVrh3I1nIomQ8PEr5cxg34jnkmGawul/ep52wGRAcyeDCNtWKSOj4Q== + dependencies: + "@types/json-schema" "^7.0.15" + +"@eslint/core@^0.17.0": + version "0.17.0" + resolved "https://registry.yarnpkg.com/@eslint/core/-/core-0.17.0.tgz#77225820413d9617509da9342190a2019e78761c" + integrity sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ== + dependencies: + "@types/json-schema" "^7.0.15" + +"@eslint/eslintrc@^3.3.1": + version "3.3.1" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-3.3.1.tgz#e55f7f1dd400600dd066dbba349c4c0bac916964" + integrity sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ== dependencies: ajv "^6.12.4" debug "^4.3.2" - espree "^9.6.0" - globals "^13.19.0" + espree "^10.0.1" + globals "^14.0.0" ignore "^5.2.0" import-fresh "^3.2.1" js-yaml "^4.1.0" minimatch "^3.1.2" strip-json-comments "^3.1.1" -"@eslint/js@8.57.1": - version "8.57.1" - resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.57.1.tgz#de633db3ec2ef6a3c89e2f19038063e8a122e2c2" - integrity sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q== +"@eslint/js@9.38.0": + version "9.38.0" + resolved "https://registry.yarnpkg.com/@eslint/js/-/js-9.38.0.tgz#f7aa9c7577577f53302c1d795643589d7709ebd1" + integrity sha512-UZ1VpFvXf9J06YG9xQBdnzU+kthors6KjhMAl6f4gH4usHyh31rUf2DLGInT8RFYIReYXNSydgPY0V2LuWgl7A== -"@humanwhocodes/config-array@^0.13.0": - version "0.13.0" - resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.13.0.tgz#fb907624df3256d04b9aa2df50d7aa97ec648748" - integrity sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw== +"@eslint/object-schema@^2.1.7": + version "2.1.7" + resolved "https://registry.yarnpkg.com/@eslint/object-schema/-/object-schema-2.1.7.tgz#6e2126a1347e86a4dedf8706ec67ff8e107ebbad" + integrity sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA== + +"@eslint/plugin-kit@^0.4.0": + version "0.4.1" + resolved "https://registry.yarnpkg.com/@eslint/plugin-kit/-/plugin-kit-0.4.1.tgz#9779e3fd9b7ee33571a57435cf4335a1794a6cb2" + integrity sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA== dependencies: - "@humanwhocodes/object-schema" "^2.0.3" - debug "^4.3.1" - minimatch "^3.0.5" + "@eslint/core" "^0.17.0" + levn "^0.4.1" + +"@humanfs/core@^0.19.1": + version "0.19.1" + resolved "https://registry.yarnpkg.com/@humanfs/core/-/core-0.19.1.tgz#17c55ca7d426733fe3c561906b8173c336b40a77" + integrity sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA== + +"@humanfs/node@^0.16.6": + version "0.16.7" + resolved "https://registry.yarnpkg.com/@humanfs/node/-/node-0.16.7.tgz#822cb7b3a12c5a240a24f621b5a2413e27a45f26" + integrity sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ== + dependencies: + "@humanfs/core" "^0.19.1" + "@humanwhocodes/retry" "^0.4.0" "@humanwhocodes/module-importer@^1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c" integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA== -"@humanwhocodes/object-schema@^2.0.3": - version "2.0.3" - resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz#4a2868d75d6d6963e423bcf90b7fd1be343409d3" - integrity sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA== +"@humanwhocodes/retry@^0.4.0", "@humanwhocodes/retry@^0.4.2": + version "0.4.3" + resolved "https://registry.yarnpkg.com/@humanwhocodes/retry/-/retry-0.4.3.tgz#c2b9d2e374ee62c586d3adbea87199b1d7a7a6ba" + integrity sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ== + +"@isaacs/balanced-match@^4.0.1": + version "4.0.1" + resolved "https://registry.yarnpkg.com/@isaacs/balanced-match/-/balanced-match-4.0.1.tgz#3081dadbc3460661b751e7591d7faea5df39dd29" + integrity sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ== + +"@isaacs/brace-expansion@^5.0.0": + version "5.0.0" + resolved "https://registry.yarnpkg.com/@isaacs/brace-expansion/-/brace-expansion-5.0.0.tgz#4b3dabab7d8e75a429414a96bd67bf4c1d13e0f3" + integrity sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA== + dependencies: + "@isaacs/balanced-match" "^4.0.1" "@isaacs/cliui@^8.0.2": version "8.0.2" @@ -215,7 +274,7 @@ resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== -"@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8": +"@nodelib/fs.walk@^1.2.3": version "1.2.8" resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== @@ -241,15 +300,20 @@ resolved "https://registry.yarnpkg.com/@types/deep-eql/-/deep-eql-4.0.2.tgz#334311971d3a07121e7eb91b684a605e7eea9cbd" integrity sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw== -"@types/glob@8.0.1": - version "8.0.1" - resolved "https://registry.yarnpkg.com/@types/glob/-/glob-8.0.1.tgz#6e3041640148b7764adf21ce5c7138ad454725b0" - integrity sha512-8bVUjXZvJacUFkJXHdyZ9iH1Eaj5V7I8c4NdH5sQJsdXkqT4CA5Dhb4yb4VE/3asyx4L9ayZr1NIhTsWHczmMw== +"@types/estree@^1.0.6": + version "1.0.8" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.8.tgz#958b91c991b1867ced318bedea0e215ee050726e" + integrity sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w== + +"@types/glob@8.1.0": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@types/glob/-/glob-8.1.0.tgz#b63e70155391b0584dce44e7ea25190bbc38f2fc" + integrity sha512-IO+MJPVhoqz+28h1qLAcBEH2+xHMK6MTyHJc7MTnnYb6wsoLR29POVGJ7LycmVXIqyy/4/2ShP5sUwTXuOwb/w== dependencies: "@types/minimatch" "^5.1.2" "@types/node" "*" -"@types/json-schema@^7.0.9": +"@types/json-schema@^7.0.15": version "7.0.15" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== @@ -271,11 +335,6 @@ dependencies: undici-types "~7.16.0" -"@types/semver@^7.3.12": - version "7.7.1" - resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.7.1.tgz#3ce3af1a5524ef327d2da9e4fd8b6d95c8d70528" - integrity sha512-FmgJfu+MOcQ370SD0ev7EI8TlCAfKYU+B4m5T3yXc1CiRN94g/SZPtsCkk506aUDtlMnFZvasDwHHUcZUEaYuA== - "@types/tar@6.1.13": version "6.1.13" resolved "https://registry.yarnpkg.com/@types/tar/-/tar-6.1.13.tgz#9b5801c02175344101b4b91086ab2bbc8e93a9b6" @@ -294,94 +353,103 @@ resolved "https://registry.yarnpkg.com/@types/which/-/which-3.0.4.tgz#2c3a89be70c56a84a6957a7264639f39ae4340a1" integrity sha512-liyfuo/106JdlgSchJzXEQCVArk0CvevqPote8F8HgWgJ3dRCcTHgJIsLDuee0kxk/mhbInzIZk3QWSZJ8R+2w== -"@typescript-eslint/eslint-plugin@^5.49.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz#aeef0328d172b9e37d9bab6dbc13b87ed88977db" - integrity sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag== +"@typescript-eslint/eslint-plugin@8.46.2": + version "8.46.2" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.46.2.tgz#dc4ab93ee3d7e6c8e38820a0d6c7c93c7183e2dc" + integrity sha512-ZGBMToy857/NIPaaCucIUQgqueOiq7HeAKkhlvqVV4lm089zUFW6ikRySx2v+cAhKeUCPuWVHeimyk6Dw1iY3w== dependencies: - "@eslint-community/regexpp" "^4.4.0" - "@typescript-eslint/scope-manager" "5.62.0" - "@typescript-eslint/type-utils" "5.62.0" - "@typescript-eslint/utils" "5.62.0" - debug "^4.3.4" + "@eslint-community/regexpp" "^4.10.0" + "@typescript-eslint/scope-manager" "8.46.2" + "@typescript-eslint/type-utils" "8.46.2" + "@typescript-eslint/utils" "8.46.2" + "@typescript-eslint/visitor-keys" "8.46.2" graphemer "^1.4.0" - ignore "^5.2.0" - natural-compare-lite "^1.4.0" - semver "^7.3.7" - tsutils "^3.21.0" - -"@typescript-eslint/parser@^5.49.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.62.0.tgz#1b63d082d849a2fcae8a569248fbe2ee1b8a56c7" - integrity sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA== - dependencies: - "@typescript-eslint/scope-manager" "5.62.0" - "@typescript-eslint/types" "5.62.0" - "@typescript-eslint/typescript-estree" "5.62.0" - debug "^4.3.4" + ignore "^7.0.0" + natural-compare "^1.4.0" + ts-api-utils "^2.1.0" -"@typescript-eslint/scope-manager@5.62.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz#d9457ccc6a0b8d6b37d0eb252a23022478c5460c" - integrity sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w== +"@typescript-eslint/parser@8.46.2": + version "8.46.2" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-8.46.2.tgz#dd938d45d581ac8ffa9d8a418a50282b306f7ebf" + integrity sha512-BnOroVl1SgrPLywqxyqdJ4l3S2MsKVLDVxZvjI1Eoe8ev2r3kGDo+PcMihNmDE+6/KjkTubSJnmqGZZjQSBq/g== dependencies: - "@typescript-eslint/types" "5.62.0" - "@typescript-eslint/visitor-keys" "5.62.0" + "@typescript-eslint/scope-manager" "8.46.2" + "@typescript-eslint/types" "8.46.2" + "@typescript-eslint/typescript-estree" "8.46.2" + "@typescript-eslint/visitor-keys" "8.46.2" + debug "^4.3.4" -"@typescript-eslint/type-utils@5.62.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz#286f0389c41681376cdad96b309cedd17d70346a" - integrity sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew== +"@typescript-eslint/project-service@8.46.2": + version "8.46.2" + resolved "https://registry.yarnpkg.com/@typescript-eslint/project-service/-/project-service-8.46.2.tgz#ab2f02a0de4da6a7eeb885af5e059be57819d608" + integrity sha512-PULOLZ9iqwI7hXcmL4fVfIsBi6AN9YxRc0frbvmg8f+4hQAjQ5GYNKK0DIArNo+rOKmR/iBYwkpBmnIwin4wBg== dependencies: - "@typescript-eslint/typescript-estree" "5.62.0" - "@typescript-eslint/utils" "5.62.0" + "@typescript-eslint/tsconfig-utils" "^8.46.2" + "@typescript-eslint/types" "^8.46.2" debug "^4.3.4" - tsutils "^3.21.0" -"@typescript-eslint/types@5.62.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.62.0.tgz#258607e60effa309f067608931c3df6fed41fd2f" - integrity sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ== +"@typescript-eslint/scope-manager@8.46.2": + version "8.46.2" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.46.2.tgz#7d37df2493c404450589acb3b5d0c69cc0670a88" + integrity sha512-LF4b/NmGvdWEHD2H4MsHD8ny6JpiVNDzrSZr3CsckEgCbAGZbYM4Cqxvi9L+WqDMT+51Ozy7lt2M+d0JLEuBqA== + dependencies: + "@typescript-eslint/types" "8.46.2" + "@typescript-eslint/visitor-keys" "8.46.2" + +"@typescript-eslint/tsconfig-utils@8.46.2", "@typescript-eslint/tsconfig-utils@^8.46.2": + version "8.46.2" + resolved "https://registry.yarnpkg.com/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.46.2.tgz#d110451cb93bbd189865206ea37ef677c196828c" + integrity sha512-a7QH6fw4S57+F5y2FIxxSDyi5M4UfGF+Jl1bCGd7+L4KsaUY80GsiF/t0UoRFDHAguKlBaACWJRmdrc6Xfkkag== -"@typescript-eslint/typescript-estree@5.62.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz#7d17794b77fabcac615d6a48fb143330d962eb9b" - integrity sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA== +"@typescript-eslint/type-utils@8.46.2": + version "8.46.2" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.46.2.tgz#802d027864e6fb752e65425ed09f3e089fb4d384" + integrity sha512-HbPM4LbaAAt/DjxXaG9yiS9brOOz6fabal4uvUmaUYe6l3K1phQDMQKBRUrr06BQkxkvIZVVHttqiybM9nJsLA== dependencies: - "@typescript-eslint/types" "5.62.0" - "@typescript-eslint/visitor-keys" "5.62.0" + "@typescript-eslint/types" "8.46.2" + "@typescript-eslint/typescript-estree" "8.46.2" + "@typescript-eslint/utils" "8.46.2" debug "^4.3.4" - globby "^11.1.0" + ts-api-utils "^2.1.0" + +"@typescript-eslint/types@8.46.2", "@typescript-eslint/types@^8.46.2": + version "8.46.2" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.46.2.tgz#2bad7348511b31e6e42579820e62b73145635763" + integrity sha512-lNCWCbq7rpg7qDsQrd3D6NyWYu+gkTENkG5IKYhUIcxSb59SQC/hEQ+MrG4sTgBVghTonNWq42bA/d4yYumldQ== + +"@typescript-eslint/typescript-estree@8.46.2": + version "8.46.2" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.46.2.tgz#ab547a27e4222bb6a3281cb7e98705272e2c7d08" + integrity sha512-f7rW7LJ2b7Uh2EiQ+7sza6RDZnajbNbemn54Ob6fRwQbgcIn+GWfyuHDHRYgRoZu1P4AayVScrRW+YfbTvPQoQ== + dependencies: + "@typescript-eslint/project-service" "8.46.2" + "@typescript-eslint/tsconfig-utils" "8.46.2" + "@typescript-eslint/types" "8.46.2" + "@typescript-eslint/visitor-keys" "8.46.2" + debug "^4.3.4" + fast-glob "^3.3.2" is-glob "^4.0.3" - semver "^7.3.7" - tsutils "^3.21.0" - -"@typescript-eslint/utils@5.62.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.62.0.tgz#141e809c71636e4a75daa39faed2fb5f4b10df86" - integrity sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ== - dependencies: - "@eslint-community/eslint-utils" "^4.2.0" - "@types/json-schema" "^7.0.9" - "@types/semver" "^7.3.12" - "@typescript-eslint/scope-manager" "5.62.0" - "@typescript-eslint/types" "5.62.0" - "@typescript-eslint/typescript-estree" "5.62.0" - eslint-scope "^5.1.1" - semver "^7.3.7" - -"@typescript-eslint/visitor-keys@5.62.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz#2174011917ce582875954ffe2f6912d5931e353e" - integrity sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw== - dependencies: - "@typescript-eslint/types" "5.62.0" - eslint-visitor-keys "^3.3.0" - -"@ungap/structured-clone@^1.2.0": - version "1.3.0" - resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.3.0.tgz#d06bbb384ebcf6c505fde1c3d0ed4ddffe0aaff8" - integrity sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g== + minimatch "^9.0.4" + semver "^7.6.0" + ts-api-utils "^2.1.0" + +"@typescript-eslint/utils@8.46.2": + version "8.46.2" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.46.2.tgz#b313d33d67f9918583af205bd7bcebf20f231732" + integrity sha512-sExxzucx0Tud5tE0XqR0lT0psBQvEpnpiul9XbGUB1QwpWJJAps1O/Z7hJxLGiZLBKMCutjTzDgmd1muEhBnVg== + dependencies: + "@eslint-community/eslint-utils" "^4.7.0" + "@typescript-eslint/scope-manager" "8.46.2" + "@typescript-eslint/types" "8.46.2" + "@typescript-eslint/typescript-estree" "8.46.2" + +"@typescript-eslint/visitor-keys@8.46.2": + version "8.46.2" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.46.2.tgz#803fa298948c39acf810af21bdce6f8babfa9738" + integrity sha512-tUFMXI4gxzzMXt4xpGJEsBsTox0XbNQ1y94EwlD/CuZwFcQP79xfQqMhau9HsRc/J0cAPA/HZt1dZPtGn9V/7w== + dependencies: + "@typescript-eslint/types" "8.46.2" + eslint-visitor-keys "^4.2.1" "@vscode/test-electron@2.5.2": version "2.5.2" @@ -399,7 +467,7 @@ acorn-jsx@^5.3.2: resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== -acorn@^8.9.0: +acorn@^8.15.0: version "8.15.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.15.0.tgz#a360898bc415edaac46c8241f6383975b930b816" integrity sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg== @@ -446,11 +514,6 @@ argparse@^2.0.1: resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== -array-union@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" - integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== - assertion-error@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-2.0.1.tgz#f641a196b335690b1070bf00b6e7593fec190bf7" @@ -571,7 +634,7 @@ core-util-is@~1.0.0: resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== -cross-spawn@^7.0.2, cross-spawn@^7.0.6: +cross-spawn@^7.0.6: version "7.0.6" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f" integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA== @@ -602,20 +665,6 @@ diff@^7.0.0: resolved "https://registry.yarnpkg.com/diff/-/diff-7.0.0.tgz#3fb34d387cd76d803f6eebea67b921dab0182a9a" integrity sha512-PJWHUb1RFevKCwaFA9RlG5tCd+FO5iRh9A8HEtkmBH2Li03iJriB6m6JIN4rGz3K3JLawI7/veA1xzRKP6ISBw== -dir-glob@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" - integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== - dependencies: - path-type "^4.0.0" - -doctrine@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" - integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== - dependencies: - esutils "^2.0.2" - eastasianwidth@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" @@ -678,81 +727,74 @@ escape-string-regexp@^4.0.0: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== -eslint-scope@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" - integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== - dependencies: - esrecurse "^4.3.0" - estraverse "^4.1.1" - -eslint-scope@^7.2.2: - version "7.2.2" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.2.2.tgz#deb4f92563390f32006894af62a22dba1c46423f" - integrity sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg== +eslint-scope@^8.4.0: + version "8.4.0" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-8.4.0.tgz#88e646a207fad61436ffa39eb505147200655c82" + integrity sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg== dependencies: esrecurse "^4.3.0" estraverse "^5.2.0" -eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4.3: +eslint-visitor-keys@^3.4.3: version "3.4.3" resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== -eslint@^8.44.0: - version "8.57.1" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.57.1.tgz#7df109654aba7e3bbe5c8eae533c5e461d3c6ca9" - integrity sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA== - dependencies: - "@eslint-community/eslint-utils" "^4.2.0" - "@eslint-community/regexpp" "^4.6.1" - "@eslint/eslintrc" "^2.1.4" - "@eslint/js" "8.57.1" - "@humanwhocodes/config-array" "^0.13.0" +eslint-visitor-keys@^4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz#4cfea60fe7dd0ad8e816e1ed026c1d5251b512c1" + integrity sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ== + +eslint@9.38.0: + version "9.38.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-9.38.0.tgz#3957d2af804e5cf6cc503c618f60acc71acb2e7e" + integrity sha512-t5aPOpmtJcZcz5UJyY2GbvpDlsK5E8JqRqoKtfiKE3cNh437KIqfJr3A3AKf5k64NPx6d0G3dno6XDY05PqPtw== + dependencies: + "@eslint-community/eslint-utils" "^4.8.0" + "@eslint-community/regexpp" "^4.12.1" + "@eslint/config-array" "^0.21.1" + "@eslint/config-helpers" "^0.4.1" + "@eslint/core" "^0.16.0" + "@eslint/eslintrc" "^3.3.1" + "@eslint/js" "9.38.0" + "@eslint/plugin-kit" "^0.4.0" + "@humanfs/node" "^0.16.6" "@humanwhocodes/module-importer" "^1.0.1" - "@nodelib/fs.walk" "^1.2.8" - "@ungap/structured-clone" "^1.2.0" + "@humanwhocodes/retry" "^0.4.2" + "@types/estree" "^1.0.6" ajv "^6.12.4" chalk "^4.0.0" - cross-spawn "^7.0.2" + cross-spawn "^7.0.6" debug "^4.3.2" - doctrine "^3.0.0" escape-string-regexp "^4.0.0" - eslint-scope "^7.2.2" - eslint-visitor-keys "^3.4.3" - espree "^9.6.1" - esquery "^1.4.2" + eslint-scope "^8.4.0" + eslint-visitor-keys "^4.2.1" + espree "^10.4.0" + esquery "^1.5.0" esutils "^2.0.2" fast-deep-equal "^3.1.3" - file-entry-cache "^6.0.1" + file-entry-cache "^8.0.0" find-up "^5.0.0" glob-parent "^6.0.2" - globals "^13.19.0" - graphemer "^1.4.0" ignore "^5.2.0" imurmurhash "^0.1.4" is-glob "^4.0.0" - is-path-inside "^3.0.3" - js-yaml "^4.1.0" json-stable-stringify-without-jsonify "^1.0.1" - levn "^0.4.1" lodash.merge "^4.6.2" minimatch "^3.1.2" natural-compare "^1.4.0" optionator "^0.9.3" - strip-ansi "^6.0.1" - text-table "^0.2.0" -espree@^9.6.0, espree@^9.6.1: - version "9.6.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-9.6.1.tgz#a2a17b8e434690a5432f2f8018ce71d331a48c6f" - integrity sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ== +espree@^10.0.1, espree@^10.4.0: + version "10.4.0" + resolved "https://registry.yarnpkg.com/espree/-/espree-10.4.0.tgz#d54f4949d4629005a1fa168d937c3ff1f7e2a837" + integrity sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ== dependencies: - acorn "^8.9.0" + acorn "^8.15.0" acorn-jsx "^5.3.2" - eslint-visitor-keys "^3.4.1" + eslint-visitor-keys "^4.2.1" -esquery@^1.4.2: +esquery@^1.5.0: version "1.6.0" resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.6.0.tgz#91419234f804d852a82dceec3e16cdc22cf9dae7" integrity sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg== @@ -766,11 +808,6 @@ esrecurse@^4.3.0: dependencies: estraverse "^5.2.0" -estraverse@^4.1.1: - version "4.3.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" - integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== - estraverse@^5.1.0, estraverse@^5.2.0: version "5.3.0" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" @@ -786,7 +823,7 @@ fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== -fast-glob@^3.2.9: +fast-glob@^3.3.2: version "3.3.3" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.3.tgz#d06d585ce8dba90a16b0505c543c3ccfb3aeb818" integrity sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg== @@ -814,12 +851,12 @@ fastq@^1.6.0: dependencies: reusify "^1.0.4" -file-entry-cache@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" - integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== +file-entry-cache@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-8.0.0.tgz#7787bddcf1131bffb92636c69457bbc0edd6d81f" + integrity sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ== dependencies: - flat-cache "^3.0.4" + flat-cache "^4.0.0" fill-range@^7.1.1: version "7.1.1" @@ -836,14 +873,13 @@ find-up@^5.0.0: locate-path "^6.0.0" path-exists "^4.0.0" -flat-cache@^3.0.4: - version "3.2.0" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.2.0.tgz#2c0c2d5040c99b1632771a9d105725c0115363ee" - integrity sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw== +flat-cache@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-4.0.1.tgz#0ece39fcb14ee012f4b0410bd33dd9c1f011127c" + integrity sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw== dependencies: flatted "^3.2.9" - keyv "^4.5.3" - rimraf "^3.0.2" + keyv "^4.5.4" flat@^5.0.2: version "5.0.2" @@ -855,7 +891,7 @@ flatted@^3.2.9: resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.3.3.tgz#67c8fad95454a7c7abebf74bb78ee74a44023358" integrity sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg== -foreground-child@^3.1.0: +foreground-child@^3.1.0, foreground-child@^3.3.1: version "3.3.1" resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-3.3.1.tgz#32e8e9ed1b68a3497befb9ac2b6adf92a638576f" integrity sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw== @@ -863,11 +899,6 @@ foreground-child@^3.1.0: cross-spawn "^7.0.6" signal-exit "^4.0.1" -fs.realpath@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== - get-caller-file@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" @@ -892,16 +923,17 @@ glob-parent@^6.0.2: dependencies: is-glob "^4.0.3" -glob@8.1.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e" - integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ== +glob@11.0.3: + version "11.0.3" + resolved "https://registry.yarnpkg.com/glob/-/glob-11.0.3.tgz#9d8087e6d72ddb3c4707b1d2778f80ea3eaefcd6" + integrity sha512-2Nim7dha1KVkaiF4q6Dj+ngPPMdfvLJEOpZk/jKiUAkqKebpGAWQXAq9z1xu9HKu5lWfqw/FASuccEjyznjPaA== dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^5.0.1" - once "^1.3.0" + foreground-child "^3.3.1" + jackspeak "^4.1.1" + minimatch "^10.0.3" + minipass "^7.1.2" + package-json-from-dist "^1.0.0" + path-scurry "^2.0.0" glob@^10.4.5: version "10.4.5" @@ -915,36 +947,10 @@ glob@^10.4.5: package-json-from-dist "^1.0.0" path-scurry "^1.11.1" -glob@^7.1.3: - version "7.2.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" - integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.1.1" - once "^1.3.0" - path-is-absolute "^1.0.0" - -globals@^13.19.0: - version "13.24.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-13.24.0.tgz#8432a19d78ce0c1e833949c36adb345400bb1171" - integrity sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ== - dependencies: - type-fest "^0.20.2" - -globby@^11.1.0: - version "11.1.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" - integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== - dependencies: - array-union "^2.1.0" - dir-glob "^3.0.1" - fast-glob "^3.2.9" - ignore "^5.2.0" - merge2 "^1.4.1" - slash "^3.0.0" +globals@^14.0.0: + version "14.0.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-14.0.0.tgz#898d7413c29babcf6bafe56fcadded858ada724e" + integrity sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ== graphemer@^1.4.0: version "1.4.0" @@ -982,6 +988,11 @@ ignore@^5.2.0: resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.2.tgz#3cd40e729f3643fd87cb04e50bf0eb722bc596f5" integrity sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g== +ignore@^7.0.0: + version "7.0.5" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-7.0.5.tgz#4cb5f6cd7d4c7ab0365738c7aea888baa6d7efd9" + integrity sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg== + immediate@~3.0.5: version "3.0.6" resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.0.6.tgz#9db1dbd0faf8de6fbe0f5dd5e56bb606280de69b" @@ -1000,15 +1011,7 @@ imurmurhash@^0.1.4: resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== -inflight@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== - dependencies: - once "^1.3.0" - wrappy "1" - -inherits@2, inherits@~2.0.3: +inherits@~2.0.3: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== @@ -1089,6 +1092,13 @@ jackspeak@^3.1.2: optionalDependencies: "@pkgjs/parseargs" "^0.11.0" +jackspeak@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-4.1.1.tgz#96876030f450502047fc7e8c7fcf8ce8124e43ae" + integrity sha512-zptv57P3GpL+O0I7VdMJNBZCu+BPHVQUk55Ft8/QCJjTVxrnJHuVuX/0Bl2A6/+2oyR/ZMEuFKwmzqqZ/U5nPQ== + dependencies: + "@isaacs/cliui" "^8.0.2" + js-yaml@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" @@ -1121,7 +1131,7 @@ jszip@^3.10.1: readable-stream "~2.3.6" setimmediate "^1.0.5" -keyv@^4.5.3: +keyv@^4.5.4: version "4.5.4" resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.4.tgz#a879a99e29452f942439f2a405e3af8b31d4de93" integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw== @@ -1176,7 +1186,12 @@ lru-cache@^10.2.0: resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.4.3.tgz#410fc8a17b70e598013df257c2446b7f3383f119" integrity sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ== -merge2@^1.3.0, merge2@^1.4.1: +lru-cache@^11.0.0: + version "11.2.2" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-11.2.2.tgz#40fd37edffcfae4b2940379c0722dc6eeaa75f24" + integrity sha512-F9ODfyqML2coTIsQpSkRHnLSZMtkU8Q+mSfcaIyKwy58u+8k5nvAYeiNhsyMARvzNcXJ9QfWVrcPsC9e9rAxtg== + +merge2@^1.3.0: version "1.4.1" resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== @@ -1194,20 +1209,20 @@ mimic-function@^5.0.0: resolved "https://registry.yarnpkg.com/mimic-function/-/mimic-function-5.0.1.tgz#acbe2b3349f99b9deaca7fb70e48b83e94e67076" integrity sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA== -minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: +minimatch@^10.0.3: + version "10.1.1" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-10.1.1.tgz#e6e61b9b0c1dcab116b5a7d1458e8b6ae9e73a55" + integrity sha512-enIvLvRAFZYXJzkCYG5RKmPfrFArdLv+R+lbQ53BmIMLIry74bjKzX6iHAm8WYamJkhSSEabrWN5D97XnKObjQ== + dependencies: + "@isaacs/brace-expansion" "^5.0.0" + +minimatch@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== dependencies: brace-expansion "^1.1.7" -minimatch@^5.0.1: - version "5.1.6" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" - integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== - dependencies: - brace-expansion "^2.0.1" - minimatch@^9.0.4, minimatch@^9.0.5: version "9.0.5" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.5.tgz#d74f9dd6b57d83d8e98cfb82133b03978bc929e5" @@ -1264,11 +1279,6 @@ ms@^2.1.3: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== -natural-compare-lite@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz#17b09581988979fddafe0201e931ba933c96cbb4" - integrity sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g== - natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" @@ -1284,13 +1294,6 @@ node-gyp-build@^4.8.4: resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.8.4.tgz#8a70ee85464ae52327772a90d66c6077a900cfc8" integrity sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ== -once@^1.3.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== - dependencies: - wrappy "1" - onetime@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/onetime/-/onetime-7.0.0.tgz#9f16c92d8c9ef5120e3acd9dd9957cceecc1ab60" @@ -1361,11 +1364,6 @@ path-exists@^4.0.0: resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== -path-is-absolute@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== - path-key@^3.1.0: version "3.1.1" resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" @@ -1379,10 +1377,13 @@ path-scurry@^1.11.1: lru-cache "^10.2.0" minipass "^5.0.0 || ^6.0.2 || ^7.0.0" -path-type@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" - integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== +path-scurry@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-2.0.0.tgz#9f052289f23ad8bf9397a2a0425e7b8615c58580" + integrity sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg== + dependencies: + lru-cache "^11.0.0" + minipass "^7.1.2" picocolors@^1.1.1: version "1.1.1" @@ -1462,13 +1463,6 @@ reusify@^1.0.4: resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.1.0.tgz#0fe13b9522e1473f51b558ee796e08f11f9b489f" integrity sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw== -rimraf@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" - integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== - dependencies: - glob "^7.1.3" - run-parallel@^1.1.9: version "1.2.0" resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" @@ -1486,7 +1480,7 @@ safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -semver@^7.3.7, semver@^7.6.2: +semver@^7.6.0, semver@^7.6.2: version "7.7.3" resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.3.tgz#4b5f4143d007633a8dc671cd0a6ef9147b8bb946" integrity sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q== @@ -1520,11 +1514,6 @@ signal-exit@^4.0.1, signal-exit@^4.1.0: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04" integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== -slash@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" - integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== - stdin-discarder@^0.2.2: version "0.2.2" resolved "https://registry.yarnpkg.com/stdin-discarder/-/stdin-discarder-0.2.2.tgz#390037f44c4ae1a1ae535c5fe38dc3aba8d997be" @@ -1624,11 +1613,6 @@ tar@7.5.2: minizlib "^3.1.0" yallist "^5.0.0" -text-table@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" - integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== - to-regex-range@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" @@ -1644,17 +1628,10 @@ tree-sitter@0.25.0: node-addon-api "^8.3.0" node-gyp-build "^4.8.4" -tslib@^1.8.1: - version "1.14.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" - integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== - -tsutils@^3.21.0: - version "3.21.0" - resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" - integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA== - dependencies: - tslib "^1.8.1" +ts-api-utils@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-2.1.0.tgz#595f7094e46eed364c13fd23e75f9513d29baf91" + integrity sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ== type-check@^0.4.0, type-check@~0.4.0: version "0.4.0" @@ -1663,10 +1640,15 @@ type-check@^0.4.0, type-check@~0.4.0: dependencies: prelude-ls "^1.2.1" -type-fest@^0.20.2: - version "0.20.2" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" - integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== +typescript-eslint@8.46.2: + version "8.46.2" + resolved "https://registry.yarnpkg.com/typescript-eslint/-/typescript-eslint-8.46.2.tgz#da1adec683ba93a1b6c3850a4efb0922ffbc627d" + integrity sha512-vbw8bOmiuYNdzzV3lsiWv6sRwjyuKJMQqWulBOU7M0RrxedXledX8G8kBbQeiOYDnTfiXz0Y4081E1QMNB6iQg== + dependencies: + "@typescript-eslint/eslint-plugin" "8.46.2" + "@typescript-eslint/parser" "8.46.2" + "@typescript-eslint/typescript-estree" "8.46.2" + "@typescript-eslint/utils" "8.46.2" typescript@5.9.3: version "5.9.3" @@ -1741,11 +1723,6 @@ wrap-ansi@^8.1.0: string-width "^5.0.1" strip-ansi "^7.0.1" -wrappy@1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== - y18n@^5.0.5: version "5.0.8" resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" From fcd206d9b8481cda64bae52746fdb8e30fd42506 Mon Sep 17 00:00:00 2001 From: Tom Selfin Date: Fri, 31 Oct 2025 20:11:48 +0200 Subject: [PATCH 02/43] update CHANGELOG.md --- CHANGELOG.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3209b688..e436c39e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,12 @@ # Changelog -# [Unreleased] +# 0.8.0 + +## Added + +- Multi-cursor support in Block Mode, thanks [@CB2Moon](https://github.com/selfint/code-blocks/pull/188)! + +- `toml` and `xml` support, thanks [@sanarise](https://github.com/selfint/code-blocks/pull/186)! ## Fixed From cba25cd63411d69623e97f5f6ef38887b6fc5f70 Mon Sep 17 00:00:00 2001 From: Tom Selfin Date: Fri, 31 Oct 2025 20:11:53 +0200 Subject: [PATCH 03/43] update package version --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 43f79cf4..eeb6d44f 100644 --- a/package.json +++ b/package.json @@ -17,7 +17,7 @@ "color": "#6295E3", "theme": "dark" }, - "version": "0.7.0", + "version": "0.8.0", "private": true, "license": "MIT", "engines": { From 1aba616cd9212526e7bc6aa71300f2545fa5fdad Mon Sep 17 00:00:00 2001 From: Tom Selfin Date: Fri, 31 Oct 2025 23:33:18 +0200 Subject: [PATCH 04/43] use node 20 in ci --- .github/workflows/ci-cd.yml | 4 ++-- .github/workflows/pr.yml | 6 +++--- .github/workflows/update-assets.yml | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci-cd.yml b/.github/workflows/ci-cd.yml index f562555b..3d39a6fc 100644 --- a/.github/workflows/ci-cd.yml +++ b/.github/workflows/ci-cd.yml @@ -23,7 +23,7 @@ jobs: - name: Install Node.js uses: actions/setup-node@v4 with: - node-version: 18 + node-version: 20 - name: Install extension dependencies run: yarn run install:all - name: Build webview @@ -54,7 +54,7 @@ jobs: - name: Install Node.js uses: actions/setup-node@v4 with: - node-version: 18 + node-version: 20 - name: Install extension dependencies run: yarn run install:all - name: Build webview diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml index c99d2b38..b367f444 100644 --- a/.github/workflows/pr.yml +++ b/.github/workflows/pr.yml @@ -22,7 +22,7 @@ jobs: - name: Install Node.js uses: actions/setup-node@v4 with: - node-version: 18 + node-version: 20 - name: Install extension dependencies run: yarn run install:all - name: Build webview @@ -50,7 +50,7 @@ jobs: - name: Install Node.js uses: actions/setup-node@v4 with: - node-version: 18 + node-version: 20 - name: Install asset generation dependencies run: sudo apt install -y ffmpeg libnss3 xvfb - name: Install extension dependencies @@ -83,7 +83,7 @@ jobs: - name: Install Node.js uses: actions/setup-node@v4 with: - node-version: 18 + node-version: 20 - name: Install extension dependencies run: yarn run install:all - name: Build webview diff --git a/.github/workflows/update-assets.yml b/.github/workflows/update-assets.yml index 3de0f153..80879a3f 100644 --- a/.github/workflows/update-assets.yml +++ b/.github/workflows/update-assets.yml @@ -20,7 +20,7 @@ jobs: - name: Install Node.js uses: actions/setup-node@v4 with: - node-version: 18 + node-version: 20 - name: Install asset generation dependencies run: sudo apt install -y ffmpeg libnss3 xvfb - name: Install extension dependencies From ef17459a49e05c32e66de1212d3ebf8e3f9c6f3a Mon Sep 17 00:00:00 2001 From: Tom Selfin Date: Sat, 1 Nov 2025 00:14:40 +0200 Subject: [PATCH 05/43] fix examples test harness --- src/examples/exampleUtils.ts | 42 +++++++++++++-------------- src/examples/runExample.ts | 10 ++++++- src/examples/suite/example.example.ts | 19 ++++++------ 3 files changed, 39 insertions(+), 32 deletions(-) diff --git a/src/examples/exampleUtils.ts b/src/examples/exampleUtils.ts index 6de95fbd..9ef5ac7b 100644 --- a/src/examples/exampleUtils.ts +++ b/src/examples/exampleUtils.ts @@ -2,25 +2,18 @@ import * as vscode from "vscode"; import { BlockMode, active, activeFileTree } from "../extension"; import { FileTree } from "../FileTree"; import { expect } from "chai"; -import { join } from "path"; - -// eslint-disable-next-line @typescript-eslint/no-unused-vars -import settings from "./examples-editor/.vscode/settings.json"; const TEST_START_SIGNAL = "@"; export async function initExample(): Promise { - const exampleEditorPath = join(__dirname, "examples-editor"); await cmd("workbench.action.toggleLightDarkThemes"); - await cmd("vscode.openFolder", vscode.Uri.file(exampleEditorPath), { - forceNewWindow: false, - }); + await cmd("workbench.action.toggleAuxiliaryBar"); await cmd("notifications.clearAll"); await sleep(100); await cmd("notifications.clearAll"); } export async function cmd(c: string, ...args: unknown[]): Promise { - await vscode.commands.executeCommand(c, ...args); + return await vscode.commands.executeCommand(c, ...args); } export function zoomOut(): void { @@ -83,7 +76,11 @@ export async function openDocument({ content, maximize = true, cursor = undefined, -}: OpenDocumentParams): Promise<{ activeEditor: vscode.TextEditor; fileTree: FileTree; realContent: string }> { +}: OpenDocumentParams): Promise<{ + activeEditor: vscode.TextEditor; + fileTree: FileTree; + realContent: string; +}> { if (!active.get()) { active.set(true); } @@ -115,7 +112,8 @@ export async function openDocument({ } if (maximize) { - await vscode.commands.executeCommand("workbench.action.maximizeEditor"); + await cmd("workbench.action.minimizeOtherEditors"); + await cmd("workbench.action.closeSidebar"); } let fileTree = activeFileTree.get(); @@ -185,9 +183,7 @@ export async function selectionExample({ return activeEditor; } -export type MoveCommand = - | "codeBlocks.moveDown" - | "codeBlocks.moveUp"; +export type MoveCommand = "codeBlocks.moveDown" | "codeBlocks.moveUp"; export type TestMoveCommandsParams = { language: SupportedTestLanguages; @@ -293,13 +289,15 @@ export async function testNavigateCommands({ expect(newCursorIndex).to.equal( expectedNavigationDestinationIndex, "navigation commands didn't arrive to expected destination" + - `\n\tactual: ${cleanContent.substring(0, newCursorIndex) + - targetCursor + - cleanContent.substring(newCursorIndex) - }` + - `\n\texpect: ${cleanContent.substring(0, expectedNavigationDestinationIndex) + - targetCursor + - cleanContent.substring(expectedNavigationDestinationIndex) - }\n` + `\n\tactual: ${ + cleanContent.substring(0, newCursorIndex) + + targetCursor + + cleanContent.substring(newCursorIndex) + }` + + `\n\texpect: ${ + cleanContent.substring(0, expectedNavigationDestinationIndex) + + targetCursor + + cleanContent.substring(expectedNavigationDestinationIndex) + }\n` ); } diff --git a/src/examples/runExample.ts b/src/examples/runExample.ts index 42172940..6ee7ed24 100644 --- a/src/examples/runExample.ts +++ b/src/examples/runExample.ts @@ -2,6 +2,10 @@ import * as path from "path"; import { runTests } from "@vscode/test-electron"; +// ensure settings.json gets copied to build directory +// eslint-disable-next-line @typescript-eslint/no-unused-vars +import settings from "./examples-editor/.vscode/settings.json"; + async function main(): Promise { try { // The folder containing the Extension Manifest package.json @@ -13,7 +17,11 @@ async function main(): Promise { const extensionTestsPath = path.resolve(__dirname, `./suite/index`); // Download VS Code, unzip it and run the integration test - await runTests({ extensionDevelopmentPath, extensionTestsPath }); + await runTests({ + extensionDevelopmentPath, + extensionTestsPath, + launchArgs: [path.resolve(__dirname, "examples-editor")], + }); } catch (err) { console.error("Failed to run tests", err); process.exit(1); diff --git a/src/examples/suite/example.example.ts b/src/examples/suite/example.example.ts index a8a042d3..96936f20 100644 --- a/src/examples/suite/example.example.ts +++ b/src/examples/suite/example.example.ts @@ -1,19 +1,20 @@ import * as vscode from "vscode"; -import { initExample, openDocument, sleep, startRecording } from "../exampleUtils"; +// import { initExample, openDocument, sleep, startRecording } from "../exampleUtils"; +import { initExample, sleep } from "../exampleUtils"; const TIMEOUT = process.env.EXAMPLE_TIMEOUT ?? "20s"; test("Example", async function () { await initExample(); - startRecording(); + // startRecording(); void vscode.window.showInformationMessage("Hello world"); await sleep(1500); - await openDocument({ - language: "rust", - content: `// hello world -`, - maximize: true, - }); + // await openDocument({ + // language: "rust", + // content: `// hello world + // `, + // maximize: true, + // }); - await sleep(1500); + // await sleep(1500); }).timeout(TIMEOUT); From 037ca8f62dfbdf9174aa4e2265f5c0fcb554162b Mon Sep 17 00:00:00 2001 From: Tom Selfin Date: Sat, 1 Nov 2025 00:21:20 +0200 Subject: [PATCH 06/43] speed up pr ci --- .github/workflows/pr.yml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml index b367f444..3d3b3e67 100644 --- a/.github/workflows/pr.yml +++ b/.github/workflows/pr.yml @@ -52,7 +52,12 @@ jobs: with: node-version: 20 - name: Install asset generation dependencies - run: sudo apt install -y ffmpeg libnss3 xvfb + run: | + sudo DEBIAN_FRONTEND=noninteractive \ + apt install -y --no-install-recommends \ + ffmpeg libnss3 xvfb \ + -o Dpkg::Options::="--path-exclude=/usr/share/man/*" \ + -o Dpkg::Options::="--path-exclude=/usr/share/doc/*" - name: Install extension dependencies run: yarn run install:all - name: Build webview From b359910d59ae6371085c5b9ea30efa8af5f307f7 Mon Sep 17 00:00:00 2001 From: Tom Selfin Date: Sat, 1 Nov 2025 00:26:36 +0200 Subject: [PATCH 07/43] try to fix examples ci --- .github/workflows/pr.yml | 2 +- generate-example-asset.sh | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml index 3d3b3e67..a8beadfd 100644 --- a/.github/workflows/pr.yml +++ b/.github/workflows/pr.yml @@ -55,7 +55,7 @@ jobs: run: | sudo DEBIAN_FRONTEND=noninteractive \ apt install -y --no-install-recommends \ - ffmpeg libnss3 xvfb \ + ffmpeg libnss3 xvfb libx11-6 libxext6 \ -o Dpkg::Options::="--path-exclude=/usr/share/man/*" \ -o Dpkg::Options::="--path-exclude=/usr/share/doc/*" - name: Install extension dependencies diff --git a/generate-example-asset.sh b/generate-example-asset.sh index 37cea989..78c4ee4c 100755 --- a/generate-example-asset.sh +++ b/generate-example-asset.sh @@ -22,14 +22,14 @@ signal="$example.signal" rm -f "$signal" touch "$signal" -# run example in xvfb in the background -EXAMPLE="$example" xvfb-run -s ":99 -ac -screen 0 800x600x24" node ./out/examples/runExample.js > "$signal" & +# run example in xvfb in the background (sets DISPLAY to screen xvfb picked) +EXAMPLE="$example" xvfb-run -a -s "-ac -screen 0 800x600x24" node ./out/examples/runExample.js > "$signal" & # wait for example to start while ! grep -q "@" "$signal"; do sleep 0.1; done # record example into .mov (mov is better than gif for recording) -ffmpeg -y -f x11grab -video_size 800x600 -i :99 -c:v libx264 -pix_fmt yuv420p "$mov" +ffmpeg -y -f x11grab -video_size 800x600 -i "$DISPLAY" -c:v libx264 -pix_fmt yuv420p "$mov" # wait for example to finish, recording will automatically finish (by crashing) wait From 183d067235895634e7db03e5a3d8873f160f4883 Mon Sep 17 00:00:00 2001 From: Tom Selfin Date: Sat, 1 Nov 2025 00:28:59 +0200 Subject: [PATCH 08/43] fix package ci step --- .github/workflows/pr.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml index a8beadfd..374d24cf 100644 --- a/.github/workflows/pr.yml +++ b/.github/workflows/pr.yml @@ -94,7 +94,7 @@ jobs: - name: Build webview run: yarn run build:webview - name: Package extension - run: npx @vscode/vsce package --yarn --githubBranch ${{ env.BRANCH }} + run: npx --yes @vscode/vsce package --yarn --githubBranch ${{ env.BRANCH }} - name: Upload extension uses: actions/upload-artifact@v4 with: From fd8c5332b7dd89686964a689dbf4bb9f5d054cb2 Mon Sep 17 00:00:00 2001 From: Tom Selfin Date: Sat, 1 Nov 2025 00:31:11 +0200 Subject: [PATCH 09/43] speed up ci --- .github/workflows/ci-cd.yml | 2 +- .github/workflows/pr.yml | 2 +- .github/workflows/update-assets.yml | 7 ++++++- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci-cd.yml b/.github/workflows/ci-cd.yml index 3d39a6fc..effbe006 100644 --- a/.github/workflows/ci-cd.yml +++ b/.github/workflows/ci-cd.yml @@ -60,7 +60,7 @@ jobs: - name: Build webview run: yarn run build:webview - name: Package extension - run: npx @vscode/vsce package --yarn --githubBranch ${{ github.ref_name }} + run: npx --yes @vscode/vsce package --yarn --githubBranch ${{ github.ref_name }} - name: Upload extension uses: actions/upload-artifact@v4 with: diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml index 374d24cf..bb438e3b 100644 --- a/.github/workflows/pr.yml +++ b/.github/workflows/pr.yml @@ -55,7 +55,7 @@ jobs: run: | sudo DEBIAN_FRONTEND=noninteractive \ apt install -y --no-install-recommends \ - ffmpeg libnss3 xvfb libx11-6 libxext6 \ + ffmpeg libnss3 xvfb \ -o Dpkg::Options::="--path-exclude=/usr/share/man/*" \ -o Dpkg::Options::="--path-exclude=/usr/share/doc/*" - name: Install extension dependencies diff --git a/.github/workflows/update-assets.yml b/.github/workflows/update-assets.yml index 80879a3f..5d4381d5 100644 --- a/.github/workflows/update-assets.yml +++ b/.github/workflows/update-assets.yml @@ -22,7 +22,12 @@ jobs: with: node-version: 20 - name: Install asset generation dependencies - run: sudo apt install -y ffmpeg libnss3 xvfb + run: | + sudo DEBIAN_FRONTEND=noninteractive \ + apt install -y --no-install-recommends \ + ffmpeg libnss3 xvfb \ + -o Dpkg::Options::="--path-exclude=/usr/share/man/*" \ + -o Dpkg::Options::="--path-exclude=/usr/share/doc/*" - name: Install extension dependencies run: yarn run install:all - name: Build webview From ae869d9f4594e2b95b8d6fc4ec49501946481f45 Mon Sep 17 00:00:00 2001 From: github-actions Date: Fri, 31 Oct 2025 22:34:29 +0000 Subject: [PATCH 10/43] Update examples [skip ci] --- README.md | 27 ------------------ .../Block_Mode_-_Move_-_Rust_-_Functions.gif | Bin 427212 -> 0 bytes .../Block_Mode_-_Move_-_Rust_-_Match_arms.gif | Bin 297275 -> 0 bytes .../Block_Mode_-_Move_-_Rust_-_Parameters.gif | Bin 208306 -> 0 bytes .../examples/Block_Mode_-_Select_-_Rust.gif | Bin 195456 -> 0 bytes .../Block_Mode_-_Select_-_TypeScript.gif | Bin 401079 -> 0 bytes ...ypeScript_-_Selection_expands_to_block.gif | Bin 184536 -> 0 bytes assets/examples/Tree_Viewer.gif | Bin 1060710 -> 0 bytes 8 files changed, 27 deletions(-) delete mode 100644 assets/examples/Block_Mode_-_Move_-_Rust_-_Functions.gif delete mode 100644 assets/examples/Block_Mode_-_Move_-_Rust_-_Match_arms.gif delete mode 100644 assets/examples/Block_Mode_-_Move_-_Rust_-_Parameters.gif delete mode 100644 assets/examples/Block_Mode_-_Select_-_Rust.gif delete mode 100644 assets/examples/Block_Mode_-_Select_-_TypeScript.gif delete mode 100644 assets/examples/Block_Mode_-_Select_-_TypeScript_-_Selection_expands_to_block.gif delete mode 100644 assets/examples/Tree_Viewer.gif diff --git a/README.md b/README.md index 7d513de9..0e7e2eef 100644 --- a/README.md +++ b/README.md @@ -178,30 +178,3 @@ MIT License © 2023 [Tom Selfin](https://github.com/selfint) ## Gallery -### Block Mode - Move - Rust - Functions - -![Block Mode - Move - Rust - Functions](assets/examples/Block_Mode_-_Move_-_Rust_-_Functions.gif) - -### Block Mode - Move - Rust - Match arms - -![Block Mode - Move - Rust - Match arms](assets/examples/Block_Mode_-_Move_-_Rust_-_Match_arms.gif) - -### Block Mode - Move - Rust - Parameters - -![Block Mode - Move - Rust - Parameters](assets/examples/Block_Mode_-_Move_-_Rust_-_Parameters.gif) - -### Block Mode - Select - Rust - -![Block Mode - Select - Rust](assets/examples/Block_Mode_-_Select_-_Rust.gif) - -### Block Mode - Select - TypeScript - -![Block Mode - Select - TypeScript](assets/examples/Block_Mode_-_Select_-_TypeScript.gif) - -### Block Mode - Select - TypeScript - Selection expands to block - -![Block Mode - Select - TypeScript - Selection expands to block](assets/examples/Block_Mode_-_Select_-_TypeScript_-_Selection_expands_to_block.gif) - -### Tree Viewer - -![Tree Viewer](assets/examples/Tree_Viewer.gif) diff --git a/assets/examples/Block_Mode_-_Move_-_Rust_-_Functions.gif b/assets/examples/Block_Mode_-_Move_-_Rust_-_Functions.gif deleted file mode 100644 index 9f38d95725517ac043bbe7954f8019190015b896..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 427212 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