├── img
├── icon.png
├── light.svg
└── dark.svg
├── preview
├── aes.png
└── pic.png
├── Note.md
├── .gitignore
├── .vscode
├── extensions.json
├── settings.json
├── launch.json
└── tasks.json
├── .vscodeignore
├── tsconfig.json
├── src
├── types.ts
├── mac.ts
├── win.ts
└── extension.ts
├── CHANGELOG.md
├── Develop.md
├── package.nls.zh-CN.json
├── eslint.config.mjs
├── package.nls.jp.json
├── package.nls.en.json
├── package.nls.json
├── nls.metadata.zh-cn.json
├── LICENSE
├── nls.metadata.json
├── esbuild.js
├── package.json
├── README-ZH.md
├── README-JP.md
├── README.md
└── pnpm-lock.yaml
/img/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Yuelioi/vscode-ae-script-tsx-linker/HEAD/img/icon.png
--------------------------------------------------------------------------------
/preview/aes.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Yuelioi/vscode-ae-script-tsx-linker/HEAD/preview/aes.png
--------------------------------------------------------------------------------
/preview/pic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Yuelioi/vscode-ae-script-tsx-linker/HEAD/preview/pic.png
--------------------------------------------------------------------------------
/Note.md:
--------------------------------------------------------------------------------
1 | 发布地址: https://marketplace.visualstudio.com/manage/publishers/yuelili
2 |
3 | 用的github登录的
4 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | out
2 | dist
3 | node_modules
4 | .vscode-test/
5 | *.vsix
6 |
7 | package-lock.json
8 |
9 |
10 | extension.js
11 | extension.js.map
12 |
13 | secret
14 | test*
15 |
16 | token
17 | .DS_Store
--------------------------------------------------------------------------------
/.vscode/extensions.json:
--------------------------------------------------------------------------------
1 | {
2 | // See http://go.microsoft.com/fwlink/?LinkId=827846
3 | // for the documentation about the extensions.json format
4 | "recommendations": ["dbaeumer.vscode-eslint", "amodio.tsl-problem-matcher"]
5 | }
6 |
--------------------------------------------------------------------------------
/.vscodeignore:
--------------------------------------------------------------------------------
1 | .vscode/**
2 | .vscode-test/**
3 | out/**
4 | node_modules/**
5 | src/**
6 | .gitignore
7 | .yarnrc
8 | webpack.config.js
9 | vsc-extension-quickstart.md
10 | **/tsconfig.json
11 | **/.eslintrc.json
12 | **/*.map
13 | **/*.ts
14 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "module": "commonjs",
4 | "target": "ES2020",
5 | "lib": [
6 | "ES2022",
7 | ],
8 | "resolveJsonModule": true,
9 | "esModuleInterop": true,
10 | "sourceMap": true,
11 | "strict": true,
12 | "outDir": "./dist"
13 | }
14 | }
--------------------------------------------------------------------------------
/src/types.ts:
--------------------------------------------------------------------------------
1 | export interface AppVersionInfo {
2 | label: string; // 版本号/别名
3 | description: string; // 完整路径
4 | }
5 |
6 | export type BuildTool = "auto" | "tsc" | "rollup" | "webpack" | "esbuild";
7 |
8 | export interface WorkspaceSettings {
9 | input: string;
10 | output: string;
11 | hostSpecifier: string;
12 | buildTool?: BuildTool;
13 | customBuildCommand?: string;
14 | }
15 |
16 | export interface TsConfig {
17 | compilerOptions?: {
18 | outDir?: string;
19 | [key: string]: any;
20 | };
21 | [key: string]: any;
22 | }
23 |
--------------------------------------------------------------------------------
/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # CHANGELOG
2 |
3 | ## [0.7.0] - 2025-03-14
4 |
5 | - mac supported
6 |
7 | ## [0.6.0] - 2023-04-11
8 |
9 | - Checking software version currently running.
10 |
11 | ## [0.5.0] - 2023-03-15
12 |
13 | - .Jsxbin Supported
14 | - Fix `blank space` file path
15 |
16 | ## [0.4.0] - 2023-03-10
17 |
18 | - Rollup Supported
19 |
20 | ## [0.3.0] - 2023-03-02
21 |
22 | - Add Run Icon
23 |
24 | ## [0.2.0] - 2023-03-02
25 |
26 | - Custom tsconfig supported (tsconfgi-ae.json)
27 |
28 | ## [0.1.0] - 2023-03-01
29 |
30 | - Ts Supported
31 |
--------------------------------------------------------------------------------
/Develop.md:
--------------------------------------------------------------------------------
1 | ## 初始化
2 |
3 | pnpm install
4 |
5 | ## 修改
6 |
7 | 需要修改 `launch.json`, 因为默认生成的项目不带build选项, 导致配置不对
8 |
9 | ```json
10 | "preLaunchTask": "${defaultBuildTask}"
11 | ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
12 | "tasks: watch-tests"
13 | ```
14 |
15 | ## 使用 vsc 调试
16 |
17 | NPM脚本: `watch` (如果在第二步修改后,也可以直接f5)
18 |
19 | F5 / 运行与调试 -> Run Extension
20 |
21 | ## 打包
22 |
23 | `npm i vsce -g`
24 |
25 | `vsce package2`
26 |
27 | `vsce publish`
28 |
29 | ## 其他
30 |
31 | 上传不上去, 可以打包, 然后再网站上传 `https://marketplace.visualstudio.com/manage/publishers/yuelili`
32 |
--------------------------------------------------------------------------------
/img/light.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/img/dark.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/.vscode/settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "files.exclude": {
3 | "**/.git": true,
4 | "**/.svn": true,
5 | "**/.hg": true,
6 | "**/.DS_Store": true,
7 | "**/Thumbs.db": true,
8 | "**/CVS": true,
9 | "out": true,
10 | "dist": true
11 | },
12 | "search.exclude": {
13 | "out": true, // set this to false to include "out" folder in search results
14 | "dist": true // set this to false to include "dist" folder in search results
15 | },
16 | // Turn off tsc task auto detection since we have the necessary tasks as npm scripts
17 | "typescript.tsc.autoDetect": "off",
18 | "hide-files.files": [],
19 | "tsxRunner": {
20 | "hostSpecifier": "123"
21 | }
22 | }
--------------------------------------------------------------------------------
/package.nls.zh-CN.json:
--------------------------------------------------------------------------------
1 | {
2 | "command.runScript": "运行 AE 脚本",
3 | "configuration.title": "AE TSX 运行器",
4 | "configuration.hostSpecifier.description": "指定要使用的 After Effects 版本(例如 '2024')。留空则显示版本选择器。",
5 | "configuration.buildTool.description": "TypeScript 编译构建工具",
6 | "configuration.buildTool.auto": "根据项目配置自动检测构建工具",
7 | "configuration.buildTool.tsc": "使用 TypeScript 编译器(tsc)",
8 | "configuration.buildTool.rollup": "使用 Rollup 打包工具",
9 | "configuration.buildTool.webpack": "使用 Webpack 打包工具",
10 | "configuration.buildTool.esbuild": "使用 esbuild 打包工具",
11 | "configuration.customBuildCommand.description": "自定义构建命令(覆盖 buildTool 设置)。例如: 'npm run build'",
12 | "configuration.input.description": "输入文件路径(自动填充)",
13 | "configuration.output.description": "输出文件路径(自动填充)"
14 | }
--------------------------------------------------------------------------------
/.vscode/launch.json:
--------------------------------------------------------------------------------
1 | // A launch configuration that compiles the extension and then opens it inside a new window
2 | // Use IntelliSense to learn about possible attributes.
3 | // Hover to view descriptions of existing attributes.
4 | // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
5 | {
6 | "version": "0.2.0",
7 | "configurations": [
8 | {
9 | "name": "Extension Debug",
10 | "type": "extensionHost",
11 | "request": "launch",
12 | "args": [
13 | "--extensionDevelopmentPath=${workspaceFolder}",
14 | "--disable-extensions", // 调试时关闭其他拓展
15 | "--extension=Adobe.extendscript-debug" // 启用指定扩展
16 | ],
17 | "outFiles": [
18 | "${workspaceFolder}/dist/**/*.js"
19 | ],
20 | "preLaunchTask": "watch:tsc"
21 | }
22 | ]
23 | }
--------------------------------------------------------------------------------
/eslint.config.mjs:
--------------------------------------------------------------------------------
1 | import typescriptEslint from "@typescript-eslint/eslint-plugin";
2 | import tsParser from "@typescript-eslint/parser";
3 |
4 | export default [
5 | {
6 | files: ["**/*.ts"],
7 | },
8 | {
9 | plugins: {
10 | "@typescript-eslint": typescriptEslint,
11 | },
12 |
13 | languageOptions: {
14 | parser: tsParser,
15 | ecmaVersion: 2022,
16 | sourceType: "module",
17 | },
18 |
19 | rules: {
20 | "@typescript-eslint/naming-convention": [
21 | "warn",
22 | {
23 | selector: "import",
24 | format: ["camelCase", "PascalCase"],
25 | },
26 | ],
27 |
28 | curly: "warn",
29 | eqeqeq: "warn",
30 | "no-throw-literal": "warn",
31 | semi: "warn",
32 | },
33 | },
34 | ];
35 |
--------------------------------------------------------------------------------
/package.nls.jp.json:
--------------------------------------------------------------------------------
1 | {
2 | "ae-tsx-runner.run": "Aeスクリプト実行",
3 | "configuration.title": "AE TSX ランナー",
4 | "configuration.hostSpecifier.description": "使用する After Effects のバージョンを指定(例:'2024')。空欄の場合はバージョン選択画面を表示します。",
5 | "configuration.buildTool.description": "TypeScript コンパイル用のビルドツール",
6 | "configuration.buildTool.auto": "プロジェクト設定に基づいてビルドツールを自動検出",
7 | "configuration.buildTool.tsc": "TypeScript コンパイラ (tsc) を使用",
8 | "configuration.buildTool.rollup": "Rollup バンドラーを使用",
9 | "configuration.buildTool.webpack": "Webpack バンドラーを使用",
10 | "configuration.buildTool.esbuild": "esbuild バンドラーを使用",
11 | "configuration.customBuildCommand.description": "カスタムビルドコマンド(buildTool 設定を上書き)。例: 'npm run build'",
12 | "configuration.input.description": "入力ファイルのパス(自動入力)",
13 | "configuration.output.description": "出力ファイルのパス(自動入力)"
14 | }
--------------------------------------------------------------------------------
/package.nls.en.json:
--------------------------------------------------------------------------------
1 | {
2 | "command.runScript": "Run AE Script",
3 | "configuration.title": "AE TSX Runner",
4 | "configuration.hostSpecifier.description": "Specify the After Effects version to use (e.g., '2024'). Leave empty to show version picker.",
5 | "configuration.buildTool.description": "Build tool for TypeScript compilation",
6 | "configuration.buildTool.auto": "Auto-detect build tool based on project configuration",
7 | "configuration.buildTool.tsc": "Use TypeScript Compiler (tsc)",
8 | "configuration.buildTool.rollup": "Use Rollup bundler",
9 | "configuration.buildTool.webpack": "Use Webpack bundler",
10 | "configuration.buildTool.esbuild": "Use esbuild bundler",
11 | "configuration.customBuildCommand.description": "Custom build command (overrides buildTool setting). Example: 'npm run build'",
12 | "configuration.input.description": "Input file path (auto-populated)",
13 | "configuration.output.description": "Output file path (auto-populated)"
14 | }
--------------------------------------------------------------------------------
/package.nls.json:
--------------------------------------------------------------------------------
1 | {
2 | "command.runScript": "Run AE Script",
3 | "configuration.title": "AE TSX Runner",
4 | "configuration.hostSpecifier.description": "Specify the After Effects version to use (e.g., '2024'). Leave empty to show version picker.",
5 | "configuration.buildTool.description": "Build tool for TypeScript compilation",
6 | "configuration.buildTool.auto": "Auto-detect build tool based on project configuration",
7 | "configuration.buildTool.tsc": "Use TypeScript Compiler (tsc)",
8 | "configuration.buildTool.rollup": "Use Rollup bundler",
9 | "configuration.buildTool.webpack": "Use Webpack bundler",
10 | "configuration.buildTool.esbuild": "Use esbuild bundler",
11 | "configuration.customBuildCommand.description": "Custom build command (overrides buildTool setting). Example: 'npm run build'",
12 | "configuration.input.description": "Input file path (auto-populated)",
13 | "configuration.output.description": "Output file path (auto-populated)"
14 | }
--------------------------------------------------------------------------------
/.vscode/tasks.json:
--------------------------------------------------------------------------------
1 | // See https://go.microsoft.com/fwlink/?LinkId=733558
2 | // for the documentation about the tasks.json format
3 | {
4 | "version": "2.0.0",
5 | "tasks": [
6 | {
7 | "label": "watch:esbuild",
8 | "type": "npm",
9 | "script": "watch:esbuild",
10 | "problemMatcher": [],
11 | "isBackground": true,
12 | "presentation": {
13 | "reveal": "never",
14 | "group": "watchers"
15 | },
16 | "group": "build"
17 | },
18 | {
19 | "label": "watch:tsc",
20 | "type": "npm",
21 | "script": "watch:tsc",
22 | "problemMatcher": "$tsc-watch",
23 | "isBackground": true,
24 | "presentation": {
25 | "reveal": "never",
26 | "group": "watchers"
27 | },
28 | "group": "build"
29 | },
30 | {
31 | "label": "tasks: watch-all",
32 | "dependsOn": [
33 | "watch:esbuild",
34 | "watch:tsc"
35 | ],
36 | "problemMatcher": []
37 | }
38 | ]
39 | }
--------------------------------------------------------------------------------
/nls.metadata.zh-cn.json:
--------------------------------------------------------------------------------
1 | {
2 | "error.unsupportedPlatform": "不支持的平台",
3 | "error.noWorkspace": "请先打开工作目录",
4 | "warning.versionNotFound": "配置版本 {0} 未找到",
5 | "detail.installPath": "安装路径: {0}",
6 | "placeholder.selectVersion": "选择正在运行的 After Effects 版本",
7 | "error.noVersionSelected": "未选择 AE 版本",
8 | "error.noTsConfig": "未找到 tsconfig.json",
9 | "error.invalidTsConfig": "解析 tsconfig.json 失败: {0}",
10 | "error.buildFailed": "构建失败: {0} (代码 {1})",
11 | "error.outputNotGenerated": "输出文件未生成",
12 | "error.configSaveFailed": "配置保存失败: {0}",
13 | "warning.noActiveEditor": "没有活动的编辑器",
14 | "error.noAeInstance": "未找到运行的 AE 实例",
15 | "success.executed": "脚本执行成功",
16 | "success.compiledAndExecuted": "脚本编译并执行成功",
17 | "warning.unsupportedFileType": "不支持的文件类型: {0}",
18 | "error.noAeFound": "未找到 After Effects 安装",
19 | "error.getAppsFailed": "获取 After Effects 应用失败: {0}",
20 | "error.executionFailed": "执行脚本失败: {0}",
21 | "error.noRunningAe": "未找到运行中的 After Effects 实例",
22 | "progress.building": "正在使用 {0} 构建..."
23 | }
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2024 Yueli
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/nls.metadata.json:
--------------------------------------------------------------------------------
1 | {
2 | "error.unsupportedPlatform": "Unsupported platform",
3 | "error.noWorkspace": "Please open a workspace folder first",
4 | "warning.versionNotFound": "Configured version {0} not found",
5 | "detail.installPath": "Install path: {0}",
6 | "placeholder.selectVersion": "Select running After Effects version",
7 | "error.noVersionSelected": "No AE version selected",
8 | "error.noTsConfig": "tsconfig.json not found",
9 | "error.invalidTsConfig": "Failed to parse tsconfig.json: {0}",
10 | "error.buildFailed": "Build failed: {0} (code {1})",
11 | "error.outputNotGenerated": "Output file was not generated",
12 | "error.configSaveFailed": "Failed to save configuration: {0}",
13 | "warning.noActiveEditor": "No active editor",
14 | "error.noAeInstance": "No running After Effects instance found",
15 | "success.executed": "Script executed successfully",
16 | "success.compiledAndExecuted": "Script compiled and executed successfully",
17 | "warning.unsupportedFileType": "Unsupported file type: {0}",
18 | "error.noAeFound": "No After Effects installation found",
19 | "error.getAppsFailed": "Failed to get After Effects apps: {0}",
20 | "error.executionFailed": "Failed to execute script: {0}",
21 | "error.noRunningAe": "No running After Effects instance found",
22 | "progress.building": "Building with {0}..."
23 | }
--------------------------------------------------------------------------------
/esbuild.js:
--------------------------------------------------------------------------------
1 | const esbuild = require("esbuild");
2 |
3 | const production = process.argv.includes('--production');
4 | const watch = process.argv.includes('--watch');
5 |
6 | /**
7 | * @type {import('esbuild').Plugin}
8 | */
9 | const esbuildProblemMatcherPlugin = {
10 | name: 'esbuild-problem-matcher',
11 |
12 | setup(build) {
13 | build.onStart(() => {
14 | console.log('[watch] build started');
15 | });
16 | build.onEnd((result) => {
17 | result.errors.forEach(({ text, location }) => {
18 | console.error(`✘ [ERROR] ${text}`);
19 | console.error(` ${location.file}:${location.line}:${location.column}:`);
20 | });
21 | console.log('[watch] build finished');
22 | });
23 | },
24 | };
25 |
26 | async function main() {
27 | const ctx = await esbuild.context({
28 | entryPoints: [
29 | 'src/extension.ts'
30 | ],
31 | bundle: true,
32 | format: 'cjs',
33 | minify: production,
34 | sourcemap: !production,
35 | sourcesContent: false,
36 | platform: 'node',
37 | outfile: 'dist/extension.js',
38 | external: ['vscode'],
39 | logLevel: 'silent',
40 | plugins: [
41 | /* add to the end of plugins array */
42 | esbuildProblemMatcherPlugin,
43 | ],
44 | });
45 | if (watch) {
46 | await ctx.watch();
47 | } else {
48 | await ctx.rebuild();
49 | await ctx.dispose();
50 | }
51 | }
52 |
53 | main().catch(e => {
54 | console.error(e);
55 | process.exit(1);
56 | });
57 |
--------------------------------------------------------------------------------
/src/mac.ts:
--------------------------------------------------------------------------------
1 | import { execSync } from "child_process";
2 | import { AppVersionInfo } from "./types";
3 | import * as nls from "vscode-nls";
4 |
5 | const localize = nls.loadMessageBundle();
6 |
7 | /**
8 | * 获取所有已安装的 After Effects 应用
9 | */
10 | export function getApps(): AppVersionInfo[] {
11 | try {
12 | const command = `mdfind "kMDItemCFBundleIdentifier == 'com.adobe.AfterEffects'"`;
13 | const stdout = execSync(command, { encoding: "utf8" });
14 |
15 | const apps = stdout
16 | .split("\n")
17 | .filter((path) => path.trim() !== "")
18 | .map((fullPath) => {
19 | const fileName = fullPath.split("/").pop() || "Unknown";
20 | return {
21 | label: fileName.replace(/\.app$/, ""),
22 | description: fullPath.trim(),
23 | };
24 | });
25 |
26 | if (apps.length === 0) {
27 | throw new Error(
28 | localize("error.noAeFound", "No After Effects installation found")
29 | );
30 | }
31 |
32 | return apps;
33 | } catch (error) {
34 | console.error(`Failed to get AE apps: ${error}`);
35 | throw new Error(
36 | localize(
37 | "error.getAppsFailed",
38 | "Failed to get After Effects apps: {0}",
39 | String(error)
40 | )
41 | );
42 | }
43 | }
44 |
45 | /**
46 | * 在 After Effects 中执行 JSX 脚本
47 | */
48 | export async function executeJsx(
49 | appPath: string,
50 | scriptPath: string
51 | ): Promise {
52 | try {
53 | // 转义路径中的特殊字符
54 | const escapedAppPath = appPath.replace(/'/g, "'\\''");
55 | const escapedScriptPath = scriptPath.replace(/'/g, "'\\''");
56 |
57 | const command = `osascript -e 'tell application "${escapedAppPath}" to DoScriptFile (POSIX file "${escapedScriptPath}")'`;
58 |
59 | const output = execSync(command, {
60 | encoding: "utf8",
61 | timeout: 30000,
62 | });
63 |
64 | console.log(`✅ Script executed successfully: ${output}`);
65 | } catch (error) {
66 | console.error(
67 | localize(
68 | "error.executionFailed",
69 | "Failed to execute script: {0}",
70 | String(error)
71 | )
72 | );
73 | }
74 | }
75 |
--------------------------------------------------------------------------------
/src/win.ts:
--------------------------------------------------------------------------------
1 | import { execSync } from "child_process";
2 | import { Buffer } from "buffer";
3 | import { AppVersionInfo } from "./types";
4 | import * as nls from "vscode-nls";
5 |
6 | const localize = nls.loadMessageBundle();
7 | const EXEC_TIMEOUT = 30000;
8 |
9 | /**
10 | * 获取所有正在运行的 After Effects 实例
11 | */
12 | export function getApps(): AppVersionInfo[] {
13 | const psScript = `
14 | $AfterProcess = Get-WmiObject -Class Win32_Process -Filter 'Name="AfterFX.exe"' | Select-Object -ExpandProperty Path
15 | $ae = Get-ChildItem 'HKLM:\\SOFTWARE\\Adobe\\After Effects' |
16 | Select-Object -ExpandProperty Name |
17 | ForEach-Object {
18 | $name = $_ -replace 'HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Adobe\\\\After Effects\\\\'
19 | $InstallPath = (Get-ItemPropertyValue ('HKLM:\\\\SOFTWARE\\\\Adobe\\\\After Effects\\\\' + $name) -Name "InstallPath") + 'AfterFX.exe'
20 | if ($AfterProcess -contains $InstallPath) {
21 | @{label = $name; description = $InstallPath }
22 | }
23 | }
24 | if ($ae) {
25 | Write-Output ($ae | ConvertTo-Json -Compress)
26 | } else {
27 | Write-Output "[]"
28 | }
29 | `.trim();
30 |
31 | try {
32 | const psScriptBase64 = Buffer.from(psScript, "utf16le").toString("base64");
33 | const stdoutBuffer = execSync(
34 | `powershell.exe -NoProfile -ExecutionPolicy Bypass -EncodedCommand ${psScriptBase64}`,
35 | { encoding: "utf8", timeout: EXEC_TIMEOUT }
36 | );
37 |
38 | const stdoutData = stdoutBuffer.trim();
39 |
40 | if (!stdoutData || stdoutData === "[]") {
41 | throw new Error(
42 | localize("error.noRunningAe", "No running After Effects instance found")
43 | );
44 | }
45 |
46 | const aes = JSON.parse(stdoutData);
47 | return Array.isArray(aes) ? aes : [aes];
48 | } catch (error) {
49 | console.error("Failed to get AE apps:", error);
50 | throw new Error(
51 | localize(
52 | "error.getAppsFailed",
53 | "Failed to get After Effects apps: {0}",
54 | String(error)
55 | )
56 | );
57 | }
58 | }
59 |
60 | /**
61 | * 在 After Effects 中执行 JSX 脚本
62 | */
63 | export async function executeJsx(
64 | aePath: string,
65 | scriptPath: string
66 | ): Promise {
67 | try {
68 | execSync(`"${aePath}" -r ${scriptPath}`, {
69 | timeout: EXEC_TIMEOUT,
70 | });
71 | console.log(`✅ Script executed successfully`);
72 | } catch (error) {
73 | console.error(
74 | localize(
75 | "error.executionFailed",
76 | "Failed to execute script: {0}",
77 | String(error)
78 | )
79 | );
80 | }
81 | }
82 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "ae-tsx-runner",
3 | "displayName": "Adobe AE jsx && tsx Runner",
4 | "description": "Run Adobe After Effects jsx or tsx Script without ExtendScript Toolkit.",
5 | "version": "0.8.0",
6 | "publisher": "yuelili",
7 | "repository": {
8 | "type": "git",
9 | "url": "https://github.com/Yuelioi/vscode-ae-script-tsx-linker.git"
10 | },
11 | "homepage": "https://github.com/Yuelioi/vscode-ae-script-tsx-linker",
12 | "engines": {
13 | "vscode": "^1.105.0"
14 | },
15 | "categories": [
16 | "Other"
17 | ],
18 | "activationEvents": [],
19 | "keywords": [
20 | "ae",
21 | "after effects",
22 | "extendscript",
23 | "jsx",
24 | "tsx",
25 | "runner"
26 | ],
27 | "icon": "img/icon.png",
28 | "main": "./dist/extension.js",
29 | "contributes": {
30 | "commands": [
31 | {
32 | "command": "runrun.JSXScript",
33 | "title": "%command.runScript%",
34 | "icon": {
35 | "light": "./img/light.svg",
36 | "dark": "./img/dark.svg"
37 | }
38 | }
39 | ],
40 | "menus": {
41 | "editor/title": [
42 | {
43 | "when": "resourceExtname == .jsx || resourceExtname == .tsx || resourceExtname == .ts || resourceExtname == .jsxbin",
44 | "command": "runrun.JSXScript",
45 | "group": "navigation"
46 | }
47 | ],
48 | "editor/context": [
49 | {
50 | "when": "resourceExtname == .jsx || resourceExtname == .tsx || resourceExtname == .ts || resourceExtname == .jsxbin",
51 | "command": "runrun.JSXScript",
52 | "group": "navigation"
53 | }
54 | ]
55 | },
56 | "configuration": {
57 | "title": "%configuration.title%",
58 | "properties": {
59 | "ae-tsx-runner.hostSpecifier": {
60 | "type": "string",
61 | "default": "",
62 | "description": "%configuration.hostSpecifier.description%",
63 | "order": 1
64 | },
65 | "ae-tsx-runner.buildTool": {
66 | "type": "string",
67 | "enum": [
68 | "auto",
69 | "tsc",
70 | "rollup",
71 | "webpack",
72 | "esbuild"
73 | ],
74 | "default": "auto",
75 | "description": "%configuration.buildTool.description%",
76 | "enumDescriptions": [
77 | "%configuration.buildTool.auto%",
78 | "%configuration.buildTool.tsc%",
79 | "%configuration.buildTool.rollup%",
80 | "%configuration.buildTool.webpack%",
81 | "%configuration.buildTool.esbuild%"
82 | ],
83 | "order": 2
84 | },
85 | "ae-tsx-runner.customBuildCommand": {
86 | "type": "string",
87 | "default": "",
88 | "description": "%configuration.customBuildCommand.description%",
89 | "order": 3
90 | },
91 | "ae-tsx-runner.input": {
92 | "type": "string",
93 | "default": "",
94 | "description": "%configuration.input.description%",
95 | "order": 4
96 | },
97 | "ae-tsx-runner.output": {
98 | "type": "string",
99 | "default": "",
100 | "description": "%configuration.output.description%",
101 | "order": 5
102 | }
103 | }
104 | }
105 | },
106 | "scripts": {
107 | "vscode:prepublish": "npm run esbuild-base -- --minify",
108 | "esbuild-base": "esbuild ./src/extension.ts --bundle --outfile=out/main.js --external:vscode --format=cjs --platform=node",
109 | "package": "pnpm vsce package --no-dependencies",
110 | "publish": "pnpm vsce publish --no-dependencies",
111 | "watch": "npm-run-all -p watch:*",
112 | "watch:esbuild": "node esbuild.js --watch",
113 | "watch:tsc": "tsc --noEmit --watch --project tsconfig.json"
114 | },
115 | "devDependencies": {
116 | "@types/glob": "^8.1.0",
117 | "@types/mocha": "^10.0.10",
118 | "@types/node": "24.7.2",
119 | "@types/vscode": "1.105.0",
120 | "@typescript-eslint/eslint-plugin": "8.46.0",
121 | "@typescript-eslint/parser": "8.46.0",
122 | "@vscode/test-electron": "2.5.2",
123 | "del": "8.0.1",
124 | "eslint": "9.37.0",
125 | "glob": "11.0.3",
126 | "mocha": "11.7.4",
127 | "nodemon": "3.1.10",
128 | "run-sequence": "^2.2.1",
129 | "ts-loader": "^9.5.4",
130 | "typescript": "5.9.3",
131 | "vscode-nls-dev": "^4.0.4",
132 | "esbuild": "^0.25.10"
133 | },
134 | "dependencies": {
135 | "fs-extra": "^10.1.0",
136 | "json5": "^2.2.3",
137 | "vscode-nls": "^5.2.0"
138 | },
139 | "license": "MIT"
140 | }
--------------------------------------------------------------------------------
/README-ZH.md:
--------------------------------------------------------------------------------
1 | # AE Script Runner for VS Code 🚀
2 |
3 | [](https://marketplace.visualstudio.com/items?itemName=yourname.ae-script-runner)
4 | [](https://license/)
5 | [](https://www.adobe.com/products/aftereffects.html)
6 | [](https://www.adobe.com/products/aftereffects.html)
7 |
8 | 专为 After Effects 开发者设计的 VS Code 扩展,提供 TypeScript 工作流支持与多版本 AE 脚本执行能力。
9 |
10 | *▲ 在 VS Code 中直接运行 AE 脚本*
11 |
12 | [中文说明](README-ZH.md) | [English](README.md) | [Japanese](README-JP.md)
13 |
14 | ## ✨ 功能特性
15 |
16 | * 🎯 **一键运行** - 直接在 VS Code 中执行 AE 脚本
17 | * 📦 **支持 TypeScript** - 完整支持 `.tsx` / `.ts` 编译
18 | * 🔄 **多种构建工具** - 自动检测 Rollup、Webpack、esbuild 或 tsc
19 | * 🌍 **多语言界面** - 支持英文与中文
20 | * 🖥️ **跨平台** - 兼容 Windows 与 macOS
21 | * ⚡ **智能检测** - 自动识别正在运行的 AE 实例
22 |
23 | ## 🚀 快速开始
24 |
25 | ### 1️⃣ 安装
26 |
27 | 在 VS Code 插件市场中搜索并安装 **Adobe After Effects Script Runner**
28 |
29 | ---
30 |
31 | ### 2️⃣ 使用方法
32 |
33 | 1. 打开任意 `.jsx`、`.tsx`、`.ts` 或 `.jsxbin` 文件
34 | 2. 确保 Adobe After Effects 已经运行
35 | 3. 点击编辑器工具栏中的 ▶ **运行脚本** 按钮
36 |
37 | 
38 | *▲ 支持多版本 AE 自动检测*
39 |
40 | ---
41 |
42 | ### 3️⃣ TypeScript 项目配置安装扩展依赖
43 |
44 | ```bash
45 | npm install -D typescript rollup @rollup/plugin-typescript
46 | ```
47 |
48 | ---
49 |
50 | 创建 `tsconfig.json`:
51 |
52 | ```json
53 | {
54 | "compilerOptions": {
55 | "target": "ES3",
56 | "outDir": "./dist",
57 | "strict": true,
58 | "types": ["./node_modules/types-for-adobe/AfterEffects/22.0"]
59 | },
60 | "include": ["src/**/*.ts", "src/**/*.tsx"]
61 | }
62 | ```
63 |
64 | ## ⚙️ 插件配置
65 |
66 | 打开 VS Code 设置或 `.vscode/settings.json`:
67 |
68 | ```json
69 | {
70 | "ae-tsx-runner.hostSpecifier": "aftereffects-25.0",
71 | "ae-tsx-runner.buildTool": "auto"
72 | }
73 |
74 | ```
75 |
76 | 更多关于 `hostSpecifier` 的信息请参考:
77 |
78 | 👉 [Adobe.extendscript-debug hostAppSpecifier](https://marketplace.visualstudio.com/items?itemName=Adobe.extendscript-debug)
79 |
80 | ### 配置选项说明
81 |
82 | | 设置项 | 说明 | 默认值 |
83 | | ---------------------- | --------------------------------------------------------------------- | ---------------------------- |
84 | | `hostSpecifier` | 要使用的 AE 版本(如 `"aftereffects-25.0"`) | `""`(若为空则弹出选择器) |
85 | | `buildTool` | 构建工具类型:`auto`、`tsc`、`rollup`、`webpack`、`esbuild` | `auto` |
86 | | `customBuildCommand` | 自定义构建命令(例如 `npm run build`) | `""` |
87 |
88 | ### Rollup 配置示例
89 |
90 | 可以从 `.vscode/settings.json` 中读取输入/输出路径:
91 |
92 | ```js
93 | // rollup.config.js
94 | import { readFileSync } from 'fs';
95 | import JSON5 from 'json5';
96 |
97 | const settings = JSON5.parse(readFileSync('.vscode/settings.json', 'utf8'));
98 | const input = settings['ae-tsx-runner.input'] || 'src/main.tsx';
99 | const output = settings['ae-tsx-runner.output'] || 'dist/main.jsx';
100 |
101 | export default {
102 | input,
103 | output: { file: output, format: 'cjs' },
104 | // ... 其他配置
105 | };
106 | ```
107 |
108 | ## 📁 项目结构
109 |
110 | your-project/
111 | ├── .vscode/
112 | │ └── settings.json # 自动生成的配置文件
113 | ├── src/
114 | │ └── main.tsx # 你的脚本源码
115 | ├── dist/
116 | │ └── main.jsx # 编译输出
117 | ├── tsconfig.json
118 | ├── rollup.config.js # 可选构建配置
119 | └── package.json
120 |
121 | ## 🔧 构建工具选项
122 |
123 | 自动检测(推荐)
124 |
125 | ```json
126 | {
127 | "ae-tsx-runner.buildTool": "auto" // 默认
128 | }
129 | ```
130 |
131 | 手动选择
132 |
133 | ```json
134 | {
135 | "ae-tsx-runner.buildTool": "rollup" // 或 "webpack"、"esbuild"、"tsc"
136 | }
137 | ```
138 |
139 | 自定义命令
140 |
141 | ```json
142 | {
143 | "ae-tsx-runner.customBuildCommand": "npm run build:ae"
144 | }
145 | ```
146 |
147 | ## 📋 示例
148 |
149 | ### 示例 1:简单 JSX 脚本
150 |
151 | ```js
152 | // script.jsx
153 | alert("Hello from AE!");
154 |
155 | ```
156 |
157 | 直接点击 ▶ 运行 即可,无需额外配置!
158 |
159 | ### 示例 2:TypeScript 项目
160 |
161 | ```js
162 |
163 | // src/main.tsx
164 | interface CompSettings {
165 | name: string;
166 | duration: number;
167 | }
168 |
169 | const settings: CompSettings = {
170 | name: "My Comp",
171 | duration: 5
172 | };
173 |
174 | const comp = app.project.items.addComp(
175 | settings.name,
176 | 1920,
177 | 1080,
178 | 1,
179 | settings.duration,
180 | 30
181 | );
182 |
183 | alert(`已创建合成: ${comp.name}`);
184 | ```
185 |
186 | 插件会自动编译并运行脚本!
187 |
188 | ## 🐛 常见问题(FAQ)
189 |
190 | ### ❌ “No running After Effects instance found”
191 |
192 | **解决方案** :运行脚本前请确保 AE 已启动。
193 |
194 | ---
195 |
196 | ### ⚠️ “Build failed”
197 |
198 | **解决方案** :
199 |
200 | 1. 检查 `tsconfig.json` 配置
201 | 2. 确认已安装构建工具(`npm install`)
202 | 3. 打开 VS Code “输出” 面板查看详细错误信息
203 |
204 | ---
205 |
206 | ### ⚠️ “Output file not generated”
207 |
208 | **解决方案** :
209 |
210 | 1. 检查 `tsconfig.json` 中的 `outDir`
211 | 2. 确认 `dist` 文件夹可写
212 | 3. 尝试手动执行构建命令
213 |
214 | ---
215 |
216 | ## 📝 更新日志
217 |
218 | ### v0.9.0(最新)
219 |
220 | * ✨ 新增多构建工具支持(Rollup、Webpack、esbuild、tsc)
221 | * 🌍 新增国际化(i18n)支持
222 | * ⚡ 改进配置管理机制
223 | * 🐛 修复配置保存问题
224 | * 📚 优化错误提示信息
225 |
226 | ### v0.7.0
227 |
228 | * ✅ 新增 macOS 支持
229 | * 🔧 改进 AE 版本检测
230 |
231 | 👉 [查看完整更新日志](CHANGELOG.md)
232 |
233 | ## 📄 许可证
234 |
235 | [MIT License](LICENSE) © 2025 Yueli
236 |
237 | ---
238 |
239 | ## 🙏 致谢
240 |
241 | 特别感谢以下项目:
242 |
243 | * [Types-for-Adobe](https://github.com/aenhancers/Types-for-Adobe) - 提供 AE 类型定义
244 | * [ae-script-runner](https://github.com/atarabi/vscode-ae-script-runner) - 插件灵感来源
245 |
246 | ---
247 |
248 | ## 💬 反馈与建议
249 |
250 | 发现 Bug 或有新功能想法?
251 |
252 | 👉 [在 GitHub 提交 Issue](https://github.com/Yuelioi/vscode-ae-script-tsx-linker/issues)
253 |
--------------------------------------------------------------------------------
/README-JP.md:
--------------------------------------------------------------------------------
1 | # AEスクリプト実行ツール for VS Code 🚀
2 |
3 | [](https://marketplace.visualstudio.com/items?itemName=yourname.ae-script-runner)
4 | [](https://license/)
5 | [](https://www.adobe.com/products/aftereffects.html)
6 | [](https://www.adobe.com/products/aftereffects.html)
7 |
8 | VS Code から直接 **Adobe After Effects スクリプト(`.jsx`, `.tsx`, `.ts`, `.jsxbin`)** を実行できます。
9 |
10 | *▲ VS Code から直接スクリプトを実行可能*
11 |
12 | [中文说明](README-ZH.md) | [English](README.md) | [Japanese](README-JP.md)
13 |
14 | ## ✨ 機能
15 |
16 | * 🎯 **ワンクリック実行** - After Effects スクリプトを VS Code から直接実行
17 | * 📦 **TypeScript 対応** - `.tsx` / `.ts` コンパイルを完全サポート
18 | * 🔄 **ビルドツール自動検出** - Rollup / Webpack / esbuild / tsc を自動判定
19 | * 🌍 **多言語対応** - 英語・中国語 UI
20 | * 🖥️ **クロスプラットフォーム** - Windows / macOS 対応
21 | * ⚡ **スマート検出** - 起動中の AE インスタンスを自動検出
22 |
23 | 🚀 クイックスタート
24 |
25 | ### ① インストール
26 |
27 | VS Code Marketplace からインストールします。
28 |
29 | ### ② 使い方
30 |
31 | 1. `.jsx`, `.tsx`, `.ts`, `.jsxbin` ファイルを開く
32 | 2. After Effects を起動しておく
33 | 3. エディタツールバーの ▶ **Run Script** ボタンをクリック
34 |
35 | 
36 |
37 | *▲ マルチバージョンAE検出インターフェース*
38 |
39 | ③ TypeScript プロジェクトの場合
40 |
41 | 依存関係をインストール:
42 |
43 | ```bash
44 | npm install -D typescript rollup @rollup/plugin-typescript
45 | ```
46 |
47 | tsconfig.json を作成:
48 |
49 | ```json
50 | {
51 | "compilerOptions": {
52 | "target": "ES3",
53 | "outDir": "./dist",
54 | "strict": true,
55 | "types": ["./node_modules/types-for-adobe/AfterEffects/22.0"]
56 | },
57 | "include": ["src/**/*.ts", "src/**/*.tsx"]
58 | }
59 |
60 | ```
61 |
62 | ## ⚙️ 設定
63 |
64 | VS Code の設定(`.vscode/settings.json`)でカスタマイズ可能です:
65 |
66 | ```json
67 | {
68 | "ae-tsx-runner.hostSpecifier": "aftereffects-25.0",
69 | "ae-tsx-runner.buildTool": "auto"
70 | }
71 |
72 | ```
73 |
74 | ### 設定オプション一覧
75 |
76 | | 設定項目 | 説明 | 既定値 |
77 | | ---------------------- | --------------------------------------------------------------------- | ---------------------- |
78 | | `hostSpecifier` | 使用する AE バージョン(例:`aftereffects-25.0`) | 空欄(または選択画面) |
79 | | `buildTool` | 使用ビルドツール:`auto`/`tsc`/`rollup`/`webpack`/`esbuild` | `auto` |
80 | | `customBuildCommand` | カスタムビルドコマンド(例:`npm run build`) | `""` |
81 |
82 | ### Rollup 設定例
83 |
84 | `.vscode/settings.json` から入力/出力パスを読み込み可能:
85 |
86 | ```js
87 | // rollup.config.js
88 | import { readFileSync } from 'fs';
89 | import JSON5 from 'json5';
90 |
91 | const settings = JSON5.parse(readFileSync('.vscode/settings.json', 'utf8'));
92 | const input = settings['ae-tsx-runner.input'] || 'src/main.tsx';
93 | const output = settings['ae-tsx-runner.output'] || 'dist/main.jsx';
94 |
95 | export default {
96 | input,
97 | output: { file: output, format: 'cjs' },
98 | // ...その他の設定
99 | };
100 |
101 | ```
102 |
103 | ---
104 |
105 | ## 📁 プロジェクト構成
106 |
107 | ```textyour-project/
108 | ├── .vscode/
109 | │ └── settings.json # 自動生成設定
110 | ├── src/
111 | │ └── main.tsx # スクリプト本体
112 | ├── dist/
113 | │ └── main.jsx # 出力結果
114 | ├── tsconfig.json
115 | ├── rollup.config.js # 任意
116 | └── package.json
117 | ```
118 |
119 | ---
120 |
121 | ## 🔧 ビルドツール設定
122 |
123 | 複数のビルドツールをサポートします。
124 |
125 | ### 自動検出(推奨)
126 |
127 | ```json
128 | {
129 | "ae-tsx-runner.buildTool": "auto"
130 | }
131 | ```
132 |
133 | 検出順序:Rollup → Webpack → esbuild → tsc
134 |
135 | ---
136 |
137 | ### 手動指定
138 |
139 | ```json
140 | {
141 | "ae-tsx-runner.buildTool": "rollup"
142 | }
143 |
144 | ```
145 |
146 | ---
147 |
148 | ### カスタムコマンド
149 |
150 | ```json
151 | {
152 | "ae-tsx-runner.customBuildCommand": "npm run build:ae"
153 | }
154 |
155 | ```
156 |
157 | ---
158 |
159 | ## 📋 使用例
160 |
161 | ### 例①:シンプルな JSX スクリプト
162 |
163 | ```js
164 | // script.jsx
165 | alert("Hello from AE!");
166 | ```
167 |
168 | ▶ **Run** をクリックするだけ!
169 |
170 | ---
171 |
172 | ### 例②:TypeScript プロジェクト
173 |
174 | ```js
175 | // src/main.tsx
176 | interface CompSettings {
177 | name: string;
178 | duration: number;
179 | }
180 |
181 | const settings: CompSettings = {
182 | name: "My Comp",
183 | duration: 5
184 | };
185 |
186 | const comp = app.project.items.addComp(
187 | settings.name,
188 | 1920,
189 | 1080,
190 | 1,
191 | settings.duration,
192 | 30
193 | );
194 |
195 | alert(`Created: ${comp.name}`);
196 |
197 | ```
198 |
199 | 拡張機能が自動でコンパイル・実行します!
200 |
201 | ---
202 |
203 | ## 🐛 トラブルシューティング
204 |
205 | ### 「After Effects のインスタンスが見つかりません」
206 |
207 | ➡ AE を起動してからスクリプトを実行してください。
208 |
209 | ---
210 |
211 | ### 「ビルドに失敗しました」
212 |
213 | ➡ 次の点を確認してください:
214 |
215 | 1. `tsconfig.json` の設定
216 | 2. `npm install` で依存関係がインストール済みか
217 | 3. 出力パネルのエラーメッセージを確認
218 |
219 | ---
220 |
221 | ### 「出力ファイルが生成されない」
222 |
223 | ➡ 以下を確認:
224 |
225 | 1. `tsconfig.json` の `outDir`
226 | 2. `dist` フォルダの書き込み権限
227 | 3. 手動でビルドコマンドを実行してみる
228 |
229 | ---
230 |
231 | ## 📝 更新履歴
232 |
233 | ### v0.9.0(最新)
234 |
235 | * ✨ 複数ビルドツール対応(Rollup / Webpack / esbuild / tsc)
236 | * 🌍 国際化対応(i18n)
237 | * ⚡ 設定管理を改善
238 | * 🐛 設定保存の不具合を修正
239 | * 📚 エラーメッセージの改善
240 |
241 | ---
242 |
243 | ### v0.7.0
244 |
245 | * ✅ macOS 対応を追加
246 | * 🔧 AE バージョン検出を改善
247 |
248 | [完全な更新履歴を見る](CHANGELOG.md)
249 |
250 | ---
251 |
252 | ## 📄 ライセンス
253 |
254 | [MIT License](LICENSE) © 2025 Yueli
255 |
256 | ---
257 |
258 | ## 🙏 クレジット
259 |
260 | 特別感謝:
261 |
262 | * [Types-for-Adobe](https://github.com/aenhancers/Types-for-Adobe) — 型定義の提供
263 | * [ae-script-runner](https://github.com/atarabi/vscode-ae-script-runner) — インスピレーション元
264 |
265 | ---
266 |
267 | ## 💬 フィードバック
268 |
269 | バグ報告や機能要望はぜひこちらへ:
270 |
271 | 👉 [Issue を開く](https://github.com/Yuelioi/vscode-ae-script-tsx-linker/issues)
272 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Adobe After Effects Script Runner for VS Code 🚀
2 |
3 | [](https://marketplace.visualstudio.com/items?itemName=yourname.ae-script-runner)
4 | [](https://license/)
5 | [](https://www.adobe.com/products/aftereffects.html)
6 | [](https://www.adobe.com/products/aftereffects.html)
7 |
8 | Run Adobe After Effect scripts (`.jsx`, `.tsx`, `.ts`, `.jsxbin`) directly from VS Code
9 |
10 | *▲ Direct script execution from VS Code interface*
11 |
12 | [中文说明](README-ZH.md) | [English](README.md) | [Japanese](README-JP.md)
13 |
14 | ## ✨ Features
15 |
16 | * 🎯 **Direct Execution** - Run AE scripts with one click
17 | * 📦 **TypeScript Support** - Full `.tsx`/`.ts` compilation support
18 | * 🔄 **Multiple Build Tools** - Auto-detect Rollup, Webpack, esbuild, or tsc
19 | * 🌍 **Multi-Language** - English and Chinese interface
20 | * 🖥️ **Cross-Platform** - Works on Windows and macOS
21 | * ⚡ **Smart Detection** - Auto-detect running AE instances
22 |
23 | ## 🚀 Quick Start
24 |
25 | ### 1. Installation
26 |
27 | Install from VS Code Marketplace
28 |
29 | ### 2. Usage
30 |
31 | Open any `.jsx`, `.tsx`, `.ts`, or `.jsxbin` file
32 |
33 | Make sure After Effects is running
34 |
35 | Click the ▶ Run Script button in the editor toolbar
36 |
37 | 
38 | *▲ Multi-version AE detection interface*
39 |
40 | ### 3. For TypeScript Projects
41 |
42 | Install dependencies:
43 |
44 | ```cmd
45 | npm install -D typescript rollup @rollup/plugin-typescript
46 | ```
47 |
48 | Create `tsconfig.json`:
49 |
50 | ```json
51 | {
52 | "compilerOptions": {
53 | "target": "ES3",
54 | "outDir": "./dist",
55 | "strict": true,
56 | "types": ["./node_modules/types-for-adobe/AfterEffects/22.0"]
57 | },
58 | "include": ["src/**/*.ts", "src/**/*.tsx"]
59 | }
60 | ```
61 |
62 | ## ⚙️ Configuration
63 |
64 | Open VS Code settings and configure:
65 |
66 | Basic Settings `.vscode/settings.json`
67 |
68 | ```json
69 | {
70 | "ae-tsx-runner.hostSpecifier": "aftereffects-25.0",
71 | "ae-tsx-runner.buildTool": "auto"
72 | }
73 | ```
74 |
75 | More info about hostSpecifier : [Adobe.extendscript-debug hostAppSpecifier](https://marketplace.visualstudio.com/items?itemName=Adobe.extendscript-debug)
76 |
77 | ### Available Options
78 |
79 | | Setting | Description | Default |
80 | | ---------------------- | -------------------------------------------------------------- | ----------------------- |
81 | | `hostSpecifier` | AE version to use (e.g., "aftereffects-25.0") | `""`(or shows picker) |
82 | | `buildTool` | Build tool:`auto`,`tsc`,`rollup`,`webpack`,`esbuild` | `auto` |
83 | | `customBuildCommand` | Custom build command (e.g.,`npm run build`) | `""` |
84 |
85 | ### Rollup Configuration
86 |
87 | You can read input/output paths from `.vscode/settings.json`:
88 |
89 | javascript
90 |
91 | ```javascript
92 | // rollup.config.js
93 | import{ readFileSync }from'fs';
94 | importJSON5from'json5';
95 |
96 | const settings =JSON5.parse(readFileSync('.vscode/settings.json','utf8'));
97 | const input = settings['ae-tsx-runner.input']||'src/main.tsx';
98 | const output = settings['ae-tsx-runner.output']||'dist/main.jsx';
99 |
100 | exportdefault{
101 | input,
102 | output:{file: output,format:'cjs'},
103 | // ... other config
104 | };
105 | ```
106 |
107 | ---
108 |
109 | ## 📁 Project Structure
110 |
111 | ```text
112 | your-project/
113 | ├── .vscode/
114 | │ └── settings.json # Auto-generated config
115 | ├── src/
116 | │ └── main.tsx # Your script
117 | ├── dist/
118 | │ └── main.jsx # Compiled output
119 | ├── tsconfig.json
120 | ├── rollup.config.js # Optional
121 | └── package.json
122 | ```
123 |
124 | ---
125 |
126 | ## 🔧 Build Tool Options
127 |
128 | The extension supports multiple build tools:
129 |
130 | ### Auto-detect (Recommended)
131 |
132 | json
133 |
134 | ```json
135 | {
136 | "ae-tsx-runner.buildTool":"auto" // default
137 | }
138 | ```
139 |
140 | Auto-detects: Rollup → Webpack → esbuild → tsc
141 |
142 | ### Manual Selection
143 |
144 | json
145 |
146 | ```json
147 | {
148 | "ae-tsx-runner.buildTool":"rollup"// or "webpack", "esbuild", "tsc"
149 | }
150 | ```
151 |
152 | ### Custom Command
153 |
154 | json
155 |
156 | ```json
157 | {
158 | "ae-tsx-runner.customBuildCommand":"npm run build:ae"
159 | }
160 | ```
161 |
162 | ---
163 |
164 | ## 📋 Examples
165 |
166 | ### Example 1: Simple JSX Script
167 |
168 | javascript
169 |
170 | ```javascript
171 | // script.jsx
172 | alert("Hello from AE!");
173 | ```
174 |
175 | Just click **▶ Run** - no configuration needed!
176 |
177 | ### Example 2: TypeScript Project
178 |
179 | typescript
180 |
181 | ```typescript
182 | // src/main.tsx
183 | interfaceCompSettings{
184 | name:string;
185 | duration:number;
186 | }
187 |
188 | const settings:CompSettings={
189 | name:"My Comp",
190 | duration:5
191 | };
192 |
193 | const comp = app.project.items.addComp(
194 | settings.name,
195 | 1920,
196 | 1080,
197 | 1,
198 | settings.duration,
199 | 30
200 | );
201 |
202 | alert(`Created: ${comp.name}`);
203 | ```
204 |
205 | The extension will automatically compile and run!
206 |
207 | ---
208 |
209 | ## 🐛 Troubleshooting
210 |
211 | ### "No running After Effects instance found"
212 |
213 | **Solution** : Make sure After Effects is running before executing the script.
214 |
215 | ### "Build failed"
216 |
217 | **Solution** :
218 |
219 | 1. Check your `tsconfig.json` configuration
220 | 2. Make sure build tools are installed: `npm install`
221 | 3. Check the Output panel for detailed errors
222 |
223 | ### "Output file not generated"
224 |
225 | **Solution** :
226 |
227 | 1. Verify `outDir` in `tsconfig.json`
228 | 2. Check if `dist` folder has write permissions
229 | 3. Try running the build command manually
230 |
231 | ## 📝 Changelog
232 |
233 | ### v0.9.0 (Latest)
234 |
235 | * ✨ Added multi-build-tool support (Rollup, Webpack, esbuild, tsc)
236 | * 🌍 Added internationalization (i18n) support
237 | * ⚡ Improved configuration management
238 | * 🐛 Fixed configuration save issues
239 | * 📚 Enhanced error messages
240 |
241 | ### v0.7.0
242 |
243 | * ✅ Added macOS support
244 | * 🔧 Improved AE version detection
245 |
246 | [Full Changelog](CHANGELOG.md)
247 |
248 | ---
249 |
250 | ## 📄 License
251 |
252 | [MIT License](LICENSE) © 2025 Yueli
253 |
254 | ---
255 |
256 | ## 🙏 Credits
257 |
258 | Special thanks to:
259 |
260 | * [Types-for-Adobe](https://github.com/aenhancers/Types-for-Adobe) for type definitions
261 | * [ae-script-runner](https://github.com/atarabi/vscode-ae-script-runner) for inspiration
262 |
263 | ---
264 |
265 | ## 💬 Feedback
266 |
267 | Found a bug or have a feature request?
268 |
269 | 👉 [Open an issue](https://github.com/Yuelioi/vscode-ae-script-tsx-linker/issues)
270 |
--------------------------------------------------------------------------------
/src/extension.ts:
--------------------------------------------------------------------------------
1 | import * as vscode from "vscode";
2 | import { exec } from "child_process";
3 | import { existsSync, readFileSync } from "fs";
4 | import * as path from "path";
5 | import { promisify } from "util";
6 | import { AppVersionInfo, TsConfig, BuildTool } from "./types";
7 | import * as nls from "vscode-nls";
8 |
9 | import JSON5 from "json5";
10 |
11 | const localize = nls.loadMessageBundle();
12 | const execAsync = promisify(exec);
13 |
14 | let getApps: () => AppVersionInfo[];
15 | let executeJsx: (aePath: string, scriptPath: string) => Promise;
16 |
17 | // 动态加载平台特定模块
18 | async function loadPlatformModule() {
19 | if (process.platform === "win32") {
20 | const module = await import("./win");
21 | getApps = module.getApps;
22 | executeJsx = module.executeJsx;
23 | } else if (process.platform === "darwin") {
24 | const module = await import("./mac");
25 | getApps = module.getApps;
26 | executeJsx = module.executeJsx;
27 | } else {
28 | throw new Error(
29 | localize("error.unsupportedPlatform", "Unsupported platform")
30 | );
31 | }
32 | }
33 |
34 | // 常量配置
35 | const CONFIG_SECTION = "ae-tsx-runner";
36 | const DEFAULT_OUT_DIR = "dist";
37 | const EXEC_TIMEOUT = 30000;
38 |
39 | // 工具函数
40 | function getWorkspaceFolder(): string {
41 | const folder = vscode.workspace.workspaceFolders?.[0]?.uri.fsPath;
42 | if (!folder) {
43 | throw new Error(
44 | localize("error.noWorkspace", "Please open a workspace folder first")
45 | );
46 | }
47 | return folder;
48 | }
49 |
50 | function getConfiguration(): vscode.WorkspaceConfiguration {
51 | return vscode.workspace.getConfiguration(CONFIG_SECTION);
52 | }
53 |
54 | async function selectAeVersion(versions: AppVersionInfo[]): Promise {
55 | const config = getConfiguration();
56 | const hostSpecifier = config.get("hostSpecifier");
57 |
58 | // 优先使用配置版本
59 | if (hostSpecifier) {
60 | const matched = versions.find((v) => v.label === hostSpecifier);
61 | if (matched) {
62 | return matched.description;
63 | }
64 | vscode.window.showWarningMessage(
65 | localize(
66 | "warning.versionNotFound",
67 | "Configured version {0} not found",
68 | hostSpecifier
69 | )
70 | );
71 | }
72 |
73 | // 显示版本选择器
74 | const selection = await vscode.window.showQuickPick(
75 | versions.map((v) => ({
76 | label: `AE ${v.label}`,
77 | description: v.description,
78 | detail: localize(
79 | "detail.installPath",
80 | "Install path: {0}",
81 | v.description
82 | ),
83 | })),
84 | {
85 | placeHolder: localize(
86 | "placeholder.selectVersion",
87 | "Select running After Effects version"
88 | ),
89 | ignoreFocusOut: true,
90 | }
91 | );
92 |
93 | if (!selection) {
94 | throw new Error(
95 | localize("error.noVersionSelected", "No AE version selected")
96 | );
97 | }
98 | return selection.description;
99 | }
100 |
101 | function getTsconfig(): { tsConfigPath: string; tsConfig: TsConfig } {
102 | const workspaceFolder = getWorkspaceFolder();
103 | const tsConfigPath = path.join(workspaceFolder, "tsconfig.json");
104 |
105 | if (!existsSync(tsConfigPath)) {
106 | throw new Error(localize("error.noTsConfig", "tsconfig.json not found"));
107 | }
108 |
109 | try {
110 | const tsConfig: TsConfig = JSON5.parse(readFileSync(tsConfigPath, "utf-8"));
111 | return { tsConfigPath, tsConfig };
112 | } catch (error) {
113 | throw new Error(
114 | localize(
115 | "error.invalidTsConfig",
116 | "Failed to parse tsconfig.json: {0}",
117 | String(error)
118 | )
119 | );
120 | }
121 | }
122 |
123 | function getBuildTool(workspaceFolder: string): BuildTool {
124 | const config = getConfiguration();
125 | const buildTool = config.get("buildTool");
126 |
127 | // 如果配置了构建工具,直接使用
128 | if (buildTool && buildTool !== "auto") {
129 | return buildTool;
130 | }
131 |
132 | // 自动检测
133 | if (
134 | existsSync(path.join(workspaceFolder, "rollup.config.js")) ||
135 | existsSync(path.join(workspaceFolder, "rollup.config.mjs"))
136 | ) {
137 | return "rollup";
138 | }
139 |
140 | if (existsSync(path.join(workspaceFolder, "webpack.config.js"))) {
141 | return "webpack";
142 | }
143 |
144 | if (existsSync(path.join(workspaceFolder, "esbuild.config.js"))) {
145 | return "esbuild";
146 | }
147 |
148 | return "tsc";
149 | }
150 |
151 | async function buildWithTool(
152 | buildTool: BuildTool,
153 | workspaceFolder: string,
154 | tsConfigPath: string
155 | ): Promise {
156 | const config = getConfiguration();
157 | const customBuildCommand = config.get("customBuildCommand");
158 |
159 | let command: string;
160 |
161 | if (customBuildCommand) {
162 | command = customBuildCommand;
163 | } else {
164 | switch (buildTool) {
165 | case "rollup":
166 | const rollupBin = path.join(
167 | workspaceFolder,
168 | "node_modules",
169 | ".bin",
170 | "rollup"
171 | );
172 | command = `"${rollupBin}" -c`;
173 | break;
174 | case "webpack":
175 | const webpackBin = path.join(
176 | workspaceFolder,
177 | "node_modules",
178 | ".bin",
179 | "webpack"
180 | );
181 | command = `"${webpackBin}"`;
182 | break;
183 | case "esbuild":
184 | const esbuildBin = path.join(
185 | workspaceFolder,
186 | "node_modules",
187 | ".bin",
188 | "esbuild"
189 | );
190 | command = `"${esbuildBin}" --bundle`;
191 | break;
192 | case "tsc":
193 | default:
194 | command = `tsc --project "${tsConfigPath}"`;
195 | break;
196 | }
197 | }
198 |
199 | try {
200 | await execAsync(command, {
201 | cwd: workspaceFolder,
202 | timeout: EXEC_TIMEOUT,
203 | });
204 | } catch (error) {
205 | const err = error as Error & { code?: number };
206 | throw new Error(
207 | localize(
208 | "error.buildFailed",
209 | "Build failed: {0} (code {1})",
210 | err.message,
211 | err.code || "unknown"
212 | )
213 | );
214 | }
215 | }
216 |
217 | async function compileTsx(inputPath: string): Promise {
218 | const workspaceFolder = getWorkspaceFolder();
219 | const { tsConfigPath, tsConfig } = getTsconfig();
220 |
221 | const outDir = tsConfig.compilerOptions?.outDir || DEFAULT_OUT_DIR;
222 | const outFileBase = path.basename(inputPath, path.extname(inputPath));
223 | const outputPath = path.join(workspaceFolder, outDir, `${outFileBase}.jsx`);
224 |
225 | // 保存配置
226 | await saveToConfig(inputPath, outputPath);
227 |
228 | // 获取并执行构建工具
229 | const buildTool = getBuildTool(workspaceFolder);
230 |
231 | // 打包
232 | await vscode.window.withProgress(
233 | {
234 | location: vscode.ProgressLocation.Notification,
235 | title: localize("progress.building", "Building with {0}...", buildTool),
236 | cancellable: false,
237 | },
238 | async () => {
239 | await buildWithTool(buildTool, workspaceFolder, tsConfigPath);
240 | }
241 | );
242 |
243 | if (!existsSync(outputPath)) {
244 | throw new Error(
245 | localize("error.outputNotGenerated", "Output file was not generated")
246 | );
247 | }
248 |
249 | return outputPath;
250 | }
251 |
252 | async function saveToConfig(input: string, output: string): Promise {
253 | try {
254 | const config = vscode.workspace.getConfiguration(CONFIG_SECTION);
255 |
256 | // 分别更新每个配置项
257 | await config.update("input", input, vscode.ConfigurationTarget.Workspace);
258 | await config.update("output", output, vscode.ConfigurationTarget.Workspace);
259 | } catch (error) {
260 | vscode.window.showErrorMessage(
261 | localize(
262 | "error.configSaveFailed",
263 | "Failed to save configuration: {0}",
264 | String(error)
265 | )
266 | );
267 | }
268 | }
269 |
270 | export async function activate(context: vscode.ExtensionContext) {
271 | // 加载平台模块
272 | await loadPlatformModule();
273 |
274 | const disposable = vscode.commands.registerCommand(
275 | "runrun.JSXScript",
276 | async () => {
277 | try {
278 | const editor = vscode.window.activeTextEditor;
279 | if (!editor) {
280 | vscode.window.showWarningMessage(
281 | localize("warning.noActiveEditor", "No active editor")
282 | );
283 | return;
284 | }
285 |
286 | // 获取 AE 实例
287 | const versions = getApps();
288 | if (versions.length === 0) {
289 | throw new Error(
290 | localize(
291 | "error.noAeInstance",
292 | "No running After Effects instance found"
293 | )
294 | );
295 | }
296 |
297 | // 选择版本
298 | const aePath = await selectAeVersion(versions);
299 | const fileName = editor.document.fileName;
300 | const ext = path.extname(fileName);
301 |
302 | // 直接执行 .jsx 或 .jsxbin
303 | if (ext === ".jsx" || ext === ".jsxbin") {
304 | await executeJsx(aePath, fileName);
305 | vscode.window.showInformationMessage(
306 | localize("success.executed", "Script executed successfully")
307 | );
308 | return;
309 | }
310 |
311 | // 编译并执行 .tsx 或 .ts
312 | if (ext === ".tsx" || ext === ".ts") {
313 | const outputPath = await compileTsx(fileName);
314 | await executeJsx(aePath, outputPath);
315 | vscode.window.showInformationMessage(
316 | localize(
317 | "success.compiledAndExecuted",
318 | "Script compiled and executed successfully"
319 | )
320 | );
321 | return;
322 | }
323 |
324 | vscode.window.showWarningMessage(
325 | localize(
326 | "warning.unsupportedFileType",
327 | "Unsupported file type: {0}",
328 | ext
329 | )
330 | );
331 | } catch (error) {
332 | const err = error as Error;
333 | vscode.window.showErrorMessage(err.message);
334 | console.error(err.stack);
335 | }
336 | }
337 | );
338 |
339 | context.subscriptions.push(disposable);
340 | }
341 |
342 | export function deactivate() {
343 | // 清理资源
344 | }
345 |
--------------------------------------------------------------------------------
/pnpm-lock.yaml:
--------------------------------------------------------------------------------
1 | lockfileVersion: '9.0'
2 |
3 | settings:
4 | autoInstallPeers: true
5 | excludeLinksFromLockfile: false
6 |
7 | importers:
8 |
9 | .:
10 | dependencies:
11 | fs-extra:
12 | specifier: ^10.1.0
13 | version: 10.1.0
14 | json5:
15 | specifier: ^2.2.3
16 | version: 2.2.3
17 | vscode-nls:
18 | specifier: ^5.2.0
19 | version: 5.2.0
20 | devDependencies:
21 | '@types/glob':
22 | specifier: ^8.1.0
23 | version: 8.1.0
24 | '@types/mocha':
25 | specifier: ^10.0.10
26 | version: 10.0.10
27 | '@types/node':
28 | specifier: 24.7.2
29 | version: 24.7.2
30 | '@types/vscode':
31 | specifier: 1.105.0
32 | version: 1.105.0
33 | '@typescript-eslint/eslint-plugin':
34 | specifier: 8.46.0
35 | version: 8.46.0(@typescript-eslint/parser@8.46.0(eslint@9.37.0)(typescript@5.9.3))(eslint@9.37.0)(typescript@5.9.3)
36 | '@typescript-eslint/parser':
37 | specifier: 8.46.0
38 | version: 8.46.0(eslint@9.37.0)(typescript@5.9.3)
39 | '@vscode/test-electron':
40 | specifier: 2.5.2
41 | version: 2.5.2
42 | del:
43 | specifier: 8.0.1
44 | version: 8.0.1
45 | esbuild:
46 | specifier: ^0.25.10
47 | version: 0.25.10
48 | eslint:
49 | specifier: 9.37.0
50 | version: 9.37.0
51 | glob:
52 | specifier: 11.0.3
53 | version: 11.0.3
54 | mocha:
55 | specifier: 11.7.4
56 | version: 11.7.4
57 | nodemon:
58 | specifier: 3.1.10
59 | version: 3.1.10
60 | run-sequence:
61 | specifier: ^2.2.1
62 | version: 2.2.1
63 | ts-loader:
64 | specifier: ^9.5.4
65 | version: 9.5.4(typescript@5.9.3)(webpack@5.102.1(esbuild@0.25.10))
66 | typescript:
67 | specifier: 5.9.3
68 | version: 5.9.3
69 | vscode-nls-dev:
70 | specifier: ^4.0.4
71 | version: 4.0.4
72 |
73 | packages:
74 |
75 | '@esbuild/aix-ppc64@0.25.10':
76 | resolution: {integrity: sha512-0NFWnA+7l41irNuaSVlLfgNT12caWJVLzp5eAVhZ0z1qpxbockccEt3s+149rE64VUI3Ml2zt8Nv5JVc4QXTsw==}
77 | engines: {node: '>=18'}
78 | cpu: [ppc64]
79 | os: [aix]
80 |
81 | '@esbuild/android-arm64@0.25.10':
82 | resolution: {integrity: sha512-LSQa7eDahypv/VO6WKohZGPSJDq5OVOo3UoFR1E4t4Gj1W7zEQMUhI+lo81H+DtB+kP+tDgBp+M4oNCwp6kffg==}
83 | engines: {node: '>=18'}
84 | cpu: [arm64]
85 | os: [android]
86 |
87 | '@esbuild/android-arm@0.25.10':
88 | resolution: {integrity: sha512-dQAxF1dW1C3zpeCDc5KqIYuZ1tgAdRXNoZP7vkBIRtKZPYe2xVr/d3SkirklCHudW1B45tGiUlz2pUWDfbDD4w==}
89 | engines: {node: '>=18'}
90 | cpu: [arm]
91 | os: [android]
92 |
93 | '@esbuild/android-x64@0.25.10':
94 | resolution: {integrity: sha512-MiC9CWdPrfhibcXwr39p9ha1x0lZJ9KaVfvzA0Wxwz9ETX4v5CHfF09bx935nHlhi+MxhA63dKRRQLiVgSUtEg==}
95 | engines: {node: '>=18'}
96 | cpu: [x64]
97 | os: [android]
98 |
99 | '@esbuild/darwin-arm64@0.25.10':
100 | resolution: {integrity: sha512-JC74bdXcQEpW9KkV326WpZZjLguSZ3DfS8wrrvPMHgQOIEIG/sPXEN/V8IssoJhbefLRcRqw6RQH2NnpdprtMA==}
101 | engines: {node: '>=18'}
102 | cpu: [arm64]
103 | os: [darwin]
104 |
105 | '@esbuild/darwin-x64@0.25.10':
106 | resolution: {integrity: sha512-tguWg1olF6DGqzws97pKZ8G2L7Ig1vjDmGTwcTuYHbuU6TTjJe5FXbgs5C1BBzHbJ2bo1m3WkQDbWO2PvamRcg==}
107 | engines: {node: '>=18'}
108 | cpu: [x64]
109 | os: [darwin]
110 |
111 | '@esbuild/freebsd-arm64@0.25.10':
112 | resolution: {integrity: sha512-3ZioSQSg1HT2N05YxeJWYR+Libe3bREVSdWhEEgExWaDtyFbbXWb49QgPvFH8u03vUPX10JhJPcz7s9t9+boWg==}
113 | engines: {node: '>=18'}
114 | cpu: [arm64]
115 | os: [freebsd]
116 |
117 | '@esbuild/freebsd-x64@0.25.10':
118 | resolution: {integrity: sha512-LLgJfHJk014Aa4anGDbh8bmI5Lk+QidDmGzuC2D+vP7mv/GeSN+H39zOf7pN5N8p059FcOfs2bVlrRr4SK9WxA==}
119 | engines: {node: '>=18'}
120 | cpu: [x64]
121 | os: [freebsd]
122 |
123 | '@esbuild/linux-arm64@0.25.10':
124 | resolution: {integrity: sha512-5luJWN6YKBsawd5f9i4+c+geYiVEw20FVW5x0v1kEMWNq8UctFjDiMATBxLvmmHA4bf7F6hTRaJgtghFr9iziQ==}
125 | engines: {node: '>=18'}
126 | cpu: [arm64]
127 | os: [linux]
128 |
129 | '@esbuild/linux-arm@0.25.10':
130 | resolution: {integrity: sha512-oR31GtBTFYCqEBALI9r6WxoU/ZofZl962pouZRTEYECvNF/dtXKku8YXcJkhgK/beU+zedXfIzHijSRapJY3vg==}
131 | engines: {node: '>=18'}
132 | cpu: [arm]
133 | os: [linux]
134 |
135 | '@esbuild/linux-ia32@0.25.10':
136 | resolution: {integrity: sha512-NrSCx2Kim3EnnWgS4Txn0QGt0Xipoumb6z6sUtl5bOEZIVKhzfyp/Lyw4C1DIYvzeW/5mWYPBFJU3a/8Yr75DQ==}
137 | engines: {node: '>=18'}
138 | cpu: [ia32]
139 | os: [linux]
140 |
141 | '@esbuild/linux-loong64@0.25.10':
142 | resolution: {integrity: sha512-xoSphrd4AZda8+rUDDfD9J6FUMjrkTz8itpTITM4/xgerAZZcFW7Dv+sun7333IfKxGG8gAq+3NbfEMJfiY+Eg==}
143 | engines: {node: '>=18'}
144 | cpu: [loong64]
145 | os: [linux]
146 |
147 | '@esbuild/linux-mips64el@0.25.10':
148 | resolution: {integrity: sha512-ab6eiuCwoMmYDyTnyptoKkVS3k8fy/1Uvq7Dj5czXI6DF2GqD2ToInBI0SHOp5/X1BdZ26RKc5+qjQNGRBelRA==}
149 | engines: {node: '>=18'}
150 | cpu: [mips64el]
151 | os: [linux]
152 |
153 | '@esbuild/linux-ppc64@0.25.10':
154 | resolution: {integrity: sha512-NLinzzOgZQsGpsTkEbdJTCanwA5/wozN9dSgEl12haXJBzMTpssebuXR42bthOF3z7zXFWH1AmvWunUCkBE4EA==}
155 | engines: {node: '>=18'}
156 | cpu: [ppc64]
157 | os: [linux]
158 |
159 | '@esbuild/linux-riscv64@0.25.10':
160 | resolution: {integrity: sha512-FE557XdZDrtX8NMIeA8LBJX3dC2M8VGXwfrQWU7LB5SLOajfJIxmSdyL/gU1m64Zs9CBKvm4UAuBp5aJ8OgnrA==}
161 | engines: {node: '>=18'}
162 | cpu: [riscv64]
163 | os: [linux]
164 |
165 | '@esbuild/linux-s390x@0.25.10':
166 | resolution: {integrity: sha512-3BBSbgzuB9ajLoVZk0mGu+EHlBwkusRmeNYdqmznmMc9zGASFjSsxgkNsqmXugpPk00gJ0JNKh/97nxmjctdew==}
167 | engines: {node: '>=18'}
168 | cpu: [s390x]
169 | os: [linux]
170 |
171 | '@esbuild/linux-x64@0.25.10':
172 | resolution: {integrity: sha512-QSX81KhFoZGwenVyPoberggdW1nrQZSvfVDAIUXr3WqLRZGZqWk/P4T8p2SP+de2Sr5HPcvjhcJzEiulKgnxtA==}
173 | engines: {node: '>=18'}
174 | cpu: [x64]
175 | os: [linux]
176 |
177 | '@esbuild/netbsd-arm64@0.25.10':
178 | resolution: {integrity: sha512-AKQM3gfYfSW8XRk8DdMCzaLUFB15dTrZfnX8WXQoOUpUBQ+NaAFCP1kPS/ykbbGYz7rxn0WS48/81l9hFl3u4A==}
179 | engines: {node: '>=18'}
180 | cpu: [arm64]
181 | os: [netbsd]
182 |
183 | '@esbuild/netbsd-x64@0.25.10':
184 | resolution: {integrity: sha512-7RTytDPGU6fek/hWuN9qQpeGPBZFfB4zZgcz2VK2Z5VpdUxEI8JKYsg3JfO0n/Z1E/6l05n0unDCNc4HnhQGig==}
185 | engines: {node: '>=18'}
186 | cpu: [x64]
187 | os: [netbsd]
188 |
189 | '@esbuild/openbsd-arm64@0.25.10':
190 | resolution: {integrity: sha512-5Se0VM9Wtq797YFn+dLimf2Zx6McttsH2olUBsDml+lm0GOCRVebRWUvDtkY4BWYv/3NgzS8b/UM3jQNh5hYyw==}
191 | engines: {node: '>=18'}
192 | cpu: [arm64]
193 | os: [openbsd]
194 |
195 | '@esbuild/openbsd-x64@0.25.10':
196 | resolution: {integrity: sha512-XkA4frq1TLj4bEMB+2HnI0+4RnjbuGZfet2gs/LNs5Hc7D89ZQBHQ0gL2ND6Lzu1+QVkjp3x1gIcPKzRNP8bXw==}
197 | engines: {node: '>=18'}
198 | cpu: [x64]
199 | os: [openbsd]
200 |
201 | '@esbuild/openharmony-arm64@0.25.10':
202 | resolution: {integrity: sha512-AVTSBhTX8Y/Fz6OmIVBip9tJzZEUcY8WLh7I59+upa5/GPhh2/aM6bvOMQySspnCCHvFi79kMtdJS1w0DXAeag==}
203 | engines: {node: '>=18'}
204 | cpu: [arm64]
205 | os: [openharmony]
206 |
207 | '@esbuild/sunos-x64@0.25.10':
208 | resolution: {integrity: sha512-fswk3XT0Uf2pGJmOpDB7yknqhVkJQkAQOcW/ccVOtfx05LkbWOaRAtn5SaqXypeKQra1QaEa841PgrSL9ubSPQ==}
209 | engines: {node: '>=18'}
210 | cpu: [x64]
211 | os: [sunos]
212 |
213 | '@esbuild/win32-arm64@0.25.10':
214 | resolution: {integrity: sha512-ah+9b59KDTSfpaCg6VdJoOQvKjI33nTaQr4UluQwW7aEwZQsbMCfTmfEO4VyewOxx4RaDT/xCy9ra2GPWmO7Kw==}
215 | engines: {node: '>=18'}
216 | cpu: [arm64]
217 | os: [win32]
218 |
219 | '@esbuild/win32-ia32@0.25.10':
220 | resolution: {integrity: sha512-QHPDbKkrGO8/cz9LKVnJU22HOi4pxZnZhhA2HYHez5Pz4JeffhDjf85E57Oyco163GnzNCVkZK0b/n4Y0UHcSw==}
221 | engines: {node: '>=18'}
222 | cpu: [ia32]
223 | os: [win32]
224 |
225 | '@esbuild/win32-x64@0.25.10':
226 | resolution: {integrity: sha512-9KpxSVFCu0iK1owoez6aC/s/EdUQLDN3adTxGCqxMVhrPDj6bt5dbrHDXUuq+Bs2vATFBBrQS5vdQ/Ed2P+nbw==}
227 | engines: {node: '>=18'}
228 | cpu: [x64]
229 | os: [win32]
230 |
231 | '@eslint-community/eslint-utils@4.9.0':
232 | resolution: {integrity: sha512-ayVFHdtZ+hsq1t2Dy24wCmGXGe4q9Gu3smhLYALJrr473ZH27MsnSL+LKUlimp4BWJqMDMLmPpx/Q9R3OAlL4g==}
233 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
234 | peerDependencies:
235 | eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
236 |
237 | '@eslint-community/regexpp@4.12.1':
238 | resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==}
239 | engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
240 |
241 | '@eslint/config-array@0.21.0':
242 | resolution: {integrity: sha512-ENIdc4iLu0d93HeYirvKmrzshzofPw6VkZRKQGe9Nv46ZnWUzcF1xV01dcvEg/1wXUR61OmmlSfyeyO7EvjLxQ==}
243 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
244 |
245 | '@eslint/config-helpers@0.4.0':
246 | resolution: {integrity: sha512-WUFvV4WoIwW8Bv0KeKCIIEgdSiFOsulyN0xrMu+7z43q/hkOLXjvb5u7UC9jDxvRzcrbEmuZBX5yJZz1741jog==}
247 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
248 |
249 | '@eslint/core@0.16.0':
250 | resolution: {integrity: sha512-nmC8/totwobIiFcGkDza3GIKfAw1+hLiYVrh3I1nIomQ8PEr5cxg34jnkmGawul/ep52wGRAcyeDCNtWKSOj4Q==}
251 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
252 |
253 | '@eslint/eslintrc@3.3.1':
254 | resolution: {integrity: sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==}
255 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
256 |
257 | '@eslint/js@9.37.0':
258 | resolution: {integrity: sha512-jaS+NJ+hximswBG6pjNX0uEJZkrT0zwpVi3BA3vX22aFGjJjmgSTSmPpZCRKmoBL5VY/M6p0xsSJx7rk7sy5gg==}
259 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
260 |
261 | '@eslint/object-schema@2.1.6':
262 | resolution: {integrity: sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==}
263 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
264 |
265 | '@eslint/plugin-kit@0.4.0':
266 | resolution: {integrity: sha512-sB5uyeq+dwCWyPi31B2gQlVlo+j5brPlWx4yZBrEaRo/nhdDE8Xke1gsGgtiBdaBTxuTkceLVuVt/pclrasb0A==}
267 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
268 |
269 | '@humanfs/core@0.19.1':
270 | resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==}
271 | engines: {node: '>=18.18.0'}
272 |
273 | '@humanfs/node@0.16.7':
274 | resolution: {integrity: sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==}
275 | engines: {node: '>=18.18.0'}
276 |
277 | '@humanwhocodes/module-importer@1.0.1':
278 | resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==}
279 | engines: {node: '>=12.22'}
280 |
281 | '@humanwhocodes/retry@0.4.3':
282 | resolution: {integrity: sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==}
283 | engines: {node: '>=18.18'}
284 |
285 | '@isaacs/balanced-match@4.0.1':
286 | resolution: {integrity: sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==}
287 | engines: {node: 20 || >=22}
288 |
289 | '@isaacs/brace-expansion@5.0.0':
290 | resolution: {integrity: sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==}
291 | engines: {node: 20 || >=22}
292 |
293 | '@isaacs/cliui@8.0.2':
294 | resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
295 | engines: {node: '>=12'}
296 |
297 | '@jridgewell/gen-mapping@0.3.13':
298 | resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==}
299 |
300 | '@jridgewell/resolve-uri@3.1.2':
301 | resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
302 | engines: {node: '>=6.0.0'}
303 |
304 | '@jridgewell/source-map@0.3.11':
305 | resolution: {integrity: sha512-ZMp1V8ZFcPG5dIWnQLr3NSI1MiCU7UETdS/A0G8V/XWHvJv3ZsFqutJn1Y5RPmAPX6F3BiE397OqveU/9NCuIA==}
306 |
307 | '@jridgewell/sourcemap-codec@1.5.5':
308 | resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==}
309 |
310 | '@jridgewell/trace-mapping@0.3.31':
311 | resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==}
312 |
313 | '@nodelib/fs.scandir@2.1.5':
314 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
315 | engines: {node: '>= 8'}
316 |
317 | '@nodelib/fs.stat@2.0.5':
318 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
319 | engines: {node: '>= 8'}
320 |
321 | '@nodelib/fs.walk@1.2.8':
322 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
323 | engines: {node: '>= 8'}
324 |
325 | '@pkgjs/parseargs@0.11.0':
326 | resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
327 | engines: {node: '>=14'}
328 |
329 | '@sindresorhus/merge-streams@2.3.0':
330 | resolution: {integrity: sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==}
331 | engines: {node: '>=18'}
332 |
333 | '@types/eslint-scope@3.7.7':
334 | resolution: {integrity: sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==}
335 |
336 | '@types/eslint@9.6.1':
337 | resolution: {integrity: sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==}
338 |
339 | '@types/estree@1.0.8':
340 | resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==}
341 |
342 | '@types/glob@8.1.0':
343 | resolution: {integrity: sha512-IO+MJPVhoqz+28h1qLAcBEH2+xHMK6MTyHJc7MTnnYb6wsoLR29POVGJ7LycmVXIqyy/4/2ShP5sUwTXuOwb/w==}
344 |
345 | '@types/json-schema@7.0.15':
346 | resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==}
347 |
348 | '@types/minimatch@5.1.2':
349 | resolution: {integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==}
350 |
351 | '@types/mocha@10.0.10':
352 | resolution: {integrity: sha512-xPyYSz1cMPnJQhl0CLMH68j3gprKZaTjG3s5Vi+fDgx+uhG9NOXwbVt52eFS8ECyXhyKcjDLCBEqBExKuiZb7Q==}
353 |
354 | '@types/node@24.7.2':
355 | resolution: {integrity: sha512-/NbVmcGTP+lj5oa4yiYxxeBjRivKQ5Ns1eSZeB99ExsEQ6rX5XYU1Zy/gGxY/ilqtD4Etx9mKyrPxZRetiahhA==}
356 |
357 | '@types/vscode@1.105.0':
358 | resolution: {integrity: sha512-Lotk3CTFlGZN8ray4VxJE7axIyLZZETQJVWi/lYoUVQuqfRxlQhVOfoejsD2V3dVXPSbS15ov5ZyowMAzgUqcw==}
359 |
360 | '@typescript-eslint/eslint-plugin@8.46.0':
361 | resolution: {integrity: sha512-hA8gxBq4ukonVXPy0OKhiaUh/68D0E88GSmtC1iAEnGaieuDi38LhS7jdCHRLi6ErJBNDGCzvh5EnzdPwUc0DA==}
362 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
363 | peerDependencies:
364 | '@typescript-eslint/parser': ^8.46.0
365 | eslint: ^8.57.0 || ^9.0.0
366 | typescript: '>=4.8.4 <6.0.0'
367 |
368 | '@typescript-eslint/parser@8.46.0':
369 | resolution: {integrity: sha512-n1H6IcDhmmUEG7TNVSspGmiHHutt7iVKtZwRppD7e04wha5MrkV1h3pti9xQLcCMt6YWsncpoT0HMjkH1FNwWQ==}
370 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
371 | peerDependencies:
372 | eslint: ^8.57.0 || ^9.0.0
373 | typescript: '>=4.8.4 <6.0.0'
374 |
375 | '@typescript-eslint/project-service@8.46.0':
376 | resolution: {integrity: sha512-OEhec0mH+U5Je2NZOeK1AbVCdm0ChyapAyTeXVIYTPXDJ3F07+cu87PPXcGoYqZ7M9YJVvFnfpGg1UmCIqM+QQ==}
377 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
378 | peerDependencies:
379 | typescript: '>=4.8.4 <6.0.0'
380 |
381 | '@typescript-eslint/scope-manager@8.46.0':
382 | resolution: {integrity: sha512-lWETPa9XGcBes4jqAMYD9fW0j4n6hrPtTJwWDmtqgFO/4HF4jmdH/Q6wggTw5qIT5TXjKzbt7GsZUBnWoO3dqw==}
383 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
384 |
385 | '@typescript-eslint/tsconfig-utils@8.46.0':
386 | resolution: {integrity: sha512-WrYXKGAHY836/N7zoK/kzi6p8tXFhasHh8ocFL9VZSAkvH956gfeRfcnhs3xzRy8qQ/dq3q44v1jvQieMFg2cw==}
387 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
388 | peerDependencies:
389 | typescript: '>=4.8.4 <6.0.0'
390 |
391 | '@typescript-eslint/type-utils@8.46.0':
392 | resolution: {integrity: sha512-hy+lvYV1lZpVs2jRaEYvgCblZxUoJiPyCemwbQZ+NGulWkQRy0HRPYAoef/CNSzaLt+MLvMptZsHXHlkEilaeg==}
393 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
394 | peerDependencies:
395 | eslint: ^8.57.0 || ^9.0.0
396 | typescript: '>=4.8.4 <6.0.0'
397 |
398 | '@typescript-eslint/types@8.46.0':
399 | resolution: {integrity: sha512-bHGGJyVjSE4dJJIO5yyEWt/cHyNwga/zXGJbJJ8TiO01aVREK6gCTu3L+5wrkb1FbDkQ+TKjMNe9R/QQQP9+rA==}
400 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
401 |
402 | '@typescript-eslint/typescript-estree@8.46.0':
403 | resolution: {integrity: sha512-ekDCUfVpAKWJbRfm8T1YRrCot1KFxZn21oV76v5Fj4tr7ELyk84OS+ouvYdcDAwZL89WpEkEj2DKQ+qg//+ucg==}
404 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
405 | peerDependencies:
406 | typescript: '>=4.8.4 <6.0.0'
407 |
408 | '@typescript-eslint/utils@8.46.0':
409 | resolution: {integrity: sha512-nD6yGWPj1xiOm4Gk0k6hLSZz2XkNXhuYmyIrOWcHoPuAhjT9i5bAG+xbWPgFeNR8HPHHtpNKdYUXJl/D3x7f5g==}
410 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
411 | peerDependencies:
412 | eslint: ^8.57.0 || ^9.0.0
413 | typescript: '>=4.8.4 <6.0.0'
414 |
415 | '@typescript-eslint/visitor-keys@8.46.0':
416 | resolution: {integrity: sha512-FrvMpAK+hTbFy7vH5j1+tMYHMSKLE6RzluFJlkFNKD0p9YsUT75JlBSmr5so3QRzvMwU5/bIEdeNrxm8du8l3Q==}
417 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
418 |
419 | '@vscode/test-electron@2.5.2':
420 | resolution: {integrity: sha512-8ukpxv4wYe0iWMRQU18jhzJOHkeGKbnw7xWRX3Zw1WJA4cEKbHcmmLPdPrPtL6rhDcrlCZN+xKRpv09n4gRHYg==}
421 | engines: {node: '>=16'}
422 |
423 | '@webassemblyjs/ast@1.14.1':
424 | resolution: {integrity: sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==}
425 |
426 | '@webassemblyjs/floating-point-hex-parser@1.13.2':
427 | resolution: {integrity: sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA==}
428 |
429 | '@webassemblyjs/helper-api-error@1.13.2':
430 | resolution: {integrity: sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ==}
431 |
432 | '@webassemblyjs/helper-buffer@1.14.1':
433 | resolution: {integrity: sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA==}
434 |
435 | '@webassemblyjs/helper-numbers@1.13.2':
436 | resolution: {integrity: sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA==}
437 |
438 | '@webassemblyjs/helper-wasm-bytecode@1.13.2':
439 | resolution: {integrity: sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA==}
440 |
441 | '@webassemblyjs/helper-wasm-section@1.14.1':
442 | resolution: {integrity: sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw==}
443 |
444 | '@webassemblyjs/ieee754@1.13.2':
445 | resolution: {integrity: sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw==}
446 |
447 | '@webassemblyjs/leb128@1.13.2':
448 | resolution: {integrity: sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw==}
449 |
450 | '@webassemblyjs/utf8@1.13.2':
451 | resolution: {integrity: sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ==}
452 |
453 | '@webassemblyjs/wasm-edit@1.14.1':
454 | resolution: {integrity: sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ==}
455 |
456 | '@webassemblyjs/wasm-gen@1.14.1':
457 | resolution: {integrity: sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg==}
458 |
459 | '@webassemblyjs/wasm-opt@1.14.1':
460 | resolution: {integrity: sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw==}
461 |
462 | '@webassemblyjs/wasm-parser@1.14.1':
463 | resolution: {integrity: sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ==}
464 |
465 | '@webassemblyjs/wast-printer@1.14.1':
466 | resolution: {integrity: sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==}
467 |
468 | '@xtuc/ieee754@1.2.0':
469 | resolution: {integrity: sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==}
470 |
471 | '@xtuc/long@4.2.2':
472 | resolution: {integrity: sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==}
473 |
474 | acorn-import-phases@1.0.4:
475 | resolution: {integrity: sha512-wKmbr/DDiIXzEOiWrTTUcDm24kQ2vGfZQvM2fwg2vXqR5uW6aapr7ObPtj1th32b9u90/Pf4AItvdTh42fBmVQ==}
476 | engines: {node: '>=10.13.0'}
477 | peerDependencies:
478 | acorn: ^8.14.0
479 |
480 | acorn-jsx@5.3.2:
481 | resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
482 | peerDependencies:
483 | acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
484 |
485 | acorn@8.15.0:
486 | resolution: {integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==}
487 | engines: {node: '>=0.4.0'}
488 | hasBin: true
489 |
490 | agent-base@7.1.4:
491 | resolution: {integrity: sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==}
492 | engines: {node: '>= 14'}
493 |
494 | ajv-formats@2.1.1:
495 | resolution: {integrity: sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==}
496 | peerDependencies:
497 | ajv: ^8.0.0
498 | peerDependenciesMeta:
499 | ajv:
500 | optional: true
501 |
502 | ajv-keywords@5.1.0:
503 | resolution: {integrity: sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==}
504 | peerDependencies:
505 | ajv: ^8.8.2
506 |
507 | ajv@6.12.6:
508 | resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==}
509 |
510 | ajv@8.17.1:
511 | resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==}
512 |
513 | ansi-colors@4.1.3:
514 | resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==}
515 | engines: {node: '>=6'}
516 |
517 | ansi-cyan@0.1.1:
518 | resolution: {integrity: sha512-eCjan3AVo/SxZ0/MyIYRtkpxIu/H3xZN7URr1vXVrISxeyz8fUFz0FJziamK4sS8I+t35y4rHg1b2PklyBe/7A==}
519 | engines: {node: '>=0.10.0'}
520 |
521 | ansi-gray@0.1.1:
522 | resolution: {integrity: sha512-HrgGIZUl8h2EHuZaU9hTR/cU5nhKxpVE1V6kdGsQ8e4zirElJ5fvtfc8N7Q1oq1aatO275i8pUFUCpNWCAnVWw==}
523 | engines: {node: '>=0.10.0'}
524 |
525 | ansi-red@0.1.1:
526 | resolution: {integrity: sha512-ewaIr5y+9CUTGFwZfpECUbFlGcC0GCw1oqR9RI6h1gQCd9Aj2GxSckCnPsVJnmfMZbwFYE+leZGASgkWl06Jow==}
527 | engines: {node: '>=0.10.0'}
528 |
529 | ansi-regex@2.1.1:
530 | resolution: {integrity: sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==}
531 | engines: {node: '>=0.10.0'}
532 |
533 | ansi-regex@5.0.1:
534 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
535 | engines: {node: '>=8'}
536 |
537 | ansi-regex@6.2.2:
538 | resolution: {integrity: sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==}
539 | engines: {node: '>=12'}
540 |
541 | ansi-styles@2.2.1:
542 | resolution: {integrity: sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==}
543 | engines: {node: '>=0.10.0'}
544 |
545 | ansi-styles@4.3.0:
546 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
547 | engines: {node: '>=8'}
548 |
549 | ansi-styles@6.2.3:
550 | resolution: {integrity: sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==}
551 | engines: {node: '>=12'}
552 |
553 | ansi-wrap@0.1.0:
554 | resolution: {integrity: sha512-ZyznvL8k/FZeQHr2T6LzcJ/+vBApDnMNZvfVFy3At0knswWd6rJ3/0Hhmpu8oqa6C92npmozs890sX9Dl6q+Qw==}
555 | engines: {node: '>=0.10.0'}
556 |
557 | anymatch@3.1.3:
558 | resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==}
559 | engines: {node: '>= 8'}
560 |
561 | argparse@2.0.1:
562 | resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
563 |
564 | arr-diff@1.1.0:
565 | resolution: {integrity: sha512-OQwDZUqYaQwyyhDJHThmzId8daf4/RFNLaeh3AevmSeZ5Y7ug4Ga/yKc6l6kTZOBW781rCj103ZuTh8GAsB3+Q==}
566 | engines: {node: '>=0.10.0'}
567 |
568 | arr-flatten@1.1.0:
569 | resolution: {integrity: sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==}
570 | engines: {node: '>=0.10.0'}
571 |
572 | arr-union@2.1.0:
573 | resolution: {integrity: sha512-t5db90jq+qdgk8aFnxEkjqta0B/GHrM1pxzuuZz2zWsOXc5nKu3t+76s/PQBA8FTcM/ipspIH9jWG4OxCBc2eA==}
574 | engines: {node: '>=0.10.0'}
575 |
576 | array-slice@0.2.3:
577 | resolution: {integrity: sha512-rlVfZW/1Ph2SNySXwR9QYkChp8EkOEiTMO5Vwx60usw04i4nWemkm9RXmQqgkQFaLHsqLuADvjp6IfgL9l2M8Q==}
578 | engines: {node: '>=0.10.0'}
579 |
580 | balanced-match@1.0.2:
581 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
582 |
583 | baseline-browser-mapping@2.8.16:
584 | resolution: {integrity: sha512-OMu3BGQ4E7P1ErFsIPpbJh0qvDudM/UuJeHgkAvfWe+0HFJCXh+t/l8L6fVLR55RI/UbKrVLnAXZSVwd9ysWYw==}
585 | hasBin: true
586 |
587 | binary-extensions@2.3.0:
588 | resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==}
589 | engines: {node: '>=8'}
590 |
591 | brace-expansion@1.1.12:
592 | resolution: {integrity: sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==}
593 |
594 | brace-expansion@2.0.2:
595 | resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==}
596 |
597 | braces@3.0.3:
598 | resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}
599 | engines: {node: '>=8'}
600 |
601 | browser-stdout@1.3.1:
602 | resolution: {integrity: sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==}
603 |
604 | browserslist@4.26.3:
605 | resolution: {integrity: sha512-lAUU+02RFBuCKQPj/P6NgjlbCnLBMp4UtgTx7vNHd3XSIJF87s9a5rA3aH2yw3GS9DqZAUbOtZdCCiZeVRqt0w==}
606 | engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
607 | hasBin: true
608 |
609 | buffer-from@1.1.2:
610 | resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==}
611 |
612 | callsites@3.1.0:
613 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
614 | engines: {node: '>=6'}
615 |
616 | camelcase@6.3.0:
617 | resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==}
618 | engines: {node: '>=10'}
619 |
620 | caniuse-lite@1.0.30001750:
621 | resolution: {integrity: sha512-cuom0g5sdX6rw00qOoLNSFCJ9/mYIsuSOA+yzpDw8eopiFqcVwQvZHqov0vmEighRxX++cfC0Vg1G+1Iy/mSpQ==}
622 |
623 | chalk@1.1.3:
624 | resolution: {integrity: sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==}
625 | engines: {node: '>=0.10.0'}
626 |
627 | chalk@4.1.2:
628 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
629 | engines: {node: '>=10'}
630 |
631 | chalk@5.6.2:
632 | resolution: {integrity: sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==}
633 | engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
634 |
635 | chokidar@3.6.0:
636 | resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==}
637 | engines: {node: '>= 8.10.0'}
638 |
639 | chokidar@4.0.3:
640 | resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==}
641 | engines: {node: '>= 14.16.0'}
642 |
643 | chrome-trace-event@1.0.4:
644 | resolution: {integrity: sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==}
645 | engines: {node: '>=6.0'}
646 |
647 | cli-cursor@5.0.0:
648 | resolution: {integrity: sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==}
649 | engines: {node: '>=18'}
650 |
651 | cli-spinners@2.9.2:
652 | resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==}
653 | engines: {node: '>=6'}
654 |
655 | cliui@8.0.1:
656 | resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}
657 | engines: {node: '>=12'}
658 |
659 | clone-buffer@1.0.0:
660 | resolution: {integrity: sha512-KLLTJWrvwIP+OPfMn0x2PheDEP20RPUcGXj/ERegTgdmPEZylALQldygiqrPPu8P45uNuPs7ckmReLY6v/iA5g==}
661 | engines: {node: '>= 0.10'}
662 |
663 | clone-stats@1.0.0:
664 | resolution: {integrity: sha512-au6ydSpg6nsrigcZ4m8Bc9hxjeW+GJ8xh5G3BJCMt4WXe1H10UNaVOamqQTmrx1kjVuxAHIQSNU6hY4Nsn9/ag==}
665 |
666 | clone@2.1.2:
667 | resolution: {integrity: sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==}
668 | engines: {node: '>=0.8'}
669 |
670 | cloneable-readable@1.1.3:
671 | resolution: {integrity: sha512-2EF8zTQOxYq70Y4XKtorQupqF0m49MBz2/yf5Bj+MHjvpG3Hy7sImifnqD6UA+TKYxeSV+u6qqQPawN5UvnpKQ==}
672 |
673 | color-convert@2.0.1:
674 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
675 | engines: {node: '>=7.0.0'}
676 |
677 | color-name@1.1.4:
678 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
679 |
680 | color-support@1.1.3:
681 | resolution: {integrity: sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==}
682 | hasBin: true
683 |
684 | commander@2.20.3:
685 | resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==}
686 |
687 | concat-map@0.0.1:
688 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
689 |
690 | core-util-is@1.0.3:
691 | resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==}
692 |
693 | cross-spawn@7.0.6:
694 | resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==}
695 | engines: {node: '>= 8'}
696 |
697 | debug@4.4.3:
698 | resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==}
699 | engines: {node: '>=6.0'}
700 | peerDependencies:
701 | supports-color: '*'
702 | peerDependenciesMeta:
703 | supports-color:
704 | optional: true
705 |
706 | decamelize@4.0.0:
707 | resolution: {integrity: sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==}
708 | engines: {node: '>=10'}
709 |
710 | deep-is@0.1.4:
711 | resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
712 |
713 | del@8.0.1:
714 | resolution: {integrity: sha512-gPqh0mKTPvaUZGAuHbrBUYKZWBNAeHG7TU3QH5EhVwPMyKvmfJaNXhcD2jTcXsJRRcffuho4vaYweu80dRrMGA==}
715 | engines: {node: '>=18'}
716 |
717 | diff@7.0.0:
718 | resolution: {integrity: sha512-PJWHUb1RFevKCwaFA9RlG5tCd+FO5iRh9A8HEtkmBH2Li03iJriB6m6JIN4rGz3K3JLawI7/veA1xzRKP6ISBw==}
719 | engines: {node: '>=0.3.1'}
720 |
721 | duplexer@0.1.2:
722 | resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==}
723 |
724 | eastasianwidth@0.2.0:
725 | resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
726 |
727 | electron-to-chromium@1.5.234:
728 | resolution: {integrity: sha512-RXfEp2x+VRYn8jbKfQlRImzoJU01kyDvVPBmG39eU2iuRVhuS6vQNocB8J0/8GrIMLnPzgz4eW6WiRnJkTuNWg==}
729 |
730 | emoji-regex@10.5.0:
731 | resolution: {integrity: sha512-lb49vf1Xzfx080OKA0o6l8DQQpV+6Vg95zyCJX9VB/BqKYlhG7N4wgROUUHRA+ZPUefLnteQOad7z1kT2bV7bg==}
732 |
733 | emoji-regex@8.0.0:
734 | resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
735 |
736 | emoji-regex@9.2.2:
737 | resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==}
738 |
739 | enhanced-resolve@5.18.3:
740 | resolution: {integrity: sha512-d4lC8xfavMeBjzGr2vECC3fsGXziXZQyJxD868h2M/mBI3PwAuODxAkLkq5HYuvrPYcUtiLzsTo8U3PgX3Ocww==}
741 | engines: {node: '>=10.13.0'}
742 |
743 | es-module-lexer@1.7.0:
744 | resolution: {integrity: sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==}
745 |
746 | esbuild@0.25.10:
747 | resolution: {integrity: sha512-9RiGKvCwaqxO2owP61uQ4BgNborAQskMR6QusfWzQqv7AZOg5oGehdY2pRJMTKuwxd1IDBP4rSbI5lHzU7SMsQ==}
748 | engines: {node: '>=18'}
749 | hasBin: true
750 |
751 | escalade@3.2.0:
752 | resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}
753 | engines: {node: '>=6'}
754 |
755 | escape-string-regexp@1.0.5:
756 | resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
757 | engines: {node: '>=0.8.0'}
758 |
759 | escape-string-regexp@4.0.0:
760 | resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
761 | engines: {node: '>=10'}
762 |
763 | eslint-scope@5.1.1:
764 | resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==}
765 | engines: {node: '>=8.0.0'}
766 |
767 | eslint-scope@8.4.0:
768 | resolution: {integrity: sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==}
769 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
770 |
771 | eslint-visitor-keys@3.4.3:
772 | resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==}
773 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
774 |
775 | eslint-visitor-keys@4.2.1:
776 | resolution: {integrity: sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==}
777 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
778 |
779 | eslint@9.37.0:
780 | resolution: {integrity: sha512-XyLmROnACWqSxiGYArdef1fItQd47weqB7iwtfr9JHwRrqIXZdcFMvvEcL9xHCmL0SNsOvF0c42lWyM1U5dgig==}
781 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
782 | hasBin: true
783 | peerDependencies:
784 | jiti: '*'
785 | peerDependenciesMeta:
786 | jiti:
787 | optional: true
788 |
789 | espree@10.4.0:
790 | resolution: {integrity: sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==}
791 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
792 |
793 | esquery@1.6.0:
794 | resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==}
795 | engines: {node: '>=0.10'}
796 |
797 | esrecurse@4.3.0:
798 | resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==}
799 | engines: {node: '>=4.0'}
800 |
801 | estraverse@4.3.0:
802 | resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==}
803 | engines: {node: '>=4.0'}
804 |
805 | estraverse@5.3.0:
806 | resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
807 | engines: {node: '>=4.0'}
808 |
809 | esutils@2.0.3:
810 | resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
811 | engines: {node: '>=0.10.0'}
812 |
813 | event-stream@3.3.5:
814 | resolution: {integrity: sha512-vyibDcu5JL20Me1fP734QBH/kenBGLZap2n0+XXM7mvuUPzJ20Ydqj1aKcIeMdri1p+PU+4yAKugjN8KCVst+g==}
815 |
816 | events@3.3.0:
817 | resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==}
818 | engines: {node: '>=0.8.x'}
819 |
820 | extend-shallow@1.1.4:
821 | resolution: {integrity: sha512-L7AGmkO6jhDkEBBGWlLtftA80Xq8DipnrRPr0pyi7GQLXkaq9JYA4xF4z6qnadIC6euiTDKco0cGSU9muw+WTw==}
822 | engines: {node: '>=0.10.0'}
823 |
824 | fancy-log@1.3.3:
825 | resolution: {integrity: sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==}
826 | engines: {node: '>= 0.10'}
827 |
828 | fast-deep-equal@3.1.3:
829 | resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
830 |
831 | fast-glob@3.3.3:
832 | resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==}
833 | engines: {node: '>=8.6.0'}
834 |
835 | fast-json-stable-stringify@2.1.0:
836 | resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==}
837 |
838 | fast-levenshtein@2.0.6:
839 | resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==}
840 |
841 | fast-uri@3.1.0:
842 | resolution: {integrity: sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==}
843 |
844 | fastq@1.19.1:
845 | resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==}
846 |
847 | file-entry-cache@8.0.0:
848 | resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==}
849 | engines: {node: '>=16.0.0'}
850 |
851 | fill-range@7.1.1:
852 | resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==}
853 | engines: {node: '>=8'}
854 |
855 | find-up@5.0.0:
856 | resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
857 | engines: {node: '>=10'}
858 |
859 | flat-cache@4.0.1:
860 | resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==}
861 | engines: {node: '>=16'}
862 |
863 | flat@5.0.2:
864 | resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==}
865 | hasBin: true
866 |
867 | flatted@3.3.3:
868 | resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==}
869 |
870 | foreground-child@3.3.1:
871 | resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==}
872 | engines: {node: '>=14'}
873 |
874 | from@0.1.7:
875 | resolution: {integrity: sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g==}
876 |
877 | fs-extra@10.1.0:
878 | resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==}
879 | engines: {node: '>=12'}
880 |
881 | fs.realpath@1.0.0:
882 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
883 |
884 | fsevents@2.3.3:
885 | resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
886 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
887 | os: [darwin]
888 |
889 | get-caller-file@2.0.5:
890 | resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==}
891 | engines: {node: 6.* || 8.* || >= 10.*}
892 |
893 | get-east-asian-width@1.4.0:
894 | resolution: {integrity: sha512-QZjmEOC+IT1uk6Rx0sX22V6uHWVwbdbxf1faPqJ1QhLdGgsRGCZoyaQBm/piRdJy/D2um6hM1UP7ZEeQ4EkP+Q==}
895 | engines: {node: '>=18'}
896 |
897 | glob-parent@5.1.2:
898 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
899 | engines: {node: '>= 6'}
900 |
901 | glob-parent@6.0.2:
902 | resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==}
903 | engines: {node: '>=10.13.0'}
904 |
905 | glob-to-regexp@0.4.1:
906 | resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==}
907 |
908 | glob@10.4.5:
909 | resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==}
910 | hasBin: true
911 |
912 | glob@11.0.3:
913 | resolution: {integrity: sha512-2Nim7dha1KVkaiF4q6Dj+ngPPMdfvLJEOpZk/jKiUAkqKebpGAWQXAq9z1xu9HKu5lWfqw/FASuccEjyznjPaA==}
914 | engines: {node: 20 || >=22}
915 | hasBin: true
916 |
917 | glob@7.2.3:
918 | resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
919 | deprecated: Glob versions prior to v9 are no longer supported
920 |
921 | globals@14.0.0:
922 | resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==}
923 | engines: {node: '>=18'}
924 |
925 | globby@14.1.0:
926 | resolution: {integrity: sha512-0Ia46fDOaT7k4og1PDW4YbodWWr3scS2vAr2lTbsplOt2WkKp0vQbkI9wKis/T5LV/dqPjO3bpS/z6GTJB82LA==}
927 | engines: {node: '>=18'}
928 |
929 | graceful-fs@4.2.11:
930 | resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
931 |
932 | graphemer@1.4.0:
933 | resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==}
934 |
935 | has-ansi@2.0.0:
936 | resolution: {integrity: sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==}
937 | engines: {node: '>=0.10.0'}
938 |
939 | has-flag@3.0.0:
940 | resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==}
941 | engines: {node: '>=4'}
942 |
943 | has-flag@4.0.0:
944 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
945 | engines: {node: '>=8'}
946 |
947 | he@1.2.0:
948 | resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==}
949 | hasBin: true
950 |
951 | http-proxy-agent@7.0.2:
952 | resolution: {integrity: sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==}
953 | engines: {node: '>= 14'}
954 |
955 | https-proxy-agent@7.0.6:
956 | resolution: {integrity: sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==}
957 | engines: {node: '>= 14'}
958 |
959 | iconv-lite@0.6.3:
960 | resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==}
961 | engines: {node: '>=0.10.0'}
962 |
963 | ignore-by-default@1.0.1:
964 | resolution: {integrity: sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA==}
965 |
966 | ignore@5.3.2:
967 | resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==}
968 | engines: {node: '>= 4'}
969 |
970 | ignore@7.0.5:
971 | resolution: {integrity: sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==}
972 | engines: {node: '>= 4'}
973 |
974 | immediate@3.0.6:
975 | resolution: {integrity: sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==}
976 |
977 | import-fresh@3.3.1:
978 | resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==}
979 | engines: {node: '>=6'}
980 |
981 | imurmurhash@0.1.4:
982 | resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
983 | engines: {node: '>=0.8.19'}
984 |
985 | inflight@1.0.6:
986 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==}
987 | deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
988 |
989 | inherits@2.0.4:
990 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
991 |
992 | is-binary-path@2.1.0:
993 | resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
994 | engines: {node: '>=8'}
995 |
996 | is-extglob@2.1.1:
997 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
998 | engines: {node: '>=0.10.0'}
999 |
1000 | is-fullwidth-code-point@3.0.0:
1001 | resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
1002 | engines: {node: '>=8'}
1003 |
1004 | is-glob@4.0.3:
1005 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
1006 | engines: {node: '>=0.10.0'}
1007 |
1008 | is-interactive@2.0.0:
1009 | resolution: {integrity: sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==}
1010 | engines: {node: '>=12'}
1011 |
1012 | is-number@7.0.0:
1013 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
1014 | engines: {node: '>=0.12.0'}
1015 |
1016 | is-path-cwd@3.0.0:
1017 | resolution: {integrity: sha512-kyiNFFLU0Ampr6SDZitD/DwUo4Zs1nSdnygUBqsu3LooL00Qvb5j+UnvApUn/TTj1J3OuE6BTdQ5rudKmU2ZaA==}
1018 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
1019 |
1020 | is-path-inside@3.0.3:
1021 | resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==}
1022 | engines: {node: '>=8'}
1023 |
1024 | is-path-inside@4.0.0:
1025 | resolution: {integrity: sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==}
1026 | engines: {node: '>=12'}
1027 |
1028 | is-plain-obj@2.1.0:
1029 | resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==}
1030 | engines: {node: '>=8'}
1031 |
1032 | is-unicode-supported@0.1.0:
1033 | resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==}
1034 | engines: {node: '>=10'}
1035 |
1036 | is-unicode-supported@1.3.0:
1037 | resolution: {integrity: sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==}
1038 | engines: {node: '>=12'}
1039 |
1040 | is-unicode-supported@2.1.0:
1041 | resolution: {integrity: sha512-mE00Gnza5EEB3Ds0HfMyllZzbBrmLOX3vfWoj9A9PEnTfratQ/BcaJOuMhnkhjXvb2+FkY3VuHqtAGpTPmglFQ==}
1042 | engines: {node: '>=18'}
1043 |
1044 | is@3.3.2:
1045 | resolution: {integrity: sha512-a2xr4E3s1PjDS8ORcGgXpWx6V+liNs+O3JRD2mb9aeugD7rtkkZ0zgLdYgw0tWsKhsdiezGYptSiMlVazCBTuQ==}
1046 | engines: {node: '>= 0.4'}
1047 |
1048 | isarray@1.0.0:
1049 | resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==}
1050 |
1051 | isexe@2.0.0:
1052 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
1053 |
1054 | jackspeak@3.4.3:
1055 | resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==}
1056 |
1057 | jackspeak@4.1.1:
1058 | resolution: {integrity: sha512-zptv57P3GpL+O0I7VdMJNBZCu+BPHVQUk55Ft8/QCJjTVxrnJHuVuX/0Bl2A6/+2oyR/ZMEuFKwmzqqZ/U5nPQ==}
1059 | engines: {node: 20 || >=22}
1060 |
1061 | jest-worker@27.5.1:
1062 | resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==}
1063 | engines: {node: '>= 10.13.0'}
1064 |
1065 | js-yaml@4.1.0:
1066 | resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
1067 | hasBin: true
1068 |
1069 | json-buffer@3.0.1:
1070 | resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==}
1071 |
1072 | json-parse-even-better-errors@2.3.1:
1073 | resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==}
1074 |
1075 | json-schema-traverse@0.4.1:
1076 | resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==}
1077 |
1078 | json-schema-traverse@1.0.0:
1079 | resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==}
1080 |
1081 | json-stable-stringify-without-jsonify@1.0.1:
1082 | resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==}
1083 |
1084 | json5@2.2.3:
1085 | resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==}
1086 | engines: {node: '>=6'}
1087 | hasBin: true
1088 |
1089 | jsonfile@6.2.0:
1090 | resolution: {integrity: sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==}
1091 |
1092 | jszip@3.10.1:
1093 | resolution: {integrity: sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==}
1094 |
1095 | keyv@4.5.4:
1096 | resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==}
1097 |
1098 | kind-of@1.1.0:
1099 | resolution: {integrity: sha512-aUH6ElPnMGon2/YkxRIigV32MOpTVcoXQ1Oo8aYn40s+sJ3j+0gFZsT8HKDcxNy7Fi9zuquWtGaGAahOdv5p/g==}
1100 | engines: {node: '>=0.10.0'}
1101 |
1102 | levn@0.4.1:
1103 | resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==}
1104 | engines: {node: '>= 0.8.0'}
1105 |
1106 | lie@3.3.0:
1107 | resolution: {integrity: sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==}
1108 |
1109 | loader-runner@4.3.1:
1110 | resolution: {integrity: sha512-IWqP2SCPhyVFTBtRcgMHdzlf9ul25NwaFx4wCEH/KjAXuuHY4yNjvPXsBokp8jCB936PyWRaPKUNh8NvylLp2Q==}
1111 | engines: {node: '>=6.11.5'}
1112 |
1113 | locate-path@6.0.0:
1114 | resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
1115 | engines: {node: '>=10'}
1116 |
1117 | lodash.merge@4.6.2:
1118 | resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==}
1119 |
1120 | log-symbols@4.1.0:
1121 | resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==}
1122 | engines: {node: '>=10'}
1123 |
1124 | log-symbols@6.0.0:
1125 | resolution: {integrity: sha512-i24m8rpwhmPIS4zscNzK6MSEhk0DUWa/8iYQWxhffV8jkI4Phvs3F+quL5xvS0gdQR0FyTCMMH33Y78dDTzzIw==}
1126 | engines: {node: '>=18'}
1127 |
1128 | lru-cache@10.4.3:
1129 | resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==}
1130 |
1131 | lru-cache@11.2.2:
1132 | resolution: {integrity: sha512-F9ODfyqML2coTIsQpSkRHnLSZMtkU8Q+mSfcaIyKwy58u+8k5nvAYeiNhsyMARvzNcXJ9QfWVrcPsC9e9rAxtg==}
1133 | engines: {node: 20 || >=22}
1134 |
1135 | map-stream@0.0.7:
1136 | resolution: {integrity: sha512-C0X0KQmGm3N2ftbTGBhSyuydQ+vV1LC3f3zPvT3RXHXNZrvfPZcoXp/N5DOa8vedX/rTMm2CjTtivFg2STJMRQ==}
1137 |
1138 | merge-stream@2.0.0:
1139 | resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==}
1140 |
1141 | merge2@1.4.1:
1142 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
1143 | engines: {node: '>= 8'}
1144 |
1145 | micromatch@4.0.8:
1146 | resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==}
1147 | engines: {node: '>=8.6'}
1148 |
1149 | mime-db@1.52.0:
1150 | resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==}
1151 | engines: {node: '>= 0.6'}
1152 |
1153 | mime-types@2.1.35:
1154 | resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==}
1155 | engines: {node: '>= 0.6'}
1156 |
1157 | mimic-function@5.0.1:
1158 | resolution: {integrity: sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==}
1159 | engines: {node: '>=18'}
1160 |
1161 | minimatch@10.0.3:
1162 | resolution: {integrity: sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw==}
1163 | engines: {node: 20 || >=22}
1164 |
1165 | minimatch@3.1.2:
1166 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
1167 |
1168 | minimatch@9.0.5:
1169 | resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==}
1170 | engines: {node: '>=16 || 14 >=14.17'}
1171 |
1172 | minipass@7.1.2:
1173 | resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==}
1174 | engines: {node: '>=16 || 14 >=14.17'}
1175 |
1176 | mocha@11.7.4:
1177 | resolution: {integrity: sha512-1jYAaY8x0kAZ0XszLWu14pzsf4KV740Gld4HXkhNTXwcHx4AUEDkPzgEHg9CM5dVcW+zv036tjpsEbLraPJj4w==}
1178 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
1179 | hasBin: true
1180 |
1181 | ms@2.1.3:
1182 | resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
1183 |
1184 | natural-compare@1.4.0:
1185 | resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
1186 |
1187 | neo-async@2.6.2:
1188 | resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==}
1189 |
1190 | node-releases@2.0.23:
1191 | resolution: {integrity: sha512-cCmFDMSm26S6tQSDpBCg/NR8NENrVPhAJSf+XbxBG4rPFaaonlEoE9wHQmun+cls499TQGSb7ZyPBRlzgKfpeg==}
1192 |
1193 | nodemon@3.1.10:
1194 | resolution: {integrity: sha512-WDjw3pJ0/0jMFmyNDp3gvY2YizjLmmOUQo6DEBY+JgdvW/yQ9mEeSw6H5ythl5Ny2ytb7f9C2nIbjSxMNzbJXw==}
1195 | engines: {node: '>=10'}
1196 | hasBin: true
1197 |
1198 | normalize-path@3.0.0:
1199 | resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
1200 | engines: {node: '>=0.10.0'}
1201 |
1202 | once@1.4.0:
1203 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
1204 |
1205 | onetime@7.0.0:
1206 | resolution: {integrity: sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==}
1207 | engines: {node: '>=18'}
1208 |
1209 | optionator@0.9.4:
1210 | resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==}
1211 | engines: {node: '>= 0.8.0'}
1212 |
1213 | ora@8.2.0:
1214 | resolution: {integrity: sha512-weP+BZ8MVNnlCm8c0Qdc1WSWq4Qn7I+9CJGm7Qali6g44e/PUzbjNqJX5NJ9ljlNMosfJvg1fKEGILklK9cwnw==}
1215 | engines: {node: '>=18'}
1216 |
1217 | p-limit@3.1.0:
1218 | resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
1219 | engines: {node: '>=10'}
1220 |
1221 | p-locate@5.0.0:
1222 | resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
1223 | engines: {node: '>=10'}
1224 |
1225 | p-map@7.0.3:
1226 | resolution: {integrity: sha512-VkndIv2fIB99swvQoA65bm+fsmt6UNdGeIB0oxBs+WhAhdh08QA04JXpI7rbB9r08/nkbysKoya9rtDERYOYMA==}
1227 | engines: {node: '>=18'}
1228 |
1229 | package-json-from-dist@1.0.1:
1230 | resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==}
1231 |
1232 | pako@1.0.11:
1233 | resolution: {integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==}
1234 |
1235 | parent-module@1.0.1:
1236 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
1237 | engines: {node: '>=6'}
1238 |
1239 | parse-node-version@1.0.1:
1240 | resolution: {integrity: sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==}
1241 | engines: {node: '>= 0.10'}
1242 |
1243 | path-exists@4.0.0:
1244 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
1245 | engines: {node: '>=8'}
1246 |
1247 | path-is-absolute@1.0.1:
1248 | resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
1249 | engines: {node: '>=0.10.0'}
1250 |
1251 | path-key@3.1.1:
1252 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
1253 | engines: {node: '>=8'}
1254 |
1255 | path-scurry@1.11.1:
1256 | resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==}
1257 | engines: {node: '>=16 || 14 >=14.18'}
1258 |
1259 | path-scurry@2.0.0:
1260 | resolution: {integrity: sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==}
1261 | engines: {node: 20 || >=22}
1262 |
1263 | path-type@6.0.0:
1264 | resolution: {integrity: sha512-Vj7sf++t5pBD637NSfkxpHSMfWaeig5+DKWLhcqIYx6mWQz5hdJTGDVMQiJcw1ZYkhs7AazKDGpRVji1LJCZUQ==}
1265 | engines: {node: '>=18'}
1266 |
1267 | pause-stream@0.0.11:
1268 | resolution: {integrity: sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A==}
1269 |
1270 | picocolors@1.1.1:
1271 | resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
1272 |
1273 | picomatch@2.3.1:
1274 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
1275 | engines: {node: '>=8.6'}
1276 |
1277 | plugin-error@0.1.2:
1278 | resolution: {integrity: sha512-WzZHcm4+GO34sjFMxQMqZbsz3xiNEgonCskQ9v+IroMmYgk/tas8dG+Hr2D6IbRPybZ12oWpzE/w3cGJ6FJzOw==}
1279 | engines: {node: '>=0.10.0'}
1280 |
1281 | prelude-ls@1.2.1:
1282 | resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==}
1283 | engines: {node: '>= 0.8.0'}
1284 |
1285 | presentable-error@0.0.1:
1286 | resolution: {integrity: sha512-E6rsNU1QNJgB3sjj7OANinGncFKuK+164sLXw1/CqBjj/EkXSoSdHCtWQGBNlREIGLnL7IEUEGa08YFVUbrhVg==}
1287 | engines: {node: '>=16'}
1288 |
1289 | process-nextick-args@2.0.1:
1290 | resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==}
1291 |
1292 | pstree.remy@1.1.8:
1293 | resolution: {integrity: sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==}
1294 |
1295 | punycode@2.3.1:
1296 | resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==}
1297 | engines: {node: '>=6'}
1298 |
1299 | queue-microtask@1.2.3:
1300 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
1301 |
1302 | randombytes@2.1.0:
1303 | resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==}
1304 |
1305 | readable-stream@2.3.8:
1306 | resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==}
1307 |
1308 | readdirp@3.6.0:
1309 | resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==}
1310 | engines: {node: '>=8.10.0'}
1311 |
1312 | readdirp@4.1.2:
1313 | resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==}
1314 | engines: {node: '>= 14.18.0'}
1315 |
1316 | remove-trailing-separator@1.1.0:
1317 | resolution: {integrity: sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==}
1318 |
1319 | replace-ext@1.0.1:
1320 | resolution: {integrity: sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw==}
1321 | engines: {node: '>= 0.10'}
1322 |
1323 | require-directory@2.1.1:
1324 | resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==}
1325 | engines: {node: '>=0.10.0'}
1326 |
1327 | require-from-string@2.0.2:
1328 | resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==}
1329 | engines: {node: '>=0.10.0'}
1330 |
1331 | resolve-from@4.0.0:
1332 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
1333 | engines: {node: '>=4'}
1334 |
1335 | restore-cursor@5.1.0:
1336 | resolution: {integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==}
1337 | engines: {node: '>=18'}
1338 |
1339 | reusify@1.1.0:
1340 | resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==}
1341 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
1342 |
1343 | run-parallel@1.2.0:
1344 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
1345 |
1346 | run-sequence@2.2.1:
1347 | resolution: {integrity: sha512-qkzZnQWMZjcKbh3CNly2srtrkaO/2H/SI5f2eliMCapdRD3UhMrwjfOAZJAnZ2H8Ju4aBzFZkBGXUqFs9V0yxw==}
1348 | engines: {node: '>= 0.8.0'}
1349 |
1350 | safe-buffer@5.1.2:
1351 | resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==}
1352 |
1353 | safe-buffer@5.2.1:
1354 | resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}
1355 |
1356 | safer-buffer@2.1.2:
1357 | resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
1358 |
1359 | sax@1.4.1:
1360 | resolution: {integrity: sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==}
1361 |
1362 | schema-utils@4.3.3:
1363 | resolution: {integrity: sha512-eflK8wEtyOE6+hsaRVPxvUKYCpRgzLqDTb8krvAsRIwOGlHoSgYLgBXoubGgLd2fT41/OUYdb48v4k4WWHQurA==}
1364 | engines: {node: '>= 10.13.0'}
1365 |
1366 | semver@7.7.3:
1367 | resolution: {integrity: sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==}
1368 | engines: {node: '>=10'}
1369 | hasBin: true
1370 |
1371 | serialize-javascript@6.0.2:
1372 | resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==}
1373 |
1374 | setimmediate@1.0.5:
1375 | resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==}
1376 |
1377 | shebang-command@2.0.0:
1378 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}
1379 | engines: {node: '>=8'}
1380 |
1381 | shebang-regex@3.0.0:
1382 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
1383 | engines: {node: '>=8'}
1384 |
1385 | signal-exit@4.1.0:
1386 | resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==}
1387 | engines: {node: '>=14'}
1388 |
1389 | simple-update-notifier@2.0.0:
1390 | resolution: {integrity: sha512-a2B9Y0KlNXl9u/vsW6sTIu9vGEpfKu2wRV6l1H3XEas/0gUIzGzBoP/IouTcUQbm9JWZLH3COxyn03TYlFax6w==}
1391 | engines: {node: '>=10'}
1392 |
1393 | slash@5.1.0:
1394 | resolution: {integrity: sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==}
1395 | engines: {node: '>=14.16'}
1396 |
1397 | source-map-support@0.5.21:
1398 | resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==}
1399 |
1400 | source-map@0.6.1:
1401 | resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
1402 | engines: {node: '>=0.10.0'}
1403 |
1404 | source-map@0.7.6:
1405 | resolution: {integrity: sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ==}
1406 | engines: {node: '>= 12'}
1407 |
1408 | split@1.0.1:
1409 | resolution: {integrity: sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==}
1410 |
1411 | stdin-discarder@0.2.2:
1412 | resolution: {integrity: sha512-UhDfHmA92YAlNnCfhmq0VeNL5bDbiZGg7sZ2IvPsXubGkiNa9EC+tUTsjBRsYUAz87btI6/1wf4XoVvQ3uRnmQ==}
1413 | engines: {node: '>=18'}
1414 |
1415 | stream-combiner@0.2.2:
1416 | resolution: {integrity: sha512-6yHMqgLYDzQDcAkL+tjJDC5nSNuNIx0vZtRZeiPh7Saef7VHX9H5Ijn9l2VIol2zaNYlYEX6KyuT/237A58qEQ==}
1417 |
1418 | string-width@4.2.3:
1419 | resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
1420 | engines: {node: '>=8'}
1421 |
1422 | string-width@5.1.2:
1423 | resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==}
1424 | engines: {node: '>=12'}
1425 |
1426 | string-width@7.2.0:
1427 | resolution: {integrity: sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==}
1428 | engines: {node: '>=18'}
1429 |
1430 | string_decoder@1.1.1:
1431 | resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==}
1432 |
1433 | strip-ansi@3.0.1:
1434 | resolution: {integrity: sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==}
1435 | engines: {node: '>=0.10.0'}
1436 |
1437 | strip-ansi@6.0.1:
1438 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
1439 | engines: {node: '>=8'}
1440 |
1441 | strip-ansi@7.1.2:
1442 | resolution: {integrity: sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==}
1443 | engines: {node: '>=12'}
1444 |
1445 | strip-json-comments@3.1.1:
1446 | resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
1447 | engines: {node: '>=8'}
1448 |
1449 | supports-color@2.0.0:
1450 | resolution: {integrity: sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==}
1451 | engines: {node: '>=0.8.0'}
1452 |
1453 | supports-color@5.5.0:
1454 | resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==}
1455 | engines: {node: '>=4'}
1456 |
1457 | supports-color@7.2.0:
1458 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
1459 | engines: {node: '>=8'}
1460 |
1461 | supports-color@8.1.1:
1462 | resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==}
1463 | engines: {node: '>=10'}
1464 |
1465 | tapable@2.3.0:
1466 | resolution: {integrity: sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==}
1467 | engines: {node: '>=6'}
1468 |
1469 | terser-webpack-plugin@5.3.14:
1470 | resolution: {integrity: sha512-vkZjpUjb6OMS7dhV+tILUW6BhpDR7P2L/aQSAv+Uwk+m8KATX9EccViHTJR2qDtACKPIYndLGCyl3FMo+r2LMw==}
1471 | engines: {node: '>= 10.13.0'}
1472 | peerDependencies:
1473 | '@swc/core': '*'
1474 | esbuild: '*'
1475 | uglify-js: '*'
1476 | webpack: ^5.1.0
1477 | peerDependenciesMeta:
1478 | '@swc/core':
1479 | optional: true
1480 | esbuild:
1481 | optional: true
1482 | uglify-js:
1483 | optional: true
1484 |
1485 | terser@5.44.0:
1486 | resolution: {integrity: sha512-nIVck8DK+GM/0Frwd+nIhZ84pR/BX7rmXMfYwyg+Sri5oGVE99/E3KvXqpC2xHFxyqXyGHTKBSioxxplrO4I4w==}
1487 | engines: {node: '>=10'}
1488 | hasBin: true
1489 |
1490 | through@2.3.8:
1491 | resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==}
1492 |
1493 | time-stamp@1.1.0:
1494 | resolution: {integrity: sha512-gLCeArryy2yNTRzTGKbZbloctj64jkZ57hj5zdraXue6aFgd6PmvVtEyiUU+hvU0v7q08oVv8r8ev0tRo6bvgw==}
1495 | engines: {node: '>=0.10.0'}
1496 |
1497 | to-regex-range@5.0.1:
1498 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
1499 | engines: {node: '>=8.0'}
1500 |
1501 | touch@3.1.1:
1502 | resolution: {integrity: sha512-r0eojU4bI8MnHr8c5bNo7lJDdI2qXlWWJk6a9EAFG7vbhTjElYhBVS3/miuE0uOuoLdb8Mc/rVfsmm6eo5o9GA==}
1503 | hasBin: true
1504 |
1505 | ts-api-utils@2.1.0:
1506 | resolution: {integrity: sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==}
1507 | engines: {node: '>=18.12'}
1508 | peerDependencies:
1509 | typescript: '>=4.8.4'
1510 |
1511 | ts-loader@9.5.4:
1512 | resolution: {integrity: sha512-nCz0rEwunlTZiy6rXFByQU1kVVpCIgUpc/psFiKVrUwrizdnIbRFu8w7bxhUF0X613DYwT4XzrZHpVyMe758hQ==}
1513 | engines: {node: '>=12.0.0'}
1514 | peerDependencies:
1515 | typescript: '*'
1516 | webpack: ^5.0.0
1517 |
1518 | type-check@0.4.0:
1519 | resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
1520 | engines: {node: '>= 0.8.0'}
1521 |
1522 | typescript@4.9.5:
1523 | resolution: {integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==}
1524 | engines: {node: '>=4.2.0'}
1525 | hasBin: true
1526 |
1527 | typescript@5.9.3:
1528 | resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==}
1529 | engines: {node: '>=14.17'}
1530 | hasBin: true
1531 |
1532 | undefsafe@2.0.5:
1533 | resolution: {integrity: sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==}
1534 |
1535 | undici-types@7.14.0:
1536 | resolution: {integrity: sha512-QQiYxHuyZ9gQUIrmPo3IA+hUl4KYk8uSA7cHrcKd/l3p1OTpZcM0Tbp9x7FAtXdAYhlasd60ncPpgu6ihG6TOA==}
1537 |
1538 | unicorn-magic@0.3.0:
1539 | resolution: {integrity: sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA==}
1540 | engines: {node: '>=18'}
1541 |
1542 | universalify@2.0.1:
1543 | resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==}
1544 | engines: {node: '>= 10.0.0'}
1545 |
1546 | update-browserslist-db@1.1.3:
1547 | resolution: {integrity: sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==}
1548 | hasBin: true
1549 | peerDependencies:
1550 | browserslist: '>= 4.21.0'
1551 |
1552 | uri-js@4.4.1:
1553 | resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
1554 |
1555 | util-deprecate@1.0.2:
1556 | resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
1557 |
1558 | vinyl@2.2.1:
1559 | resolution: {integrity: sha512-LII3bXRFBZLlezoG5FfZVcXflZgWP/4dCwKtxd5ky9+LOtM4CS3bIRQsmR1KMnMW07jpE8fqR2lcxPZ+8sJIcw==}
1560 | engines: {node: '>= 0.10'}
1561 |
1562 | vscode-nls-dev@4.0.4:
1563 | resolution: {integrity: sha512-0KQUVkeRTmKVH4a96ZeD+1RgQV6k21YiBYykrvbMX62m6srPC6aU9CWuWT6zrMAB6qmy9sUD0/Bk6P/atLVMrw==}
1564 | hasBin: true
1565 |
1566 | vscode-nls@5.2.0:
1567 | resolution: {integrity: sha512-RAaHx7B14ZU04EU31pT+rKz2/zSl7xMsfIZuo8pd+KZO6PXtQmpevpq3vxvWNcrGbdmhM/rr5Uw5Mz+NBfhVng==}
1568 |
1569 | watchpack@2.4.4:
1570 | resolution: {integrity: sha512-c5EGNOiyxxV5qmTtAB7rbiXxi1ooX1pQKMLX/MIabJjRA0SJBQOjKF+KSVfHkr9U1cADPon0mRiVe/riyaiDUA==}
1571 | engines: {node: '>=10.13.0'}
1572 |
1573 | webpack-sources@3.3.3:
1574 | resolution: {integrity: sha512-yd1RBzSGanHkitROoPFd6qsrxt+oFhg/129YzheDGqeustzX0vTZJZsSsQjVQC4yzBQ56K55XU8gaNCtIzOnTg==}
1575 | engines: {node: '>=10.13.0'}
1576 |
1577 | webpack@5.102.1:
1578 | resolution: {integrity: sha512-7h/weGm9d/ywQ6qzJ+Xy+r9n/3qgp/thalBbpOi5i223dPXKi04IBtqPN9nTd+jBc7QKfvDbaBnFipYp4sJAUQ==}
1579 | engines: {node: '>=10.13.0'}
1580 | hasBin: true
1581 | peerDependencies:
1582 | webpack-cli: '*'
1583 | peerDependenciesMeta:
1584 | webpack-cli:
1585 | optional: true
1586 |
1587 | which@2.0.2:
1588 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
1589 | engines: {node: '>= 8'}
1590 | hasBin: true
1591 |
1592 | word-wrap@1.2.5:
1593 | resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==}
1594 | engines: {node: '>=0.10.0'}
1595 |
1596 | workerpool@9.3.4:
1597 | resolution: {integrity: sha512-TmPRQYYSAnnDiEB0P/Ytip7bFGvqnSU6I2BcuSw7Hx+JSg/DsUi5ebYfc8GYaSdpuvOcEs6dXxPurOYpe9QFwg==}
1598 |
1599 | wrap-ansi@7.0.0:
1600 | resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}
1601 | engines: {node: '>=10'}
1602 |
1603 | wrap-ansi@8.1.0:
1604 | resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==}
1605 | engines: {node: '>=12'}
1606 |
1607 | wrappy@1.0.2:
1608 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
1609 |
1610 | xml2js@0.5.0:
1611 | resolution: {integrity: sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==}
1612 | engines: {node: '>=4.0.0'}
1613 |
1614 | xmlbuilder@11.0.1:
1615 | resolution: {integrity: sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==}
1616 | engines: {node: '>=4.0'}
1617 |
1618 | y18n@5.0.8:
1619 | resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
1620 | engines: {node: '>=10'}
1621 |
1622 | yargs-parser@21.1.1:
1623 | resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==}
1624 | engines: {node: '>=12'}
1625 |
1626 | yargs-unparser@2.0.0:
1627 | resolution: {integrity: sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==}
1628 | engines: {node: '>=10'}
1629 |
1630 | yargs@17.7.2:
1631 | resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==}
1632 | engines: {node: '>=12'}
1633 |
1634 | yocto-queue@0.1.0:
1635 | resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
1636 | engines: {node: '>=10'}
1637 |
1638 | snapshots:
1639 |
1640 | '@esbuild/aix-ppc64@0.25.10':
1641 | optional: true
1642 |
1643 | '@esbuild/android-arm64@0.25.10':
1644 | optional: true
1645 |
1646 | '@esbuild/android-arm@0.25.10':
1647 | optional: true
1648 |
1649 | '@esbuild/android-x64@0.25.10':
1650 | optional: true
1651 |
1652 | '@esbuild/darwin-arm64@0.25.10':
1653 | optional: true
1654 |
1655 | '@esbuild/darwin-x64@0.25.10':
1656 | optional: true
1657 |
1658 | '@esbuild/freebsd-arm64@0.25.10':
1659 | optional: true
1660 |
1661 | '@esbuild/freebsd-x64@0.25.10':
1662 | optional: true
1663 |
1664 | '@esbuild/linux-arm64@0.25.10':
1665 | optional: true
1666 |
1667 | '@esbuild/linux-arm@0.25.10':
1668 | optional: true
1669 |
1670 | '@esbuild/linux-ia32@0.25.10':
1671 | optional: true
1672 |
1673 | '@esbuild/linux-loong64@0.25.10':
1674 | optional: true
1675 |
1676 | '@esbuild/linux-mips64el@0.25.10':
1677 | optional: true
1678 |
1679 | '@esbuild/linux-ppc64@0.25.10':
1680 | optional: true
1681 |
1682 | '@esbuild/linux-riscv64@0.25.10':
1683 | optional: true
1684 |
1685 | '@esbuild/linux-s390x@0.25.10':
1686 | optional: true
1687 |
1688 | '@esbuild/linux-x64@0.25.10':
1689 | optional: true
1690 |
1691 | '@esbuild/netbsd-arm64@0.25.10':
1692 | optional: true
1693 |
1694 | '@esbuild/netbsd-x64@0.25.10':
1695 | optional: true
1696 |
1697 | '@esbuild/openbsd-arm64@0.25.10':
1698 | optional: true
1699 |
1700 | '@esbuild/openbsd-x64@0.25.10':
1701 | optional: true
1702 |
1703 | '@esbuild/openharmony-arm64@0.25.10':
1704 | optional: true
1705 |
1706 | '@esbuild/sunos-x64@0.25.10':
1707 | optional: true
1708 |
1709 | '@esbuild/win32-arm64@0.25.10':
1710 | optional: true
1711 |
1712 | '@esbuild/win32-ia32@0.25.10':
1713 | optional: true
1714 |
1715 | '@esbuild/win32-x64@0.25.10':
1716 | optional: true
1717 |
1718 | '@eslint-community/eslint-utils@4.9.0(eslint@9.37.0)':
1719 | dependencies:
1720 | eslint: 9.37.0
1721 | eslint-visitor-keys: 3.4.3
1722 |
1723 | '@eslint-community/regexpp@4.12.1': {}
1724 |
1725 | '@eslint/config-array@0.21.0':
1726 | dependencies:
1727 | '@eslint/object-schema': 2.1.6
1728 | debug: 4.4.3
1729 | minimatch: 3.1.2
1730 | transitivePeerDependencies:
1731 | - supports-color
1732 |
1733 | '@eslint/config-helpers@0.4.0':
1734 | dependencies:
1735 | '@eslint/core': 0.16.0
1736 |
1737 | '@eslint/core@0.16.0':
1738 | dependencies:
1739 | '@types/json-schema': 7.0.15
1740 |
1741 | '@eslint/eslintrc@3.3.1':
1742 | dependencies:
1743 | ajv: 6.12.6
1744 | debug: 4.4.3
1745 | espree: 10.4.0
1746 | globals: 14.0.0
1747 | ignore: 5.3.2
1748 | import-fresh: 3.3.1
1749 | js-yaml: 4.1.0
1750 | minimatch: 3.1.2
1751 | strip-json-comments: 3.1.1
1752 | transitivePeerDependencies:
1753 | - supports-color
1754 |
1755 | '@eslint/js@9.37.0': {}
1756 |
1757 | '@eslint/object-schema@2.1.6': {}
1758 |
1759 | '@eslint/plugin-kit@0.4.0':
1760 | dependencies:
1761 | '@eslint/core': 0.16.0
1762 | levn: 0.4.1
1763 |
1764 | '@humanfs/core@0.19.1': {}
1765 |
1766 | '@humanfs/node@0.16.7':
1767 | dependencies:
1768 | '@humanfs/core': 0.19.1
1769 | '@humanwhocodes/retry': 0.4.3
1770 |
1771 | '@humanwhocodes/module-importer@1.0.1': {}
1772 |
1773 | '@humanwhocodes/retry@0.4.3': {}
1774 |
1775 | '@isaacs/balanced-match@4.0.1': {}
1776 |
1777 | '@isaacs/brace-expansion@5.0.0':
1778 | dependencies:
1779 | '@isaacs/balanced-match': 4.0.1
1780 |
1781 | '@isaacs/cliui@8.0.2':
1782 | dependencies:
1783 | string-width: 5.1.2
1784 | string-width-cjs: string-width@4.2.3
1785 | strip-ansi: 7.1.2
1786 | strip-ansi-cjs: strip-ansi@6.0.1
1787 | wrap-ansi: 8.1.0
1788 | wrap-ansi-cjs: wrap-ansi@7.0.0
1789 |
1790 | '@jridgewell/gen-mapping@0.3.13':
1791 | dependencies:
1792 | '@jridgewell/sourcemap-codec': 1.5.5
1793 | '@jridgewell/trace-mapping': 0.3.31
1794 |
1795 | '@jridgewell/resolve-uri@3.1.2': {}
1796 |
1797 | '@jridgewell/source-map@0.3.11':
1798 | dependencies:
1799 | '@jridgewell/gen-mapping': 0.3.13
1800 | '@jridgewell/trace-mapping': 0.3.31
1801 |
1802 | '@jridgewell/sourcemap-codec@1.5.5': {}
1803 |
1804 | '@jridgewell/trace-mapping@0.3.31':
1805 | dependencies:
1806 | '@jridgewell/resolve-uri': 3.1.2
1807 | '@jridgewell/sourcemap-codec': 1.5.5
1808 |
1809 | '@nodelib/fs.scandir@2.1.5':
1810 | dependencies:
1811 | '@nodelib/fs.stat': 2.0.5
1812 | run-parallel: 1.2.0
1813 |
1814 | '@nodelib/fs.stat@2.0.5': {}
1815 |
1816 | '@nodelib/fs.walk@1.2.8':
1817 | dependencies:
1818 | '@nodelib/fs.scandir': 2.1.5
1819 | fastq: 1.19.1
1820 |
1821 | '@pkgjs/parseargs@0.11.0':
1822 | optional: true
1823 |
1824 | '@sindresorhus/merge-streams@2.3.0': {}
1825 |
1826 | '@types/eslint-scope@3.7.7':
1827 | dependencies:
1828 | '@types/eslint': 9.6.1
1829 | '@types/estree': 1.0.8
1830 |
1831 | '@types/eslint@9.6.1':
1832 | dependencies:
1833 | '@types/estree': 1.0.8
1834 | '@types/json-schema': 7.0.15
1835 |
1836 | '@types/estree@1.0.8': {}
1837 |
1838 | '@types/glob@8.1.0':
1839 | dependencies:
1840 | '@types/minimatch': 5.1.2
1841 | '@types/node': 24.7.2
1842 |
1843 | '@types/json-schema@7.0.15': {}
1844 |
1845 | '@types/minimatch@5.1.2': {}
1846 |
1847 | '@types/mocha@10.0.10': {}
1848 |
1849 | '@types/node@24.7.2':
1850 | dependencies:
1851 | undici-types: 7.14.0
1852 |
1853 | '@types/vscode@1.105.0': {}
1854 |
1855 | '@typescript-eslint/eslint-plugin@8.46.0(@typescript-eslint/parser@8.46.0(eslint@9.37.0)(typescript@5.9.3))(eslint@9.37.0)(typescript@5.9.3)':
1856 | dependencies:
1857 | '@eslint-community/regexpp': 4.12.1
1858 | '@typescript-eslint/parser': 8.46.0(eslint@9.37.0)(typescript@5.9.3)
1859 | '@typescript-eslint/scope-manager': 8.46.0
1860 | '@typescript-eslint/type-utils': 8.46.0(eslint@9.37.0)(typescript@5.9.3)
1861 | '@typescript-eslint/utils': 8.46.0(eslint@9.37.0)(typescript@5.9.3)
1862 | '@typescript-eslint/visitor-keys': 8.46.0
1863 | eslint: 9.37.0
1864 | graphemer: 1.4.0
1865 | ignore: 7.0.5
1866 | natural-compare: 1.4.0
1867 | ts-api-utils: 2.1.0(typescript@5.9.3)
1868 | typescript: 5.9.3
1869 | transitivePeerDependencies:
1870 | - supports-color
1871 |
1872 | '@typescript-eslint/parser@8.46.0(eslint@9.37.0)(typescript@5.9.3)':
1873 | dependencies:
1874 | '@typescript-eslint/scope-manager': 8.46.0
1875 | '@typescript-eslint/types': 8.46.0
1876 | '@typescript-eslint/typescript-estree': 8.46.0(typescript@5.9.3)
1877 | '@typescript-eslint/visitor-keys': 8.46.0
1878 | debug: 4.4.3
1879 | eslint: 9.37.0
1880 | typescript: 5.9.3
1881 | transitivePeerDependencies:
1882 | - supports-color
1883 |
1884 | '@typescript-eslint/project-service@8.46.0(typescript@5.9.3)':
1885 | dependencies:
1886 | '@typescript-eslint/tsconfig-utils': 8.46.0(typescript@5.9.3)
1887 | '@typescript-eslint/types': 8.46.0
1888 | debug: 4.4.3
1889 | typescript: 5.9.3
1890 | transitivePeerDependencies:
1891 | - supports-color
1892 |
1893 | '@typescript-eslint/scope-manager@8.46.0':
1894 | dependencies:
1895 | '@typescript-eslint/types': 8.46.0
1896 | '@typescript-eslint/visitor-keys': 8.46.0
1897 |
1898 | '@typescript-eslint/tsconfig-utils@8.46.0(typescript@5.9.3)':
1899 | dependencies:
1900 | typescript: 5.9.3
1901 |
1902 | '@typescript-eslint/type-utils@8.46.0(eslint@9.37.0)(typescript@5.9.3)':
1903 | dependencies:
1904 | '@typescript-eslint/types': 8.46.0
1905 | '@typescript-eslint/typescript-estree': 8.46.0(typescript@5.9.3)
1906 | '@typescript-eslint/utils': 8.46.0(eslint@9.37.0)(typescript@5.9.3)
1907 | debug: 4.4.3
1908 | eslint: 9.37.0
1909 | ts-api-utils: 2.1.0(typescript@5.9.3)
1910 | typescript: 5.9.3
1911 | transitivePeerDependencies:
1912 | - supports-color
1913 |
1914 | '@typescript-eslint/types@8.46.0': {}
1915 |
1916 | '@typescript-eslint/typescript-estree@8.46.0(typescript@5.9.3)':
1917 | dependencies:
1918 | '@typescript-eslint/project-service': 8.46.0(typescript@5.9.3)
1919 | '@typescript-eslint/tsconfig-utils': 8.46.0(typescript@5.9.3)
1920 | '@typescript-eslint/types': 8.46.0
1921 | '@typescript-eslint/visitor-keys': 8.46.0
1922 | debug: 4.4.3
1923 | fast-glob: 3.3.3
1924 | is-glob: 4.0.3
1925 | minimatch: 9.0.5
1926 | semver: 7.7.3
1927 | ts-api-utils: 2.1.0(typescript@5.9.3)
1928 | typescript: 5.9.3
1929 | transitivePeerDependencies:
1930 | - supports-color
1931 |
1932 | '@typescript-eslint/utils@8.46.0(eslint@9.37.0)(typescript@5.9.3)':
1933 | dependencies:
1934 | '@eslint-community/eslint-utils': 4.9.0(eslint@9.37.0)
1935 | '@typescript-eslint/scope-manager': 8.46.0
1936 | '@typescript-eslint/types': 8.46.0
1937 | '@typescript-eslint/typescript-estree': 8.46.0(typescript@5.9.3)
1938 | eslint: 9.37.0
1939 | typescript: 5.9.3
1940 | transitivePeerDependencies:
1941 | - supports-color
1942 |
1943 | '@typescript-eslint/visitor-keys@8.46.0':
1944 | dependencies:
1945 | '@typescript-eslint/types': 8.46.0
1946 | eslint-visitor-keys: 4.2.1
1947 |
1948 | '@vscode/test-electron@2.5.2':
1949 | dependencies:
1950 | http-proxy-agent: 7.0.2
1951 | https-proxy-agent: 7.0.6
1952 | jszip: 3.10.1
1953 | ora: 8.2.0
1954 | semver: 7.7.3
1955 | transitivePeerDependencies:
1956 | - supports-color
1957 |
1958 | '@webassemblyjs/ast@1.14.1':
1959 | dependencies:
1960 | '@webassemblyjs/helper-numbers': 1.13.2
1961 | '@webassemblyjs/helper-wasm-bytecode': 1.13.2
1962 |
1963 | '@webassemblyjs/floating-point-hex-parser@1.13.2': {}
1964 |
1965 | '@webassemblyjs/helper-api-error@1.13.2': {}
1966 |
1967 | '@webassemblyjs/helper-buffer@1.14.1': {}
1968 |
1969 | '@webassemblyjs/helper-numbers@1.13.2':
1970 | dependencies:
1971 | '@webassemblyjs/floating-point-hex-parser': 1.13.2
1972 | '@webassemblyjs/helper-api-error': 1.13.2
1973 | '@xtuc/long': 4.2.2
1974 |
1975 | '@webassemblyjs/helper-wasm-bytecode@1.13.2': {}
1976 |
1977 | '@webassemblyjs/helper-wasm-section@1.14.1':
1978 | dependencies:
1979 | '@webassemblyjs/ast': 1.14.1
1980 | '@webassemblyjs/helper-buffer': 1.14.1
1981 | '@webassemblyjs/helper-wasm-bytecode': 1.13.2
1982 | '@webassemblyjs/wasm-gen': 1.14.1
1983 |
1984 | '@webassemblyjs/ieee754@1.13.2':
1985 | dependencies:
1986 | '@xtuc/ieee754': 1.2.0
1987 |
1988 | '@webassemblyjs/leb128@1.13.2':
1989 | dependencies:
1990 | '@xtuc/long': 4.2.2
1991 |
1992 | '@webassemblyjs/utf8@1.13.2': {}
1993 |
1994 | '@webassemblyjs/wasm-edit@1.14.1':
1995 | dependencies:
1996 | '@webassemblyjs/ast': 1.14.1
1997 | '@webassemblyjs/helper-buffer': 1.14.1
1998 | '@webassemblyjs/helper-wasm-bytecode': 1.13.2
1999 | '@webassemblyjs/helper-wasm-section': 1.14.1
2000 | '@webassemblyjs/wasm-gen': 1.14.1
2001 | '@webassemblyjs/wasm-opt': 1.14.1
2002 | '@webassemblyjs/wasm-parser': 1.14.1
2003 | '@webassemblyjs/wast-printer': 1.14.1
2004 |
2005 | '@webassemblyjs/wasm-gen@1.14.1':
2006 | dependencies:
2007 | '@webassemblyjs/ast': 1.14.1
2008 | '@webassemblyjs/helper-wasm-bytecode': 1.13.2
2009 | '@webassemblyjs/ieee754': 1.13.2
2010 | '@webassemblyjs/leb128': 1.13.2
2011 | '@webassemblyjs/utf8': 1.13.2
2012 |
2013 | '@webassemblyjs/wasm-opt@1.14.1':
2014 | dependencies:
2015 | '@webassemblyjs/ast': 1.14.1
2016 | '@webassemblyjs/helper-buffer': 1.14.1
2017 | '@webassemblyjs/wasm-gen': 1.14.1
2018 | '@webassemblyjs/wasm-parser': 1.14.1
2019 |
2020 | '@webassemblyjs/wasm-parser@1.14.1':
2021 | dependencies:
2022 | '@webassemblyjs/ast': 1.14.1
2023 | '@webassemblyjs/helper-api-error': 1.13.2
2024 | '@webassemblyjs/helper-wasm-bytecode': 1.13.2
2025 | '@webassemblyjs/ieee754': 1.13.2
2026 | '@webassemblyjs/leb128': 1.13.2
2027 | '@webassemblyjs/utf8': 1.13.2
2028 |
2029 | '@webassemblyjs/wast-printer@1.14.1':
2030 | dependencies:
2031 | '@webassemblyjs/ast': 1.14.1
2032 | '@xtuc/long': 4.2.2
2033 |
2034 | '@xtuc/ieee754@1.2.0': {}
2035 |
2036 | '@xtuc/long@4.2.2': {}
2037 |
2038 | acorn-import-phases@1.0.4(acorn@8.15.0):
2039 | dependencies:
2040 | acorn: 8.15.0
2041 |
2042 | acorn-jsx@5.3.2(acorn@8.15.0):
2043 | dependencies:
2044 | acorn: 8.15.0
2045 |
2046 | acorn@8.15.0: {}
2047 |
2048 | agent-base@7.1.4: {}
2049 |
2050 | ajv-formats@2.1.1(ajv@8.17.1):
2051 | optionalDependencies:
2052 | ajv: 8.17.1
2053 |
2054 | ajv-keywords@5.1.0(ajv@8.17.1):
2055 | dependencies:
2056 | ajv: 8.17.1
2057 | fast-deep-equal: 3.1.3
2058 |
2059 | ajv@6.12.6:
2060 | dependencies:
2061 | fast-deep-equal: 3.1.3
2062 | fast-json-stable-stringify: 2.1.0
2063 | json-schema-traverse: 0.4.1
2064 | uri-js: 4.4.1
2065 |
2066 | ajv@8.17.1:
2067 | dependencies:
2068 | fast-deep-equal: 3.1.3
2069 | fast-uri: 3.1.0
2070 | json-schema-traverse: 1.0.0
2071 | require-from-string: 2.0.2
2072 |
2073 | ansi-colors@4.1.3: {}
2074 |
2075 | ansi-cyan@0.1.1:
2076 | dependencies:
2077 | ansi-wrap: 0.1.0
2078 |
2079 | ansi-gray@0.1.1:
2080 | dependencies:
2081 | ansi-wrap: 0.1.0
2082 |
2083 | ansi-red@0.1.1:
2084 | dependencies:
2085 | ansi-wrap: 0.1.0
2086 |
2087 | ansi-regex@2.1.1: {}
2088 |
2089 | ansi-regex@5.0.1: {}
2090 |
2091 | ansi-regex@6.2.2: {}
2092 |
2093 | ansi-styles@2.2.1: {}
2094 |
2095 | ansi-styles@4.3.0:
2096 | dependencies:
2097 | color-convert: 2.0.1
2098 |
2099 | ansi-styles@6.2.3: {}
2100 |
2101 | ansi-wrap@0.1.0: {}
2102 |
2103 | anymatch@3.1.3:
2104 | dependencies:
2105 | normalize-path: 3.0.0
2106 | picomatch: 2.3.1
2107 |
2108 | argparse@2.0.1: {}
2109 |
2110 | arr-diff@1.1.0:
2111 | dependencies:
2112 | arr-flatten: 1.1.0
2113 | array-slice: 0.2.3
2114 |
2115 | arr-flatten@1.1.0: {}
2116 |
2117 | arr-union@2.1.0: {}
2118 |
2119 | array-slice@0.2.3: {}
2120 |
2121 | balanced-match@1.0.2: {}
2122 |
2123 | baseline-browser-mapping@2.8.16: {}
2124 |
2125 | binary-extensions@2.3.0: {}
2126 |
2127 | brace-expansion@1.1.12:
2128 | dependencies:
2129 | balanced-match: 1.0.2
2130 | concat-map: 0.0.1
2131 |
2132 | brace-expansion@2.0.2:
2133 | dependencies:
2134 | balanced-match: 1.0.2
2135 |
2136 | braces@3.0.3:
2137 | dependencies:
2138 | fill-range: 7.1.1
2139 |
2140 | browser-stdout@1.3.1: {}
2141 |
2142 | browserslist@4.26.3:
2143 | dependencies:
2144 | baseline-browser-mapping: 2.8.16
2145 | caniuse-lite: 1.0.30001750
2146 | electron-to-chromium: 1.5.234
2147 | node-releases: 2.0.23
2148 | update-browserslist-db: 1.1.3(browserslist@4.26.3)
2149 |
2150 | buffer-from@1.1.2: {}
2151 |
2152 | callsites@3.1.0: {}
2153 |
2154 | camelcase@6.3.0: {}
2155 |
2156 | caniuse-lite@1.0.30001750: {}
2157 |
2158 | chalk@1.1.3:
2159 | dependencies:
2160 | ansi-styles: 2.2.1
2161 | escape-string-regexp: 1.0.5
2162 | has-ansi: 2.0.0
2163 | strip-ansi: 3.0.1
2164 | supports-color: 2.0.0
2165 |
2166 | chalk@4.1.2:
2167 | dependencies:
2168 | ansi-styles: 4.3.0
2169 | supports-color: 7.2.0
2170 |
2171 | chalk@5.6.2: {}
2172 |
2173 | chokidar@3.6.0:
2174 | dependencies:
2175 | anymatch: 3.1.3
2176 | braces: 3.0.3
2177 | glob-parent: 5.1.2
2178 | is-binary-path: 2.1.0
2179 | is-glob: 4.0.3
2180 | normalize-path: 3.0.0
2181 | readdirp: 3.6.0
2182 | optionalDependencies:
2183 | fsevents: 2.3.3
2184 |
2185 | chokidar@4.0.3:
2186 | dependencies:
2187 | readdirp: 4.1.2
2188 |
2189 | chrome-trace-event@1.0.4: {}
2190 |
2191 | cli-cursor@5.0.0:
2192 | dependencies:
2193 | restore-cursor: 5.1.0
2194 |
2195 | cli-spinners@2.9.2: {}
2196 |
2197 | cliui@8.0.1:
2198 | dependencies:
2199 | string-width: 4.2.3
2200 | strip-ansi: 6.0.1
2201 | wrap-ansi: 7.0.0
2202 |
2203 | clone-buffer@1.0.0: {}
2204 |
2205 | clone-stats@1.0.0: {}
2206 |
2207 | clone@2.1.2: {}
2208 |
2209 | cloneable-readable@1.1.3:
2210 | dependencies:
2211 | inherits: 2.0.4
2212 | process-nextick-args: 2.0.1
2213 | readable-stream: 2.3.8
2214 |
2215 | color-convert@2.0.1:
2216 | dependencies:
2217 | color-name: 1.1.4
2218 |
2219 | color-name@1.1.4: {}
2220 |
2221 | color-support@1.1.3: {}
2222 |
2223 | commander@2.20.3: {}
2224 |
2225 | concat-map@0.0.1: {}
2226 |
2227 | core-util-is@1.0.3: {}
2228 |
2229 | cross-spawn@7.0.6:
2230 | dependencies:
2231 | path-key: 3.1.1
2232 | shebang-command: 2.0.0
2233 | which: 2.0.2
2234 |
2235 | debug@4.4.3:
2236 | dependencies:
2237 | ms: 2.1.3
2238 |
2239 | debug@4.4.3(supports-color@5.5.0):
2240 | dependencies:
2241 | ms: 2.1.3
2242 | optionalDependencies:
2243 | supports-color: 5.5.0
2244 |
2245 | debug@4.4.3(supports-color@8.1.1):
2246 | dependencies:
2247 | ms: 2.1.3
2248 | optionalDependencies:
2249 | supports-color: 8.1.1
2250 |
2251 | decamelize@4.0.0: {}
2252 |
2253 | deep-is@0.1.4: {}
2254 |
2255 | del@8.0.1:
2256 | dependencies:
2257 | globby: 14.1.0
2258 | is-glob: 4.0.3
2259 | is-path-cwd: 3.0.0
2260 | is-path-inside: 4.0.0
2261 | p-map: 7.0.3
2262 | presentable-error: 0.0.1
2263 | slash: 5.1.0
2264 |
2265 | diff@7.0.0: {}
2266 |
2267 | duplexer@0.1.2: {}
2268 |
2269 | eastasianwidth@0.2.0: {}
2270 |
2271 | electron-to-chromium@1.5.234: {}
2272 |
2273 | emoji-regex@10.5.0: {}
2274 |
2275 | emoji-regex@8.0.0: {}
2276 |
2277 | emoji-regex@9.2.2: {}
2278 |
2279 | enhanced-resolve@5.18.3:
2280 | dependencies:
2281 | graceful-fs: 4.2.11
2282 | tapable: 2.3.0
2283 |
2284 | es-module-lexer@1.7.0: {}
2285 |
2286 | esbuild@0.25.10:
2287 | optionalDependencies:
2288 | '@esbuild/aix-ppc64': 0.25.10
2289 | '@esbuild/android-arm': 0.25.10
2290 | '@esbuild/android-arm64': 0.25.10
2291 | '@esbuild/android-x64': 0.25.10
2292 | '@esbuild/darwin-arm64': 0.25.10
2293 | '@esbuild/darwin-x64': 0.25.10
2294 | '@esbuild/freebsd-arm64': 0.25.10
2295 | '@esbuild/freebsd-x64': 0.25.10
2296 | '@esbuild/linux-arm': 0.25.10
2297 | '@esbuild/linux-arm64': 0.25.10
2298 | '@esbuild/linux-ia32': 0.25.10
2299 | '@esbuild/linux-loong64': 0.25.10
2300 | '@esbuild/linux-mips64el': 0.25.10
2301 | '@esbuild/linux-ppc64': 0.25.10
2302 | '@esbuild/linux-riscv64': 0.25.10
2303 | '@esbuild/linux-s390x': 0.25.10
2304 | '@esbuild/linux-x64': 0.25.10
2305 | '@esbuild/netbsd-arm64': 0.25.10
2306 | '@esbuild/netbsd-x64': 0.25.10
2307 | '@esbuild/openbsd-arm64': 0.25.10
2308 | '@esbuild/openbsd-x64': 0.25.10
2309 | '@esbuild/openharmony-arm64': 0.25.10
2310 | '@esbuild/sunos-x64': 0.25.10
2311 | '@esbuild/win32-arm64': 0.25.10
2312 | '@esbuild/win32-ia32': 0.25.10
2313 | '@esbuild/win32-x64': 0.25.10
2314 |
2315 | escalade@3.2.0: {}
2316 |
2317 | escape-string-regexp@1.0.5: {}
2318 |
2319 | escape-string-regexp@4.0.0: {}
2320 |
2321 | eslint-scope@5.1.1:
2322 | dependencies:
2323 | esrecurse: 4.3.0
2324 | estraverse: 4.3.0
2325 |
2326 | eslint-scope@8.4.0:
2327 | dependencies:
2328 | esrecurse: 4.3.0
2329 | estraverse: 5.3.0
2330 |
2331 | eslint-visitor-keys@3.4.3: {}
2332 |
2333 | eslint-visitor-keys@4.2.1: {}
2334 |
2335 | eslint@9.37.0:
2336 | dependencies:
2337 | '@eslint-community/eslint-utils': 4.9.0(eslint@9.37.0)
2338 | '@eslint-community/regexpp': 4.12.1
2339 | '@eslint/config-array': 0.21.0
2340 | '@eslint/config-helpers': 0.4.0
2341 | '@eslint/core': 0.16.0
2342 | '@eslint/eslintrc': 3.3.1
2343 | '@eslint/js': 9.37.0
2344 | '@eslint/plugin-kit': 0.4.0
2345 | '@humanfs/node': 0.16.7
2346 | '@humanwhocodes/module-importer': 1.0.1
2347 | '@humanwhocodes/retry': 0.4.3
2348 | '@types/estree': 1.0.8
2349 | '@types/json-schema': 7.0.15
2350 | ajv: 6.12.6
2351 | chalk: 4.1.2
2352 | cross-spawn: 7.0.6
2353 | debug: 4.4.3
2354 | escape-string-regexp: 4.0.0
2355 | eslint-scope: 8.4.0
2356 | eslint-visitor-keys: 4.2.1
2357 | espree: 10.4.0
2358 | esquery: 1.6.0
2359 | esutils: 2.0.3
2360 | fast-deep-equal: 3.1.3
2361 | file-entry-cache: 8.0.0
2362 | find-up: 5.0.0
2363 | glob-parent: 6.0.2
2364 | ignore: 5.3.2
2365 | imurmurhash: 0.1.4
2366 | is-glob: 4.0.3
2367 | json-stable-stringify-without-jsonify: 1.0.1
2368 | lodash.merge: 4.6.2
2369 | minimatch: 3.1.2
2370 | natural-compare: 1.4.0
2371 | optionator: 0.9.4
2372 | transitivePeerDependencies:
2373 | - supports-color
2374 |
2375 | espree@10.4.0:
2376 | dependencies:
2377 | acorn: 8.15.0
2378 | acorn-jsx: 5.3.2(acorn@8.15.0)
2379 | eslint-visitor-keys: 4.2.1
2380 |
2381 | esquery@1.6.0:
2382 | dependencies:
2383 | estraverse: 5.3.0
2384 |
2385 | esrecurse@4.3.0:
2386 | dependencies:
2387 | estraverse: 5.3.0
2388 |
2389 | estraverse@4.3.0: {}
2390 |
2391 | estraverse@5.3.0: {}
2392 |
2393 | esutils@2.0.3: {}
2394 |
2395 | event-stream@3.3.5:
2396 | dependencies:
2397 | duplexer: 0.1.2
2398 | from: 0.1.7
2399 | map-stream: 0.0.7
2400 | pause-stream: 0.0.11
2401 | split: 1.0.1
2402 | stream-combiner: 0.2.2
2403 | through: 2.3.8
2404 |
2405 | events@3.3.0: {}
2406 |
2407 | extend-shallow@1.1.4:
2408 | dependencies:
2409 | kind-of: 1.1.0
2410 |
2411 | fancy-log@1.3.3:
2412 | dependencies:
2413 | ansi-gray: 0.1.1
2414 | color-support: 1.1.3
2415 | parse-node-version: 1.0.1
2416 | time-stamp: 1.1.0
2417 |
2418 | fast-deep-equal@3.1.3: {}
2419 |
2420 | fast-glob@3.3.3:
2421 | dependencies:
2422 | '@nodelib/fs.stat': 2.0.5
2423 | '@nodelib/fs.walk': 1.2.8
2424 | glob-parent: 5.1.2
2425 | merge2: 1.4.1
2426 | micromatch: 4.0.8
2427 |
2428 | fast-json-stable-stringify@2.1.0: {}
2429 |
2430 | fast-levenshtein@2.0.6: {}
2431 |
2432 | fast-uri@3.1.0: {}
2433 |
2434 | fastq@1.19.1:
2435 | dependencies:
2436 | reusify: 1.1.0
2437 |
2438 | file-entry-cache@8.0.0:
2439 | dependencies:
2440 | flat-cache: 4.0.1
2441 |
2442 | fill-range@7.1.1:
2443 | dependencies:
2444 | to-regex-range: 5.0.1
2445 |
2446 | find-up@5.0.0:
2447 | dependencies:
2448 | locate-path: 6.0.0
2449 | path-exists: 4.0.0
2450 |
2451 | flat-cache@4.0.1:
2452 | dependencies:
2453 | flatted: 3.3.3
2454 | keyv: 4.5.4
2455 |
2456 | flat@5.0.2: {}
2457 |
2458 | flatted@3.3.3: {}
2459 |
2460 | foreground-child@3.3.1:
2461 | dependencies:
2462 | cross-spawn: 7.0.6
2463 | signal-exit: 4.1.0
2464 |
2465 | from@0.1.7: {}
2466 |
2467 | fs-extra@10.1.0:
2468 | dependencies:
2469 | graceful-fs: 4.2.11
2470 | jsonfile: 6.2.0
2471 | universalify: 2.0.1
2472 |
2473 | fs.realpath@1.0.0: {}
2474 |
2475 | fsevents@2.3.3:
2476 | optional: true
2477 |
2478 | get-caller-file@2.0.5: {}
2479 |
2480 | get-east-asian-width@1.4.0: {}
2481 |
2482 | glob-parent@5.1.2:
2483 | dependencies:
2484 | is-glob: 4.0.3
2485 |
2486 | glob-parent@6.0.2:
2487 | dependencies:
2488 | is-glob: 4.0.3
2489 |
2490 | glob-to-regexp@0.4.1: {}
2491 |
2492 | glob@10.4.5:
2493 | dependencies:
2494 | foreground-child: 3.3.1
2495 | jackspeak: 3.4.3
2496 | minimatch: 9.0.5
2497 | minipass: 7.1.2
2498 | package-json-from-dist: 1.0.1
2499 | path-scurry: 1.11.1
2500 |
2501 | glob@11.0.3:
2502 | dependencies:
2503 | foreground-child: 3.3.1
2504 | jackspeak: 4.1.1
2505 | minimatch: 10.0.3
2506 | minipass: 7.1.2
2507 | package-json-from-dist: 1.0.1
2508 | path-scurry: 2.0.0
2509 |
2510 | glob@7.2.3:
2511 | dependencies:
2512 | fs.realpath: 1.0.0
2513 | inflight: 1.0.6
2514 | inherits: 2.0.4
2515 | minimatch: 3.1.2
2516 | once: 1.4.0
2517 | path-is-absolute: 1.0.1
2518 |
2519 | globals@14.0.0: {}
2520 |
2521 | globby@14.1.0:
2522 | dependencies:
2523 | '@sindresorhus/merge-streams': 2.3.0
2524 | fast-glob: 3.3.3
2525 | ignore: 7.0.5
2526 | path-type: 6.0.0
2527 | slash: 5.1.0
2528 | unicorn-magic: 0.3.0
2529 |
2530 | graceful-fs@4.2.11: {}
2531 |
2532 | graphemer@1.4.0: {}
2533 |
2534 | has-ansi@2.0.0:
2535 | dependencies:
2536 | ansi-regex: 2.1.1
2537 |
2538 | has-flag@3.0.0: {}
2539 |
2540 | has-flag@4.0.0: {}
2541 |
2542 | he@1.2.0: {}
2543 |
2544 | http-proxy-agent@7.0.2:
2545 | dependencies:
2546 | agent-base: 7.1.4
2547 | debug: 4.4.3
2548 | transitivePeerDependencies:
2549 | - supports-color
2550 |
2551 | https-proxy-agent@7.0.6:
2552 | dependencies:
2553 | agent-base: 7.1.4
2554 | debug: 4.4.3
2555 | transitivePeerDependencies:
2556 | - supports-color
2557 |
2558 | iconv-lite@0.6.3:
2559 | dependencies:
2560 | safer-buffer: 2.1.2
2561 |
2562 | ignore-by-default@1.0.1: {}
2563 |
2564 | ignore@5.3.2: {}
2565 |
2566 | ignore@7.0.5: {}
2567 |
2568 | immediate@3.0.6: {}
2569 |
2570 | import-fresh@3.3.1:
2571 | dependencies:
2572 | parent-module: 1.0.1
2573 | resolve-from: 4.0.0
2574 |
2575 | imurmurhash@0.1.4: {}
2576 |
2577 | inflight@1.0.6:
2578 | dependencies:
2579 | once: 1.4.0
2580 | wrappy: 1.0.2
2581 |
2582 | inherits@2.0.4: {}
2583 |
2584 | is-binary-path@2.1.0:
2585 | dependencies:
2586 | binary-extensions: 2.3.0
2587 |
2588 | is-extglob@2.1.1: {}
2589 |
2590 | is-fullwidth-code-point@3.0.0: {}
2591 |
2592 | is-glob@4.0.3:
2593 | dependencies:
2594 | is-extglob: 2.1.1
2595 |
2596 | is-interactive@2.0.0: {}
2597 |
2598 | is-number@7.0.0: {}
2599 |
2600 | is-path-cwd@3.0.0: {}
2601 |
2602 | is-path-inside@3.0.3: {}
2603 |
2604 | is-path-inside@4.0.0: {}
2605 |
2606 | is-plain-obj@2.1.0: {}
2607 |
2608 | is-unicode-supported@0.1.0: {}
2609 |
2610 | is-unicode-supported@1.3.0: {}
2611 |
2612 | is-unicode-supported@2.1.0: {}
2613 |
2614 | is@3.3.2: {}
2615 |
2616 | isarray@1.0.0: {}
2617 |
2618 | isexe@2.0.0: {}
2619 |
2620 | jackspeak@3.4.3:
2621 | dependencies:
2622 | '@isaacs/cliui': 8.0.2
2623 | optionalDependencies:
2624 | '@pkgjs/parseargs': 0.11.0
2625 |
2626 | jackspeak@4.1.1:
2627 | dependencies:
2628 | '@isaacs/cliui': 8.0.2
2629 |
2630 | jest-worker@27.5.1:
2631 | dependencies:
2632 | '@types/node': 24.7.2
2633 | merge-stream: 2.0.0
2634 | supports-color: 8.1.1
2635 |
2636 | js-yaml@4.1.0:
2637 | dependencies:
2638 | argparse: 2.0.1
2639 |
2640 | json-buffer@3.0.1: {}
2641 |
2642 | json-parse-even-better-errors@2.3.1: {}
2643 |
2644 | json-schema-traverse@0.4.1: {}
2645 |
2646 | json-schema-traverse@1.0.0: {}
2647 |
2648 | json-stable-stringify-without-jsonify@1.0.1: {}
2649 |
2650 | json5@2.2.3: {}
2651 |
2652 | jsonfile@6.2.0:
2653 | dependencies:
2654 | universalify: 2.0.1
2655 | optionalDependencies:
2656 | graceful-fs: 4.2.11
2657 |
2658 | jszip@3.10.1:
2659 | dependencies:
2660 | lie: 3.3.0
2661 | pako: 1.0.11
2662 | readable-stream: 2.3.8
2663 | setimmediate: 1.0.5
2664 |
2665 | keyv@4.5.4:
2666 | dependencies:
2667 | json-buffer: 3.0.1
2668 |
2669 | kind-of@1.1.0: {}
2670 |
2671 | levn@0.4.1:
2672 | dependencies:
2673 | prelude-ls: 1.2.1
2674 | type-check: 0.4.0
2675 |
2676 | lie@3.3.0:
2677 | dependencies:
2678 | immediate: 3.0.6
2679 |
2680 | loader-runner@4.3.1: {}
2681 |
2682 | locate-path@6.0.0:
2683 | dependencies:
2684 | p-locate: 5.0.0
2685 |
2686 | lodash.merge@4.6.2: {}
2687 |
2688 | log-symbols@4.1.0:
2689 | dependencies:
2690 | chalk: 4.1.2
2691 | is-unicode-supported: 0.1.0
2692 |
2693 | log-symbols@6.0.0:
2694 | dependencies:
2695 | chalk: 5.6.2
2696 | is-unicode-supported: 1.3.0
2697 |
2698 | lru-cache@10.4.3: {}
2699 |
2700 | lru-cache@11.2.2: {}
2701 |
2702 | map-stream@0.0.7: {}
2703 |
2704 | merge-stream@2.0.0: {}
2705 |
2706 | merge2@1.4.1: {}
2707 |
2708 | micromatch@4.0.8:
2709 | dependencies:
2710 | braces: 3.0.3
2711 | picomatch: 2.3.1
2712 |
2713 | mime-db@1.52.0: {}
2714 |
2715 | mime-types@2.1.35:
2716 | dependencies:
2717 | mime-db: 1.52.0
2718 |
2719 | mimic-function@5.0.1: {}
2720 |
2721 | minimatch@10.0.3:
2722 | dependencies:
2723 | '@isaacs/brace-expansion': 5.0.0
2724 |
2725 | minimatch@3.1.2:
2726 | dependencies:
2727 | brace-expansion: 1.1.12
2728 |
2729 | minimatch@9.0.5:
2730 | dependencies:
2731 | brace-expansion: 2.0.2
2732 |
2733 | minipass@7.1.2: {}
2734 |
2735 | mocha@11.7.4:
2736 | dependencies:
2737 | browser-stdout: 1.3.1
2738 | chokidar: 4.0.3
2739 | debug: 4.4.3(supports-color@8.1.1)
2740 | diff: 7.0.0
2741 | escape-string-regexp: 4.0.0
2742 | find-up: 5.0.0
2743 | glob: 10.4.5
2744 | he: 1.2.0
2745 | is-path-inside: 3.0.3
2746 | js-yaml: 4.1.0
2747 | log-symbols: 4.1.0
2748 | minimatch: 9.0.5
2749 | ms: 2.1.3
2750 | picocolors: 1.1.1
2751 | serialize-javascript: 6.0.2
2752 | strip-json-comments: 3.1.1
2753 | supports-color: 8.1.1
2754 | workerpool: 9.3.4
2755 | yargs: 17.7.2
2756 | yargs-parser: 21.1.1
2757 | yargs-unparser: 2.0.0
2758 |
2759 | ms@2.1.3: {}
2760 |
2761 | natural-compare@1.4.0: {}
2762 |
2763 | neo-async@2.6.2: {}
2764 |
2765 | node-releases@2.0.23: {}
2766 |
2767 | nodemon@3.1.10:
2768 | dependencies:
2769 | chokidar: 3.6.0
2770 | debug: 4.4.3(supports-color@5.5.0)
2771 | ignore-by-default: 1.0.1
2772 | minimatch: 3.1.2
2773 | pstree.remy: 1.1.8
2774 | semver: 7.7.3
2775 | simple-update-notifier: 2.0.0
2776 | supports-color: 5.5.0
2777 | touch: 3.1.1
2778 | undefsafe: 2.0.5
2779 |
2780 | normalize-path@3.0.0: {}
2781 |
2782 | once@1.4.0:
2783 | dependencies:
2784 | wrappy: 1.0.2
2785 |
2786 | onetime@7.0.0:
2787 | dependencies:
2788 | mimic-function: 5.0.1
2789 |
2790 | optionator@0.9.4:
2791 | dependencies:
2792 | deep-is: 0.1.4
2793 | fast-levenshtein: 2.0.6
2794 | levn: 0.4.1
2795 | prelude-ls: 1.2.1
2796 | type-check: 0.4.0
2797 | word-wrap: 1.2.5
2798 |
2799 | ora@8.2.0:
2800 | dependencies:
2801 | chalk: 5.6.2
2802 | cli-cursor: 5.0.0
2803 | cli-spinners: 2.9.2
2804 | is-interactive: 2.0.0
2805 | is-unicode-supported: 2.1.0
2806 | log-symbols: 6.0.0
2807 | stdin-discarder: 0.2.2
2808 | string-width: 7.2.0
2809 | strip-ansi: 7.1.2
2810 |
2811 | p-limit@3.1.0:
2812 | dependencies:
2813 | yocto-queue: 0.1.0
2814 |
2815 | p-locate@5.0.0:
2816 | dependencies:
2817 | p-limit: 3.1.0
2818 |
2819 | p-map@7.0.3: {}
2820 |
2821 | package-json-from-dist@1.0.1: {}
2822 |
2823 | pako@1.0.11: {}
2824 |
2825 | parent-module@1.0.1:
2826 | dependencies:
2827 | callsites: 3.1.0
2828 |
2829 | parse-node-version@1.0.1: {}
2830 |
2831 | path-exists@4.0.0: {}
2832 |
2833 | path-is-absolute@1.0.1: {}
2834 |
2835 | path-key@3.1.1: {}
2836 |
2837 | path-scurry@1.11.1:
2838 | dependencies:
2839 | lru-cache: 10.4.3
2840 | minipass: 7.1.2
2841 |
2842 | path-scurry@2.0.0:
2843 | dependencies:
2844 | lru-cache: 11.2.2
2845 | minipass: 7.1.2
2846 |
2847 | path-type@6.0.0: {}
2848 |
2849 | pause-stream@0.0.11:
2850 | dependencies:
2851 | through: 2.3.8
2852 |
2853 | picocolors@1.1.1: {}
2854 |
2855 | picomatch@2.3.1: {}
2856 |
2857 | plugin-error@0.1.2:
2858 | dependencies:
2859 | ansi-cyan: 0.1.1
2860 | ansi-red: 0.1.1
2861 | arr-diff: 1.1.0
2862 | arr-union: 2.1.0
2863 | extend-shallow: 1.1.4
2864 |
2865 | prelude-ls@1.2.1: {}
2866 |
2867 | presentable-error@0.0.1: {}
2868 |
2869 | process-nextick-args@2.0.1: {}
2870 |
2871 | pstree.remy@1.1.8: {}
2872 |
2873 | punycode@2.3.1: {}
2874 |
2875 | queue-microtask@1.2.3: {}
2876 |
2877 | randombytes@2.1.0:
2878 | dependencies:
2879 | safe-buffer: 5.2.1
2880 |
2881 | readable-stream@2.3.8:
2882 | dependencies:
2883 | core-util-is: 1.0.3
2884 | inherits: 2.0.4
2885 | isarray: 1.0.0
2886 | process-nextick-args: 2.0.1
2887 | safe-buffer: 5.1.2
2888 | string_decoder: 1.1.1
2889 | util-deprecate: 1.0.2
2890 |
2891 | readdirp@3.6.0:
2892 | dependencies:
2893 | picomatch: 2.3.1
2894 |
2895 | readdirp@4.1.2: {}
2896 |
2897 | remove-trailing-separator@1.1.0: {}
2898 |
2899 | replace-ext@1.0.1: {}
2900 |
2901 | require-directory@2.1.1: {}
2902 |
2903 | require-from-string@2.0.2: {}
2904 |
2905 | resolve-from@4.0.0: {}
2906 |
2907 | restore-cursor@5.1.0:
2908 | dependencies:
2909 | onetime: 7.0.0
2910 | signal-exit: 4.1.0
2911 |
2912 | reusify@1.1.0: {}
2913 |
2914 | run-parallel@1.2.0:
2915 | dependencies:
2916 | queue-microtask: 1.2.3
2917 |
2918 | run-sequence@2.2.1:
2919 | dependencies:
2920 | chalk: 1.1.3
2921 | fancy-log: 1.3.3
2922 | plugin-error: 0.1.2
2923 |
2924 | safe-buffer@5.1.2: {}
2925 |
2926 | safe-buffer@5.2.1: {}
2927 |
2928 | safer-buffer@2.1.2: {}
2929 |
2930 | sax@1.4.1: {}
2931 |
2932 | schema-utils@4.3.3:
2933 | dependencies:
2934 | '@types/json-schema': 7.0.15
2935 | ajv: 8.17.1
2936 | ajv-formats: 2.1.1(ajv@8.17.1)
2937 | ajv-keywords: 5.1.0(ajv@8.17.1)
2938 |
2939 | semver@7.7.3: {}
2940 |
2941 | serialize-javascript@6.0.2:
2942 | dependencies:
2943 | randombytes: 2.1.0
2944 |
2945 | setimmediate@1.0.5: {}
2946 |
2947 | shebang-command@2.0.0:
2948 | dependencies:
2949 | shebang-regex: 3.0.0
2950 |
2951 | shebang-regex@3.0.0: {}
2952 |
2953 | signal-exit@4.1.0: {}
2954 |
2955 | simple-update-notifier@2.0.0:
2956 | dependencies:
2957 | semver: 7.7.3
2958 |
2959 | slash@5.1.0: {}
2960 |
2961 | source-map-support@0.5.21:
2962 | dependencies:
2963 | buffer-from: 1.1.2
2964 | source-map: 0.6.1
2965 |
2966 | source-map@0.6.1: {}
2967 |
2968 | source-map@0.7.6: {}
2969 |
2970 | split@1.0.1:
2971 | dependencies:
2972 | through: 2.3.8
2973 |
2974 | stdin-discarder@0.2.2: {}
2975 |
2976 | stream-combiner@0.2.2:
2977 | dependencies:
2978 | duplexer: 0.1.2
2979 | through: 2.3.8
2980 |
2981 | string-width@4.2.3:
2982 | dependencies:
2983 | emoji-regex: 8.0.0
2984 | is-fullwidth-code-point: 3.0.0
2985 | strip-ansi: 6.0.1
2986 |
2987 | string-width@5.1.2:
2988 | dependencies:
2989 | eastasianwidth: 0.2.0
2990 | emoji-regex: 9.2.2
2991 | strip-ansi: 7.1.2
2992 |
2993 | string-width@7.2.0:
2994 | dependencies:
2995 | emoji-regex: 10.5.0
2996 | get-east-asian-width: 1.4.0
2997 | strip-ansi: 7.1.2
2998 |
2999 | string_decoder@1.1.1:
3000 | dependencies:
3001 | safe-buffer: 5.1.2
3002 |
3003 | strip-ansi@3.0.1:
3004 | dependencies:
3005 | ansi-regex: 2.1.1
3006 |
3007 | strip-ansi@6.0.1:
3008 | dependencies:
3009 | ansi-regex: 5.0.1
3010 |
3011 | strip-ansi@7.1.2:
3012 | dependencies:
3013 | ansi-regex: 6.2.2
3014 |
3015 | strip-json-comments@3.1.1: {}
3016 |
3017 | supports-color@2.0.0: {}
3018 |
3019 | supports-color@5.5.0:
3020 | dependencies:
3021 | has-flag: 3.0.0
3022 |
3023 | supports-color@7.2.0:
3024 | dependencies:
3025 | has-flag: 4.0.0
3026 |
3027 | supports-color@8.1.1:
3028 | dependencies:
3029 | has-flag: 4.0.0
3030 |
3031 | tapable@2.3.0: {}
3032 |
3033 | terser-webpack-plugin@5.3.14(esbuild@0.25.10)(webpack@5.102.1(esbuild@0.25.10)):
3034 | dependencies:
3035 | '@jridgewell/trace-mapping': 0.3.31
3036 | jest-worker: 27.5.1
3037 | schema-utils: 4.3.3
3038 | serialize-javascript: 6.0.2
3039 | terser: 5.44.0
3040 | webpack: 5.102.1(esbuild@0.25.10)
3041 | optionalDependencies:
3042 | esbuild: 0.25.10
3043 |
3044 | terser@5.44.0:
3045 | dependencies:
3046 | '@jridgewell/source-map': 0.3.11
3047 | acorn: 8.15.0
3048 | commander: 2.20.3
3049 | source-map-support: 0.5.21
3050 |
3051 | through@2.3.8: {}
3052 |
3053 | time-stamp@1.1.0: {}
3054 |
3055 | to-regex-range@5.0.1:
3056 | dependencies:
3057 | is-number: 7.0.0
3058 |
3059 | touch@3.1.1: {}
3060 |
3061 | ts-api-utils@2.1.0(typescript@5.9.3):
3062 | dependencies:
3063 | typescript: 5.9.3
3064 |
3065 | ts-loader@9.5.4(typescript@5.9.3)(webpack@5.102.1(esbuild@0.25.10)):
3066 | dependencies:
3067 | chalk: 4.1.2
3068 | enhanced-resolve: 5.18.3
3069 | micromatch: 4.0.8
3070 | semver: 7.7.3
3071 | source-map: 0.7.6
3072 | typescript: 5.9.3
3073 | webpack: 5.102.1(esbuild@0.25.10)
3074 |
3075 | type-check@0.4.0:
3076 | dependencies:
3077 | prelude-ls: 1.2.1
3078 |
3079 | typescript@4.9.5: {}
3080 |
3081 | typescript@5.9.3: {}
3082 |
3083 | undefsafe@2.0.5: {}
3084 |
3085 | undici-types@7.14.0: {}
3086 |
3087 | unicorn-magic@0.3.0: {}
3088 |
3089 | universalify@2.0.1: {}
3090 |
3091 | update-browserslist-db@1.1.3(browserslist@4.26.3):
3092 | dependencies:
3093 | browserslist: 4.26.3
3094 | escalade: 3.2.0
3095 | picocolors: 1.1.1
3096 |
3097 | uri-js@4.4.1:
3098 | dependencies:
3099 | punycode: 2.3.1
3100 |
3101 | util-deprecate@1.0.2: {}
3102 |
3103 | vinyl@2.2.1:
3104 | dependencies:
3105 | clone: 2.1.2
3106 | clone-buffer: 1.0.0
3107 | clone-stats: 1.0.0
3108 | cloneable-readable: 1.1.3
3109 | remove-trailing-separator: 1.1.0
3110 | replace-ext: 1.0.1
3111 |
3112 | vscode-nls-dev@4.0.4:
3113 | dependencies:
3114 | ansi-colors: 4.1.3
3115 | clone: 2.1.2
3116 | event-stream: 3.3.5
3117 | fancy-log: 1.3.3
3118 | glob: 7.2.3
3119 | iconv-lite: 0.6.3
3120 | is: 3.3.2
3121 | source-map: 0.6.1
3122 | typescript: 4.9.5
3123 | vinyl: 2.2.1
3124 | xml2js: 0.5.0
3125 | yargs: 17.7.2
3126 |
3127 | vscode-nls@5.2.0: {}
3128 |
3129 | watchpack@2.4.4:
3130 | dependencies:
3131 | glob-to-regexp: 0.4.1
3132 | graceful-fs: 4.2.11
3133 |
3134 | webpack-sources@3.3.3: {}
3135 |
3136 | webpack@5.102.1(esbuild@0.25.10):
3137 | dependencies:
3138 | '@types/eslint-scope': 3.7.7
3139 | '@types/estree': 1.0.8
3140 | '@types/json-schema': 7.0.15
3141 | '@webassemblyjs/ast': 1.14.1
3142 | '@webassemblyjs/wasm-edit': 1.14.1
3143 | '@webassemblyjs/wasm-parser': 1.14.1
3144 | acorn: 8.15.0
3145 | acorn-import-phases: 1.0.4(acorn@8.15.0)
3146 | browserslist: 4.26.3
3147 | chrome-trace-event: 1.0.4
3148 | enhanced-resolve: 5.18.3
3149 | es-module-lexer: 1.7.0
3150 | eslint-scope: 5.1.1
3151 | events: 3.3.0
3152 | glob-to-regexp: 0.4.1
3153 | graceful-fs: 4.2.11
3154 | json-parse-even-better-errors: 2.3.1
3155 | loader-runner: 4.3.1
3156 | mime-types: 2.1.35
3157 | neo-async: 2.6.2
3158 | schema-utils: 4.3.3
3159 | tapable: 2.3.0
3160 | terser-webpack-plugin: 5.3.14(esbuild@0.25.10)(webpack@5.102.1(esbuild@0.25.10))
3161 | watchpack: 2.4.4
3162 | webpack-sources: 3.3.3
3163 | transitivePeerDependencies:
3164 | - '@swc/core'
3165 | - esbuild
3166 | - uglify-js
3167 |
3168 | which@2.0.2:
3169 | dependencies:
3170 | isexe: 2.0.0
3171 |
3172 | word-wrap@1.2.5: {}
3173 |
3174 | workerpool@9.3.4: {}
3175 |
3176 | wrap-ansi@7.0.0:
3177 | dependencies:
3178 | ansi-styles: 4.3.0
3179 | string-width: 4.2.3
3180 | strip-ansi: 6.0.1
3181 |
3182 | wrap-ansi@8.1.0:
3183 | dependencies:
3184 | ansi-styles: 6.2.3
3185 | string-width: 5.1.2
3186 | strip-ansi: 7.1.2
3187 |
3188 | wrappy@1.0.2: {}
3189 |
3190 | xml2js@0.5.0:
3191 | dependencies:
3192 | sax: 1.4.1
3193 | xmlbuilder: 11.0.1
3194 |
3195 | xmlbuilder@11.0.1: {}
3196 |
3197 | y18n@5.0.8: {}
3198 |
3199 | yargs-parser@21.1.1: {}
3200 |
3201 | yargs-unparser@2.0.0:
3202 | dependencies:
3203 | camelcase: 6.3.0
3204 | decamelize: 4.0.0
3205 | flat: 5.0.2
3206 | is-plain-obj: 2.1.0
3207 |
3208 | yargs@17.7.2:
3209 | dependencies:
3210 | cliui: 8.0.1
3211 | escalade: 3.2.0
3212 | get-caller-file: 2.0.5
3213 | require-directory: 2.1.1
3214 | string-width: 4.2.3
3215 | y18n: 5.0.8
3216 | yargs-parser: 21.1.1
3217 |
3218 | yocto-queue@0.1.0: {}
3219 |
--------------------------------------------------------------------------------