diff --git a/developer/src/build.sh b/developer/src/build.sh index 92e91ba9185..f09e7923217 100755 --- a/developer/src/build.sh +++ b/developer/src/build.sh @@ -43,7 +43,7 @@ builder_describe \ ":test=test/auto Various older tests (others in each module)" \ ":tike Keyman Developer IDE" \ ":inst Bundled installers" \ - ":keyman-vscode-plugin Keyman VSCode Plugin" \ + ":vscode-plugin Keyman Developer for VSCode" \ "--npm-publish+ For publish, do a npm publish, not npm pack (only for CI)" \ "--dry-run,-n+ Don't actually publish anything to external endpoints, just dry run" diff --git a/developer/src/keyman-vscode-plugin/.gitignore b/developer/src/vscode-plugin/.gitignore similarity index 100% rename from developer/src/keyman-vscode-plugin/.gitignore rename to developer/src/vscode-plugin/.gitignore diff --git a/developer/src/keyman-vscode-plugin/.vscode-test.mjs b/developer/src/vscode-plugin/.vscode-test.mjs similarity index 100% rename from developer/src/keyman-vscode-plugin/.vscode-test.mjs rename to developer/src/vscode-plugin/.vscode-test.mjs diff --git a/developer/src/keyman-vscode-plugin/.vscode/extensions.json b/developer/src/vscode-plugin/.vscode/extensions.json similarity index 100% rename from developer/src/keyman-vscode-plugin/.vscode/extensions.json rename to developer/src/vscode-plugin/.vscode/extensions.json diff --git a/developer/src/keyman-vscode-plugin/.vscode/launch.json b/developer/src/vscode-plugin/.vscode/launch.json similarity index 100% rename from developer/src/keyman-vscode-plugin/.vscode/launch.json rename to developer/src/vscode-plugin/.vscode/launch.json diff --git a/developer/src/keyman-vscode-plugin/.vscode/settings.json b/developer/src/vscode-plugin/.vscode/settings.json similarity index 100% rename from developer/src/keyman-vscode-plugin/.vscode/settings.json rename to developer/src/vscode-plugin/.vscode/settings.json diff --git a/developer/src/keyman-vscode-plugin/.vscode/tasks.json b/developer/src/vscode-plugin/.vscode/tasks.json similarity index 100% rename from developer/src/keyman-vscode-plugin/.vscode/tasks.json rename to developer/src/vscode-plugin/.vscode/tasks.json diff --git a/developer/src/keyman-vscode-plugin/.vscodeignore b/developer/src/vscode-plugin/.vscodeignore similarity index 100% rename from developer/src/keyman-vscode-plugin/.vscodeignore rename to developer/src/vscode-plugin/.vscodeignore diff --git a/developer/src/keyman-vscode-plugin/README.md b/developer/src/vscode-plugin/README.md similarity index 85% rename from developer/src/keyman-vscode-plugin/README.md rename to developer/src/vscode-plugin/README.md index 0ca6a593276..dda0abb95b2 100644 --- a/developer/src/keyman-vscode-plugin/README.md +++ b/developer/src/vscode-plugin/README.md @@ -1,10 +1,11 @@ -# Keyman Developer - keyman-vscode-plugin +# Keyman Developer for VSCode This package is a standalone [VSCode](https://code.visualstudio.com) plugin which offers: - a Build Task for building .kpj files into a package - when building the .kpj file, all .kmn and .xml (LDML keyboard) files will be compiled as well - The Build Task assumes that the .kpj will have the same name as the directory. So, `.../some_keyboard/some_keyboard.kpj` +- The build task will also build .kps files into packages ## Building @@ -19,7 +20,7 @@ There is also a `build.sh` which works the usual way. ## Running/Testing locally -- Open this directory (`keyman-vscode-plugin`) in VSCode +- Open this directory (`vscode-plugin`) in VSCode - From the Run and Debug toolbar, click Run Extension - A terminal will automatically open with `npm run watch` recompiling the project. - Choose a directory containing a .kpj file, and choose the **Terminal > Run Taskā€¦** menu item, or the **Tasks: Run Task** command. Select "kpj" and the name, and the compilation should occur in a terminal window. @@ -30,4 +31,4 @@ There is also a `build.sh` which works the usual way. Copyright (c) SIL Global. -Keyman is an open source project distributed under the [MIT license](../../../LICENSE.md). +Keyman is an open source project distributed under the [MIT license](https://github.com/keymanapp/keyman/blob/master/LICENSE.md). diff --git a/developer/src/keyman-vscode-plugin/build.sh b/developer/src/vscode-plugin/build.sh similarity index 85% rename from developer/src/keyman-vscode-plugin/build.sh rename to developer/src/vscode-plugin/build.sh index 8bbef06978a..5d8298e014f 100755 --- a/developer/src/keyman-vscode-plugin/build.sh +++ b/developer/src/vscode-plugin/build.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash # -# Compiles the keyman-vscode-plugin plugin. +# Compiles the Keyman Developer for VSCode plugin. # ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary @@ -10,7 +10,7 @@ THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" -builder_describe "Keyman keyman-vscode-plugin module" \ +builder_describe "Keyman Developer for VSCode module" \ "configure" \ "build" \ "clean" \ @@ -18,7 +18,7 @@ builder_describe "Keyman keyman-vscode-plugin module" \ builder_describe_outputs \ configure /node_modules \ - build /developer/src/keyman-vscode-plugin/out/extension.js + build /developer/src/vscode-plugin/out/extension.js builder_parse "$@" diff --git a/developer/src/keyman-vscode-plugin/eslint.config.mjs b/developer/src/vscode-plugin/eslint.config.mjs similarity index 100% rename from developer/src/keyman-vscode-plugin/eslint.config.mjs rename to developer/src/vscode-plugin/eslint.config.mjs diff --git a/developer/src/keyman-vscode-plugin/package.json b/developer/src/vscode-plugin/package.json similarity index 83% rename from developer/src/keyman-vscode-plugin/package.json rename to developer/src/vscode-plugin/package.json index 52fc94f3620..cc5bf860502 100644 --- a/developer/src/keyman-vscode-plugin/package.json +++ b/developer/src/vscode-plugin/package.json @@ -1,6 +1,6 @@ { - "name": "@keymanapp/keyman-vscode-plugin", - "displayName": "Keyman VSCode Plugin", + "name": "@keymanapp/developer-vscode", + "displayName": "Keyman Developer for VSCode", "description": "Plugin for compiling Keyman projects in VSCode", "version": "0.0.1", "engines": { @@ -43,21 +43,18 @@ "_prepare": "npm run compile" }, "devDependencies": { - "@types/mocha": "^10.0.8", + "@types/mocha": "^10.0.0", "@types/node": "20.4.1", "@types/vscode": "^1.93.0", - "@typescript-eslint/eslint-plugin": "^8.7.0", - "@typescript-eslint/parser": "^8.7.0", "@vscode/test-cli": "^0.0.10", - "@vscode/test-electron": "^2.4.1", - "eslint": "^9.11.1" + "@vscode/test-electron": "^2.4.1" }, "license": "MIT", "dependencies": { "@keymanapp/common-types": "file:../../../common/web/types", "@keymanapp/developer-utils": "file:../common/web/utils", - "@keymanapp/kmc-ldml": "file:../kmc-ldml", "@keymanapp/kmc-kmn": "file:../kmc-kmn", + "@keymanapp/kmc-ldml": "file:../kmc-ldml", "@keymanapp/kmc-package": "file:../kmc-package" } } diff --git a/developer/src/keyman-vscode-plugin/src/extension.ts b/developer/src/vscode-plugin/src/extension.ts similarity index 100% rename from developer/src/keyman-vscode-plugin/src/extension.ts rename to developer/src/vscode-plugin/src/extension.ts diff --git a/developer/src/keyman-vscode-plugin/src/extensionCallbacks.mts b/developer/src/vscode-plugin/src/extensionCallbacks.mts similarity index 100% rename from developer/src/keyman-vscode-plugin/src/extensionCallbacks.mts rename to developer/src/vscode-plugin/src/extensionCallbacks.mts diff --git a/developer/src/keyman-vscode-plugin/src/kpjBuild.mts b/developer/src/vscode-plugin/src/kpjBuild.mts similarity index 100% rename from developer/src/keyman-vscode-plugin/src/kpjBuild.mts rename to developer/src/vscode-plugin/src/kpjBuild.mts diff --git a/developer/src/keyman-vscode-plugin/src/kpjTasks.ts b/developer/src/vscode-plugin/src/kpjTasks.ts similarity index 100% rename from developer/src/keyman-vscode-plugin/src/kpjTasks.ts rename to developer/src/vscode-plugin/src/kpjTasks.ts diff --git a/developer/src/keyman-vscode-plugin/src/test/extension.test.ts b/developer/src/vscode-plugin/src/test/extension.test.ts similarity index 100% rename from developer/src/keyman-vscode-plugin/src/test/extension.test.ts rename to developer/src/vscode-plugin/src/test/extension.test.ts diff --git a/developer/src/keyman-vscode-plugin/tsconfig.json b/developer/src/vscode-plugin/tsconfig.json similarity index 100% rename from developer/src/keyman-vscode-plugin/tsconfig.json rename to developer/src/vscode-plugin/tsconfig.json diff --git a/package-lock.json b/package-lock.json index 797d9d9b4ec..b87ab05b410 100644 --- a/package-lock.json +++ b/package-lock.json @@ -24,7 +24,7 @@ "developer/src/kmc-package", "developer/src/kmc", "developer/src/server", - "developer/src/keyman-vscode-plugin", + "developer/src/vscode-plugin", "common/test/resources", "common/tools/*", "common/web/*", @@ -452,6 +452,7 @@ }, "developer/src/keyman-vscode-plugin": { "version": "0.0.1", + "extraneous": true, "license": "MIT", "dependencies": { "@keymanapp/common-types": "*", @@ -474,504 +475,6 @@ "vscode": "^1.93.0" } }, - "developer/src/keyman-vscode-plugin/node_modules/@eslint/eslintrc": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.2.0.tgz", - "integrity": "sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w==", - "dev": true, - "license": "MIT", - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^10.0.1", - "globals": "^14.0.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "developer/src/keyman-vscode-plugin/node_modules/@eslint/js": { - "version": "9.16.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.16.0.tgz", - "integrity": "sha512-tw2HxzQkrbeuvyj1tG2Yqq+0H9wGoI2IMk4EOsQeX+vmd75FtJAzf+gTA69WF+baUKRYQ3x2kbLE08js5OsTVg==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "developer/src/keyman-vscode-plugin/node_modules/@types/estree": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", - "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", - "dev": true, - "license": "MIT" - }, - "developer/src/keyman-vscode-plugin/node_modules/@types/mocha": { - "version": "10.0.10", - "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.10.tgz", - "integrity": "sha512-xPyYSz1cMPnJQhl0CLMH68j3gprKZaTjG3s5Vi+fDgx+uhG9NOXwbVt52eFS8ECyXhyKcjDLCBEqBExKuiZb7Q==", - "dev": true, - "license": "MIT" - }, - "developer/src/keyman-vscode-plugin/node_modules/@types/node": { - "version": "20.4.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.4.1.tgz", - "integrity": "sha512-JIzsAvJeA/5iY6Y/OxZbv1lUcc8dNSE77lb2gnBH+/PJ3lFR1Ccvgwl5JWnHAkNHcRsT0TbpVOsiMKZ1F/yyJg==", - "dev": true, - "license": "MIT" - }, - "developer/src/keyman-vscode-plugin/node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.17.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.17.0.tgz", - "integrity": "sha512-HU1KAdW3Tt8zQkdvNoIijfWDMvdSweFYm4hWh+KwhPstv+sCmWb89hCIP8msFm9N1R/ooh9honpSuvqKWlYy3w==", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.17.0", - "@typescript-eslint/type-utils": "8.17.0", - "@typescript-eslint/utils": "8.17.0", - "@typescript-eslint/visitor-keys": "8.17.0", - "graphemer": "^1.4.0", - "ignore": "^5.3.1", - "natural-compare": "^1.4.0", - "ts-api-utils": "^1.3.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^8.0.0 || ^8.0.0-alpha.0", - "eslint": "^8.57.0 || ^9.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "developer/src/keyman-vscode-plugin/node_modules/@typescript-eslint/parser": { - "version": "8.17.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.17.0.tgz", - "integrity": "sha512-Drp39TXuUlD49F7ilHHCG7TTg8IkA+hxCuULdmzWYICxGXvDXmDmWEjJYZQYgf6l/TFfYNE167m7isnc3xlIEg==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "@typescript-eslint/scope-manager": "8.17.0", - "@typescript-eslint/types": "8.17.0", - "@typescript-eslint/typescript-estree": "8.17.0", - "@typescript-eslint/visitor-keys": "8.17.0", - "debug": "^4.3.4" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "developer/src/keyman-vscode-plugin/node_modules/@typescript-eslint/scope-manager": { - "version": "8.17.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.17.0.tgz", - "integrity": "sha512-/ewp4XjvnxaREtqsZjF4Mfn078RD/9GmiEAtTeLQ7yFdKnqwTOgRMSvFz4et9U5RiJQ15WTGXPLj89zGusvxBg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "8.17.0", - "@typescript-eslint/visitor-keys": "8.17.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "developer/src/keyman-vscode-plugin/node_modules/@typescript-eslint/type-utils": { - "version": "8.17.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.17.0.tgz", - "integrity": "sha512-q38llWJYPd63rRnJ6wY/ZQqIzPrBCkPdpIsaCfkR3Q4t3p6sb422zougfad4TFW9+ElIFLVDzWGiGAfbb/v2qw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/typescript-estree": "8.17.0", - "@typescript-eslint/utils": "8.17.0", - "debug": "^4.3.4", - "ts-api-utils": "^1.3.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "developer/src/keyman-vscode-plugin/node_modules/@typescript-eslint/types": { - "version": "8.17.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.17.0.tgz", - "integrity": "sha512-gY2TVzeve3z6crqh2Ic7Cr+CAv6pfb0Egee7J5UAVWCpVvDI/F71wNfolIim4FE6hT15EbpZFVUj9j5i38jYXA==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "developer/src/keyman-vscode-plugin/node_modules/@typescript-eslint/typescript-estree": { - "version": "8.17.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.17.0.tgz", - "integrity": "sha512-JqkOopc1nRKZpX+opvKqnM3XUlM7LpFMD0lYxTqOTKQfCWAmxw45e3qlOCsEqEB2yuacujivudOFpCnqkBDNMw==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "@typescript-eslint/types": "8.17.0", - "@typescript-eslint/visitor-keys": "8.17.0", - "debug": "^4.3.4", - "fast-glob": "^3.3.2", - "is-glob": "^4.0.3", - "minimatch": "^9.0.4", - "semver": "^7.6.0", - "ts-api-utils": "^1.3.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "developer/src/keyman-vscode-plugin/node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "developer/src/keyman-vscode-plugin/node_modules/@typescript-eslint/utils": { - "version": "8.17.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.17.0.tgz", - "integrity": "sha512-bQC8BnEkxqG8HBGKwG9wXlZqg37RKSMY7v/X8VEWD8JG2JuTHuNK0VFvMPMUKQcbk6B+tf05k+4AShAEtCtJ/w==", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/eslint-utils": "^4.4.0", - "@typescript-eslint/scope-manager": "8.17.0", - "@typescript-eslint/types": "8.17.0", - "@typescript-eslint/typescript-estree": "8.17.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "developer/src/keyman-vscode-plugin/node_modules/@typescript-eslint/visitor-keys": { - "version": "8.17.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.17.0.tgz", - "integrity": "sha512-1Hm7THLpO6ww5QU6H/Qp+AusUUl+z/CAm3cNZZ0jQvon9yicgO7Rwd+/WWRpMKLYV6p2UvdbR27c86rzCPpreg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "8.17.0", - "eslint-visitor-keys": "^4.2.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "developer/src/keyman-vscode-plugin/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "developer/src/keyman-vscode-plugin/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "developer/src/keyman-vscode-plugin/node_modules/debug": { - "version": "4.3.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", - "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "^2.1.3" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "developer/src/keyman-vscode-plugin/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "developer/src/keyman-vscode-plugin/node_modules/eslint": { - "version": "9.16.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.16.0.tgz", - "integrity": "sha512-whp8mSQI4C8VXd+fLgSM0lh3UlmcFtVwUQjyKCFfsp+2ItAIYhlq/hqGahGqHE6cv9unM41VlqKk2VtKYR2TaA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.12.1", - "@eslint/config-array": "^0.19.0", - "@eslint/core": "^0.9.0", - "@eslint/eslintrc": "^3.2.0", - "@eslint/js": "9.16.0", - "@eslint/plugin-kit": "^0.2.3", - "@humanfs/node": "^0.16.6", - "@humanwhocodes/module-importer": "^1.0.1", - "@humanwhocodes/retry": "^0.4.1", - "@types/estree": "^1.0.6", - "@types/json-schema": "^7.0.15", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.5", - "debug": "^4.3.2", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^8.2.0", - "eslint-visitor-keys": "^4.2.0", - "espree": "^10.3.0", - "esquery": "^1.5.0", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^8.0.0", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3" - }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://eslint.org/donate" - }, - "peerDependencies": { - "jiti": "*" - }, - "peerDependenciesMeta": { - "jiti": { - "optional": true - } - } - }, - "developer/src/keyman-vscode-plugin/node_modules/eslint-visitor-keys": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz", - "integrity": "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "developer/src/keyman-vscode-plugin/node_modules/espree": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-10.3.0.tgz", - "integrity": "sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "acorn": "^8.14.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^4.2.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "developer/src/keyman-vscode-plugin/node_modules/file-entry-cache": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", - "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "flat-cache": "^4.0.0" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "developer/src/keyman-vscode-plugin/node_modules/flat-cache": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", - "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", - "dev": true, - "license": "MIT", - "dependencies": { - "flatted": "^3.2.9", - "keyv": "^4.5.4" - }, - "engines": { - "node": ">=16" - } - }, - "developer/src/keyman-vscode-plugin/node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "license": "ISC", - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "developer/src/keyman-vscode-plugin/node_modules/globals": { - "version": "14.0.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", - "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "developer/src/keyman-vscode-plugin/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true, - "license": "MIT" - }, - "developer/src/keyman-vscode-plugin/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true, - "license": "MIT" - }, - "developer/src/keyman-vscode-plugin/node_modules/semver": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, "developer/src/kmc": { "name": "@keymanapp/kmc", "license": "MIT", @@ -2637,6 +2140,41 @@ "node": ">=10.0.0" } }, + "developer/src/vscode-plugin": { + "name": "@keymanapp/developer-vscode", + "version": "0.0.1", + "license": "MIT", + "dependencies": { + "@keymanapp/common-types": "file:../../../common/web/types", + "@keymanapp/developer-utils": "file:../common/web/utils", + "@keymanapp/kmc-kmn": "file:../kmc-kmn", + "@keymanapp/kmc-ldml": "file:../kmc-ldml", + "@keymanapp/kmc-package": "file:../kmc-package" + }, + "devDependencies": { + "@types/mocha": "^10.0.0", + "@types/node": "20.4.1", + "@types/vscode": "^1.93.0", + "@vscode/test-cli": "^0.0.10", + "@vscode/test-electron": "^2.4.1" + }, + "engines": { + "vscode": "^1.93.0" + } + }, + "developer/src/vscode-plugin/node_modules/@types/mocha": { + "version": "10.0.10", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.10.tgz", + "integrity": "sha512-xPyYSz1cMPnJQhl0CLMH68j3gprKZaTjG3s5Vi+fDgx+uhG9NOXwbVt52eFS8ECyXhyKcjDLCBEqBExKuiZb7Q==", + "dev": true, + "license": "MIT" + }, + "developer/src/vscode-plugin/node_modules/@types/node": { + "version": "20.4.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.4.1.tgz", + "integrity": "sha512-JIzsAvJeA/5iY6Y/OxZbv1lUcc8dNSE77lb2gnBH+/PJ3lFR1Ccvgwl5JWnHAkNHcRsT0TbpVOsiMKZ1F/yyJg==", + "dev": true + }, "node_modules/@75lb/deep-merge": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/@75lb/deep-merge/-/deep-merge-1.1.2.tgz", @@ -3219,31 +2757,6 @@ "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, - "node_modules/@eslint/config-array": { - "version": "0.19.0", - "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.19.0.tgz", - "integrity": "sha512-zdHg2FPIFNKPdcHWtiNT+jEFCHYVplAXRDlQDyqy0zGx/q2parwh7brGJSiTxRk/TSMkbM//zt/f5CHgyTyaSQ==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@eslint/object-schema": "^2.1.4", - "debug": "^4.3.1", - "minimatch": "^3.1.2" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/core": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.9.0.tgz", - "integrity": "sha512-7ATR9F0e4W85D/0w7cU0SNj7qkAexMG+bAHEZOjo9akvGuhHE2m7umzWzfnpa0XAg5Kxc1BWmtPMV67jJ+9VUg==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, "node_modules/@eslint/eslintrc": { "version": "2.1.4", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", @@ -3315,67 +2828,6 @@ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@eslint/object-schema": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.4.tgz", - "integrity": "sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/plugin-kit": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.3.tgz", - "integrity": "sha512-2b/g5hRmpbb1o4GnTZax9N9m0FXzz9OV42ZzI4rDDMDuHUqigAiQCEWChBWCY4ztAGVRjoWT19v0yMmc5/L5kA==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "levn": "^0.4.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@humanfs/core": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", - "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=18.18.0" - } - }, - "node_modules/@humanfs/node": { - "version": "0.16.6", - "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.6.tgz", - "integrity": "sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@humanfs/core": "^0.19.1", - "@humanwhocodes/retry": "^0.3.0" - }, - "engines": { - "node": ">=18.18.0" - } - }, - "node_modules/@humanfs/node/node_modules/@humanwhocodes/retry": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.1.tgz", - "integrity": "sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=18.18" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, "node_modules/@humanwhocodes/config-array": { "version": "0.11.14", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", @@ -3411,20 +2863,6 @@ "deprecated": "Use @eslint/object-schema instead", "dev": true }, - "node_modules/@humanwhocodes/retry": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.1.tgz", - "integrity": "sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=18.18" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, "node_modules/@import-maps/resolve": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@import-maps/resolve/-/resolve-1.0.1.tgz", @@ -3583,6 +3021,10 @@ "resolved": "developer/src/common/web/utils", "link": true }, + "node_modules/@keymanapp/developer-vscode": { + "resolved": "developer/src/vscode-plugin", + "link": true + }, "node_modules/@keymanapp/gesture-recognizer": { "resolved": "web/src/engine/osk/gesture-processor", "link": true @@ -3595,10 +3037,6 @@ "resolved": "common/web/keyman-version", "link": true }, - "node_modules/@keymanapp/keyman-vscode-plugin": { - "resolved": "developer/src/keyman-vscode-plugin", - "link": true - }, "node_modules/@keymanapp/kmc": { "resolved": "developer/src/kmc", "link": true @@ -5344,13 +4782,6 @@ "@types/istanbul-lib-report": "*" } }, - "node_modules/@types/json-schema": { - "version": "7.0.15", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", - "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", - "dev": true, - "license": "MIT" - }, "node_modules/@types/json5": { "version": "0.0.29", "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", @@ -9660,23 +9091,6 @@ "eslint": "^7.0.0 || ^8.0.0" } }, - "node_modules/eslint-scope": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.2.0.tgz", - "integrity": "sha512-PHlWUfG6lvPc3yvP5A4PNyBL1W8fkDUccmI21JUu/+GKZBoH/W5u6usENXUrWFRsyoW5ACUjFGgAFQp5gUlb/A==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, "node_modules/eslint-utils": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", diff --git a/package.json b/package.json index d07750babb7..8a26bc1a665 100644 --- a/package.json +++ b/package.json @@ -49,7 +49,7 @@ "developer/src/kmc-package", "developer/src/kmc", "developer/src/server", - "developer/src/keyman-vscode-plugin", + "developer/src/vscode-plugin", "common/test/resources", "common/tools/*", "common/web/*",