From a3291c693f83141fc89a3de1cead0c19554914cc Mon Sep 17 00:00:00 2001 From: "Brian A. Ignacio" Date: Mon, 13 May 2024 11:12:27 +0800 Subject: [PATCH] Translation using l10n vscode api (#1178) * first iteration using l10n t * rm locdictionary references * fix bundle lint * finish moving to i10n * fix lint * use rimraf * move del code to clean script * add missing translation strings * update language contribution doc * monitor cmd name update --- .gitignore | 2 - .vscodeignore | 1 - README.md | 4 +- clean.js | 21 + docs/FEATURES.md | 4 +- docs/LANG_CONTRIBUTE.md | 19 +- docs/MANUAL_TESTING.md | 2 +- docs/POSTMORTEM.md | 2 +- docs/tutorial/basic_use.md | 2 +- docs/tutorial/code_coverage.md | 2 +- gulpfile.js | 121 - i18n/en/out/build/buildCmd.i18n.json | 3 - .../menuconfig/MenuconfigPanel.i18n.json | 11 - i18n/en/out/espIdf/monitor/command.i18n.json | 3 - .../en/out/espIdf/serial/serialPort.i18n.json | 6 - i18n/en/out/espIdf/size/idfSize.i18n.json | 8 - i18n/en/out/extension.i18n.json | 23 - i18n/en/out/flash/flashCmd.i18n.json | 3 - .../out/idfComponentsDataProvider.i18n.json | 3 - i18n/en/out/idfConfiguration.i18n.json | 3 - i18n/en/out/utils.i18n.json | 4 - i18n/en/package.i18n.json | 165 -- i18n/en/views/menuconfig.i18n.json | 5 - i18n/es/out/build/buildCmd.i18n.json | 3 - .../menuconfig/MenuconfigPanel.i18n.json | 11 - i18n/es/out/espIdf/monitor/command.i18n.json | 3 - .../es/out/espIdf/serial/serialPort.i18n.json | 6 - i18n/es/out/espIdf/size/idfSize.i18n.json | 8 - i18n/es/out/extension.i18n.json | 23 - i18n/es/out/flash/flashCmd.i18n.json | 3 - .../out/idfComponentsDataProvider.i18n.json | 3 - i18n/es/out/idfConfiguration.i18n.json | 3 - i18n/es/out/utils.i18n.json | 4 - i18n/es/package.i18n.json | 165 -- i18n/es/views/menuconfig.i18n.json | 5 - i18n/ru/out/build/buildCmd.i18n.json | 3 - .../menuconfig/MenuconfigPanel.i18n.json | 11 - i18n/ru/out/espIdf/monitor/command.i18n.json | 3 - .../ru/out/espIdf/serial/serialPort.i18n.json | 6 - i18n/ru/out/espIdf/size/idfSize.i18n.json | 8 - i18n/ru/out/extension.i18n.json | 23 - i18n/ru/out/flash/flashCmd.i18n.json | 3 - .../out/idfComponentsDataProvider.i18n.json | 3 - i18n/ru/out/idfConfiguration.i18n.json | 3 - i18n/ru/out/utils.i18n.json | 4 - i18n/ru/package.i18n.json | 165 -- i18n/ru/views/menuconfig.i18n.json | 5 - i18n/zh-CN/out/build/buildCmd.i18n.json | 3 - .../menuconfig/MenuconfigPanel.i18n.json | 11 - .../out/espIdf/monitor/command.i18n.json | 3 - .../out/espIdf/serial/serialPort.i18n.json | 6 - i18n/zh-CN/out/espIdf/size/idfSize.i18n.json | 8 - i18n/zh-CN/out/extension.i18n.json | 23 - i18n/zh-CN/out/flash/flashCmd.i18n.json | 3 - .../out/idfComponentsDataProvider.i18n.json | 3 - i18n/zh-CN/out/idfConfiguration.i18n.json | 3 - i18n/zh-CN/out/utils.i18n.json | 4 - i18n/zh-CN/package.i18n.json | 165 -- i18n/zh-CN/views/menuconfig.i18n.json | 5 - l10n/bundle.l10n.es.json | 170 ++ l10n/bundle.l10n.pt.json | 170 ++ l10n/bundle.l10n.ru.json | 170 ++ l10n/bundle.l10n.zh-CN.json | 170 ++ package.json | 50 +- package.nls.es.json | 182 ++ package.nls.json | 271 +- package.nls.pt.json | 182 ++ package.nls.ru.json | 182 ++ package.nls.zh-CN.json | 182 ++ schema.i18n.json | 244 -- src/build/buildCmd.ts | 8 +- src/component-manager/utils.ts | 69 +- src/espIdf/menuconfig/MenuconfigPanel.ts | 42 +- src/espIdf/menuconfig/kconfigMenuLoader.ts | 9 +- src/espIdf/monitor/command.ts | 12 +- src/espIdf/serial/serialPort.ts | 18 +- src/espIdf/size/idfSize.ts | 37 +- src/examples/ExamplesPanel.ts | 12 +- src/extension.ts | 504 ++-- src/flash/flashCmd.ts | 45 +- src/idfComponentsDataProvider.ts | 7 +- src/idfConfiguration.ts | 8 +- src/localizationDictionary.ts | 112 - src/newProject/newProjectPanel.ts | 12 +- src/project-conf/projectConfPanel.ts | 7 +- src/setup/SetupPanel.ts | 9 +- src/utils.ts | 12 +- src/welcome/panel.ts | 9 +- webpack.config.js | 6 - yarn.lock | 2433 ++--------------- 90 files changed, 2313 insertions(+), 4159 deletions(-) create mode 100644 clean.js delete mode 100644 gulpfile.js delete mode 100644 i18n/en/out/build/buildCmd.i18n.json delete mode 100644 i18n/en/out/espIdf/menuconfig/MenuconfigPanel.i18n.json delete mode 100644 i18n/en/out/espIdf/monitor/command.i18n.json delete mode 100644 i18n/en/out/espIdf/serial/serialPort.i18n.json delete mode 100644 i18n/en/out/espIdf/size/idfSize.i18n.json delete mode 100644 i18n/en/out/extension.i18n.json delete mode 100644 i18n/en/out/flash/flashCmd.i18n.json delete mode 100644 i18n/en/out/idfComponentsDataProvider.i18n.json delete mode 100644 i18n/en/out/idfConfiguration.i18n.json delete mode 100644 i18n/en/out/utils.i18n.json delete mode 100644 i18n/en/package.i18n.json delete mode 100644 i18n/en/views/menuconfig.i18n.json delete mode 100644 i18n/es/out/build/buildCmd.i18n.json delete mode 100644 i18n/es/out/espIdf/menuconfig/MenuconfigPanel.i18n.json delete mode 100644 i18n/es/out/espIdf/monitor/command.i18n.json delete mode 100644 i18n/es/out/espIdf/serial/serialPort.i18n.json delete mode 100644 i18n/es/out/espIdf/size/idfSize.i18n.json delete mode 100644 i18n/es/out/extension.i18n.json delete mode 100644 i18n/es/out/flash/flashCmd.i18n.json delete mode 100644 i18n/es/out/idfComponentsDataProvider.i18n.json delete mode 100644 i18n/es/out/idfConfiguration.i18n.json delete mode 100644 i18n/es/out/utils.i18n.json delete mode 100644 i18n/es/package.i18n.json delete mode 100644 i18n/es/views/menuconfig.i18n.json delete mode 100644 i18n/ru/out/build/buildCmd.i18n.json delete mode 100644 i18n/ru/out/espIdf/menuconfig/MenuconfigPanel.i18n.json delete mode 100644 i18n/ru/out/espIdf/monitor/command.i18n.json delete mode 100644 i18n/ru/out/espIdf/serial/serialPort.i18n.json delete mode 100644 i18n/ru/out/espIdf/size/idfSize.i18n.json delete mode 100644 i18n/ru/out/extension.i18n.json delete mode 100644 i18n/ru/out/flash/flashCmd.i18n.json delete mode 100644 i18n/ru/out/idfComponentsDataProvider.i18n.json delete mode 100644 i18n/ru/out/idfConfiguration.i18n.json delete mode 100644 i18n/ru/out/utils.i18n.json delete mode 100644 i18n/ru/package.i18n.json delete mode 100644 i18n/ru/views/menuconfig.i18n.json delete mode 100644 i18n/zh-CN/out/build/buildCmd.i18n.json delete mode 100644 i18n/zh-CN/out/espIdf/menuconfig/MenuconfigPanel.i18n.json delete mode 100644 i18n/zh-CN/out/espIdf/monitor/command.i18n.json delete mode 100644 i18n/zh-CN/out/espIdf/serial/serialPort.i18n.json delete mode 100644 i18n/zh-CN/out/espIdf/size/idfSize.i18n.json delete mode 100644 i18n/zh-CN/out/extension.i18n.json delete mode 100644 i18n/zh-CN/out/flash/flashCmd.i18n.json delete mode 100644 i18n/zh-CN/out/idfComponentsDataProvider.i18n.json delete mode 100644 i18n/zh-CN/out/idfConfiguration.i18n.json delete mode 100644 i18n/zh-CN/out/utils.i18n.json delete mode 100644 i18n/zh-CN/package.i18n.json delete mode 100644 i18n/zh-CN/views/menuconfig.i18n.json create mode 100644 l10n/bundle.l10n.es.json create mode 100644 l10n/bundle.l10n.pt.json create mode 100644 l10n/bundle.l10n.ru.json create mode 100644 l10n/bundle.l10n.zh-CN.json create mode 100644 package.nls.es.json create mode 100644 package.nls.pt.json create mode 100644 package.nls.ru.json create mode 100644 package.nls.zh-CN.json delete mode 100644 schema.i18n.json delete mode 100644 src/localizationDictionary.ts diff --git a/.gitignore b/.gitignore index 498af99cf..9982ed701 100644 --- a/.gitignore +++ b/.gitignore @@ -6,8 +6,6 @@ node_modules .cache .vscode-test/ *.vsix -!i18n/*/out -package.nls.*.json testFiles/blink !testFiles/dist testFiles/tools diff --git a/.vscodeignore b/.vscodeignore index 9d668f2b1..c87a1ee35 100644 --- a/.vscodeignore +++ b/.vscodeignore @@ -15,7 +15,6 @@ ci esp/** esp_idf_docs_index_lang_*.json esp_idf_vsc_ext.log -gulpfile.js media/screenshots media/tutorials node_modules diff --git a/README.md b/README.md index 34b7efa69..3f06b928a 100644 --- a/README.md +++ b/README.md @@ -87,7 +87,7 @@ Install ESP-IDF and ESP-IDF Tools by following the [install tutorial](./docs/tut - When you are ready, build your project by pressing F1 and typing **ESP-IDF: Build your Project**. - Flash to your device by pressing F1 and typing **ESP-IDF: Select Flash Method and Flash** to select either UART or JTAG. You can also use the **ESP-IDF: Flash (UART) your Project** or **ESP-IDF: Flash (with JTag)** directly. > **NOTE:** When using the **ESP-IDF: Select Flash Method and Flash** command, your choice will be saved in the `idf.flashType` configuration setting in the current workspace folder's settings.json. -- You can later start a monitor by pressing F1 and typing **ESP-IDF: Monitor your Device** which will log the device activity in a Visual Studio Code terminal. +- You can later start a monitor by pressing F1 and typing **ESP-IDF: Monitor Device** which will log the device activity in a Visual Studio Code terminal. - To make sure you can debug your device, select the your board by pressing F1 and typing **ESP-IDF: Select OpenOCD Board Configuration** or manually define the openOCD configuration files with `idf.openOcdConfigs` configuration in your settings.json. - If you want to start a debug session, just press F5 (make sure you had at least build and flash once before so the debugger works correctly). Check the [Troubleshooting](./README.md#Troubleshooting) section if you have any issues. @@ -135,7 +135,7 @@ Click F1 to show Visual studio code actions, then type **ESP-IDF** to | Launch IDF Monitor for CoreDump / GDB-Stub Mode | | | | Launch QEMU Server | | | | Launch QEMU Debug Session | | | -| Monitor your device | I M | Ctrl E M | +| Monitor device | I M | Ctrl E M | | Monitor QEMU Device | | | | New Project | I N | Ctrl E N | | Open ESP-IDF Terminal | I T | Ctrl E T | diff --git a/clean.js b/clean.js new file mode 100644 index 000000000..a3827c3ac --- /dev/null +++ b/clean.js @@ -0,0 +1,21 @@ +const del = require("del"); + +(async () => { + const pathsToDelete = [ + "dist/**", + "out/**", + "*.vsix", + "report.json", + "report.txt", + "testing.results.log", + "esp_idf_vsc_ext.log", + "esp_idf_docs_*.json", + ]; + + try { + await del(pathsToDelete); + console.log("Build files and directories cleaned successfully."); + } catch (error) { + console.error("Error while cleaning files:", error); + } +})(); diff --git a/docs/FEATURES.md b/docs/FEATURES.md index 0a7adaa6c..cfa6802a5 100644 --- a/docs/FEATURES.md +++ b/docs/FEATURES.md @@ -73,9 +73,9 @@ You can follow [this](./HEAP_TRACING.md) quick step-by-step guide for Heap Traci ## Monitor -**ESP-IDF: Monitor your Device** is provided by this extension to start `idf.py monitor` terminal program in Visual Studio Code. Please take a look at the [IDF Monitor Documentation](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-guides/tools/idf-monitor.html?highlight=monitor). +**ESP-IDF: Monitor Device** is provided by this extension to start `idf.py monitor` terminal program in Visual Studio Code. Please take a look at the [IDF Monitor Documentation](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-guides/tools/idf-monitor.html?highlight=monitor). -In Visual Studio Code, for **ESP-IDF: Monitor your Device** we use the shell executable given in `vscode.env.shell` which is override by `terminal.integrated.shell.*` in your Visual Studio Code Settings when using the `Terminal: Select Default Shell` command to update the shell or updating `terminal.integrated.shell.windows` for Windows, `terminal.integrated.shell.osx` for MacOS and `terminal.integrated.shell.linux` for Linux in VSCode Settings Preference menu (F1 -> Preferences: Open Settings (JSON)). +In Visual Studio Code, for **ESP-IDF: Monitor Device** we use the shell executable given in `vscode.env.shell` which is override by `terminal.integrated.shell.*` in your Visual Studio Code Settings when using the `Terminal: Select Default Shell` command to update the shell or updating `terminal.integrated.shell.windows` for Windows, `terminal.integrated.shell.osx` for MacOS and `terminal.integrated.shell.linux` for Linux in VSCode Settings Preference menu (F1 -> Preferences: Open Settings (JSON)). ## OpenOCD Server diff --git a/docs/LANG_CONTRIBUTE.md b/docs/LANG_CONTRIBUTE.md index 29cfe81aa..cd81de5c4 100644 --- a/docs/LANG_CONTRIBUTE.md +++ b/docs/LANG_CONTRIBUTE.md @@ -2,29 +2,18 @@ Make sure you install the source code version of this extension by following [Source Mode](./INSTALL.md#Build-from-Source-Code). -Inside i18n folder, create a sub-directory using the language code name as specified by [ISO 639-3](https://en.wikipedia.org/wiki/ISO_639-3) convention. +Inside `l10n` folder, create a `bundle.l10n..json` file using the language code name as specified by [ISO 639-3](https://en.wikipedia.org/wiki/ISO_639-3) convention to replace ``. -For ease you could copy the `en` for English definitions. A language folder tree structure should look like: +In the root directory, also contribute a `package.nls..json` for static language definitions such as command names and such. -``` -/ - +-- out/ - +-- sub-directory/ - +-- ... - +-- ... - +-- ... - +-- ... - +-- extension.i18n.json - +-- utils.i18n.json - +-- package.i18n.json -``` +To generate the english definition, just run the `yarn genLocalizationBundle` command which will generate `l10n/bundle.l10n.json` english bundle file and copy the `package.nls.json`. Each file has a key value structure such as: ```json { "espIdf.createFiles.title": "ESP-IDF: Create ESP-IDF Project from Extension Template", - "textID": "value" + "englishTextOrTextId": "translationInNewLanguage" } ``` diff --git a/docs/MANUAL_TESTING.md b/docs/MANUAL_TESTING.md index b52b254ee..1de0cc0fd 100644 --- a/docs/MANUAL_TESTING.md +++ b/docs/MANUAL_TESTING.md @@ -108,7 +108,7 @@ _Steps:_ 1. Press menu **View**, click on **Command Palette** and type **ESP-IDF: Select port to use** and select it. 2. Choose the serial port to connect and the workspace folder where to save the `idf.port` configuration setting. -3. Press menu **View**, click on **Command Palette** and type **ESP-IDF: Monitor your Device** and select it. +3. Press menu **View**, click on **Command Palette** and type **ESP-IDF: Monitor Device** and select it. 4. ESP-IDF Monitor should begin after. _Expected Results:_ diff --git a/docs/POSTMORTEM.md b/docs/POSTMORTEM.md index ac6dd2fa6..bd199d6a7 100644 --- a/docs/POSTMORTEM.md +++ b/docs/POSTMORTEM.md @@ -3,7 +3,7 @@ The `ESP-IDF: Launch IDF Monitor for CoreDump / GDB-Stub Mode` command launches a ESP-IDF Monitor terminal listening for core-dump/gdbstub events on which will launch a debug session where you can send gdb commands to the chip (without continue, pause or other debug steps). -> **NOTE:** The `ESP-IDF: Monitor your Device` command will not launch a debug session. +> **NOTE:** The `ESP-IDF: Monitor Device` command will not launch a debug session. # Using Core Dump diff --git a/docs/tutorial/basic_use.md b/docs/tutorial/basic_use.md index 7b01ff78f..ed51caa37 100644 --- a/docs/tutorial/basic_use.md +++ b/docs/tutorial/basic_use.md @@ -59,7 +59,7 @@ The user will see a new terminal being launched with the flash output and a noti Flashing

-10. Now to start monitoring your device, use the **ESP-IDF: Monitor your Device** command (CTRL E M keyboard shortcut). The user will see a new terminal being launched with the `idf.py monitor` output. +10. Now to start monitoring your device, use the **ESP-IDF: Monitor Device** command (CTRL E M keyboard shortcut). The user will see a new terminal being launched with the `idf.py monitor` output. > **NOTE** The ESP-IDF Monitor baud rate value is taken from `idf.monitorBaudRate` with fallback on your project's SDKConfig `CONFIG_ESPTOOLPY_MONITOR_BAUD` (idf.py monitor' baud rate). This value can also be override by setting the environment variable `IDF_MONITOR_BAUD` or `MONITORBAUD` in your system environment variables or this extension's `idf.customExtraVars` configuration setting. Please review [ESP-IDF Settings](../SETTINGS.md)) to see how to modify `idf.customExtraVars`. diff --git a/docs/tutorial/code_coverage.md b/docs/tutorial/code_coverage.md index 15c0ec0ac..9289a776c 100644 --- a/docs/tutorial/code_coverage.md +++ b/docs/tutorial/code_coverage.md @@ -36,7 +36,7 @@ The example will enable the following options by default: > **NOTE:** For any project that you want to generate code coverage, you should enable these settings in your sdkconfig. -6. Now to build the project, flash your device and start the ESP-IDF Monitor you can use the **ESP-IDF: Build your Project**, **ESP-IDF: Flash your Project** and **ESP-IDF: Monitor your Device** commands as explained in the [Basic use tutorial](./basic_use.md). If everything is executed correctly, there will be a message in ESP-IDF Monitor saying `Ready to dump GCOV data...` +6. Now to build the project, flash your device and start the ESP-IDF Monitor you can use the **ESP-IDF: Build your Project**, **ESP-IDF: Flash your Project** and **ESP-IDF: Monitor Device** commands as explained in the [Basic use tutorial](./basic_use.md). If everything is executed correctly, there will be a message in ESP-IDF Monitor saying `Ready to dump GCOV data...` > **NOTE:** There is also a **ESP-IDF: Build, Flash and Start a Monitor on your Device** command (CTRL E D keyboard shortcut). diff --git a/gulpfile.js b/gulpfile.js deleted file mode 100644 index d79b0b237..000000000 --- a/gulpfile.js +++ /dev/null @@ -1,121 +0,0 @@ -// Copyright 2019 Espressif Systems (Shanghai) CO LTD -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -const gulp = require("gulp"); -const del = require("del"); -const vsce = require("vsce"); -const nls = require("vscode-nls-dev"); -const { readdirSync, statSync } = require("fs"); -const { readJSON, writeJSON } = require("fs-extra"); -const { join } = require("path"); -const glob = require("glob"); - -// If all VS Code languages are supported you can use nls.coreLanguages -const languages = []; // [{ folderName: 'zh-CN', id: 'zh-CN' }, { folderName: 'es', id: 'es' }]; - -const getDirs = (p) => - readdirSync(p).filter((f) => statSync(join(p, f)).isDirectory()); -const languagesDirs = getDirs(join(__dirname, "i18n")); -languagesDirs.forEach((langDir) => { - languages.push({ folderName: langDir, id: langDir }); -}); - -function clean(done) { - del([ - "dist/**", - "out/**", - "package.nls.*.json", - "*.vsix", - "report.json", - "report.txt", - "testing.results.log", - "esp_idf_vsc_ext.log", - "esp_idf_docs_*.json" - ]); - done(); -} - -function addI18n(done) { - gulp - .src(["package.nls.json"]) - .pipe(nls.createAdditionalLanguageFiles(languages, "i18n")) - .pipe(gulp.dest(".")); - done(); -} - -function vscePublish(done) { - vsce.publish(); - done(); -} - -function vscePackage(done) { - vsce.createVSIX(); - done(); -} - -function getPathParts(pathToUse) { - const parts = pathToUse.split(/(?:\\|\/)/g); - parts.splice(0, parts.indexOf("i18n") + 2); - parts[parts.length - 1] = parts[parts.length - 1].replace(/(\.).*/g, ""); - return parts; -} - -const reduceSchemaObj = (schemaObj, parts) => { - return parts.reduce( - (obj, key) => (obj && obj[key] !== undefined ? obj[key] : undefined), - schemaObj - ); -}; - -function validateLocalizationFiles(done) { - const schema = require("./schema.i18n.json"); - languages.forEach((l) => { - const langDirPath = join( - __dirname, - "i18n", - l.folderName, - "**", - "*.i18n.json" - ); - glob(langDirPath, (err, locFiles) => { - if (err) { - throw err; - } - locFiles.forEach((locFile) => { - const localeJson = require(locFile); - const parts = getPathParts(locFile); - const schemaKeys = reduceSchemaObj(schema, parts); - schemaKeys.forEach((schemaKey) => { - if (!localeJson.hasOwnProperty(schemaKey)) { - throw new Error(`${schemaKey} not defined in ${locFile}`); - } - }); - Object.keys(localeJson).forEach((fileKey) => { - if (schemaKeys.indexOf(fileKey) < 0) { - console.log(`Unknown property ${fileKey} defined in ${locFile}`); - } - }); - }); - }); - }); - done(); -} - -const build = gulp.series(clean, addI18n, validateLocalizationFiles); -exports.clean = clean; -exports.build = build; -exports.validateLocalization = validateLocalizationFiles; -exports.publish = gulp.series(build, vscePublish); -exports.vscePkg = gulp.series(build, vscePackage); -exports.default = build; diff --git a/i18n/en/out/build/buildCmd.i18n.json b/i18n/en/out/build/buildCmd.i18n.json deleted file mode 100644 index e821994db..000000000 --- a/i18n/en/out/build/buildCmd.i18n.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "build.waitProcessIsFinishedMessage": "Wait for ESP-IDF build or flash to finish" -} \ No newline at end of file diff --git a/i18n/en/out/espIdf/menuconfig/MenuconfigPanel.i18n.json b/i18n/en/out/espIdf/menuconfig/MenuconfigPanel.i18n.json deleted file mode 100644 index ed5ee1fc5..000000000 --- a/i18n/en/out/espIdf/menuconfig/MenuconfigPanel.i18n.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "menuconfig.panelName": "SDK Configuration editor", - "menuconfig.saveValues": "Saved changes in SDK Configuration editor", - "menuconfig.discardValues": "Discarded changes in SDK Configuration editor", - "menuconfig.wrongIdfPath": "Wrong IDF_PATH in workspace settings. Would you like to set it?", - "menuconfig.enterIdfPath": "Enter IDF_PATH Path", - "menuconfig.changesNotSaved": "Changes in SDK Configuration editor have not been saved. Would you like to save them?", - "menuconfig.save": "Save", - "menuconfig.discard": "Don't save", - "menuconfig.returnGuiconfig": "Return to SDK Configuration editor" -} diff --git a/i18n/en/out/espIdf/monitor/command.i18n.json b/i18n/en/out/espIdf/monitor/command.i18n.json deleted file mode 100644 index 79224c8cc..000000000 --- a/i18n/en/out/espIdf/monitor/command.i18n.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "monitor.waitProcessIsFinishedMessage": "Wait for ESP-IDF build or flash to finish" -} \ No newline at end of file diff --git a/i18n/en/out/espIdf/serial/serialPort.i18n.json b/i18n/en/out/espIdf/serial/serialPort.i18n.json deleted file mode 100644 index 9320b6eb7..000000000 --- a/i18n/en/out/espIdf/serial/serialPort.i18n.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "serial.notSerialPortFoundMessage": "Could not find any serial port available", - "serial.portHasBeenSelectedMessage": "Port has been updated to ", - "serial.noPortSelectedMessage": "No port selected.", - "serial.selectSerialPortMessage": "Select the available serial port where your device is connected." -} diff --git a/i18n/en/out/espIdf/size/idfSize.i18n.json b/i18n/en/out/espIdf/size/idfSize.i18n.json deleted file mode 100644 index c7236d315..000000000 --- a/i18n/en/out/espIdf/size/idfSize.i18n.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "idfSize.canceledError": "Cannot proceed with size analysis on a canceled context", - "idfSize.buildFirstError": "Build is required for a size analysis, build your project first", - "idfSize.filesMsg": "Calculating File Sizes for all the archives", - "idfSize.archivesMsg": "Gathering Archive List", - "idfSize.overviewMsg": "Gathering Overview", - "idfSize.commandError": "Error encountered while calling idf_size.py" -} diff --git a/i18n/en/out/extension.i18n.json b/i18n/en/out/extension.i18n.json deleted file mode 100644 index 323c05a74..000000000 --- a/i18n/en/out/extension.i18n.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "extension.defaultFoldersGeneratedMessage": "Template folders were generated.", - "extension.openFolderFirst": "Open a folder first.", - "espIdf.pickAWorkspaceFolder.text": "Select your current folder", - "extension.noFolderMessage": "No workspace selected.", - "selectFrameworkMessage": "Select framework to define its path:", - "extension.noOptionMessage": "No option selected.", - "extension.noPathUpdatedMessage": "No path has been updated", - "extension.selectConfigMessage": "Select option to define its path:", - "extension.noParamUpdatedMessage": "No device parameter has been updated", - "extension.defaultSdkconfigGeneratedMessage": "Default sdkconfig file restored.", - "extension.openFolderSdkconfigMessage": "Open a folder first to generate sdkconfig file.", - "extension.elfNotFoundMessage": "Project ELF file cannot be found.", - "extension.gdbNotFoundMessage": "GDB path cannot be found.", - "extension.enterIdfPathMessage": "Enter IDF_PATH Path", - "extension.enterIdfToolsPathMessage": "Enter IDF_TOOLS_PATH path", - "extension.enterDevicePortMessage": "Enter device port Path", - "extension.enterDeviceTargetMessage": "Enter target name (IDF_TARGET)", - "extension.enterFlashBaudRateMessage": "Enter flash baud rate", - "extension.enterOpenOcdConfigMessage": "Enter list of configuration files inside OpenOCD Scripts directory", - "extension.enterCustomPathsMessage": "Enter extra paths to append to PATH", - "extension.cmdNotWebIDE": "Selected command is not available in WebIDE" -} diff --git a/i18n/en/out/flash/flashCmd.i18n.json b/i18n/en/out/flash/flashCmd.i18n.json deleted file mode 100644 index b14783c4a..000000000 --- a/i18n/en/out/flash/flashCmd.i18n.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "flash.waitProcessIsFinishedMessage": "Wait for ESP-IDF build or flash to finish" -} \ No newline at end of file diff --git a/i18n/en/out/idfComponentsDataProvider.i18n.json b/i18n/en/out/idfComponentsDataProvider.i18n.json deleted file mode 100644 index 7fe9f1e65..000000000 --- a/i18n/en/out/idfComponentsDataProvider.i18n.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "idfComponentDataProvider.proj_desc_not_found": "File project_description.json cannot be found." -} diff --git a/i18n/en/out/idfConfiguration.i18n.json b/i18n/en/out/idfConfiguration.i18n.json deleted file mode 100644 index 73a1f62b9..000000000 --- a/i18n/en/out/idfConfiguration.i18n.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "idfConfiguration.hasBeenUpdated": " has been updated" -} diff --git a/i18n/en/out/utils.i18n.json b/i18n/en/out/utils.i18n.json deleted file mode 100644 index 69fb88be4..000000000 --- a/i18n/en/out/utils.i18n.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "utils.currentFolder": "ESP-IDF: Current Project", - "utils.openComponentTitle": "ESP-IDF: Open ESP-IDF Component File" -} diff --git a/i18n/en/package.i18n.json b/i18n/en/package.i18n.json deleted file mode 100644 index 1849012de..000000000 --- a/i18n/en/package.i18n.json +++ /dev/null @@ -1,165 +0,0 @@ -{ - "espIdf.createFiles.title": "Create Project from Extension Template", - "espIdf.addArduinoAsComponentToCurFolder.title": "Add Arduino ESP32 as ESP-IDF Component", - "espIdf.createIdfTerminal.title": "Open ESP-IDF Terminal", - "espIdf.createVsCodeFolder.title": "Add vscode Configuration Folder", - "espIdf.setPath.title": "Configure Paths", - "espIdf.setTarget.title": "Set Espressif Device Target", - "espIdf.selectConfTarget.title": "Select where to Save Configuration Settings", - "espIdf.selectNotificationMode.title": "Select Output and Notification Mode", - "espIdf.configDevice.title": "Device Configuration", - "espIdf.menuconfig.start.title": "SDK Configuration editor (Menuconfig)", - "espIdf.cmakeListsEditor.start.title": "CMakeLists.txt Editor", - "espIdf.newProject.start.title": "New Project", - "espIdf.setDefaultConfig.title": "Set Default SDKConfig File in Project", - "espIdf.selectPort.title": "Select Port to Use (COM, tty, usbserial)", - "espIdf.buildDevice.title": "Build your Project", - "espIdf.flashDevice.title": "Flash your Project", - "espIdf.flashAndEncryptDevice.title": "Encrypt and flash your project", - "espIdf.flashDFU.title": "Flash (DFU) your Project", - "espIdf.flashUart.title": "Flash (UART) your Project", - "espIdf.monitorDevice.title": "Monitor your Device", - "espIdf.setup.title": "Configure ESP-IDF Extension", - "espIdf.examples.title": "Show Examples Projects", - "espIdf.buildFlashMonitor.title": "Build, Flash and Start a Monitor on your Device", - "espIdf.pickAWorkspaceFolder.title": "Pick a Workspace Folder", - "espIdf.size.title": "Size Analysis of the Binaries", - "espIdf.apptrace.title": "App Trace", - "espIdf.heaptrace.title": "Heap Trace", - "espIdf.openOCDCommand.title": "OpenOCD Manager", - "espIdf.genCoverage.title": "Add Editor Coverage", - "espIdf.removeCoverage.title": "Remove Editor Coverage", - "espIdf.getCoverageReport.title": "Get HTML Coverage Report for Project", - "espIdf.searchInEspIdfDocs.title": "Search in Documentation...", - "espIdf.getEspAdf.title": "Install ESP-ADF", - "espIdf.getEspMdf.title": "Install ESP-MDF", - "espIdf.getEspMatter.title": "Install ESP-Matter", - "espIdf.getEspRainmaker.title": "Install ESP-Rainmaker", - "espIdf.getEspHomeKitSdk.title": "Install ESP-HomeKit-SDK", - "espIdf.installEspMatterPyReqs.title": "Install ESP-Matter Python Packages", - "espIdf.installPyReqs.title": "Install ESP-IDF Extension Python Packages", - "espIdf.openDocUrl.title": "Open ESP-IDF Documentation...", - "espIdf.doctorCommand.title": "Doctor Command", - "espIdf.clearDocsSearchResult.title": "Clear ESP-IDF Search Results", - "espIdf.fullClean.title": "Full Clean Project", - "espIdf.createNewComponent.title": "Create New ESP-IDF Component", - "espIdf.webview.nvsPartitionEditor.title": "ESP-IDF: NVS Partition Editor", - "espIdf.selectOpenOcdConfigFiles.title": "Select OpenOCD Board Configuration", - "espIdf.ninja.summary.title": "Show Ninja Build Summary", - "espIdf.eraseFlash.title": "Erase Flash Memory from Device", - "espIdf.disposeConfserverProcess.title": "Dispose Current SDK Configuration Editor Server Process", - "espIdf.setGcovConfig.title": "Configure Project SDKConfig for Coverage", - "espIdf.importProject.title": "Import ESP-IDF Project", - "espIdf.launchQemu.title": "Launch QEMU server", - "espIdf.monitorQemu.title": "Monitor QEMU Device", - "espIdf.qemuDebug.title": "Launch QEMU Debug Session", - "espIdf.createDevContainer.title": "Add Docker Container Configuration", - "espIdf.partition.table.refresh.title": "Refresh Partition Table", - "espIdf.flashBinaryToPartition.title": "Flash Binary to Partition...", - "espIdf.setMatterDevicePath.title": "Set ESP-MATTER Device Path (ESP_MATTER_DEVICE_PATH)", - "espIdf.customTask.title": "Execute Custom Task", - "espIdf.welcome.title": "Welcome", - "espIdf.projectConfigurationEditor.title": "Open Project Configuration", - "espIdf.projectConf.title": "Select project configuration", - "espIdf.clearSavedIdfSetups.title": "Clear saved IDF setups", - "espIdf.unitTest.buildFlashUnitTestApp.title": "Unit Test: Build and flash unit test app for testing", - "espIdf.unitTest.installPyTest.title": "Unit Test: Install ESP-IDF PyTest requirements", - "espIdf.saveDefSdkconfig.title": "ESP-IDF: Save Default SDKCONFIG file (save-defconfig)", - "espIdf.createSbom.title": "Run ESP-IDF-SBOM vulnerability check", - "esp.component-manager.ui.show.title": "Show Component Registry", - "esp.component-manager.cli.addDependencyError": "Error encountered while adding dependency to the component", - "debug.initConfig.name": "ESP-IDF Debug: Launch", - "debug.initConfig.description": "A new configuration for launch ESP-IDF projects", - "param.adapterTargetName": "Target name for ESP-IDF Debug Adapter", - "param.customAdapterTargetName": "Custom target name for ESP-IDF Debug Adapter", - "param.openOcdConfigFilesList": "List of configuration files inside OpenOCD Scripts directory", - "param.openOcdLaunchArgs": "Arguments to launch openOCD from this extension", - "param.port": "Path of selected device port", - "param.flashBaudRate": "ESP-IDF Flash Baud rate", - "param.monitorBaudRate": "ESP-IDF Monitor Baud rate", - "param.pythonBinPath": "Python absolute binary path used to execute ESP-IDF Python Scripts", - "param.espIdfPath": "Path to locate ESP-IDF framework (IDF_PATH)", - "param.espAdfPath": "Path to locate ESP-ADF framework (ADF_PATH)", - "param.espMdfPath": "Path to locate ESP-MDF framework (MDF_PATH)", - "param.espMatterPath": "Path to locate ESP-Matter framework (ESP_MATTER_PATH)", - "param.espRainmakerPath": "Path to locate ESP-Rainmaker framework (RMAKER_PATH)", - "param.espHomeKitSdkPath": "Path to locate ESP-HomeKit-SDK framework (HOMEKIT_PATH)", - "param.toolsPath": "Path to locate ESP-IDF Tools (IDF_TOOLS_PATH)", - "param.exportPaths": "Paths to be appended to PATH", - "param.exportVars": "Variables to be added to system environment variables", - "param.gitPath.title": "Git executable path", - "param.useIDFKConfigStyle": "Enable/Disable ESP-IDF style validation for Kconfig files", - "param.showOnboardingOnInit": "Show ESP-IDF Configuration window on extension activation", - "param.cmakeCompilerArgs": "Arguments for CMake compilation task", - "param.ninjaArgs": "Arguments for Ninja build task", - "param.coveredLightTheme": "Background color for covered lines in Light theme for ESP-IDF Coverage.", - "param.coveredDarkTheme": "Background color for covered lines in Dark theme for ESP-IDF Coverage.", - "param.partialLightTheme": "Background color for partially covered lines in Light theme for ESP-IDF Coverage.", - "param.partialDarkTheme": "Background color for partially covered lines in Dark theme for ESP-IDF Coverage.", - "param.uncoveredLightTheme": "Background color for uncovered lines in Light theme for ESP-IDF Coverage.", - "param.uncoveredDarkTheme": "Background color for uncovered lines in Dark theme for ESP-IDF Coverage.", - "param.enableUpdateSrcsToCMakeListsFile": "Enable update source files in CMakeLists.txt", - "param.qemuTcpPort": "QEMU tcp port for serial communication", - "param.openOcdDebugLevel": "OpenOCD Server debug level", - "param.preBuildTask": "Pre build custom task", - "param.postBuildTask": "Post build custom task", - "param.preFlashTask": "Pre flash custom task", - "param.postFlashTask": "Post flash custom task", - "param.customTask": "Custom task", - "param.buildPath": "Name of CMake build directory", - "param.svdFile": "SVD file to resolve ESP-IDF Peripheral view in Debug view", - "param.deleteComponentsOnFullClean": "Delete managed_components on Full Clean Project command", - "param.sdkconfigDefaults": "List of sdkconfig default values for initial build configuration", - "param.enableStatusBar.title": "Enable ESP-IDF extension status bar items", - "param.enableSizeTaskAfterBuildTask.title": "Enable IDF Size task after build task", - "param.sdkconfigFilePath.title": "sdkconfig file absolute path", - "view.components.name": "Project Components", - "configuration.title": "ESP-IDF", - "espIdf.apptrace.archive.refresh.title": "Refresh Trace Archive List", - "espIdf.apptrace.archive.showReport.title": "Show Trace Report", - "espIdf.apptrace.customize.title": "Customize parameters for app trace", - "trace.poll_period.description": "poll_period will be set for the apptrace", - "trace.trace_size.description": "trace_size will set for the apptrace", - "trace.stop_tmo.description": "stop_tmo will be set for the apptrace", - "trace.wait4halt.description": "wait4halt will be set for the apptrace", - "trace.skip_size.description": "skip_size will be set for the apptrace", - "param.saveBeforeBuildDescription": "Save all the edited files in the workspace before proceeding with the build, although if fail to save files it will build anyways", - "param.notificationMode": "ESP-IDF extension notifications and output focus mode.", - "param.saveScope": "Where to save configuration with ESP-IDF commands with number value as vscode.ConfigurationTarget. Global = 1, Workspace= 2, WorkspaceFolder=3", - "param.rainmaker.api.server_url": "ESP-Rainmaker cloud server URL", - "param.launchMonitorOnDebugSession.title": "Start IDF Monitor along with ESP-IDF Debug Adapter session", - "param.enableIdfComponentManager.title": "Enable IDF Component Manager in build task", - "param.enableCCache.title": "Enable CCache in build task", - "param.monitorStartDelayBeforeDebug": "Delay to start debug session after IDF monitor execution (ms)", - "param.monitorNoReset": "Enable no-reset flag to IDF Monitor", - "param.monitorEnableTimestamps": "Enable timestamps in IDF Monitor", - "param.monitorCustomTimestampFormat": "Custom timestamp format in IDF Monitor", - "param.customTerminalExecutable.title": "Custom executable for extensions tasks", - "param.customTerminalExecutableArgs.title": "List of arguments for the custom executable for extension tasks", - "param.sbomFilePath.title": "esp-idf sbom file path", - "esp.rainmaker.backend.sync.title": "Sync with ESP-Rainmaker Cloud Server", - "esp.rainmaker.backend.connect.title": "Connect with ESP-Rainmaker Cloud Server", - "esp.rainmaker.backend.logout.title": "Unlink Rainmaker Account", - "esp.rainmaker.backend.add_node.title": "Add new node", - "esp.rainmaker.backend.remove_node.title": "Remove this node", - "esp.rainmaker.backend.update_node_param.title": "Update param for device", - "param.esp.rainmaker.oauth.url": "ESP-Rainmaker OAuth server URL", - "idf.wssPort.description": "Web Socket Server Port for Core Dump or GDB Stub", - "esp.webview.open.partition-table.title": "ESP-IDF: Partition Table Editor", - "esp.efuse.summary.title": "Get eFuse Summary", - "espIdf.efuse.clearResults.title": "Clear eFuse Summary", - "espIdf.jtag_flash.title": "Flash (with JTag)", - "espIdf.selectFlashMethodAndFlash.title": "Select Flash Method", - "espIdf.selectCurrentIdfVersion.title": "Select Current ESP-IDF Version", - "idf.flashType.description": "Device flash method, UART or JTag", - "openocd.tcl.host.description": "Host for openocd tcl connection", - "openocd.tcl.port.description": "Port for openocd tcl connection", - "esp.component-manager.url.description": "Component registry URL", - "espIdf.launchWSServerAndMonitor.title": "Launch IDF Monitor for CoreDump / GDB-Stub Mode", - "esp_idf.appOffset.description": "Override build program start address offset (ESP32_APP_FLASH_OFF)", - "esp_idf.initGdbCommands.description": "One or more GDB commands to execute in order to setup the underlying debugger. Example: \"initGdbCommands\": [ \"target remote /dev/ttyUSB0\"]", - "esp_idf.gdbinitFile.description": "gdbinit file path for ESP-IDF Debug Adapter", - "esp_idf.debuggers.text.description": "The command to execute", - "esp_idf.verifyAppBinBeforeDebug.description": "Verify app binaries before debug", - "esp_idf.tmoScaleFactor.description": "Scale factor for gdb timeout [default:1]" -} diff --git a/i18n/en/views/menuconfig.i18n.json b/i18n/en/views/menuconfig.i18n.json deleted file mode 100644 index a3d5ebf6e..000000000 --- a/i18n/en/views/menuconfig.i18n.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "save": "Save", - "discard": "Discard", - "reset": "Reset" -} diff --git a/i18n/es/out/build/buildCmd.i18n.json b/i18n/es/out/build/buildCmd.i18n.json deleted file mode 100644 index c8ee460f2..000000000 --- a/i18n/es/out/build/buildCmd.i18n.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "build.waitProcessIsFinishedMessage": "Espere que termine el proceso ESP-IDF" -} \ No newline at end of file diff --git a/i18n/es/out/espIdf/menuconfig/MenuconfigPanel.i18n.json b/i18n/es/out/espIdf/menuconfig/MenuconfigPanel.i18n.json deleted file mode 100644 index 2be4138d8..000000000 --- a/i18n/es/out/espIdf/menuconfig/MenuconfigPanel.i18n.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "menuconfig.panelName": "SDK Configuration editor", - "menuconfig.saveValues": "Se han guardado los parametros modificados.", - "menuconfig.discardValues": "Se han ignorado los valores modificados", - "menuconfig.wrongIdfPath": "La ruta de IDF_PATH es incorrecta. ¿Quisiera introducirla?", - "menuconfig.enterIdfPath": "Introduzca la ruta de IDF_PATH", - "menuconfig.changesNotSaved": "Los cambios en SDK Configuration editor no se han guardado. Desea guardarlos?", - "menuconfig.save": "Guardar", - "menuconfig.discard": "No guardar", - "menuconfig.returnGuiconfig": "Regresar a SDK Configuration editor" -} diff --git a/i18n/es/out/espIdf/monitor/command.i18n.json b/i18n/es/out/espIdf/monitor/command.i18n.json deleted file mode 100644 index 732eba225..000000000 --- a/i18n/es/out/espIdf/monitor/command.i18n.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "monitor.waitProcessIsFinishedMessage": "Espere que termine el proceso ESP-IDF" -} \ No newline at end of file diff --git a/i18n/es/out/espIdf/serial/serialPort.i18n.json b/i18n/es/out/espIdf/serial/serialPort.i18n.json deleted file mode 100644 index ba3466962..000000000 --- a/i18n/es/out/espIdf/serial/serialPort.i18n.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "serial.notSerialPortFoundMessage": "No se ha encontrado un puerto serial", - "serial.portHasBeenSelectedMessage": "El puerto se ha actualizado a ", - "serial.noPortSelectedMessage": "Ningun puerto seleccionado.", - "serial.selectSerialPortMessage": "Selecciona el puerto serial de tu dispositivo." -} diff --git a/i18n/es/out/espIdf/size/idfSize.i18n.json b/i18n/es/out/espIdf/size/idfSize.i18n.json deleted file mode 100644 index e0c3a5ded..000000000 --- a/i18n/es/out/espIdf/size/idfSize.i18n.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "idfSize.canceledError": "No se puede analizar el tamaño en un contexto cancelado", - "idfSize.buildFirstError": "Se necesita construir el proyecto antes de analizar el tamaño del binario.", - "idfSize.filesMsg": "Calculando el tamaño de todos los archivos", - "idfSize.archivesMsg": "Reuniendo la lista de archivos", - "idfSize.overviewMsg": "Armando un resumen", - "idfSize.commandError": "Se ha encontrado un error al ejecutar idf_size.py" -} diff --git a/i18n/es/out/extension.i18n.json b/i18n/es/out/extension.i18n.json deleted file mode 100644 index 372424c6f..000000000 --- a/i18n/es/out/extension.i18n.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "extension.defaultFoldersGeneratedMessage": "Se han creado las carpetas plantilla.", - "extension.openFolderFirst": "Abre una carpeta primero.", - "espIdf.pickAWorkspaceFolder.text": "Seleccione el folder actual", - "extension.noFolderMessage": "Ningún espacio de trabajo seleccionado", - "selectFrameworkMessage": "Seleccione una plataforma para definir ruta", - "extension.noOptionMessage": "Ninguna opción seleccionada.", - "extension.noPathUpdatedMessage": "Ninguna ruta ha sido actualizada.", - "extension.selectConfigMessage": "Selección una opción para definir su ruta:", - "extension.noParamUpdatedMessage": "No se ha actualizado ningún parametro.", - "extension.defaultSdkconfigGeneratedMessage": "Se ha restaurado el archivo sdkconfig por defecto.", - "extension.openFolderSdkconfigMessage": "Abra una carpeta primero para generar el archivo sdkconfig.", - "extension.elfNotFoundMessage": "No se ha encontrado el archivo ELF de su proyecto.", - "extension.gdbNotFoundMessage": "La ruta de GDB es incorrecta.", - "extension.enterIdfPathMessage": "Introduzca la ruta IDF_PATH:", - "extension.enterIdfToolsPathMessage": "Introduzca la ruta IDF_TOOLS_PATH", - "extension.enterDevicePortMessage": "Introduzca la ruta del puerto serial ESP-IDF", - "extension.enterFlashBaudRateMessage": "Introduzca la tasa de baudios flash ", - "extension.cmdNotWebIDE": "El comando seleccionado no esta disponible en WebIDE", - "extension.enterDeviceTargetMessage": "Introduzca nombre del dispositivo (IDF_TARGET)", - "extension.enterOpenOcdConfigMessage": "Introduzca la lista de archivos de configuracion dentro del directorio OpenOCD Scripts", - "extension.enterCustomPathsMessage": "Introduzca rutas adicionales para expandir PATH" -} diff --git a/i18n/es/out/flash/flashCmd.i18n.json b/i18n/es/out/flash/flashCmd.i18n.json deleted file mode 100644 index c34b997ad..000000000 --- a/i18n/es/out/flash/flashCmd.i18n.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "flash.waitProcessIsFinishedMessage": "Espere que termine el proceso ESP-IDF" -} \ No newline at end of file diff --git a/i18n/es/out/idfComponentsDataProvider.i18n.json b/i18n/es/out/idfComponentsDataProvider.i18n.json deleted file mode 100644 index 4b655f746..000000000 --- a/i18n/es/out/idfComponentsDataProvider.i18n.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "idfComponentDataProvider.proj_desc_not_found": "No se encuentra el archivo project_description.json." -} diff --git a/i18n/es/out/idfConfiguration.i18n.json b/i18n/es/out/idfConfiguration.i18n.json deleted file mode 100644 index d16186f57..000000000 --- a/i18n/es/out/idfConfiguration.i18n.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "idfConfiguration.hasBeenUpdated": " se ha actualizado" -} diff --git a/i18n/es/out/utils.i18n.json b/i18n/es/out/utils.i18n.json deleted file mode 100644 index b2ee58195..000000000 --- a/i18n/es/out/utils.i18n.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "utils.currentFolder": "Proyecto actual ESP-IDF", - "utils.openComponentTitle": "Abrir archivo de componente ESP-IDF" -} diff --git a/i18n/es/package.i18n.json b/i18n/es/package.i18n.json deleted file mode 100644 index ba05a172c..000000000 --- a/i18n/es/package.i18n.json +++ /dev/null @@ -1,165 +0,0 @@ -{ - "espIdf.createFiles.title": "ESP-IDF: Crear proyecto a partir de plantilla de la extensión", - "espIdf.addArduinoAsComponentToCurFolder.title": "ESP-IDF: Agregar Arduino ESP32 como componente ESP-IDF", - "espIdf.createIdfTerminal.title": "ESP-IDF: Abrir terminal ESP-IDF", - "espIdf.createVsCodeFolder.title": "ESP-IDF: Agregar carpeta de configuración vscode", - "espIdf.setPath.title": "ESP-IDF: Configurar rutas ESP-IDF", - "espIdf.selectConfTarget.title": "ESP-IDF: Selecciona donde almacenar tu configuración", - "espIdf.selectNotificationMode.title": "Selecciona el modo de salida de texto y notificaciones", - "espIdf.setTarget.title": "ESP-IDF: Selecciona el dispositivo Espressif a utilizar", - "espIdf.configDevice.title": "ESP-IDF: Configuración del dispositivo", - "espIdf.menuconfig.start.title": "ESP-IDF: Editor de Configuración SDK (menuconfig)", - "espIdf.cmakeListsEditor.start.title": "ESP-IDF: Editor de CMakeLists.txt", - "espIdf.newProject.start.title": "ESP-IDF: Nuevo Proyecto", - "espIdf.setDefaultConfig.title": "ESP-IDF: Establecer archivo sdkconfig por defecto", - "espIdf.selectPort.title": "ESP-IDF: Seleccionar puerto a utilizar (COM, tty, usbserial)", - "espIdf.buildDevice.title": "ESP-IDF: Construir el proyecto", - "espIdf.flashDevice.title": "ESP-IDF: Programar el dispositivo", - "espIdf.flashAndEncryptDevice.title": "Encryptar y programar el dispositivo", - "espIdf.flashDFU.title": "ESP-IDF: Programar (DFU) el dispositivo", - "espIdf.flashUart.title": "ESP-IDF: Programar (UART) el dispositivo", - "espIdf.monitorDevice.title": "ESP-IDF: Monitorear el dispositivo", - "espIdf.setup.title": "ESP-IDF: Configurar la extension ESP-IDF", - "espIdf.examples.title": "ESP-IDF: Mostrar ejemplos de proyectos", - "espIdf.buildFlashMonitor.title": "ESP-IDF: Construir, Programar y empezar monitor de dispositivo", - "espIdf.pickAWorkspaceFolder.title": "ESP-IDF: Elige una carpeta de trabajo", - "espIdf.size.title": "ESP-IDF: Size Analysis of the Binaries", - "espIdf.apptrace.title": "ESP-IDF: App Trace", - "espIdf.heaptrace.title": "ESP-IDF: Heap Trace", - "espIdf.openOCDCommand.title": "ESP-IDF: OpenOCD Manager", - "espIdf.genCoverage.title": "ESP-IDF: Agregar cobertura al editor", - "espIdf.removeCoverage.title": "ESP-IDF: Remover cobertura al editor", - "espIdf.getCoverageReport.title": "ESP-IDF: Ver reporte HTML de cobertura para este proyecto", - "espIdf.searchInEspIdfDocs.title": "ESP-IDF: Buscar en la documentación...", - "espIdf.getEspAdf.title": "ESP-IDF: Instalar ESP-ADF", - "espIdf.getEspMdf.title": "ESP-IDF: Instalar ESP-MDF", - "espIdf.getEspMatter.title": "ESP-IDF: Instalar ESP-Matter", - "espIdf.getEspRainmaker.title": "Instalar ESP-Rainmaker", - "espIdf.getEspHomeKitSdk.title": "Instalar ESP-HomeKit-SDK", - "espIdf.installEspMatterPyReqs.title": "ESP-IDF: Instalar paquetes Python para ESP-Matter", - "espIdf.installPyReqs.title": "ESP-IDF: Instalar paquetes Python para extensión ESP-IDF", - "espIdf.openDocUrl.title": "ESP-IDF: Abrir documentación ESP-IDF...", - "espIdf.doctorCommand.title": "ESP-IDF: Comando Doctor", - "espIdf.clearDocsSearchResult.title": "ESP-IDF: Limpiar resultados de busqueda", - "espIdf.fullClean.title": "ESP-IDF: Limpiar el proyecto", - "espIdf.createNewComponent.title": "ESP-IDF: Crear nuevo componente ESP-IDF", - "espIdf.webview.nvsPartitionEditor.title": "ESP-IDF: Editor de particiones NVS", - "espIdf.selectOpenOcdConfigFiles.title": "ESP-IDF: Selecciona configuración OpenOCD Board", - "espIdf.ninja.summary.title": "ESP-IDF: Mostrar resumen de construccion con ninja", - "espIdf.eraseFlash.title": "ESP-IDF: Borrar memoria flash del dispositivo", - "espIdf.disposeConfserverProcess.title": "ESP-IDF: Cerrar proceso de servidor de editor de Configuración SDK", - "espIdf.setGcovConfig.title": "ESP-IDF: Configurar sdkconfig del proyecto para cobertura de codigo fuente", - "espIdf.importProject.title": "Importar proyecto ESP-IDF", - "espIdf.launchQemu.title": "Lanzar servidor QEMU", - "espIdf.monitorQemu.title": "Monitorear dispositivo QEMU", - "espIdf.qemuDebug.title": "Lanzar sesión de depurador para QEMU", - "espIdf.createDevContainer.title": "Agregar configuracion del contenedor docker", - "espIdf.createSbom.title": "Lanzar verificación de vulnerabilidad ESP-IDF-SBOM", - "esp.component-manager.ui.show.title": "Mostrar registro de componentes", - "esp.component-manager.cli.addDependencyError": "Error al agregar dependencias al componente", - "espIdf.partition.table.refresh.title": "Actualizar tabla de particiones", - "espIdf.flashBinaryToPartition.title": "Programar binarios a la partición...", - "espIdf.setMatterDevicePath.title": "Definir la ruta de ESP-MATTER Device (ESP_MATTER_DEVICE_PATH)", - "espIdf.customTask.title": "Ejecutar tarea personalizada", - "espIdf.welcome.title": "Bienvenido/a", - "espIdf.projectConfigurationEditor.title": "Abrir configuracion de proyecto", - "espIdf.projectConf.title": "Selecciona la configuración del proyecto", - "espIdf.saveDefSdkconfig.title": "ESP-IDF: Guardar archivo SDKCONFIG por defecto (save-defconfig)", - "espIdf.clearSavedIdfSetups.title": "Limpiar configuraciones de IDF guardadas", - "espIdf.unitTest.buildFlashUnitTestApp.title": "Unit Test: Construir y programar la app unit test app para pruebas", - "espIdf.unitTest.installPyTest.title": "Unit Test: Instalar requerimientos ESP-IDF PyTest", - "debug.initConfig.name": "Lanzar Depuracion ESP-IDF:", - "debug.initConfig.description": "Nueva configuración para proyectos ESP-IDF", - "param.adapterTargetName": "Target para el ESP-IDF Debug Adapter", - "param.customAdapterTargetName": "Custom target para el ESP-IDF Debug Adapter", - "param.openOcdConfigFilesList": "Lista de archivos de connfiguracion en el directorio OpenOCD Scripts", - "param.openOcdLaunchArgs": "Argumentos para lanzar openOCD desde esta extensión", - "param.flashBaudRate": "ESP-IDF Tasa de baudios para flash", - "param.monitorBaudRate": "ESP-IDF Tasa de baudios para monitoreo", - "param.port": "Ruta del puerto serial del dispositivo ESP-IDF", - "param.pythonBinPath": "Ruta absoluta del ejecutable Python para ESP-IDF", - "param.toolsPath": "Ruta de las herramientas de ESP-IDF (IDF_TOOLS_PATH)", - "param.exportPaths": "Rutas para agregar a PATH", - "param.exportVars": "Variables para agregar a variables de sistema", - "param.gitPath.title": "Ruta del ejecutable Git", - "param.espIdfPath": "Ruta del entorno de trabajo ESP-IDF (IDF_PATH)", - "param.espAdfPath": "Ruta del entorno de trabajo ESP-ADF (ADF_PATH)", - "param.espMdfPath": "Ruta del entorno de trabajo ESP-MDF (MDF_PATH)", - "param.espMatterPath": "Ruta del entorno del trabajo ESP-Matter (ESP_MATTER_PATH)", - "param.espRainmakerPath": "Ruta del entorno del trabajo ESP-Rainmaker (RMAKER_PATH)", - "param.espHomeKitSdkPath": "Ruta del entorno del trabajo ESP-HomeKit-SDK (HOMEKIT_PATH)", - "param.cmakeCompilerArgs": "Argumentos para la tarea de compilación CMake", - "param.ninjaArgs": "Argumentos para la tarea de construcción Ninja", - "param.useIDFKConfigStyle": "Habilitar/Deshabilitar validación de estilo ESP-IDF para archivos Kconfig", - "param.showOnboardingOnInit": "Mostrar ventana de configuración ESP-IDF al activar la extensión", - "param.coveredLightTheme": "Color de fondo para lineas cubiertas en temas claros por ESP-IDF Coverage.", - "param.coveredDarkTheme": "Color de fondo para lineas cubiertas en temas oscuros por ESP-IDF Coverage.", - "param.partialLightTheme": "Color de fondo para lineas parcialmente cubiertas en temas claros por ESP-IDF Coverage.", - "param.partialDarkTheme": "Color de fondo para lineas parcialmente cubiertas en temas oscuros por ESP-IDF Coverage.", - "param.uncoveredLightTheme": "Color de fondo para lineas no cubiertas en temas claros por ESP-IDF Coverage.", - "param.uncoveredDarkTheme": "Color de fondo para lineas no cubiertas en temas oscuros por ESP-IDF Coverage.", - "param.enableUpdateSrcsToCMakeListsFile": "Habilitar actualización de archivos fuente en CMakeLists.txt", - "param.launchMonitorOnDebugSession.title": "Iniciar IDF Monitor junto a la sesión ESP-IDF Debug Adapter", - "param.enableIdfComponentManager.title": "Habilitar IDF Component Manager en construccion de proyecto", - "param.enableCCache.title": "Habilitar CCache en construccion de proyecto", - "param.qemuTcpPort": "QEMU tcp port para comunicación serial", - "param.openOcdDebugLevel": "Nivel de depuracion para servidor OpenOCD", - "param.preBuildTask": "Pre build tarea personalizada", - "param.postBuildTask": "Post build tarea personalizada", - "param.preFlashTask": "Pre build tarea personalizada", - "param.postFlashTask": "Post build tarea personalizada", - "param.customTask": "Tarea personalizada", - "param.buildPath": "Nombre del directorio de construcción de CMake", - "param.sdkconfigDefaults": "Lista de valores por defecto para crear el archivo sdkconfig", - "param.svdFile": "Archivo SVD para la vista de perifericos en ventana de depuracion", - "param.deleteComponentsOnFullClean": "Borrar managed_components en el comando limpiar proyecto", - "param.monitorStartDelayBeforeDebug": "Retraso para iniciar la sesión de depuración luego de IDF Monitor (ms)", - "param.monitorNoReset": "Habilitar no-reset en el IDF Monitor", - "param.monitorEnableTimestamps": "Habilitar marcas de tiempo en IDF Monitor", - "param.monitorCustomTimestampFormat": "Formato de marca de tiempo personalizado en IDF Monitor", - "param.enableStatusBar.title": "Habilitar elementos de la barra de estatus de la extension ESP-IDF", - "param.enableSizeTaskAfterBuildTask.title": "Habilitar la tarea de IDF Size luego de la tarea IDF Build", - "param.customTerminalExecutable.title": "Ejecutable personalizado para las tareas de la extensión ESP-IDF", - "param.customTerminalExecutableArgs.title": "Lista de argumentos para el ejecutble personalizado de tareas de la extensión ESP-IDF", - "param.sdkconfigFilePath.title": "Ruta absoluta de archivo sdkconfig", - "param.sbomFilePath.title": "Ruta absoluta de archivo esp-idf sbom", - "view.components.name": "Componentes de proyecto", - "configuration.title": "ESP-IDF", - "espIdf.apptrace.archive.refresh.title": "Refresh Trace Archive List", - "espIdf.apptrace.archive.showReport.title": "Show Trace Report", - "espIdf.apptrace.customize.title": "Customize parameters for app trace", - "trace.poll_period.description": "poll_period will be set for the apptrace", - "trace.trace_size.description": "trace_size will set for the apptrace", - "trace.stop_tmo.description": "stop_tmo will be set for the apptrace", - "trace.wait4halt.description": "wait4halt will be set for the apptrace", - "trace.skip_size.description": "skip_size will be set for the apptrace", - "param.saveBeforeBuildDescription": "Guarde todos los archivos editados en el espacio de trabajo antes de continuar con la compilación, aunque si no guarda los archivos, se compilará de todos modos", - "param.notificationMode": "Modo de enfoque de texto de salida de las tareas y notificaciones de la extensión ESP-IDF", - "param.saveScope": "Dónde se almacena las configuraciones para comandos ESP-IDF usando enum vscode.ConfigurationTarget. Global = 1, Workspace= 2, WorkspaceFolder=3", - "param.rainmaker.api.server_url": "URL del servidor ESP-Rainmaker API", - "esp.rainmaker.backend.sync.title": "Sincronizar con el servidor ESP-Rainmaker", - "esp.rainmaker.backend.connect.title": "Conéctese con el servidor ESP-Rainmaker", - "esp.rainmaker.backend.logout.title": "Desvincular cuenta ESP-Rainmaker", - "esp.rainmaker.backend.add_node.title": "Agregar nuevo nodo", - "esp.rainmaker.backend.remove_node.title": "Eliminar este nodo", - "esp.rainmaker.backend.update_node_param.title": "Actualizar parámetros para dispositivos", - "param.esp.rainmaker.oauth.url": "URL del servidor ESP-Rainmaker OAuth", - "idf.wssPort.description": "Puerto del servidor Web Socket para Core-Dump o GDB-Stub", - "esp.webview.open.partition-table.title": "ESP-IDF: Editor de tabla de particiones", - "esp.efuse.summary.title": "Obtenga el resumen de eFuse", - "espIdf.efuse.clearResults.title": "Limpiar el resumen de eFuse", - "espIdf.jtag_flash.title": "Flash (con JTag)", - "espIdf.selectFlashMethodAndFlash.title": "Seleccione el método de programar", - "espIdf.selectCurrentIdfVersion.title": "Seleccione la versión ESP-IDF a usar", - "idf.flashType.description": "Método de flash del dispositivo, UART o JTag", - "openocd.tcl.host.description": "Anfitrión para conexión tcl openocd", - "openocd.tcl.port.description": "Puerto para conexión tcl openocd", - "esp.component-manager.url.description": "Component registry URL", - "espIdf.launchWSServerAndMonitor.title": "Inicie el monitor IDF para el modo CoreDump / GDB-Stub", - "esp_idf.appOffset.description": "Sobrescribir offset de inicio de programa (ESP32_APP_FLASH_OFF)", - "esp_idf.initGdbCommands.description": "Uno o varios comandos GDB a ejecutar para iniciar el depurador. Ejemplo: \"initGdbCommands\": [ \"target remote /dev/ttyUSB0\"]", - "esp_idf.gdbinitFile.description": "ruta del archivo gdbinit para el ESP-IDF Debug Adapter", - "esp_idf.debuggers.text.description": "Comando a ejecutar", - "esp_idf.verifyAppBinBeforeDebug.description": "Verificar binarios antes de depurar la aplicación", - "esp_idf.tmoScaleFactor.description": "Factor de escala para gdb timeout [defecto:1]" -} diff --git a/i18n/es/views/menuconfig.i18n.json b/i18n/es/views/menuconfig.i18n.json deleted file mode 100644 index 9793029ff..000000000 --- a/i18n/es/views/menuconfig.i18n.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "save": "Guardar", - "discard": "Descartar", - "reset": "Reiniciar" -} diff --git a/i18n/ru/out/build/buildCmd.i18n.json b/i18n/ru/out/build/buildCmd.i18n.json deleted file mode 100644 index fee1ae5f9..000000000 --- a/i18n/ru/out/build/buildCmd.i18n.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "build.waitProcessIsFinishedMessage": "Дождитесь завершения сборки или прошивки ESP-IDF" -} \ No newline at end of file diff --git a/i18n/ru/out/espIdf/menuconfig/MenuconfigPanel.i18n.json b/i18n/ru/out/espIdf/menuconfig/MenuconfigPanel.i18n.json deleted file mode 100644 index 0c1efeacd..000000000 --- a/i18n/ru/out/espIdf/menuconfig/MenuconfigPanel.i18n.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "menuconfig.panelName": "Редактор конфигурации SDK", - "menuconfig.saveValues": "Изменения в редакторе конфигурации SDK сохранены" , - "menuconfig.discardValues": "Изменения в редакторе конфигурации SDK отменены", - "menuconfig.wrongIdfPath": "Неправильный IDF_PATH в настройках рабочей области. Вы бы хотели его установить?", - "menuconfig.enterIdfPath": "Введите путь IDF_PATH", - "menuconfig.changesNotSaved": "Изменения в редакторе конфигурации SDK не сохранены. Хотели бы вы их сохранить?", - "menuconfig.save": "Сохранить", - "menuconfig.discard": "Не сохранять", - "menuconfig.returnGuiconfig": "Вернуться в редактор конфигурации SDK" -} diff --git a/i18n/ru/out/espIdf/monitor/command.i18n.json b/i18n/ru/out/espIdf/monitor/command.i18n.json deleted file mode 100644 index cc75409d2..000000000 --- a/i18n/ru/out/espIdf/monitor/command.i18n.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "monitor.waitProcessIsFinishedMessage": "Дождитесь завершения сборки или прошивки ESP-IDF" -} \ No newline at end of file diff --git a/i18n/ru/out/espIdf/serial/serialPort.i18n.json b/i18n/ru/out/espIdf/serial/serialPort.i18n.json deleted file mode 100644 index 172fbb0b5..000000000 --- a/i18n/ru/out/espIdf/serial/serialPort.i18n.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "serial.notSerialPortFoundMessage": "Не удалось найти доступный последовательный порт", - "serial.portHasBeenSelectedMessage": "Был выбран порт ", - "serial.noPortSelectedMessage": "Порт не выбран.", - "serial.selectSerialPortMessage": "Выберите доступный последовательный порт, к которому подключено устройство." -} diff --git a/i18n/ru/out/espIdf/size/idfSize.i18n.json b/i18n/ru/out/espIdf/size/idfSize.i18n.json deleted file mode 100644 index 7a563acb1..000000000 --- a/i18n/ru/out/espIdf/size/idfSize.i18n.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "idfSize.canceledError": "Невозможно продолжить анализ размера в отмененном контексте", - "idfSize.buildFirstError": "Соберите проект чтобы проанализировать его размер", - "idfSize.filesMsg": "Рассчитываем размер файлов для всех архивов", - "idfSize.archivesMsg": "Собираем список архивов", - "idfSize.overviewMsg": "Собираем данные для обзора", - "idfSize.commandError": "Ошибка при вызове idf_size.py" -} diff --git a/i18n/ru/out/extension.i18n.json b/i18n/ru/out/extension.i18n.json deleted file mode 100644 index 9907fca5d..000000000 --- a/i18n/ru/out/extension.i18n.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "extension.defaultFoldersGeneratedMessage": "Папки шаблонов были созданы.", - "extension.openFolderFirst": "Сначала откройте папку.", - "espIdf.pickAWorkspaceFolder.text": "Выберите рабочую папку", - "extension.noFolderMessage": "Рабочая область не выбрана.", - "selectFrameworkMessage": "Выберите фреймворк, чтобы определить его путь:", - "extension.noOptionMessage": "Ни одна из опций не выбрана.", - "extension.noPathUpdatedMessage": "Путь не обновлен", - "extension.selectConfigMessage": "Выберите опцию, чтобы определить ее путь:", - "extension.noParamUpdatedMessage": "Параметр устройства не обновлен", - "extension.defaultSdkconfigGeneratedMessage": "Восстановлен файл sdkconfig по умолчанию.", - "extension.openFolderSdkconfigMessage": "Откройте папку, чтобы сгенерировать файл sdkconfig.", - "extension.elfNotFoundMessage": "ELF файл проекта не найден.", - "extension.gdbNotFoundMessage": "Путь к GDB не найден.", - "extension.enterIdfPathMessage": "Введите путь IDF_PATH", - "extension.enterIdfToolsPathMessage": "Введите путь IDF_TOOLS_PATH", - "extension.enterDevicePortMessage": "Введите путь к порту устройства", - "extension.enterDeviceTargetMessage": "Введите имя цели (IDF_TARGET)", - "extension.enterFlashBaudRateMessage": "Введите скорость загрузки прошивки", - "extension.enterOpenOcdConfigMessage": "Введите список файлов конфигурации внутри каталога OpenOCD Scripts", - "extension.enterCustomPathsMessage": "Введите дополнительные пути для добавления в PATH", - "extension.cmdNotWebIDE": "Выбранная команда недоступна в WebIDE" -} diff --git a/i18n/ru/out/flash/flashCmd.i18n.json b/i18n/ru/out/flash/flashCmd.i18n.json deleted file mode 100644 index 2014c1089..000000000 --- a/i18n/ru/out/flash/flashCmd.i18n.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "flash.waitProcessIsFinishedMessage": "Дождитесь завершения сборки или прошивки ESP-IDF" -} \ No newline at end of file diff --git a/i18n/ru/out/idfComponentsDataProvider.i18n.json b/i18n/ru/out/idfComponentsDataProvider.i18n.json deleted file mode 100644 index 13efcb431..000000000 --- a/i18n/ru/out/idfComponentsDataProvider.i18n.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "idfComponentDataProvider.proj_desc_not_found": "Файл project_description.json не найден." -} diff --git a/i18n/ru/out/idfConfiguration.i18n.json b/i18n/ru/out/idfConfiguration.i18n.json deleted file mode 100644 index 3a996cf67..000000000 --- a/i18n/ru/out/idfConfiguration.i18n.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "idfConfiguration.hasBeenUpdated": " был обновлен" -} diff --git a/i18n/ru/out/utils.i18n.json b/i18n/ru/out/utils.i18n.json deleted file mode 100644 index 0d428e8cd..000000000 --- a/i18n/ru/out/utils.i18n.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "utils.currentFolder": "Текущий проект ESP-IDF", - "utils.openComponentTitle": "Открыть файл компонента ESP-IDF" -} diff --git a/i18n/ru/package.i18n.json b/i18n/ru/package.i18n.json deleted file mode 100644 index aa8534e86..000000000 --- a/i18n/ru/package.i18n.json +++ /dev/null @@ -1,165 +0,0 @@ -{ - "espIdf.createFiles.title": "Создать проект из шаблона расширения", - "espIdf.addArduinoAsComponentToCurFolder.title": "Добавить Arduino ESP32 как компонент ESP-IDF", - "espIdf.createIdfTerminal.title": "Открыть терминал ESP-IDF", - "espIdf.createVsCodeFolder.title": "Добавить папку конфигурации vscode", - "espIdf.setPath.title": "Настроить пути", - "espIdf.setTarget.title": "Установить целевое устройство Espressif", - "espIdf.selectConfTarget.title": "Выбрать место для сохранения настроек конфигурации", - "espIdf.selectNotificationMode.title": "Выберите режим вывода и уведомления", - "espIdf.configDevice.title": "Конфигурация устройства", - "espIdf.menuconfig.start.title": "Редактор конфигурации SDK (menuconfig)", - "espIdf.cmakeListsEditor.start.title": "CMakeLists.txt Редактор", - "espIdf.newProject.start.title": "Новый проект", - "espIdf.setDefaultConfig.title": "Установить файл sdkconfig по умолчанию в проекте", - "espIdf.selectPort.title": "Выбрать последовательный порт (COM, tty, usbserial)", - "espIdf.buildDevice.title": "Собрать проект", - "espIdf.flashDevice.title": "Прошить проект", - "espIdf.flashAndEncryptDevice.title": "Зашифруйте и прошейте свой проект", - "espIdf.flashDFU.title": "Прошить (DFU) проект", - "espIdf.flashUart.title": "Прошить (UART) проект", - "espIdf.monitorDevice.title": "Мониторинг устройства", - "espIdf.setup.title": "Настроить расширение ESP-IDF", - "espIdf.examples.title": "Показать проекты примеров", - "espIdf.buildFlashMonitor.title": "Сборка, прошивка и запуск мониторинга вашего устройства", - "espIdf.pickAWorkspaceFolder.title": "Выберите папку рабочего окружения", - "espIdf.size.title": "Анализ размера двоичных файлов", - "espIdf.apptrace.title": "Трассировка приложения", - "espIdf.heaptrace.title": "Трасировка динамической памяти", - "espIdf.openOCDCommand.title": "Менеджер OpenOCD", - "espIdf.genCoverage.title": "Показать панель статистики покрытия кода", - "espIdf.removeCoverage.title": "Скрыть панель статистики покрытия кода", - "espIdf.getCoverageReport.title": "HTML отчет о покрытии кода в проекте", - "espIdf.searchInEspIdfDocs.title": "Искать в документации...", - "espIdf.getEspAdf.title": "Установить ESP-ADF", - "espIdf.getEspMdf.title": "Установить ESP-MDF", - "espIdf.getEspMatter.title": "Установить ESP-Matter", - "espIdf.getEspRainmaker.title": "Установить ESP-Rainmaker", - "espIdf.getEspHomeKitSdk.title": "Установить ESP-HomeKit-SDK", - "espIdf.installEspMatterPyReqs.title": "Установите пакеты Python ESP-Matter", - "espIdf.installPyReqs.title": "Установите пакеты Python расширения ESP-IDF", - "espIdf.openDocUrl.title": "Открыть документацию ...", - "espIdf.doctorCommand.title": "Команда врача", - "espIdf.clearDocsSearchResult.title": " Очистить результаты поиска", - "espIdf.fullClean.title": "Полный чистый проект", - "espIdf.createNewComponent.title": "Создать новый компонент ESP-IDF", - "espIdf.webview.nvsPartitionEditor.title": "ESP-IDF: Редактор разделов NVS", - "espIdf.selectOpenOcdConfigFiles.title": "Выберите конфигурацию платы OpenOCD", - "espIdf.ninja.summary.title": "Показать сводку сборки ninja", - "espIdf.eraseFlash.title": "Стереть флеш-память с устройства", - "espIdf.disposeConfserverProcess.title": "Удалить текущий процесс сервера редактора конфигурации SDK", - "espIdf.setGcovConfig.title": "Настроить проект sdkconfig для покрытия", - "espIdf.importProject.title": "Импортировать проект ESP-IDF", - "espIdf.launchQemu.title": "Запустить сервер QEMU", - "espIdf.monitorQemu.title": "Монитор устройства QEMU", - "espIdf.qemuDebug.title": "Запустить сеанс отладки QEMU", - "espIdf.createDevContainer.title": "Добавить конфигурацию контейнера докеров", - "espIdf.partition.table.refresh.title": "Обновить таблицу разделов", - "espIdf.flashBinaryToPartition.title": "Прошить двоичный файл для раздела ...", - "espIdf.setMatterDevicePath.title": "Установить путь к устройству ESP-MATTER (ESP_MATTER_DEVICE_PATH)", - "espIdf.customTask.title": "Выполнить настраиваемую задачу", - "espIdf.welcome.title": "Добро пожаловать", - "espIdf.projectConfigurationEditor.title": "Открыть конфигурацию проекта", - "espIdf.projectConf.title": "Выберите конфигурацию проекта", - "espIdf.saveDefSdkconfig.title": "ESP-IDF: Сохраните файл SDKCONFIG по умолчанию (save-defconfig)", - "espIdf.clearSavedIdfSetups.title": "Очистить сохраненные настройки IDF", - "espIdf.unitTest.buildFlashUnitTestApp.title": "Модульный тест: сборка и запуск приложения модульного тестирования для тестирования.", - "espIdf.unitTest.installPyTest.title": "Модульный тест: установите требования ESP-IDF PyTest", - "espIdf.createSbom.title": "Запустите проверку уязвимостей ESP-IDF-SBOM.", - "esp.component-manager.ui.show.title": "Показать реестр компонентов", - "esp.component-manager.cli.addDependencyError": "Ошибка при добавлении зависимости к компоненту", - "debug.initConfig.name": "Отладка запуск", - "debug.initConfig.description": "Новая конфигурация для запуска проектов ESP-IDF", - "param.adapterTargetName": "Целевое устройство для адаптера отладки ESP-IDF", - "param.customAdapterTargetName": "Настраиваемое целевое имя для адаптера отладки ESP-IDF", - "param.openOcdConfigFilesList": "Список файлов конфигурации в каталоге OpenOCD Scripts", - "param.openOcdLaunchArgs": "Аргументы для запуска openOCD из этого расширения", - "param.port": "Путь к выбранному порту устройства", - "param.flashBaudRate": "Скорость загрузки прошивки ESP-IDF", - "param.monitorBaudRate": "Скорость передачи данных монитора ESP-IDF", - "param.pythonBinPath": "Абсолютный путь интерпретатора Python для ESP-IDF", - "param.espIdfPath": "Путь фреймворкa ESP-IDF (IDF_PATH)", - "param.espAdfPath": "Путь фреймворка ESP-ADF (ADF_PATH)", - "param.espMdfPath": "Путь фреймворка ESP-MDF (MDF_PATH)", - "param.espMatterPath": "Путь фреймворка ESP-Matter (ESP_MATTER_PATH)", - "param.espRainmakerPath": "Путь фреймворка ESP-Rainmaker (RMAKER_PATH)", - "param.espHomeKitSdkPath": "Путь фреймворка ESP-HomeKit-SDK (HOMEKIT_PATH)", - "param.toolsPath": "Путь инструментов ESP-IDF (IDF_TOOLS_PATH)", - "param.exportPaths": "Пути, добавляемые к PATH", - "param.exportVars": "Переменные, которые нужно добавить к системным переменным окружения", - "param.gitPath.title": "Путь к исполняемому файлу Git", - "param.useIDFKConfigStyle": "Включить/отключить проверки стиля ESP-IDF для файлов Kconfig", - "param.showOnboardingOnInit": "Показывать окно конфигурации ESP-IDF при активации расширения", - "param.cmakeCompilerArgs": "Аргументы для задачи компиляции CMake", - "param.ninjaArgs": "Аргументы для задачи сборки Ninja", - "param.coveredLightTheme": "Цвет фона для покрытых линий в светлой теме для покрытия кода ESP-IDF.", - "param.coveredDarkTheme": "Цвет фона для покрытых линий в темной теме для покрытия кода ESP-IDF.", - "param.partialLightTheme": "Цвет фона для частично покрытых линий в светлой теме для покрытия кода ESP-IDF.", - "param.partialDarkTheme": "Цвет фона для частично покрытых линий в темной теме для покрытия кода ESP-IDF.", - "param.uncoveredLightTheme": "Цвет фона для непокрытых линий в светлой теме для покрытия кода ESP-IDF.", - "param.uncoveredDarkTheme": "Цвет фона для непокрытых линий в темной теме для покрытия кода ESP-IDF.", - "param.enableUpdateSrcsToCMakeListsFile": "Включить файлы источников обновлений в CMakeLists.txt", - "param.launchMonitorOnDebugSession.title": "Запустите IDF Monitor вместе с сеансом ESP-IDF Debug Adapter.", - "param.enableIdfComponentManager.title": "Включить менеджер компонентов IDF в задаче сборки", - "param.enableCCache.title": "Включить CCache в задаче сборки", - "param.qemuTcpPort": "QEMU tcp порт для последовательной связи", - "param.openOcdDebugLevel": "Уровень отладки OpenOCD Server", - "param.preBuildTask": "Предварительная сборка настраиваемой задачи", - "param.postBuildTask": "Опубликовать настраиваемую задачу сборки", - "param.preFlashTask": "Специальная задача предварительной прошивки", - "param.postFlashTask": "Опубликовать настраиваемую задачу Flash", - "param.customTask": "Специальная задача", - "param.buildPath": "Имя каталога сборки CMake", - "param.sdkconfigDefaults": "Список значений по умолчанию sdkconfig для начальной конфигурации сборки", - "param.svdFile": "Файл SVD для разрешения периферийного представления ESP-IDF в представлении отладки", - "param.deleteComponentsOnFullClean": "Удалить manage_components при полной очистке проекта.", - "param.monitorStartDelayBeforeDebug": "Задержка запуска сеанса отладки после выполнения монитора IDF (мс)", - "param.monitorNoReset": "Включить флаг отсутствия сброса для монитора IDF", - "param.monitorEnableTimestamps": "Включить временные метки в монитора IDF", - "param.monitorCustomTimestampFormat": "Пользовательский формат временной метки в монитора IDF", - "param.enableStatusBar.title": "Включить элементы строки состояния расширения ESP-IDF", - "param.enableSizeTaskAfterBuildTask.title": "Включить задачу размера IDF после задачи сборки", - "param.sdkconfigFilePath.title": "абсолютный путь к файлу sdkconfig", - "param.sbomFilePath.title": "путь к файлу esp-idf sbom", - "view.components.name": "Компоненты проекта", - "configuration.title": "ESP-IDF", - "espIdf.apptrace.archive.refresh.title": "Обновить список архива трассировки", - "espIdf.apptrace.archive.showReport.title": "Показать отчет о трассировке", - "espIdf.apptrace.customize.title": "Настроить параметры для трассировки приложения", - "trace.poll_period.description": "poll_period будет установлен для трассировки приложения", - "trace.trace_size.description": "trace_size будет установлен для трассировки приложения", - "trace.stop_tmo.description": "stop_tmo будет установлен для трассировки приложения", - "trace.wait4halt.description": "wait4halt будет установлен для трассировки приложения", - "trace.skip_size.description": "skip_size будет установлен для трассировки приложения", - "param.saveBeforeBuildDescription": "Сохранить все отредактированные файлы в рабочей области, прежде чем продолжить сборку. Хотя, проект будет собран, даже если не удается сохранить файлы", - "param.notificationMode": "Уведомления о расширении ESP-IDF и режим фокусировки вывода.", - "param.saveScope": "Куда сохранять конфигурацию с помощью команд ESP-IDF с числовым значением vscode.ConfigurationTarget. Глобально = 1, Рабочая область = 2, Папка рабочей области = 3", - "param.rainmaker.api.server_url": "URL облачного сервера ESP-Rainmaker", - "param.customTerminalExecutable.title": "Пользовательский исполняемый файл для задач расширения", - "param.customTerminalExecutableArgs.title": "Список аргументов для пользовательского исполняемого файла для задач расширения", - "esp.rainmaker.backend.sync.title": "Синхронизация с облачным сервером ESP-Rainmaker", - "esp.rainmaker.backend.connect.title": "Подключится к облачному серверу ESP-Rainmaker", - "esp.rainmaker.backend.logout.title": "Отвязать аккаунт Rainmaker", - "esp.rainmaker.backend.add_node.title": "Добавить новый узел", - "esp.rainmaker.backend.remove_node.title": "Удалить этот узел", - "esp.rainmaker.backend.update_node_param.title": "Обновить параметр для устройства", - "param.esp.rainmaker.oauth.url": "URL сервера OAuth2 для ESP-Rainmaker", - "idf.wssPort.description": "Порт сервера веб-сокетов для дампа ядра или GDB stub", - "esp.webview.open.partition-table.title": "ESP-IDF: Редактор таблицы разделов", - "esp.efuse.summary.title": "Получить состояние eFuse", - "espIdf.efuse.clearResults.title": "Очистить сводку eFuse", - "espIdf.jtag_flash.title": "Прошить (через JTag)", - "espIdf.selectFlashMethodAndFlash.title": "Выбрать метод прошивки", - "espIdf.selectCurrentIdfVersion.title": "Выберите текущую версию ESP-IDF", - "idf.flashType.description": "Метод прошивки устройства, UART или JTag", - "openocd.tcl.host.description": "Хост для подключения openocd tcl", - "openocd.tcl.port.description": "Порт для подключения openocd tcl", - "esp.component-manager.url.description": "URL реестра компонентов", - "espIdf.launchWSServerAndMonitor.title": "Запустите IDF мониторинг для режима CoreDump / GDB-Stub", - "esp_idf.appOffset.description": "Отменить смещение начального адреса программы сборки (ESP32_APP_FLASH_OFF)", - "esp_idf.initGdbCommands.description": "Одна или несколько команд GDB для настройки отладчика. Пример: \"initGdbCommands\": [ \"target remote /dev/ttyUSB0\"]", - "esp_idf.gdbinitFile.description": "Путь к файлу gdbinit для адаптера отладки ESP-IDF", - "esp_idf.debuggers.text.description": "Команда для выполнения", - "esp_idf.verifyAppBinBeforeDebug.description": "Проверьте двоичные файлы приложения перед отладкой", - "esp_idf.tmoScaleFactor.description": "Коэффициент масштабирования для тайм-аута GDB [по умолчанию: 1]" -} diff --git a/i18n/ru/views/menuconfig.i18n.json b/i18n/ru/views/menuconfig.i18n.json deleted file mode 100644 index 3d0589234..000000000 --- a/i18n/ru/views/menuconfig.i18n.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "save": "Сохранить", - "discard": "Отменить", - "reset": "Сбросить" -} diff --git a/i18n/zh-CN/out/build/buildCmd.i18n.json b/i18n/zh-CN/out/build/buildCmd.i18n.json deleted file mode 100644 index 41e632368..000000000 --- a/i18n/zh-CN/out/build/buildCmd.i18n.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "build.waitProcessIsFinishedMessage": "等待 ESP-IDF 构建或烧录结束" -} \ No newline at end of file diff --git a/i18n/zh-CN/out/espIdf/menuconfig/MenuconfigPanel.i18n.json b/i18n/zh-CN/out/espIdf/menuconfig/MenuconfigPanel.i18n.json deleted file mode 100644 index da406886b..000000000 --- a/i18n/zh-CN/out/espIdf/menuconfig/MenuconfigPanel.i18n.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "menuconfig.panelName": "ESP-IDF 项目配置菜单", - "menuconfig.saveValues": "保存 SDK 配置编辑器中更改", - "menuconfig.discardValues": "丢弃 SDK 配置编辑器中的更改", - "menuconfig.wrongIdfPath": "工作区中 IDF_PATH 的设置存在错误,是否要设置?", - "menuconfig.enterIdfPath": "输入 IDF_PATH 的路径", - "menuconfig.changesNotSaved": "SDK 配置编辑器中的更改尚未保存,是否要保存?", - "menuconfig.save": "保存", - "menuconfig.discard": "不保存", - "menuconfig.returnGuiconfig": "返回到 SDK 配置编辑器" -} diff --git a/i18n/zh-CN/out/espIdf/monitor/command.i18n.json b/i18n/zh-CN/out/espIdf/monitor/command.i18n.json deleted file mode 100644 index 9292b1c16..000000000 --- a/i18n/zh-CN/out/espIdf/monitor/command.i18n.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "monitor.waitProcessIsFinishedMessage": "等待 ESP-IDF 构建或烧录结束" -} \ No newline at end of file diff --git a/i18n/zh-CN/out/espIdf/serial/serialPort.i18n.json b/i18n/zh-CN/out/espIdf/serial/serialPort.i18n.json deleted file mode 100644 index 71655968d..000000000 --- a/i18n/zh-CN/out/espIdf/serial/serialPort.i18n.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "serial.notSerialPortFoundMessage": "找不到任何可用的串口", - "serial.portHasBeenSelectedMessage": "串口已更新为", - "serial.noPortSelectedMessage": "未选中任何串口", - "serial.selectSerialPortMessage": "请选择可用的串口设备" -} diff --git a/i18n/zh-CN/out/espIdf/size/idfSize.i18n.json b/i18n/zh-CN/out/espIdf/size/idfSize.i18n.json deleted file mode 100644 index e45a739d4..000000000 --- a/i18n/zh-CN/out/espIdf/size/idfSize.i18n.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "idfSize.canceledError": "无法对取消的上下文进行大小分析", - "idfSize.buildFirstError": "项目未构建,请构建项目", - "idfSize.filesMsg": "计算所有归档的文件大小", - "idfSize.archivesMsg": "正在收集归档列表", - "idfSize.overviewMsg": "归档文件概述", - "idfSize.commandError": "调用 idf_size.py 时遇到错误" -} diff --git a/i18n/zh-CN/out/extension.i18n.json b/i18n/zh-CN/out/extension.i18n.json deleted file mode 100644 index 6fde2f589..000000000 --- a/i18n/zh-CN/out/extension.i18n.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "extension.defaultFoldersGeneratedMessage": "已生成默认文件夹", - "extension.openFolderFirst": "请先打开文件夹", - "espIdf.pickAWorkspaceFolder.text": "请选择当前工作文件夹", - "extension.noFolderMessage": "未选择工作区", - "selectFrameworkMessage": "选择框架并设定路径", - "extension.noOptionMessage": "未选择任何选项", - "extension.noPathUpdatedMessage": "没有更新路径", - "extension.selectConfigMessage": "选择选项并设定其路径", - "extension.noParamUpdatedMessage": "没有更新设备参数", - "extension.defaultSdkconfigGeneratedMessage": "已还原默认的 sdkconfig 文件", - "extension.openFolderSdkconfigMessage": "首先打开文件夹以生成 sdkconfig 文件", - "extension.elfNotFoundMessage": "找不到项目 ELF 文件", - "extension.gdbNotFoundMessage": "找不到 GDB 路径", - "extension.enterIdfPathMessage": "请输入 IDF_PATH 路径", - "extension.enterIdfToolsPathMessage": "请输入 IDF_TOOLS_PATH 路径", - "extension.enterDevicePortMessage": "请输入设备端口路径", - "extension.enterDeviceTargetMessage": "输入芯片目标(IDF_TARGET)", - "extension.enterFlashBaudRateMessage": "输入烧录波特率", - "extension.cmdNotWebIDE": "所选命令在 WebIDE 中不可用", - "extension.enterOpenOcdConfigMessage": "在 OpenOCD 脚本目录中输入配置文件列表", - "extension.enterCustomPathsMessage": "请输入额外添加到 PATH 环境变量中的路径" -} diff --git a/i18n/zh-CN/out/flash/flashCmd.i18n.json b/i18n/zh-CN/out/flash/flashCmd.i18n.json deleted file mode 100644 index 477989f87..000000000 --- a/i18n/zh-CN/out/flash/flashCmd.i18n.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "flash.waitProcessIsFinishedMessage": "等待 ESP-IDF 构建或烧录结束" -} \ No newline at end of file diff --git a/i18n/zh-CN/out/idfComponentsDataProvider.i18n.json b/i18n/zh-CN/out/idfComponentsDataProvider.i18n.json deleted file mode 100644 index 3258bc813..000000000 --- a/i18n/zh-CN/out/idfComponentsDataProvider.i18n.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "idfComponentDataProvider.proj_desc_not_found": "找不到 project_description.json 文件" -} diff --git a/i18n/zh-CN/out/idfConfiguration.i18n.json b/i18n/zh-CN/out/idfConfiguration.i18n.json deleted file mode 100644 index c1ff7cf5c..000000000 --- a/i18n/zh-CN/out/idfConfiguration.i18n.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "idfConfiguration.hasBeenUpdated": " 已更新" -} diff --git a/i18n/zh-CN/out/utils.i18n.json b/i18n/zh-CN/out/utils.i18n.json deleted file mode 100644 index 626ecca66..000000000 --- a/i18n/zh-CN/out/utils.i18n.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "utils.currentFolder": "ESP-IDF 当前项目", - "utils.openComponentTitle": "打开 ESP-IDF 组件文件" -} diff --git a/i18n/zh-CN/package.i18n.json b/i18n/zh-CN/package.i18n.json deleted file mode 100644 index d7cdca971..000000000 --- a/i18n/zh-CN/package.i18n.json +++ /dev/null @@ -1,165 +0,0 @@ -{ - "espIdf.createFiles.title": "ESP-IDF: 从扩展模板创建项目", - "espIdf.addArduinoAsComponentToCurFolder.title": "ESP-IDF: 添加 ArduinoESP32 作为 ESP-IDF 组件", - "espIdf.createIdfTerminal.title": "ESP-IDF: 打开 ESP-IDF 终端", - "espIdf.createVsCodeFolder.title": "ESP-IDF: 添加 vscode 配置文件夹", - "espIdf.setPath.title": "ESP-IDF :配置路径", - "espIdf.selectConfTarget.title": "ESP-IDF :选择保存配置设置的位置", - "espIdf.selectNotificationMode.title": "选择输出和通知模式", - "espIdf.setTarget.title": "ESP-IDF: 设置 espressif 目标芯片", - "espIdf.configDevice.title": "ESP-IDF :配置设备", - "espIdf.menuconfig.start.title": "ESP-IDF: SDK 配置编辑器 (menuconfig)", - "espIdf.cmakeListsEditor.start.title": "ESP-IDF:CMakeLists.txt 文件编辑器", - "espIdf.newProject.start.title": "ESP-IDF: 新建项目", - "espIdf.setDefaultConfig.title": "ESP-IDF:设置项目默认的 sdkconfig 文件", - "espIdf.selectPort.title": "ESP-IDF:选择要使用的烧录端口 (COM, tty, usbserial)", - "espIdf.buildDevice.title": "ESP-IDF:构建项目", - "espIdf.flashDevice.title": "ESP-IDF:烧录项目", - "espIdf.flashAndEncryptDevice.title": "加密并刷新项目", - "espIdf.flashDFU.title": "ESP-IDF:烧录项目 (DFU)", - "espIdf.flashUart.title": "ESP-IDF:烧录项目 (UART)", - "espIdf.monitorDevice.title": "ESP-IDF:监视设备输出", - "espIdf.setup.title": "ESP-IDF:配置 ESP-IDF 插件", - "espIdf.examples.title": "ESP-IDF:展示示例项目", - "espIdf.buildFlashMonitor.title": "ESP-IDF:构建、烧录项目并启动监视器", - "espIdf.pickAWorkspaceFolder.title": "ESP-IDF:选择工作文件夹", - "espIdf.size.title": "ESP-IDF:分析二进制文件的大小", - "espIdf.apptrace.title": "ESP-IDF:跟踪应用程序", - "espIdf.heaptrace.title": "ESP-IDF: 堆跟踪", - "espIdf.openOCDCommand.title": "ESP-IDF:OpenOCD 管理器", - "espIdf.genCoverage.title": "ESP-IDF: 添加编辑器覆盖范围", - "espIdf.searchInEspIdfDocs.title": "ESP-IDF: 在文档中搜索...", - "espIdf.removeCoverage.title": "ESP-IDF: 删除编辑器覆盖范围", - "espIdf.getCoverageReport.title": "ESP-IDF: 获取项目的 HTML 覆盖率报告", - "espIdf.getEspAdf.title": "ESP-IDF: 安装 ESP-ADF", - "espIdf.getEspMdf.title": "ESP-IDF: 安装 ESP-MDF", - "espIdf.getEspMatter.title": "ESP-IDF: 安装 ESP-Matter", - "espIdf.getEspRainmaker.title": "安装 ESP-Rainmaker", - "espIdf.getEspHomeKitSdk.title": "安装 ESP-HomeKit-SDK", - "espIdf.installEspMatterPyReqs.title": "ESP-IDF: 安装 ESP-Matter Python 包", - "espIdf.installPyReqs.title": "ESP-IDF: 安装 ESP-IDF 扩展 Python 包", - "espIdf.openDocUrl.title": "ESP-IDF: 打开 ESP-IDF 文档...", - "espIdf.doctorCommand.title": "ESP-IDF: 诊断命令", - "espIdf.clearDocsSearchResult.title": "ESP-IDF: 清除 ESP-IDF 搜索结果", - "espIdf.fullClean.title": "ESP-IDF: 完整清理项目", - "espIdf.createNewComponent.title": "ESP-IDF: 创建新的 ESP-IDF 组件", - "espIdf.webview.nvsPartitionEditor.title": "ESP-IDF: NVS 分区编辑器", - "espIdf.selectOpenOcdConfigFiles.title": "ESP-IDF: 选择 OpenOCD 开发板配置", - "espIdf.ninja.summary.title": "ESP-IDF: 显示 ninja 构建摘要", - "espIdf.eraseFlash.title": "ESP-IDF: 擦除设备闪存", - "espIdf.disposeConfserverProcess.title": "ESP-IDF: 释放当前 SDK 配置编辑器服务器进程", - "espIdf.setGcovConfig.title": "ESP-IDF: 为覆盖范围配置项目 sdkconfig", - "espIdf.importProject.title": "导入 ESP-IDF 项目", - "espIdf.launchQemu.title": "启动 QEMU 服务器", - "espIdf.monitorQemu.title": "监控 QEMU 设备", - "espIdf.qemuDebug.title": "启动 QEMU 调试会话", - "espIdf.createDevContainer.title": "添加 docker 容器配置", - "espIdf.partition.table.refresh.title": "刷新分区表", - "espIdf.flashBinaryToPartition.title": "烧录二进制文件到分区", - "espIdf.setMatterDevicePath.title": "设置ESP-MATTER设备路径 (ESP_MATTER_DEVICE_PATH)", - "espIdf.customTask.title": "执行自定义任务", - "espIdf.welcome.title": "欢迎", - "espIdf.projectConfigurationEditor.title": "打开项目配置", - "espIdf.projectConf.title": "选择项目配置", - "espIdf.saveDefSdkconfig.title": "ESP-IDF: 保存默认SDKCONFIG文件(save-defconfig)", - "espIdf.clearSavedIdfSetups.title": "清除保存的IDF设置", - "espIdf.unitTest.buildFlashUnitTestApp.title": "单元测试:构建并闪存用于测试的单元测试应用程序", - "espIdf.unitTest.installPyTest.title": "单元测试:安装ESP-IDF PyTest要求", - "espIdf.createSbom.title": "运行ESP-IDF-SBOM漏洞检查", - "esp.component-manager.ui.show.title": "显示组件注册表", - "esp.component-manager.cli.addDependencyError": "向组件添加依赖项时遇到错误", - "debug.initConfig.name": "ESP-IDF调试 启动", - "debug.initConfig.description": "启用 ESP-IDF 项目的新配置", - "param.adapterTargetName": "ESP-IDF 调试适配器的目标名称", - "param.customAdapterTargetName": "ESP-IDF 调试适配器的自定义目标名称", - "param.openOcdConfigFilesList": "OpenOCD 脚本目录中的配置文件列表", - "param.openOcdLaunchArgs": "从此扩展启动openOCD的参数", - "param.flashBaudRate": "ESP-IDF 烧录波特率", - "param.monitorBaudRate": "ESP-IDF监视器波特率", - "param.port": "选中的烧录端口路径", - "param.pythonBinPath": "项目构建使用的 Python 解释器的绝对路径", - "param.toolsPath": "IDF_TOOLS_PATH 的路径", - "param.exportPaths": "导出到系统 PATH 环境变量的路径", - "param.exportVars": "导出到系统中的环境变量", - "param.gitPath.title": "Git 可执行路径", - "param.espIdfPath": "IDF_PATH 的路径", - "param.espAdfPath": "ADF_PATH 的路径", - "param.espMdfPath": "MDF_PATH 的路径", - "param.espMatterPath": "ESP_MATTER_PATH 的路径", - "param.espRainmakerPath": "RMAKER_PATH 的路径", - "param.espHomeKitSdkPath": "HOMEKIT_PATH 的路径", - "param.useIDFKConfigStyle": "启用/禁用 ESP-IDF Kconfig 文件的样式验证", - "param.showOnboardingOnInit": "在扩展激活时显示 ESP-IDF 配置窗口", - "param.cmakeCompilerArgs": "CMake 编译任务的参数", - "param.ninjaArgs": "Ninja 构建任务的参数", - "param.coveredLightTheme": "ESP-IDF 覆盖浅色主题覆盖线的背景色", - "param.coveredDarkTheme": "ESP-IDF 覆盖深色主题覆盖线的背景色", - "param.partialLightTheme": "ESP-IDF 覆盖浅色主题部分覆盖线的背景色.", - "param.partialDarkTheme": "ESP-IDF 覆盖深色主题部分覆盖线的背景色", - "param.uncoveredLightTheme": "ESP-IDF 覆盖浅色主题中未覆盖线条的背景色", - "param.uncoveredDarkTheme": "ESP-IDF 覆盖深色主题中未覆盖线条的背景色", - "param.enableUpdateSrcsToCMakeListsFile": "启用更新 CMakeLists.txt 中的源文件", - "param.launchMonitorOnDebugSession.title": "启动 IDF 监视器和 ESP-IDF 调试适配器会话", - "param.enableIdfComponentManager.title": "在构建任务中启用 IDF 组件管理器", - "param.enableCCache.title": "在生成任务中启用 CCache", - "param.qemuTcpPort": "用于串行通信的 QEMU TCP 端口", - "param.openOcdDebugLevel": "OpenOCD 服务器调试级别", - "param.preBuildTask": "预构建自定义任务", - "param.postBuildTask": "生成后自定义任务", - "param.preFlashTask": "闪存前自定义任务", - "param.postFlashTask": "flash后自定义任务", - "param.customTask": "自定义任务", - "param.buildPath": "CMake生成目录的名称", - "param.sdkconfigDefaults": "初始生成配置的sdkconfig默认值列表", - "param.svdFile": "用于在调试视图中解析ESP-IDF外围视图的奇异值分解文件", - "param.deleteComponentsOnFullClean": "完全清除项目命令时删除managed_components", - "param.monitorStartDelayBeforeDebug": "IDF监视器执行后延迟启动调试会话 (ms)", - "param.monitorNoReset": "对IDF监视器启用无重置标志", - "param.monitorEnableTimestamps": "在IDF监视器中启用时间戳", - "param.monitorCustomTimestampFormat": "IDF监视器中的自定义时间戳格式", - "param.enableStatusBar.title": "启用ESP-IDF扩展状态栏项目", - "param.enableSizeTaskAfterBuildTask.title": "在生成任务后启用IDF大小任务", - "param.sdkconfigFilePath.title": "sdkconfig文件绝对路径", - "param.sbomFilePath.title": "esp-idf sbom文件路径", - "view.components.name": "项目组件", - "configuration.title": "ESP-IDF", - "espIdf.apptrace.archive.refresh.title": "刷新跟踪归档列表", - "espIdf.apptrace.archive.showReport.title": "显示跟踪报告", - "espIdf.apptrace.customize.title": "自定义 apptrace 参数", - "trace.poll_period.description": "apptrace:设置 poll_period", - "trace.trace_size.description": "apptrace:设置 trace_size", - "trace.stop_tmo.description": "apptrace:设置 stop_tmo", - "trace.wait4halt.description": "apptrace:设置 wait4halt", - "trace.skip_size.description": "apptrace:设置 skip_size", - "param.saveBeforeBuildDescription": "在构建之前保存所有工作区中正在编辑的文件。即使无法保存文件,也一定会进行构建", - "param.notificationMode": "ESP-IDF扩展通知和输出聚焦模式", - "param.saveScope": "将 ESP-IDF 命令将配置保存到 vscode.ConfigurationTarget。全局 = 1, 工作区= 2, 工作区文件夹=3", - "param.rainmaker.api.server_url": "ESP-Rainmaker 云服务器地址", - "param.customTerminalExecutable.title": "用于扩展任务的自定义可执行文件", - "param.customTerminalExecutableArgs.title": "扩展任务的自定义可执行文件的参数列表", - "esp.rainmaker.backend.sync.title": "同步到 ESP-Rainmaker 云服务器", - "esp.rainmaker.backend.connect.title": "连接到 ESP-Rainmaker 云服务器", - "esp.rainmaker.backend.logout.title": "取消关联 ESP-Rainmaker 帐户", - "esp.rainmaker.backend.add_node.title": "添加新节点", - "esp.rainmaker.backend.remove_node.title": "删除该节点", - "esp.rainmaker.backend.update_node_param.title": "更新设备的参数", - "param.esp.rainmaker.oauth.url": "ESP-Rainmaker OAuth 服务器地址", - "idf.wssPort.description": "CoreDump/GDB-Stub 模式 Web Socket 端口", - "esp.webview.open.partition-table.title": "ESP-IDF:分区表编辑器", - "esp.efuse.summary.title": "获取 eFuse 摘要", - "espIdf.efuse.clearResults.title": "清除 eFuse 摘要", - "espIdf.jtag_flash.title": "JTag 烧录", - "espIdf.selectFlashMethodAndFlash.title": "选择烧录方式烧录", - "espIdf.selectCurrentIdfVersion.title": "选择当前ESP-IDF版本", - "idf.flashType.description": "设备烧录方式,UART 或 JTag", - "openocd.tcl.host.description": "OpenOCD TCL 主机", - "openocd.tcl.port.description": "OpenOCD TCL 端口", - "esp.component-manager.url.description": "组件管理器地址", - "espIdf.launchWSServerAndMonitor.title": "启动 IDF CoreDump/GDB-Stub 模式监视器", - "esp_idf.appOffset.description": "覆盖构建程序起始地址偏移量 (ESP32_APP_FLASH_OFF)", - "esp_idf.initGdbCommands.description": "配置底层调试器。顺序执行一个或多个 GDB 命令,例如: \"initGdbCommands\": [ \"target remote /dev/ttyUSB0\"].", - "esp_idf.gdbinitFile.description": "ESP-IDF 调试适配器 gdbinit 文件路径", - "esp_idf.debuggers.text.description": "执行命令", - "esp_idf.verifyAppBinBeforeDebug.description": "调试前验证应用程序二进制文件", - "esp_idf.tmoScaleFactor.description": "gdb超时的比例因子[默认值:1]" -} diff --git a/i18n/zh-CN/views/menuconfig.i18n.json b/i18n/zh-CN/views/menuconfig.i18n.json deleted file mode 100644 index cba5c88ee..000000000 --- a/i18n/zh-CN/views/menuconfig.i18n.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "save": "保存", - "discard": "丢弃", - "reset": "重置" -} diff --git a/l10n/bundle.l10n.es.json b/l10n/bundle.l10n.es.json new file mode 100644 index 000000000..835aa38e1 --- /dev/null +++ b/l10n/bundle.l10n.es.json @@ -0,0 +1,170 @@ +{ + "ESP-IDF: Current Project": "ESP-IDF: Proyecto actual", + "ESP-IDF: Open IDF Component File": "ESP-IDF: Abrir archivo de componentes IDF", + " has been updated": " Ha sido actualizado", + "File project_description.json cannot be found.": "No se puede encontrar el archivo project_description.json.", + "Open a folder first.": "Primero abra una carpeta.", + "Selected command is not available in WebIDE": "El comando seleccionado no está disponible en WebIDE", + "Use current folder: {workspace}": "Usar carpeta actual: {workspace}", + "Choose a container directory...": "Elija un directorio de contenedor...", + "Select a directory to use": "Seleccione un directorio para usar", + "Select a template to use": "Seleccione una plantilla para usar", + "Template folders has been generated.": "Se han generado carpetas de plantillas.", + "There is no build directory to clean, exiting!": "¡No hay ningún directorio de compilación para limpiar, saliendo!", + "Trying to delete the build folder. Closing existing SDK Configuration editor process...": "Intentando eliminar la carpeta de compilación. ", + "There is no CMakeCache.txt. Please try to delete the build directory manually.": "No hay CMakeCache.txt. ", + "There is a build or flash task running. Wait for it to finish or cancel them before clean.": "Hay una tarea de compilación o actualización en ejecución. ", + "Build directory has been deleted.": "El directorio de compilación ha sido eliminado.", + "ESP-IDF: Erasing device flash memory (erase_flash)": "ESP-IDF: Borrado de la memoria flash del dispositivo (erase_flash)", + "ESP-IDF: Arduino ESP32 as ESP-IDF component": "ESP-IDF: Arduino ESP32 como componente ESP-IDF", + "{arduinoDirPath} already exists.": "{arduinoDirPath} ya existe.", + "ESP-Matter is not available for Windows.": "ESP-Matter no está disponible para Windows.", + "Pick Workspace Folder to which settings should be applied": "Elija la carpeta del espacio de trabajo a la que se deben aplicar las configuraciones", + "Enter ESP_MATTER_DEVICE_PATH path": "Ingrese la ruta ESP_MATTER_DEVICE_PATH", + "ESP_MATTER_DEVICE_PATH has been set in idf.customExtraVars configuration setting.": "ESP_MATTER_DEVICE_PATH se ha establecido en la configuración de idf.customExtraVars.", + "Select your current folder": "Seleccione su carpeta actual", + "No workspace selected.": "No se ha seleccionado ningún espacio de trabajo.", + "Show no notifications and do not focus tasks output.": "No muestre notificaciones y no centre la salida de tareas.", + "Show notifications but do not focus tasks output.": "Muestra notificaciones pero no centras el resultado de las tareas.", + "Do not show notifications but focus tasks output.": "No muestre notificaciones, pero centre la salida de las tareas.", + "Show notifications and focus tasks output.": "Muestra notificaciones y resultados de tareas de enfoque.", + "Select the output and notification mode": "Seleccione el modo de salida y notificación", + "Notification mode has changed to {mode}": "El modo de notificación ha cambiado a {modo}", + "Select framework to define its path:": "Seleccione el marco para definir su ruta:", + "IDF_PATH Path": "Ruta IDF_PATH", + "Set IDF_TOOLS_PATH Path": "Establecer ruta IDF_TOOLS_PATH", + "Set paths to append to PATH": "Establecer rutas para agregar a PATH", + "No option selected.": "Ninguna opción seleccionada.", + "Enter IDF_PATH Path": "Introduzca la ruta IDF_PATH", + "Enter IDF_TOOLS_PATH path": "Introduzca la ruta IDF_TOOLS_PATH", + "Enter extra paths to append to PATH": "Ingrese rutas adicionales para agregar a PATH", + "No path has been updated": "No se ha actualizado ninguna ruta.", + "No project configuration found": "No se encontró ninguna configuración de proyecto", + "Select configuration to use:": "Seleccione la configuración a utilizar:", + "ESP-IDF: Select Project Configuration": "ESP-IDF: Seleccionar configuración del proyecto", + "Select option to define its path:": "Seleccione la opción para definir su ruta:", + "Relative paths to OpenOCD Scripts directory separated by comma(,)": "Rutas relativas al directorio OpenOCD Scripts separadas por coma (,)", + "Enter device port Path": "Introduzca la ruta del puerto del dispositivo", + "Enter flash baud rate": "Introduzca la velocidad en baudios del flash", + "Enter monitor baud rate": "Introduzca la velocidad en baudios del monitor", + "Enter OpenOCD Configuration File Paths list": "Ingrese a la lista de rutas de archivos de configuración de OpenOCD", + "No device parameter has been updated": "No se ha actualizado ningún parámetro del dispositivo.", + "Installing ESP-IDF extension Python Requirements...": "Instalación de la extensión ESP-IDF Requisitos de Python...", + "ESP-IDF Python Requirements has been installed": "Se han instalado los requisitos de ESP-IDF Python", + "Installing ESP-Matter Python Requirements...": "Instalación de los requisitos de ESP-Matter Python...", + "ESP-Matter Python Requirements have been installed": "Se han instalado los requisitos de ESP-Matter Python", + "PyTest python packages are already installed.": "Los paquetes de Python de PyTest ya están instalados.", + "ESP-IDF: Building unit test app and flashing": "ESP-IDF: aplicación de prueba unitaria de construcción y flasheo", + "ESP-IDF vscode files have been added to the project.": "Se han agregado archivos ESP-IDF vscode al proyecto.", + "ESP-IDF container files have been added to the project.": "Se han agregado archivos contenedores ESP-IDF al proyecto.", + "Enter ESP-IDF component name": "Ingrese el nombre del componente ESP-IDF", + "The ESP-IDF component {componentName} has been created": "Se ha creado el componente ESP-IDF {componentName}", + "ESP-IDF: SDK Configuration Editor": "ESP-IDF: Editor de configuración del SDK", + "ESP-IDF: Save Default Configuration (save-defconfig)": "ESP-IDF: Guardar configuración predeterminada (save-defconfig)", + "Enter target name (IDF_TARGET)": "Introduzca el nombre del objetivo (IDF_TARGET)", + "ESP-IDF: Configure ESP-IDF extension": "ESP-IDF: Configurar la extensión ESP-IDF", + "No ESP-IDF frameworks found": "No se encontraron marcos ESP-IDF", + "Select framework to use": "Seleccione el marco a utilizar", + "No framework selected to load examples.": "No se seleccionó ningún marco para cargar ejemplos.", + "ESP-IDF: Loading examples": "ESP-IDF: Cargando ejemplos", + "Cannot call this command directly, right click on any CMakeLists.txt file!": "No se puede llamar a este comando directamente, haga clic derecho en cualquier archivo CMakeLists.txt.", + "Enter comma separated configuration files": "Ingrese archivos de configuración separados por comas", + "Open a workspace or folder first.": "Primero abra un espacio de trabajo o una carpeta.", + "OpenOCD Board configuration files are updated.": "Los archivos de configuración de la placa OpenOCD se actualizan.", + "{srcFolder} is not an ESP-IDF project.": "{srcFolder} no es un proyecto ESP-IDF.", + "Enter project name": "Introduzca el nombre del proyecto", + "{destFolder} already exists.": "{destFolder} ya existe.", + "ESP-IDF Project has been imported": "El proyecto ESP-IDF ha sido importado.", + "Merging binaries for flashing": "Fusionar binarios para flashear", + "Select a partition to use": "Seleccione una partición para usar", + "Enter custom partition table offset": "Ingrese el desplazamiento de la tabla de particiones personalizada", + "Flash binary to this partition": "Flash binario a esta partición", + "Open partition table editor": "Abrir editor de tablas de particiones", + "Select an action to use": "Seleccione una acción para usar", + "ESP-IDF: Preparing ESP-IDF extension report": "ESP-IDF: Preparando informe de extensión ESP-IDF", + "Extension configuration report has been copied to clipboard with errors": "El informe de configuración de la extensión se ha copiado al portapapeles con errores", + "Cannot call this command directly, click on any Trace to view its report!": "No se puede llamar a este comando directamente. Haga clic en cualquier seguimiento para ver su informe.", + "Do you want to view Heap Trace plot or System View Trace": "¿Quiere ver el gráfico de seguimiento del montón o el seguimiento de vista del sistema?", + "Show System View Tracing Plot (will open a webview window)": "Mostrar gráfico de seguimiento de vista del sistema (se abrirá una ventana de vista web)", + "Open Old Heap/App Trace Panel": "Abrir el panel de seguimiento de aplicaciones/montón antiguo", + "Already logged-in, please sign-out first": "Ya has iniciado sesión, cierra sesión primero", + "ESP-IDF: Please wait checking with Rainmaker Cloud": "ESP-IDF: Espere para consultar con Rainmaker Cloud", + "Failed to login with Rainmaker Cloud, double check your id and password": "No se pudo iniciar sesión en Rainmaker Cloud, verifique su identificación y contraseña", + "Would you like to unlink your ESP Rainmaker cloud account?": "¿Le gustaría desvincular su cuenta en la nube ESP Rainmaker?", + "Would you like to delete this node from your ESP Rainmaker account?": "¿Le gustaría eliminar este nodo de su cuenta ESP Rainmaker?", + "ESP-IDF: Deleting node from your rainmaker account": "ESP-IDF: Eliminando nodo de su cuenta rainmaker", + "Failed to delete node, maybe the node is already marked for delete, please try again after sometime": "No se pudo eliminar el nodo, tal vez el nodo ya esté marcado para eliminarse; inténtelo nuevamente después de algún tiempo", + "Coming Soon!! until then you can add nodes using mobile app": "¡¡Muy pronto!! ", + "Failed to update the param, please try once more": "No se pudo actualizar el parámetro, inténtelo una vez más.", + "Failed to update param because, ": "No se pudo actualizar el parámetro porque, ", + "Unable to execute the command: espIdf.selectPort": "No se puede ejecutar el comando: espIdf.selectPort", + "Select a serial port before flashing": "Seleccione un puerto serie antes de flashear", + "Python binary path is not defined": "La ruta binaria de Python no está definida", + " is not defined": " no está definido", + "ESP-IDF: Core-dump detected, please wait while we parse the data received": "ESP-IDF: volcado de núcleo detectado, espere mientras analizamos los datos recibidos", + "Successfully created ELF file from the info received (espcoredump.py)": "Archivo ELF creado correctamente a partir de la información recibida (espcoredump.py)", + "Failed to launch debugger for postmortem": "No se pudo iniciar el depurador para la autopsia", + "Failed to generate the ELF file from the info received, please close the core-dump monitor terminal manually": "No se pudo generar el archivo ELF a partir de la información recibida; cierre manualmente el terminal del monitor de volcado de núcleo", + "Your port {wsPort} is not available, use (idf.wssPort) to change to different port": "Su puerto {wsPort} no está disponible, use (idf.wssPort) para cambiar a un puerto diferente", + "Partition table editor requires sdkconfig file. Build the project?": "El editor de tablas de particiones requiere el archivo sdkconfig. ", + "Custom Partition Table not enabled for the project": "Tabla de particiones personalizada no habilitada para el proyecto", + "Empty CONFIG_PARTITION_TABLE_CUSTOM_FILENAME, please add a csv file to generate partition table": "CONFIG_PARTITION_TABLE_CUSTOM_FILENAME vacío, agregue un archivo csv para generar la tabla de particiones", + "Partition Table File {partitionTableFilePath} doesn't exists, we are creating an empty file there": "El archivo de tabla de particiones {partitionTableFilePath} no existe, estamos creando un archivo vacío allí", + "ESP-IDF: Getting eFuse summary for your chip": "ESP-IDF: Obteniendo un resumen de eFuse para su chip", + "Failed to get the eFuse Summary from the chip, please make sure you have selected a valid port": "No se pudo obtener el resumen de eFuse del chip; asegúrese de haber seleccionado un puerto válido", + "Ninja build summary found an error": "El resumen de compilación de Ninja encontró un error", + "ESP-IDF: Create SBOM summary": "ESP-IDF: Crear resumen de SBOM", + "ESP-IDF: Please wait mapping your rainmaker cloud account with the VS Code Extension, this could take a little while": "ESP-IDF: Espere a mapear su cuenta de nube Rainmaker con la extensión VS Code, esto podría tomar un poco de tiempo.", + "Rainmaker Cloud is connected successfully (via OAuth)!": "¡Rainmaker Cloud está conectado correctamente (a través de OAuth)!", + "Failed to sign-in with Rainmaker (via OAuth)": "No se pudo iniciar sesión con Rainmaker (a través de OAuth)", + "Use current ESP-IDF {espIdfPath}": "Utilice ESP-IDF actual {espIdfPath}", + "Use current ESP-ADF {espAdfPath}": "Utilice ESP-ADF actual {espAdfPath}", + "Use current ESP-MDF {espMdfPath}": "Utilice ESP-MDF actual {espMdfPath}", + "Use current ESP-Matter {matterPathDir}": "Utilice ESP-Matter actual {matterPathDir}", + "Use current ESP-Rainmaker {rainmakerPathDir}": "Utilice ESP-Rainmaker actual {rainmakerPathDir}", + "Use current ESP-HomeKit-SDK {espHomeKitPathDir}": "Utilice ESP-HomeKit-SDK actual {espHomeKitPathDir}", + "Enter non empty string": "Introduzca una cadena que no esté vacía", + "Enter a valid integer": "Introduzca un número entero válido", + "ESP-IDF: Select Port to Use (COM, tty, usbserial)": "ESP-IDF: seleccione el puerto a usar (COM, tty, usbserial)", + "ESP-IDF: Set Espressif Device Target": "ESP-IDF: establecer el objetivo del dispositivo Espressif", + "ESP-IDF: SDK Configuration Editor (menuconfig)": "ESP-IDF: Editor de configuración del SDK (menuconfig)", + "ESP-IDF: Full Clean": "ESP-IDF: limpieza completa", + "ESP-IDF: Build Project": "ESP-IDF: Proyecto de construcción", + "ESP-IDF: Select Flash Method": "ESP-IDF: seleccione el método Flash", + "ESP-IDF: Flash Device": "ESP-IDF: Dispositivo flash", + "ESP-IDF: Monitor Device": "ESP-IDF: Dispositivo de monitoreo", + "ESP-IDF: Build, Flash and Monitor": "ESP-IDF: construir, flashear y monitorear", + "ESP-IDF: Open ESP-IDF Terminal": "ESP-IDF: Abrir terminal ESP-IDF", + "ESP-IDF: Execute Custom Task": "ESP-IDF: ejecutar tarea personalizada", + "QEMU is not running. Run first.": "QEMU no se está ejecutando. ", + "ESP-IDF: Building project": "ESP-IDF: Proyecto de construcción", + "Select flash method, you can modify the choice later from 'settings.json' (idf.flashType)": "Seleccione el método flash, puede modificar la elección más tarde desde 'settings.json' (idf.flashType)", + "Current app binary is different from your project. Flash first.": "El binario de la aplicación actual es diferente de su proyecto. ", + "ESP-IDF Welcome": "ESP-IDF Bienvenido", + "ESP-IDF Setup": "Configuración ESP-IDF", + "ESP-IDF Project Configuration": "Configuración del proyecto ESP-IDF", + "New Project": "Nuevo proyecto", + "Wait for ESP-IDF task to finish": "Espere a que finalice la tarea ESP-IDF", + "{targetDesc} Examples": "{targetDesc} Ejemplos", + "No README.md available for this project.": "No hay README.md disponible para este proyecto.", + "Cannot proceed with size analysis on a canceled context": "No se puede continuar con el análisis de tamaño en un contexto cancelado", + "Build is required for a size analysis, build your project first": "Se requiere compilación para un análisis de tamaño, primero construya su proyecto", + "Gathering Overview": "Descripción general de la reunión", + "Gathering Archive List": "Lista de archivos de recopilación", + "Calculating File Sizes for all the archives": "Calcular tamaños de archivos para todos los archivos", + "Error encountered while calling idf_size.py": "Error encontrado al llamar a idf_size.py", + "Select the available serial port where your device is connected.": "Seleccione el puerto serie disponible donde está conectado su dispositivo.", + "Port has been updated to ": "El puerto ha sido actualizado a ", + "SDK Configuration editor": "Editor de configuración del SDK", + "Save": "Ahorrar", + "Discard": "Desechar", + "Reset": "Reiniciar", + "Changes in SDK Configuration editor have not been saved. Would you like to save them?": "Los cambios en el editor de configuración del SDK no se han guardado. ", + "Return to SDK Configuration editor": "Volver al editor de configuración del SDK", + "This action will delete your project sdkconfig. Continue?": "Esta acción eliminará su proyecto sdkconfig. ", + "Saved changes in SDK Configuration editor": "Cambios guardados en el editor de configuración del SDK", + "Discarded changes in SDK Configuration editor": "Cambios descartados en el editor de configuración del SDK", + "Error encountered while adding dependency {dependency} to the component \"{component}\"": "Se encontró un error al agregar la dependencia {dependencia} al componente \"{component}\"", + "Error encountered while creating project from example \"{example}\"": "Se encontró un error al crear un proyecto a partir del ejemplo \"{ejemplo}\"", + "Wait for ESP-IDF build or flash to finish": "Espere a que finalice la compilación o la actualización de ESP-IDF" +} diff --git a/l10n/bundle.l10n.pt.json b/l10n/bundle.l10n.pt.json new file mode 100644 index 000000000..5abfb0e87 --- /dev/null +++ b/l10n/bundle.l10n.pt.json @@ -0,0 +1,170 @@ +{ + "ESP-IDF: Current Project": "ESP-IDF: Projeto Atual", + "ESP-IDF: Open IDF Component File": "ESP-IDF: Abrir arquivo de componente IDF", + " has been updated": " Tem sido atualizado", + "File project_description.json cannot be found.": "O arquivo project_description.json não pode ser encontrado.", + "Open a folder first.": "Abra uma pasta primeiro.", + "Selected command is not available in WebIDE": "O comando selecionado não está disponível no WebIDE", + "Use current folder: {workspace}": "Use a pasta atual: {workspace}", + "Choose a container directory...": "Escolha um diretório de contêiner...", + "Select a directory to use": "Selecione um diretório para usar", + "Select a template to use": "Selecione um modelo para usar", + "Template folders has been generated.": "Pastas de modelo foram geradas.", + "There is no build directory to clean, exiting!": "Não há diretório de construção para limpar, saindo!", + "Trying to delete the build folder. Closing existing SDK Configuration editor process...": "Tentando excluir a pasta build. ", + "There is no CMakeCache.txt. Please try to delete the build directory manually.": "Não há CMakeCache.txt. ", + "There is a build or flash task running. Wait for it to finish or cancel them before clean.": "Há uma tarefa de compilação ou flash em execução. ", + "Build directory has been deleted.": "O diretório de compilação foi excluído.", + "ESP-IDF: Erasing device flash memory (erase_flash)": "ESP-IDF: Apagando a memória flash do dispositivo (erase_flash)", + "ESP-IDF: Arduino ESP32 as ESP-IDF component": "ESP-IDF: Arduino ESP32 como componente ESP-IDF", + "{arduinoDirPath} already exists.": "{arduinoDirPath} já existe.", + "ESP-Matter is not available for Windows.": "ESP-Matter não está disponível para Windows.", + "Pick Workspace Folder to which settings should be applied": "Escolha a pasta do espaço de trabalho à qual as configurações devem ser aplicadas", + "Enter ESP_MATTER_DEVICE_PATH path": "Insira o caminho ESP_MATTER_DEVICE_PATH", + "ESP_MATTER_DEVICE_PATH has been set in idf.customExtraVars configuration setting.": "ESP_MATTER_DEVICE_PATH foi definido na configuração idf.customExtraVars.", + "Select your current folder": "Selecione sua pasta atual", + "No workspace selected.": "Nenhum espaço de trabalho selecionado.", + "Show no notifications and do not focus tasks output.": "Não mostre notificações e não concentre a saída das tarefas.", + "Show notifications but do not focus tasks output.": "Mostre notificações, mas não concentre a saída das tarefas.", + "Do not show notifications but focus tasks output.": "Não mostre notificações, mas concentre a saída das tarefas.", + "Show notifications and focus tasks output.": "Mostre notificações e concentre a saída das tarefas.", + "Select the output and notification mode": "Selecione o modo de saída e notificação", + "Notification mode has changed to {mode}": "O modo de notificação mudou para {mode}", + "Select framework to define its path:": "Selecione a estrutura para definir seu caminho:", + "IDF_PATH Path": "Caminho IDF_PATH", + "Set IDF_TOOLS_PATH Path": "Definir caminho IDF_TOOLS_PATH", + "Set paths to append to PATH": "Defina caminhos para anexar ao PATH", + "No option selected.": "Nenhuma opção selecionada.", + "Enter IDF_PATH Path": "Insira o caminho IDF_PATH", + "Enter IDF_TOOLS_PATH path": "Insira o caminho IDF_TOOLS_PATH", + "Enter extra paths to append to PATH": "Insira caminhos extras para anexar ao PATH", + "No path has been updated": "Nenhum caminho foi atualizado", + "No project configuration found": "Nenhuma configuração de projeto encontrada", + "Select configuration to use:": "Selecione a configuração a ser usada:", + "ESP-IDF: Select Project Configuration": "ESP-IDF: Selecione a configuração do projeto", + "Select option to define its path:": "Selecione a opção para definir seu caminho:", + "Relative paths to OpenOCD Scripts directory separated by comma(,)": "Caminhos relativos para o diretório OpenOCD Scripts separados por vírgula (,)", + "Enter device port Path": "Insira o caminho da porta do dispositivo", + "Enter flash baud rate": "Insira a taxa de transmissão do flash", + "Enter monitor baud rate": "Insira a taxa de transmissão do monitor", + "Enter OpenOCD Configuration File Paths list": "Insira a lista de caminhos de arquivos de configuração do OpenOCD", + "No device parameter has been updated": "Nenhum parâmetro do dispositivo foi atualizado", + "Installing ESP-IDF extension Python Requirements...": "Instalando a extensão ESP-IDF Requisitos do Python...", + "ESP-IDF Python Requirements has been installed": "Os requisitos ESP-IDF Python foram instalados", + "Installing ESP-Matter Python Requirements...": "Instalando os requisitos do ESP-Matter Python...", + "ESP-Matter Python Requirements have been installed": "Os requisitos do ESP-Matter Python foram instalados", + "PyTest python packages are already installed.": "Os pacotes PyTest python já estão instalados.", + "ESP-IDF: Building unit test app and flashing": "ESP-IDF: Construindo aplicativo de teste de unidade e flashing", + "ESP-IDF vscode files have been added to the project.": "Arquivos ESP-IDF vscode foram adicionados ao projeto.", + "ESP-IDF container files have been added to the project.": "Arquivos contêiner ESP-IDF foram adicionados ao projeto.", + "Enter ESP-IDF component name": "Insira o nome do componente ESP-IDF", + "The ESP-IDF component {componentName} has been created": "O componente ESP-IDF {componentName} foi criado", + "ESP-IDF: SDK Configuration Editor": "ESP-IDF: Editor de configuração do SDK", + "ESP-IDF: Save Default Configuration (save-defconfig)": "ESP-IDF: Salvar configuração padrão (save-defconfig)", + "Enter target name (IDF_TARGET)": "Insira o nome do destino (IDF_TARGET)", + "ESP-IDF: Configure ESP-IDF extension": "ESP-IDF: Configurar extensão ESP-IDF", + "No ESP-IDF frameworks found": "Nenhuma estrutura ESP-IDF encontrada", + "Select framework to use": "Selecione a estrutura a ser usada", + "No framework selected to load examples.": "Nenhuma estrutura selecionada para carregar exemplos.", + "ESP-IDF: Loading examples": "ESP-IDF: Carregando exemplos", + "Cannot call this command directly, right click on any CMakeLists.txt file!": "Não é possível chamar este comando diretamente, clique com o botão direito em qualquer arquivo CMakeLists.txt!", + "Enter comma separated configuration files": "Insira arquivos de configuração separados por vírgula", + "Open a workspace or folder first.": "Abra um espaço de trabalho ou pasta primeiro.", + "OpenOCD Board configuration files are updated.": "Os arquivos de configuração do OpenOCD Board são atualizados.", + "{srcFolder} is not an ESP-IDF project.": "{srcFolder} não é um projeto ESP-IDF.", + "Enter project name": "Digite o nome do projeto", + "{destFolder} already exists.": "{destFolder} já existe.", + "ESP-IDF Project has been imported": "O projeto ESP-IDF foi importado", + "Merging binaries for flashing": "Mesclando binários para piscar", + "Select a partition to use": "Selecione uma partição para usar", + "Enter custom partition table offset": "Insira o deslocamento da tabela de partição personalizada", + "Flash binary to this partition": "Flash binário para esta partição", + "Open partition table editor": "Abra o editor de tabela de partição", + "Select an action to use": "Selecione uma ação para usar", + "ESP-IDF: Preparing ESP-IDF extension report": "ESP-IDF: Preparando relatório de extensão ESP-IDF", + "Extension configuration report has been copied to clipboard with errors": "O relatório de configuração da extensão foi copiado para a área de transferência com erros", + "Cannot call this command directly, click on any Trace to view its report!": "Não é possível chamar este comando diretamente, clique em qualquer Trace para visualizar seu relatório!", + "Do you want to view Heap Trace plot or System View Trace": "Você deseja visualizar o gráfico de rastreamento de heap ou o rastreamento do System View", + "Show System View Tracing Plot (will open a webview window)": "Mostrar gráfico de rastreamento do System View (abrirá uma janela de visualização na web)", + "Open Old Heap/App Trace Panel": "Abra o painel antigo de heap/rastreamento de aplicativo", + "Already logged-in, please sign-out first": "Já logado, saia primeiro", + "ESP-IDF: Please wait checking with Rainmaker Cloud": "ESP-IDF: Aguarde a verificação com Rainmaker Cloud", + "Failed to login with Rainmaker Cloud, double check your id and password": "Falha ao fazer login com Rainmaker Cloud, verifique seu ID e senha", + "Would you like to unlink your ESP Rainmaker cloud account?": "Gostaria de desvincular sua conta na nuvem ESP Rainmaker?", + "Would you like to delete this node from your ESP Rainmaker account?": "Gostaria de excluir este nó da sua conta ESP Rainmaker?", + "ESP-IDF: Deleting node from your rainmaker account": "ESP-IDF: Excluindo nó da sua conta do Rainmaker", + "Failed to delete node, maybe the node is already marked for delete, please try again after sometime": "Falha ao excluir o nó, talvez o nó já esteja marcado para exclusão. Tente novamente depois de algum tempo", + "Coming Soon!! until then you can add nodes using mobile app": "Em breve!! ", + "Failed to update the param, please try once more": "Falha ao atualizar o parâmetro, tente mais uma vez", + "Failed to update param because, ": "Falha ao atualizar o parâmetro porque, ", + "Unable to execute the command: espIdf.selectPort": "Não foi possível executar o comando: espIdf.selectPort", + "Select a serial port before flashing": "Selecione uma porta serial antes de piscar", + "Python binary path is not defined": "O caminho binário do Python não está definido", + " is not defined": " não está definido", + "ESP-IDF: Core-dump detected, please wait while we parse the data received": "ESP-IDF: Core-dump detectado, aguarde enquanto analisamos os dados recebidos", + "Successfully created ELF file from the info received (espcoredump.py)": "Arquivo ELF criado com sucesso a partir das informações recebidas (espcoredump.py)", + "Failed to launch debugger for postmortem": "Falha ao iniciar o depurador para postmortem", + "Failed to generate the ELF file from the info received, please close the core-dump monitor terminal manually": "Falha ao gerar o arquivo ELF a partir das informações recebidas, feche o terminal do monitor core-dump manualmente", + "Your port {wsPort} is not available, use (idf.wssPort) to change to different port": "Sua porta {wsPort} não está disponível, use (idf.wssPort) para mudar para uma porta diferente", + "Partition table editor requires sdkconfig file. Build the project?": "O editor de tabela de partição requer o arquivo sdkconfig. ", + "Custom Partition Table not enabled for the project": "Tabela de partição personalizada não habilitada para o projeto", + "Empty CONFIG_PARTITION_TABLE_CUSTOM_FILENAME, please add a csv file to generate partition table": "CONFIG_PARTITION_TABLE_CUSTOM_FILENAME vazio, adicione um arquivo csv para gerar a tabela de partição", + "Partition Table File {partitionTableFilePath} doesn't exists, we are creating an empty file there": "O arquivo da tabela de partição {partitionTableFilePath} não existe, estamos criando um arquivo vazio lá", + "ESP-IDF: Getting eFuse summary for your chip": "ESP-IDF: Obtendo o resumo do eFuse para seu chip", + "Failed to get the eFuse Summary from the chip, please make sure you have selected a valid port": "Falha ao obter o resumo do eFuse do chip, certifique-se de ter selecionado uma porta válida", + "Ninja build summary found an error": "O resumo da compilação Ninja encontrou um erro", + "ESP-IDF: Create SBOM summary": "ESP-IDF: Criar resumo SBOM", + "ESP-IDF: Please wait mapping your rainmaker cloud account with the VS Code Extension, this could take a little while": "ESP-IDF: Aguarde mapeando sua conta do Rainmaker Cloud com a extensão VS Code, isso pode demorar um pouco", + "Rainmaker Cloud is connected successfully (via OAuth)!": "Rainmaker Cloud foi conectado com sucesso (via OAuth)!", + "Failed to sign-in with Rainmaker (via OAuth)": "Falha ao fazer login com Rainmaker (via OAuth)", + "Use current ESP-IDF {espIdfPath}": "Usar ESP-IDF atual {espIdfPath}", + "Use current ESP-ADF {espAdfPath}": "Usar ESP-ADF atual {espAdfPath}", + "Use current ESP-MDF {espMdfPath}": "Use ESP-MDF atual {espMdfPath}", + "Use current ESP-Matter {matterPathDir}": "Use ESP-Matter atual {matterPathDir}", + "Use current ESP-Rainmaker {rainmakerPathDir}": "Use o ESP-Rainmaker atual {rainmakerPathDir}", + "Use current ESP-HomeKit-SDK {espHomeKitPathDir}": "Use o ESP-HomeKit-SDK atual {espHomeKitPathDir}", + "Enter non empty string": "Insira uma string não vazia", + "Enter a valid integer": "Insira um número inteiro válido", + "ESP-IDF: Select Port to Use (COM, tty, usbserial)": "ESP-IDF: Selecione a porta a ser usada (COM, tty, usbserial)", + "ESP-IDF: Set Espressif Device Target": "ESP-IDF: Definir destino do dispositivo Espressif", + "ESP-IDF: SDK Configuration Editor (menuconfig)": "ESP-IDF: Editor de configuração do SDK (menuconfig)", + "ESP-IDF: Full Clean": "ESP-IDF: Limpeza Completa", + "ESP-IDF: Build Project": "ESP-IDF: Projeto de construção", + "ESP-IDF: Select Flash Method": "ESP-IDF: Selecione o método Flash", + "ESP-IDF: Flash Device": "ESP-IDF: Dispositivo Flash", + "ESP-IDF: Monitor Device": "ESP-IDF: Dispositivo Monitor", + "ESP-IDF: Build, Flash and Monitor": "ESP-IDF: construir, atualizar e monitorar", + "ESP-IDF: Open ESP-IDF Terminal": "ESP-IDF: Terminal ESP-IDF aberto", + "ESP-IDF: Execute Custom Task": "ESP-IDF: Executar tarefa personalizada", + "QEMU is not running. Run first.": "QEMU não está em execução. ", + "ESP-IDF: Building project": "ESP-IDF: Projeto de construção", + "Select flash method, you can modify the choice later from 'settings.json' (idf.flashType)": "Selecione o método flash, você pode modificar a escolha posteriormente em 'settings.json' (idf.flashType)", + "Current app binary is different from your project. Flash first.": "O binário atual do aplicativo é diferente do seu projeto. ", + "ESP-IDF Welcome": "Bem-vindo ESP-IDF", + "ESP-IDF Setup": "Configuração ESP-IDF", + "ESP-IDF Project Configuration": "Configuração do projeto ESP-IDF", + "New Project": "Novo projeto", + "Wait for ESP-IDF task to finish": "Aguarde a conclusão da tarefa ESP-IDF", + "{targetDesc} Examples": "{targetDesc} Exemplos", + "No README.md available for this project.": "Nenhum README.md disponível para este projeto.", + "Cannot proceed with size analysis on a canceled context": "Não é possível prosseguir com a análise de tamanho em um contexto cancelado", + "Build is required for a size analysis, build your project first": "A construção é necessária para uma análise de tamanho, construa seu projeto primeiro", + "Gathering Overview": "Visão geral da coleta", + "Gathering Archive List": "Reunindo lista de arquivos", + "Calculating File Sizes for all the archives": "Calculando tamanhos de arquivo para todos os arquivos", + "Error encountered while calling idf_size.py": "Erro encontrado ao chamar idf_size.py", + "Select the available serial port where your device is connected.": "Selecione a porta serial disponível onde seu dispositivo está conectado.", + "Port has been updated to ": "A porta foi atualizada para ", + "SDK Configuration editor": "Editor de configuração do SDK", + "Save": "Salvar", + "Discard": "Descartar", + "Reset": "Reiniciar", + "Changes in SDK Configuration editor have not been saved. Would you like to save them?": "As alterações no editor de configuração do SDK não foram salvas. ", + "Return to SDK Configuration editor": "Retornar ao editor de configuração do SDK", + "This action will delete your project sdkconfig. Continue?": "Esta ação excluirá seu projeto sdkconfig. ", + "Saved changes in SDK Configuration editor": "Alterações salvas no editor de configuração do SDK", + "Discarded changes in SDK Configuration editor": "Alterações descartadas no editor de configuração do SDK", + "Error encountered while adding dependency {dependency} to the component \"{component}\"": "Erro encontrado ao adicionar a dependência {dependency} ao componente \"{component}\"", + "Error encountered while creating project from example \"{example}\"": "Erro encontrado ao criar o projeto do exemplo \"{example}\"", + "Wait for ESP-IDF build or flash to finish": "Aguarde a conclusão da compilação ou flash do ESP-IDF" +} diff --git a/l10n/bundle.l10n.ru.json b/l10n/bundle.l10n.ru.json new file mode 100644 index 000000000..433743b3d --- /dev/null +++ b/l10n/bundle.l10n.ru.json @@ -0,0 +1,170 @@ +{ + "ESP-IDF: Current Project": "ESP-IDF: текущий проект", + "ESP-IDF: Open IDF Component File": "ESP-IDF: открыть файл компонента IDF", + " has been updated": " был обновлен", + "File project_description.json cannot be found.": "Файл project_description.json не найден.", + "Open a folder first.": "Сначала откройте папку.", + "Selected command is not available in WebIDE": "Выбранная команда недоступна в WebIDE.", + "Use current folder: {workspace}": "Использовать текущую папку: {workspace}", + "Choose a container directory...": "Выберите каталог контейнера...", + "Select a directory to use": "Выберите каталог для использования", + "Select a template to use": "Выберите шаблон для использования", + "Template folders has been generated.": "Папки шаблонов созданы.", + "There is no build directory to clean, exiting!": "Нет каталога сборки, который нужно очистить, выход!", + "Trying to delete the build folder. Closing existing SDK Configuration editor process...": "Пытаюсь удалить папку сборки. ", + "There is no CMakeCache.txt. Please try to delete the build directory manually.": "CMakeCache.txt отсутствует. ", + "There is a build or flash task running. Wait for it to finish or cancel them before clean.": "Выполняется задача сборки или прошивки. ", + "Build directory has been deleted.": "Каталог сборки удален.", + "ESP-IDF: Erasing device flash memory (erase_flash)": "ESP-IDF: очистка флэш-памяти устройства (erase_flash)", + "ESP-IDF: Arduino ESP32 as ESP-IDF component": "ESP-IDF: Arduino ESP32 как компонент ESP-IDF.", + "{arduinoDirPath} already exists.": "{arduinoDirPath} уже существует.", + "ESP-Matter is not available for Windows.": "ESP-Matter недоступен для Windows.", + "Pick Workspace Folder to which settings should be applied": "Выберите папку рабочей области, к которой следует применить настройки.", + "Enter ESP_MATTER_DEVICE_PATH path": "Введите путь ESP_MATTER_DEVICE_PATH", + "ESP_MATTER_DEVICE_PATH has been set in idf.customExtraVars configuration setting.": "ESP_MATTER_DEVICE_PATH установлен в настройке конфигурации idf.customExtraVars.", + "Select your current folder": "Выберите текущую папку", + "No workspace selected.": "Рабочая область не выбрана.", + "Show no notifications and do not focus tasks output.": "Не показывать уведомления и не фокусировать вывод задач.", + "Show notifications but do not focus tasks output.": "Показывать уведомления, но не фокусировать вывод задач.", + "Do not show notifications but focus tasks output.": "Не показывать уведомления, но сосредоточить вывод задач.", + "Show notifications and focus tasks output.": "Показывать уведомления и фокусировать вывод задач.", + "Select the output and notification mode": "Выберите режим вывода и уведомления", + "Notification mode has changed to {mode}": "Режим уведомлений изменен на {mode}.", + "Select framework to define its path:": "Выберите структуру, чтобы определить ее путь:", + "IDF_PATH Path": "IDF_PATH Путь", + "Set IDF_TOOLS_PATH Path": "Установить путь IDF_TOOLS_PATH", + "Set paths to append to PATH": "Установите пути для добавления в PATH", + "No option selected.": "Опция не выбрана.", + "Enter IDF_PATH Path": "Введите путь IDF_PATH", + "Enter IDF_TOOLS_PATH path": "Введите путь IDF_TOOLS_PATH", + "Enter extra paths to append to PATH": "Введите дополнительные пути для добавления к PATH.", + "No path has been updated": "Ни один путь не был обновлен", + "No project configuration found": "Конфигурация проекта не найдена", + "Select configuration to use:": "Выберите конфигурацию для использования:", + "ESP-IDF: Select Project Configuration": "ESP-IDF: выберите конфигурацию проекта", + "Select option to define its path:": "Выберите опцию, чтобы определить путь:", + "Relative paths to OpenOCD Scripts directory separated by comma(,)": "Относительные пути к каталогу сценариев OpenOCD, разделенные запятой (,)", + "Enter device port Path": "Введите путь к порту устройства", + "Enter flash baud rate": "Введите скорость передачи флэш-памяти", + "Enter monitor baud rate": "Введите скорость передачи данных монитора", + "Enter OpenOCD Configuration File Paths list": "Войдите в список путей к файлам конфигурации OpenOCD", + "No device parameter has been updated": "Ни один параметр устройства не был обновлен", + "Installing ESP-IDF extension Python Requirements...": "Установка расширения ESP-IDF Требования Python...", + "ESP-IDF Python Requirements has been installed": "Требования ESP-IDF Python установлены.", + "Installing ESP-Matter Python Requirements...": "Установка требований ESP-Matter Python...", + "ESP-Matter Python Requirements have been installed": "Требования ESP-Matter Python установлены.", + "PyTest python packages are already installed.": "Пакеты Python PyTest уже установлены.", + "ESP-IDF: Building unit test app and flashing": "ESP-IDF: создание приложения модульного тестирования и перепрошивка", + "ESP-IDF vscode files have been added to the project.": "В проект добавлены файлы ESP-IDF vscode.", + "ESP-IDF container files have been added to the project.": "В проект добавлены файлы-контейнеры ESP-IDF.", + "Enter ESP-IDF component name": "Введите имя компонента ESP-IDF", + "The ESP-IDF component {componentName} has been created": "Компонент ESP-IDF {comComponentName} создан.", + "ESP-IDF: SDK Configuration Editor": "ESP-IDF: Редактор конфигурации SDK", + "ESP-IDF: Save Default Configuration (save-defconfig)": "ESP-IDF: сохранить конфигурацию по умолчанию (save-defconfig)", + "Enter target name (IDF_TARGET)": "Введите имя цели (IDF_TARGET)", + "ESP-IDF: Configure ESP-IDF extension": "ESP-IDF: настройка расширения ESP-IDF.", + "No ESP-IDF frameworks found": "Фреймворки ESP-IDF не найдены", + "Select framework to use": "Выберите платформу для использования", + "No framework selected to load examples.": "Для загрузки примеров не выбрана платформа.", + "ESP-IDF: Loading examples": "ESP-IDF: Загрузка примеров", + "Cannot call this command directly, right click on any CMakeLists.txt file!": "Невозможно вызвать эту команду напрямую. Щелкните правой кнопкой мыши любой файл CMakeLists.txt!", + "Enter comma separated configuration files": "Введите файлы конфигурации, разделенные запятыми.", + "Open a workspace or folder first.": "Сначала откройте рабочую область или папку.", + "OpenOCD Board configuration files are updated.": "Файлы конфигурации платы OpenOCD обновлены.", + "{srcFolder} is not an ESP-IDF project.": "{srcFolder} не является проектом ESP-IDF.", + "Enter project name": "Введите название проекта", + "{destFolder} already exists.": "{destFolder} уже существует.", + "ESP-IDF Project has been imported": "Проект ESP-IDF импортирован.", + "Merging binaries for flashing": "Объединение бинарников для перепрошивки", + "Select a partition to use": "Выберите раздел для использования", + "Enter custom partition table offset": "Введите пользовательское смещение таблицы разделов", + "Flash binary to this partition": "Записать двоичный файл в этот раздел", + "Open partition table editor": "Открыть редактор таблицы разделов", + "Select an action to use": "Выберите действие для использования", + "ESP-IDF: Preparing ESP-IDF extension report": "ESP-IDF: подготовка отчета о расширении ESP-IDF.", + "Extension configuration report has been copied to clipboard with errors": "Отчет о конфигурации расширения скопирован в буфер обмена с ошибками.", + "Cannot call this command directly, click on any Trace to view its report!": "Невозможно вызвать эту команду напрямую. Щелкните любую трассировку, чтобы просмотреть ее отчет!", + "Do you want to view Heap Trace plot or System View Trace": "Вы хотите просмотреть график Heap Trace или System View Trace?", + "Show System View Tracing Plot (will open a webview window)": "Показать график трассировки системного представления (откроется окно веб-просмотра)", + "Open Old Heap/App Trace Panel": "Открыть панель трассировки старой кучи/приложения", + "Already logged-in, please sign-out first": "Вы уже вошли в систему, пожалуйста, сначала выйдите из системы", + "ESP-IDF: Please wait checking with Rainmaker Cloud": "ESP-IDF: Пожалуйста, подождите проверки с помощью Rainmaker Cloud.", + "Failed to login with Rainmaker Cloud, double check your id and password": "Не удалось войти в Rainmaker Cloud. Проверьте свой идентификатор и пароль.", + "Would you like to unlink your ESP Rainmaker cloud account?": "Хотите отсоединить свою облачную учетную запись ESP Rainmaker?", + "Would you like to delete this node from your ESP Rainmaker account?": "Хотите удалить этот узел из своей учетной записи ESP Rainmaker?", + "ESP-IDF: Deleting node from your rainmaker account": "ESP-IDF: удаление узла из вашей учетной записи Rainmaker", + "Failed to delete node, maybe the node is already marked for delete, please try again after sometime": "Не удалось удалить узел. Возможно, узел уже помечен для удаления. Повторите попытку через некоторое время.", + "Coming Soon!! until then you can add nodes using mobile app": "Вскоре!! ", + "Failed to update the param, please try once more": "Не удалось обновить параметр. Повторите попытку.", + "Failed to update param because, ": "Не удалось обновить параметр, поскольку ", + "Unable to execute the command: espIdf.selectPort": "Невозможно выполнить команду: espIdf.selectPort", + "Select a serial port before flashing": "Перед прошивкой выберите последовательный порт", + "Python binary path is not defined": "Двоичный путь Python не определен", + " is not defined": " не определен", + "ESP-IDF: Core-dump detected, please wait while we parse the data received": "ESP-IDF: обнаружен дамп ядра, подождите, пока мы анализируем полученные данные.", + "Successfully created ELF file from the info received (espcoredump.py)": "Успешно создан файл ELF на основе полученной информации (espcoredump.py).", + "Failed to launch debugger for postmortem": "Не удалось запустить отладчик для вскрытия.", + "Failed to generate the ELF file from the info received, please close the core-dump monitor terminal manually": "Не удалось создать файл ELF на основе полученной информации. Закройте терминал монитора дампа ядра вручную.", + "Your port {wsPort} is not available, use (idf.wssPort) to change to different port": "Ваш порт {wsPort} недоступен. Используйте (idf.wssPort), чтобы переключиться на другой порт.", + "Partition table editor requires sdkconfig file. Build the project?": "Редактору таблицы разделов требуется файл sdkconfig. ", + "Custom Partition Table not enabled for the project": "Пользовательская таблица разделов не включена для проекта", + "Empty CONFIG_PARTITION_TABLE_CUSTOM_FILENAME, please add a csv file to generate partition table": "Пустой CONFIG_PARTITION_TABLE_CUSTOM_FILENAME. Добавьте файл CSV для создания таблицы разделов.", + "Partition Table File {partitionTableFilePath} doesn't exists, we are creating an empty file there": "Файл таблицы разделов {partitionTableFilePath} не существует, мы создаем там пустой файл.", + "ESP-IDF: Getting eFuse summary for your chip": "ESP-IDF: получение сводки eFuse для вашего чипа", + "Failed to get the eFuse Summary from the chip, please make sure you have selected a valid port": "Не удалось получить сводку eFuse от чипа. Убедитесь, что вы выбрали правильный порт.", + "Ninja build summary found an error": "В сводке сборки Ninja обнаружена ошибка", + "ESP-IDF: Create SBOM summary": "ESP-IDF: создание сводки SBOM", + "ESP-IDF: Please wait mapping your rainmaker cloud account with the VS Code Extension, this could take a little while": "ESP-IDF: подождите, сопоставьте свою облачную учетную запись Rainmaker с расширением VS Code Extension, это может занять некоторое время.", + "Rainmaker Cloud is connected successfully (via OAuth)!": "Rainmaker Cloud успешно подключен (через OAuth)!", + "Failed to sign-in with Rainmaker (via OAuth)": "Не удалось войти в систему с помощью Rainmaker (через OAuth).", + "Use current ESP-IDF {espIdfPath}": "Использовать текущий ESP-IDF {espIdfPath}", + "Use current ESP-ADF {espAdfPath}": "Использовать текущий ESP-ADF {espAdfPath}", + "Use current ESP-MDF {espMdfPath}": "Использовать текущий ESP-MDF {espMdfPath}", + "Use current ESP-Matter {matterPathDir}": "Использовать текущий ESP-Matter {matterPathDir}", + "Use current ESP-Rainmaker {rainmakerPathDir}": "Используйте текущую версию ESP-Rainmaker {rainmakerPathDir}.", + "Use current ESP-HomeKit-SDK {espHomeKitPathDir}": "Использовать текущий ESP-HomeKit-SDK {espHomeKitPathDir}", + "Enter non empty string": "Введите непустую строку", + "Enter a valid integer": "Введите допустимое целое число", + "ESP-IDF: Select Port to Use (COM, tty, usbserial)": "ESP-IDF: выберите порт для использования (COM, tty, usbserial)", + "ESP-IDF: Set Espressif Device Target": "ESP-IDF: установка целевого устройства Espressif", + "ESP-IDF: SDK Configuration Editor (menuconfig)": "ESP-IDF: редактор конфигурации SDK (менюконфигурация)", + "ESP-IDF: Full Clean": "ESP-IDF: Полная очистка", + "ESP-IDF: Build Project": "ESP-IDF: проект сборки", + "ESP-IDF: Select Flash Method": "ESP-IDF: выберите метод прошивки", + "ESP-IDF: Flash Device": "ESP-IDF: флэш-устройство", + "ESP-IDF: Monitor Device": "ESP-IDF: Устройство мониторинга", + "ESP-IDF: Build, Flash and Monitor": "ESP-IDF: сборка, прошивка и мониторинг", + "ESP-IDF: Open ESP-IDF Terminal": "ESP-IDF: открыть терминал ESP-IDF.", + "ESP-IDF: Execute Custom Task": "ESP-IDF: выполнить пользовательскую задачу", + "QEMU is not running. Run first.": "QEMU не работает. ", + "ESP-IDF: Building project": "ESP-IDF: Строительный проект", + "Select flash method, you can modify the choice later from 'settings.json' (idf.flashType)": "Выберите метод прошивки. Вы можете изменить выбор позже в «settings.json» (idf.flashType).", + "Current app binary is different from your project. Flash first.": "Текущий двоичный файл приложения отличается от вашего проекта. ", + "ESP-IDF Welcome": "ESP-IDF Добро пожаловать", + "ESP-IDF Setup": "Настройка ESP-IDF", + "ESP-IDF Project Configuration": "Конфигурация проекта ESP-IDF", + "New Project": "Новый проект", + "Wait for ESP-IDF task to finish": "Подождите завершения задачи ESP-IDF.", + "{targetDesc} Examples": "{targetDesc} Примеры", + "No README.md available for this project.": "Для этого проекта нет файла README.md.", + "Cannot proceed with size analysis on a canceled context": "Невозможно продолжить анализ размера в отмененном контексте.", + "Build is required for a size analysis, build your project first": "Для анализа размера требуется сборка. Сначала создайте свой проект.", + "Gathering Overview": "Обзор сбора", + "Gathering Archive List": "Сбор списка архивов", + "Calculating File Sizes for all the archives": "Расчет размеров файлов для всех архивов", + "Error encountered while calling idf_size.py": "Ошибка при вызове idf_size.py.", + "Select the available serial port where your device is connected.": "Выберите доступный последовательный порт, к которому подключено ваше устройство.", + "Port has been updated to ": "Порт обновлен до ", + "SDK Configuration editor": "Редактор конфигурации SDK", + "Save": "Сохранять", + "Discard": "Отказаться", + "Reset": "Перезагрузить", + "Changes in SDK Configuration editor have not been saved. Would you like to save them?": "Изменения в редакторе конфигурации SDK не сохранены. ", + "Return to SDK Configuration editor": "Вернуться в редактор конфигурации SDK", + "This action will delete your project sdkconfig. Continue?": "Это действие приведет к удалению вашего проекта sdkconfig. ", + "Saved changes in SDK Configuration editor": "Сохраненные изменения в редакторе конфигурации SDK.", + "Discarded changes in SDK Configuration editor": "Отменены изменения в редакторе конфигурации SDK.", + "Error encountered while adding dependency {dependency} to the component \"{component}\"": "Произошла ошибка при добавлении зависимости {dependent} к компоненту \"{comment}\".", + "Error encountered while creating project from example \"{example}\"": "Ошибка при создании проекта из примера \"{example}\".", + "Wait for ESP-IDF build or flash to finish": "Подождите завершения сборки или прошивки ESP-IDF." +} diff --git a/l10n/bundle.l10n.zh-CN.json b/l10n/bundle.l10n.zh-CN.json new file mode 100644 index 000000000..4c6fb5222 --- /dev/null +++ b/l10n/bundle.l10n.zh-CN.json @@ -0,0 +1,170 @@ +{ + "ESP-IDF: Current Project": "ESP-IDF:当前项目", + "ESP-IDF: Open IDF Component File": "ESP-IDF:打开 IDF 组件文件", + " has been updated": " 已经升级", + "File project_description.json cannot be found.": "找不到文件project_description.json。", + "Open a folder first.": "先打开一个文件夹。", + "Selected command is not available in WebIDE": "所选命令在 WebIDE 中不可用", + "Use current folder: {workspace}": "使用当前文件夹:{workspace}", + "Choose a container directory...": "选择容器目录...", + "Select a directory to use": "选择要使用的目录", + "Select a template to use": "选择要使用的模板", + "Template folders has been generated.": "模板文件夹已生成。", + "There is no build directory to clean, exiting!": "没有要清理的构建目录,退出!", + "Trying to delete the build folder. Closing existing SDK Configuration editor process...": "尝试删除构建文件夹。", + "There is no CMakeCache.txt. Please try to delete the build directory manually.": "没有 CMakeCache.txt。", + "There is a build or flash task running. Wait for it to finish or cancel them before clean.": "正在运行构建或刷新任务。", + "Build directory has been deleted.": "构建目录已被删除。", + "ESP-IDF: Erasing device flash memory (erase_flash)": "ESP-IDF:擦除设备闪存(erase_flash)", + "ESP-IDF: Arduino ESP32 as ESP-IDF component": "ESP-IDF:Arduino ESP32 作为 ESP-IDF 组件", + "{arduinoDirPath} already exists.": "{arduinoDirPath} 已经存在。", + "ESP-Matter is not available for Windows.": "ESP-Matter 不适用于 Windows。", + "Pick Workspace Folder to which settings should be applied": "选择应应用设置的工作区文件夹", + "Enter ESP_MATTER_DEVICE_PATH path": "输入 ESP_MATTER_DEVICE_PATH 路径", + "ESP_MATTER_DEVICE_PATH has been set in idf.customExtraVars configuration setting.": "ESP_MATTER_DEVICE_PATH 已在 idf.customExtraVars 配置设置中设置。", + "Select your current folder": "选择您当前的文件夹", + "No workspace selected.": "未选择工作区。", + "Show no notifications and do not focus tasks output.": "不显示通知并且不关注任务输出。", + "Show notifications but do not focus tasks output.": "显示通知但不关注任务输出。", + "Do not show notifications but focus tasks output.": "不显示通知,但集中任务输出。", + "Show notifications and focus tasks output.": "显示通知和焦点任务输出。", + "Select the output and notification mode": "选择输出和通知模式", + "Notification mode has changed to {mode}": "通知模式已更改为{mode}", + "Select framework to define its path:": "选择框架来定义其路径:", + "IDF_PATH Path": "IDF_PATH 路径", + "Set IDF_TOOLS_PATH Path": "设置 IDF_TOOLS_PATH 路径", + "Set paths to append to PATH": "设置附加到 PATH 的路径", + "No option selected.": "未选择任何选项。", + "Enter IDF_PATH Path": "输入 IDF_PATH 路径", + "Enter IDF_TOOLS_PATH path": "输入 IDF_TOOLS_PATH 路径", + "Enter extra paths to append to PATH": "输入附加到 PATH 的额外路径", + "No path has been updated": "没有更新路径", + "No project configuration found": "找不到项目配置", + "Select configuration to use:": "选择要使用的配置:", + "ESP-IDF: Select Project Configuration": "ESP-IDF:选择项目配置", + "Select option to define its path:": "选择定义其路径的选项:", + "Relative paths to OpenOCD Scripts directory separated by comma(,)": "OpenOCD 脚本目录的相对路径,以逗号 (,) 分隔", + "Enter device port Path": "输入设备端口路径", + "Enter flash baud rate": "输入闪存波特率", + "Enter monitor baud rate": "输入监视器波特率", + "Enter OpenOCD Configuration File Paths list": "输入 OpenOCD 配置文件路径列表", + "No device parameter has been updated": "没有更新设备参数", + "Installing ESP-IDF extension Python Requirements...": "安装 ESP-IDF 扩展 Python 要求...", + "ESP-IDF Python Requirements has been installed": "ESP-IDF Python 要求已安装", + "Installing ESP-Matter Python Requirements...": "安装 ESP-Matter Python 要求...", + "ESP-Matter Python Requirements have been installed": "ESP-Matter Python 要求已安装", + "PyTest python packages are already installed.": "PyTest python 包已安装。", + "ESP-IDF: Building unit test app and flashing": "ESP-IDF:构建单元测试应用程序并闪烁", + "ESP-IDF vscode files have been added to the project.": "ESP-IDF vscode 文件已添加到项目中。", + "ESP-IDF container files have been added to the project.": "ESP-IDF 容器文件已添加到项目中。", + "Enter ESP-IDF component name": "输入 ESP-IDF 组件名称", + "The ESP-IDF component {componentName} has been created": "ESP-IDF 组件 {componentName} 已创建", + "ESP-IDF: SDK Configuration Editor": "ESP-IDF:SDK 配置编辑器", + "ESP-IDF: Save Default Configuration (save-defconfig)": "ESP-IDF:保存默认配置 (save-defconfig)", + "Enter target name (IDF_TARGET)": "输入目标名称 (IDF_TARGET)", + "ESP-IDF: Configure ESP-IDF extension": "ESP-IDF:配置 ESP-IDF 扩展", + "No ESP-IDF frameworks found": "未找到 ESP-IDF 框架", + "Select framework to use": "选择要使用的框架", + "No framework selected to load examples.": "未选择任何框架来加载示例。", + "ESP-IDF: Loading examples": "ESP-IDF:加载示例", + "Cannot call this command directly, right click on any CMakeLists.txt file!": "不能直接调用此命令,右键单击任何 CMakeLists.txt 文件!", + "Enter comma separated configuration files": "输入逗号分隔的配置文件", + "Open a workspace or folder first.": "首先打开工作区或文件夹。", + "OpenOCD Board configuration files are updated.": "OpenOCD 板配置文件已更新。", + "{srcFolder} is not an ESP-IDF project.": "{srcFolder} 不是 ESP-IDF 项目。", + "Enter project name": "输入项目名称", + "{destFolder} already exists.": "{destFolder} 已存在。", + "ESP-IDF Project has been imported": "ESP-IDF 项目已导入", + "Merging binaries for flashing": "合并二进制文件以进行闪烁", + "Select a partition to use": "选择要使用的分区", + "Enter custom partition table offset": "输入自定义分区表偏移量", + "Flash binary to this partition": "将二进制文件闪存到该分区", + "Open partition table editor": "打开分区表编辑器", + "Select an action to use": "选择要使用的操作", + "ESP-IDF: Preparing ESP-IDF extension report": "ESP-IDF:准备 ESP-IDF 扩展报告", + "Extension configuration report has been copied to clipboard with errors": "扩展配置报告已复制到剪贴板,但有错误", + "Cannot call this command directly, click on any Trace to view its report!": "不能直接调用该命令,点击任意Trace即可查看其报告!", + "Do you want to view Heap Trace plot or System View Trace": "您想要查看堆跟踪图还是系统视图跟踪", + "Show System View Tracing Plot (will open a webview window)": "显示系统视图跟踪图(将打开网络视图窗口)", + "Open Old Heap/App Trace Panel": "打开旧堆/应用程序跟踪面板", + "Already logged-in, please sign-out first": "已登录,请先退出", + "ESP-IDF: Please wait checking with Rainmaker Cloud": "ESP-IDF:请等待与 Rainmaker Cloud 进行检查", + "Failed to login with Rainmaker Cloud, double check your id and password": "Rainmaker Cloud 登录失败,请仔细检查您的 ID 和密码", + "Would you like to unlink your ESP Rainmaker cloud account?": "您想取消 ESP Rainmaker 云帐户的链接吗?", + "Would you like to delete this node from your ESP Rainmaker account?": "您想从您的 ESP Rainmaker 帐户中删除此节点吗?", + "ESP-IDF: Deleting node from your rainmaker account": "ESP-IDF:从您的造雨者帐户中删除节点", + "Failed to delete node, maybe the node is already marked for delete, please try again after sometime": "删除节点失败,可能该节点已被标记为删除,请稍后重试", + "Coming Soon!! until then you can add nodes using mobile app": "即将推出!!", + "Failed to update the param, please try once more": "更新参数失败,请重试", + "Failed to update param because, ": "无法更新参数,因为, ", + "Unable to execute the command: espIdf.selectPort": "无法执行命令:espIdf.selectPort", + "Select a serial port before flashing": "刷机前选择串口", + "Python binary path is not defined": "Python 二进制路径未定义", + " is not defined": " 没有定义", + "ESP-IDF: Core-dump detected, please wait while we parse the data received": "ESP-IDF:检测到核心转储,请稍候,我们正在解析收到的数据", + "Successfully created ELF file from the info received (espcoredump.py)": "根据收到的信息成功创建 ELF 文件 (espcoredump.py)", + "Failed to launch debugger for postmortem": "无法启动调试器进行事后分析", + "Failed to generate the ELF file from the info received, please close the core-dump monitor terminal manually": "无法根据收到的信息生成 ELF 文件,请手动关闭 core-dump 监控终端", + "Your port {wsPort} is not available, use (idf.wssPort) to change to different port": "您的端口 {wsPort} 不可用,请使用 (idf.wssPort) 更改为其他端口", + "Partition table editor requires sdkconfig file. Build the project?": "分区表编辑器需要sdkconfig文件。", + "Custom Partition Table not enabled for the project": "未为项目启用自定义分区表", + "Empty CONFIG_PARTITION_TABLE_CUSTOM_FILENAME, please add a csv file to generate partition table": "CONFIG_PARTITION_TABLE_CUSTOM_FILENAME为空,请添加csv文件生成分区表", + "Partition Table File {partitionTableFilePath} doesn't exists, we are creating an empty file there": "分区表文件 {partitionTableFilePath} 不存在,我们正在那里创建一个空文件", + "ESP-IDF: Getting eFuse summary for your chip": "ESP-IDF:获取芯片的 eFuse 摘要", + "Failed to get the eFuse Summary from the chip, please make sure you have selected a valid port": "无法从芯片获取 eFuse 摘要,请确保您选择了有效的端口", + "Ninja build summary found an error": "Ninja 构建摘要发现错误", + "ESP-IDF: Create SBOM summary": "ESP-IDF:创建 SBOM 摘要", + "ESP-IDF: Please wait mapping your rainmaker cloud account with the VS Code Extension, this could take a little while": "ESP-IDF:请等待使用 VS Code 扩展映射您的造雨者云帐户,这可能需要一些时间", + "Rainmaker Cloud is connected successfully (via OAuth)!": "Rainmaker Cloud 已成功连接(通过 OAuth)!", + "Failed to sign-in with Rainmaker (via OAuth)": "无法使用 Rainmaker 登录(通过 OAuth)", + "Use current ESP-IDF {espIdfPath}": "使用当前 ESP-IDF {espIdfPath}", + "Use current ESP-ADF {espAdfPath}": "使用当前 ESP-ADF {espAdfPath}", + "Use current ESP-MDF {espMdfPath}": "使用当前 ESP-MDF {espMdfPath}", + "Use current ESP-Matter {matterPathDir}": "使用当前 ESP-Matter {matterPathDir}", + "Use current ESP-Rainmaker {rainmakerPathDir}": "使用当前的 ESP-Rainmaker {rainmakerPathDir}", + "Use current ESP-HomeKit-SDK {espHomeKitPathDir}": "使用当前的 ESP-HomeKit-SDK {espHomeKitPathDir}", + "Enter non empty string": "输入非空字符串", + "Enter a valid integer": "输入有效的整数", + "ESP-IDF: Select Port to Use (COM, tty, usbserial)": "ESP-IDF:选择要使用的端口(COM、tty、usbserial)", + "ESP-IDF: Set Espressif Device Target": "ESP-IDF:设置 Espressif 设备目标", + "ESP-IDF: SDK Configuration Editor (menuconfig)": "ESP-IDF:SDK 配置编辑器(menuconfig)", + "ESP-IDF: Full Clean": "ESP-IDF:完全清洁", + "ESP-IDF: Build Project": "ESP-IDF:构建项目", + "ESP-IDF: Select Flash Method": "ESP-IDF:选择闪存方法", + "ESP-IDF: Flash Device": "ESP-IDF:闪存设备", + "ESP-IDF: Monitor Device": "ESP-IDF:监控设备", + "ESP-IDF: Build, Flash and Monitor": "ESP-IDF:构建、刷新和监控", + "ESP-IDF: Open ESP-IDF Terminal": "ESP-IDF:打开 ESP-IDF 终端", + "ESP-IDF: Execute Custom Task": "ESP-IDF:执行自定义任务", + "QEMU is not running. Run first.": "QEMU 未运行。", + "ESP-IDF: Building project": "ESP-IDF:建设项目", + "Select flash method, you can modify the choice later from 'settings.json' (idf.flashType)": "选择 flash 方法,您可以稍后从“settings.json”(idf.flashType)修改选择", + "Current app binary is different from your project. Flash first.": "当前应用程序二进制文件与您的项目不同。", + "ESP-IDF Welcome": "ESP-IDF 欢迎", + "ESP-IDF Setup": "ESP-IDF 设置", + "ESP-IDF Project Configuration": "ESP-IDF 项目配置", + "New Project": "新项目", + "Wait for ESP-IDF task to finish": "等待 ESP-IDF 任务完成", + "{targetDesc} Examples": "{targetDesc} 示例", + "No README.md available for this project.": "该项目没有可用的 README.md。", + "Cannot proceed with size analysis on a canceled context": "无法对已取消的上下文继续进行大小分析", + "Build is required for a size analysis, build your project first": "规模分析需要构建,首先构建您的项目", + "Gathering Overview": "聚会概况", + "Gathering Archive List": "收集档案列表", + "Calculating File Sizes for all the archives": "计算所有档案的文件大小", + "Error encountered while calling idf_size.py": "调用 idf_size.py 时遇到错误", + "Select the available serial port where your device is connected.": "选择连接您的设备的可用串行端口。", + "Port has been updated to ": "端口已更新为 ", + "SDK Configuration editor": "SDK配置编辑器", + "Save": "节省", + "Discard": "丢弃", + "Reset": "重置", + "Changes in SDK Configuration editor have not been saved. Would you like to save them?": "SDK 配置编辑器中的更改尚未保存。", + "Return to SDK Configuration editor": "返回 SDK 配置编辑器", + "This action will delete your project sdkconfig. Continue?": "此操作将删除您的项目 sdkconfig。", + "Saved changes in SDK Configuration editor": "在 SDK 配置编辑器中保存的更改", + "Discarded changes in SDK Configuration editor": "SDK 配置编辑器中放弃的更改", + "Error encountered while adding dependency {dependency} to the component \"{component}\"": "将依赖项 {dependency} 添加到组件“{component}”时遇到错误", + "Error encountered while creating project from example \"{example}\"": "从示例“{example}”创建项目时遇到错误", + "Wait for ESP-IDF build or flash to finish": "等待 ESP-IDF 构建或刷新完成" +} diff --git a/package.json b/package.json index 847b6147a..832573b60 100644 --- a/package.json +++ b/package.json @@ -118,6 +118,7 @@ "workspaceContains:**/CMakeLists.txt" ], "main": "./dist/extension", + "l10n": "./l10n", "contributes": { "problemMatchers": [ { @@ -141,7 +142,7 @@ "activitybar": [ { "id": "idfViewController", - "title": "ESP-IDF: Explorer", + "title": "%viewContainer.title%", "icon": "media/esp.svg" } ] @@ -149,38 +150,38 @@ "views": { "debug": [ { - "name": "ESP-IDF: Peripheral", + "name": "%view.debug.peripheral%", "id": "espIdf.peripheralView" } ], "idfViewController": [ { "id": "idfCommands", - "name": "Commands" + "name": "%view.idf.idfCommands%" }, { "id": "idfSearchResults", - "name": "Documentation search results" + "name": "%view.idf.idfSearchResults%" }, { "id": "idfPartitionExplorer", - "name": "Device Partition Explorer" + "name": "%view.idf.idfPartitionExplorer%" }, { "id": "idfAppTracer", - "name": "Application Tracer" + "name": "%view.idf.idfAppTracer%" }, { "id": "idfAppTraceArchive", - "name": "Application Trace Archives" + "name": "%view.idf.idfAppTraceArchive%" }, { "id": "espRainmaker", - "name": "Rainmaker" + "name": "%view.idf.espRainmaker%" }, { - "name": "eFuse Explorer", - "id": "espEFuseExplorer" + "id": "espEFuseExplorer", + "name": "%view.idf.espEFuseExplorer%" } ], "explorer": [ @@ -193,15 +194,15 @@ "viewsWelcome": [ { "view": "idfSearchResults", - "contents": "On any opened file editor, select some text and right click and select ESP-IDF: Search in Documentation to get matching results here.\n\nResults are based on your current VS Code language, idf.espIdfPath version (latest otherwise) and idf.adapterTargetName." + "contents": "%viewWelcome.idfSearchResults%" }, { "view": "idfPartitionExplorer", - "contents": "Show the partition list from your device with the option to flash binaries (.bin) to the selected partition.\n\nSelect your device serial port and click Refresh Partition Table." + "contents": "%viewWelcome.idfPartitionExplorer%" }, { "view": "espIdf.peripheralView", - "contents": "Show Peripherals Registers from SVD file defined in ESP-IDF Svd File Path (idf.svdFilePath) configuration setting during active debug session" + "contents": "%viewWelcome.peripheralView%" } ], "menus": { @@ -650,10 +651,10 @@ "All" ], "enumDescriptions": [ - "Show no notifications and do not focus tasks output.", - "Show notifications but do not focus tasks output.", - "Do not show notifications but focus tasks output.", - "Show notifications and focus tasks output." + "%param.notificationMode.silent%", + "%param.notificationMode.notification%", + "%param.notificationMode.output%", + "%param.notificationMode.all%" ], "default": "All", "description": "%param.notificationMode%" @@ -683,7 +684,7 @@ "title": "Enable Telemetry", "type": "boolean", "default": true, - "description": "Send anonymous telemetry and crash report back to the extension (change to the settings will require restart for immediate effect)" + "description": "%param.telemetry%" }, "esp.rainmaker.api.server_url": { "type": "string", @@ -1534,11 +1535,11 @@ "compile": "rimraf out && tsc -p ./", "watch": "webpack --watch --mode development", "test": "yarn compile && node ./out/test/runTest.js --VERBOSE 2>&1", - "package": "gulp build && vsce package --yarn -o esp-idf-extension.vsix", + "package": "yarn clean && vsce package --yarn -o esp-idf-extension.vsix", "release": "vsce publish --yarn -p ${VS_MARKETPLACE_TOKEN} --packagePath esp-idf-extension.vsix", "open-vsx-release": "ovsx publish esp-idf-extension.vsix -p ${OPENVSX_MARKETPLACE_TOKEN}", - "clean": "gulp clean", - "validateLocalization": "gulp validateLocalization", + "clean": "node clean.js", + "genLocalizationBundle": "npx @vscode/l10n-dev export --outDir ./l10n ./src", "webpack": "webpack --mode production", "ui-test": "yarn compile && extest setup-and-run -y -i -u -l DEBUG -o testFiles/testWorkspace/.vscode/settings.json 'out/ui-test/*-test.js'", "ci-test": "yarn compile && extest setup-and-run './out/ui-test/*-test.js' -u -s test-resources -l DEBUG" @@ -1569,6 +1570,7 @@ "@vscode/debugadapter-testsupport": "^1.51.0", "@vscode/debugprotocol": "^1.53.0", "@vscode/extension-telemetry": "0.4.8", + "@vscode/l10n-dev": "^0.0.35", "@vscode/test-electron": "^2.1.2", "@vue/compiler-sfc": "^3.3.4", "bulma": "^0.9.3", @@ -1577,9 +1579,6 @@ "d3-scale": "^4.0.2", "file-loader": "^6.2.0", "glob": "^7.1.4", - "gulp": "^4.0.2", - "gulp-cli": "^2.3.0", - "gulp-typescript": "^5.0.0-alpha.3", "husky": "^6.0.0", "jsonic": "^1.0.1", "mocha": "^9.2.0", @@ -1598,7 +1597,6 @@ "vite": "^4.5.3", "vsce": "^2.6.7", "vscode-extension-tester": "^7.0.0", - "vscode-nls-dev": "^3.3.1", "vue-hot-reload-api": "^2.3.2", "vue-loader": "^17.2.2", "vue-router": "^4.2.4", @@ -1607,6 +1605,7 @@ "webpack-cli": "^4.9.2" }, "dependencies": { + "@vscode/l10n": "^0.0.18", "ansi-to-html": "^0.6.11", "assert": "^2.1.0", "axios": "^1.6.0", @@ -1631,7 +1630,6 @@ "tree-kill": "^1.2.2", "vscode-languageclient": "^5.2.1", "vscode-languageserver": "^5.2.1", - "vscode-nls": "^4.0.0", "vue": "^3.3.4", "winston": "^2.3.1", "ws": "^7.4.6", diff --git a/package.nls.es.json b/package.nls.es.json new file mode 100644 index 000000000..caa8552d7 --- /dev/null +++ b/package.nls.es.json @@ -0,0 +1,182 @@ +{ + "configuration.title": "ESP-IDF", + "debug.initConfig.description": "Una nueva configuración para lanzar proyectos ESP-IDF", + "debug.initConfig.name": "Depuración de ESP-IDF: Lanzamiento", + "esp.component-manager.cli.addDependencyError": "Se encontró un error al agregar una dependencia al componente", + "esp.component-manager.ui.show.title": "Mostrar Registro de Componentes", + "esp.component-manager.url.description": "URL del registro de componentes", + "esp.efuse.summary.title": "Obtener Resumen de efuse", + "esp.rainmaker.backend.add_node.title": "Agregar nuevo nodo", + "esp.rainmaker.backend.connect.title": "Conectar con el servidor en la nube de ESP-Rainmaker", + "esp.rainmaker.backend.logout.title": "Desvincular cuenta de Rainmaker", + "esp.rainmaker.backend.remove_node.title": "Eliminar este nodo", + "esp.rainmaker.backend.sync.title": "Sincronizar con el servidor en la nube de ESP-Rainmaker", + "esp.rainmaker.backend.update_node_param.title": "Actualizar parámetro para dispositivo", + "esp.webview.open.partition-table.title": "ESP-IDF: Abrir editor de tabla de particiones UI", + "espIdf.addArduinoAsComponentToCurFolder.title": "Agregar Arduino ESP32 como componente de ESP-IDF", + "espIdf.apptrace.archive.refresh.title": "Actualizar lista de archivos de rastreo", + "espIdf.apptrace.archive.showReport.title": "Mostrar informe de rastreo", + "espIdf.apptrace.customize.title": "Personalizar parámetros para rastreo de aplicaciones", + "espIdf.apptrace.title": "Rastreo de aplicaciones", + "espIdf.buildDevice.title": "Construir su proyecto", + "espIdf.buildFlashMonitor.title": "Construir, Flashear y Arrancar un Monitor en su Dispositivo", + "espIdf.clearDocsSearchResult.title": "Limpiar resultados de búsqueda de ESP-IDF", + "espIdf.clearSavedIdfSetups.title": "Limpiar configuraciones de ESP-IDF guardadas", + "espIdf.cmakeListsEditor.start.title": "Editor CMakeLists.txt", + "espIdf.configDevice.title": "Configuración del dispositivo", + "espIdf.createDevContainer.title": "Agregar configuración de contenedor Docker", + "espIdf.createFiles.title": "Crear proyecto a partir de la plantilla de extensión", + "espIdf.createIdfTerminal.title": "Abrir terminal ESP-IDF", + "espIdf.createNewComponent.title": "Crear nuevo componente de ESP-IDF", + "espIdf.createSbom.title": "Ejecutar comprobación de vulnerabilidad ESP-IDF-SBOM", + "espIdf.createVsCodeFolder.title": "Agregar carpeta de configuración de vscode", + "espIdf.customTask.title": "Ejecutar tarea personalizada", + "espIdf.disposeConfserverProcess.title": "Disponer proceso del servidor actual del editor de configuración SDK", + "espIdf.doctorCommand.title": "Comando de Doctor", + "espIdf.efuse.clearResults.title": "Limpiar resumen de efuse", + "espIdf.eraseFlash.title": "Borrar memoria Flash del dispositivo", + "espIdf.examples.title": "Mostrar proyectos de ejemplo", + "espIdf.flashAndEncryptDevice.title": "Encriptar y Flashear su Proyecto", + "espIdf.flashBinaryToPartition.title": "Flashear binario a partición...", + "espIdf.flashDFU.title": "Flashear (DFU) su Proyecto", + "espIdf.flashDevice.title": "Flashear su Proyecto", + "espIdf.flashUart.title": "Flashear (UART) su Proyecto", + "espIdf.fullClean.title": "Limpieza completa del proyecto", + "espIdf.genCoverage.title": "Agregar cobertura de editor", + "espIdf.getCoverageReport.title": "Obtener informe de cobertura HTML para proyecto", + "espIdf.getEspAdf.title": "Instalar ESP-ADF", + "espIdf.getEspHomeKitSdk.title": "Instalar ESP-HomeKit-SDK", + "espIdf.getEspMatter.title": "Instalar ESP-Matter", + "espIdf.getEspMdf.title": "Instalar ESP-MDF", + "espIdf.getEspRainmaker.title": "Instalar ESP-Rainmaker", + "espIdf.heaptrace.title": "Rastreo de montón", + "espIdf.importProject.title": "Importar proyecto ESP-IDF", + "espIdf.installEspMatterPyReqs.title": "Instalar paquetes Python de ESP-Matter", + "espIdf.installPyReqs.title": "Instalar paquetes Python de la extensión ESP-IDF", + "espIdf.jtag_flash.title": "Flashear (con JTag)", + "espIdf.launchQemu.title": "Iniciar servidor QEMU", + "espIdf.launchWSServerAndMonitor.title": "Lanzar monitor IDF para CoreDump / GDB-Stub Mode", + "espIdf.menuconfig.start.title": "Editor de Configuración del SDK (Menuconfig)", + "espIdf.monitorDevice.title": "Monitorear Dispositivo", + "espIdf.monitorQemu.title": "Monitorear Dispositivo QEMU", + "espIdf.newProject.start.title": "Nuevo Proyecto", + "espIdf.ninja.summary.title": "Mostrar Resumen de Compilación Ninja", + "espIdf.openDocUrl.title": "Abrir Documentación ESP-IDF...", + "espIdf.openOCDCommand.title": "Administrador de OpenOCD", + "espIdf.partition.table.refresh.title": "Actualizar Tabla de Particiones", + "espIdf.pickAWorkspaceFolder.title": "Seleccionar una Carpeta de Espacio de Trabajo", + "espIdf.projectConf.title": "Seleccionar configuración de proyecto", + "espIdf.projectConfigurationEditor.title": "Abrir Configuración de Proyecto", + "espIdf.qemuDebug.title": "Iniciar sesión de depuración QEMU", + "espIdf.removeCoverage.title": "Eliminar cobertura de editor", + "espIdf.saveDefSdkconfig.title": "ESP-IDF: Guardar archivo SDKCONFIG predeterminado (save-defconfig)", + "espIdf.searchInEspIdfDocs.title": "Buscar en la documentación...", + "espIdf.selectConfTarget.title": "Seleccionar dónde guardar la configuración", + "espIdf.selectCurrentIdfVersion.title": "Seleccione la versión actual de ESP-IDF", + "espIdf.selectFlashMethodAndFlash.title": "Seleccionar método de flasheo", + "espIdf.selectNotificationMode.title": "Seleccionar modo de notificación y salida", + "espIdf.selectOpenOcdConfigFiles.title": "Seleccionar archivos de configuración de placa OpenOCD", + "espIdf.selectPort.title": "Seleccionar puerto a usar (COM, tty, usbserial)", + "espIdf.setDefaultConfig.title": "Establecer archivo SDKConfig predeterminado en el proyecto", + "espIdf.setGcovConfig.title": "Configurar SDKConfig del proyecto para cobertura", + "espIdf.setMatterDevicePath.title": "Establecer Ruta del Dispositivo ESP-MATTER (ESP_MATTER_DEVICE_PATH)", + "espIdf.setPath.title": "Configurar Rutas", + "espIdf.setTarget.title": "Establecer Objetivo del Dispositivo Espressif", + "espIdf.setup.title": "Configurar Extensión ESP-IDF", + "espIdf.size.title": "Análisis de tamaño de los binarios", + "espIdf.unitTest.buildFlashUnitTestApp.title": "Prueba unitaria: Construir y flashear la aplicación de prueba unitaria para pruebas", + "espIdf.unitTest.installPyTest.title": "Prueba unitaria: Instalar requisitos de PyTest de ESP-IDF", + "espIdf.webview.nvsPartitionEditor.title": "Abrir Editor de Partición NVS", + "espIdf.welcome.title": "Bienvenido", + "esp_idf.appOffset.description": "Anular la dirección de inicio del programa de compilación (ESP32_APP_FLASH_OFF)", + "esp_idf.debuggers.text.description": "El comando a ejecutar", + "esp_idf.gdbinitFile.description": "Ruta del archivo gdbinit para el Adaptador de Depuración ESP-IDF", + "esp_idf.initGdbCommands.description": "Uno o más comandos GDB para ejecutar con el fin de configurar el depurador subyacente. Ejemplo: \"initGdbCommands\": [ \"target remote /dev/ttyUSB0\"]", + "esp_idf.tmoScaleFactor.description": "Factor de escala para el tiempo de espera de gdb [predeterminado:1]", + "esp_idf.verifyAppBinBeforeDebug.description": "Verificar binarios de la aplicación antes de depurar", + "idf.flashType.description": "Método de flasheo del dispositivo, UART o JTag", + "idf.wssPort.description": "Puerto del servidor de socket web para Core Dump o GDB Stub", + "openocd.tcl.host.description": "Host para conexión tcl de Openocd", + "openocd.tcl.port.description": "Puerto para conexión tcl de Openocd", + "param.adapterTargetName": "Nombre de destino para Adaptador de Depuración ESP-IDF", + "param.buildPath": "Nombre del directorio de construcción de CMake", + "param.cmakeCompilerArgs": "Argumentos para tarea de compilación de CMake", + "param.coveredDarkTheme": "Color de fondo para líneas cubiertas en tema oscuro para Cobertura de ESP-IDF.", + "param.coveredLightTheme": "Color de fondo para líneas cubiertas en tema claro para Cobertura de ESP-IDF.", + "param.customAdapterTargetName": "Nombre de destino personalizado para Adaptador de Depuración ESP-IDF", + "param.customTask": "Tarea personalizada", + "param.customTerminalExecutable.title": "Ejecutable personalizado para tareas de extensiones", + "param.customTerminalExecutableArgs.title": "Lista de argumentos para el ejecutable personalizado para tareas de extensiones", + "param.deleteComponentsOnFullClean": "Eliminar componentes administrados en el comando de Limpieza Completa del Proyecto", + "param.enableCCache.title": "Habilitar CCache en la tarea de construcción", + "param.enableIdfComponentManager.title": "Habilitar Administrador de Componentes IDF en la tarea de construcción", + "param.enableSizeTaskAfterBuildTask.title": "Habilitar tarea de tamaño IDF después de la tarea de construcción", + "param.enableStatusBar.title": "Habilitar elementos de la barra de estado de la extensión ESP-IDF", + "param.enableUpdateSrcsToCMakeListsFile": "Habilitar actualización de archivos fuente en CMakeLists.txt", + "param.esp.rainmaker.oauth.url": "URL del servidor OAuth de ESP-Rainmaker", + "param.espAdfPath": "Ruta para localizar el framework ESP-ADF (ADF_PATH)", + "param.espHomeKitSdkPath": "Ruta para localizar el framework ESP-HomeKit-SDK (HOMEKIT_PATH)", + "param.espIdfPath": "Ruta para localizar el framework ESP-IDF (IDF_PATH)", + "param.espMatterPath": "Ruta para localizar el framework ESP-Matter (ESP_MATTER_PATH)", + "param.espMdfPath": "Ruta para localizar el framework ESP-MDF (MDF_PATH)", + "param.espRainmakerPath": "Ruta para localizar el framework ESP-Rainmaker (RMAKER_PATH)", + "param.exportPaths": "Rutas que se agregarán a PATH", + "param.exportVars": "Variables que se agregarán a las variables de entorno del sistema", + "param.flashBaudRate": "Tasa de baudios de flasheo ESP-IDF", + "param.gitPath.title": "Ruta del ejecutable de Git", + "param.launchMonitorOnDebugSession.title": "Iniciar Monitor IDF junto con la sesión de Adaptador de Depuración ESP-IDF", + "param.monitorBaudRate": "Tasa de baudios de Monitor IDF ESP-IDF", + "param.monitorCustomTimestampFormat": "Formato de marca de tiempo personalizado en Monitor IDF", + "param.monitorEnableTimestamps": "Habilitar marcas de tiempo en Monitor IDF", + "param.monitorNoReset": "Habilitar bandera de no reinicio en Monitor IDF", + "param.monitorStartDelayBeforeDebug": "Retraso para iniciar la sesión de depuración después de la ejecución del monitor IDF (ms)", + "param.ninjaArgs": "Argumentos para tarea de construcción Ninja", + "param.notificationMode": "Modo de notificaciones de la extensión ESP-IDF y modo de enfoque de salida.", + "param.notificationMode.all": "Mostrar notificaciones y enfocar la salida de tareas.", + "param.notificationMode.notification": "Mostrar notificaciones pero no enfocar la salida de tareas.", + "param.notificationMode.output": "No mostrar notificaciones pero enfocar la salida de tareas.", + "param.notificationMode.silent": "No mostrar notificaciones ni enfocar la salida de tareas.", + "param.openOcdConfigFilesList": "Lista de archivos de configuración dentro del directorio de scripts de OpenOCD", + "param.openOcdDebugLevel": "Nivel de depuración del servidor OpenOCD", + "param.openOcdLaunchArgs": "Argumentos para iniciar OpenOCD desde esta extensión", + "param.partialDarkTheme": "Color de fondo para líneas parcialmente cubiertas en tema oscuro para Cobertura de ESP-IDF.", + "param.partialLightTheme": "Color de fondo para líneas parcialmente cubiertas en tema claro para Cobertura de ESP-IDF.", + "param.port": "Ruta del puerto del dispositivo seleccionado", + "param.postBuildTask": "Tarea personalizada posterior a la construcción", + "param.postFlashTask": "Tarea personalizada posterior al flasheo", + "param.preBuildTask": "Tarea personalizada previa a la construcción", + "param.preFlashTask": "Tarea personalizada previa al flasheo", + "param.pythonBinPath": "Ruta absoluta del binario Python utilizado para ejecutar Scripts de Python de ESP-IDF", + "param.qemuTcpPort": "Puerto tcp de QEMU para comunicación serial", + "param.rainmaker.api.server_url": "URL del servidor en la nube de ESP-Rainmaker", + "param.saveBeforeBuildDescription": "Guardar todos los archivos editados en el espacio de trabajo antes de proceder con la construcción, aunque si no se pueden guardar los archivos, se construirá de todos modos", + "param.saveScope": "Dónde guardar la configuración con comandos ESP-IDF con valor numérico como vscode.ConfigurationTarget. Global = 1, Espacio de trabajo = 2, Carpeta de espacio de trabajo = 3", + "param.sbomFilePath.title": "Ruta del archivo sbom de esp-idf", + "param.sdkconfigDefaults": "Lista de valores predeterminados de sdkconfig para configuración inicial de compilación", + "param.sdkconfigFilePath.title": "Ruta absoluta del archivo sdkconfig", + "param.showOnboardingOnInit": "Mostrar ventana de configuración de ESP-IDF al activar la extensión", + "param.svdFile": "Archivo SVD para resolver la vista periférica ESP-IDF en la vista de depuración", + "param.telemetry": "Enviar telemetría anónima e informe de fallos de vuelta a la extensión (cambiar la configuración requerirá reiniciar para que tenga efecto inmediato)", + "param.toolsPath": "Ruta para localizar las Herramientas ESP-IDF (IDF_TOOLS_PATH)", + "param.uncoveredDarkTheme": "Color de fondo para líneas no cubiertas en tema oscuro para Cobertura de ESP-IDF.", + "param.uncoveredLightTheme": "Color de fondo para líneas no cubiertas en tema claro para Cobertura de ESP-IDF.", + "param.useIDFKConfigStyle": "Habilitar/Deshabilitar validación de estilo ESP-IDF para archivos Kconfig", + "trace.poll_period.description": "poll_period se establecerá para el rastreo de la aplicación", + "trace.skip_size.description": "skip_size se establecerá para el rastreo de la aplicación", + "trace.stop_tmo.description": "stop_tmo se establecerá para el rastreo de la aplicación", + "trace.trace_size.description": "trace_size se establecerá para el rastreo de la aplicación", + "trace.wait4halt.description": "wait4halt se establecerá para el rastreo de la aplicación", + "view.components.name": "Componentes del proyecto", + "view.debug.peripheral": "Visor periférico ESP-IDF", + "view.idf.espEFuseExplorer": "Explorador de eFuse", + "view.idf.espRainmaker": "RainMaker", + "view.idf.idfAppTraceArchive": "Archivos de rastreo de aplicaciones", + "view.idf.idfAppTracer": "Rastreador de aplicaciones", + "view.idf.idfCommands": "Comandos", + "view.idf.idfPartitionExplorer": "Explorador de Particiones del Dispositivo", + "view.idf.idfSearchResults": "Resultados de búsqueda de documentación", + "viewContainer.title": "ESP-IDF: Explorador", + "viewWelcome.idfPartitionExplorer": "Muestra la lista de particiones de su dispositivo con la opción de flashear binarios (.bin) en la partición seleccionada.\n\nSeleccione el puerto serial de su dispositivo y haga clic en Actualizar tabla de particiones.", + "viewWelcome.idfSearchResults": "En cualquier editor de archivos abierto, seleccione un texto y haga clic con el botón derecho y seleccione ESP-IDF: Buscar en la documentación para obtener resultados coincidentes aquí.\n\nLos resultados se basan en su idioma actual de VS Code, versión de idf.espIdfPath (si no, la última) y idf.adapterTargetName.", + "viewWelcome.peripheralView": "Muestra los registros periféricos del archivo SVD definido en la configuración idf.svdFilePath durante la sesión de depuración activa" +} \ No newline at end of file diff --git a/package.nls.json b/package.nls.json index cf066e15d..4375fc95b 100644 --- a/package.nls.json +++ b/package.nls.json @@ -1,165 +1,182 @@ { - "espIdf.createFiles.title": "Create Project from Extension Template", + "configuration.title": "ESP-IDF", + "debug.initConfig.description": "A new configuration for launch ESP-IDF projects", + "debug.initConfig.name": "ESP-IDF Debug: Launch", + "esp.component-manager.cli.addDependencyError": "Error encountered while adding dependency to the component", + "esp.component-manager.ui.show.title": "Show Component Registry", + "esp.component-manager.url.description": "Component registry URL", + "esp.efuse.summary.title": "Get eFuse Summary", + "esp.rainmaker.backend.add_node.title": "Add new node", + "esp.rainmaker.backend.connect.title": "Connect with ESP-Rainmaker Cloud Server", + "esp.rainmaker.backend.logout.title": "Unlink Rainmaker Account", + "esp.rainmaker.backend.remove_node.title": "Remove this node", + "esp.rainmaker.backend.sync.title": "Sync with ESP-Rainmaker Cloud Server", + "esp.rainmaker.backend.update_node_param.title": "Update param for device", + "esp.webview.open.partition-table.title": "ESP-IDF: Open Partition Table Editor UI", "espIdf.addArduinoAsComponentToCurFolder.title": "Add Arduino ESP32 as ESP-IDF Component", + "espIdf.apptrace.archive.refresh.title": "Refresh Trace Archive List", + "espIdf.apptrace.archive.showReport.title": "Show Trace Report", + "espIdf.apptrace.customize.title": "Customize parameters for app trace", + "espIdf.apptrace.title": "App Trace", + "espIdf.buildDevice.title": "Build your Project", + "espIdf.buildFlashMonitor.title": "Build, Flash and Start a Monitor on your Device", + "espIdf.clearDocsSearchResult.title": "Clear ESP-IDF Search Results", + "espIdf.clearSavedIdfSetups.title": "Clear Saved ESP-IDF Setups", + "espIdf.cmakeListsEditor.start.title": "CMakeLists.txt Editor", + "espIdf.configDevice.title": "Device Configuration", + "espIdf.createDevContainer.title": "Add Docker Container Configuration", + "espIdf.createFiles.title": "Create Project from Extension Template", "espIdf.createIdfTerminal.title": "Open ESP-IDF Terminal", + "espIdf.createNewComponent.title": "Create New ESP-IDF Component", + "espIdf.createSbom.title": "Run ESP-IDF-SBOM vulnerability check", "espIdf.createVsCodeFolder.title": "Add vscode Configuration Folder", - "espIdf.setPath.title": "Configure Paths", - "espIdf.selectConfTarget.title": "Select where to Save Configuration Settings", - "espIdf.selectNotificationMode.title": "Select Output and Notification Mode", - "espIdf.setTarget.title": "Set Espressif Device Target", - "espIdf.configDevice.title": "Device Configuration", - "espIdf.menuconfig.start.title": "SDK Configuration Editor (Menuconfig)", - "espIdf.cmakeListsEditor.start.title": "CMakeLists.txt Editor", - "espIdf.newProject.start.title": "New Project", - "espIdf.setDefaultConfig.title": "Set Default SDKConfig File in Project", - "espIdf.selectPort.title": "Select Port to Use (COM, tty, usbserial)", - "espIdf.buildDevice.title": "Build your Project", + "espIdf.customTask.title": "Execute Custom Task", + "espIdf.disposeConfserverProcess.title": "Dispose Current SDK Configuration Editor Server Process", + "espIdf.doctorCommand.title": "Doctor Command", + "espIdf.efuse.clearResults.title": "Clear eFuse Summary", + "espIdf.eraseFlash.title": "Erase Flash Memory from Device", + "espIdf.examples.title": "Show Examples Projects", "espIdf.flashAndEncryptDevice.title": "Encrypt and Flash your Project", - "espIdf.flashDevice.title": "Flash your Project", + "espIdf.flashBinaryToPartition.title": "Flash Binary to Partition...", "espIdf.flashDFU.title": "Flash (DFU) your Project", + "espIdf.flashDevice.title": "Flash your Project", "espIdf.flashUart.title": "Flash (UART) your Project", - "espIdf.monitorDevice.title": "Monitor your Device", - "espIdf.setup.title": "Configure ESP-IDF Extension", - "espIdf.examples.title": "Show Examples Projects", - "espIdf.buildFlashMonitor.title": "Build, Flash and Start a Monitor on your Device", - "espIdf.pickAWorkspaceFolder.title": "Pick a Workspace Folder", - "espIdf.size.title": "Size Analysis of the Binaries", - "espIdf.apptrace.title": "App Trace", - "espIdf.heaptrace.title": "Heap Trace", - "espIdf.openOCDCommand.title": "OpenOCD Manager", + "espIdf.fullClean.title": "Full Clean Project", "espIdf.genCoverage.title": "Add Editor Coverage", - "espIdf.removeCoverage.title": "Remove Editor Coverage", "espIdf.getCoverageReport.title": "Get HTML Coverage Report for Project", - "espIdf.searchInEspIdfDocs.title": "Search in Documentation...", "espIdf.getEspAdf.title": "Install ESP-ADF", - "espIdf.getEspMdf.title": "Install ESP-MDF", "espIdf.getEspHomeKitSdk.title": "Install ESP-HomeKit-SDK", "espIdf.getEspMatter.title": "Install ESP-Matter", + "espIdf.getEspMdf.title": "Install ESP-MDF", "espIdf.getEspRainmaker.title": "Install ESP-Rainmaker", + "espIdf.heaptrace.title": "Heap Trace", + "espIdf.importProject.title": "Import ESP-IDF Project", "espIdf.installEspMatterPyReqs.title": "Install ESP-Matter Python Packages", "espIdf.installPyReqs.title": "Install ESP-IDF Extension Python Packages", - "espIdf.openDocUrl.title": "Open ESP-IDF Documentation...", - "espIdf.doctorCommand.title": "Doctor Command", - "espIdf.clearDocsSearchResult.title": "Clear ESP-IDF Search Results", - "espIdf.fullClean.title": "Full Clean Project", - "espIdf.createNewComponent.title": "Create New ESP-IDF Component", - "espIdf.webview.nvsPartitionEditor.title": "ESP-IDF: NVS Partition Editor", - "espIdf.selectOpenOcdConfigFiles.title": "Select OpenOCD Board Configuration", - "espIdf.ninja.summary.title": "Show Ninja Build Summary", - "espIdf.eraseFlash.title": "Erase Flash Memory from Device", - "espIdf.disposeConfserverProcess.title": "Dispose Current SDK Configuration Editor Server Process", - "espIdf.setGcovConfig.title": "Configure Project SDKConfig for Coverage", - "espIdf.importProject.title": "Import ESP-IDF Project", + "espIdf.jtag_flash.title": "Flash (with JTag)", "espIdf.launchQemu.title": "Launch QEMU Server", + "espIdf.launchWSServerAndMonitor.title": "Launch IDF Monitor for CoreDump / GDB-Stub Mode", + "espIdf.menuconfig.start.title": "SDK Configuration Editor (Menuconfig)", + "espIdf.monitorDevice.title": "Monitor Device", "espIdf.monitorQemu.title": "Monitor QEMU Device", - "espIdf.qemuDebug.title": "Launch QEMU Debug Session", - "espIdf.createDevContainer.title": "Add Docker Container Configuration", - "espIdf.clearSavedIdfSetups.title": "Clear Saved ESP-IDF Setups", + "espIdf.newProject.start.title": "New Project", + "espIdf.ninja.summary.title": "Show Ninja Build Summary", + "espIdf.openDocUrl.title": "Open ESP-IDF Documentation...", + "espIdf.openOCDCommand.title": "OpenOCD Manager", "espIdf.partition.table.refresh.title": "Refresh Partition Table", - "espIdf.flashBinaryToPartition.title": "Flash Binary to Partition...", + "espIdf.pickAWorkspaceFolder.title": "Pick a Workspace Folder", + "espIdf.projectConf.title": "Select project configuration", + "espIdf.projectConfigurationEditor.title": "Open Project Configuration", + "espIdf.qemuDebug.title": "Launch QEMU Debug Session", + "espIdf.removeCoverage.title": "Remove Editor Coverage", + "espIdf.saveDefSdkconfig.title": "ESP-IDF: Save Default SDKCONFIG file (save-defconfig)", + "espIdf.searchInEspIdfDocs.title": "Search in Documentation...", + "espIdf.selectConfTarget.title": "Select where to Save Configuration Settings", + "espIdf.selectCurrentIdfVersion.title": "Select Current ESP-IDF Version", + "espIdf.selectFlashMethodAndFlash.title": "Select Flash Method", + "espIdf.selectNotificationMode.title": "Select Output and Notification Mode", + "espIdf.selectOpenOcdConfigFiles.title": "Select OpenOCD Board Configuration", + "espIdf.selectPort.title": "Select Port to Use (COM, tty, usbserial)", + "espIdf.setDefaultConfig.title": "Set Default SDKConfig File in Project", + "espIdf.setGcovConfig.title": "Configure Project SDKConfig for Coverage", + "espIdf.setMatterDevicePath.title": "Set ESP-MATTER Device Path (ESP_MATTER_DEVICE_PATH)", + "espIdf.setPath.title": "Configure Paths", + "espIdf.setTarget.title": "Set Espressif Device Target", + "espIdf.setup.title": "Configure ESP-IDF Extension", + "espIdf.size.title": "Size Analysis of the Binaries", "espIdf.unitTest.buildFlashUnitTestApp.title": "Unit Test: Build and flash unit test app for testing", "espIdf.unitTest.installPyTest.title": "Unit Test: Install ESP-IDF PyTest requirements", - "espIdf.setMatterDevicePath.title": "Set ESP-MATTER Device Path (ESP_MATTER_DEVICE_PATH)", - "espIdf.customTask.title": "Execute Custom Task", + "espIdf.webview.nvsPartitionEditor.title": "Open NVS Partition Editor", "espIdf.welcome.title": "Welcome", - "espIdf.projectConfigurationEditor.title": "Open Project Configuration", - "espIdf.projectConf.title": "Select project configuration", - "espIdf.saveDefSdkconfig.title": "ESP-IDF: Save Default SDKCONFIG file (save-defconfig)", - "espIdf.createSbom.title": "Run ESP-IDF-SBOM vulnerability check", - "esp.component-manager.ui.show.title": "Show Component Registry", - "esp.component-manager.cli.addDependencyError": "Error encountered while adding dependency to the component", - "debug.initConfig.name": "ESP-IDF Debug: Launch", - "debug.initConfig.description": "A new configuration for launch ESP-IDF projects", + "esp_idf.appOffset.description": "Override build program start address offset (ESP32_APP_FLASH_OFF)", + "esp_idf.debuggers.text.description": "The command to execute", + "esp_idf.gdbinitFile.description": "gdbinit file path for ESP-IDF Debug Adapter", + "esp_idf.initGdbCommands.description": "One or more GDB commands to execute in order to setup the underlying debugger. Example: \"initGdbCommands\": [ \"target remote /dev/ttyUSB0\"]", + "esp_idf.tmoScaleFactor.description": "Scale factor for gdb timeout [default:1]", + "esp_idf.verifyAppBinBeforeDebug.description": "Verify app binaries before debug", + "idf.flashType.description": "Device flash method, UART or JTag", + "idf.wssPort.description": "Web Socket Server Port for Core Dump or GDB Stub", + "openocd.tcl.host.description": "Host for openocd tcl connection", + "openocd.tcl.port.description": "Port for openocd tcl connection", "param.adapterTargetName": "Target name for ESP-IDF Debug Adapter", + "param.buildPath": "Name of CMake build directory", + "param.cmakeCompilerArgs": "Arguments for CMake compilation task", + "param.coveredDarkTheme": "Background color for covered lines in Dark theme for ESP-IDF Coverage.", + "param.coveredLightTheme": "Background color for covered lines in Light theme for ESP-IDF Coverage.", "param.customAdapterTargetName": "Custom target name for ESP-IDF Debug Adapter", - "param.openOcdConfigFilesList": "List of configuration files inside OpenOCD Scripts directory", - "param.openOcdLaunchArgs": "Arguments to launch openOCD from this extension", - "param.flashBaudRate": "ESP-IDF Flash Baud rate", - "param.monitorBaudRate": "ESP-IDF Monitor Baud rate", - "param.port": "Path of selected device port", - "param.pythonBinPath": "Python absolute binary path used to execute ESP-IDF Python Scripts", - "param.espIdfPath": "Path to locate ESP-IDF framework (IDF_PATH)", + "param.customTask": "Custom task", + "param.customTerminalExecutable.title": "Custom executable for extensions tasks", + "param.customTerminalExecutableArgs.title": "List of arguments for the custom executable for extension tasks", + "param.deleteComponentsOnFullClean": "Delete managed_components on Full Clean Project command", + "param.enableCCache.title": "Enable CCache in build task", + "param.enableIdfComponentManager.title": "Enable IDF Component Manager in build task", + "param.enableSizeTaskAfterBuildTask.title": "Enable IDF Size task after build task", + "param.enableStatusBar.title": "Enable ESP-IDF extension status bar items", + "param.enableUpdateSrcsToCMakeListsFile": "Enable update source files in CMakeLists.txt", + "param.esp.rainmaker.oauth.url": "ESP-Rainmaker OAuth server URL", "param.espAdfPath": "Path to locate ESP-ADF framework (ADF_PATH)", - "param.espMdfPath": "Path to locate ESP-MDF framework (MDF_PATH)", + "param.espHomeKitSdkPath": "Path to locate ESP-HomeKit-SDK framework (HOMEKIT_PATH)", + "param.espIdfPath": "Path to locate ESP-IDF framework (IDF_PATH)", "param.espMatterPath": "Path to locate ESP-Matter framework (ESP_MATTER_PATH)", + "param.espMdfPath": "Path to locate ESP-MDF framework (MDF_PATH)", "param.espRainmakerPath": "Path to locate ESP-Rainmaker framework (RMAKER_PATH)", - "param.espHomeKitSdkPath": "Path to locate ESP-HomeKit-SDK framework (HOMEKIT_PATH)", - "param.toolsPath": "Path to locate ESP-IDF Tools (IDF_TOOLS_PATH)", "param.exportPaths": "Paths to be appended to PATH", "param.exportVars": "Variables to be added to system environment variables", + "param.flashBaudRate": "ESP-IDF Flash Baud rate", "param.gitPath.title": "Git executable path", - "param.useIDFKConfigStyle": "Enable/Disable ESP-IDF style validation for Kconfig files", - "param.showOnboardingOnInit": "Show ESP-IDF Configuration window on extension activation", - "param.cmakeCompilerArgs": "Arguments for CMake compilation task", + "param.launchMonitorOnDebugSession.title": "Start IDF Monitor along with ESP-IDF Debug Adapter session", + "param.monitorBaudRate": "ESP-IDF Monitor Baud rate", + "param.monitorCustomTimestampFormat": "Custom timestamp format in IDF Monitor", + "param.monitorEnableTimestamps": "Enable timestamps in IDF Monitor", + "param.monitorNoReset": "Enable no-reset flag to IDF Monitor", + "param.monitorStartDelayBeforeDebug": "Delay to start debug session after IDF monitor execution (ms)", "param.ninjaArgs": "Arguments for Ninja build task", - "param.customTask": "Custom task", - "param.coveredLightTheme": "Background color for covered lines in Light theme for ESP-IDF Coverage.", - "param.coveredDarkTheme": "Background color for covered lines in Dark theme for ESP-IDF Coverage.", - "param.partialLightTheme": "Background color for partially covered lines in Light theme for ESP-IDF Coverage.", - "param.partialDarkTheme": "Background color for partially covered lines in Dark theme for ESP-IDF Coverage.", - "param.uncoveredLightTheme": "Background color for uncovered lines in Light theme for ESP-IDF Coverage.", - "param.uncoveredDarkTheme": "Background color for uncovered lines in Dark theme for ESP-IDF Coverage.", - "param.enableUpdateSrcsToCMakeListsFile": "Enable update source files in CMakeLists.txt", - "param.qemuTcpPort": "QEMU tcp port for serial communication", + "param.notificationMode": "ESP-IDF extension notifications and output focus mode.", + "param.notificationMode.all": "Show notifications and focus tasks output.", + "param.notificationMode.notification": "Show notifications but do not focus tasks output.", + "param.notificationMode.output": "Do not show notifications but focus tasks output.", + "param.notificationMode.silent": "Show no notifications and do not focus tasks output.", + "param.openOcdConfigFilesList": "List of configuration files inside OpenOCD Scripts directory", "param.openOcdDebugLevel": "OpenOCD Server debug level", - "param.preBuildTask": "Pre build custom task", + "param.openOcdLaunchArgs": "Arguments to launch openOCD from this extension", + "param.partialDarkTheme": "Background color for partially covered lines in Dark theme for ESP-IDF Coverage.", + "param.partialLightTheme": "Background color for partially covered lines in Light theme for ESP-IDF Coverage.", + "param.port": "Path of selected device port", "param.postBuildTask": "Post build custom task", - "param.preFlashTask": "Pre flash custom task", "param.postFlashTask": "Post flash custom task", - "param.svdFile": "SVD file to resolve ESP-IDF Peripheral view in Debug view", - "param.deleteComponentsOnFullClean": "Delete managed_components on Full Clean Project command", - "param.buildPath": "Name of CMake build directory", + "param.preBuildTask": "Pre build custom task", + "param.preFlashTask": "Pre flash custom task", + "param.pythonBinPath": "Python absolute binary path used to execute ESP-IDF Python Scripts", + "param.qemuTcpPort": "QEMU tcp port for serial communication", + "param.rainmaker.api.server_url": "ESP-Rainmaker cloud server URL", + "param.saveBeforeBuildDescription": "Save all the edited files in the workspace before proceeding with the build, although if fail to save files it will build anyways", + "param.saveScope": "Where to save configuration with ESP-IDF commands with number value as vscode.ConfigurationTarget. Global = 1, Workspace= 2, WorkspaceFolder=3", + "param.sbomFilePath.title": "esp-idf sbom file path", "param.sdkconfigDefaults": "List of sdkconfig default values for initial build configuration", - "param.monitorStartDelayBeforeDebug": "Delay to start debug session after IDF monitor execution (ms)", - "param.monitorNoReset": "Enable no-reset flag to IDF Monitor", - "param.monitorEnableTimestamps": "Enable timestamps in IDF Monitor", - "param.monitorCustomTimestampFormat": "Custom timestamp format in IDF Monitor", - "param.enableStatusBar.title": "Enable ESP-IDF extension status bar items", - "view.components.name": "Project Components", - "configuration.title": "ESP-IDF", - "espIdf.apptrace.archive.refresh.title": "Refresh Trace Archive List", - "espIdf.apptrace.archive.showReport.title": "Show Trace Report", - "espIdf.apptrace.customize.title": "Customize parameters for app trace", + "param.sdkconfigFilePath.title": "sdkconfig file absolute path", + "param.showOnboardingOnInit": "Show ESP-IDF Configuration window on extension activation", + "param.svdFile": "SVD file to resolve ESP-IDF Peripheral view in Debug view", + "param.telemetry": "Send anonymous telemetry and crash report back to the extension (change to the settings will require restart for immediate effect)", + "param.toolsPath": "Path to locate ESP-IDF Tools (IDF_TOOLS_PATH)", + "param.uncoveredDarkTheme": "Background color for uncovered lines in Dark theme for ESP-IDF Coverage.", + "param.uncoveredLightTheme": "Background color for uncovered lines in Light theme for ESP-IDF Coverage.", + "param.useIDFKConfigStyle": "Enable/Disable ESP-IDF style validation for Kconfig files", "trace.poll_period.description": "poll_period will be set for the apptrace", - "trace.trace_size.description": "trace_size will set for the apptrace", + "trace.skip_size.description": "skip_size will be set for the apptrace", "trace.stop_tmo.description": "stop_tmo will be set for the apptrace", + "trace.trace_size.description": "trace_size will set for the apptrace", "trace.wait4halt.description": "wait4halt will be set for the apptrace", - "trace.skip_size.description": "skip_size will be set for the apptrace", - "param.saveBeforeBuildDescription": "Save all the edited files in the workspace before proceeding with the build, although if fail to save files it will build anyways", - "param.notificationMode": "ESP-IDF extension notifications and output focus mode.", - "param.saveScope": "Where to save configuration with ESP-IDF commands with number value as vscode.ConfigurationTarget. Global = 1, Workspace= 2, WorkspaceFolder=3", - "param.rainmaker.api.server_url": "ESP-Rainmaker cloud server URL", - "param.launchMonitorOnDebugSession.title": "Start IDF Monitor along with ESP-IDF Debug Adapter session", - "param.enableIdfComponentManager.title": "Enable IDF Component Manager in build task", - "param.customTerminalExecutable.title": "Custom executable for extensions tasks", - "param.customTerminalExecutableArgs.title": "List of arguments for the custom executable for extension tasks", - "param.enableCCache.title": "Enable CCache in build task", - "param.enableSizeTaskAfterBuildTask.title": "Enable IDF Size task after build task", - "param.sdkconfigFilePath.title": "sdkconfig file absolute path", - "param.sbomFilePath.title": "esp-idf sbom file path", - "esp.rainmaker.backend.sync.title": "Sync with ESP-Rainmaker Cloud Server", - "esp.rainmaker.backend.connect.title": "Connect with ESP-Rainmaker Cloud Server", - "esp.rainmaker.backend.logout.title": "Unlink Rainmaker Account", - "esp.rainmaker.backend.add_node.title": "Add new node", - "esp.rainmaker.backend.remove_node.title": "Remove this node", - "esp.rainmaker.backend.update_node_param.title": "Update param for device", - "param.esp.rainmaker.oauth.url": "ESP-Rainmaker OAuth server URL", - "idf.wssPort.description": "Web Socket Server Port for Core Dump or GDB Stub", - "esp.webview.open.partition-table.title": "ESP-IDF: Partition Table Editor", - "esp.efuse.summary.title": "Get eFuse Summary", - "espIdf.efuse.clearResults.title": "Clear eFuse Summary", - "espIdf.jtag_flash.title": "Flash (with JTag)", - "espIdf.selectFlashMethodAndFlash.title": "Select Flash Method", - "espIdf.selectCurrentIdfVersion.title": "Select Current ESP-IDF Version", - "idf.flashType.description": "Device flash method, UART or JTag", - "openocd.tcl.host.description": "Host for openocd tcl connection", - "openocd.tcl.port.description": "Port for openocd tcl connection", - "esp.component-manager.url.description": "Component registry URL", - "espIdf.launchWSServerAndMonitor.title": "Launch IDF Monitor for CoreDump / GDB-Stub Mode", - "esp_idf.appOffset.description": "Override build program start address offset (ESP32_APP_FLASH_OFF)", - "esp_idf.initGdbCommands.description": "One or more GDB commands to execute in order to setup the underlying debugger. Example: \"initGdbCommands\": [ \"target remote /dev/ttyUSB0\"]", - "esp_idf.gdbinitFile.description": "gdbinit file path for ESP-IDF Debug Adapter", - "esp_idf.debuggers.text.description": "The command to execute", - "esp_idf.verifyAppBinBeforeDebug.description": "Verify app binaries before debug", - "esp_idf.tmoScaleFactor.description": "Scale factor for gdb timeout [default:1]" + "view.components.name": "Project Components", + "view.debug.peripheral": "ESP-IDF: Peripheral Viewer", + "view.idf.espEFuseExplorer": "eFuseExplorer", + "view.idf.espRainmaker": "RainMaker", + "view.idf.idfAppTraceArchive": "Application Tracer Archives", + "view.idf.idfAppTracer": "Application Tracer", + "view.idf.idfCommands": "Commands", + "view.idf.idfPartitionExplorer": "Device Partition Explorer", + "view.idf.idfSearchResults": "Documentation search results", + "viewContainer.title": "ESP-IDF: Explorer", + "viewWelcome.idfPartitionExplorer": "Show the partition list from your device with the option to flash binaries (.bin) to the selected partition.\n\nSelect your device serial port and click Refresh Partition Table.", + "viewWelcome.idfSearchResults": "On any opened file editor, select some text and right click and select ESP-IDF: Search in Documentation to get matching results here.\n\nResults are based on your current VS Code language, idf.espIdfPath version (latest otherwise) and idf.adapterTargetName.", + "viewWelcome.peripheralView": "Show Peripherals Registers from SVD file defined in ESP-IDF Svd File Path (idf.svdFilePath) configuration setting during active debug session" } diff --git a/package.nls.pt.json b/package.nls.pt.json new file mode 100644 index 000000000..5810383b8 --- /dev/null +++ b/package.nls.pt.json @@ -0,0 +1,182 @@ +{ + "configuration.title": "ESP-IDF", + "debug.initConfig.description": "Uma nova configuração para lançamento de projetos ESP-IDF", + "debug.initConfig.name": "Depuração ESP-IDF: lançamento", + "esp.component-manager.cli.addDependencyError": "Erro encontrado ao adicionar dependência ao componente", + "esp.component-manager.ui.show.title": "Mostrar registro de componentes", + "esp.component-manager.url.description": "URL de registro do componente", + "esp.efuse.summary.title": "Obtenha o resumo do eFuse", + "esp.rainmaker.backend.add_node.title": "Adicionar novo nó", + "esp.rainmaker.backend.connect.title": "Conecte-se com o servidor ESP-Rainmaker Cloud", + "esp.rainmaker.backend.logout.title": "Desvincular conta Rainmaker", + "esp.rainmaker.backend.remove_node.title": "Remover este nó", + "esp.rainmaker.backend.sync.title": "Sincronize com ESP-Rainmaker Cloud Server", + "esp.rainmaker.backend.update_node_param.title": "Atualizar parâmetro para dispositivo", + "esp.webview.open.partition-table.title": "ESP-IDF: Abrir UI do Editor de Tabela de Partição", + "espIdf.addArduinoAsComponentToCurFolder.title": "Adicione Arduino ESP32 como componente ESP-IDF", + "espIdf.apptrace.archive.refresh.title": "Atualizar lista de arquivos de rastreamento", + "espIdf.apptrace.archive.showReport.title": "Mostrar relatório de rastreamento", + "espIdf.apptrace.customize.title": "Personalize parâmetros para rastreamento de aplicativos", + "espIdf.apptrace.title": "Rastreamento de aplicativo", + "espIdf.buildDevice.title": "Construa seu projeto", + "espIdf.buildFlashMonitor.title": "Crie, atualize e inicie um monitor no seu dispositivo", + "espIdf.clearDocsSearchResult.title": "Limpar resultados da pesquisa ESP-IDF", + "espIdf.clearSavedIdfSetups.title": "Limpar configurações ESP-IDF salvas", + "espIdf.cmakeListsEditor.start.title": "Editor CMakeLists.txt", + "espIdf.configDevice.title": "Configuração do dispositivo", + "espIdf.createDevContainer.title": "Adicionar configuração de contêiner Docker", + "espIdf.createFiles.title": "Criar projeto a partir do modelo de extensão", + "espIdf.createIdfTerminal.title": "Abra o terminal ESP-IDF", + "espIdf.createNewComponent.title": "Criar novo componente ESP-IDF", + "espIdf.createSbom.title": "Execute a verificação de vulnerabilidade ESP-IDF-SBOM", + "espIdf.createVsCodeFolder.title": "Adicionar pasta de configuração vscode", + "espIdf.customTask.title": "Executar tarefa personalizada", + "espIdf.disposeConfserverProcess.title": "Descartar o processo atual do servidor do editor de configuração do SDK", + "espIdf.doctorCommand.title": "Comando Médico", + "espIdf.efuse.clearResults.title": "Limpar resumo do eFuse", + "espIdf.eraseFlash.title": "Apagar memória flash do dispositivo", + "espIdf.examples.title": "Mostrar exemplos de projetos", + "espIdf.flashAndEncryptDevice.title": "Criptografe e atualize seu projeto", + "espIdf.flashBinaryToPartition.title": "Flash binário para partição...", + "espIdf.flashDFU.title": "Flash (DFU) seu projeto", + "espIdf.flashDevice.title": "Atualize seu projeto", + "espIdf.flashUart.title": "Flash (UART) seu projeto", + "espIdf.fullClean.title": "Projeto Totalmente Limpo", + "espIdf.genCoverage.title": "Adicionar cobertura do editor", + "espIdf.getCoverageReport.title": "Obtenha relatório de cobertura HTML para projeto", + "espIdf.getEspAdf.title": "Instale ESP-ADF", + "espIdf.getEspHomeKitSdk.title": "Instale ESP-HomeKit-SDK", + "espIdf.getEspMatter.title": "Instale ESP-Matter", + "espIdf.getEspMdf.title": "Instale ESP-MDF", + "espIdf.getEspRainmaker.title": "Instale ESP-Rainmaker", + "espIdf.heaptrace.title": "Rastreamento de pilha", + "espIdf.importProject.title": "Importar projeto ESP-IDF", + "espIdf.installEspMatterPyReqs.title": "Instale pacotes ESP-Matter Python", + "espIdf.installPyReqs.title": "Instale pacotes Python de extensão ESP-IDF", + "espIdf.jtag_flash.title": "Flash (com JTag)", + "espIdf.launchQemu.title": "Inicie o servidor QEMU", + "espIdf.launchWSServerAndMonitor.title": "Inicie o IDF Monitor para modo CoreDump / GDB-Stub", + "espIdf.menuconfig.start.title": "Editor de configuração do SDK (Menuconfig)", + "espIdf.monitorDevice.title": "Monitore dispositivo", + "espIdf.monitorQemu.title": "Monitorar dispositivo QEMU", + "espIdf.newProject.start.title": "Novo projeto", + "espIdf.ninja.summary.title": "Mostrar resumo da versão Ninja", + "espIdf.openDocUrl.title": "Abra a documentação do ESP-IDF...", + "espIdf.openOCDCommand.title": "Gerenciador OpenOCD", + "espIdf.partition.table.refresh.title": "Atualizar tabela de partição", + "espIdf.pickAWorkspaceFolder.title": "Escolha uma pasta do espaço de trabalho", + "espIdf.projectConf.title": "Selecione a configuração do projeto", + "espIdf.projectConfigurationEditor.title": "Abrir configuração do projeto", + "espIdf.qemuDebug.title": "Iniciar sessão de depuração QEMU", + "espIdf.removeCoverage.title": "Remover cobertura do editor", + "espIdf.saveDefSdkconfig.title": "ESP-IDF: Salvar arquivo SDKCONFIG padrão (save-defconfig)", + "espIdf.searchInEspIdfDocs.title": "Pesquisar na documentação...", + "espIdf.selectConfTarget.title": "Selecione onde salvar as definições de configuração", + "espIdf.selectCurrentIdfVersion.title": "Selecione a versão atual do ESP-IDF", + "espIdf.selectFlashMethodAndFlash.title": "Selecione o método Flash", + "espIdf.selectNotificationMode.title": "Selecione o modo de saída e notificação", + "espIdf.selectOpenOcdConfigFiles.title": "Selecione a configuração da placa OpenOCD", + "espIdf.selectPort.title": "Selecione a porta a ser usada (COM, tty, usbserial)", + "espIdf.setDefaultConfig.title": "Definir arquivo SDKConfig padrão no projeto", + "espIdf.setGcovConfig.title": "Configurar o projeto SDKConfig para cobertura", + "espIdf.setMatterDevicePath.title": "Definir caminho do dispositivo ESP-MATTER (ESP_MATTER_DEVICE_PATH)", + "espIdf.setPath.title": "Configurar caminhos", + "espIdf.setTarget.title": "Definir destino do dispositivo Espressif", + "espIdf.setup.title": "Configurar extensão ESP-IDF", + "espIdf.size.title": "Análise de tamanho dos binários", + "espIdf.unitTest.buildFlashUnitTestApp.title": "Teste de unidade: crie e atualize o aplicativo de teste de unidade para teste", + "espIdf.unitTest.installPyTest.title": "Teste de unidade: instale os requisitos do ESP-IDF PyTest", + "espIdf.webview.nvsPartitionEditor.title": "Abra o Editor de Partição NVS", + "espIdf.welcome.title": "Bem-vindo", + "esp_idf.appOffset.description": "Substituir o deslocamento do endereço inicial do programa de construção (ESP32_APP_FLASH_OFF)", + "esp_idf.debuggers.text.description": "O comando para executar", + "esp_idf.gdbinitFile.description": "caminho do arquivo gdbinit para adaptador de depuração ESP-IDF", + "esp_idf.initGdbCommands.description": "Um ou mais comandos GDB a serem executados para configurar o depurador subjacente. ", + "esp_idf.tmoScaleFactor.description": "Fator de escala para tempo limite do gdb [padrão: 1]", + "esp_idf.verifyAppBinBeforeDebug.description": "Verifique os binários do aplicativo antes da depuração", + "idf.flashType.description": "Método flash do dispositivo, UART ou JTag", + "idf.wssPort.description": "Porta do servidor Web Socket para Core Dump ou GDB Stub", + "openocd.tcl.host.description": "Host para conexão openocd tcl", + "openocd.tcl.port.description": "Porta para conexão openocd tcl", + "param.adapterTargetName": "Nome de destino para adaptador de depuração ESP-IDF", + "param.buildPath": "Nome do diretório de compilação do CMake", + "param.cmakeCompilerArgs": "Argumentos para tarefa de compilação do CMake", + "param.coveredDarkTheme": "Cor de fundo para linhas cobertas no tema Escuro para Cobertura ESP-IDF.", + "param.coveredLightTheme": "Cor de fundo para linhas cobertas no tema Light para cobertura ESP-IDF.", + "param.customAdapterTargetName": "Nome de destino personalizado para adaptador de depuração ESP-IDF", + "param.customTask": "Tarefa personalizada", + "param.customTerminalExecutable.title": "Executável personalizado para tarefas de extensões", + "param.customTerminalExecutableArgs.title": "Lista de argumentos para o executável personalizado para tarefas de extensão", + "param.deleteComponentsOnFullClean": "Excluir gerenciados_components no comando Full Clean Project", + "param.enableCCache.title": "Habilite CCache na tarefa de construção", + "param.enableIdfComponentManager.title": "Habilite o IDF Component Manager na tarefa de construção", + "param.enableSizeTaskAfterBuildTask.title": "Habilitar tarefa IDF Size após tarefa de construção", + "param.enableStatusBar.title": "Habilitar itens da barra de status da extensão ESP-IDF", + "param.enableUpdateSrcsToCMakeListsFile": "Habilite a atualização dos arquivos de origem em CMakeLists.txt", + "param.esp.rainmaker.oauth.url": "URL do servidor ESP-Rainmaker OAuth", + "param.espAdfPath": "Caminho para localizar a estrutura ESP-ADF (ADF_PATH)", + "param.espHomeKitSdkPath": "Caminho para localizar a estrutura ESP-HomeKit-SDK (HOMEKIT_PATH)", + "param.espIdfPath": "Caminho para localizar a estrutura ESP-IDF (IDF_PATH)", + "param.espMatterPath": "Caminho para localizar a estrutura ESP-Matter (ESP_MATTER_PATH)", + "param.espMdfPath": "Caminho para localizar a estrutura ESP-MDF (MDF_PATH)", + "param.espRainmakerPath": "Caminho para localizar a estrutura ESP-Rainmaker (RMAKER_PATH)", + "param.exportPaths": "Caminhos a serem anexados ao PATH", + "param.exportVars": "Variáveis ​​a serem adicionadas às variáveis ​​de ambiente do sistema", + "param.flashBaudRate": "Taxa de transmissão de flash ESP-IDF", + "param.gitPath.title": "Caminho executável do Git", + "param.launchMonitorOnDebugSession.title": "Inicie o IDF Monitor junto com a sessão do adaptador de depuração ESP-IDF", + "param.monitorBaudRate": "Taxa de transmissão do monitor ESP-IDF", + "param.monitorCustomTimestampFormat": "Formato de carimbo de data/hora personalizado no IDF Monitor", + "param.monitorEnableTimestamps": "Habilitar carimbos de data/hora no IDF Monitor", + "param.monitorNoReset": "Habilite o sinalizador de não reinicialização para o IDF Monitor", + "param.monitorStartDelayBeforeDebug": "Atraso para iniciar a sessão de depuração após a execução do monitor IDF (ms)", + "param.ninjaArgs": "Argumentos para tarefa de construção Ninja", + "param.notificationMode": "Notificações de extensão ESP-IDF e modo de foco de saída.", + "param.notificationMode.all": "Mostre notificações e concentre a saída das tarefas.", + "param.notificationMode.notification": "Mostre notificações, mas não concentre a saída das tarefas.", + "param.notificationMode.output": "Não mostre notificações, mas concentre a saída das tarefas.", + "param.notificationMode.silent": "Não mostre notificações e não concentre a saída das tarefas.", + "param.openOcdConfigFilesList": "Lista de arquivos de configuração dentro do diretório OpenOCD Scripts", + "param.openOcdDebugLevel": "Nível de depuração do servidor OpenOCD", + "param.openOcdLaunchArgs": "Argumentos para lançar o openOCD a partir desta extensão", + "param.partialDarkTheme": "Cor de fundo para linhas parcialmente cobertas no tema Escuro para Cobertura ESP-IDF.", + "param.partialLightTheme": "Cor de fundo para linhas parcialmente cobertas no tema Light para cobertura ESP-IDF.", + "param.port": "Caminho da porta do dispositivo selecionado", + "param.postBuildTask": "Tarefa personalizada pós-construção", + "param.postFlashTask": "Tarefa personalizada pós-flash", + "param.preBuildTask": "Tarefa personalizada de pré-construção", + "param.preFlashTask": "Tarefa personalizada pré-flash", + "param.pythonBinPath": "Caminho binário absoluto do Python usado para executar scripts Python ESP-IDF", + "param.qemuTcpPort": "Porta tcp QEMU para comunicação serial", + "param.rainmaker.api.server_url": "URL do servidor em nuvem ESP-Rainmaker", + "param.saveBeforeBuildDescription": "Salve todos os arquivos editados na área de trabalho antes de prosseguir com a compilação, embora se não conseguir salvar os arquivos, a compilação será de qualquer maneira", + "param.saveScope": "Onde salvar a configuração com comandos ESP-IDF com valor numérico como vscode.ConfigurationTarget. ", + "param.sbomFilePath.title": "caminho do arquivo esp-idf sbom", + "param.sdkconfigDefaults": "Lista de valores padrão do sdkconfig para configuração inicial de compilação", + "param.sdkconfigFilePath.title": "caminho absoluto do arquivo sdkconfig", + "param.showOnboardingOnInit": "Mostrar janela de configuração do ESP-IDF na ativação da extensão", + "param.svdFile": "Arquivo SVD para resolver a visualização periférica ESP-IDF na visualização de depuração", + "param.telemetry": "Enviar telemetria anônima e relatório de falhas de volta para a extensão (alterações nas configurações exigirão reinicialização para efeito imediato)", + "param.toolsPath": "Caminho para localizar ferramentas ESP-IDF (IDF_TOOLS_PATH)", + "param.uncoveredDarkTheme": "Cor de fundo para linhas descobertas no tema Dark para cobertura ESP-IDF.", + "param.uncoveredLightTheme": "Cor de fundo para linhas descobertas no tema Light para cobertura ESP-IDF.", + "param.useIDFKConfigStyle": "Habilitar/desabilitar validação de estilo ESP-IDF para arquivos Kconfig", + "trace.poll_period.description": "poll_period será definido para o apptrace", + "trace.skip_size.description": "skip_size será definido para o apptrace", + "trace.stop_tmo.description": "stop_tmo será definido para o apptrace", + "trace.trace_size.description": "trace_size será definido para o apptrace", + "trace.wait4halt.description": "wait4halt será definido para o apptrace", + "view.components.name": "Componentes do Projeto", + "view.debug.peripheral": "ESP-IDF: visualizador periférico", + "view.idf.espEFuseExplorer": "eFuseExplorer", + "view.idf.espRainmaker": "Criador de Chuva", + "view.idf.idfAppTraceArchive": "Arquivos do rastreador de aplicativos", + "view.idf.idfAppTracer": "Rastreador de aplicativos", + "view.idf.idfCommands": "Comandos", + "view.idf.idfPartitionExplorer": "Explorador de partição de dispositivo", + "view.idf.idfSearchResults": "Resultados da pesquisa de documentação", + "viewContainer.title": "ESP-IDF: Explorador", + "viewWelcome.idfPartitionExplorer": "Mostre a lista de partições do seu dispositivo com a opção de atualizar binários (.bin) para a partição selecionada.\n\n", + "viewWelcome.idfSearchResults": "Em qualquer editor de arquivo aberto, selecione algum texto e clique com o botão direito e selecione ESP-IDF: Pesquise na documentação para obter resultados correspondentes aqui.\n\n", + "viewWelcome.peripheralView": "Mostrar registros de periféricos do arquivo SVD definido na configuração ESP-IDF Svd File Path (idf.svdFilePath) durante a sessão de depuração ativa" +} \ No newline at end of file diff --git a/package.nls.ru.json b/package.nls.ru.json new file mode 100644 index 000000000..287a25355 --- /dev/null +++ b/package.nls.ru.json @@ -0,0 +1,182 @@ +{ + "configuration.title": "ESP-IDF", + "debug.initConfig.description": "Новая конфигурация для запуска проектов ESP-IDF.", + "debug.initConfig.name": "Отладка ESP-IDF: запуск", + "esp.component-manager.cli.addDependencyError": "Произошла ошибка при добавлении зависимости к компоненту.", + "esp.component-manager.ui.show.title": "Показать реестр компонентов", + "esp.component-manager.url.description": "URL-адрес реестра компонентов", + "esp.efuse.summary.title": "Получить сводку eFuse", + "esp.rainmaker.backend.add_node.title": "Добавить новый узел", + "esp.rainmaker.backend.connect.title": "Подключитесь к облачному серверу ESP-Rainmaker", + "esp.rainmaker.backend.logout.title": "Отвязать учетную запись Rainmaker", + "esp.rainmaker.backend.remove_node.title": "Удалить этот узел", + "esp.rainmaker.backend.sync.title": "Синхронизация с облачным сервером ESP-Rainmaker", + "esp.rainmaker.backend.update_node_param.title": "Обновить параметр для устройства", + "esp.webview.open.partition-table.title": "ESP-IDF: открыть пользовательский интерфейс редактора таблицы разделов", + "espIdf.addArduinoAsComponentToCurFolder.title": "Добавьте Arduino ESP32 в качестве компонента ESP-IDF.", + "espIdf.apptrace.archive.refresh.title": "Обновить список архивов трассировок", + "espIdf.apptrace.archive.showReport.title": "Показать отчет о трассировке", + "espIdf.apptrace.customize.title": "Настройка параметров трассировки приложения", + "espIdf.apptrace.title": "Трассировка приложения", + "espIdf.buildDevice.title": "Создайте свой проект", + "espIdf.buildFlashMonitor.title": "Создайте, прошивайте и запустите монитор на своем устройстве", + "espIdf.clearDocsSearchResult.title": "Очистить результаты поиска ESP-IDF", + "espIdf.clearSavedIdfSetups.title": "Очистить сохраненные настройки ESP-IDF", + "espIdf.cmakeListsEditor.start.title": "Редактор CMakeLists.txt", + "espIdf.configDevice.title": "Конфигурация устройства", + "espIdf.createDevContainer.title": "Добавить конфигурацию Docker-контейнера", + "espIdf.createFiles.title": "Создать проект из шаблона расширения", + "espIdf.createIdfTerminal.title": "Открыть терминал ESP-IDF", + "espIdf.createNewComponent.title": "Создать новый компонент ESP-IDF", + "espIdf.createSbom.title": "Запустите проверку уязвимостей ESP-IDF-SBOM.", + "espIdf.createVsCodeFolder.title": "Добавить папку конфигурации vscode", + "espIdf.customTask.title": "Выполнить пользовательскую задачу", + "espIdf.disposeConfserverProcess.title": "Удалить текущий серверный процесс редактора конфигурации SDK", + "espIdf.doctorCommand.title": "Доктор Команда", + "espIdf.efuse.clearResults.title": "Очистить сводку eFuse", + "espIdf.eraseFlash.title": "Очистить флэш-память с устройства", + "espIdf.examples.title": "Показать примеры проектов", + "espIdf.flashAndEncryptDevice.title": "Зашифруйте и прошивайте свой проект", + "espIdf.flashBinaryToPartition.title": "Записать двоичный файл в раздел...", + "espIdf.flashDFU.title": "Прошивка (DFU) вашего проекта", + "espIdf.flashDevice.title": "Прошить свой проект", + "espIdf.flashUart.title": "Прошивка (UART) вашего проекта", + "espIdf.fullClean.title": "Полный чистый проект", + "espIdf.genCoverage.title": "Добавить покрытие редактора", + "espIdf.getCoverageReport.title": "Получить отчет о покрытии HTML для проекта", + "espIdf.getEspAdf.title": "Установите ESP-ADF", + "espIdf.getEspHomeKitSdk.title": "Установите ESP-HomeKit-SDK.", + "espIdf.getEspMatter.title": "Установите ESP-Matter", + "espIdf.getEspMdf.title": "Установить ЭСП-МДФ", + "espIdf.getEspRainmaker.title": "Установите ESP-Rainmaker", + "espIdf.heaptrace.title": "Трассировка кучи", + "espIdf.importProject.title": "Импортировать проект ESP-IDF", + "espIdf.installEspMatterPyReqs.title": "Установите пакеты Python ESP-Matter", + "espIdf.installPyReqs.title": "Установите пакеты Python расширения ESP-IDF", + "espIdf.jtag_flash.title": "Flash (с JTag)", + "espIdf.launchQemu.title": "Запустить сервер QEMU", + "espIdf.launchWSServerAndMonitor.title": "Запустите IDF Monitor для режима CoreDump/GDB-Stub.", + "espIdf.menuconfig.start.title": "Редактор конфигурации SDK (Menuconfig)", + "espIdf.monitorDevice.title": "Мониторное устройство", + "espIdf.monitorQemu.title": "Мониторинг устройства QEMU", + "espIdf.newProject.start.title": "Новый проект", + "espIdf.ninja.summary.title": "Показать сводку сборки ниндзя", + "espIdf.openDocUrl.title": "Открыть документацию ESP-IDF...", + "espIdf.openOCDCommand.title": "Менеджер OpenOCD", + "espIdf.partition.table.refresh.title": "Обновить таблицу разделов", + "espIdf.pickAWorkspaceFolder.title": "Выберите папку рабочей области", + "espIdf.projectConf.title": "Выберите конфигурацию проекта", + "espIdf.projectConfigurationEditor.title": "Открыть конфигурацию проекта", + "espIdf.qemuDebug.title": "Запустить сеанс отладки QEMU", + "espIdf.removeCoverage.title": "Удалить покрытие редактора", + "espIdf.saveDefSdkconfig.title": "ESP-IDF: сохранить файл SDKCONFIG по умолчанию (save-defconfig).", + "espIdf.searchInEspIdfDocs.title": "Искать в документации...", + "espIdf.selectConfTarget.title": "Выберите, где сохранить настройки конфигурации", + "espIdf.selectCurrentIdfVersion.title": "Выберите текущую версию ESP-IDF", + "espIdf.selectFlashMethodAndFlash.title": "Выберите метод флэш-памяти", + "espIdf.selectNotificationMode.title": "Выберите режим вывода и уведомления", + "espIdf.selectOpenOcdConfigFiles.title": "Выберите конфигурацию платы OpenOCD", + "espIdf.selectPort.title": "Выберите порт для использования (COM, tty, usbserial)", + "espIdf.setDefaultConfig.title": "Установить файл SDKConfig по умолчанию в проекте", + "espIdf.setGcovConfig.title": "Настройка Project SDKConfig для покрытия", + "espIdf.setMatterDevicePath.title": "Установите путь к устройству ESP-MATTER (ESP_MATTER_DEVICE_PATH)", + "espIdf.setPath.title": "Настроить пути", + "espIdf.setTarget.title": "Установите целевое устройство Espressif", + "espIdf.setup.title": "Настройка расширения ESP-IDF", + "espIdf.size.title": "Анализ размера двоичных файлов", + "espIdf.unitTest.buildFlashUnitTestApp.title": "Модульное тестирование: сборка и установка приложения модульного тестирования для тестирования.", + "espIdf.unitTest.installPyTest.title": "Модульное тестирование: установите требования ESP-IDF PyTest.", + "espIdf.webview.nvsPartitionEditor.title": "Откройте редактор разделов NVS.", + "espIdf.welcome.title": "Добро пожаловать", + "esp_idf.appOffset.description": "Переопределить смещение начального адреса программы сборки (ESP32_APP_FLASH_OFF)", + "esp_idf.debuggers.text.description": "Команда для выполнения", + "esp_idf.gdbinitFile.description": "Путь к файлу gdbinit для адаптера отладки ESP-IDF", + "esp_idf.initGdbCommands.description": "Одна или несколько команд GDB, которые необходимо выполнить для настройки базового отладчика. ", + "esp_idf.tmoScaleFactor.description": "Масштабный коэффициент для тайм-аута GDB [по умолчанию: 1]", + "esp_idf.verifyAppBinBeforeDebug.description": "Проверьте двоичные файлы приложения перед отладкой", + "idf.flashType.description": "Метод прошивки устройства, UART или JTag", + "idf.wssPort.description": "Порт веб-сокет-сервера для дампа ядра или заглушки GDB", + "openocd.tcl.host.description": "Хост для подключения openocd tcl", + "openocd.tcl.port.description": "Порт для подключения openocd tcl", + "param.adapterTargetName": "Целевое имя для адаптера отладки ESP-IDF", + "param.buildPath": "Имя каталога сборки CMake", + "param.cmakeCompilerArgs": "Аргументы для задачи компиляции CMake", + "param.coveredDarkTheme": "Цвет фона для закрытых линий в темной теме для покрытия ESP-IDF.", + "param.coveredLightTheme": "Цвет фона для покрытых линий в светлой теме для покрытия ESP-IDF.", + "param.customAdapterTargetName": "Пользовательское целевое имя для адаптера отладки ESP-IDF.", + "param.customTask": "Пользовательская задача", + "param.customTerminalExecutable.title": "Пользовательский исполняемый файл для задач расширений", + "param.customTerminalExecutableArgs.title": "Список аргументов пользовательского исполняемого файла для задач расширения", + "param.deleteComponentsOnFullClean": "Удалить управляемые_компоненты по команде «Полная очистка проекта»", + "param.enableCCache.title": "Включить CCache в задаче сборки", + "param.enableIdfComponentManager.title": "Включить диспетчер компонентов IDF в задаче сборки.", + "param.enableSizeTaskAfterBuildTask.title": "Включить задачу размера IDF после задачи сборки", + "param.enableStatusBar.title": "Включить элементы строки состояния расширения ESP-IDF", + "param.enableUpdateSrcsToCMakeListsFile": "Включить исходные файлы обновлений в CMakeLists.txt", + "param.esp.rainmaker.oauth.url": "URL-адрес сервера OAuth ESP-Rainmaker", + "param.espAdfPath": "Путь для поиска платформы ESP-ADF (ADF_PATH)", + "param.espHomeKitSdkPath": "Путь для поиска платформы ESP-HomeKit-SDK (HOMEKIT_PATH)", + "param.espIdfPath": "Путь для поиска платформы ESP-IDF (IDF_PATH)", + "param.espMatterPath": "Путь для поиска структуры ESP-Matter (ESP_MATTER_PATH)", + "param.espMdfPath": "Путь для поиска платформы ESP-MDF (MDF_PATH)", + "param.espRainmakerPath": "Путь к инфраструктуре ESP-Rainmaker (RMAKER_PATH)", + "param.exportPaths": "Пути для добавления в PATH", + "param.exportVars": "Переменные, добавляемые в переменные системной среды", + "param.flashBaudRate": "Скорость передачи флэш-памяти ESP-IDF", + "param.gitPath.title": "Путь к исполняемому файлу Git", + "param.launchMonitorOnDebugSession.title": "Запустите IDF Monitor вместе с сеансом адаптера отладки ESP-IDF.", + "param.monitorBaudRate": "Скорость передачи данных монитора ESP-IDF", + "param.monitorCustomTimestampFormat": "Пользовательский формат временной метки в IDF Monitor", + "param.monitorEnableTimestamps": "Включить временные метки в IDF Monitor", + "param.monitorNoReset": "Включить флаг отсутствия сброса для монитора IDF", + "param.monitorStartDelayBeforeDebug": "Задержка начала сеанса отладки после выполнения монитора IDF (мс)", + "param.ninjaArgs": "Аргументы в пользу задачи сборки Ninja", + "param.notificationMode": "Уведомления о расширении ESP-IDF и режим фокусировки вывода.", + "param.notificationMode.all": "Показывать уведомления и фокусировать вывод задач.", + "param.notificationMode.notification": "Показывать уведомления, но не фокусировать вывод задач.", + "param.notificationMode.output": "Не показывать уведомления, но сосредоточить вывод задач.", + "param.notificationMode.silent": "Не показывать уведомления и не фокусировать вывод задач.", + "param.openOcdConfigFilesList": "Список файлов конфигурации в каталоге OpenOCD Scripts", + "param.openOcdDebugLevel": "Уровень отладки сервера OpenOCD", + "param.openOcdLaunchArgs": "Аргументы для запуска openOCD из этого расширения", + "param.partialDarkTheme": "Цвет фона для частично покрытых линий в темной теме для покрытия ESP-IDF.", + "param.partialLightTheme": "Цвет фона для частично покрытых линий в светлой теме для покрытия ESP-IDF.", + "param.port": "Путь выбранного порта устройства", + "param.postBuildTask": "Пользовательская задача после сборки", + "param.postFlashTask": "Пользовательская задача после прошивки", + "param.preBuildTask": "Предварительная сборка пользовательской задачи", + "param.preFlashTask": "Специальная задача перед прошивкой", + "param.pythonBinPath": "Абсолютный двоичный путь Python, используемый для выполнения сценариев Python ESP-IDF", + "param.qemuTcpPort": "TCP-порт QEMU для последовательной связи", + "param.rainmaker.api.server_url": "URL-адрес облачного сервера ESP-Rainmaker", + "param.saveBeforeBuildDescription": "Сохраните все отредактированные файлы в рабочей области, прежде чем приступить к сборке, хотя, если файлы не удастся сохранить, сборка все равно будет выполнена.", + "param.saveScope": "Где сохранить конфигурацию с помощью команд ESP-IDF с числовым значением в виде vscode.ConfigurationTarget. ", + "param.sbomFilePath.title": "путь к файлу esp-idf sbom", + "param.sdkconfigDefaults": "Список значений по умолчанию sdkconfig для начальной конфигурации сборки", + "param.sdkconfigFilePath.title": "абсолютный путь к файлу sdkconfig", + "param.showOnboardingOnInit": "Показывать окно конфигурации ESP-IDF при активации расширения.", + "param.svdFile": "SVD-файл для разрешения представления периферийных устройств ESP-IDF в представлении отладки.", + "param.telemetry": "Отправьте анонимную телеметрию и отчет о сбое обратно на расширение (для изменения настроек потребуется перезагрузка для немедленного эффекта)", + "param.toolsPath": "Путь для поиска инструментов ESP-IDF (IDF_TOOLS_PATH)", + "param.uncoveredDarkTheme": "Цвет фона для непокрытых линий в темной теме для покрытия ESP-IDF.", + "param.uncoveredLightTheme": "Цвет фона для непокрытых линий в светлой теме для покрытия ESP-IDF.", + "param.useIDFKConfigStyle": "Включить/отключить проверку стиля ESP-IDF для файлов Kconfig.", + "trace.poll_period.description": "poll_ period будет установлен для apptrace", + "trace.skip_size.description": "Skip_size будет установлен для трассировки приложения.", + "trace.stop_tmo.description": "stop_tmo будет установлен для apptrace", + "trace.trace_size.description": "Trace_size будет установлен для трассировки приложения.", + "trace.wait4halt.description": "wait4halt будет установлен для apptrace", + "view.components.name": "Компоненты проекта", + "view.debug.peripheral": "ESP-IDF: Периферийное средство просмотра", + "view.idf.espEFuseExplorer": "eFuseExplorer", + "view.idf.espRainmaker": "RainMaker", + "view.idf.idfAppTraceArchive": "Архивы трассировки приложений", + "view.idf.idfAppTracer": "Трассировщик приложений", + "view.idf.idfCommands": "Команды", + "view.idf.idfPartitionExplorer": "Обозреватель разделов устройства", + "view.idf.idfSearchResults": "Результаты поиска документации", + "viewContainer.title": "ESP-IDF: Проводник", + "viewWelcome.idfPartitionExplorer": "Покажите список разделов вашего устройства с возможностью записать двоичные файлы (.bin) в выбранный раздел.\n\n", + "viewWelcome.idfSearchResults": "В любом открытом редакторе файлов выделите текст, щелкните правой кнопкой мыши и выберите ESP-IDF: поиск в документации, чтобы получить соответствующие результаты здесь.\n\n", + "viewWelcome.peripheralView": "Показывать регистры периферийных устройств из файла SVD, определенного в настройке конфигурации ESP-IDF Svd File Path (idf.svdFilePath) во время активного сеанса отладки." +} \ No newline at end of file diff --git a/package.nls.zh-CN.json b/package.nls.zh-CN.json new file mode 100644 index 000000000..9c014cec7 --- /dev/null +++ b/package.nls.zh-CN.json @@ -0,0 +1,182 @@ +{ + "configuration.title": "ESP-IDF", + "debug.initConfig.description": "为启动 ESP-IDF 项目创建新配置", + "debug.initConfig.name": "ESP-IDF 调试:启动", + "esp.component-manager.cli.addDependencyError": "添加依赖到组件时出错", + "esp.component-manager.ui.show.title": "显示组件注册表", + "esp.component-manager.url.description": "组件注册表 URL", + "esp.efuse.summary.title": "获取 eFuse 摘要", + "esp.rainmaker.backend.add_node.title": "添加新节点", + "esp.rainmaker.backend.connect.title": "连接到 ESP-Rainmaker 云服务器", + "esp.rainmaker.backend.logout.title": "取消链接 Rainmaker 帐户", + "esp.rainmaker.backend.remove_node.title": "移除此节点", + "esp.rainmaker.backend.sync.title": "与 ESP-Rainmaker 云服务器同步", + "esp.rainmaker.backend.update_node_param.title": "为设备更新参数", + "esp.webview.open.partition-table.title": "ESP-IDF:打开分区表编辑器 UI", + "espIdf.addArduinoAsComponentToCurFolder.title": "将 Arduino ESP32 添加为 ESP-IDF 组件", + "espIdf.apptrace.archive.refresh.title": "刷新跟踪存档列表", + "espIdf.apptrace.archive.showReport.title": "显示跟踪报告", + "espIdf.apptrace.customize.title": "自定义应用跟踪参数", + "espIdf.apptrace.title": "应用跟踪", + "espIdf.buildDevice.title": "构建您的项目", + "espIdf.buildFlashMonitor.title": "构建、烧录并启动设备上的监视器", + "espIdf.clearDocsSearchResult.title": "清除 ESP-IDF 搜索结果", + "espIdf.clearSavedIdfSetups.title": "清除保存的 ESP-IDF 设置", + "espIdf.cmakeListsEditor.start.title": "CMakeLists.txt 编辑器", + "espIdf.configDevice.title": "设备配置", + "espIdf.createDevContainer.title": "添加 Docker 容器配置", + "espIdf.createFiles.title": "从扩展模板创建项目", + "espIdf.createIdfTerminal.title": "打开 ESP-IDF 终端", + "espIdf.createNewComponent.title": "创建新的 ESP-IDF 组件", + "espIdf.createSbom.title": "运行 ESP-IDF-SBOM 漏洞检查", + "espIdf.createVsCodeFolder.title": "添加 vscode 配置文件夹", + "espIdf.customTask.title": "执行自定义任务", + "espIdf.disposeConfserverProcess.title": "释放当前 SDK 配置编辑器服务器进程", + "espIdf.doctorCommand.title": "诊断命令", + "espIdf.efuse.clearResults.title": "清除 eFuse 摘要", + "espIdf.eraseFlash.title": "擦除设备的闪存", + "espIdf.examples.title": "显示示例项目", + "espIdf.flashAndEncryptDevice.title": "加密并烧录您的项目", + "espIdf.flashBinaryToPartition.title": "将二进制文件烧录到分区...", + "espIdf.flashDFU.title": "烧录 (DFU) 您的项目", + "espIdf.flashDevice.title": "烧录您的项目", + "espIdf.flashUart.title": "烧录 (UART) 您的项目", + "espIdf.fullClean.title": "完全清理项目", + "espIdf.genCoverage.title": "添加编辑器覆盖", + "espIdf.getCoverageReport.title": "获取项目的 HTML 覆盖率报告", + "espIdf.getEspAdf.title": "安装 ESP-ADF", + "espIdf.getEspHomeKitSdk.title": "安装 ESP-HomeKit-SDK", + "espIdf.getEspMatter.title": "安装 ESP-Matter", + "espIdf.getEspMdf.title": "安装 ESP-MDF", + "espIdf.getEspRainmaker.title": "安装 ESP-Rainmaker", + "espIdf.heaptrace.title": "堆跟踪", + "espIdf.importProject.title": "导入 ESP-IDF 项目", + "espIdf.installEspMatterPyReqs.title": "安装 ESP-Matter Python 包", + "espIdf.installPyReqs.title": "安装 ESP-IDF 扩展 Python 包", + "espIdf.jtag_flash.title": "烧录 (使用 JTag)", + "espIdf.launchQemu.title": "启动 QEMU 服务器", + "espIdf.launchWSServerAndMonitor.title": "启动 IDF 监视器以进行 CoreDump / GDB-Stub 模式", + "espIdf.menuconfig.start.title": "SDK 配置编辑器 (Menuconfig)", + "espIdf.monitorDevice.title": "监控装置", + "espIdf.monitorQemu.title": "监视 QEMU 设备", + "espIdf.newProject.start.title": "新项目", + "espIdf.ninja.summary.title": "显示 Ninja 构建摘要", + "espIdf.openDocUrl.title": "打开 ESP-IDF 文档...", + "espIdf.openOCDCommand.title": "OpenOCD 管理器", + "espIdf.partition.table.refresh.title": "刷新分区表", + "espIdf.pickAWorkspaceFolder.title": "选择工作区文件夹", + "espIdf.projectConf.title": "选择项目配置", + "espIdf.projectConfigurationEditor.title": "打开项目配置", + "espIdf.qemuDebug.title": "启动 QEMU 调试会话", + "espIdf.removeCoverage.title": "移除编辑器覆盖", + "espIdf.saveDefSdkconfig.title": "ESP-IDF:保存默认 SDKCONFIG 文件 (save-defconfig)", + "espIdf.searchInEspIdfDocs.title": "在文档中搜索...", + "espIdf.selectConfTarget.title": "选择保存配置设置的位置", + "espIdf.selectCurrentIdfVersion.title": "选择当前ESP-IDF版本", + "espIdf.selectFlashMethodAndFlash.title": "选择烧录方法", + "espIdf.selectNotificationMode.title": "选择通知模式和输出模式", + "espIdf.selectOpenOcdConfigFiles.title": "选择 OpenOCD 板配置", + "espIdf.selectPort.title": "选择要使用的端口 (COM、tty、usbserial)", + "espIdf.setDefaultConfig.title": "在项目中设置默认 SDKConfig 文件", + "espIdf.setGcovConfig.title": "为项目 SDKConfig 配置覆盖率", + "espIdf.setMatterDevicePath.title": "设置 ESP-MATTER 设备路径 (ESP_MATTER_DEVICE_PATH)", + "espIdf.setPath.title": "配置路径", + "espIdf.setTarget.title": "设置 Espressif 设备目标", + "espIdf.setup.title": "配置 ESP-IDF 扩展", + "espIdf.size.title": "分析二进制文件的大小", + "espIdf.unitTest.buildFlashUnitTestApp.title": "单元测试:为测试构建和烧录单元测试应用程序", + "espIdf.unitTest.installPyTest.title": "单元测试:安装 ESP-IDF PyTest 要求", + "espIdf.webview.nvsPartitionEditor.title": "打开 NVS 分区编辑器", + "espIdf.welcome.title": "欢迎", + "esp_idf.appOffset.description": "覆盖构建程序起始地址偏移 (ESP32_APP_FLASH_OFF)", + "esp_idf.debuggers.text.description": "要执行的命令", + "esp_idf.gdbinitFile.description": "用于 ESP-IDF 调试适配器的 gdbinit 文件路径", + "esp_idf.initGdbCommands.description": "为设置底层调试器而执行的一个或多个 GDB 命令。示例:“initGdbCommands”:[“target remote /dev/ttyUSB0”]", + "esp_idf.tmoScaleFactor.description": "GDB 超时的缩放因子 [默认值:1]", + "esp_idf.verifyAppBinBeforeDebug.description": "在调试前验证应用程序二进制文件", + "idf.flashType.description": "设备烧录方法,UART 或 JTag", + "idf.wssPort.description": "用于 Core Dump 或 GDB Stub 的 Web Socket 服务器端口", + "openocd.tcl.host.description": "用于 OpenOCD tcl 连接的主机", + "openocd.tcl.port.description": "用于 OpenOCD tcl 连接的端口", + "param.adapterTargetName": "ESP-IDF 调试适配器的目标名称", + "param.buildPath": "CMake 构建目录的名称", + "param.cmakeCompilerArgs": "用于 CMake 编译任务的参数", + "param.coveredDarkTheme": "在 ESP-IDF 覆盖率的深色主题中覆盖的行的背景颜色。", + "param.coveredLightTheme": "在 ESP-IDF 覆盖率的浅色主题中覆盖的行的背景颜色。", + "param.customAdapterTargetName": "ESP-IDF 调试适配器的自定义目标名称", + "param.customTask": "自定义任务", + "param.customTerminalExecutable.title": "扩展任务的自定义可执行文件", + "param.customTerminalExecutableArgs.title": "扩展任务的自定义可执行文件的参数列表", + "param.deleteComponentsOnFullClean": "在完全清理项目命令中删除 managed_components", + "param.enableCCache.title": "在构建任务中启用 CCache", + "param.enableIdfComponentManager.title": "在构建任务中启用 IDF 组件管理器", + "param.enableSizeTaskAfterBuildTask.title": "在构建任务后启用 IDF 大小任务", + "param.enableStatusBar.title": "启用 ESP-IDF 扩展状态栏项目", + "param.enableUpdateSrcsToCMakeListsFile": "在 CMakeLists.txt 中更新源文件", + "param.esp.rainmaker.oauth.url": "ESP-Rainmaker OAuth 服务器 URL", + "param.espAdfPath": "定位 ESP-ADF 框架的路径 (ADF_PATH)", + "param.espHomeKitSdkPath": "定位 ESP-HomeKit-SDK 框架的路径 (HOMEKIT_PATH)", + "param.espIdfPath": "定位 ESP-IDF 框架的路径 (IDF_PATH)", + "param.espMatterPath": "定位 ESP-Matter 框架的路径 (ESP_MATTER_PATH)", + "param.espMdfPath": "定位 ESP-MDF 框架的路径 (MDF_PATH)", + "param.espRainmakerPath": "定位 ESP-Rainmaker 框架的路径 (RMAKER_PATH)", + "param.exportPaths": "要附加到 PATH 的路径", + "param.exportVars": "要添加到系统环境变量的变量", + "param.flashBaudRate": "ESP-IDF 烧录波特率", + "param.gitPath.title": "Git 可执行文件路径", + "param.launchMonitorOnDebugSession.title": "在 ESP-IDF 调试适配器会话中启动 IDF 监视器", + "param.monitorBaudRate": "ESP-IDF 监视器波特率", + "param.monitorCustomTimestampFormat": "IDF 监视器中的自定义时间戳格式", + "param.monitorEnableTimestamps": "在 IDF 监视器中启用时间戳", + "param.monitorNoReset": "在 IDF 监视器中启用无重置标志", + "param.monitorStartDelayBeforeDebug": "在 IDF 监视器执行后开始调试会话的延迟时间 (ms)", + "param.ninjaArgs": "Ninja 构建任务的参数", + "param.notificationMode": "ESP-IDF 扩展通知和输出关注模式。", + "param.notificationMode.all": "显示通知并关注任务输出。", + "param.notificationMode.notification": "显示通知但不关注任务输出。", + "param.notificationMode.output": "不显示通知但关注任务输出。", + "param.notificationMode.silent": "不显示通知并且不关注任务输出。", + "param.openOcdConfigFilesList": "OpenOCD 脚本目录中的配置文件列表", + "param.openOcdDebugLevel": "OpenOCD 服务器调试级别", + "param.openOcdLaunchArgs": "从此扩展启动 OpenOCD 的参数", + "param.partialDarkTheme": "在 ESP-IDF 覆盖率的深色主题中部分覆盖的行的背景颜色。", + "param.partialLightTheme": "在 ESP-IDF 覆盖率的浅色主题中部分覆盖的行的背景颜色。", + "param.port": "选择设备端口的路径", + "param.postBuildTask": "构建后的自定义任务", + "param.postFlashTask": "烧录后的自定义任务", + "param.preBuildTask": "构建前的自定义任务", + "param.preFlashTask": "烧录前的自定义任务", + "param.pythonBinPath": "用于执行 ESP-IDF Python 脚本的 Python 绝对二进制路径", + "param.qemuTcpPort": "用于串行通信的 QEMU tcp 端口", + "param.rainmaker.api.server_url": "ESP-Rainmaker 云服务器 URL", + "param.saveBeforeBuildDescription": "在继续构建之前保存工作区中的所有编辑文件,尽管如果无法保存文件,则仍将构建", + "param.saveScope": "用数字值作为 vscode.ConfigurationTarget 保存具有 ESP-IDF 命令的配置设置的位置。 Global = 1,Workspace= 2,WorkspaceFolder=3", + "param.sbomFilePath.title": "esp-idf sbom 文件路径", + "param.sdkconfigDefaults": "初始构建配置的 sdkconfig 默认值列表", + "param.sdkconfigFilePath.title": "sdkconfig 文件的绝对路径", + "param.showOnboardingOnInit": "在扩展激活时显示 ESP-IDF 配置窗口", + "param.svdFile": "用于在调试视图中解析 ESP-IDF 外围设备视图的 SVD 文件", + "param.telemetry": "将匿名遥测和崩溃报告发送回扩展 (更改设置将需要重新启动以立即生效)", + "param.toolsPath": "用于定位 ESP-IDF 工具的路径 (IDF_TOOLS_PATH)", + "param.uncoveredDarkTheme": "在 ESP-IDF 覆盖率的深色主题中未覆盖的行的背景颜色。", + "param.uncoveredLightTheme": "在 ESP-IDF 覆盖率的浅色主题中未覆盖的行的背景颜色。", + "param.useIDFKConfigStyle": "启用/禁用 Kconfig 文件的 ESP-IDF 样式验证", + "trace.poll_period.description": "将为 apptrace 设置 poll_period", + "trace.skip_size.description": "将为 apptrace 设置 skip_size", + "trace.stop_tmo.description": "将为 apptrace 设置 stop_tmo", + "trace.trace_size.description": "将为 apptrace 设置 trace_size", + "trace.wait4halt.description": "将为 apptrace 设置 wait4halt", + "view.components.name": "项目组件", + "view.debug.peripheral": "ESP-IDF:外围设备查看器", + "view.idf.espEFuseExplorer": "eFuseExplorer", + "view.idf.espRainmaker": "RainMaker", + "view.idf.idfAppTraceArchive": "应用跟踪存档", + "view.idf.idfAppTracer": "应用跟踪器", + "view.idf.idfCommands": "命令", + "view.idf.idfPartitionExplorer": "设备分区资源管理器", + "view.idf.idfSearchResults": "文档搜索结果", + "viewContainer.title": "ESP-IDF:资源管理器", + "viewWelcome.idfPartitionExplorer": "显示您的设备的分区列表,选择要将二进制文件 (.bin) 烧录到的分区。\n\n选择您的设备串行端口,然后单击刷新分区表。", + "viewWelcome.idfSearchResults": "在任何已打开的文件编辑器中,选择一些文本,右键单击并选择 ESP-IDF:在文档中搜索以在此处获取匹配的结果。\n\n结果基于您当前的 VS Code 语言、idf.espIdfPath 版本 (否则为最新版本) 和 idf.adapterTargetName。", + "viewWelcome.peripheralView": "显示在活动调试会话期间在 ESP-IDF Svd 文件路径 (idf.svdFilePath) 配置设置中定义的外围设备寄存器" +} \ No newline at end of file diff --git a/schema.i18n.json b/schema.i18n.json deleted file mode 100644 index e10e7571e..000000000 --- a/schema.i18n.json +++ /dev/null @@ -1,244 +0,0 @@ -{ - "out": { - "build": { - "buildCmd": ["build.waitProcessIsFinishedMessage"] - }, - "espIdf": { - "menuconfig": { - "MenuconfigPanel": [ - "menuconfig.panelName", - "menuconfig.discardValues", - "menuconfig.saveValues", - "menuconfig.wrongIdfPath", - "menuconfig.enterIdfPath", - "menuconfig.changesNotSaved", - "menuconfig.save", - "menuconfig.discard", - "menuconfig.returnGuiconfig" - ] - }, - "monitor": { - "command": ["monitor.waitProcessIsFinishedMessage"] - }, - "serial": { - "serialPort": [ - "serial.notSerialPortFoundMessage", - "serial.noPortSelectedMessage", - "serial.portHasBeenSelectedMessage", - "serial.selectSerialPortMessage" - ] - }, - "size": { - "idfSize": [ - "idfSize.canceledError", - "idfSize.filesMsg", - "idfSize.buildFirstError", - "idfSize.overviewMsg", - "idfSize.archivesMsg", - "idfSize.commandError" - ] - } - }, - "flash": { - "flashCmd": ["flash.waitProcessIsFinishedMessage"] - }, - "extension": [ - "extension.defaultFoldersGeneratedMessage", - "extension.openFolderFirst", - "espIdf.pickAWorkspaceFolder.text", - "extension.noFolderMessage", - "selectFrameworkMessage", - "extension.noOptionMessage", - "extension.noPathUpdatedMessage", - "extension.selectConfigMessage", - "extension.noParamUpdatedMessage", - "extension.defaultSdkconfigGeneratedMessage", - "extension.openFolderSdkconfigMessage", - "extension.elfNotFoundMessage", - "extension.gdbNotFoundMessage", - "extension.enterIdfPathMessage", - "extension.enterIdfToolsPathMessage", - "extension.enterDevicePortMessage", - "extension.enterDeviceTargetMessage", - "extension.enterFlashBaudRateMessage", - "extension.enterOpenOcdConfigMessage", - "extension.enterCustomPathsMessage", - "extension.cmdNotWebIDE" - ], - "idfComponentsDataProvider": [ - "idfComponentDataProvider.proj_desc_not_found" - ], - "idfConfiguration": ["idfConfiguration.hasBeenUpdated"], - "utils": ["utils.currentFolder", "utils.openComponentTitle"] - }, - "views": { - "menuconfig": ["save", "discard", "reset"] - }, - "package": [ - "espIdf.createFiles.title", - "espIdf.createVsCodeFolder.title", - "espIdf.setPath.title", - "espIdf.createIdfTerminal.title", - "espIdf.selectConfTarget.title", - "espIdf.selectNotificationMode.title", - "espIdf.setTarget.title", - "espIdf.configDevice.title", - "espIdf.menuconfig.start.title", - "espIdf.cmakeListsEditor.start.title", - "espIdf.disposeConfserverProcess.title", - "espIdf.newProject.start.title", - "espIdf.setDefaultConfig.title", - "espIdf.selectPort.title", - "espIdf.buildDevice.title", - "espIdf.flashDevice.title", - "espIdf.flashAndEncryptDevice.title", - "espIdf.flashDFU.title", - "espIdf.monitorDevice.title", - "espIdf.setup.title", - "espIdf.welcome.title", - "espIdf.examples.title", - "espIdf.buildFlashMonitor.title", - "espIdf.pickAWorkspaceFolder.title", - "espIdf.launchWSServerAndMonitor.title", - "espIdf.searchInEspIdfDocs.title", - "espIdf.addArduinoAsComponentToCurFolder.title", - "espIdf.size.title", - "espIdf.apptrace.title", - "espIdf.heaptrace.title", - "espIdf.openOCDCommand.title", - "espIdf.genCoverage.title", - "espIdf.removeCoverage.title", - "espIdf.getCoverageReport.title", - "espIdf.getEspAdf.title", - "espIdf.getEspMdf.title", - "espIdf.getEspMatter.title", - "espIdf.getEspRainmaker.title", - "espIdf.getEspHomeKitSdk.title", - "espIdf.installEspMatterPyReqs.title", - "espIdf.installPyReqs.title", - "espIdf.openDocUrl.title", - "espIdf.clearDocsSearchResult.title", - "espIdf.selectOpenOcdConfigFiles.title", - "espIdf.fullClean.title", - "espIdf.createNewComponent.title", - "espIdf.webview.nvsPartitionEditor.title", - "espIdf.doctorCommand.title", - "espIdf.ninja.summary.title", - "espIdf.setGcovConfig.title", - "espIdf.importProject.title", - "espIdf.eraseFlash.title", - "espIdf.setGcovConfig.title", - "espIdf.monitorQemu.title", - "espIdf.launchQemu.title", - "espIdf.qemuDebug.title", - "espIdf.flashUart.title", - "espIdf.saveDefSdkconfig.title", - "espIdf.createDevContainer.title", - "espIdf.partition.table.refresh.title", - "espIdf.flashBinaryToPartition.title", - "espIdf.setMatterDevicePath.title", - "espIdf.customTask.title", - "espIdf.projectConfigurationEditor.title", - "espIdf.projectConf.title", - "espIdf.clearSavedIdfSetups.title", - "espIdf.unitTest.buildFlashUnitTestApp.title", - "espIdf.unitTest.installPyTest.title", - "espIdf.createSbom.title", - "debug.initConfig.name", - "debug.initConfig.description", - "param.adapterTargetName", - "param.customAdapterTargetName", - "param.openOcdConfigFilesList", - "param.openOcdLaunchArgs", - "param.flashBaudRate", - "param.monitorBaudRate", - "param.port", - "param.pythonBinPath", - "param.espIdfPath", - "param.espAdfPath", - "param.espMdfPath", - "param.espMatterPath", - "param.espRainmakerPath", - "param.espHomeKitSdkPath", - "param.toolsPath", - "param.exportPaths", - "param.exportVars", - "param.useIDFKConfigStyle", - "param.showOnboardingOnInit", - "param.cmakeCompilerArgs", - "param.ninjaArgs", - "param.coveredLightTheme", - "param.coveredDarkTheme", - "param.partialLightTheme", - "param.partialDarkTheme", - "param.uncoveredLightTheme", - "param.uncoveredDarkTheme", - "param.sdkconfigDefaults", - "param.monitorStartDelayBeforeDebug", - "param.monitorNoReset", - "param.monitorEnableTimestamps", - "param.monitorCustomTimestampFormat", - "param.customTerminalExecutable.title", - "param.customTerminalExecutableArgs.title", - "view.components.name", - "configuration.title", - "espIdf.apptrace.archive.refresh.title", - "espIdf.apptrace.archive.showReport.title", - "espIdf.apptrace.customize.title", - "trace.poll_period.description", - "trace.trace_size.description", - "trace.stop_tmo.description", - "trace.wait4halt.description", - "trace.skip_size.description", - "param.saveBeforeBuildDescription", - "param.notificationMode", - "param.saveScope", - "param.rainmaker.api.server_url", - "esp.rainmaker.backend.sync.title", - "esp.rainmaker.backend.connect.title", - "esp.rainmaker.backend.logout.title", - "esp.rainmaker.backend.add_node.title", - "esp.rainmaker.backend.remove_node.title", - "esp.rainmaker.backend.update_node_param.title", - "param.esp.rainmaker.oauth.url", - "idf.wssPort.description", - "esp.webview.open.partition-table.title", - "esp.efuse.summary.title", - "espIdf.efuse.clearResults.title", - "espIdf.jtag_flash.title", - "espIdf.selectFlashMethodAndFlash.title", - "espIdf.selectCurrentIdfVersion.title", - "idf.flashType.description", - "openocd.tcl.host.description", - "openocd.tcl.port.description", - "esp.component-manager.ui.show.title", - "esp.component-manager.cli.addDependencyError", - "esp.component-manager.url.description", - "espIdf.launchWSServerAndMonitor.title", - "esp_idf.appOffset.description", - "esp_idf.initGdbCommands.description", - "esp_idf.debuggers.text.description", - "esp_idf.gdbinitFile.description", - "esp_idf.verifyAppBinBeforeDebug.description", - "esp_idf.tmoScaleFactor.description", - "param.launchMonitorOnDebugSession.title", - "param.enableIdfComponentManager.title", - "param.enableCCache.title", - "param.gitPath.title", - "param.enableUpdateSrcsToCMakeListsFile", - "param.qemuTcpPort", - "param.openOcdDebugLevel", - "param.customTask", - "param.buildPath", - "param.preBuildTask", - "param.postBuildTask", - "param.preFlashTask", - "param.postFlashTask", - "param.svdFile", - "param.deleteComponentsOnFullClean", - "param.enableStatusBar.title", - "param.enableSizeTaskAfterBuildTask.title", - "param.sdkconfigFilePath.title", - "param.sbomFilePath.title" - ] -} diff --git a/src/build/buildCmd.ts b/src/build/buildCmd.ts index 0e14a2463..4b3c2a796 100644 --- a/src/build/buildCmd.ts +++ b/src/build/buildCmd.ts @@ -19,7 +19,6 @@ import { pathExists } from "fs-extra"; import { BuildTask } from "./buildTask"; import { FlashTask } from "../flash/flashTask"; -import { LocDictionary } from "../localizationDictionary"; import * as vscode from "vscode"; import { Logger } from "../logger/logger"; import { TaskManager } from "../taskManager"; @@ -30,8 +29,6 @@ import { CustomTask, CustomTaskType } from "../customTasks/customTaskProvider"; import { readParameter } from "../idfConfiguration"; import { ESP } from "../config"; -const locDic = new LocDictionary(__filename); - export async function buildCommand( workspace: vscode.Uri, cancelToken: vscode.CancellationToken, @@ -41,10 +38,7 @@ export async function buildCommand( const buildTask = new BuildTask(workspace); const customTask = new CustomTask(workspace); if (BuildTask.isBuilding || FlashTask.isFlashing) { - const waitProcessIsFinishedMsg = locDic.localize( - "build.waitProcessIsFinishedMessage", - "Wait for ESP-IDF build or flash to finish" - ); + const waitProcessIsFinishedMsg = vscode.l10n.t("Wait for ESP-IDF build or flash to finish"); Logger.errorNotify( waitProcessIsFinishedMsg, new Error("One_Task_At_A_Time") diff --git a/src/component-manager/utils.ts b/src/component-manager/utils.ts index 2d5865dcf..b2a69a8db 100644 --- a/src/component-manager/utils.ts +++ b/src/component-manager/utils.ts @@ -14,16 +14,13 @@ * limitations under the License. */ -import { existsSync } from 'fs'; +import { existsSync } from "fs"; import { Logger } from "../logger/logger"; import { spawn, appendIdfAndToolsToPath } from "../utils"; -import { LocDictionary } from "../localizationDictionary"; -import { Uri } from "vscode"; +import { Uri, l10n } from "vscode"; import { readParameter } from "../idfConfiguration"; import { join } from "path"; -const locDict = new LocDictionary("ComponentRegistryPanel"); - export async function addDependency( workspace: Uri, dependency: string, @@ -33,30 +30,37 @@ export async function addDependency( const idfPathDir = readParameter("idf.espIdfPath", workspace); const idfPy = join(idfPathDir, "tools", "idf.py"); const modifiedEnv = appendIdfAndToolsToPath(workspace); - const pythonBinPath = readParameter("idf.pythonBinPath", workspace) as string; - const enableCCache = readParameter("idf.enableCCache", workspace) as boolean; + const pythonBinPath = readParameter( + "idf.pythonBinPath", + workspace + ) as string; + const enableCCache = readParameter( + "idf.enableCCache", + workspace + ) as boolean; const addDependencyArgs: string[] = [idfPy]; if (enableCCache) { - addDependencyArgs.push("--ccache") + addDependencyArgs.push("--ccache"); } - addDependencyArgs.push("add-dependency", `--component=${component}`, dependency, "reconfigure"); - const addDependencyResult = await spawn( - pythonBinPath, - addDependencyArgs, - { - cwd: workspace.fsPath, - env: modifiedEnv, - } + addDependencyArgs.push( + "add-dependency", + `--component=${component}`, + dependency, + "reconfigure" ); + const addDependencyResult = await spawn(pythonBinPath, addDependencyArgs, { + cwd: workspace.fsPath, + env: modifiedEnv, + }); Logger.infoNotify( `Added dependency ${dependency} to the component "${component}"` ); Logger.info(addDependencyResult.toString()); } catch (error) { const throwableError = new Error( - locDict.localize( - "idfpy.commandError", - `Error encountered while adding dependency ${dependency} to the component "${component}"` + l10n.t( + `Error encountered while adding dependency {dependency} to the component "{component}"`, + { dependency, component } ) ); Logger.error(error.message, error); @@ -74,12 +78,20 @@ export async function createProject( const modifiedEnv = appendIdfAndToolsToPath(workspace); const pythonBinPath = readParameter("idf.pythonBinPath") as string; - if (!existsSync(idfPathDir) || !existsSync(idfPy) || !existsSync(pythonBinPath)) { - throw new Error('The paths to idf, idf.py or pythonBin do not exist.'); + if ( + !existsSync(idfPathDir) || + !existsSync(idfPy) || + !existsSync(pythonBinPath) + ) { + throw new Error("The paths to idf, idf.py or pythonBin do not exist."); } - const createProjectCommand: string[] = [idfPy, "create-project-from-example", `${example}`]; - + const createProjectCommand: string[] = [ + idfPy, + "create-project-from-example", + `${example}`, + ]; + const createProjectResult = await spawn( pythonBinPath, createProjectCommand, @@ -89,16 +101,13 @@ export async function createProject( } ); - Logger.infoNotify( - `Creating project from ${example}"` - ); + Logger.infoNotify(`Creating project from ${example}"`); Logger.info(createProjectResult.toString()); - } catch (error) { const throwableError = new Error( - `${locDict.localize( - "idfpy.commandError", - `Error encountered while creating project from example ${example}"` + `${l10n.t( + `Error encountered while creating project from example "{example}"`, + { example } )}. Original error: ${error.message}` ); Logger.error(error.message, error); diff --git a/src/espIdf/menuconfig/MenuconfigPanel.ts b/src/espIdf/menuconfig/MenuconfigPanel.ts index 89b643151..b0f8cd275 100644 --- a/src/espIdf/menuconfig/MenuconfigPanel.ts +++ b/src/espIdf/menuconfig/MenuconfigPanel.ts @@ -14,15 +14,12 @@ import * as path from "path"; import * as vscode from "vscode"; -import { LocDictionary } from "../../localizationDictionary"; import { Logger } from "../../logger/logger"; import { getWebViewFavicon } from "../../utils"; import { ConfserverProcess } from "./confServerProcess"; import { Menu } from "./Menu"; import { NotificationMode, readParameter } from "../../idfConfiguration"; -const locDic = new LocDictionary(__filename); - export class MenuConfigPanel { public static currentPanel: MenuConfigPanel | undefined; @@ -59,10 +56,7 @@ export class MenuConfigPanel { ) { this.curWorkspaceFolder = curWorkspaceFolder; - const menuconfigPanelTitle = locDic.localize( - "menuconfig.panelName", - "SDK Configuration editor" - ); + const menuconfigPanelTitle = vscode.l10n.t("SDK Configuration editor"); this.panel = vscode.window.createWebviewPanel( MenuConfigPanel.viewType, menuconfigPanelTitle, @@ -85,26 +79,25 @@ export class MenuConfigPanel { ConfserverProcess.registerListener(this.updateConfigValues); - const menuconfigViewDict = new LocDictionary("menuconfig", "views"); + const menuconfigViewDict = { + save: vscode.l10n.t("Save"), + discard: vscode.l10n.t("Discard"), + reset: vscode.l10n.t("Reset"), + }; this.panel.webview.postMessage({ command: "load_dictionary", - text_dictionary: menuconfigViewDict.getDictionary(), + text_dictionary: menuconfigViewDict, }); this.panel.onDidDispose( () => { if (!ConfserverProcess.areValuesSaved()) { - const changesNotSavedMessage = locDic.localize( - "menuconfig.changesNotSaved", + const changesNotSavedMessage = vscode.l10n.t( "Changes in SDK Configuration editor have not been saved. Would you like to save them?" ); - const saveMsg = locDic.localize("menuconfig.save", "Save"); - const discardMsg = locDic.localize( - "menuconfig.discard", - "Don't save" - ); - const returnToGuiconfigMsg = locDic.localize( - "menuconfig.returnGuiconfig", + const saveMsg = vscode.l10n.t("Save"); + const discardMsg = vscode.l10n.t("Discard"); + const returnToGuiconfigMsg = vscode.l10n.t( "Return to SDK Configuration editor" ); const isModal = process.platform !== "win32" ? true : false; @@ -142,12 +135,11 @@ export class MenuConfigPanel { ); break; case "setDefault": - const changesNotSavedMessage = locDic.localize( - "menuconfig.confirmSetDefault", + const changesNotSavedMessage = vscode.l10n.t( "This action will delete your project sdkconfig. Continue?" ); - const yesMsg = locDic.localize("menuconfig.save", "Yes"); - const noMsg = locDic.localize("menuconfig.discard", "No"); + const yesMsg = vscode.l10n.t("Save"); + const noMsg = vscode.l10n.t("Discard"); const isModal = process.platform !== "win32" ? true : false; const selected = await vscode.window.showInformationMessage( changesNotSavedMessage, @@ -191,16 +183,14 @@ export class MenuConfigPanel { break; case "saveChanges": ConfserverProcess.saveGuiConfigValues(); - const saveMessage = locDic.localize( - "menuconfig.saveValues", + const saveMessage = vscode.l10n.t( "Saved changes in SDK Configuration editor" ); Logger.infoNotify(saveMessage); break; case "discardChanges": ConfserverProcess.loadGuiConfigValues(); - const discardMessage = locDic.localize( - "menuconfig.discardValues", + const discardMessage = vscode.l10n.t( "Discarded changes in SDK Configuration editor" ); Logger.infoNotify(discardMessage); diff --git a/src/espIdf/menuconfig/kconfigMenuLoader.ts b/src/espIdf/menuconfig/kconfigMenuLoader.ts index 4625480b5..9632a3bbe 100644 --- a/src/espIdf/menuconfig/kconfigMenuLoader.ts +++ b/src/espIdf/menuconfig/kconfigMenuLoader.ts @@ -2,13 +2,13 @@ * Project: ESP-IDF VSCode Extension * File Created: Friday, 21st June 2019 10:57:18 am * Copyright 2019 Espressif Systems (Shanghai) CO LTD - *  + * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at - *  + * * http://www.apache.org/licenses/LICENSE-2.0 - *  + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -19,7 +19,6 @@ import * as path from "path"; import * as vscode from "vscode"; import { readParameter } from "../../idfConfiguration"; -import { LocDictionary } from "../../localizationDictionary"; import { readFileSync } from "../../utils"; import { formatHelpText } from "./helpTextFormatter"; import { Menu, menuType } from "./Menu"; @@ -56,12 +55,10 @@ export class KconfigMenuLoader { return newConfig; } - private locDic: LocDictionary; private workspaceFolder: vscode.Uri; constructor(workspaceFolder: vscode.Uri) { this.workspaceFolder = workspaceFolder; - this.locDic = new LocDictionary(__filename); } public initMenuconfigServer(): Menu[] { diff --git a/src/espIdf/monitor/command.ts b/src/espIdf/monitor/command.ts index ff6fffa61..1279607ba 100644 --- a/src/espIdf/monitor/command.ts +++ b/src/espIdf/monitor/command.ts @@ -16,19 +16,16 @@ * limitations under the License. */ import { join } from "path"; -import { commands, Uri } from "vscode"; +import { commands, l10n, Uri } from "vscode"; import { FlashTask } from "../../flash/flashTask"; import { readParameter } from "../../idfConfiguration"; import * as utils from "../../utils"; import { BuildTask } from "../../build/buildTask"; -import { LocDictionary } from "../../localizationDictionary"; import { Logger } from "../../logger/logger"; import { R_OK } from "constants"; import { getProjectName } from "../../workspaceConfig"; import { IDFMonitor } from "."; -const locDic = new LocDictionary(__filename); - export async function createNewIdfMonitor( workspaceFolder: Uri, noReset: boolean = false, @@ -37,10 +34,7 @@ export async function createNewIdfMonitor( serialPort?: string ) { if (BuildTask.isBuilding || FlashTask.isFlashing) { - const waitProcessIsFinishedMsg = locDic.localize( - "monitor.waitProcessIsFinishedMessage", - "Wait for ESP-IDF task to finish" - ); + const waitProcessIsFinishedMsg = l10n.t("Wait for ESP-IDF task to finish"); Logger.errorNotify( waitProcessIsFinishedMsg, new Error("One_Task_At_A_Time") @@ -114,7 +108,7 @@ export async function createNewIdfMonitor( workspaceFolder, toolchainPrefix, shellPath, - shellExecutableArgs + shellExecutableArgs, }); return monitor; } diff --git a/src/espIdf/serial/serialPort.ts b/src/espIdf/serial/serialPort.ts index 972e03203..66ef0fa17 100644 --- a/src/espIdf/serial/serialPort.ts +++ b/src/espIdf/serial/serialPort.ts @@ -18,7 +18,6 @@ import * as vscode from "vscode"; import * as idfConf from "../../idfConfiguration"; -import { LocDictionary } from "../../localizationDictionary"; import { Logger } from "../../logger/logger"; import { spawn } from "../../utils"; import { SerialPortDetails } from "./serialPortDetails"; @@ -33,20 +32,12 @@ export class SerialPort { } private static instance: SerialPort; - private locDic: LocDictionary; - - private constructor() { - this.locDic = new LocDictionary(__filename); - } public promptUserToSelect(workspaceFolder: vscode.Uri) { return SerialPort.shared().displayList(workspaceFolder); } private async displayList(workspaceFolder: vscode.Uri) { - const msgDefault = - "Select the available serial port where your device is connected."; - const msg = this.locDic.localize( - "serial.selectSerialPortMessage", - msgDefault + const msg = vscode.l10n.t( + "Select the available serial port where your device is connected." ); try { @@ -87,10 +78,7 @@ export class SerialPort { vscode.ConfigurationTarget.WorkspaceFolder, wsFolder ); - const portHasBeenSelectedMsg = this.locDic.localize( - "serial.portHasBeenSelectedMessage", - "Port has been updated to " - ); + const portHasBeenSelectedMsg = vscode.l10n.t("Port has been updated to "); Logger.infoNotify( `${portHasBeenSelectedMsg}${l} in ${settingsSavedLocation}` ); diff --git a/src/espIdf/size/idfSize.ts b/src/espIdf/size/idfSize.ts index f70a941d2..b78ecdee9 100644 --- a/src/espIdf/size/idfSize.ts +++ b/src/espIdf/size/idfSize.ts @@ -2,13 +2,13 @@ * Project: ESP-IDF VSCode Extension * File Created: Friday, 21st June 2019 10:57:18 am * Copyright 2019 Espressif Systems (Shanghai) CO LTD - *  + * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at - *  + * * http://www.apache.org/licenses/LICENSE-2.0 - *  + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -19,7 +19,6 @@ import * as path from "path"; import * as vscode from "vscode"; import * as idfConf from "../../idfConfiguration"; -import { LocDictionary } from "../../localizationDictionary"; import { Logger } from "../../logger/logger"; import { fileExists, spawn } from "../../utils"; import { getProjectName } from "../../workspaceConfig"; @@ -28,10 +27,8 @@ import * as utils from "../../utils"; export class IDFSize { private readonly workspaceRoot: vscode.Uri; private isCanceled: boolean; - private locDict: LocDictionary; constructor(workspaceRoot: vscode.Uri) { this.workspaceRoot = workspaceRoot; - this.locDict = new LocDictionary(__filename); } public cancel() { this.isCanceled = true; @@ -41,17 +38,13 @@ export class IDFSize { ) { if (this.isCanceled) { throw new Error( - this.locDict.localize( - "idfSize.canceledError", - "Cannot proceed with size analysis on a canceled context" - ) + vscode.l10n.t("Cannot proceed with size analysis on a canceled context") ); } const isBuilt = await this.isBuiltAlready(); if (!isBuilt) { throw new Error( - this.locDict.localize( - "idfSize.buildFirstError", + vscode.l10n.t( "Build is required for a size analysis, build your project first" ) ); @@ -59,10 +52,7 @@ export class IDFSize { try { const mapFilePath = await this.mapFilePath(); - let locMsg = this.locDict.localize( - "idfSize.overviewMsg", - "Gathering Overview" - ); + let locMsg = vscode.l10n.t("Gathering Overview"); const espIdfPath = idfConf.readParameter( "idf.espIdfPath", this.workspaceRoot @@ -79,10 +69,7 @@ export class IDFSize { ]); progress.report({ increment: 30, message: locMsg }); - locMsg = this.locDict.localize( - "idfSize.archivesMsg", - "Gathering Archive List" - ); + locMsg = vscode.l10n.t("Gathering Archive List"); const archives = await this.idfCommandInvoker([ "idf_size.py", mapFilePath, @@ -91,10 +78,7 @@ export class IDFSize { ]); progress.report({ increment: 30, message: locMsg }); - locMsg = this.locDict.localize( - "idfSize.filesMsg", - "Calculating File Sizes for all the archives" - ); + locMsg = vscode.l10n.t("Calculating File Sizes for all the archives"); const files = await this.idfCommandInvoker([ "idf_size.py", mapFilePath, @@ -145,10 +129,7 @@ export class IDFSize { return buffObj; } catch (error) { const throwableError = new Error( - this.locDict.localize( - "idfSize.commandError", - "Error encountered while calling idf_size.py" - ) + vscode.l10n.t("Error encountered while calling idf_size.py") ); Logger.error(error.message, error); throw throwableError; diff --git a/src/examples/ExamplesPanel.ts b/src/examples/ExamplesPanel.ts index cd0b207ea..c283b6ef9 100644 --- a/src/examples/ExamplesPanel.ts +++ b/src/examples/ExamplesPanel.ts @@ -12,10 +12,9 @@ // See the License for the specific language governing permissions and // limitations under the License. -import { ensureDir, readFile, readJSON, writeJSON } from "fs-extra"; +import { ensureDir, readFile } from "fs-extra"; import * as path from "path"; import * as vscode from "vscode"; -import { LocDictionary } from "../localizationDictionary"; import { Logger } from "../logger/logger"; import * as utils from "../utils"; import { createExamplesHtml } from "./createExamplesHtml"; @@ -24,8 +23,6 @@ import { getExamplesList, IExampleCategory } from "./Example"; import { ComponentManagerUIPanel } from "../component-manager/panel"; import { OutputChannel } from "../logger/outputChannel"; -const locDic = new LocDictionary("ExamplesPanel"); - export class ExamplesPlanel { public static currentPanel: ExamplesPlanel | undefined; @@ -59,10 +56,7 @@ export class ExamplesPlanel { targetFrameworkFolder: string, targetDesc: string ) { - const panelTitle = locDic.localize( - "examples.panelName", - `${targetDesc} Examples` - ); + const panelTitle = vscode.l10n.t("{targetDesc} Examples", { targetDesc }); this.panel = vscode.window.createWebviewPanel( ExamplesPlanel.viewType, panelTitle, @@ -150,7 +144,7 @@ export class ExamplesPlanel { example_detail: contentStr, }); } catch (err) { - const notAvailable = "No README.md available for this project."; + const notAvailable = vscode.l10n.t("No README.md available for this project."); Logger.info(notAvailable); Logger.info(err); this.panel.webview.postMessage({ diff --git a/src/extension.ts b/src/extension.ts index b7cb2cb1e..34ca347b1 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -39,7 +39,6 @@ import { import { AppTraceTreeDataProvider } from "./espIdf/tracing/tree/appTraceTreeDataProvider"; import { ExamplesPlanel } from "./examples/ExamplesPanel"; import * as idfConf from "./idfConfiguration"; -import { LocDictionary } from "./localizationDictionary"; import { Logger } from "./logger/logger"; import { OutputChannel } from "./logger/outputChannel"; import * as utils from "./utils"; @@ -193,23 +192,19 @@ let peripheralTreeView: vscode.TreeView; // Process to execute build, debug or monitor let monitorTerminal: vscode.Terminal; -const locDic = new LocDictionary(__filename); // Websocket Server let wsServer: WSServer; // Precheck methods and their messages -const openFolderMsg = locDic.localize( - "extension.openFolderFirst", - "Open a folder first." -); -const cmdNotForWebIdeMsg = locDic.localize( - "extension.cmdNotWebIDE", + +const openFolderFirstMsg = vscode.l10n.t("Open a folder first."); +const cmdNotForWebIdeMsg = vscode.l10n.t( "Selected command is not available in WebIDE" ); const openFolderCheck = [ PreCheck.isWorkspaceFolderOpen, - openFolderMsg, + openFolderFirstMsg, ] as utils.PreCheckInput; const webIdeCheck = [ PreCheck.notUsingWebIde, @@ -481,12 +476,17 @@ export async function activate(context: vscode.ExtensionContext) { const projectDirOption = await vscode.window.showQuickPick( [ { - label: `Use current folder (${workspaceRoot.fsPath})`, + label: vscode.l10n.t("Use current folder: {workspace}", { + workspace: workspaceRoot.fsPath, + }), target: "current", }, - { label: "Choose a container directory...", target: "another" }, + { + label: vscode.l10n.t("Choose a container directory..."), + target: "another", + }, ], - { placeHolder: "Select a directory to use" } + { placeHolder: vscode.l10n.t("Select a directory to use") } ); if (!projectDirOption) { return; @@ -508,7 +508,7 @@ export async function activate(context: vscode.ExtensionContext) { const selectedTemplate = await vscode.window.showQuickPick( utils.chooseTemplateDir(), - { placeHolder: "Select a template to use" } + { placeHolder: vscode.l10n.t("Select a template to use") } ); if (!selectedTemplate) { return; @@ -549,8 +549,7 @@ export async function activate(context: vscode.ExtensionContext) { projectPath, true ); - const defaultFoldersMsg = locDic.localize( - "extension.defaultFoldersGeneratedMessage", + const defaultFoldersMsg = vscode.l10n.t( "Template folders has been generated." ); Logger.infoNotify(defaultFoldersMsg); @@ -570,12 +569,16 @@ export async function activate(context: vscode.ExtensionContext) { ) as string; const buildDirExists = await utils.dirExistPromise(buildDir); if (!buildDirExists) { - const errStr = "There is no build directory to clean, exiting!"; + const errStr = vscode.l10n.t( + "There is no build directory to clean, exiting!" + ); OutputChannel.appendLineAndShow(errStr); return Logger.warnNotify(errStr); } if (ConfserverProcess.exists()) { - const closingSDKConfigMsg = `Trying to delete the build folder. Closing existing SDK Configuration editor process...`; + const closingSDKConfigMsg = vscode.l10n.t( + `Trying to delete the build folder. Closing existing SDK Configuration editor process...` + ); OutputChannel.init().appendLine(closingSDKConfigMsg); Logger.info(closingSDKConfigMsg); ConfserverProcess.dispose(); @@ -586,12 +589,16 @@ export async function activate(context: vscode.ExtensionContext) { constants.R_OK ); if (!doesCmakeCacheExists) { - const errStr = `There is no CMakeCache.txt. Please try to delete the build directory manually.`; + const errStr = vscode.l10n.t( + `There is no CMakeCache.txt. Please try to delete the build directory manually.` + ); OutputChannel.appendLineAndShow(errStr); return Logger.warnNotify(errStr); } if (BuildTask.isBuilding || FlashTask.isFlashing) { - const errStr = `There is a build or flash task running. Wait for it to finish or cancel them before clean.`; + const errStr = vscode.l10n.t( + `There is a build or flash task running. Wait for it to finish or cancel them before clean.` + ); OutputChannel.appendLineAndShow(errStr); return Logger.warnNotify(errStr); } @@ -612,7 +619,7 @@ export async function activate(context: vscode.ExtensionContext) { await del(managedComponents, { force: true }); } } - Logger.infoNotify("Build directory has been deleted."); + Logger.infoNotify(vscode.l10n.t("Build directory has been deleted.")); } catch (error) { OutputChannel.appendLineAndShow(error.message); Logger.errorNotify(error.message, error); @@ -656,7 +663,9 @@ export async function activate(context: vscode.ExtensionContext) { { cancellable: true, location: ProgressLocation, - title: "ESP-IDF: Erasing device flash memory (erase_flash)", + title: vscode.l10n.t( + "ESP-IDF: Erasing device flash memory (erase_flash)" + ), }, async ( progress: vscode.Progress<{ @@ -698,7 +707,7 @@ export async function activate(context: vscode.ExtensionContext) { { cancellable: true, location: ProgressLocation, - title: "ESP-IDF: Arduino ESP32 as ESP-IDF component", + title: vscode.l10n.t("ESP-IDF: Arduino ESP32 as ESP-IDF component"), }, async ( progress: vscode.Progress<{ @@ -732,7 +741,11 @@ export async function activate(context: vscode.ExtensionContext) { arduinoDirPath ); if (arduinoDirExists) { - return Logger.infoNotify(`${arduinoDirPath} already exists.`); + return Logger.infoNotify( + vscode.l10n.t(`{arduinoDirPath} already exists.`, { + arduinoDirPath, + }) + ); } await arduinoComponentManager.addArduinoAsComponent(); } catch (error) { @@ -754,7 +767,7 @@ export async function activate(context: vscode.ExtensionContext) { registerIDFCommand("espIdf.getEspMatter", async () => { if (process.platform === "win32") { return vscode.window.showInformationMessage( - `ESP-Matter is not available for Windows.` + vscode.l10n.t(`ESP-Matter is not available for Windows.`) ); } getEspMatter(workspaceRoot); @@ -767,18 +780,20 @@ export async function activate(context: vscode.ExtensionContext) { registerIDFCommand("espIdf.setMatterDevicePath", async () => { if (process.platform === "win32") { return vscode.window.showInformationMessage( - `ESP-Matter is not available for Windows.` + vscode.l10n.t(`ESP-Matter is not available for Windows.`) ); } const configurationTarget = vscode.ConfigurationTarget.WorkspaceFolder; let workspaceFolder = await vscode.window.showWorkspaceFolderPick({ - placeHolder: `Pick Workspace Folder to which settings should be applied`, + placeHolder: vscode.l10n.t( + `Pick Workspace Folder to which settings should be applied` + ), }); if (!workspaceFolder) { return; } const customMatterDevicePath = await vscode.window.showInputBox({ - placeHolder: "Enter ESP_MATTER_DEVICE_PATH path", + placeHolder: vscode.l10n.t("Enter ESP_MATTER_DEVICE_PATH path"), }); if (!customMatterDevicePath) { return; @@ -795,7 +810,9 @@ export async function activate(context: vscode.ExtensionContext) { workspaceFolder.uri ); return vscode.window.showInformationMessage( - `ESP_MATTER_DEVICE_PATH has been set in idf.customExtraVars configuration setting.` + vscode.l10n.t( + `ESP_MATTER_DEVICE_PATH has been set in idf.customExtraVars configuration setting.` + ) ); }); @@ -828,8 +845,7 @@ export async function activate(context: vscode.ExtensionContext) { registerIDFCommand("espIdf.pickAWorkspaceFolder", () => { PreCheck.perform([openFolderCheck], async () => { - const selectCurrentFolderMsg = locDic.localize( - "espIdf.pickAWorkspaceFolder.text", + const selectCurrentFolderMsg = vscode.l10n.t( "Select your current folder" ); try { @@ -837,10 +853,7 @@ export async function activate(context: vscode.ExtensionContext) { placeHolder: selectCurrentFolderMsg, }); if (!option) { - const noFolderMsg = locDic.localize( - "extension.noFolderMessage", - "No workspace selected." - ); + const noFolderMsg = vscode.l10n.t("No workspace selected."); Logger.infoNotify(noFolderMsg); return; } @@ -888,27 +901,35 @@ export async function activate(context: vscode.ExtensionContext) { const notificationTarget = await vscode.window.showQuickPick( [ { - description: "Show no notifications and do not focus tasks output.", + description: vscode.l10n.t( + "Show no notifications and do not focus tasks output." + ), label: "Silent", target: "Silent", }, { - description: "Show notifications but do not focus tasks output.", + description: vscode.l10n.t( + "Show notifications but do not focus tasks output." + ), label: "Notifications", target: "Notifications", }, { - description: "Do not show notifications but focus tasks output.", + description: vscode.l10n.t( + "Do not show notifications but focus tasks output." + ), label: "Output", target: "Output", }, { - description: "Show notifications and focus tasks output.", + description: vscode.l10n.t( + "Show notifications and focus tasks output." + ), label: "All", target: "All", }, ], - { placeHolder: "Select the output and notification mode" } + { placeHolder: vscode.l10n.t("Select the output and notification mode") } ); if (!notificationTarget) { return; @@ -922,7 +943,9 @@ export async function activate(context: vscode.ExtensionContext) { workspaceRoot ); Logger.infoNotify( - `Notification mode has changed to ${notificationTarget.label}` + vscode.l10n.t(`Notification mode has changed to {mode}`, { + mode: notificationTarget.label, + }) ); }); @@ -932,21 +955,24 @@ export async function activate(context: vscode.ExtensionContext) { registerIDFCommand("espIdf.setPath", () => { PreCheck.perform([webIdeCheck], async () => { - const selectFrameworkMsg = locDic.localize( - "selectFrameworkMessage", + const selectFrameworkMsg = vscode.l10n.t( "Select framework to define its path:" ); try { const option = await vscode.window.showQuickPick( [ - { description: "IDF_PATH Path", label: "IDF_PATH", target: "esp" }, { - description: "Set IDF_TOOLS_PATH Path", + description: vscode.l10n.t("IDF_PATH Path"), + label: "IDF_PATH", + target: "esp", + }, + { + description: vscode.l10n.t("Set IDF_TOOLS_PATH Path"), label: "IDF_TOOLS_PATH", target: "idfTools", }, { - description: "Set paths to append to PATH", + description: vscode.l10n.t("Set paths to append to PATH"), label: "Custom extra paths", target: "customExtraPath", }, @@ -954,10 +980,7 @@ export async function activate(context: vscode.ExtensionContext) { { placeHolder: selectFrameworkMsg } ); if (!option) { - const noOptionMsg = locDic.localize( - "extension.noOptionMessage", - "No option selected." - ); + const noOptionMsg = vscode.l10n.t("No option selected."); Logger.infoNotify(noOptionMsg); return; } @@ -966,31 +989,19 @@ export async function activate(context: vscode.ExtensionContext) { let paramName: string; switch (option.target) { case "esp": - msg = locDic.localize( - "extension.enterIdfPathMessage", - "Enter IDF_PATH Path" - ); + msg = vscode.l10n.t("Enter IDF_PATH Path"); paramName = "idf.espIdfPath"; break; case "idfTools": - msg = locDic.localize( - "extension.enterIdfToolsPathMessage", - "Enter IDF_TOOLS_PATH path" - ); + msg = vscode.l10n.t("Enter IDF_TOOLS_PATH path"); paramName = "idf.toolsPath"; break; case "customExtraPath": - msg = locDic.localize( - "extension.enterCustomPathsMessage", - "Enter extra paths to append to PATH" - ); + msg = vscode.l10n.t("Enter extra paths to append to PATH"); paramName = "idf.customExtraPaths"; break; default: - const noPathUpdatedMsg = locDic.localize( - "extension.noPathUpdatedMessage", - "No path has been updated" - ); + const noPathUpdatedMsg = vscode.l10n.t("No path has been updated"); Logger.infoNotify(noPathUpdatedMsg); break; } @@ -1072,7 +1083,7 @@ export async function activate(context: vscode.ExtensionContext) { ); if (!projectConfigurations) { const emptyOption = await vscode.window.showInformationMessage( - "No project configuration found", + vscode.l10n.t("No project configuration found"), "Open editor" ); if (emptyOption === "Open editor") { @@ -1080,10 +1091,7 @@ export async function activate(context: vscode.ExtensionContext) { } return; } - const selectConfigMsg = locDic.localize( - "extension.selectConfigMessage", - "Select configuration to use:" - ); + const selectConfigMsg = vscode.l10n.t("Select configuration to use:"); let quickPickItems = Object.keys(projectConfigurations).map((k) => { return { description: k, @@ -1095,10 +1103,7 @@ export async function activate(context: vscode.ExtensionContext) { placeHolder: selectConfigMsg, }); if (!option) { - const noOptionMsg = locDic.localize( - "extension.noOptionMessage", - "No option selected." - ); + const noOptionMsg = vscode.l10n.t("No option selected."); Logger.infoNotify(noOptionMsg); return; } @@ -1115,7 +1120,7 @@ export async function activate(context: vscode.ExtensionContext) { } statusBarItems["projectConf"] = createStatusBarItem( "$(gear)" + option.target, - "ESP-IDF: Select Project Configuration", + vscode.l10n.t("ESP-IDF: Select Project Configuration"), "espIdf.projectConf", 100 ); @@ -1124,10 +1129,7 @@ export async function activate(context: vscode.ExtensionContext) { }); registerIDFCommand("espIdf.configDevice", async () => { - const selectConfigMsg = locDic.localize( - "extension.selectConfigMessage", - "Select option to define its path :" - ); + const selectConfigMsg = vscode.l10n.t("Select option to define its path:"); try { const option = await vscode.window.showQuickPick( [ @@ -1147,8 +1149,9 @@ export async function activate(context: vscode.ExtensionContext) { target: "flashBaudRate", }, { - description: - "Relative paths to OpenOCD Scripts directory separated by comma(,)", + description: vscode.l10n.t( + "Relative paths to OpenOCD Scripts directory separated by comma(,)" + ), label: "OpenOcd Config Files", target: "openOcdConfig", }, @@ -1156,10 +1159,7 @@ export async function activate(context: vscode.ExtensionContext) { { placeHolder: selectConfigMsg } ); if (!option) { - const noOptionMsg = locDic.localize( - "extension.noOptionMessage", - "No option selected." - ); + const noOptionMsg = vscode.l10n.t("No option selected."); Logger.infoNotify(noOptionMsg); return; } @@ -1170,33 +1170,23 @@ export async function activate(context: vscode.ExtensionContext) { case "deviceTarget": return vscode.commands.executeCommand("espIdf.setTarget"); case "devicePort": - msg = locDic.localize( - "extension.enterDevicePortMessage", - "Enter device port Path" - ); + msg = vscode.l10n.t("Enter device port Path"); paramName = "idf.port"; break; case "flashBaudRate": - msg = locDic.localize( - "extension.enterFlashBaudRateMessage", - "Enter flash baud rate" - ); + msg = vscode.l10n.t("Enter flash baud rate"); paramName = "idf.flashBaudRate"; break; case "monitorBaudRate": - msg = "Enter monitor baud rate"; + msg = vscode.l10n.t("Enter monitor baud rate"); paramName = "idf.monitorBaudRate"; break; case "openOcdConfig": - msg = locDic.localize( - "extension.enterOpenOcdConfigMessage", - "Enter OpenOCD Configuration File Paths list" - ); + msg = vscode.l10n.t("Enter OpenOCD Configuration File Paths list"); paramName = "idf.openOcdConfigs"; break; default: - const noParamUpdatedMsg = locDic.localize( - "extension.noParamUpdatedMessage", + const noParamUpdatedMsg = vscode.l10n.t( "No device parameter has been updated" ); Logger.infoNotify(noParamUpdatedMsg); @@ -1536,7 +1526,9 @@ export async function activate(context: vscode.ExtensionContext) { workspaceRoot ) as string; progress.report({ - message: `Installing ESP-IDF extension Python Requirements...`, + message: vscode.l10n.t( + `Installing ESP-IDF extension Python Requirements...` + ), }); await installExtensionPyReqs( pyPath, @@ -1546,7 +1538,7 @@ export async function activate(context: vscode.ExtensionContext) { OutputChannel.init() ); vscode.window.showInformationMessage( - "ESP-IDF Python Requirements has been installed" + vscode.l10n.t("ESP-IDF Python Requirements has been installed") ); } catch (error) { const msg = error.message @@ -1564,7 +1556,7 @@ export async function activate(context: vscode.ExtensionContext) { registerIDFCommand("espIdf.installEspMatterPyReqs", () => { if (process.platform === "win32") { return vscode.window.showInformationMessage( - `ESP-Matter is not available for Windows.` + vscode.l10n.t(`ESP-Matter is not available for Windows.`) ); } return PreCheck.perform([openFolderCheck], async () => { @@ -1613,7 +1605,9 @@ export async function activate(context: vscode.ExtensionContext) { workspaceRoot ) as string; progress.report({ - message: `Installing ESP-Matter Python Requirements...`, + message: vscode.l10n.t( + `Installing ESP-Matter Python Requirements...` + ), }); await installEspMatterPyReqs( espIdfPath, @@ -1626,7 +1620,9 @@ export async function activate(context: vscode.ExtensionContext) { ); vscode.window.showInformationMessage( - "ESP-Matter Python Requirements have been installed" + vscode.l10n.t( + "ESP-Matter Python Requirements have been installed" + ) ); } catch (error) { const msg = error.message @@ -1647,7 +1643,7 @@ export async function activate(context: vscode.ExtensionContext) { const isPyTestInstalled = await checkPytestRequirements(workspaceRoot); if (isPyTestInstalled) { return Logger.infoNotify( - "PyTest python packages are already installed." + vscode.l10n.t("PyTest python packages are already installed.") ); } } catch (error) { @@ -1708,7 +1704,7 @@ export async function activate(context: vscode.ExtensionContext) { { cancellable: true, location: ProgressLocation, - title: "ESP-IDF: Building unit test app and flashing", + title: vscode.l10n.t("ESP-IDF: Building unit test app and flashing"), }, async ( progress: vscode.Progress<{ message: string; increment?: number }>, @@ -1785,7 +1781,7 @@ export async function activate(context: vscode.ExtensionContext) { try { await utils.createVscodeFolder(workspaceRoot); Logger.infoNotify( - "ESP-IDF vscode files have been added to the project." + vscode.l10n.t("ESP-IDF vscode files have been added to the project.") ); } catch (error) { const errMsg = error.message || "Error creating .vscode folder"; @@ -1800,7 +1796,9 @@ export async function activate(context: vscode.ExtensionContext) { try { await utils.createDevContainer(workspaceRoot.fsPath); Logger.infoNotify( - "ESP-IDF container files have been added to the project." + vscode.l10n.t( + "ESP-IDF container files have been added to the project." + ) ); } catch (error) { const errMsg = error.message || "Error creating .devcontainer folder"; @@ -1814,7 +1812,7 @@ export async function activate(context: vscode.ExtensionContext) { PreCheck.perform([openFolderCheck], async () => { try { const componentName = await vscode.window.showInputBox({ - placeHolder: "Enter ESP-IDF component name", + placeHolder: vscode.l10n.t("Enter ESP-IDF component name"), value: "", }); if (!componentName) { @@ -1822,7 +1820,10 @@ export async function activate(context: vscode.ExtensionContext) { } await utils.createNewComponent(componentName, workspaceRoot.fsPath); Logger.infoNotify( - `The ESP-IDF component ${componentName} has been created` + vscode.l10n.t( + `The ESP-IDF component {componentName} has been created`, + { componentName } + ) ); } catch (error) { const errMsg = error.message || "Error creating ESP-IDF component"; @@ -1867,7 +1868,7 @@ export async function activate(context: vscode.ExtensionContext) { { cancellable: true, location: ProgressLocation, - title: "ESP-IDF: Menuconfig", + title: vscode.l10n.t("ESP-IDF: SDK Configuration Editor"), }, async ( progress: vscode.Progress<{ message: string; increment: number }>, @@ -1900,7 +1901,9 @@ export async function activate(context: vscode.ExtensionContext) { { cancellable: true, location: vscode.ProgressLocation.Notification, - title: "ESP-IDF: Save Default Configuration (save-defconfig)", + title: vscode.l10n.t( + "ESP-IDF: Save Default Configuration (save-defconfig)" + ), }, async ( progress: vscode.Progress<{ message: string; increment: number }>, @@ -1928,8 +1931,7 @@ export async function activate(context: vscode.ExtensionContext) { registerIDFCommand("espIdf.setTarget", () => { PreCheck.perform([openFolderCheck], async () => { - const enterDeviceTargetMsg = locDic.localize( - "extension.enterDeviceTargetMessage", + const enterDeviceTargetMsg = vscode.l10n.t( "Enter target name (IDF_TARGET)" ); await setIdfTarget(enterDeviceTargetMsg); @@ -1956,7 +1958,7 @@ export async function activate(context: vscode.ExtensionContext) { { cancellable: false, location: ProgressLocation, - title: "ESP-IDF: Configure extension", + title: vscode.l10n.t("ESP-IDF: Configure ESP-IDF extension"), }, async ( progress: vscode.Progress<{ message: string; increment: number }> @@ -1985,13 +1987,15 @@ export async function activate(context: vscode.ExtensionContext) { registerIDFCommand("espIdf.examples.start", async () => { const pickItems = await getFrameworksPickItems(); if (!pickItems || pickItems.length == 0) { - return Logger.infoNotify("No ESP-IDF frameworks found"); + return Logger.infoNotify(vscode.l10n.t("No ESP-IDF frameworks found")); } const examplesFolder = await vscode.window.showQuickPick(pickItems, { - placeHolder: "Select framework to use", + placeHolder: vscode.l10n.t("Select framework to use"), }); if (!examplesFolder) { - Logger.infoNotify("No framework selected to load examples."); + Logger.infoNotify( + vscode.l10n.t("No framework selected to load examples.") + ); return; } try { @@ -2008,7 +2012,7 @@ export async function activate(context: vscode.ExtensionContext) { { cancellable: false, location: ProgressLocation, - title: "ESP-IDF: Loading examples", + title: vscode.l10n.t("ESP-IDF: Loading examples"), }, async ( progress: vscode.Progress<{ message: string; increment: number }> @@ -2041,7 +2045,9 @@ export async function activate(context: vscode.ExtensionContext) { async (fileUri: vscode.Uri) => { if (!fileUri) { Logger.errorNotify( - "Cannot call this command directly, right click on any CMakeLists.txt file!", + vscode.l10n.t( + "Cannot call this command directly, right click on any CMakeLists.txt file!" + ), new Error("INVALID_INVOCATION") ); return; @@ -2176,8 +2182,7 @@ export async function activate(context: vscode.ExtensionContext) { target: b, }; }); - const selectOpenOCdConfigsMsg = locDic.localize( - "extension.enterOpenOcdConfigMessage", + const selectOpenOCdConfigsMsg = vscode.l10n.t( "Enter OpenOCD Configuration File Paths list" ); const selectedBoard = await vscode.window.showQuickPick(choices, { @@ -2189,7 +2194,9 @@ export async function activate(context: vscode.ExtensionContext) { if (selectedBoard.target.name.indexOf("Custom board") !== -1) { const inputBoard = await vscode.window.showInputBox({ - placeHolder: "Enter comma separated configuration files", + placeHolder: vscode.l10n.t( + "Enter comma separated configuration files" + ), value: selectedBoard.target.configFiles.join(","), }); if (inputBoard) { @@ -2202,7 +2209,7 @@ export async function activate(context: vscode.ExtensionContext) { !PreCheck.isWorkspaceFolderOpen() && target !== vscode.ConfigurationTarget.Global ) { - const noWsOpenMSg = `Open a workspace or folder first.`; + const noWsOpenMSg = vscode.l10n.t(`Open a workspace or folder first.`); Logger.warnNotify(noWsOpenMSg); throw new Error(noWsOpenMSg); } @@ -2216,7 +2223,9 @@ export async function activate(context: vscode.ExtensionContext) { selectedBoard.target.target, target ); - Logger.infoNotify("OpenOCD Board configuration files are updated."); + Logger.infoNotify( + vscode.l10n.t("OpenOCD Board configuration files are updated.") + ); } catch (error) { const errMsg = error.message || "Failed to select openOCD configuration files"; @@ -2308,20 +2317,29 @@ export async function activate(context: vscode.ExtensionContext) { } const isIdfProject = utils.checkIsProjectCmakeLists(srcFolder[0].fsPath); if (!isIdfProject) { - Logger.infoNotify(`${srcFolder[0].fsPath} is not an ESP-IDF project.`); + Logger.infoNotify( + vscode.l10n.t(`{srcFolder} is not an ESP-IDF project.`, { + srcFolder: srcFolder[0].fsPath, + }) + ); return; } const items = [ - { label: "Choose a container directory...", target: "another" }, + { + label: vscode.l10n.t("Choose a container directory..."), + target: "another", + }, ]; if (workspaceRoot) { items.push({ - label: `Use current folder (${workspaceRoot.fsPath})`, + label: vscode.l10n.t(`Use current folder: {workspace}`, { + workspace: workspaceRoot.fsPath, + }), target: "current", }); } const projectDirOption = await vscode.window.showQuickPick(items, { - placeHolder: "Select a directory to use", + placeHolder: vscode.l10n.t("Select a directory to use"), }); if (!projectDirOption) { return; @@ -2344,7 +2362,7 @@ export async function activate(context: vscode.ExtensionContext) { return; } const projectName = await vscode.window.showInputBox({ - placeHolder: "Enter project name", + placeHolder: vscode.l10n.t("Enter project name"), value: "", }); if (!projectName) { @@ -2353,13 +2371,15 @@ export async function activate(context: vscode.ExtensionContext) { destFolder = vscode.Uri.file(path.join(destFolder.fsPath, projectName)); const doesProjectExists = await pathExists(destFolder.fsPath); if (doesProjectExists) { - Logger.infoNotify(`${destFolder} already exists.`); + Logger.infoNotify( + vscode.l10n.t(`{destFolder} already exists.`, { destFolder }) + ); return; } await utils.copyFromSrcProject(srcFolder[0].fsPath, destFolder); await utils.updateProjectNameInCMakeLists(destFolder.fsPath, projectName); const opt = await vscode.window.showInformationMessage( - "Project has been imported", + vscode.l10n.t("ESP-IDF Project has been imported"), "Open" ); if (opt === "Open") { @@ -2451,7 +2471,7 @@ export async function activate(context: vscode.ExtensionContext) { ); if (!qemuBinExists) { progress.report({ - message: "Merging binaries for flashing", + message: vscode.l10n.t("Merging binaries for flashing"), increment: 10, }); await mergeFlashBinaries(workspaceRoot, cancelToken); @@ -2547,14 +2567,14 @@ export async function activate(context: vscode.ExtensionContext) { description: "Enter a custom offset", }); const partitionAction = await vscode.window.showQuickPick(items, { - placeHolder: "Select a partition to use", + placeHolder: vscode.l10n.t("Select a partition to use"), }); if (!partitionAction) { return; } if (partitionAction.target === "custom") { const customOffset = await vscode.window.showInputBox({ - placeHolder: "Enter custom partition table offset", + placeHolder: vscode.l10n.t("Enter custom partition table offset"), value: "", validateInput: (text) => { return /^(0x[0-9a-fA-F]+|[0-9]+)$/i.test(text) @@ -2585,15 +2605,15 @@ export async function activate(context: vscode.ExtensionContext) { const partitionAction = await vscode.window.showQuickPick( [ { - label: `Flash binary to this partition`, + label: vscode.l10n.t(`Flash binary to this partition`), target: "flashBinaryToPartition", }, { - label: "Open partition table editor", + label: vscode.l10n.t("Open partition table editor"), target: "openPartitionTableEditor", }, ], - { placeHolder: "Select an action to use" } + { placeHolder: vscode.l10n.t("Select an action to use") } ); if (!partitionAction) { return; @@ -2645,7 +2665,7 @@ export async function activate(context: vscode.ExtensionContext) { { cancellable: false, location: ProgressLocation, - title: "ESP-IDF: Preparing ESP-IDF extension report", + title: vscode.l10n.t("ESP-IDF: Preparing ESP-IDF extension report"), }, async ( progress: vscode.Progress<{ message: string; increment: number }> @@ -2667,7 +2687,9 @@ export async function activate(context: vscode.ExtensionContext) { : "Configuration report error"; Logger.error(errMsg, error); Logger.warnNotify( - "Extension configuration report has been copied to clipboard with errors" + vscode.l10n.t( + "Extension configuration report has been copied to clipboard with errors" + ) ); const reportOutput = await writeTextReport(reportedResult, context); await vscode.env.clipboard.writeText(reportOutput); @@ -2682,7 +2704,9 @@ export async function activate(context: vscode.ExtensionContext) { (trace: AppTraceArchiveItems) => { if (!trace) { Logger.errorNotify( - "Cannot call this command directly, click on any Trace to view its report!", + vscode.l10n.t( + "Cannot call this command directly, click on any Trace to view its report!" + ), new Error("INVALID_COMMAND") ); return; @@ -2694,20 +2718,22 @@ export async function activate(context: vscode.ExtensionContext) { SystemViewTracing, } //show option to render system trace view or heap trace - const placeHolder = - "Do you want to view Heap Trace plot or System View Trace"; + const placeHolder = vscode.l10n.t( + "Do you want to view Heap Trace plot or System View Trace" + ); const choice = await vscode.window.showQuickPick( [ { type: TracingViewType.SystemViewTracing, label: "$(symbol-keyword) System View Tracing", - detail: - "Show System View Tracing Plot (will open a webview window)", + detail: vscode.l10n.t( + "Show System View Tracing Plot (will open a webview window)" + ), }, { type: TracingViewType.HeapTracingPlot, label: "$(graph) Heap Tracing", - detail: "Open Old Heap/App Trace Panel", + detail: vscode.l10n.t("Open Old Heap/App Trace Panel"), }, ], { @@ -2746,7 +2772,9 @@ export async function activate(context: vscode.ExtensionContext) { registerIDFCommand("esp.rainmaker.backend.connect", async () => { if (RainmakerAPIClient.isLoggedIn()) { - return Logger.infoNotify("Already logged-in, please sign-out first"); + return Logger.infoNotify( + vscode.l10n.t("Already logged-in, please sign-out first") + ); } //ask to select login provider @@ -2775,7 +2803,9 @@ export async function activate(context: vscode.ExtensionContext) { : vscode.ProgressLocation.Window; vscode.window.withProgress( { - title: "ESP-IDF: Please wait checking with Rainmaker Cloud", + title: vscode.l10n.t( + "ESP-IDF: Please wait checking with Rainmaker Cloud" + ), location: ProgressLocation, cancellable: false, }, @@ -2789,7 +2819,9 @@ export async function activate(context: vscode.ExtensionContext) { Logger.infoNotify("Rainmaker Cloud Linking Success!"); } catch (error) { return Logger.errorNotify( - "Failed to login with Rainmaker Cloud, double check your id and password", + vscode.l10n.t( + "Failed to login with Rainmaker Cloud, double check your id and password" + ), error ); } @@ -2799,7 +2831,9 @@ export async function activate(context: vscode.ExtensionContext) { registerIDFCommand("esp.rainmaker.backend.logout", async () => { const shallLogout = await vscode.window.showWarningMessage( - "Would you like to unlink your ESP Rainmaker cloud account?", + vscode.l10n.t( + "Would you like to unlink your ESP Rainmaker cloud account?" + ), { modal: true }, { title: "Yes" }, { title: "Cancel", isCloseAffordance: true } @@ -2822,7 +2856,9 @@ export async function activate(context: vscode.ExtensionContext) { return; } const shallDelete = await vscode.window.showWarningMessage( - "Would you like to delete this node from your ESP Rainmaker account?", + vscode.l10n.t( + "Would you like to delete this node from your ESP Rainmaker account?" + ), { modal: true }, { title: "Yes" }, { title: "Cancel", isCloseAffordance: true } @@ -2841,7 +2877,9 @@ export async function activate(context: vscode.ExtensionContext) { : vscode.ProgressLocation.Window; vscode.window.withProgress( { - title: "ESP-IDF: Deleting node from your rainmaker account", + title: vscode.l10n.t( + "ESP-IDF: Deleting node from your rainmaker account" + ), location: ProgressLocation, }, async () => { @@ -2850,7 +2888,9 @@ export async function activate(context: vscode.ExtensionContext) { rainMakerTreeDataProvider.refresh(); } catch (error) { Logger.errorNotify( - "Failed to delete node, maybe the node is already marked for delete, please try again after sometime", + vscode.l10n.t( + "Failed to delete node, maybe the node is already marked for delete, please try again after sometime" + ), error ); } @@ -2860,7 +2900,9 @@ export async function activate(context: vscode.ExtensionContext) { ); registerIDFCommand("esp.rainmaker.backend.add_node", async () => { Logger.infoNotify( - "Coming Soon!! until then you can add nodes using mobile app" + vscode.l10n.t( + "Coming Soon!! until then you can add nodes using mobile app" + ) ); }); registerIDFCommand( @@ -2930,9 +2972,13 @@ export async function activate(context: vscode.ExtensionContext) { await rainMakerTreeDataProvider.refresh(); Logger.infoNotify("Sent the param update request to cloud"); } catch (error) { - let errorMsg = "Failed to update the param, please try once more"; + let errorMsg = vscode.l10n.t( + "Failed to update the param, please try once more" + ); if (error.response) { - errorMsg = `Failed to update param because, ${error.response.data.description}`; + errorMsg = `${vscode.l10n.t( + "Failed to update param because, " + )} ${error.response.data.description}`; } Logger.errorNotify(errorMsg, error); } @@ -2951,12 +2997,12 @@ export async function activate(context: vscode.ExtensionContext) { await vscode.commands.executeCommand("espIdf.selectPort"); } catch (error) { Logger.error( - "Unable to execute the command: espIdf.selectPort", + vscode.l10n.t("Unable to execute the command: espIdf.selectPort"), error ); } return Logger.errorNotify( - "Select a serial port before flashing", + vscode.l10n.t("Select a serial port before flashing"), new Error("NOT_SELECTED_PORT") ); } @@ -2966,7 +3012,7 @@ export async function activate(context: vscode.ExtensionContext) { ) as string; if (!utils.canAccessFile(pythonBinPath, constants.R_OK)) { Logger.errorNotify( - "Python binary path is not defined", + vscode.l10n.t("Python binary path is not defined"), new Error("idf.pythonBinPath is not defined") ); } @@ -2981,7 +3027,7 @@ export async function activate(context: vscode.ExtensionContext) { ); if (!utils.canAccessFile(idfMonitorToolPath, constants.R_OK)) { Logger.errorNotify( - idfMonitorToolPath + " is not defined", + idfMonitorToolPath + vscode.l10n.t(" is not defined"), new Error(idfMonitorToolPath + " is not defined") ); } @@ -3067,8 +3113,9 @@ export async function activate(context: vscode.ExtensionContext) { { location: ProgressLocation, cancellable: false, - title: - "ESP-IDF: Core-dump detected, please wait while we parse the data received", + title: vscode.l10n.t( + "ESP-IDF: Core-dump detected, please wait while we parse the data received" + ), }, async (progress) => { const espCoreDumpPyTool = new ESPCoreDumpPyTool(idfPath); @@ -3092,8 +3139,9 @@ export async function activate(context: vscode.ExtensionContext) { })) === true ) { progress.report({ - message: - "Successfully created ELF file from the info received (espcoredump.py)", + message: vscode.l10n.t( + "Successfully created ELF file from the info received (espcoredump.py)" + ), }); try { debugAdapterManager.configureAdapter({ @@ -3119,13 +3167,15 @@ export async function activate(context: vscode.ExtensionContext) { }); } catch (error) { Logger.errorNotify( - "Failed to launch debugger for postmortem", + vscode.l10n.t("Failed to launch debugger for postmortem"), error ); } } else { Logger.warnNotify( - "Failed to generate the ELF file from the info received, please close the core-dump monitor terminal manually" + vscode.l10n.t( + "Failed to generate the ELF file from the info received, please close the core-dump monitor terminal manually" + ) ); } } @@ -3169,7 +3219,10 @@ export async function activate(context: vscode.ExtensionContext) { .on("error", (err) => { let message = err.message; if (err && err.message.includes("EADDRINUSE")) { - message = `Your port ${wsPort} is not available, use (idf.wssPort) to change to different port`; + message = vscode.l10n.t( + `Your port {wsPort} is not available, use (idf.wssPort) to change to different port`, + { wsPort } + ); } Logger.errorNotify(message, err); wsServer.close(); @@ -3188,7 +3241,9 @@ export async function activate(context: vscode.ExtensionContext) { const sdkconfigFileExists = await pathExists(sdkconfigFilePath); if (!sdkconfigFileExists) { const buildProject = await vscode.window.showInformationMessage( - `Partition table editor requires sdkconfig file. Build the project?`, + vscode.l10n.t( + `Partition table editor requires sdkconfig file. Build the project?` + ), "Build" ); if (buildProject === "Build") { @@ -3202,7 +3257,9 @@ export async function activate(context: vscode.ExtensionContext) { ); if (isCustomPartitionTableEnabled !== "y") { const enableCustomPartitionTable = await vscode.window.showInformationMessage( - "Custom Partition Table not enabled for the project", + vscode.l10n.t( + "Custom Partition Table not enabled for the project" + ), "Enable" ); if (enableCustomPartitionTable === "Enable") { @@ -3220,7 +3277,9 @@ export async function activate(context: vscode.ExtensionContext) { } } else { throw new Error( - "Custom Partition Table not enabled for the project" + vscode.l10n.t( + "Custom Partition Table not enabled for the project" + ) ); } } @@ -3232,7 +3291,9 @@ export async function activate(context: vscode.ExtensionContext) { partitionTableFilePath = partitionTableFilePath.replace(/\"/g, ""); if (!utils.isStringNotEmpty(partitionTableFilePath)) { throw new Error( - "Empty CONFIG_PARTITION_TABLE_CUSTOM_FILENAME, please add a csv file to generate partition table" + vscode.l10n.t( + "Empty CONFIG_PARTITION_TABLE_CUSTOM_FILENAME, please add a csv file to generate partition table" + ) ); } @@ -3243,7 +3304,10 @@ export async function activate(context: vscode.ExtensionContext) { if (!utils.fileExists(partitionTableFilePath)) { // inform user and create file. Logger.infoNotify( - `Partition Table File (${partitionTableFilePath}) doesn't exists, we are creating an empty file there` + vscode.l10n.t( + `Partition Table File {partitionTableFilePath} doesn't exists, we are creating an empty file there`, + { partitionTableFilePath } + ) ); createFileSync(partitionTableFilePath); } @@ -3267,7 +3331,7 @@ export async function activate(context: vscode.ExtensionContext) { : vscode.ProgressLocation.Window; vscode.window.withProgress( { - title: "ESP-IDF: Getting eFuse summary for your chip", + title: vscode.l10n.t("ESP-IDF: Getting eFuse summary for your chip"), location: ProgressLocation, }, async () => { @@ -3281,7 +3345,9 @@ export async function activate(context: vscode.ExtensionContext) { return Logger.errorNotify(error.message, error); } Logger.errorNotify( - "Failed to get the eFuse Summary from the chip, please make sure you have selected a valid port", + vscode.l10n.t( + "Failed to get the eFuse Summary from the chip, please make sure you have selected a valid port" + ), error ); } @@ -3336,7 +3402,10 @@ export async function activate(context: vscode.ExtensionContext) { Logger.info(summaryResult); OutputChannel.show(); } catch (error) { - Logger.errorNotify("Ninja build summary found an error", error); + Logger.errorNotify( + vscode.l10n.t("Ninja build summary found an error"), + error + ); } } ); @@ -3355,7 +3424,7 @@ export async function activate(context: vscode.ExtensionContext) { : vscode.ProgressLocation.Window; vscode.window.withProgress( { - title: "ESP-IDF: Create SBOM summary", + title: vscode.l10n.t("ESP-IDF: Create SBOM summary"), location: ProgressLocation, }, async () => { @@ -3431,21 +3500,24 @@ export async function activate(context: vscode.ExtensionContext) { : vscode.ProgressLocation.Window; vscode.window.withProgress( { - title: - "ESP-IDF: Please wait mapping your rainmaker cloud account with the VS Code Extension, this could take a little while", + title: vscode.l10n.t( + "ESP-IDF: Please wait mapping your rainmaker cloud account with the VS Code Extension, this could take a little while" + ), location: ProgressLocation, }, async () => { await RainmakerAPIClient.exchangeCodeForTokens(code); await rainMakerTreeDataProvider.refresh(); Logger.infoNotify( - "Rainmaker Cloud is connected successfully (via OAuth)!" + vscode.l10n.t( + "Rainmaker Cloud is connected successfully (via OAuth)!" + ) ); } ); } catch (error) { return Logger.errorNotify( - "Failed to sign-in with Rainmaker (via OAuth)", + vscode.l10n.t("Failed to sign-in with Rainmaker (via OAuth)"), error, { meta: JSON.stringify(error) } ); @@ -3495,7 +3567,9 @@ async function getFrameworksPickItems() { if (doesIdfPathExists) { pickItems.push({ description: "ESP-IDF", - label: `Use current ESP-IDF (${espIdfPath})`, + label: vscode.l10n.t(`Use current ESP-IDF {espIdfPath}`, { + espIdfPath, + }), target: espIdfPath, }); } @@ -3503,7 +3577,9 @@ async function getFrameworksPickItems() { if (doesAdfPathExists) { pickItems.push({ description: "ESP-ADF", - label: `Use current ESP-ADF (${espAdfPath})`, + label: vscode.l10n.t(`Use current ESP-ADF {espAdfPath}`, { + espAdfPath, + }), target: espAdfPath, }); } @@ -3511,7 +3587,9 @@ async function getFrameworksPickItems() { if (doesMdfPathExists) { pickItems.push({ description: "ESP-MDF", - label: `Use current ESP-MDF (${espMdfPath})`, + label: vscode.l10n.t(`Use current ESP-MDF {espMdfPath}`, { + espMdfPath, + }), target: espMdfPath, }); } @@ -3519,7 +3597,9 @@ async function getFrameworksPickItems() { if (doesMatterPathExists) { pickItems.push({ description: "ESP-Matter", - label: `Use current ESP-Matter (${matterPathDir})`, + label: vscode.l10n.t(`Use current ESP-Matter {matterPathDir}`, { + matterPathDir, + }), target: matterPathDir, }); } @@ -3529,7 +3609,9 @@ async function getFrameworksPickItems() { if (doesEspRainmakerPathExists) { pickItems.push({ description: "ESP-Rainmaker", - label: `Use current ESP-Rainmaker (${rainmakerPathDir})`, + label: vscode.l10n.t(`Use current ESP-Rainmaker {rainmakerPathDir}`, { + rainmakerPathDir, + }), target: rainmakerPathDir, }); } @@ -3539,7 +3621,10 @@ async function getFrameworksPickItems() { if (doesEspHomeKitSdkPathExists) { pickItems.push({ description: "ESP-HomeKit-SDK", - label: `Use current ESP-HomeKit-SDK (${espHomeKitPathDir})`, + label: vscode.l10n.t( + `Use current ESP-HomeKit-SDK {espHomeKitPathDir}`, + { espHomeKitPathDir } + ), target: espHomeKitPathDir, }); } @@ -3556,10 +3641,10 @@ function validateInputForRainmakerDeviceParam( type: string ): string { if (type === "string" && value === "") { - return "Enter non empty string"; + return vscode.l10n.t("Enter non empty string"); } if (type === "int" && !value.match(/^[0-9]+$/)) { - return "Enter a valid integer"; + return vscode.l10n.t("Enter a valid integer"); } return; } @@ -3652,7 +3737,7 @@ async function createCmdsStatusBarItems() { statusBarItems["port"] = createStatusBarItem( "$(plug)" + port, - "ESP-IDF: Select Port to Use (COM, tty, usbserial)", + vscode.l10n.t("ESP-IDF: Select Port to Use (COM, tty, usbserial)"), "espIdf.selectPort", 101 ); @@ -3660,7 +3745,7 @@ async function createCmdsStatusBarItems() { if (projectConf) { statusBarItems["projectConf"] = createStatusBarItem( "$(gear)" + projectConf, - "ESP-IDF: Select Project Configuration", + vscode.l10n.t("ESP-IDF: Select Project Configuration"), "espIdf.projectConf", 100 ); @@ -3668,67 +3753,67 @@ async function createCmdsStatusBarItems() { statusBarItems["target"] = createStatusBarItem( "$(circuit-board) " + idfTarget, - "ESP-IDF: Set Espressif Device Target", + vscode.l10n.t("ESP-IDF: Set Espressif Device Target"), "espIdf.setTarget", 99 ); statusBarItems["workspace"] = createStatusBarItem( "$(file-submodule)", - "ESP-IDF: Current Project", + vscode.l10n.t("ESP-IDF: Current Project"), "espIdf.pickAWorkspaceFolder", 98 ); statusBarItems["menuconfig"] = createStatusBarItem( "$(gear)", - "ESP-IDF: SDK Configuration Editor (menuconfig)", + vscode.l10n.t("ESP-IDF: SDK Configuration Editor (menuconfig)"), "espIdf.menuconfig.start", 97 ); statusBarItems["clean"] = createStatusBarItem( "$(trash)", - "ESP-IDF: Full Clean", + vscode.l10n.t("ESP-IDF: Full Clean"), "espIdf.fullClean", 96 ); statusBarItems["build"] = createStatusBarItem( "$(database)", - "ESP-IDF: Build Project", + vscode.l10n.t("ESP-IDF: Build Project"), "espIdf.buildDevice", 95 ); statusBarItems["flashType"] = createStatusBarItem( `$(star-empty) ${flashType}`, - "ESP-IDF: Select Flash Method", + vscode.l10n.t("ESP-IDF: Select Flash Method"), "espIdf.selectFlashMethodAndFlash", 94 ); statusBarItems["flash"] = createStatusBarItem( `$(zap)`, - "ESP-IDF: Flash Device", + vscode.l10n.t("ESP-IDF: Flash Device"), "espIdf.flashDevice", 93 ); statusBarItems["monitor"] = createStatusBarItem( "$(device-desktop)", - "ESP-IDF: Monitor Device", + vscode.l10n.t("ESP-IDF: Monitor Device"), "espIdf.monitorDevice", 92 ); statusBarItems["buildFlashMonitor"] = createStatusBarItem( "$(flame)", - "ESP-IDF: Build, Flash and Monitor", + vscode.l10n.t("ESP-IDF: Build, Flash and Monitor"), "espIdf.buildFlashMonitor", 91 ); statusBarItems["terminal"] = createStatusBarItem( "$(terminal)", - "ESP-IDF: Open ESP-IDF Terminal", + vscode.l10n.t("ESP-IDF: Open ESP-IDF Terminal"), "espIdf.createIdfTerminal", 90 ); statusBarItems["espIdf.customTask"] = createStatusBarItem( "$(diff-renamed)", - "ESP-IDF: Execute Custom Task", + vscode.l10n.t("ESP-IDF: Execute Custom Task"), "espIdf.customTask", 89 ); @@ -3829,7 +3914,9 @@ function createQemuMonitor( PreCheck.perform([openFolderCheck], async () => { const isQemuLaunched = await qemuManager.isRunning(); if (!isQemuLaunched) { - vscode.window.showInformationMessage("QEMU is not running. Run first."); + vscode.window.showInformationMessage( + vscode.l10n.t("QEMU is not running. Run first.") + ); return; } const qemuTcpPort = idfConf.readParameter( @@ -3867,7 +3954,7 @@ const buildFlashAndMonitor = async (runMonitor: boolean = true) => { { cancellable: true, location: ProgressLocation, - title: "ESP-IDF: Building project", + title: vscode.l10n.t("ESP-IDF: Building project"), }, async ( progress: vscode.Progress<{ message: string; increment: number }>, @@ -3916,8 +4003,9 @@ async function selectFlashMethod() { Object.keys(ESP.FlashType), { ignoreFocusOut: true, - placeHolder: - "Select flash method, you can modify the choice later from 'settings.json' (idf.flashType)", + placeHolder: vscode.l10n.t( + "Select flash method, you can modify the choice later from 'settings.json' (idf.flashType)" + ), } )) as ESP.FlashType; if (!newFlashType) { @@ -4088,7 +4176,9 @@ class IdfDebugConfigurationProvider const isSameAppBinary = await verifyAppBinary(workspaceRoot); if (!isSameAppBinary) { throw new Error( - `Current app binary is different from your project. Flash first.` + vscode.l10n.t( + `Current app binary is different from your project. Flash first.` + ) ); } } diff --git a/src/flash/flashCmd.ts b/src/flash/flashCmd.ts index f5b36e5bd..49a4d5a03 100644 --- a/src/flash/flashCmd.ts +++ b/src/flash/flashCmd.ts @@ -2,13 +2,13 @@ * Project: ESP-IDF VSCode Extension * File Created: Friday, 30th April 2021 10:25:57 pm * Copyright 2021 Espressif Systems (Shanghai) CO LTD - * + * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -22,15 +22,12 @@ import * as idfConf from "../idfConfiguration"; import * as vscode from "vscode"; import { FlashTask } from "./flashTask"; import { BuildTask } from "../build/buildTask"; -import { LocDictionary } from "../localizationDictionary"; import { Logger } from "../logger/logger"; import { getProjectName } from "../workspaceConfig"; import { getDfuList, listAvailableDfuDevices } from "./dfu"; import { ESP } from "../config"; import { OutputChannel } from "../logger/outputChannel"; -const locDic = new LocDictionary(__filename); - export async function verifyCanFlash( flashBaudRate: string, port: string, @@ -38,8 +35,7 @@ export async function verifyCanFlash( ) { let continueFlag = true; if (BuildTask.isBuilding || FlashTask.isFlashing) { - const waitProcessIsFinishedMsg = locDic.localize( - "flash.waitProcessIsFinishedMessage", + const waitProcessIsFinishedMsg = vscode.l10n.t( "Wait for ESP-IDF task to finish" ); OutputChannel.show(); @@ -50,21 +46,16 @@ export async function verifyCanFlash( ); } - const buildPath = idfConf.readParameter( - "idf.buildPath", - workspace - ) as string; + const buildPath = idfConf.readParameter("idf.buildPath", workspace) as string; if (!(await pathExists(buildPath))) { const errStr = `Build is required before Flashing, ${buildPath} can't be accessed`; OutputChannel.show(); OutputChannel.appendLineAndShow(errStr, "Flash"); - return Logger.errorNotify( - errStr, - new Error("BUILD_PATH_ACCESS_ERROR") - ); + return Logger.errorNotify(errStr, new Error("BUILD_PATH_ACCESS_ERROR")); } if (!(await pathExists(join(buildPath, "flasher_args.json")))) { - const errStr = "flasher_args.json file is missing from the build directory, can't proceed, please build properly!"; + const errStr = + "flasher_args.json file is missing from the build directory, can't proceed, please build properly!"; OutputChannel.show(); OutputChannel.appendLineAndShow(errStr, "Flash"); return Logger.warnNotify(errStr); @@ -88,21 +79,18 @@ export async function verifyCanFlash( const errStr = "Select a port before flashing"; OutputChannel.show(); OutputChannel.appendLineAndShow(errStr, "Flash"); - return Logger.errorNotify( - errStr, - new Error("NOT_SELECTED_PORT") - ); + return Logger.errorNotify(errStr, new Error("NOT_SELECTED_PORT")); } if (!flashBaudRate) { const errStr = "Select a baud rate before flashing"; OutputChannel.show(); OutputChannel.appendLineAndShow(errStr, "Flash"); - return Logger.errorNotify( - errStr, - new Error("NOT_SELECTED_BAUD_RATE") - ); + return Logger.errorNotify(errStr, new Error("NOT_SELECTED_BAUD_RATE")); } - const selectedFlashType = idfConf.readParameter("idf.flashType", workspace) as ESP.FlashType; + const selectedFlashType = idfConf.readParameter( + "idf.flashType", + workspace + ) as ESP.FlashType; if (selectedFlashType === ESP.FlashType.DFU) { const data = await getDfuList(workspace); const listDfu = await listAvailableDfuDevices(data); @@ -110,10 +98,7 @@ export async function verifyCanFlash( const errStr = "No DFU capable USB device available found"; OutputChannel.show(); OutputChannel.appendLineAndShow(errStr, "Flash"); - return Logger.errorNotify( - errStr, - new Error("NO_DFU_DEVICES_FOUND") - ); + return Logger.errorNotify(errStr, new Error("NO_DFU_DEVICES_FOUND")); } } return continueFlag; diff --git a/src/idfComponentsDataProvider.ts b/src/idfComponentsDataProvider.ts index 74e1c93e9..afd2c2c4d 100644 --- a/src/idfComponentsDataProvider.ts +++ b/src/idfComponentsDataProvider.ts @@ -16,11 +16,9 @@ import { EventEmitter, TreeDataProvider, TreeItem } from "vscode"; import * as vscode from "vscode"; import { IdfComponent } from "./idfComponent"; import * as idfConf from "./idfConfiguration"; -import { LocDictionary } from "./localizationDictionary"; import { Logger } from "./logger/logger"; import * as utils from "./utils"; import { join } from "path"; -const locDic = new LocDictionary(__filename); export class IdfTreeDataProvider implements TreeDataProvider { private OnDidChangeTreeData: EventEmitter< @@ -121,10 +119,7 @@ export class IdfTreeDataProvider implements TreeDataProvider { return sortedUserList.concat(sortedDefaultList); } else { Logger.errorNotify( - locDic.localize( - "idfComponentDataProvider.proj_desc_not_found", - "File project_description.json cannot be found." - ), + vscode.l10n.t("File project_description.json cannot be found."), new Error("File-Not-Found") ); return null; diff --git a/src/idfConfiguration.ts b/src/idfConfiguration.ts index 3a189e9e0..9cd68ab31 100644 --- a/src/idfConfiguration.ts +++ b/src/idfConfiguration.ts @@ -13,13 +13,10 @@ // limitations under the License. import * as vscode from "vscode"; -import { LocDictionary } from "./localizationDictionary"; import { Logger } from "./logger/logger"; import { ESP } from "./config"; import { ProjectConfElement } from "./project-conf/projectConfiguration"; -const locDic = new LocDictionary(__filename); - export enum NotificationMode { Silent = "Silent", Notifications = "Notifications", @@ -223,10 +220,7 @@ export async function updateConfParameter( vscode.ConfigurationTarget.WorkspaceFolder, workspaceFolderUri ); - const updateMessage = locDic.localize( - "idfConfiguration.hasBeenUpdated", - " has been updated" - ); + const updateMessage = vscode.l10n.t(" has been updated"); Logger.infoNotify(label + updateMessage); } diff --git a/src/localizationDictionary.ts b/src/localizationDictionary.ts deleted file mode 100644 index 64aff6575..000000000 --- a/src/localizationDictionary.ts +++ /dev/null @@ -1,112 +0,0 @@ -// Copyright 2019 Espressif Systems (Shanghai) CO LTD -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -import * as fs from "fs"; -import * as path from "path"; -import { Logger } from "./logger/logger"; - -export class LocDictionary { - private dictionary: object; - private schemaProperties: string[]; - private localizationFile: string; - - /** - * Representation of a language dictionary for a source file. - * @param {string} absolutePath - Path of the file to translate. - * @param {string} type - Type of translation. Can be 'out' (default) or 'views'. - */ - constructor(absolutePath: string, type: string = "out") { - const extensionName = __dirname.replace(path.sep + "dist", ""); - const localeConf = JSON.parse(process.env.VSCODE_NLS_CONFIG); - const locDirPath = path.join( - extensionName, - "i18n", - localeConf.locale, - type - ); - const subPath = this.getLocalizationFilePath(absolutePath); - this.localizationFile = path.join(locDirPath, subPath + ".i18n.json"); - if (fs.existsSync(locDirPath) && fs.existsSync(this.localizationFile)) { - try { - this.dictionary = JSON.parse( - fs.readFileSync(this.localizationFile).toString() - ); - this.schemaProperties = this.getDictionaryType(); - } catch (error) { - Logger.errorNotify( - "Failed to load localization, by default will only display in English", - error - ); - } - } - } - - public localize(key: string, defaultMsg: string): string { - if (this.dictionary && this.dictionary.hasOwnProperty(key)) { - return this.dictionary[key]; - } - if (this.schemaProperties && this.schemaProperties.hasOwnProperty(key)) { - Logger.infoNotify( - `${this.localizationFile} doesn't contain localization for ${key}` - ); - } - return defaultMsg; - } - - public getDictionary() { - return this.dictionary; - } - - public getSchemaParts(pathToUse: string): string[] { - const extensionName = __dirname.replace(path.sep + "dist", ""); - const parts = pathToUse - .replace(path.join(extensionName, "i18n"), "") - .split(/(?:\\|\/)/g); - parts.splice(0, 2); - parts[parts.length - 1] = parts[parts.length - 1].replace(/(\.).*/g, ""); - return parts; - } - - public getDictionaryType() { - const extensionName = __dirname.replace(path.sep + "dist", ""); - const dictionarySchema = JSON.parse( - fs.readFileSync(path.join(extensionName, "schema.i18n.json")).toString() - ); - const parts = this.getSchemaParts(this.localizationFile); - const keys = this.reduceSchemaObj(dictionarySchema, parts); - if (keys) { - return keys; - } else { - const err = new Error( - `Error with parsing localization schema for ${this.localizationFile}` - ); - Logger.errorNotify(err.message, err); - } - } - - private reduceSchemaObj = (schemaObj, parts: string[]) => { - return parts.reduce( - (obj, key) => (obj && obj[key] !== undefined ? obj[key] : undefined), - schemaObj - ); - }; - - private getLocalizationFilePath(absolutePath: string) { - const parts = absolutePath - .replace("src" + path.sep, "") - .split(/(?:\\|\/)/g); - parts[parts.length - 1] = parts[parts.length - 1].replace(/(\.).*/g, ""); - return parts.join(path.sep); - } -} diff --git a/src/newProject/newProjectPanel.ts b/src/newProject/newProjectPanel.ts index c0227009a..ae060397f 100644 --- a/src/newProject/newProjectPanel.ts +++ b/src/newProject/newProjectPanel.ts @@ -15,7 +15,6 @@ import * as path from "path"; import * as vscode from "vscode"; import { Logger } from "../logger/logger"; import { OutputChannel } from "../logger/outputChannel"; -import { LocDictionary } from "../localizationDictionary"; import { INewProjectArgs } from "./newProjectInit"; import { IComponent } from "../espIdf/idfComponent/IdfComponent"; import { copy, ensureDir, readFile, writeJSON } from "fs-extra"; @@ -24,8 +23,6 @@ import { IExample } from "../examples/Example"; import { setCurrentSettingsInTemplate } from "./utils"; import { NotificationMode, readParameter } from "../idfConfiguration"; -const locDictionary = new LocDictionary("NewProjectPanel"); - export class NewProjectPanel { public static currentPanel: NewProjectPanel | undefined; @@ -65,10 +62,7 @@ export class NewProjectPanel { column: vscode.ViewColumn ) { this.extensionPath = extensionPath; - const newProjectTitle = locDictionary.localize( - "newProject.panelName", - "New Project" - ); + const newProjectTitle = vscode.l10n.t("New Project"); let localResourceRoots: vscode.Uri[] = []; localResourceRoots.push( vscode.Uri.file(path.join(this.extensionPath, "dist", "views")) @@ -83,7 +77,9 @@ export class NewProjectPanel { localResourceRoots.push(vscode.Uri.file(newProjectArgs.espMdfPath)); } if (newProjectArgs.espHomeKitSdkPath) { - localResourceRoots.push(vscode.Uri.file(newProjectArgs.espHomeKitSdkPath)); + localResourceRoots.push( + vscode.Uri.file(newProjectArgs.espHomeKitSdkPath) + ); } this.panel = vscode.window.createWebviewPanel( NewProjectPanel.viewType, diff --git a/src/project-conf/projectConfPanel.ts b/src/project-conf/projectConfPanel.ts index 77e3e950f..7961ddb21 100644 --- a/src/project-conf/projectConfPanel.ts +++ b/src/project-conf/projectConfPanel.ts @@ -20,18 +20,16 @@ import { ProjectConfElement } from "./projectConfiguration"; import { commands, Disposable, + l10n, Uri, ViewColumn, WebviewPanel, window, } from "vscode"; -import { LocDictionary } from "../localizationDictionary"; import { join } from "path"; import { ESP } from "../config"; import { getProjectConfigurationElements, saveProjectConfFile } from "."; -const locDic = new LocDictionary("projectConfigurationPanel"); - export class projectConfigurationPanel { public static currentPanel: projectConfigurationPanel | undefined; @@ -67,8 +65,7 @@ export class projectConfigurationPanel { column: ViewColumn, private workspaceFolder: Uri ) { - const projectConfPanelTitle = locDic.localize( - "projectConfigurationPanel.panelName", + const projectConfPanelTitle = l10n.t( "ESP-IDF Project Configuration" ); diff --git a/src/setup/SetupPanel.ts b/src/setup/SetupPanel.ts index 5fcea7d62..0259ddef8 100644 --- a/src/setup/SetupPanel.ts +++ b/src/setup/SetupPanel.ts @@ -12,7 +12,6 @@ // See the License for the specific language governing permissions and // limitations under the License. -import { LocDictionary } from "../localizationDictionary"; import { ISetupInitArgs } from "./setupInit"; import { IEspIdfLink, @@ -36,6 +35,7 @@ import { ViewColumn, WebviewPanel, commands, + l10n, window, } from "vscode"; import { expressInstall } from "./espIdfDownloadStep"; @@ -50,8 +50,6 @@ import { checkSpacesInPath, getEspIdfFromCMake } from "../utils"; import { useIdfSetupSettings } from "./setupValidation/espIdfSetup"; import { clearPreviousIdfSetups } from "./existingIdfSetups"; -const locDic = new LocDictionary("SetupPanel"); - export class SetupPanel { public static currentPanel: SetupPanel | undefined; @@ -90,10 +88,7 @@ export class SetupPanel { column: ViewColumn, setupArgs: ISetupInitArgs ) { - const setupPanelTitle = locDic.localize( - "setupPanel.panelName", - "ESP-IDF Setup" - ); + const setupPanelTitle = l10n.t("ESP-IDF Setup"); this.panel = window.createWebviewPanel( SetupPanel.viewType, diff --git a/src/utils.ts b/src/utils.ts index 92c02573e..15c2cb6ad 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -35,18 +35,13 @@ import * as url from "url"; import * as vscode from "vscode"; import { IdfComponent } from "./idfComponent"; import * as idfConf from "./idfConfiguration"; -import { LocDictionary } from "./localizationDictionary"; import { Logger } from "./logger/logger"; import { getProjectName } from "./workspaceConfig"; import { OutputChannel } from "./logger/outputChannel"; import { ESP } from "./config"; import * as sanitizedHtml from "sanitize-html"; -const locDic = new LocDictionary(__filename); -const currentFolderMsg = locDic.localize( - "utils.currentFolder", - "ESP-IDF: Current Project" -); +const currentFolderMsg = vscode.l10n.t("ESP-IDF: Current Project"); export let extensionContext: vscode.ExtensionContext; let templateDir: string = path.join( @@ -434,10 +429,7 @@ export function readComponentsDirs(filePath): IdfComponent[] { const files = fs.readdirSync(filePath); - const openComponentMsg = locDic.localize( - "utils.openComponentTitle", - "ESP-IDF: Open IDF Component File" - ); + const openComponentMsg = vscode.l10n.t("ESP-IDF: Open IDF Component File"); for (const file of files) { const stats = fs.statSync(path.join(filePath, file)); diff --git a/src/welcome/panel.ts b/src/welcome/panel.ts index b2dffe43c..5f19e381e 100644 --- a/src/welcome/panel.ts +++ b/src/welcome/panel.ts @@ -21,17 +21,15 @@ import { commands, ConfigurationTarget, Disposable, + l10n, Uri, ViewColumn, WebviewPanel, window, } from "vscode"; import { writeParameter } from "../idfConfiguration"; -import { LocDictionary } from "../localizationDictionary"; import { IWelcomeArgs } from "./welcomeInit"; -const locDic = new LocDictionary("WelcomePanel"); - export class WelcomePanel { public static currentPanel: WelcomePanel | undefined; @@ -69,10 +67,7 @@ export class WelcomePanel { column: ViewColumn, welcomeArgs: IWelcomeArgs ) { - const welcomePanelTitle = locDic.localize( - "welcomePanel.panelName", - "ESP-IDF Welcome" - ); + const welcomePanelTitle = l10n.t("ESP-IDF Welcome"); this.panel = window.createWebviewPanel( WelcomePanel.viewType, diff --git a/webpack.config.js b/webpack.config.js index fbcbc7752..54f08aa8c 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -40,12 +40,6 @@ const extensionConfig = { test: /\.ts$/, exclude: /node_modules/, use: [ - { - loader: "vscode-nls-dev/lib/webpack-loader", - options: { - base: path.join(__dirname, "src"), - }, - }, { loader: "ts-loader", options: { diff --git a/yarn.lock b/yarn.lock index afdc5550b..a2e3efa5f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,6 +2,81 @@ # yarn lockfile v1 +"@azure-rest/ai-translation-text@^1.0.0-beta.1": + version "1.0.0-beta.1" + resolved "https://registry.yarnpkg.com/@azure-rest/ai-translation-text/-/ai-translation-text-1.0.0-beta.1.tgz#bf61811d0a3fc7e689e91b5a5452d0128e270b67" + integrity sha512-h1xDrmVRbk6eAAqTHxy9Npv543cWteqgop15sVXBQhadOwzHoREn+UqMCzNfvL6/AjiInUlwNSaNQK1ANgobLA== + dependencies: + "@azure-rest/core-client" "^1.1.0" + "@azure/core-auth" "^1.3.0" + "@azure/core-rest-pipeline" "^1.8.0" + "@azure/logger" "^1.0.0" + tslib "^2.2.0" + +"@azure-rest/core-client@^1.1.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@azure-rest/core-client/-/core-client-1.4.0.tgz#3be28c02c6c20e49dea73a7f012daeeda4eacb8e" + integrity sha512-ozTDPBVUDR5eOnMIwhggbnVmOrka4fXCs8n8mvUo4WLLc38kki6bAOByDoVZZPz/pZy2jMt2kwfpvy/UjALj6w== + dependencies: + "@azure/abort-controller" "^2.0.0" + "@azure/core-auth" "^1.3.0" + "@azure/core-rest-pipeline" "^1.5.0" + "@azure/core-tracing" "^1.0.1" + "@azure/core-util" "^1.0.0" + tslib "^2.6.2" + +"@azure/abort-controller@^2.0.0": + version "2.1.2" + resolved "https://registry.yarnpkg.com/@azure/abort-controller/-/abort-controller-2.1.2.tgz#42fe0ccab23841d9905812c58f1082d27784566d" + integrity sha512-nBrLsEWm4J2u5LpAPjxADTlq3trDgVZZXHNKabeXZtpq3d3AbN/KGO82R87rdDz5/lYB024rtEf10/q0urNgsA== + dependencies: + tslib "^2.6.2" + +"@azure/core-auth@^1.3.0", "@azure/core-auth@^1.4.0": + version "1.7.2" + resolved "https://registry.yarnpkg.com/@azure/core-auth/-/core-auth-1.7.2.tgz#558b7cb7dd12b00beec07ae5df5907d74df1ebd9" + integrity sha512-Igm/S3fDYmnMq1uKS38Ae1/m37B3zigdlZw+kocwEhh5GjyKjPrXKO2J6rzpC1wAxrNil/jX9BJRqBshyjnF3g== + dependencies: + "@azure/abort-controller" "^2.0.0" + "@azure/core-util" "^1.1.0" + tslib "^2.6.2" + +"@azure/core-rest-pipeline@^1.5.0", "@azure/core-rest-pipeline@^1.8.0": + version "1.15.2" + resolved "https://registry.yarnpkg.com/@azure/core-rest-pipeline/-/core-rest-pipeline-1.15.2.tgz#421729bbd8cd5f9f50b403e79941f27ac1bdc302" + integrity sha512-BmWfpjc/QXc2ipHOh6LbUzp3ONCaa6xzIssTU0DwH9bbYNXJlGUL6tujx5TrbVd/QQknmS+vlQJGrCq2oL1gZA== + dependencies: + "@azure/abort-controller" "^2.0.0" + "@azure/core-auth" "^1.4.0" + "@azure/core-tracing" "^1.0.1" + "@azure/core-util" "^1.3.0" + "@azure/logger" "^1.0.0" + http-proxy-agent "^7.0.0" + https-proxy-agent "^7.0.0" + tslib "^2.6.2" + +"@azure/core-tracing@^1.0.1": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@azure/core-tracing/-/core-tracing-1.1.2.tgz#065dab4e093fb61899988a1cdbc827d9ad90b4ee" + integrity sha512-dawW9ifvWAWmUm9/h+/UQ2jrdvjCJ7VJEuCJ6XVNudzcOwm53BFZH4Q845vjfgoUAM8ZxokvVNxNxAITc502YA== + dependencies: + tslib "^2.6.2" + +"@azure/core-util@^1.0.0", "@azure/core-util@^1.1.0", "@azure/core-util@^1.3.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@azure/core-util/-/core-util-1.9.0.tgz#469afd7e6452d5388b189f90d33f7756b0b210d1" + integrity sha512-AfalUQ1ZppaKuxPPMsFEUdX6GZPB3d9paR9d/TTL7Ow2De8cJaC7ibi7kWVlFAVPCYo31OcnGymc0R89DX8Oaw== + dependencies: + "@azure/abort-controller" "^2.0.0" + tslib "^2.6.2" + +"@azure/logger@^1.0.0": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@azure/logger/-/logger-1.1.2.tgz#3f4b876cefad328dc14aff8b850d63b611e249dc" + integrity sha512-l170uE7bsKpIU6B/giRc9i4NI0Mj+tANMMMxf7Zi/5cKzEqPayP7+X1WPrG7e+91JgY8N+7K7nF2WOi7iVhXvg== + dependencies: + tslib "^2.6.2" + "@babel/helper-string-parser@^7.23.4": version "7.23.4" resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz#9478c707febcbbe1ddb38a3d91a2e054ae622d83" @@ -447,6 +522,27 @@ resolved "https://registry.yarnpkg.com/@vscode/extension-telemetry/-/extension-telemetry-0.4.8.tgz#bb67386ae7ba4d3505978243df91055d5e0cf950" integrity sha512-5xtf8k7vQJ+EOqhAcEaGwbnj9t/qLjIJQePmq7eBKEZzt8vpnOg0ZJIJx6VnQFAwO3lfsf3M+X3NT+IpKRymZw== +"@vscode/l10n-dev@^0.0.35": + version "0.0.35" + resolved "https://registry.yarnpkg.com/@vscode/l10n-dev/-/l10n-dev-0.0.35.tgz#cdd8106a56b7dc8feef62d10c413d6d8d94b2d5c" + integrity sha512-s6uzBXsVDSL69Z85HSqpc5dfKswQkeucY8L00t1TWzGalw7wkLQUKMRwuzqTq+AMwQKrRd7Po14cMoTcd11iDw== + dependencies: + "@azure-rest/ai-translation-text" "^1.0.0-beta.1" + debug "^4.3.4" + deepmerge-json "^1.5.0" + glob "^10.0.0" + markdown-it "^14.0.0" + node-html-markdown "^1.3.0" + pseudo-localization "^2.4.0" + web-tree-sitter "^0.20.8" + xml2js "^0.5.0" + yargs "^17.7.1" + +"@vscode/l10n@^0.0.18": + version "0.0.18" + resolved "https://registry.yarnpkg.com/@vscode/l10n/-/l10n-0.0.18.tgz#916d3a5e960dbab47c1c56f58a7cb5087b135c95" + integrity sha512-KYSIHVmslkaCDyw013pphY+d7x1qV8IZupYfeIfzNA+nsaWHbn5uPuQRvdRFsa9zFzGeudPuoGoZ1Op4jrJXIQ== + "@vscode/test-electron@^2.1.2": version "2.3.8" resolved "https://registry.yarnpkg.com/@vscode/test-electron/-/test-electron-2.3.8.tgz#06a7c50b38cfac0ede833905e088d55c61cd12d3" @@ -741,6 +837,13 @@ agent-base@^4.3.0: dependencies: es6-promisify "^5.0.0" +agent-base@^7.0.2, agent-base@^7.1.0: + version "7.1.1" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-7.1.1.tgz#bdbded7dfb096b751a2a087eeeb9664725b2e317" + integrity sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA== + dependencies: + debug "^4.3.4" + ajv-keywords@^3.5.2: version "3.5.2" resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" @@ -761,40 +864,11 @@ ansi-colors@4.1.1: resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== -ansi-colors@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-1.1.0.tgz#6374b4dd5d4718ff3ce27a671a3b1cad077132a9" - integrity sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA== - dependencies: - ansi-wrap "^0.1.0" - -ansi-colors@^3.0.5, ansi-colors@^3.2.3: - version "3.2.4" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.4.tgz#e3a3da4bfbae6c86a9c285625de124a234026fbf" - integrity sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA== - -ansi-gray@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/ansi-gray/-/ansi-gray-0.1.1.tgz#2962cf54ec9792c48510a3deb524436861ef7251" - integrity sha512-HrgGIZUl8h2EHuZaU9hTR/cU5nhKxpVE1V6kdGsQ8e4zirElJ5fvtfc8N7Q1oq1aatO275i8pUFUCpNWCAnVWw== - dependencies: - ansi-wrap "0.1.0" - -ansi-regex@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" - integrity sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA== - ansi-regex@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.1.tgz#123d6479e92ad45ad897d4054e3c7ca7db4944e1" integrity sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw== -ansi-regex@^4.1.0: - version "4.1.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.1.tgz#164daac87ab2d6f6db3a29875e2d1766582dabed" - integrity sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g== - ansi-regex@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" @@ -805,7 +879,7 @@ ansi-regex@^6.0.1: resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.0.1.tgz#3183e38fae9a65d7cb5e53945cd5897d0260a06a" integrity sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA== -ansi-styles@^3.2.0, ansi-styles@^3.2.1: +ansi-styles@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== @@ -831,19 +905,6 @@ ansi-to-html@^0.6.11: dependencies: entities "^2.0.0" -ansi-wrap@0.1.0, ansi-wrap@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/ansi-wrap/-/ansi-wrap-0.1.0.tgz#a82250ddb0015e9a27ca82e82ea603bbfa45efaf" - integrity sha512-ZyznvL8k/FZeQHr2T6LzcJ/+vBApDnMNZvfVFy3At0knswWd6rJ3/0Hhmpu8oqa6C92npmozs890sX9Dl6q+Qw== - -anymatch@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" - integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== - dependencies: - micromatch "^3.1.4" - normalize-path "^2.1.1" - anymatch@~3.1.2: version "3.1.3" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" @@ -852,91 +913,16 @@ anymatch@~3.1.2: normalize-path "^3.0.0" picomatch "^2.0.4" -append-buffer@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/append-buffer/-/append-buffer-1.0.2.tgz#d8220cf466081525efea50614f3de6514dfa58f1" - integrity sha512-WLbYiXzD3y/ATLZFufV/rZvWdZOs+Z/+5v1rBZ463Jn398pa6kcde27cvozYnBoxXblGZTFfoPpsaEw0orU5BA== - dependencies: - buffer-equal "^1.0.0" - -archy@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/archy/-/archy-1.0.0.tgz#f9c8c13757cc1dd7bc379ac77b2c62a5c2868c40" - integrity sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw== - argparse@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== -arr-diff@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" - integrity sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA== - -arr-filter@^1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/arr-filter/-/arr-filter-1.1.2.tgz#43fdddd091e8ef11aa4c45d9cdc18e2dff1711ee" - integrity sha512-A2BETWCqhsecSvCkWAeVBFLH6sXEUGASuzkpjL3GR1SlL/PWL6M3J8EAAld2Uubmh39tvkJTqC9LeLHCUKmFXA== - dependencies: - make-iterator "^1.0.0" - -arr-flatten@^1.0.1, arr-flatten@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" - integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== - -arr-map@^2.0.0, arr-map@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/arr-map/-/arr-map-2.0.2.tgz#3a77345ffc1cf35e2a91825601f9e58f2e24cac4" - integrity sha512-tVqVTHt+Q5Xb09qRkbu+DidW1yYzz5izWS2Xm2yFm7qJnmUfz4HPzNxbHkdRJbz2lrqI7S+z17xNYdFcBBO8Hw== - dependencies: - make-iterator "^1.0.0" - -arr-union@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" - integrity sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q== - array-differ@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-3.0.0.tgz#3cbb3d0f316810eafcc47624734237d6aee4ae6b" integrity sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg== -array-each@^1.0.0, array-each@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/array-each/-/array-each-1.0.1.tgz#a794af0c05ab1752846ee753a1f211a05ba0c44f" - integrity sha512-zHjL5SZa68hkKHBFBK6DJCTtr9sfTCPCaph/L7tMSLcTFgy+zX7E+6q5UArbtOtMBCtxdICpfTCspRse+ywyXA== - -array-initial@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/array-initial/-/array-initial-1.1.0.tgz#2fa74b26739371c3947bd7a7adc73be334b3d795" - integrity sha512-BC4Yl89vneCYfpLrs5JU2aAu9/a+xWbeKhvISg9PT7eWFB9UlRvI+rKEtk6mgxWr3dSkk9gQ8hCrdqt06NXPdw== - dependencies: - array-slice "^1.0.0" - is-number "^4.0.0" - -array-last@^1.1.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/array-last/-/array-last-1.3.0.tgz#7aa77073fec565ddab2493f5f88185f404a9d336" - integrity sha512-eOCut5rXlI6aCOS7Z7kCplKRKyiFQ6dHFBem4PwlwKeNFk2/XxTrhRh5T9PyaEWGy/NHTZWbY+nsZlNFJu9rYg== - dependencies: - is-number "^4.0.0" - -array-slice@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/array-slice/-/array-slice-1.1.0.tgz#e368ea15f89bc7069f7ffb89aec3a6c7d4ac22d4" - integrity sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w== - -array-sort@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/array-sort/-/array-sort-1.0.0.tgz#e4c05356453f56f53512a7d1d6123f2c54c0a88a" - integrity sha512-ihLeJkonmdiAsD7vpgN3CRcx2J2S0TiYW+IS/5zHBI7mKUq3ySvBdzzBfD236ubDBQFiiyG3SWCPc+msQ9KoYg== - dependencies: - default-compare "^1.0.0" - get-value "^2.0.6" - kind-of "^5.0.2" - array-union@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" @@ -954,11 +940,6 @@ array-uniq@^1.0.1: resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" integrity sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q== -array-unique@^0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" - integrity sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ== - arrify@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/arrify/-/arrify-2.0.1.tgz#c9655e9331e0abcd588d2a7cad7e9956f66701fa" @@ -980,33 +961,6 @@ assertion-error@^1.1.0: resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.1.0.tgz#e60b6b0e8f301bd97e5375215bda406c85118c0b" integrity sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw== -assign-symbols@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" - integrity sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw== - -async-done@^1.2.0, async-done@^1.2.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/async-done/-/async-done-1.3.2.tgz#5e15aa729962a4b07414f528a88cdf18e0b290a2" - integrity sha512-uYkTP8dw2og1tu1nmza1n1CMW0qb8gWWlwqMmLb7MhBVs4BXrFziT6HXUd+/RlRA/i4H9AkofYloUbs1fwMqlw== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.2" - process-nextick-args "^2.0.0" - stream-exhaust "^1.0.1" - -async-each@^1.0.1: - version "1.0.6" - resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.6.tgz#52f1d9403818c179b7561e11a5d1b77eb2160e77" - integrity sha512-c646jH1avxr+aVpndVMeAfYw7wAa6idufrlN3LPA4PmKS0QEGp6PIC9nwz0WQkkvBGAMEki3pFdtxaF39J9vvg== - -async-settle@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/async-settle/-/async-settle-1.0.0.tgz#1d0a914bb02575bec8a8f3a74e5080f72b2c0c6b" - integrity sha512-VPXfB4Vk49z1LHHodrEQ6Xf7W4gg1w0dAPROHngx7qgDjqmIQ+fXmwgGXTW/ITLai0YLSvWepJOP9EVpMnEAcw== - dependencies: - async-done "^1.2.2" - async@^2.6.4: version "2.6.4" resolved "https://registry.yarnpkg.com/async/-/async-2.6.4.tgz#706b7ff6084664cd7eae713f6f965433b5504221" @@ -1019,11 +973,6 @@ asynckit@^0.4.0: resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== -atob@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" - integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== - available-typed-arrays@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7" @@ -1046,21 +995,6 @@ azure-devops-node-api@^11.0.1: tunnel "0.0.6" typed-rest-client "^1.8.4" -bach@^1.0.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/bach/-/bach-1.2.0.tgz#4b3ce96bf27134f79a1b414a51c14e34c3bd9880" - integrity sha512-bZOOfCb3gXBXbTFXq3OZtGR88LwGeJvzu6szttaIzymOTS4ZttBNOWSv7aLZja2EMycKtRYV0Oa8SNKH/zkxvg== - dependencies: - arr-filter "^1.1.1" - arr-flatten "^1.0.1" - arr-map "^2.0.0" - array-each "^1.0.0" - array-initial "^1.0.0" - array-last "^1.1.1" - async-done "^1.2.2" - async-settle "^1.0.0" - now-and-later "^2.0.0" - balanced-match@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" @@ -1071,19 +1005,6 @@ base64-js@^1.3.1: resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== -base@^0.11.1: - version "0.11.2" - resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" - integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== - dependencies: - cache-base "^1.0.1" - class-utils "^0.3.5" - component-emitter "^1.2.1" - define-property "^1.0.0" - isobject "^3.0.1" - mixin-deep "^1.2.0" - pascalcase "^0.1.1" - big-integer@^1.6.17: version "1.6.52" resolved "https://registry.yarnpkg.com/big-integer/-/big-integer-1.6.52.tgz#60a887f3047614a8e1bffe5d7173490a97dc8c85" @@ -1099,11 +1020,6 @@ bignumber.js@^9.0.1: resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-9.1.2.tgz#b7c4242259c008903b13707983b5f4bbd31eda0c" integrity sha512-2/mKyZH9K85bzOEfhXDBFZTGd1CTs+5IHpeFQo9luiBG7hghdC851Pj2WAhb6E3R6b9tZj/XKhbg4fum+Kepug== -binary-extensions@^1.0.0: - version "1.13.1" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65" - integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw== - binary-extensions@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" @@ -1117,13 +1033,6 @@ binary@~0.3.0: buffers "~0.1.1" chainsaw "~0.1.0" -bindings@^1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" - integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== - dependencies: - file-uri-to-path "1.0.0" - bl@^1.0.0: version "1.2.3" resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.3.tgz#1e8dd80142eac80d7158c9dccc047fb620e035e7" @@ -1166,22 +1075,6 @@ brace-expansion@^2.0.1: dependencies: balanced-match "^1.0.0" -braces@^2.3.1, braces@^2.3.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" - integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== - dependencies: - arr-flatten "^1.1.0" - array-unique "^0.3.2" - extend-shallow "^2.0.1" - fill-range "^4.0.0" - isobject "^3.0.1" - repeat-element "^1.1.2" - snapdragon "^0.8.1" - snapdragon-node "^2.0.1" - split-string "^3.0.2" - to-regex "^3.0.1" - braces@^3.0.2, braces@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" @@ -1222,11 +1115,6 @@ buffer-crc32@~0.2.3: resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" integrity sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ== -buffer-equal@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/buffer-equal/-/buffer-equal-1.0.1.tgz#2f7651be5b1b3f057fcd6e7ee16cf34767077d90" - integrity sha512-QoV3ptgEaQpvVwbXdSO39iqPQTCxSF7A5U99AxbHYqUdCizL/lH2Z0A2y6nbZucxMEOtNyZfG2s6gsVugGpKkg== - buffer-fill@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/buffer-fill/-/buffer-fill-1.0.0.tgz#f8f78b76789888ef39f205cd637f68e702122b2c" @@ -1260,21 +1148,6 @@ bulma@^0.9.3: resolved "https://registry.yarnpkg.com/bulma/-/bulma-0.9.4.tgz#0ca8aeb1847a34264768dba26a064c8be72674a1" integrity sha512-86FlT5+1GrsgKbPLRRY7cGDg8fsJiP/jzTqXXVqiUZZ2aZT8uemEOHlU1CDU+TxklPEZ11HZNNWclRBBecP4CQ== -cache-base@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" - integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== - dependencies: - collection-visit "^1.0.0" - component-emitter "^1.2.1" - get-value "^2.0.6" - has-value "^1.0.0" - isobject "^3.0.1" - set-value "^2.0.0" - to-object-path "^0.3.0" - union-value "^1.0.0" - unset-value "^1.0.0" - cacheable-lookup@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-7.0.0.tgz#3476a8215d046e5a3202a9209dd13fec1f933a27" @@ -1302,12 +1175,7 @@ call-bind@^1.0.0, call-bind@^1.0.2, call-bind@^1.0.4, call-bind@^1.0.5: get-intrinsic "^1.2.1" set-function-length "^1.1.1" -camelcase@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" - integrity sha512-4nhGqUkc4BqbBBB4Q6zLuD7lzzrHYrjKGeYaEji/3tFR5VdJu9v+LilhGIVe8wxEJPPOeWo7eg8dwY13TZ1BNg== - -camelcase@^5.0.0, camelcase@^5.3.1: +camelcase@^5.3.1: version "5.3.1" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== @@ -1411,25 +1279,6 @@ chokidar@3.5.3, "chokidar@>=3.0.0 <4.0.0": optionalDependencies: fsevents "~2.3.2" -chokidar@^2.0.0: - version "2.1.8" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917" - integrity sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg== - dependencies: - anymatch "^2.0.0" - async-each "^1.0.1" - braces "^2.3.2" - glob-parent "^3.1.0" - inherits "^2.0.3" - is-binary-path "^1.0.0" - is-glob "^4.0.0" - normalize-path "^3.0.0" - path-is-absolute "^1.0.0" - readdirp "^2.2.1" - upath "^1.1.1" - optionalDependencies: - fsevents "^1.2.7" - chownr@^1.0.1, chownr@^1.1.1: version "1.1.4" resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" @@ -1445,16 +1294,6 @@ ci-info@^2.0.0: resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== -class-utils@^0.3.5: - version "0.3.6" - resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" - integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== - dependencies: - arr-union "^3.1.0" - define-property "^0.2.5" - isobject "^3.0.0" - static-extend "^0.1.1" - clipboardy@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/clipboardy/-/clipboardy-4.0.0.tgz#e73ced93a76d19dd379ebf1f297565426dffdca1" @@ -1464,24 +1303,6 @@ clipboardy@^4.0.0: is-wsl "^3.1.0" is64bit "^2.0.0" -cliui@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" - integrity sha512-0yayqDxWQbqk3ojkYqUKqaAQ6AfNKeKWRNA8kR0WXzAsdHpP4BIaOmMAG87JGuO6qcobyW4GjxHd9PmhEd+T9w== - dependencies: - string-width "^1.0.1" - strip-ansi "^3.0.1" - wrap-ansi "^2.0.0" - -cliui@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5" - integrity sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA== - dependencies: - string-width "^3.1.0" - strip-ansi "^5.2.0" - wrap-ansi "^5.1.0" - cliui@^7.0.2: version "7.0.4" resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" @@ -1491,10 +1312,14 @@ cliui@^7.0.2: strip-ansi "^6.0.0" wrap-ansi "^7.0.0" -clone-buffer@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/clone-buffer/-/clone-buffer-1.0.0.tgz#e3e25b207ac4e701af721e2cb5a16792cac3dc58" - integrity sha512-KLLTJWrvwIP+OPfMn0x2PheDEP20RPUcGXj/ERegTgdmPEZylALQldygiqrPPu8P45uNuPs7ckmReLY6v/iA5g== +cliui@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-8.0.1.tgz#0c04b075db02cbfe60dc8e6cf2f5486b1a3608aa" + integrity sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.1" + wrap-ansi "^7.0.0" clone-deep@^4.0.1: version "4.0.1" @@ -1505,47 +1330,6 @@ clone-deep@^4.0.1: kind-of "^6.0.2" shallow-clone "^3.0.0" -clone-stats@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-1.0.0.tgz#b3782dff8bb5474e18b9b6bf0fdfe782f8777680" - integrity sha512-au6ydSpg6nsrigcZ4m8Bc9hxjeW+GJ8xh5G3BJCMt4WXe1H10UNaVOamqQTmrx1kjVuxAHIQSNU6hY4Nsn9/ag== - -clone@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" - integrity sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w== - -cloneable-readable@^1.0.0: - version "1.1.3" - resolved "https://registry.yarnpkg.com/cloneable-readable/-/cloneable-readable-1.1.3.tgz#120a00cb053bfb63a222e709f9683ea2e11d8cec" - integrity sha512-2EF8zTQOxYq70Y4XKtorQupqF0m49MBz2/yf5Bj+MHjvpG3Hy7sImifnqD6UA+TKYxeSV+u6qqQPawN5UvnpKQ== - dependencies: - inherits "^2.0.1" - process-nextick-args "^2.0.0" - readable-stream "^2.3.5" - -code-point-at@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" - integrity sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA== - -collection-map@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/collection-map/-/collection-map-1.0.0.tgz#aea0f06f8d26c780c2b75494385544b2255af18c" - integrity sha512-5D2XXSpkOnleOI21TG7p3T0bGAsZ/XknZpKBmGYyluO8pw4zA3K8ZlrBIbC4FXg3m6z/RNFiUFfT2sQK01+UHA== - dependencies: - arr-map "^2.0.2" - for-own "^1.0.0" - make-iterator "^1.0.0" - -collection-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" - integrity sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw== - dependencies: - map-visit "^1.0.0" - object-visit "^1.0.0" - color-convert@^1.9.0: version "1.9.3" resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" @@ -1570,11 +1354,6 @@ color-name@~1.1.4: resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== -color-support@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" - integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== - colorette@^2.0.14: version "2.0.20" resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.20.tgz#9eb793e6833067f7235902fcd3b09917a000a95a" @@ -1617,44 +1396,11 @@ compare-versions@^6.1.0: resolved "https://registry.yarnpkg.com/compare-versions/-/compare-versions-6.1.0.tgz#3f2131e3ae93577df111dba133e6db876ffe127a" integrity sha512-LNZQXhqUvqUTotpZ00qLSaify3b4VFD588aRr8MKFw4CMUr98ytzCW5wDH5qx/DEY5kCDXcbcRuCqL0szEf2tg== -component-emitter@^1.2.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.1.tgz#ef1d5796f7d93f135ee6fb684340b26403c97d17" - integrity sha512-T0+barUSQRTUQASh8bx02dl+DhF54GtIDY13Y3m9oWTklKbb3Wv974meRpeZ3lp1JpLVECWWNHC4vaG2XHXouQ== - concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== -concat-stream@^1.6.0: - version "1.6.2" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" - integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== - dependencies: - buffer-from "^1.0.0" - inherits "^2.0.3" - readable-stream "^2.2.2" - typedarray "^0.0.6" - -convert-source-map@^1.5.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f" - integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== - -copy-descriptor@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" - integrity sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw== - -copy-props@^2.0.1: - version "2.0.5" - resolved "https://registry.yarnpkg.com/copy-props/-/copy-props-2.0.5.tgz#03cf9ae328d4ebb36f8f1d804448a6af9ee3f2d2" - integrity sha512-XBlx8HSqrT0ObQwmSzM7WE5k8FxTV75h1DX1Z3n6NhQ/UYYAvInWYmG06vFt7hQZArE2fuO62aihiWIVQwh1sw== - dependencies: - each-props "^1.3.2" - is-plain-object "^5.0.0" - core-util-is@~1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" @@ -1773,15 +1519,7 @@ d3-scale@^4.0.2: dependencies: d3-array "2 - 3" -d@1, d@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/d/-/d-1.0.1.tgz#8698095372d58dbee346ffd0c7093f99f8f9eb5a" - integrity sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA== - dependencies: - es5-ext "^0.10.50" - type "^1.0.1" - -debug@4, debug@^4.1.0: +debug@4, debug@^4.1.0, debug@^4.3.4: version "4.3.4" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== @@ -1795,7 +1533,7 @@ debug@4.3.3: dependencies: ms "2.1.2" -debug@^2.2.0, debug@^2.3.3: +debug@^2.2.0: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== @@ -1809,21 +1547,11 @@ debug@^3.1.0: dependencies: ms "^2.1.1" -decamelize@^1.1.1, decamelize@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" - integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== - decamelize@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-4.0.0.tgz#aa472d7bf660eb15f3494efd531cab7f2a709837" integrity sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ== -decode-uri-component@^0.2.0: - version "0.2.2" - resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz#e69dbe25d37941171dd540e024c444cd5188e1e9" - integrity sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ== - decompress-response@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc" @@ -1855,23 +1583,16 @@ deep-extend@^0.6.0: resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== +deepmerge-json@^1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/deepmerge-json/-/deepmerge-json-1.5.0.tgz#6daa3600d53fc1f646604853bc99e95e260fbda0" + integrity sha512-jZRrDmBKjmGcqMFEUJ14FjMJwm05Qaked+1vxaALRtF0UAl7lPU8OLWXFxvoeg3jbQM249VPFVn8g2znaQkEtA== + deepmerge@^4.2.2: version "4.3.1" resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.3.1.tgz#44b5f2147cd3b00d4b56137685966f26fd25dd4a" integrity sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A== -default-compare@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/default-compare/-/default-compare-1.0.0.tgz#cb61131844ad84d84788fb68fd01681ca7781a2f" - integrity sha512-QWfXlM0EkAbqOCbD/6HjdwT19j7WCkMyiRhWilc4H9/5h/RzTF9gv5LYh1+CmDV5d1rki6KAWLtQale0xt20eQ== - dependencies: - kind-of "^5.0.2" - -default-resolution@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/default-resolution/-/default-resolution-2.0.0.tgz#bcb82baa72ad79b426a76732f1a81ad6df26d684" - integrity sha512-2xaP6GiwVwOEbXCGoJ4ufgC76m8cj805jrghScewJC2ZDsb9U0b4BIrba+xt/Uytyd0HvQ6+WymSRTfnYj59GQ== - defer-to-connect@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-2.0.1.tgz#8016bdb4143e4632b77a3449c6236277de520587" @@ -1895,28 +1616,6 @@ define-properties@^1.1.3, define-properties@^1.2.0, define-properties@^1.2.1: has-property-descriptors "^1.0.0" object-keys "^1.1.1" -define-property@^0.2.5: - version "0.2.5" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" - integrity sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA== - dependencies: - is-descriptor "^0.1.0" - -define-property@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" - integrity sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA== - dependencies: - is-descriptor "^1.0.0" - -define-property@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" - integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== - dependencies: - is-descriptor "^1.0.2" - isobject "^3.0.1" - del@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/del/-/del-4.1.1.tgz#9e8f117222ea44a31ff3a156c049b99052a9f0b4" @@ -1935,11 +1634,6 @@ delayed-stream@~1.0.0: resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== -detect-file@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-1.0.0.tgz#f0d66d03672a825cb1b73bdb3fe62310c8e552b7" - integrity sha512-DtCOLG98P007x7wiiOmfI0fi3eIKyWiLTGJ2MDnVi/E04lWGbf+JzrRHMm0rgIIZJGtHpKpbVgLWHrv8xXpc3Q== - detect-libc@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.2.tgz#8ccf2ba9315350e1241b88d0ac3b0e1fbd99605d" @@ -1987,29 +1681,6 @@ duplexer2@~0.1.4: dependencies: readable-stream "^2.0.2" -duplexer@^0.1.1, duplexer@~0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" - integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg== - -duplexify@^3.6.0: - version "3.7.1" - resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.7.1.tgz#2a4df5317f6ccfd91f86d6fd25d8d8a103b88309" - integrity sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g== - dependencies: - end-of-stream "^1.0.0" - inherits "^2.0.1" - readable-stream "^2.0.0" - stream-shift "^1.0.0" - -each-props@^1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/each-props/-/each-props-1.3.2.tgz#ea45a414d16dd5cfa419b1a81720d5ca06892333" - integrity sha512-vV0Hem3zAGkJAyU7JSjixeU66rwdynTAa1vofCrSA5fEln+m67Az9CcnkVD776/fsN/UjIWmBDoNRS6t6G9RfA== - dependencies: - is-plain-object "^2.0.1" - object.defaults "^1.1.0" - eastasianwidth@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" @@ -2020,11 +1691,6 @@ electron-to-chromium@^1.4.601: resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.642.tgz#eb380fa8b58e515c641d642ba452fa2c453c2e4f" integrity sha512-M4+u22ZJGpk4RY7tne6W+APkZhnnhmAH48FNl8iEFK2lEgob+U5rUQsIqQhvAwCXYpfd3H20pHK/ENsCvwTbsA== -emoji-regex@^7.0.1: - version "7.0.3" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" - integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== - emoji-regex@^8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" @@ -2075,37 +1741,11 @@ envinfo@^7.7.3: resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.11.0.tgz#c3793f44284a55ff8c82faf1ffd91bc6478ea01f" integrity sha512-G9/6xF1FPbIw0TtalAMaVPpiq2aDEuKLXM314jPVAO9r2fo2a4BLqMNkmRS7O/xPPZ+COAhGIz3ETvHEV3eUcg== -error-ex@^1.2.0: - version "1.3.2" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" - integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== - dependencies: - is-arrayish "^0.2.1" - es-module-lexer@^1.2.1: version "1.4.1" resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-1.4.1.tgz#41ea21b43908fe6a287ffcbe4300f790555331f5" integrity sha512-cXLGjP0c4T3flZJKQSuziYoq7MlT+rnvfZjfp7h+I7K9BNX54kP9nyWvdbwjQ4u1iWbOL4u96fgeZLToQlZC7w== -es5-ext@^0.10.35, es5-ext@^0.10.46, es5-ext@^0.10.50, es5-ext@^0.10.62, es5-ext@~0.10.14: - version "0.10.63" - resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.63.tgz#9c222a63b6a332ac80b1e373b426af723b895bd6" - integrity sha512-hUCZd2Byj/mNKjfP9jXrdVZ62B8KuA/VoK7X8nUh5qT+AxDmcbvZz041oDVZdbIN1qW6XY9VDNwzkvKnZvK2TQ== - dependencies: - es6-iterator "^2.0.3" - es6-symbol "^3.1.3" - esniff "^2.0.1" - next-tick "^1.1.0" - -es6-iterator@^2.0.1, es6-iterator@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7" - integrity sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g== - dependencies: - d "1" - es5-ext "^0.10.35" - es6-symbol "^3.1.1" - es6-promise@^4.0.3: version "4.2.8" resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.8.tgz#4eb21594c972bc40553d276e510539143db53e0a" @@ -2123,24 +1763,6 @@ es6-promisify@^6.0.0: resolved "https://registry.yarnpkg.com/es6-promisify/-/es6-promisify-6.1.1.tgz#46837651b7b06bf6fff893d03f29393668d01621" integrity sha512-HBL8I3mIki5C1Cc9QjKUenHtnG0A5/xA8Q/AllRcfiwl2CZFXGK7ddBiCoRwAix4i2KxcQfjtIVcrVbB3vbmwg== -es6-symbol@^3.1.1, es6-symbol@^3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.3.tgz#bad5d3c1bcdac28269f4cb331e431c78ac705d18" - integrity sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA== - dependencies: - d "^1.0.1" - ext "^1.1.2" - -es6-weak-map@^2.0.1: - version "2.0.3" - resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.3.tgz#b6da1f16cc2cc0d9be43e6bdbfc5e7dfcdf31d53" - integrity sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA== - dependencies: - d "1" - es5-ext "^0.10.46" - es6-iterator "^2.0.3" - es6-symbol "^3.1.1" - esbuild@^0.18.10: version "0.18.20" resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.18.20.tgz#4709f5a34801b43b799ab7d6d82f7284a9b7a7a6" @@ -2192,16 +1814,6 @@ eslint-scope@5.1.1: esrecurse "^4.3.0" estraverse "^4.1.1" -esniff@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/esniff/-/esniff-2.0.1.tgz#a4d4b43a5c71c7ec51c51098c1d8a29081f9b308" - integrity sha512-kTUIGKQ/mDPFoJ0oVfcmyJn4iBDRptjNVIzwIFR7tqWXdVI9xfA2RMwY/gbSpJG3lkdWNEjLap/NqVHZiJsdfg== - dependencies: - d "^1.0.1" - es5-ext "^0.10.62" - event-emitter "^0.3.5" - type "^2.7.2" - esrecurse@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" @@ -2224,27 +1836,6 @@ estree-walker@^2.0.2: resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-2.0.2.tgz#52f010178c2a4c117a7757cfe942adb7d2da4cac" integrity sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w== -event-emitter@^0.3.5: - version "0.3.5" - resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39" - integrity sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA== - dependencies: - d "1" - es5-ext "~0.10.14" - -event-stream@^3.3.4: - version "3.3.5" - resolved "https://registry.yarnpkg.com/event-stream/-/event-stream-3.3.5.tgz#e5dd8989543630d94c6cf4d657120341fa31636b" - integrity sha512-vyibDcu5JL20Me1fP734QBH/kenBGLZap2n0+XXM7mvuUPzJ20Ydqj1aKcIeMdri1p+PU+4yAKugjN8KCVst+g== - dependencies: - duplexer "^0.1.1" - from "^0.1.7" - map-stream "0.0.7" - pause-stream "^0.0.11" - split "^1.0.1" - stream-combiner "^0.2.2" - through "^2.3.8" - events@^3.2.0: version "3.3.0" resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" @@ -2280,87 +1871,16 @@ execa@^8.0.1: signal-exit "^4.1.0" strip-final-newline "^3.0.0" -expand-brackets@^2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" - integrity sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA== - dependencies: - debug "^2.3.3" - define-property "^0.2.5" - extend-shallow "^2.0.1" - posix-character-classes "^0.1.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - expand-template@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/expand-template/-/expand-template-2.0.3.tgz#6e14b3fcee0f3a6340ecb57d2e8918692052a47c" integrity sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg== -expand-tilde@^2.0.0, expand-tilde@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502" - integrity sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw== - dependencies: - homedir-polyfill "^1.0.1" - -ext@^1.1.2: - version "1.7.0" - resolved "https://registry.yarnpkg.com/ext/-/ext-1.7.0.tgz#0ea4383c0103d60e70be99e9a7f11027a33c4f5f" - integrity sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw== - dependencies: - type "^2.7.2" - -extend-shallow@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" - integrity sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug== - dependencies: - is-extendable "^0.1.0" - -extend-shallow@^3.0.0, extend-shallow@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" - integrity sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q== - dependencies: - assign-symbols "^1.0.0" - is-extendable "^1.0.1" - -extend@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" - integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== - -extglob@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" - integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== - dependencies: - array-unique "^0.3.2" - define-property "^1.0.0" - expand-brackets "^2.1.4" - extend-shallow "^2.0.1" - fragment-cache "^0.2.1" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - eyes@0.1.x: version "0.1.8" resolved "https://registry.yarnpkg.com/eyes/-/eyes-0.1.8.tgz#62cf120234c683785d902348a800ef3e0cc20bc0" integrity sha512-GipyPsXO1anza0AOZdy69Im7hGFCNB7Y/NGjDlZGJ3GJJLtwNSb2vrzYrTYJRrRloVx7pl+bhUaTB8yiccPvFQ== -fancy-log@^1.3.2, fancy-log@^1.3.3: - version "1.3.3" - resolved "https://registry.yarnpkg.com/fancy-log/-/fancy-log-1.3.3.tgz#dbc19154f558690150a23953a0adbd035be45fc7" - integrity sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw== - dependencies: - ansi-gray "^0.1.1" - color-support "^1.1.3" - parse-node-version "^1.0.0" - time-stamp "^1.0.0" - fast-deep-equal@^3.1.1: version "3.1.3" resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" @@ -2371,11 +1891,6 @@ fast-json-stable-stringify@^2.0.0: resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== -fast-levenshtein@^1.0.0: - version "1.1.4" - resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-1.1.4.tgz#e6a754cc8f15e58987aa9cbd27af66fd6f4e5af9" - integrity sha512-Ia0sQNrMPXXkqVFt6w6M1n1oKo3NfKs+mvaV811Jwir7vAk9a6PVV9VPYf6X3BU97QiLEmuW3uXH9u87zDFfdw== - fastest-levenshtein@^1.0.12: version "1.0.16" resolved "https://registry.yarnpkg.com/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz#210e61b6ff181de91ea9b3d1b84fdedd47e034e5" @@ -2396,21 +1911,6 @@ file-loader@^6.2.0: loader-utils "^2.0.0" schema-utils "^3.0.0" -file-uri-to-path@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" - integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== - -fill-range@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" - integrity sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ== - dependencies: - extend-shallow "^2.0.1" - is-number "^3.0.0" - repeat-string "^1.6.1" - to-regex-range "^2.1.0" - fill-range@^7.0.1: version "7.0.1" resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" @@ -2426,21 +1926,6 @@ find-up@5.0.0: locate-path "^6.0.0" path-exists "^4.0.0" -find-up@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" - integrity sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA== - dependencies: - path-exists "^2.0.0" - pinkie-promise "^2.0.0" - -find-up@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" - integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== - dependencies: - locate-path "^3.0.0" - find-up@^4.0.0, find-up@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" @@ -2449,55 +1934,11 @@ find-up@^4.0.0, find-up@^4.1.0: locate-path "^5.0.0" path-exists "^4.0.0" -findup-sync@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-2.0.0.tgz#9326b1488c22d1a6088650a86901b2d9a90a2cbc" - integrity sha512-vs+3unmJT45eczmcAZ6zMJtxN3l/QXeccaXQx5cu/MeJMhewVfoWZqibRkOxPnmoR59+Zy5hjabfQc6JLSah4g== - dependencies: - detect-file "^1.0.0" - is-glob "^3.1.0" - micromatch "^3.0.4" - resolve-dir "^1.0.1" - -findup-sync@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-3.0.0.tgz#17b108f9ee512dfb7a5c7f3c8b27ea9e1a9c08d1" - integrity sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg== - dependencies: - detect-file "^1.0.0" - is-glob "^4.0.0" - micromatch "^3.0.4" - resolve-dir "^1.0.1" - -fined@^1.0.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/fined/-/fined-1.2.0.tgz#d00beccf1aa2b475d16d423b0238b713a2c4a37b" - integrity sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng== - dependencies: - expand-tilde "^2.0.2" - is-plain-object "^2.0.3" - object.defaults "^1.1.0" - object.pick "^1.2.0" - parse-filepath "^1.0.1" - -flagged-respawn@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/flagged-respawn/-/flagged-respawn-1.0.1.tgz#e7de6f1279ddd9ca9aac8a5971d618606b3aab41" - integrity sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q== - flat@^5.0.2: version "5.0.2" resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== -flush-write-stream@^1.0.2: - version "1.1.1" - resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.1.1.tgz#8dd7d873a1babc207d94ead0c2e0e44276ebf2e8" - integrity sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w== - dependencies: - inherits "^2.0.3" - readable-stream "^2.3.6" - follow-redirects@^1.13.2, follow-redirects@^1.15.4, follow-redirects@^1.15.6: version "1.15.6" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.6.tgz#7f815c0cda4249c74ff09e95ef97c23b5fd0399b" @@ -2510,18 +1951,6 @@ for-each@^0.3.3: dependencies: is-callable "^1.1.3" -for-in@^1.0.1, for-in@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" - integrity sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ== - -for-own@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/for-own/-/for-own-1.0.0.tgz#c63332f415cedc4b04dbfe70cf836494c53cb44b" - integrity sha512-0OABksIGrxKK8K4kynWkQ7y1zounQxP+CWnyclVwj81KW3vlLlGUx57DKGcP/LH216GzqnstnPocF16Nxs0Ycg== - dependencies: - for-in "^1.0.1" - foreground-child@^3.1.0: version "3.1.1" resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-3.1.1.tgz#1d173e776d75d2772fed08efe4a0de1ea1b12d0d" @@ -2544,18 +1973,6 @@ form-data@^4.0.0: combined-stream "^1.0.8" mime-types "^2.1.12" -fragment-cache@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" - integrity sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA== - dependencies: - map-cache "^0.2.2" - -from@^0.1.7: - version "0.1.7" - resolved "https://registry.yarnpkg.com/from/-/from-0.1.7.tgz#83c60afc58b9c56997007ed1a768b3ab303a44fe" - integrity sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g== - fs-constants@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad" @@ -2579,27 +1996,11 @@ fs-extra@^8.1.0: jsonfile "^4.0.0" universalify "^0.1.0" -fs-mkdirp-stream@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz#0b7815fc3201c6a69e14db98ce098c16935259eb" - integrity sha512-+vSd9frUnapVC2RZYfL3FCB2p3g4TBhaUmrsWlSudsGdnxIuUvBB2QM1VZeBtc49QFwrp+wQLrDs3+xxDgI5gQ== - dependencies: - graceful-fs "^4.1.11" - through2 "^2.0.3" - fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== -fsevents@^1.2.7: - version "1.2.13" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.13.tgz#f325cb0455592428bcf11b383370ef70e3bfcc38" - integrity sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw== - dependencies: - bindings "^1.5.0" - nan "^2.12.1" - fsevents@~2.3.2: version "2.3.3" resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" @@ -2625,12 +2026,7 @@ functions-have-names@^1.2.3: resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== -get-caller-file@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a" - integrity sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w== - -get-caller-file@^2.0.1, get-caller-file@^2.0.5: +get-caller-file@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== @@ -2650,6 +2046,11 @@ get-intrinsic@^1.0.2, get-intrinsic@^1.1.3, get-intrinsic@^1.2.1, get-intrinsic@ has-symbols "^1.0.3" hasown "^2.0.0" +get-stdin@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-7.0.0.tgz#8d5de98f15171a125c5e516643c7a6d0ea8a96f6" + integrity sha512-zRKcywvrXlXsA0v0i9Io4KDRaAw7+a1ZpjRwl9Wox8PFlVCCHra7E9c4kqXCoCM9nR5tBkaTTZRBoCm60bFqTQ== + get-stream@^5.0.0: version "5.2.0" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3" @@ -2667,24 +2068,11 @@ get-stream@^8.0.1: resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-8.0.1.tgz#def9dfd71742cd7754a7761ed43749a27d02eca2" integrity sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA== -get-value@^2.0.3, get-value@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" - integrity sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA== - github-from-package@0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/github-from-package/-/github-from-package-0.0.0.tgz#97fb5d96bfde8973313f20e8288ef9a167fa64ce" integrity sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw== -glob-parent@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" - integrity sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA== - dependencies: - is-glob "^3.1.0" - path-dirname "^1.0.0" - glob-parent@~5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" @@ -2692,40 +2080,11 @@ glob-parent@~5.1.2: dependencies: is-glob "^4.0.1" -glob-stream@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/glob-stream/-/glob-stream-6.1.0.tgz#7045c99413b3eb94888d83ab46d0b404cc7bdde4" - integrity sha512-uMbLGAP3S2aDOHUDfdoYcdIePUCfysbAd0IAoWVZbeGU/oNQ8asHVSshLDJUPWxfzj8zsCG7/XeHPHTtow0nsw== - dependencies: - extend "^3.0.0" - glob "^7.1.1" - glob-parent "^3.1.0" - is-negated-glob "^1.0.0" - ordered-read-streams "^1.0.0" - pumpify "^1.3.5" - readable-stream "^2.1.5" - remove-trailing-separator "^1.0.1" - to-absolute-glob "^2.0.0" - unique-stream "^2.0.2" - glob-to-regexp@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== -glob-watcher@^5.0.3: - version "5.0.5" - resolved "https://registry.yarnpkg.com/glob-watcher/-/glob-watcher-5.0.5.tgz#aa6bce648332924d9a8489be41e3e5c52d4186dc" - integrity sha512-zOZgGGEHPklZNjZQaZ9f41i7F2YwE+tS5ZHrDhbBCk3stwahn5vQxnFmBJZHoYdusR6R1bLSXeGUy/BhctwKzw== - dependencies: - anymatch "^2.0.0" - async-done "^1.2.0" - chokidar "^2.0.0" - is-negated-glob "^1.0.0" - just-debounce "^1.0.0" - normalize-path "^3.0.0" - object.defaults "^1.1.0" - glob@7.2.0: version "7.2.0" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" @@ -2738,6 +2097,17 @@ glob@7.2.0: once "^1.3.0" path-is-absolute "^1.0.0" +glob@^10.0.0: + version "10.3.12" + resolved "https://registry.yarnpkg.com/glob/-/glob-10.3.12.tgz#3a65c363c2e9998d220338e88a5f6ac97302960b" + integrity sha512-TCNv8vJ+xz4QiqTpfOJA7HvYv+tNIRHKfUWw/q+v2jdgN4ebz+KY9tGx5J4rHP0o84mNP+ApH66HRX8us3Khqg== + dependencies: + foreground-child "^3.1.0" + jackspeak "^2.3.6" + minimatch "^9.0.1" + minipass "^7.0.4" + path-scurry "^1.10.2" + glob@^10.3.10: version "10.3.10" resolved "https://registry.yarnpkg.com/glob/-/glob-10.3.10.tgz#0351ebb809fd187fe421ab96af83d3a70715df4b" @@ -2749,7 +2119,7 @@ glob@^10.3.10: minipass "^5.0.0 || ^6.0.2 || ^7.0.0" path-scurry "^1.10.1" -glob@^7.0.3, glob@^7.0.6, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4: +glob@^7.0.3, glob@^7.0.6, glob@^7.1.3, glob@^7.1.4: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== @@ -2761,26 +2131,6 @@ glob@^7.0.3, glob@^7.0.6, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4: once "^1.3.0" path-is-absolute "^1.0.0" -global-modules@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea" - integrity sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg== - dependencies: - global-prefix "^1.0.1" - is-windows "^1.0.1" - resolve-dir "^1.0.0" - -global-prefix@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe" - integrity sha512-5lsx1NUDHtSjfg0eHlmYvZKv8/nVqX4ckFbM+FrGcQ+04KWcWFo9P5MxPZYSzUvyzmdTbI7Eix8Q4IbELDqzKg== - dependencies: - expand-tilde "^2.0.2" - homedir-polyfill "^1.0.1" - ini "^1.3.4" - is-windows "^1.0.1" - which "^1.2.14" - globby@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" @@ -2792,13 +2142,6 @@ globby@^6.1.0: pify "^2.0.0" pinkie-promise "^2.0.0" -glogg@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/glogg/-/glogg-1.0.2.tgz#2d7dd702beda22eb3bffadf880696da6d846313f" - integrity sha512-5mwUoSuBk44Y4EshyiqcH95ZntbDdTQqA3QYSrxmzj28Ai0vXBGMH1ApSANH14j2sIRtqCEyg6PfsuP7ElOEDA== - dependencies: - sparkles "^1.0.0" - gopd@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c" @@ -2823,7 +2166,7 @@ got@^13.0.0: p-cancelable "^3.0.0" responselike "^3.0.0" -graceful-fs@^4.0.0, graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.2, graceful-fs@^4.2.4, graceful-fs@^4.2.9: +graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.2, graceful-fs@^4.2.4, graceful-fs@^4.2.9: version "4.2.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== @@ -2833,59 +2176,6 @@ growl@1.10.5: resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e" integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA== -gulp-cli@^2.2.0, gulp-cli@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/gulp-cli/-/gulp-cli-2.3.0.tgz#ec0d380e29e52aa45e47977f0d32e18fd161122f" - integrity sha512-zzGBl5fHo0EKSXsHzjspp3y5CONegCm8ErO5Qh0UzFzk2y4tMvzLWhoDokADbarfZRL2pGpRp7yt6gfJX4ph7A== - dependencies: - ansi-colors "^1.0.1" - archy "^1.0.0" - array-sort "^1.0.0" - color-support "^1.1.3" - concat-stream "^1.6.0" - copy-props "^2.0.1" - fancy-log "^1.3.2" - gulplog "^1.0.0" - interpret "^1.4.0" - isobject "^3.0.1" - liftoff "^3.1.0" - matchdep "^2.0.0" - mute-stdout "^1.0.0" - pretty-hrtime "^1.0.0" - replace-homedir "^1.0.0" - semver-greatest-satisfied-range "^1.1.0" - v8flags "^3.2.0" - yargs "^7.1.0" - -gulp-typescript@^5.0.0-alpha.3: - version "5.0.1" - resolved "https://registry.yarnpkg.com/gulp-typescript/-/gulp-typescript-5.0.1.tgz#96c6565a6eb31e08c2aae1c857b1a079e6226d94" - integrity sha512-YuMMlylyJtUSHG1/wuSVTrZp60k1dMEFKYOvDf7OvbAJWrDtxxD4oZon4ancdWwzjj30ztiidhe4VXJniF0pIQ== - dependencies: - ansi-colors "^3.0.5" - plugin-error "^1.0.1" - source-map "^0.7.3" - through2 "^3.0.0" - vinyl "^2.1.0" - vinyl-fs "^3.0.3" - -gulp@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/gulp/-/gulp-4.0.2.tgz#543651070fd0f6ab0a0650c6a3e6ff5a7cb09caa" - integrity sha512-dvEs27SCZt2ibF29xYgmnwwCYZxdxhQ/+LFWlbAW8y7jt68L/65402Lz3+CKy0Ov4rOs+NERmDq7YlZaDqUIfA== - dependencies: - glob-watcher "^5.0.3" - gulp-cli "^2.2.0" - undertaker "^1.2.1" - vinyl-fs "^3.0.0" - -gulplog@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/gulplog/-/gulplog-1.0.0.tgz#e28c4d45d05ecbbed818363ce8f9c5926229ffe5" - integrity sha512-hm6N8nrm3Y08jXie48jsC55eCZz9mnb4OirAStEk2deqeyhXU3C1otDVh+ccttMuc1sBi6RX6ZJ720hs9RCvgw== - dependencies: - glogg "^1.0.0" - has-flag@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" @@ -2920,37 +2210,6 @@ has-tostringtag@^1.0.0: dependencies: has-symbols "^1.0.2" -has-value@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" - integrity sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q== - dependencies: - get-value "^2.0.3" - has-values "^0.1.4" - isobject "^2.0.0" - -has-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" - integrity sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw== - dependencies: - get-value "^2.0.6" - has-values "^1.0.0" - isobject "^3.0.0" - -has-values@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" - integrity sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ== - -has-values@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" - integrity sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ== - dependencies: - is-number "^3.0.0" - kind-of "^4.0.0" - hash-sum@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/hash-sum/-/hash-sum-1.0.2.tgz#33b40777754c6432573c120cc3808bbd10d47f04" @@ -2973,18 +2232,6 @@ he@1.2.0: resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== -homedir-polyfill@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz#743298cef4e5af3e194161fbadcc2151d3a058e8" - integrity sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA== - dependencies: - parse-passwd "^1.0.0" - -hosted-git-info@^2.1.4: - version "2.8.9" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" - integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== - hosted-git-info@^4.0.2: version "4.1.0" resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.1.0.tgz#827b82867e9ff1c8d0c4d9d53880397d2c86d224" @@ -3021,6 +2268,14 @@ http-proxy-agent@^4.0.1: agent-base "6" debug "4" +http-proxy-agent@^7.0.0: + version "7.0.2" + resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz#9a8b1f246866c028509486585f62b8f2c18c270e" + integrity sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig== + dependencies: + agent-base "^7.1.0" + debug "^4.3.4" + http2-wrapper@^2.1.10: version "2.2.1" resolved "https://registry.yarnpkg.com/http2-wrapper/-/http2-wrapper-2.2.1.tgz#310968153dcdedb160d8b72114363ef5fce1f64a" @@ -3045,6 +2300,14 @@ https-proxy-agent@^5.0.0: agent-base "6" debug "4" +https-proxy-agent@^7.0.0: + version "7.0.4" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-7.0.4.tgz#8e97b841a029ad8ddc8731f26595bad868cb4168" + integrity sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg== + dependencies: + agent-base "^7.0.2" + debug "4" + human-signals@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-5.0.0.tgz#42665a284f9ae0dade3ba41ebc37eb4b852f3a28" @@ -3055,13 +2318,6 @@ husky@^6.0.0: resolved "https://registry.yarnpkg.com/husky/-/husky-6.0.0.tgz#810f11869adf51604c32ea577edbc377d7f9319e" integrity sha512-SQS2gDTB7tBN486QSoKPKQItZw97BMOd+Kdb6ghfpBc0yXyzrddI0oDV5MkDAbuB4X2mO3/nj60TRMcYxwzZeQ== -iconv-lite@^0.4.19: - version "0.4.24" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" - integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== - dependencies: - safer-buffer ">= 2.1.2 < 3" - icss-utils@^4.0.0, icss-utils@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-4.1.1.tgz#21170b53789ee27447c2f47dd683081403f9a467" @@ -3105,12 +2361,12 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.0, inherits@~2.0.3, inherits@~2.0.4: +inherits@2, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.0, inherits@~2.0.3, inherits@~2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== -ini@^1.3.4, ini@~1.3.0: +ini@~1.3.0: version "1.3.8" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== @@ -3127,36 +2383,11 @@ interactjs@^1.9.18: resolved "https://registry.yarnpkg.com/internmap/-/internmap-2.0.3.tgz#6685f23755e43c524e251d29cbc97248e3061009" integrity sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg== -interpret@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e" - integrity sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA== - interpret@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/interpret/-/interpret-2.2.0.tgz#1a78a0b5965c40a5416d007ad6f50ad27c417df9" integrity sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw== -invert-kv@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" - integrity sha512-xgs2NH9AE66ucSq4cNG1nhSFghr5l6tdL15Pk+jl46bmmBapgoaY/AacXyaDznAqmGL99TiLSQgO/XazFSKYeQ== - -is-absolute@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-absolute/-/is-absolute-1.0.0.tgz#395e1ae84b11f26ad1795e73c17378e48a301576" - integrity sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA== - dependencies: - is-relative "^1.0.0" - is-windows "^1.0.1" - -is-accessor-descriptor@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.1.tgz#3223b10628354644b86260db29b3e693f5ceedd4" - integrity sha512-YBUanLI8Yoihw923YeFUS5fs0fF2f5TSFTNiYAAzhhDscDa3lEqYuz1pDOEP5KvX94I9ey3vsqjJcLVFVU+3QA== - dependencies: - hasown "^2.0.0" - is-arguments@^1.0.4, is-arguments@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.1.1.tgz#15b3f88fda01f2a97fec84ca761a560f123efa9b" @@ -3165,18 +2396,6 @@ is-arguments@^1.0.4, is-arguments@^1.1.1: call-bind "^1.0.2" has-tostringtag "^1.0.0" -is-arrayish@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" - integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== - -is-binary-path@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" - integrity sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q== - dependencies: - binary-extensions "^1.0.0" - is-binary-path@~2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" @@ -3184,7 +2403,7 @@ is-binary-path@~2.1.0: dependencies: binary-extensions "^2.0.0" -is-buffer@^1.1.5, is-buffer@~1.1.6: +is-buffer@~1.1.6: version "1.1.6" resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== @@ -3208,13 +2427,6 @@ is-core-module@^2.13.0: dependencies: hasown "^2.0.0" -is-data-descriptor@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.1.tgz#2109164426166d32ea38c405c1e0945d9e6a4eeb" - integrity sha512-bc4NlCDiCr28U4aEsQ3Qs2491gVq4V8G7MQyws968ImqjKuYtTJXrl7Vq7jsN7Ly/C3xj5KWFrY7sHNeDkAzXw== - dependencies: - hasown "^2.0.0" - is-date-object@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" @@ -3222,56 +2434,16 @@ is-date-object@^1.0.5: dependencies: has-tostringtag "^1.0.0" -is-descriptor@^0.1.0: - version "0.1.7" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.7.tgz#2727eb61fd789dcd5bdf0ed4569f551d2fe3be33" - integrity sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg== - dependencies: - is-accessor-descriptor "^1.0.1" - is-data-descriptor "^1.0.1" - -is-descriptor@^1.0.0, is-descriptor@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.3.tgz#92d27cb3cd311c4977a4db47df457234a13cb306" - integrity sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw== - dependencies: - is-accessor-descriptor "^1.0.1" - is-data-descriptor "^1.0.1" - is-docker@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-3.0.0.tgz#90093aa3106277d8a77a5910dbae71747e15a200" integrity sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ== -is-extendable@^0.1.0, is-extendable@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" - integrity sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw== - -is-extendable@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" - integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== - dependencies: - is-plain-object "^2.0.4" - -is-extglob@^2.1.0, is-extglob@^2.1.1: +is-extglob@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== -is-fullwidth-code-point@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" - integrity sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw== - dependencies: - number-is-nan "^1.0.0" - -is-fullwidth-code-point@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" - integrity sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w== - is-fullwidth-code-point@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" @@ -3284,14 +2456,7 @@ is-generator-function@^1.0.7: dependencies: has-tostringtag "^1.0.0" -is-glob@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" - integrity sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw== - dependencies: - is-extglob "^2.1.0" - -is-glob@^4.0.0, is-glob@^4.0.1, is-glob@~4.0.1: +is-glob@^4.0.1, is-glob@~4.0.1: version "4.0.3" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== @@ -3313,23 +2478,6 @@ is-nan@^1.3.2: call-bind "^1.0.0" define-properties "^1.1.3" -is-negated-glob@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-negated-glob/-/is-negated-glob-1.0.0.tgz#6910bca5da8c95e784b5751b976cf5a10fee36d2" - integrity sha512-czXVVn/QEmgvej1f50BZ648vUI+em0xqMq2Sn+QncCLN4zj1UAxlT+kw/6ggQTOaZPd1HqKQGEqbpQVtJucWug== - -is-number@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" - integrity sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg== - dependencies: - kind-of "^3.0.2" - -is-number@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-4.0.0.tgz#0026e37f5454d73e356dfe6564699867c6a7f0ff" - integrity sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ== - is-number@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" @@ -3359,7 +2507,7 @@ is-plain-obj@^2.1.0: resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== -is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4: +is-plain-object@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== @@ -3379,13 +2527,6 @@ is-regex@^1.1.4: call-bind "^1.0.2" has-tostringtag "^1.0.0" -is-relative@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-relative/-/is-relative-1.0.0.tgz#a1bb6935ce8c5dba1e8b9754b9b2dcc020e2260d" - integrity sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA== - dependencies: - is-unc-path "^1.0.0" - is-stream@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" @@ -3403,33 +2544,11 @@ is-typed-array@^1.1.3: dependencies: which-typed-array "^1.1.11" -is-unc-path@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-unc-path/-/is-unc-path-1.0.0.tgz#d731e8898ed090a12c352ad2eaed5095ad322c9d" - integrity sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ== - dependencies: - unc-path-regex "^0.1.2" - is-unicode-supported@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7" integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw== -is-utf8@^0.2.0, is-utf8@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" - integrity sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q== - -is-valid-glob@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-valid-glob/-/is-valid-glob-1.0.0.tgz#29bf3eff701be2d4d315dbacc39bc39fe8f601aa" - integrity sha512-AhiROmoEFDSsjx8hW+5sGwgKVIORcXnrlAx/R0ZSeaPw70Vw0CqkGBBhHGL58Uox2eXnU1AnvXJl1XlyedO5bA== - -is-windows@^1.0.1, is-windows@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" - integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== - is-wsl@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-3.1.0.tgz#e1c657e39c10090afcbedec61720f6b924c3cbd2" @@ -3444,12 +2563,7 @@ is64bit@^2.0.0: dependencies: system-architecture "^0.1.0" -is@^3.2.1: - version "3.3.0" - resolved "https://registry.yarnpkg.com/is/-/is-3.3.0.tgz#61cff6dd3c4193db94a3d62582072b44e5645d79" - integrity sha512-nW24QBoPcFGGHJGUwnfpI7Yc5CdqWNdsyHQszVE/z2pKHXzh7FZ5GWhJqSyaQ9wMkQnsTx+kAI8bHlCX4tKdbg== - -isarray@1.0.0, isarray@~1.0.0: +isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== @@ -3459,14 +2573,7 @@ isexe@^2.0.0: resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== -isobject@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" - integrity sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA== - dependencies: - isarray "1.0.0" - -isobject@^3.0.0, isobject@^3.0.1: +isobject@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== @@ -3476,7 +2583,7 @@ isstream@0.1.x: resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" integrity sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g== -jackspeak@^2.3.5: +jackspeak@^2.3.5, jackspeak@^2.3.6: version "2.3.6" resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-2.3.6.tgz#647ecc472238aee4b06ac0e461acc21a8c505ca8" integrity sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ== @@ -3516,11 +2623,6 @@ json-schema-traverse@^0.4.1: resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== -json-stable-stringify-without-jsonify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" - integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== - json-stringify-safe@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" @@ -3574,11 +2676,6 @@ jszip@^3.10.1: readable-stream "~2.3.6" setimmediate "^1.0.5" -just-debounce@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/just-debounce/-/just-debounce-1.1.0.tgz#2f81a3ad4121a76bc7cb45dbf704c0d76a8e5ddf" - integrity sha512-qpcRocdkUmf+UTNBYx5w6dexX5J31AKK1OmPwH630a83DdVVUIngk55RSAiIGpQyoH0dlr872VHfPjnQnK1qDQ== - keytar@^7.7.0: version "7.9.0" resolved "https://registry.yarnpkg.com/keytar/-/keytar-7.9.0.tgz#4c6225708f51b50cbf77c5aae81721964c2918cb" @@ -3594,25 +2691,6 @@ keyv@^4.5.3: dependencies: json-buffer "3.0.1" -kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: - version "3.2.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" - integrity sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ== - dependencies: - is-buffer "^1.1.5" - -kind-of@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" - integrity sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw== - dependencies: - is-buffer "^1.1.5" - -kind-of@^5.0.2: - version "5.1.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" - integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== - kind-of@^6.0.2: version "6.0.3" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" @@ -3623,35 +2701,6 @@ klona@^2.0.4: resolved "https://registry.yarnpkg.com/klona/-/klona-2.0.6.tgz#85bffbf819c03b2f53270412420a4555ef882e22" integrity sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA== -last-run@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/last-run/-/last-run-1.1.1.tgz#45b96942c17b1c79c772198259ba943bebf8ca5b" - integrity sha512-U/VxvpX4N/rFvPzr3qG5EtLKEnNI0emvIQB3/ecEwv+8GHaUKbIB8vxv1Oai5FAF0d0r7LXHhLLe5K/yChm5GQ== - dependencies: - default-resolution "^2.0.0" - es6-weak-map "^2.0.1" - -lazystream@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/lazystream/-/lazystream-1.0.1.tgz#494c831062f1f9408251ec44db1cba29242a2638" - integrity sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw== - dependencies: - readable-stream "^2.0.5" - -lcid@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" - integrity sha512-YiGkH6EnGrDGqLMITnGjXtGmNtjoXw9SVUzcaos8RBi7Ps0VBylkq+vOcY9QE5poLasPCR849ucFUkl0UzUyOw== - dependencies: - invert-kv "^1.0.0" - -lead@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/lead/-/lead-1.0.0.tgz#6f14f99a37be3a9dd784f5495690e5903466ee42" - integrity sha512-IpSVCk9AYvLHo5ctcIXxOBpMWUe+4TKN3VPWAKUbJikkmsGp0VrSM8IttVc32D6J4WUsiPE6aEFRNmIoF/gdow== - dependencies: - flush-write-stream "^1.0.2" - leven@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" @@ -3664,20 +2713,6 @@ lie@~3.3.0: dependencies: immediate "~3.0.5" -liftoff@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/liftoff/-/liftoff-3.1.0.tgz#c9ba6081f908670607ee79062d700df062c52ed3" - integrity sha512-DlIPlJUkCV0Ips2zf2pJP0unEoT1kwYhiiPUGF3s/jtxTCjziNLoiVVh+jqWOWeFi6mmwQ5fNxvAUyPad4Dfog== - dependencies: - extend "^3.0.0" - findup-sync "^3.0.0" - fined "^1.0.1" - flagged-respawn "^1.0.0" - is-plain-object "^2.0.4" - object.map "^1.0.0" - rechoir "^0.6.2" - resolve "^1.1.7" - linkify-it@^3.0.1: version "3.0.3" resolved "https://registry.yarnpkg.com/linkify-it/-/linkify-it-3.0.3.tgz#a98baf44ce45a550efb4d49c769d07524cc2fa2e" @@ -3685,22 +2720,18 @@ linkify-it@^3.0.1: dependencies: uc.micro "^1.0.1" +linkify-it@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/linkify-it/-/linkify-it-5.0.0.tgz#9ef238bfa6dc70bd8e7f9572b52d369af569b421" + integrity sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ== + dependencies: + uc.micro "^2.0.0" + listenercount@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/listenercount/-/listenercount-1.0.1.tgz#84c8a72ab59c4725321480c975e6508342e70937" integrity sha512-3mk/Zag0+IJxeDrxSgaDPy4zZ3w05PRZeJNnlWhzFz5OkX49J4krc+A8X2d2M69vGMBEX0uyl8M+W+8gH+kBqQ== -load-json-file@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" - integrity sha512-cy7ZdNRXdablkXYNI049pthVeXFurRyb9+hA/dZzerZ0pGTx42z+y+ssxBaVV2l70t1muq5IdKhn4UtcoGUY9A== - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - pinkie-promise "^2.0.0" - strip-bom "^2.0.0" - loader-runner@^4.2.0: version "4.3.0" resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.3.0.tgz#c1b4a163b99f614830353b16755e7149ac2314e1" @@ -3724,14 +2755,6 @@ loader-utils@^2.0.0: emojis-list "^3.0.0" json5 "^2.1.2" -locate-path@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" - integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== - dependencies: - p-locate "^3.0.0" - path-exists "^3.0.0" - locate-path@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" @@ -3771,6 +2794,11 @@ lowercase-keys@^3.0.0: resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-3.0.0.tgz#c5e7d442e37ead247ae9db117a9d0a467c89d4f2" integrity sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ== +lru-cache@^10.2.0: + version "10.2.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.2.0.tgz#0bd445ca57363465900f4d1f9bd8db343a4d95c3" + integrity sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q== + lru-cache@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" @@ -3790,30 +2818,6 @@ magic-string@^0.30.5: dependencies: "@jridgewell/sourcemap-codec" "^1.4.15" -make-iterator@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/make-iterator/-/make-iterator-1.0.1.tgz#29b33f312aa8f547c4a5e490f56afcec99133ad6" - integrity sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw== - dependencies: - kind-of "^6.0.2" - -map-cache@^0.2.0, map-cache@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" - integrity sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg== - -map-stream@0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/map-stream/-/map-stream-0.0.7.tgz#8a1f07896d82b10926bd3744a2420009f88974a8" - integrity sha512-C0X0KQmGm3N2ftbTGBhSyuydQ+vV1LC3f3zPvT3RXHXNZrvfPZcoXp/N5DOa8vedX/rTMm2CjTtivFg2STJMRQ== - -map-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" - integrity sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w== - dependencies: - object-visit "^1.0.0" - markdown-it@^12.3.2: version "12.3.2" resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-12.3.2.tgz#bf92ac92283fe983fe4de8ff8abfb5ad72cd0c90" @@ -3825,6 +2829,18 @@ markdown-it@^12.3.2: mdurl "^1.0.1" uc.micro "^1.0.5" +markdown-it@^14.0.0: + version "14.1.0" + resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-14.1.0.tgz#3c3c5992883c633db4714ccb4d7b5935d98b7d45" + integrity sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg== + dependencies: + argparse "^2.0.1" + entities "^4.4.0" + linkify-it "^5.0.0" + mdurl "^2.0.0" + punycode.js "^2.3.1" + uc.micro "^2.1.0" + marked@^4.0.12: version "4.3.0" resolved "https://registry.yarnpkg.com/marked/-/marked-4.3.0.tgz#796362821b019f734054582038b116481b456cf3" @@ -3835,16 +2851,6 @@ maska@^2.1.10: resolved "https://registry.yarnpkg.com/maska/-/maska-2.1.11.tgz#71ef39a0c7121beda374f9a309bded5c129dd3f1" integrity sha512-IGqWjBnKxMYcVa06pb4mPfag9sJjnR2T15CdGfQ2llR3gajiSd4AxXCvNqHMEq9W3UBhjjTazgWumsP3sWrUSg== -matchdep@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/matchdep/-/matchdep-2.0.0.tgz#c6f34834a0d8dbc3b37c27ee8bbcb27c7775582e" - integrity sha512-LFgVbaHIHMqCRuCZyfCtUOq9/Lnzhi7Z0KFUE2fhD54+JN2jLh3hC02RLkqauJ3U4soU6H1J3tfj/Byk7GoEjA== - dependencies: - findup-sync "^2.0.0" - micromatch "^3.0.4" - resolve "^1.4.0" - stack-trace "0.0.10" - md5@^2.1.0: version "2.3.0" resolved "https://registry.yarnpkg.com/md5/-/md5-2.3.0.tgz#c3da9a6aae3a30b46b7b0c349b87b110dc3bda4f" @@ -3859,30 +2865,16 @@ mdurl@^1.0.1: resolved "https://registry.yarnpkg.com/mdurl/-/mdurl-1.0.1.tgz#fe85b2ec75a59037f2adfec100fd6c601761152e" integrity sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g== +mdurl@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/mdurl/-/mdurl-2.0.0.tgz#80676ec0433025dd3e17ee983d0fe8de5a2237e0" + integrity sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w== + merge-stream@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== -micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4: - version "3.1.10" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" - integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - braces "^2.3.1" - define-property "^2.0.2" - extend-shallow "^3.0.2" - extglob "^2.0.4" - fragment-cache "^0.2.1" - kind-of "^6.0.2" - nanomatch "^1.2.9" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.2" - micromatch@^4.0.0: version "4.0.5" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" @@ -3954,19 +2946,11 @@ minimist@^1.2.0, minimist@^1.2.3, minimist@^1.2.6: resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== -"minipass@^5.0.0 || ^6.0.2 || ^7.0.0": +"minipass@^5.0.0 || ^6.0.2 || ^7.0.0", minipass@^7.0.4: version "7.0.4" resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.0.4.tgz#dbce03740f50a4786ba994c1fb908844d27b038c" integrity sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ== -mixin-deep@^1.2.0: - version "1.3.2" - resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" - integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== - dependencies: - for-in "^1.0.2" - is-extendable "^1.0.1" - mkdirp-classic@^0.5.2, mkdirp-classic@^0.5.3: version "0.5.3" resolved "https://registry.yarnpkg.com/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz#fa10c9115cc6d8865be221ba47ee9bed78601113" @@ -4062,21 +3046,11 @@ multimatch@^4.0.0: arrify "^2.0.1" minimatch "^3.0.4" -mute-stdout@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/mute-stdout/-/mute-stdout-1.0.1.tgz#acb0300eb4de23a7ddeec014e3e96044b3472331" - integrity sha512-kDcwXR4PS7caBpuRYYBUz9iVixUk3anO3f5OYFiIPwK/20vCzKCHyKoulbiDY1S53zD2bxUpxN/IJ+TnXjfvxg== - mute-stream@~0.0.4: version "0.0.8" resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== -nan@^2.12.1: - version "2.18.0" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.18.0.tgz#26a6faae7ffbeb293a39660e88a76b82e30b7554" - integrity sha512-W7tfG7vMOGtD30sHoZSSc/JVYiyDPEyQVso/Zz+/uQd0B0L46gtC+pHha5FFMRpil6fm/AoEcRWyOVi4+E/f8w== - nanoid@3.3.1: version "3.3.1" resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.1.tgz#6347a18cac88af88f58af0b3594b723d5e99bb35" @@ -4087,23 +3061,6 @@ nanoid@^3.3.7: resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.7.tgz#d0c301a691bc8d54efa0a2226ccf3fe2fd656bd8" integrity sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g== -nanomatch@^1.2.9: - version "1.2.13" - resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" - integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - define-property "^2.0.2" - extend-shallow "^3.0.2" - fragment-cache "^0.2.1" - is-windows "^1.0.2" - kind-of "^6.0.2" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - napi-build-utils@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/napi-build-utils/-/napi-build-utils-1.0.2.tgz#b1fddc0b2c46e380a0b7a76f984dd47c41a13806" @@ -4114,11 +3071,6 @@ neo-async@^2.6.2: resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== -next-tick@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.1.0.tgz#1836ee30ad56d67ef281b22bd199f709449b35eb" - integrity sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ== - nock@^10.0.6: version "10.0.6" resolved "https://registry.yarnpkg.com/nock/-/nock-10.0.6.tgz#e6d90ee7a68b8cfc2ab7f6127e7d99aa7d13d111" @@ -4146,28 +3098,26 @@ node-addon-api@^4.3.0: resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-4.3.0.tgz#52a1a0b475193e0928e98e0426a0d1254782b77f" integrity sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ== +node-html-markdown@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/node-html-markdown/-/node-html-markdown-1.3.0.tgz#ef0b19a3bbfc0f1a880abb9ff2a0c9aa6bbff2a9" + integrity sha512-OeFi3QwC/cPjvVKZ114tzzu+YoR+v9UXW5RwSXGUqGb0qCl0DvP406tzdL7SFn8pZrMyzXoisfG2zcuF9+zw4g== + dependencies: + node-html-parser "^6.1.1" + +node-html-parser@^6.1.1: + version "6.1.13" + resolved "https://registry.yarnpkg.com/node-html-parser/-/node-html-parser-6.1.13.tgz#a1df799b83df5c6743fcd92740ba14682083b7e4" + integrity sha512-qIsTMOY4C/dAa5Q5vsobRpOOvPfC4pB61UVW2uSwZNUp0QU/jCekTal1vMmbO0DgdHeLUJpv/ARmDqErVxA3Sg== + dependencies: + css-select "^5.1.0" + he "1.2.0" + node-releases@^2.0.14: version "2.0.14" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.14.tgz#2ffb053bceb8b2be8495ece1ab6ce600c4461b0b" integrity sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw== -normalize-package-data@^2.3.2: - version "2.5.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" - integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== - dependencies: - hosted-git-info "^2.1.4" - resolve "^1.10.0" - semver "2 || 3 || 4 || 5" - validate-npm-package-license "^3.0.1" - -normalize-path@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" - integrity sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w== - dependencies: - remove-trailing-separator "^1.0.1" - normalize-path@^3.0.0, normalize-path@~3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" @@ -4178,13 +3128,6 @@ normalize-url@^8.0.0: resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-8.0.0.tgz#593dbd284f743e8dcf6a5ddf8fadff149c82701a" integrity sha512-uVFpKhj5MheNBJRTiMZ9pE/7hD1QTeEvugSJW/OmLzAp78PB5O6adfMNTvmfKhXBkvCzC+rqifWcVYpGFwTjnw== -now-and-later@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/now-and-later/-/now-and-later-2.0.1.tgz#8e579c8685764a7cc02cb680380e94f43ccb1f7c" - integrity sha512-KGvQ0cB70AQfg107Xvs/Fbu+dGmZoTRJp2TaPwcwQm3/7PteUyN2BCgk8KBMPGBUXZdVwyWS8fDCGFygBm19UQ== - dependencies: - once "^1.3.2" - npm-run-path@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-3.1.0.tgz#7f91be317f6a466efed3c9f2980ad8a4ee8b0fa5" @@ -4206,25 +3149,11 @@ nth-check@^2.0.1: dependencies: boolbase "^1.0.0" -number-is-nan@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" - integrity sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ== - object-assign@^4.0.1: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== -object-copy@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" - integrity sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ== - dependencies: - copy-descriptor "^0.1.0" - define-property "^0.2.5" - kind-of "^3.0.3" - object-inspect@^1.9.0: version "1.13.1" resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.1.tgz#b96c6109324ccfef6b12216a956ca4dc2ff94bc2" @@ -4243,14 +3172,7 @@ object-keys@^1.1.1: resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== -object-visit@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" - integrity sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA== - dependencies: - isobject "^3.0.0" - -object.assign@^4.0.4, object.assign@^4.1.0, object.assign@^4.1.4: +object.assign@^4.1.4: version "4.1.5" resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.5.tgz#3a833f9ab7fdb80fc9e8d2300c803d216d8fdbb0" integrity sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ== @@ -4260,40 +3182,7 @@ object.assign@^4.0.4, object.assign@^4.1.0, object.assign@^4.1.4: has-symbols "^1.0.3" object-keys "^1.1.1" -object.defaults@^1.0.0, object.defaults@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/object.defaults/-/object.defaults-1.1.0.tgz#3a7f868334b407dea06da16d88d5cd29e435fecf" - integrity sha512-c/K0mw/F11k4dEUBMW8naXUuBuhxRCfG7W+yFy8EcijU/rSmazOUd1XAEEe6bC0OuXY4HUKjTJv7xbxIMqdxrA== - dependencies: - array-each "^1.0.1" - array-slice "^1.0.0" - for-own "^1.0.0" - isobject "^3.0.0" - -object.map@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/object.map/-/object.map-1.0.1.tgz#cf83e59dc8fcc0ad5f4250e1f78b3b81bd801d37" - integrity sha512-3+mAJu2PLfnSVGHwIWubpOFLscJANBKuB/6A4CxBstc4aqwQY0FWcsppuy4jU5GSB95yES5JHSI+33AWuS4k6w== - dependencies: - for-own "^1.0.0" - make-iterator "^1.0.0" - -object.pick@^1.2.0, object.pick@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" - integrity sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ== - dependencies: - isobject "^3.0.1" - -object.reduce@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/object.reduce/-/object.reduce-1.0.1.tgz#6fe348f2ac7fa0f95ca621226599096825bb03ad" - integrity sha512-naLhxxpUESbNkRqc35oQ2scZSJueHGQNUfMW/0U37IgN6tE2dgDWg3whf+NEliy3F/QysrO48XKUz/nGPe+AQw== - dependencies: - for-own "^1.0.0" - make-iterator "^1.0.0" - -once@^1.3.0, once@^1.3.1, once@^1.3.2, once@^1.4.0: +once@^1.3.0, once@^1.3.1, once@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== @@ -4314,25 +3203,11 @@ onetime@^6.0.0: dependencies: mimic-fn "^4.0.0" -ordered-read-streams@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/ordered-read-streams/-/ordered-read-streams-1.0.1.tgz#77c0cb37c41525d64166d990ffad7ec6a0e1363e" - integrity sha512-Z87aSjx3r5c0ZB7bcJqIgIRX5bxR7A4aSzvIbaxd0oTkWBCOoKfuGHiKj60CHVUgg1Phm5yMZzBdt8XqRs73Mw== - dependencies: - readable-stream "^2.0.1" - os-browserify@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" integrity sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A== -os-locale@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9" - integrity sha512-PRT7ZORmwu2MEFt4/fv3Q+mEfN4zetKxufQrkShY2oGvUms9r8otu5HfdyIFHkYXjO7laNsoVGmM2MANfuTA8g== - dependencies: - lcid "^1.0.0" - ovsx@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/ovsx/-/ovsx-0.3.0.tgz#2f30c80c90fbe3c8fc406730c35371219187ca0a" @@ -4355,7 +3230,7 @@ p-finally@^2.0.0: resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-2.0.1.tgz#bd6fcaa9c559a096b680806f4d657b3f0f240561" integrity sha512-vpm09aKwq6H9phqRQzecoDpD8TmVyGw70qmWlyq5onxY7tqyTTFVvxMykxQSQKILBSFlbXpypIw2T1Ml7+DDtw== -p-limit@^2.0.0, p-limit@^2.2.0: +p-limit@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== @@ -4369,13 +3244,6 @@ p-limit@^3.0.2: dependencies: yocto-queue "^0.1.0" -p-locate@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" - integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== - dependencies: - p-limit "^2.0.0" - p-locate@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" @@ -4405,32 +3273,6 @@ pako@~1.0.2: resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf" integrity sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw== -parse-filepath@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/parse-filepath/-/parse-filepath-1.0.2.tgz#a632127f53aaf3d15876f5872f3ffac763d6c891" - integrity sha512-FwdRXKCohSVeXqwtYonZTXtbGJKrn+HNyWDYVcp5yuJlesTwNH4rsmRZ+GrKAPJ5bLpRxESMeS+Rl0VCHRvB2Q== - dependencies: - is-absolute "^1.0.0" - map-cache "^0.2.0" - path-root "^0.1.1" - -parse-json@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" - integrity sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ== - dependencies: - error-ex "^1.2.0" - -parse-node-version@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/parse-node-version/-/parse-node-version-1.0.1.tgz#e2b5dbede00e7fa9bc363607f53327e8b073189b" - integrity sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA== - -parse-passwd@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" - integrity sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q== - parse-semver@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/parse-semver/-/parse-semver-1.1.1.tgz#9a4afd6df063dc4826f93fba4a99cf223f666cb8" @@ -4458,33 +3300,11 @@ parse5@^7.0.0: dependencies: entities "^4.4.0" -pascalcase@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" - integrity sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw== - path-browserify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-1.0.1.tgz#d98454a9c3753d5790860f16f68867b9e46be1fd" integrity sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g== -path-dirname@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" - integrity sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q== - -path-exists@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" - integrity sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ== - dependencies: - pinkie-promise "^2.0.0" - -path-exists@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" - integrity sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ== - path-exists@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" @@ -4515,18 +3335,6 @@ path-parse@^1.0.7: resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== -path-root-regex@^0.1.0: - version "0.1.2" - resolved "https://registry.yarnpkg.com/path-root-regex/-/path-root-regex-0.1.2.tgz#bfccdc8df5b12dc52c8b43ec38d18d72c04ba96d" - integrity sha512-4GlJ6rZDhQZFE0DPVKh0e9jmZ5egZfxTkp7bcRDuPlJXbAwhxcl2dINPUAsjLdejqaLsCeg8axcLjIbvBjN4pQ== - -path-root@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/path-root/-/path-root-0.1.1.tgz#9a4a6814cac1c0cd73360a95f32083c8ea4745b7" - integrity sha512-QLcPegTHF11axjfojBIoDygmS2E3Lf+8+jI6wOVmNVenrKSo3mFdSGiIgdSHenczw3wPtlVMQaFVwGmM7BJdtg== - dependencies: - path-root-regex "^0.1.0" - path-scurry@^1.10.1: version "1.10.1" resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.10.1.tgz#9ba6bf5aa8500fe9fd67df4f0d9483b2b0bfc698" @@ -4535,27 +3343,19 @@ path-scurry@^1.10.1: lru-cache "^9.1.1 || ^10.0.0" minipass "^5.0.0 || ^6.0.2 || ^7.0.0" -path-type@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" - integrity sha512-S4eENJz1pkiQn9Znv33Q+deTOKmbl+jj1Fl+qiP/vYezj+S8x+J3Uo0ISrx/QoEvIlOaDWJhPaRd1flJ9HXZqg== +path-scurry@^1.10.2: + version "1.10.2" + resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.10.2.tgz#8f6357eb1239d5fa1da8b9f70e9c080675458ba7" + integrity sha512-7xTavNy5RQXnsjANvVvMkEjvloOinkAjv/Z6Ildz9v2RinZ4SBKTWFOVRbaF8p0vpHnyjV/UwNDdKuUv6M5qcA== dependencies: - graceful-fs "^4.1.2" - pify "^2.0.0" - pinkie-promise "^2.0.0" + lru-cache "^10.2.0" + minipass "^5.0.0 || ^6.0.2 || ^7.0.0" pathval@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.1.tgz#8534e77a77ce7ac5a2512ea21e0fdb8fcf6c3d8d" integrity sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ== -pause-stream@^0.0.11: - version "0.0.11" - resolved "https://registry.yarnpkg.com/pause-stream/-/pause-stream-0.0.11.tgz#fe5a34b0cbce12b5aa6a2b403ee2e73b602f1445" - integrity sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A== - dependencies: - through "~2.3" - pend@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" @@ -4623,21 +3423,6 @@ plotly.js-dist@^1.54.1: resolved "https://registry.yarnpkg.com/plotly.js-dist/-/plotly.js-dist-1.58.5.tgz#526d84459231f9debe98429d7b20fa08e541ad42" integrity sha512-gy4cm5gYeem1eoXeryrSfftDm/CacQUE+W6xPRGiC5PnB/WHDPaex+HVeAGdKEek57ok1j2IkDw3lnXoB0Bfiw== -plugin-error@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/plugin-error/-/plugin-error-1.0.1.tgz#77016bd8919d0ac377fdcdd0322328953ca5781c" - integrity sha512-L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA== - dependencies: - ansi-colors "^1.0.1" - arr-diff "^4.0.0" - arr-union "^3.1.0" - extend-shallow "^3.0.2" - -posix-character-classes@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" - integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg== - postcss-modules-extract-imports@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz#818719a1ae1da325f9832446b01136eeb493cd7e" @@ -4724,11 +3509,6 @@ prettier@2.0.2: resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.0.2.tgz#1ba8f3eb92231e769b7fcd7cb73ae1b6b74ade08" integrity sha512-5xJQIPT8BraI7ZnaDwSbu5zLrB6vvi8hVV58yHQ+QK64qrY40dULy0HSRlQ2/2IdzeBpjhDkqdcFBnFeDEMVdg== -pretty-hrtime@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz#b7e3ea42435a4c9b2759d99e0f201eb195802ee1" - integrity sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A== - pretty-quick@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/pretty-quick/-/pretty-quick-2.0.2.tgz#4e44d6489ed513ef111bee501f63688d854584e6" @@ -4741,7 +3521,7 @@ pretty-quick@^2.0.1: mri "^1.1.4" multimatch "^4.0.0" -process-nextick-args@^2.0.0, process-nextick-args@~2.0.0: +process-nextick-args@~2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== @@ -4761,6 +3541,16 @@ proxy-from-env@^1.1.0: resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== +pseudo-localization@^2.4.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/pseudo-localization/-/pseudo-localization-2.4.0.tgz#5c19da35bc182ad7fc00d82d33dd42e88005e241" + integrity sha512-ISYMOKY8+f+PmiXMFw2y6KLY74LBrv/8ml/VjjoVEV2k+MS+OJZz7ydciK5ntJwxPrKQPTU1+oXq9Mx2b0zEzg== + dependencies: + flat "^5.0.2" + get-stdin "^7.0.0" + typescript "^4.7.4" + yargs "^17.2.1" + pump@^1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/pump/-/pump-1.0.3.tgz#5dfe8311c33bbf6fc18261f9f34702c47c08a954" @@ -4769,14 +3559,6 @@ pump@^1.0.0: end-of-stream "^1.1.0" once "^1.3.1" -pump@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" - integrity sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - pump@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" @@ -4785,14 +3567,10 @@ pump@^3.0.0: end-of-stream "^1.1.0" once "^1.3.1" -pumpify@^1.3.5: - version "1.5.1" - resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce" - integrity sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ== - dependencies: - duplexify "^3.6.0" - inherits "^2.0.3" - pump "^2.0.0" +punycode.js@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/punycode.js/-/punycode.js-2.3.1.tgz#6b53e56ad75588234e79f4affa90972c7dd8cdb7" + integrity sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA== punycode@^2.1.0: version "2.3.1" @@ -4828,23 +3606,6 @@ rc@^1.2.7: minimist "^1.2.0" strip-json-comments "~2.0.1" -read-pkg-up@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" - integrity sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A== - dependencies: - find-up "^1.0.0" - read-pkg "^1.0.0" - -read-pkg@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" - integrity sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ== - dependencies: - load-json-file "^1.0.0" - normalize-package-data "^2.3.2" - path-type "^1.0.0" - read@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/read/-/read-1.0.7.tgz#b3da19bd052431a97671d44a42634adf710b40c4" @@ -4852,16 +3613,7 @@ read@^1.0.7: dependencies: mute-stream "~0.0.4" -"readable-stream@2 || 3", readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.5.0: - version "3.6.2" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" - integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== - dependencies: - inherits "^2.0.3" - string_decoder "^1.1.1" - util-deprecate "^1.0.1" - -readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.5, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.0, readable-stream@^2.3.3, readable-stream@^2.3.5, readable-stream@^2.3.6, readable-stream@~2.3.6: +readable-stream@^2.0.2, readable-stream@^2.3.0, readable-stream@^2.3.5, readable-stream@~2.3.6: version "2.3.8" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b" integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA== @@ -4874,14 +3626,14 @@ readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable string_decoder "~1.1.1" util-deprecate "~1.0.1" -readdirp@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525" - integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ== +readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.5.0: + version "3.6.2" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" + integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== dependencies: - graceful-fs "^4.1.11" - micromatch "^3.1.10" - readable-stream "^2.0.2" + inherits "^2.0.3" + string_decoder "^1.1.1" + util-deprecate "^1.0.1" readdirp@~3.6.0: version "3.6.0" @@ -4890,13 +3642,6 @@ readdirp@~3.6.0: dependencies: picomatch "^2.2.1" -rechoir@^0.6.2: - version "0.6.2" - resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" - integrity sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw== - dependencies: - resolve "^1.1.6" - rechoir@^0.7.0: version "0.7.1" resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.7.1.tgz#9478a96a1ca135b5e88fc027f03ee92d6c645686" @@ -4909,14 +3654,6 @@ reflect-metadata@^0.1.13: resolved "https://registry.yarnpkg.com/reflect-metadata/-/reflect-metadata-0.1.14.tgz#24cf721fe60677146bb77eeb0e1f9dece3d65859" integrity sha512-ZhYeb6nRaXCfhnndflDK8qI6ZQ/YcWZCISRAWICW9XYqMUwjZM9Z0DveWX/ABN01oxSHwVxKQmxeYZSsm0jh5A== -regex-not@^1.0.0, regex-not@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" - integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== - dependencies: - extend-shallow "^3.0.2" - safe-regex "^1.1.0" - regexp.prototype.flags@^1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz#90ce989138db209f81492edd734183ce99f9677e" @@ -4926,67 +3663,11 @@ regexp.prototype.flags@^1.5.1: define-properties "^1.2.0" set-function-name "^2.0.0" -remove-bom-buffer@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/remove-bom-buffer/-/remove-bom-buffer-3.0.0.tgz#c2bf1e377520d324f623892e33c10cac2c252b53" - integrity sha512-8v2rWhaakv18qcvNeli2mZ/TMTL2nEyAKRvzo1WtnZBl15SHyEhrCu2/xKlJyUFKHiHgfXIyuY6g2dObJJycXQ== - dependencies: - is-buffer "^1.1.5" - is-utf8 "^0.2.1" - -remove-bom-stream@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/remove-bom-stream/-/remove-bom-stream-1.2.0.tgz#05f1a593f16e42e1fb90ebf59de8e569525f9523" - integrity sha512-wigO8/O08XHb8YPzpDDT+QmRANfW6vLqxfaXm1YXhnFf3AkSLyjfG3GEFg4McZkmgL7KvCj5u2KczkvSP6NfHA== - dependencies: - remove-bom-buffer "^3.0.0" - safe-buffer "^5.1.0" - through2 "^2.0.3" - -remove-trailing-separator@^1.0.1, remove-trailing-separator@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" - integrity sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw== - -repeat-element@^1.1.2: - version "1.1.4" - resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.4.tgz#be681520847ab58c7568ac75fbfad28ed42d39e9" - integrity sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ== - -repeat-string@^1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" - integrity sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w== - -replace-ext@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-1.0.1.tgz#2d6d996d04a15855d967443631dd5f77825b016a" - integrity sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw== - -replace-homedir@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/replace-homedir/-/replace-homedir-1.0.0.tgz#e87f6d513b928dde808260c12be7fec6ff6e798c" - integrity sha512-CHPV/GAglbIB1tnQgaiysb8H2yCy8WQ7lcEwQ/eT+kLj0QHV8LnJW0zpqpE7RSkrMSRoa+EBoag86clf7WAgSg== - dependencies: - homedir-polyfill "^1.0.1" - is-absolute "^1.0.0" - remove-trailing-separator "^1.1.0" - require-directory@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== -require-main-filename@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" - integrity sha512-IqSUtOVP4ksd1C/ej5zeEh/BIP2ajqpn8c5x+q99gvcIG/Qf0cud5raVnE/Dwd0ua9TXYDoDc0RE5hBSdz22Ug== - -require-main-filename@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" - integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== - resolve-alpn@^1.2.0: version "1.2.1" resolved "https://registry.yarnpkg.com/resolve-alpn/-/resolve-alpn-1.2.1.tgz#b7adbdac3546aaaec20b45e7d8265927072726f9" @@ -4999,32 +3680,12 @@ resolve-cwd@^3.0.0: dependencies: resolve-from "^5.0.0" -resolve-dir@^1.0.0, resolve-dir@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43" - integrity sha512-R7uiTjECzvOsWSfdM0QKFNBVFcK27aHOUwdvK53BcW8zqnGdYp0Fbj82cy54+2A4P2tFM22J5kRfe1R+lM/1yg== - dependencies: - expand-tilde "^2.0.0" - global-modules "^1.0.0" - resolve-from@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== -resolve-options@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/resolve-options/-/resolve-options-1.1.0.tgz#32bb9e39c06d67338dc9378c0d6d6074566ad131" - integrity sha512-NYDgziiroVeDC29xq7bp/CacZERYsA9bXYd1ZmcJlF3BcrZv5pTb4NG7SjdyKDnXZ84aC4vo2u6sNKIA1LCu/A== - dependencies: - value-or-function "^3.0.0" - -resolve-url@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" - integrity sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg== - -resolve@^1.1.6, resolve@^1.1.7, resolve@^1.10.0, resolve@^1.4.0, resolve@^1.9.0: +resolve@^1.9.0: version "1.22.8" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== @@ -5040,11 +3701,6 @@ responselike@^3.0.0: dependencies: lowercase-keys "^3.0.0" -ret@~0.1.10: - version "0.1.15" - resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" - integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== - rimraf@2, rimraf@^2.6.3: version "2.7.1" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" @@ -5076,18 +3732,6 @@ safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -safe-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" - integrity sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg== - dependencies: - ret "~0.1.10" - -"safer-buffer@>= 2.1.2 < 3": - version "2.1.2" - resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" - integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== - sanitize-filename@^1.6.3: version "1.6.3" resolved "https://registry.yarnpkg.com/sanitize-filename/-/sanitize-filename-1.6.3.tgz#755ebd752045931977e30b2025d340d7c9090378" @@ -5159,14 +3803,7 @@ selenium-webdriver@^4.16.0: tmp "^0.2.1" ws ">=8.14.2" -semver-greatest-satisfied-range@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/semver-greatest-satisfied-range/-/semver-greatest-satisfied-range-1.1.0.tgz#13e8c2658ab9691cb0cd71093240280d36f77a5b" - integrity sha512-Ny/iyOzSSa8M5ML46IAx3iXc6tfOsYU2R4AXi2UpHk60Zrgyq6eqPj/xiOfS0rRl/iiQ/rdJkVjw/5cdUyCntQ== - dependencies: - sver-compat "^1.5.0" - -"semver@2 || 3 || 4 || 5", semver@^5.1.0, semver@^5.5.0: +semver@^5.1.0, semver@^5.5.0: version "5.7.2" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== @@ -5197,11 +3834,6 @@ serialize-javascript@^6.0.1: dependencies: randombytes "^2.1.0" -set-blocking@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" - integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== - set-function-length@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.0.tgz#2f81dc6c16c7059bda5ab7c82c11f03a515ed8e1" @@ -5222,16 +3854,6 @@ set-function-name@^2.0.0: functions-have-names "^1.2.3" has-property-descriptors "^1.0.0" -set-value@^2.0.0, set-value@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" - integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== - dependencies: - extend-shallow "^2.0.1" - is-extendable "^0.1.1" - is-plain-object "^2.0.3" - split-string "^3.0.1" - setimmediate@^1.0.5, setimmediate@~1.0.4: version "1.0.5" resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" @@ -5289,52 +3911,11 @@ simple-get@^4.0.0: once "^1.3.1" simple-concat "^1.0.0" -snapdragon-node@^2.0.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" - integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== - dependencies: - define-property "^1.0.0" - isobject "^3.0.0" - snapdragon-util "^3.0.1" - -snapdragon-util@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" - integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== - dependencies: - kind-of "^3.2.0" - -snapdragon@^0.8.1: - version "0.8.2" - resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" - integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== - dependencies: - base "^0.11.1" - debug "^2.2.0" - define-property "^0.2.5" - extend-shallow "^2.0.1" - map-cache "^0.2.2" - source-map "^0.5.6" - source-map-resolve "^0.5.0" - use "^3.1.0" - "source-map-js@>=0.6.2 <2.0.0", source-map-js@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== -source-map-resolve@^0.5.0: - version "0.5.3" - resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" - integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw== - dependencies: - atob "^2.1.2" - decode-uri-component "^0.2.0" - resolve-url "^0.2.1" - source-map-url "^0.4.0" - urix "^0.1.0" - source-map-support@~0.5.20: version "0.5.21" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" @@ -5343,84 +3924,21 @@ source-map-support@~0.5.20: buffer-from "^1.0.0" source-map "^0.6.0" -source-map-url@^0.4.0: - version "0.4.1" - resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56" - integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw== - -source-map@^0.5.6: - version "0.5.7" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" - integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== - source-map@^0.6.0, source-map@^0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== -source-map@^0.7.3, source-map@^0.7.4: +source-map@^0.7.4: version "0.7.4" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.4.tgz#a9bbe705c9d8846f4e08ff6765acf0f1b0898656" integrity sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA== -sparkles@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/sparkles/-/sparkles-1.0.1.tgz#008db65edce6c50eec0c5e228e1945061dd0437c" - integrity sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw== - -spdx-correct@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.2.0.tgz#4f5ab0668f0059e34f9c00dce331784a12de4e9c" - integrity sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA== - dependencies: - spdx-expression-parse "^3.0.0" - spdx-license-ids "^3.0.0" - -spdx-exceptions@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" - integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== - -spdx-expression-parse@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" - integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== - dependencies: - spdx-exceptions "^2.1.0" - spdx-license-ids "^3.0.0" - -spdx-license-ids@^3.0.0: - version "3.0.16" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.16.tgz#a14f64e0954f6e25cc6587bd4f392522db0d998f" - integrity sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw== - -split-string@^3.0.1, split-string@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" - integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== - dependencies: - extend-shallow "^3.0.0" - -split@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/split/-/split-1.0.1.tgz#605bd9be303aa59fb35f9229fbea0ddec9ea07d9" - integrity sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg== - dependencies: - through "2" - -stack-trace@0.0.10, stack-trace@0.0.x: +stack-trace@0.0.x: version "0.0.10" resolved "https://registry.yarnpkg.com/stack-trace/-/stack-trace-0.0.10.tgz#547c70b347e8d32b4e108ea1a2a159e5fdde19c0" integrity sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg== -static-extend@^0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" - integrity sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g== - dependencies: - define-property "^0.2.5" - object-copy "^0.1.0" - stream-browserify@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-3.0.0.tgz#22b0a2850cdf6503e73085da1fc7b7d0c2122f2f" @@ -5429,25 +3947,7 @@ stream-browserify@^3.0.0: inherits "~2.0.4" readable-stream "^3.5.0" -stream-combiner@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/stream-combiner/-/stream-combiner-0.2.2.tgz#aec8cbac177b56b6f4fa479ced8c1912cee52858" - integrity sha512-6yHMqgLYDzQDcAkL+tjJDC5nSNuNIx0vZtRZeiPh7Saef7VHX9H5Ijn9l2VIol2zaNYlYEX6KyuT/237A58qEQ== - dependencies: - duplexer "~0.1.1" - through "~2.3.4" - -stream-exhaust@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/stream-exhaust/-/stream-exhaust-1.0.2.tgz#acdac8da59ef2bc1e17a2c0ccf6c320d120e555d" - integrity sha512-b/qaq/GlBK5xaq1yrK9/zFcyRSTNxmcZwFLGSTG0mXgZl/4Z6GgiyYOXOvY7N3eEvFRAG1bkDRz5EPGSvPYQlw== - -stream-shift@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.3.tgz#85b8fab4d71010fc3ba8772e8046cc49b8a3864b" - integrity sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ== - -"string-width-cjs@npm:string-width@^4.2.0", string-width@^4.1.0, string-width@^4.2.0: +"string-width-cjs@npm:string-width@^4.2.0": version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -5456,23 +3956,14 @@ stream-shift@^1.0.0: is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.1" -string-width@^1.0.1, string-width@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" - integrity sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw== - dependencies: - code-point-at "^1.0.0" - is-fullwidth-code-point "^1.0.0" - strip-ansi "^3.0.0" - -string-width@^3.0.0, string-width@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" - integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== +string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== dependencies: - emoji-regex "^7.0.1" - is-fullwidth-code-point "^2.0.0" - strip-ansi "^5.1.0" + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" string-width@^5.0.1, string-width@^5.1.2: version "5.1.2" @@ -5497,20 +3988,13 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" -"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1: +"strip-ansi-cjs@npm:strip-ansi@^6.0.1": version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== dependencies: ansi-regex "^5.0.1" -strip-ansi@^3.0.0, strip-ansi@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" - integrity sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg== - dependencies: - ansi-regex "^2.0.0" - strip-ansi@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" @@ -5518,12 +4002,12 @@ strip-ansi@^4.0.0: dependencies: ansi-regex "^3.0.0" -strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" - integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== +strip-ansi@^6.0.0, strip-ansi@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== dependencies: - ansi-regex "^4.1.0" + ansi-regex "^5.0.1" strip-ansi@^7.0.1: version "7.1.0" @@ -5532,13 +4016,6 @@ strip-ansi@^7.0.1: dependencies: ansi-regex "^6.0.1" -strip-bom@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" - integrity sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g== - dependencies: - is-utf8 "^0.2.0" - strip-final-newline@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" @@ -5590,14 +4067,6 @@ supports-preserve-symlinks-flag@^1.0.0: resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== -sver-compat@^1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/sver-compat/-/sver-compat-1.5.0.tgz#3cf87dfeb4d07b4a3f14827bc186b3fd0c645cd8" - integrity sha512-aFTHfmjwizMNlNE6dsGmoAM4lHjL0CyiobWaFiXWSlD7cIxshW422Nb8KbXCmR6z+0ZEPY+daXJrDyh/vuwTyg== - dependencies: - es6-iterator "^2.0.1" - es6-symbol "^3.1.1" - system-architecture@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/system-architecture/-/system-architecture-0.1.0.tgz#71012b3ac141427d97c67c56bc7921af6bff122d" @@ -5680,40 +4149,6 @@ terser@^5.26.0: commander "^2.20.0" source-map-support "~0.5.20" -through2-filter@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/through2-filter/-/through2-filter-3.0.0.tgz#700e786df2367c2c88cd8aa5be4cf9c1e7831254" - integrity sha512-jaRjI2WxN3W1V8/FMZ9HKIBXixtiqs3SQSX4/YGIiP3gL6djW48VoZq9tDqeCWs3MT8YY5wb/zli8VW8snY1CA== - dependencies: - through2 "~2.0.0" - xtend "~4.0.0" - -through2@^2.0.0, through2@^2.0.3, through2@~2.0.0: - version "2.0.5" - resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" - integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== - dependencies: - readable-stream "~2.3.6" - xtend "~4.0.1" - -through2@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/through2/-/through2-3.0.2.tgz#99f88931cfc761ec7678b41d5d7336b5b6a07bf4" - integrity sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ== - dependencies: - inherits "^2.0.4" - readable-stream "2 || 3" - -through@2, through@^2.3.8, through@~2.3, through@~2.3.4: - version "2.3.8" - resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" - integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg== - -time-stamp@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/time-stamp/-/time-stamp-1.1.0.tgz#764a5a11af50561921b133f3b44e618687e0f5c3" - integrity sha512-gLCeArryy2yNTRzTGKbZbloctj64jkZ57hj5zdraXue6aFgd6PmvVtEyiUU+hvU0v7q08oVv8r8ev0tRo6bvgw== - tmp@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.2.1.tgz#8457fc3037dcf4719c251367a1af6500ee1ccf14" @@ -5721,14 +4156,6 @@ tmp@^0.2.1: dependencies: rimraf "^3.0.0" -to-absolute-glob@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz#1865f43d9e74b0822db9f145b78cff7d0f7c849b" - integrity sha512-rtwLUQEwT8ZeKQbyFJyomBRYXyE16U5VKuy0ftxLMK/PZb2fkOsg5r9kHdauuVDbsNdIBoC/HCthpidamQFXYA== - dependencies: - is-absolute "^1.0.0" - is-negated-glob "^1.0.0" - to-buffer@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/to-buffer/-/to-buffer-1.1.1.tgz#493bd48f62d7c43fcded313a03dcadb2e1213a80" @@ -5739,21 +4166,6 @@ to-fast-properties@^2.0.0: resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== -to-object-path@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" - integrity sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg== - dependencies: - kind-of "^3.0.2" - -to-regex-range@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" - integrity sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg== - dependencies: - is-number "^3.0.0" - repeat-string "^1.6.1" - to-regex-range@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" @@ -5761,23 +4173,6 @@ to-regex-range@^5.0.1: dependencies: is-number "^7.0.0" -to-regex@^3.0.1, to-regex@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" - integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== - dependencies: - define-property "^2.0.2" - extend-shallow "^3.0.2" - regex-not "^1.0.2" - safe-regex "^1.1.0" - -to-through@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/to-through/-/to-through-2.0.0.tgz#fc92adaba072647bc0b67d6b03664aa195093af6" - integrity sha512-+QIz37Ly7acM4EMdw2PRN389OneM5+d844tirkGp4dPKzI5OE72V9OsbFp+CIYJDahZ41ZV05hNtcPAQUAm9/Q== - dependencies: - through2 "^2.0.3" - "traverse@>=0.3.0 <0.4": version "0.3.9" resolved "https://registry.yarnpkg.com/traverse/-/traverse-0.3.9.tgz#717b8f220cc0bb7b44e40514c22b2e8bbc70d8b9" @@ -5811,6 +4206,11 @@ ts-loader@^9.4.4: semver "^7.3.4" source-map "^0.7.4" +tslib@^2.2.0, tslib@^2.6.2: + version "2.6.2" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" + integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== + tunnel-agent@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" @@ -5828,16 +4228,6 @@ type-detect@^4.0.0, type-detect@^4.0.8: resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== -type@^1.0.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/type/-/type-1.2.0.tgz#848dd7698dafa3e54a6c479e759c4bc3f18847a0" - integrity sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg== - -type@^2.7.2: - version "2.7.2" - resolved "https://registry.yarnpkg.com/type/-/type-2.7.2.tgz#2376a15a3a28b1efa0f5350dcf72d24df6ef98d0" - integrity sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw== - typed-rest-client@^1.8.4: version "1.8.11" resolved "https://registry.yarnpkg.com/typed-rest-client/-/typed-rest-client-1.8.11.tgz#6906f02e3c91e8d851579f255abf0fd60800a04d" @@ -5847,15 +4237,10 @@ typed-rest-client@^1.8.4: tunnel "0.0.6" underscore "^1.12.1" -typedarray@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" - integrity sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA== - -typescript@^3.9.5: - version "3.9.10" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.9.10.tgz#70f3910ac7a51ed6bef79da7800690b19bf778b8" - integrity sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q== +typescript@^4.7.4: + version "4.9.5" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a" + integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g== typescript@^5.2.2: version "5.3.3" @@ -5867,60 +4252,21 @@ uc.micro@^1.0.1, uc.micro@^1.0.5: resolved "https://registry.yarnpkg.com/uc.micro/-/uc.micro-1.0.6.tgz#9c411a802a409a91fc6cf74081baba34b24499ac" integrity sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA== -unc-path-regex@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa" - integrity sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg== +uc.micro@^2.0.0, uc.micro@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/uc.micro/-/uc.micro-2.1.0.tgz#f8d3f7d0ec4c3dea35a7e3c8efa4cb8b45c9e7ee" + integrity sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A== underscore@^1.12.1: version "1.13.6" resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.13.6.tgz#04786a1f589dc6c09f761fc5f45b89e935136441" integrity sha512-+A5Sja4HP1M08MaXya7p5LvjuM7K6q/2EaC0+iovj/wOcMsTzMvDFbasi/oSapiwOlt252IqsKqPjCl7huKS0A== -undertaker-registry@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/undertaker-registry/-/undertaker-registry-1.0.1.tgz#5e4bda308e4a8a2ae584f9b9a4359a499825cc50" - integrity sha512-UR1khWeAjugW3548EfQmL9Z7pGMlBgXteQpr1IZeZBtnkCJQJIJ1Scj0mb9wQaPvUZ9Q17XqW6TIaPchJkyfqw== - -undertaker@^1.2.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/undertaker/-/undertaker-1.3.0.tgz#363a6e541f27954d5791d6fa3c1d321666f86d18" - integrity sha512-/RXwi5m/Mu3H6IHQGww3GNt1PNXlbeCuclF2QYR14L/2CHPz3DFZkvB5hZ0N/QUkiXWCACML2jXViIQEQc2MLg== - dependencies: - arr-flatten "^1.0.1" - arr-map "^2.0.0" - bach "^1.0.0" - collection-map "^1.0.0" - es6-weak-map "^2.0.1" - fast-levenshtein "^1.0.0" - last-run "^1.1.0" - object.defaults "^1.0.0" - object.reduce "^1.0.0" - undertaker-registry "^1.0.0" - undici-types@~5.26.4: version "5.26.5" resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== -union-value@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" - integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== - dependencies: - arr-union "^3.1.0" - get-value "^2.0.6" - is-extendable "^0.1.1" - set-value "^2.0.1" - -unique-stream@^2.0.2: - version "2.3.1" - resolved "https://registry.yarnpkg.com/unique-stream/-/unique-stream-2.3.1.tgz#c65d110e9a4adf9a6c5948b28053d9a8d04cbeac" - integrity sha512-2nY4TnBE70yoxHkDli7DMazpWiP7xMdCYqU2nBRO0UB+ZpEkGsSija7MvmvnZFUeC+mrgiUfcHSr3LmRFIg4+A== - dependencies: - json-stable-stringify-without-jsonify "^1.0.1" - through2-filter "^3.0.0" - universalify@^0.1.0: version "0.1.2" resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" @@ -5931,14 +4277,6 @@ universalify@^2.0.0: resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.1.tgz#168efc2180964e6386d061e094df61afe239b18d" integrity sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw== -unset-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" - integrity sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ== - dependencies: - has-value "^0.3.1" - isobject "^3.0.0" - unzipper@^0.10.14: version "0.10.14" resolved "https://registry.yarnpkg.com/unzipper/-/unzipper-0.10.14.tgz#d2b33c977714da0fbc0f82774ad35470a7c962b1" @@ -5955,11 +4293,6 @@ unzipper@^0.10.14: readable-stream "~2.3.6" setimmediate "~1.0.4" -upath@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" - integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== - update-browserslist-db@^1.0.13: version "1.0.13" resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz#3c5e4f5c083661bd38ef64b6328c26ed6c8248c4" @@ -5975,21 +4308,11 @@ uri-js@^4.2.2: dependencies: punycode "^2.1.0" -urix@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" - integrity sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg== - url-join@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/url-join/-/url-join-4.0.1.tgz#b642e21a2646808ffa178c4c5fda39844e12cde7" integrity sha512-jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA== -use@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" - integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== - utf8-byte-length@^1.0.1: version "1.0.4" resolved "https://registry.yarnpkg.com/utf8-byte-length/-/utf8-byte-length-1.0.4.tgz#f45f150c4c66eee968186505ab93fcbb8ad6bf61" @@ -6011,74 +4334,6 @@ util@^0.12.5: is-typed-array "^1.1.3" which-typed-array "^1.1.2" -v8flags@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-3.2.0.tgz#b243e3b4dfd731fa774e7492128109a0fe66d656" - integrity sha512-mH8etigqMfiGWdeXpaaqGfs6BndypxusHHcv2qSHyZkGEznCd/qAXCWWRzeowtL54147cktFOC4P5y+kl8d8Jg== - dependencies: - homedir-polyfill "^1.0.1" - -validate-npm-package-license@^3.0.1: - version "3.0.4" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" - integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== - dependencies: - spdx-correct "^3.0.0" - spdx-expression-parse "^3.0.0" - -value-or-function@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/value-or-function/-/value-or-function-3.0.0.tgz#1c243a50b595c1be54a754bfece8563b9ff8d813" - integrity sha512-jdBB2FrWvQC/pnPtIqcLsMaQgjhdb6B7tk1MMyTKapox+tQZbdRP4uLxu/JY0t7fbfDCUMnuelzEYv5GsxHhdg== - -vinyl-fs@^3.0.0, vinyl-fs@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/vinyl-fs/-/vinyl-fs-3.0.3.tgz#c85849405f67428feabbbd5c5dbdd64f47d31bc7" - integrity sha512-vIu34EkyNyJxmP0jscNzWBSygh7VWhqun6RmqVfXePrOwi9lhvRs//dOaGOTRUQr4tx7/zd26Tk5WeSVZitgng== - dependencies: - fs-mkdirp-stream "^1.0.0" - glob-stream "^6.1.0" - graceful-fs "^4.0.0" - is-valid-glob "^1.0.0" - lazystream "^1.0.0" - lead "^1.0.0" - object.assign "^4.0.4" - pumpify "^1.3.5" - readable-stream "^2.3.3" - remove-bom-buffer "^3.0.0" - remove-bom-stream "^1.2.0" - resolve-options "^1.1.0" - through2 "^2.0.0" - to-through "^2.0.0" - value-or-function "^3.0.0" - vinyl "^2.0.0" - vinyl-sourcemap "^1.1.0" - -vinyl-sourcemap@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/vinyl-sourcemap/-/vinyl-sourcemap-1.1.0.tgz#92a800593a38703a8cdb11d8b300ad4be63b3e16" - integrity sha512-NiibMgt6VJGJmyw7vtzhctDcfKch4e4n9TBeoWlirb7FMg9/1Ov9k+A5ZRAtywBpRPiyECvQRQllYM8dECegVA== - dependencies: - append-buffer "^1.0.2" - convert-source-map "^1.5.0" - graceful-fs "^4.1.6" - normalize-path "^2.1.1" - now-and-later "^2.0.0" - remove-bom-buffer "^3.0.0" - vinyl "^2.0.0" - -vinyl@^2.0.0, vinyl@^2.1.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-2.2.1.tgz#23cfb8bbab5ece3803aa2c0a1eb28af7cbba1974" - integrity sha512-LII3bXRFBZLlezoG5FfZVcXflZgWP/4dCwKtxd5ky9+LOtM4CS3bIRQsmR1KMnMW07jpE8fqR2lcxPZ+8sJIcw== - dependencies: - clone "^2.1.1" - clone-buffer "^1.0.0" - clone-stats "^1.0.0" - cloneable-readable "^1.0.0" - remove-trailing-separator "^1.0.1" - replace-ext "^1.0.0" - vite@^4.5.3: version "4.5.3" resolved "https://registry.yarnpkg.com/vite/-/vite-4.5.3.tgz#d88a4529ea58bae97294c7e2e6f0eab39a50fb1a" @@ -6176,29 +4431,6 @@ vscode-languageserver@^5.2.1: vscode-languageserver-protocol "3.14.1" vscode-uri "^1.0.6" -vscode-nls-dev@^3.3.1: - version "3.3.2" - resolved "https://registry.yarnpkg.com/vscode-nls-dev/-/vscode-nls-dev-3.3.2.tgz#f15e0b627f948224a96dc0288da3c3b9c6dfae81" - integrity sha512-/YJY/LegZ0jsWFd8BforDmXpwWKprM7L3rL0kLEvjQxOJw6qtmnoUJorLIv0ZXjebeyhI3mc8hjmQr479ykLIQ== - dependencies: - ansi-colors "^3.2.3" - clone "^2.1.1" - event-stream "^3.3.4" - fancy-log "^1.3.3" - glob "^7.1.2" - iconv-lite "^0.4.19" - is "^3.2.1" - source-map "^0.6.1" - typescript "^3.9.5" - vinyl "^2.1.0" - xml2js "^0.4.19" - yargs "^13.2.4" - -vscode-nls@^4.0.0: - version "4.1.2" - resolved "https://registry.yarnpkg.com/vscode-nls/-/vscode-nls-4.1.2.tgz#ca8bf8bb82a0987b32801f9fddfdd2fb9fd3c167" - integrity sha512-7bOHxPsfyuCqmP+hZXscLhiHwe7CSuFE4hyhbs22xPIhQ4jv99FcR4eBzfYYVLP356HNFpdvz63FFb/xw6T4Iw== - vscode-uri@^1.0.6: version "1.0.8" resolved "https://registry.yarnpkg.com/vscode-uri/-/vscode-uri-1.0.8.tgz#9769aaececae4026fb6e22359cb38946580ded59" @@ -6257,6 +4489,11 @@ watchpack@^2.4.0: glob-to-regexp "^0.4.1" graceful-fs "^4.1.2" +web-tree-sitter@^0.20.8: + version "0.20.8" + resolved "https://registry.yarnpkg.com/web-tree-sitter/-/web-tree-sitter-0.20.8.tgz#1e371cb577584789cadd75cb49c7ddfbc99d04c8" + integrity sha512-weOVgZ3aAARgdnb220GqYuh7+rZU0Ka9k9yfKtGAzEYMa6GgiCzW9JjQRJyCJakvibQW+dfjJdihjInKuuCAUQ== + webpack-cli@^4.9.2: version "4.10.0" resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-4.10.0.tgz#37c1d69c8d85214c5a65e589378f53aec64dab31" @@ -6319,16 +4556,6 @@ webpack@5: watchpack "^2.4.0" webpack-sources "^3.2.3" -which-module@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" - integrity sha512-F6+WgncZi/mJDrammbTuHe1q0R5hOXv/mBaiNA2TCNT/LTHusX0V+CJnj9XT8ki5ln2UZyyddDgHfCzyrOH7MQ== - -which-module@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.1.tgz#776b1fe35d90aebe99e8ac15eb24093389a4a409" - integrity sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ== - which-typed-array@^1.1.11, which-typed-array@^1.1.2: version "1.1.13" resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.13.tgz#870cd5be06ddb616f504e7b039c4c24898184d36" @@ -6347,13 +4574,6 @@ which@2.0.2, which@^2.0.1: dependencies: isexe "^2.0.0" -which@^1.2.14: - version "1.3.1" - resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" - integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== - dependencies: - isexe "^2.0.0" - wildcard@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/wildcard/-/wildcard-2.0.1.tgz#5ab10d02487198954836b6349f74fff961e10f67" @@ -6376,7 +4596,7 @@ workerpool@6.2.0: resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.2.0.tgz#827d93c9ba23ee2019c3ffaff5c27fccea289e8b" integrity sha512-Rsk5qQHJ9eowMH28Jwhe8HEbmdYDX4lwoMWshiCXugjtHqMD9ZbiqSDLxcsfdqsETPzVUtX5s1Z5kStiIM6l4A== -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== @@ -6385,22 +4605,14 @@ workerpool@6.2.0: string-width "^4.1.0" strip-ansi "^6.0.0" -wrap-ansi@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" - integrity sha512-vAaEaDM946gbNpH5pLVNR+vX2ht6n0Bt3GXwVB1AuAqZosOvHNF3P7wDnh8KLkSqgUh0uh77le7Owgoz+Z9XBw== - dependencies: - string-width "^1.0.1" - strip-ansi "^3.0.1" - -wrap-ansi@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09" - integrity sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q== +wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== dependencies: - ansi-styles "^3.2.0" - string-width "^3.0.0" - strip-ansi "^5.0.0" + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" wrap-ansi@^8.1.0: version "8.1.0" @@ -6426,7 +4638,7 @@ ws@^7.4.6: resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591" integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q== -xml2js@^0.4.19, xml2js@^0.4.23: +xml2js@^0.4.23: version "0.4.23" resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.23.tgz#a0c69516752421eb2ac758ee4d4ccf58843eac66" integrity sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug== @@ -6452,21 +4664,11 @@ xmlbuilder@~11.0.0: resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-11.0.1.tgz#be9bae1c8a046e76b31127726347d0ad7002beb3" integrity sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA== -xtend@^4.0.0, xtend@~4.0.0, xtend@~4.0.1: +xtend@^4.0.0: version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== -y18n@^3.2.1: - version "3.2.2" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.2.tgz#85c901bd6470ce71fc4bb723ad209b70f7f28696" - integrity sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ== - -y18n@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.3.tgz#b5f259c82cd6e336921efd7bfd8bf560de9eeedf" - integrity sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ== - y18n@^5.0.5: version "5.0.8" resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" @@ -6482,26 +4684,15 @@ yargs-parser@20.2.4: resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54" integrity sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA== -yargs-parser@^13.1.2: - version "13.1.2" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.2.tgz#130f09702ebaeef2650d54ce6e3e5706f7a4fb38" - integrity sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg== - dependencies: - camelcase "^5.0.0" - decamelize "^1.2.0" - yargs-parser@^20.2.2: version "20.2.9" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== -yargs-parser@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.1.tgz#7ede329c1d8cdbbe209bd25cdb990e9b1ebbb394" - integrity sha512-wpav5XYiddjXxirPoCTUPbqM0PXvJ9hiBMvuJgInvo4/lAOTZzUprArw17q2O1P2+GHhbBr18/iQwjL5Z9BqfA== - dependencies: - camelcase "^3.0.0" - object.assign "^4.1.0" +yargs-parser@^21.1.1: + version "21.1.1" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" + integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== yargs-unparser@2.0.0: version "2.0.0" @@ -6526,40 +4717,18 @@ yargs@16.2.0: y18n "^5.0.5" yargs-parser "^20.2.2" -yargs@^13.2.4: - version "13.3.2" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.2.tgz#ad7ffefec1aa59565ac915f82dccb38a9c31a2dd" - integrity sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw== +yargs@^17.2.1, yargs@^17.7.1: + version "17.7.2" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.2.tgz#991df39aca675a192b816e1e0363f9d75d2aa269" + integrity sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w== dependencies: - cliui "^5.0.0" - find-up "^3.0.0" - get-caller-file "^2.0.1" - require-directory "^2.1.1" - require-main-filename "^2.0.0" - set-blocking "^2.0.0" - string-width "^3.0.0" - which-module "^2.0.0" - y18n "^4.0.0" - yargs-parser "^13.1.2" - -yargs@^7.1.0: - version "7.1.2" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-7.1.2.tgz#63a0a5d42143879fdbb30370741374e0641d55db" - integrity sha512-ZEjj/dQYQy0Zx0lgLMLR8QuaqTihnxirir7EwUHp1Axq4e3+k8jXU5K0VLbNvedv1f4EWtBonDIZm0NUr+jCcA== - dependencies: - camelcase "^3.0.0" - cliui "^3.2.0" - decamelize "^1.1.1" - get-caller-file "^1.0.1" - os-locale "^1.4.0" - read-pkg-up "^1.0.1" + cliui "^8.0.1" + escalade "^3.1.1" + get-caller-file "^2.0.5" require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^1.0.2" - which-module "^1.0.0" - y18n "^3.2.1" - yargs-parser "^5.0.1" + string-width "^4.2.3" + y18n "^5.0.5" + yargs-parser "^21.1.1" yauzl@^2.10.0, yauzl@^2.3.1: version "2.10.0"