From b5a1162aabac8ed4df35d77d5a204416339bdb1e Mon Sep 17 00:00:00 2001 From: Northern Man <19808920+NorthernMan54@users.noreply.github.com> Date: Tue, 12 Nov 2024 17:42:20 -0500 Subject: [PATCH 01/47] Squashed commit of the following: commit 8bdbd712f40acb939dbab1def8a1c3a815254f74 Merge: 5063e0e d3ea906 Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Fri Oct 4 07:45:35 2024 -0700 Merge pull request #723 from microsoft/tyriar/compile_commands Move to compile commands on postinstall for fixing intellisense commit d3ea9069b928d70f850ad3bd1ef81ff4068a81cc Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Fri Oct 4 07:30:55 2024 -0700 Move to compile commands on postinstall for fixing intellisense Fixes #707 commit 5063e0e0b67f0af6f9b81bf1b8c8a4b79fbb04d6 Merge: 589a720 d06ed4f Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu Oct 3 07:27:53 2024 -0700 Merge pull request #722 from microsoft/tyriar/log Fix typo in trace log commit d06ed4f7a75e7b21e8a94260e0c532ba18719e6f Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu Oct 3 06:56:29 2024 -0700 Fix typo in trace log Follow up #720 commit 589a720c7bcd2b15da8e11d10e3ed98662f4f04b Merge: de86139 353f219 Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu Oct 3 06:33:40 2024 -0700 Merge pull request #721 from microsoft/tyriar/deps Move from yarn to npm commit de86139936629e7816e8cf118e9eb44d48c690c9 Merge: b2d9866 53e60b0 Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu Oct 3 06:24:35 2024 -0700 Merge pull request #719 from microsoft/tyriar/move_buffer_to_heap Move buffer_ to heap commit b2d9866dbd985ca85149214c75a6524f54612c80 Merge: 1ece036 d2bf81f Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu Oct 3 06:22:56 2024 -0700 Merge pull request #718 from microsoft/tyriar/717 Close piClient.hThread handle commit 1ece036795855ffcf98525997ae2548f26ae803b Merge: 796e11e 7e431b9 Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu Oct 3 06:20:46 2024 -0700 Merge pull request #720 from microsoft/tyriar/catch_winpty_deconstructor Catch possible exceptions in ~Agent commit 353f219bbf69d18272b831c30fe0887c5f7e362d Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu Oct 3 06:20:09 2024 -0700 Regenerate dependencies commit 13c661d86fcf773f6c480a86de314c223e14ec04 Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu Oct 3 06:12:07 2024 -0700 yarn.lock -> package-lock.json Fixes #712 commit 7e431b947986d333e2405a232fb2ebe0d415dd43 Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu Oct 3 06:07:45 2024 -0700 Catch possible exceptions in ~Agent Fixes warning: deps\winpty\src\agent\Agent.cc(231): warning C4722: 'Agent::~Agent': destructor never returns, potential memory leak commit 53e60b0dd5aed8cff970faee3bd36b8324f4db49 Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu Oct 3 06:00:25 2024 -0700 Move buffer_ to heap Resolves warning: src\win\path_util.cc(54): warning C6262: Function uses '131804' bytes of stack: exceeds /analyze:stacksize '16384'. Consider moving some data to heap. commit d2bf81febd485f0aa4aa561a227b43efd933025f Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu Oct 3 05:54:52 2024 -0700 Close piClient.hThread handle Fixes #717 commit 796e11ead39c93ef91a12afe9c2d7eda7ec0d629 Merge: cb94da7 59771c0 Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Fri Sep 27 07:19:10 2024 -0700 Merge pull request #713 from microsoft/tyriar/711 Bring back clear impl commit 59771c0509c09404ee99132aededa27be2c52820 Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Mon Sep 9 06:28:10 2024 -0700 Bring back clear impl Fixes #711 commit cb94da7f1aca551366fd7ffb27b1268d1b90679d Merge: 8c0a6d7 4f2f641 Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Sun Aug 11 09:34:35 2024 -0700 Merge pull request #704 from microsoft/tyriar/npm_arch Copy right dll/exe based on npm_config_arch commit 4f2f641fbd12be71af0b517073dfdb64f0caaaa2 Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Sun Aug 11 08:33:05 2024 -0700 Copy right dll/exe based on npm_config_arch Part of microsoft/vscode#224488 Part of microsoft/vscode#225355 commit 8c0a6d7dd42d7685d18c740e42b8de6c517381a2 Merge: 8fc21c9 ef1cefc Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Fri Aug 9 09:09:55 2024 -0700 Merge pull request #703 from microsoft/tyriar/conpty_prefix Fix correct method being loaded when not using conptydll commit ef1cefc5fd25bdbb898524a794706bd060edeff5 Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Fri Aug 9 08:37:52 2024 -0700 Fix correct method being loaded when not using conptydll Part of microsoft/vscode#224488 commit 8fc21c99bf281cb2fd2921f89660cbf8649c4a2b Merge: 7a8c67c 061487a Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Tue Aug 6 14:19:47 2024 -0700 Merge pull request #702 from microsoft/tyriar/conpty_update Update to newer version of conpty commit 061487a6fa90584510df5a3d3a16b86d1a54bfed Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Tue Aug 6 13:56:45 2024 -0700 Update to newer version of conpty commit 7a8c67c7b1b8cff52e275f73e4aaa56a3466f118 Merge: 485379c cf62104 Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Tue Aug 6 05:36:19 2024 -0700 Merge pull request #700 from microsoft/tyriar/conpty_path Get path of conpty.node for conpty.dll commit cf62104f5b68e21d07546c13fced7093e9df1ca9 Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Tue Aug 6 05:32:14 2024 -0700 Get path of conpty.node for conpty.dll Part of microsoft/vscode#224488 commit 485379c7907abf0ad9a762ecefc7153c0714628e Merge: 1247f91 98d8566 Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Mon Aug 5 09:04:40 2024 -0700 Merge pull request #699 from microsoft/tyriar/conptydll_exception Improve can't find conpty.dll exception message commit 98d85661719181ec65369e1ec04523fcbef0a00a Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Mon Aug 5 08:21:32 2024 -0700 Improve can't find conpty.dll exception message Part of microsoft/vscode#224488 commit 1247f91e8cce033888cc310bdce60c993f7ed5c6 Merge: 47c16e2 5e99f76 Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu Aug 1 13:30:11 2024 -0700 Merge pull request #698 from microsoft/tyriar/publish_third_party Publish third_party folder commit 5e99f76e2583422dd4adc392c75ac1a53c47769e Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu Aug 1 13:22:55 2024 -0700 Publish third_party folder commit 47c16e22119b23ec4ff53c0f293d476fd9906677 Merge: 5874200 59f5d47 Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu Aug 1 12:41:41 2024 -0700 Merge pull request #697 from microsoft/tyriar/conpty4 Disable APIScan and reduce test flakiness on Windows commit 59f5d472fb7ccfee468fa5a7ec3d7e83d4636b69 Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu Aug 1 11:48:07 2024 -0700 Fix winpty resize and reduce test flakiness commit 055cd3f7fc3c5821f69af44311f64e0bb3ae2a36 Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu Aug 1 11:38:28 2024 -0700 Disable APIScan task commit 5874200fb08b879eba57770438fa017402353662 Merge: 2622bd1 dde63ec Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu Aug 1 11:25:33 2024 -0700 Merge pull request #696 from microsoft/tyriar/node16 Don't run CI for node 16 commit dde63ec84ccffb5c8ea1c9921a8d72660f716728 Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu Aug 1 11:22:01 2024 -0700 Don't run CI for node 16 commit 2622bd189f639cae2e1f28f18d160757797a4e1a Merge: bd7fa4f 7c4e9ed Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu Aug 1 10:47:54 2024 -0700 Merge pull request #695 from microsoft/tyriar/conpty2 Ship third_party folder with module commit 7c4e9edc923d340b47b55f00f5b29bd4a74c73bb Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu Aug 1 10:24:27 2024 -0700 Ship third_party folder with module This needs to be there to copy over the right binary on postinstall Part of microsoft/vscode#224488 commit bd7fa4fc40d445b5a7312c10c39ee1e71353624a Merge: efbf8eb 4392169 Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu Aug 1 09:55:36 2024 -0700 Merge pull request #694 from microsoft/tyriar/conptydll Ship conpty.dll/OpenConsole.exe with opt-in experimental option useConptyDll commit 43921691ee382530bf7b79149f65d798fd7fe185 Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu Aug 1 08:33:27 2024 -0700 Copy conpty.dll and openconsole.exe depending on arch in postinstall commit ddcd0b09add1a6794ecb09de4ba4939f2a5c55d6 Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu Aug 1 08:14:27 2024 -0700 Add useConptyDll option commit 95f67e7227755c0f500bc128fe0b57389bf5caaf Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu Aug 1 08:11:38 2024 -0700 Add conpty dlls and node headers commit f2be1af081062f4a6c4bed048e3fc147c0843f23 Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Tue Jul 30 11:45:51 2024 -0700 Get conpty.dll conditionally loading commit efbf8ebbe7b09351548fa0a4ed07b36c5d2e539b Merge: 8be08fd 0e791c1 Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Tue Jun 18 05:55:56 2024 -0700 Merge pull request #687 from microsoft/dependabot/npm_and_yarn/braces-3.0.3 build(deps): bump braces from 3.0.2 to 3.0.3 commit 8be08fdf258b1d6c993e9407bb3f86bc710fe02e Merge: df1ae8c 26f1c69 Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Mon Jun 17 07:35:47 2024 -0700 Merge pull request #688 from jpcastberg/termios-freebsd Include termios.h on freebsd commit 26f1c69a67c939b1333e6eacb2e88257d458cbb9 Author: jpcastberg Date: Sun Jun 16 23:14:24 2024 -0700 Include termios.h on freebsd commit 0e791c1b4e89de8b79b75ebc91d7577e257c3926 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun Jun 16 11:12:19 2024 +0000 build(deps): bump braces from 3.0.2 to 3.0.3 Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3. - [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md) - [Commits](https://github.com/micromatch/braces/compare/3.0.2...3.0.3) --- updated-dependencies: - dependency-name: braces dependency-type: indirect ... Signed-off-by: dependabot[bot] commit df1ae8c08a2fd3d4fe9c1e1a304cbe6e9ed41a3f Author: Raymond Zhao <7199958+rzhao271@users.noreply.github.com> Date: Tue Apr 16 15:43:10 2024 -0700 docs: add a note on Spectre-mitigated libraries (#679) commit f014e86559f627b4c88b7eff113757b48e440132 Merge: 6aa0758 0fbbcf6 Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu Apr 11 06:45:41 2024 -0700 Merge pull request #678 from microsoft/dependabot/npm_and_yarn/tar-6.2.1 build(deps): bump tar from 6.2.0 to 6.2.1 commit 0fbbcf6bfb6706774a141173e1fce7b723980cba Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu Apr 11 12:09:54 2024 +0000 build(deps): bump tar from 6.2.0 to 6.2.1 Bumps [tar](https://github.com/isaacs/node-tar) from 6.2.0 to 6.2.1. - [Release notes](https://github.com/isaacs/node-tar/releases) - [Changelog](https://github.com/isaacs/node-tar/blob/main/CHANGELOG.md) - [Commits](https://github.com/isaacs/node-tar/compare/v6.2.0...v6.2.1) --- updated-dependencies: - dependency-name: tar dependency-type: indirect ... Signed-off-by: dependabot[bot] commit 6aa07588a5179a2ce95b88d0478954ba8554cea5 Author: Raymond Zhao <7199958+rzhao271@users.noreply.github.com> Date: Mon Apr 1 11:37:15 2024 -0700 chore: migrate pipeline to use 1ES template (#676) commit 391347926a45bb0b9e2c9a9f837adc56592b3c4b Author: kkocdko <31189892+kkocdko@users.noreply.github.com> Date: Mon Mar 18 21:01:50 2024 +0800 chore: remove deprecated api `process.binding` (#653) * Remove deprecated API `process.binding` Originally designed to work with ancient node.js 0.12 and io.js * Fix node `net.Socket` limitations https://github.com/nodejs/node/issues/37780 commit f25bb55365988d999d9ed282d705e84c70bda7a5 Author: kkocdko <31189892+kkocdko@users.noreply.github.com> Date: Sat Mar 16 00:26:59 2024 +0800 Upgrade node-gyp to fix #643 and #646 (#673) commit 783c7edb47cd4ff129c56ea66d4d4bf9f24a60b9 Author: Robo Date: Thu Mar 7 22:25:19 2024 +0900 fix: assertion on node environment shutdown (#672) commit 2dab380c77048a8c4239e5b12203a27a90e37896 Author: Raymond Zhao <7199958+rzhao271@users.noreply.github.com> Date: Mon Mar 4 07:15:19 2024 -0800 fix: comment out invalid API call (#669) commit c712cce84903e9e8f8f16bf05782f30d62ae317b Author: Raymond Zhao <7199958+rzhao271@users.noreply.github.com> Date: Thu Feb 29 11:55:21 2024 -0800 chore: fix APIScan software name (#667) commit a0dd31d7cfe3ba9e51657470923312dca207c583 Merge: 0661eaf 0253460 Author: SteVen Batten Date: Sun Feb 25 15:21:58 2024 -0800 Merge pull request #666 from microsoft/sbatten/apiscan api scan commit 02534601e27014ffc1afe00cf550ebfdf0800b3e Author: SteVen Batten Date: Sun Feb 25 14:59:02 2024 -0800 fix job name commit 2483032eb6da55874a322bd2a21c3d3fc0bbba89 Author: SteVen Batten Date: Sun Feb 25 14:57:25 2024 -0800 api scan commit 0661eaf21165f673c08af84be0ff7e67bdc8ea27 Merge: b1fdda4 e08593d Author: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Wed Feb 21 07:39:05 2024 -0800 Merge pull request #664 from microsoft/dependabot/npm_and_yarn/ip-2.0.1 build(deps): bump ip from 2.0.0 to 2.0.1 commit e08593d168544b2da3a968bb2c7c55da563aef6f Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed Feb 21 01:42:29 2024 +0000 build(deps): bump ip from 2.0.0 to 2.0.1 Bumps [ip](https://github.com/indutny/node-ip) from 2.0.0 to 2.0.1. - [Commits](https://github.com/indutny/node-ip/compare/v2.0.0...v2.0.1) --- updated-dependencies: - dependency-name: ip dependency-type: indirect ... Signed-off-by: dependabot[bot] commit b1fdda458a09072ea0fd53aa4616573dd6b30421 Author: kkocdko <31189892+kkocdko@users.noreply.github.com> Date: Fri Jan 26 17:17:03 2024 +0800 Port to NAPI (#644) * Port to NAPI The "5th pty bug" in #432 fixed also. * Fix help message in pty.cc * Move NAPI deps to devDependencies in package.json * Apply most of deepak1556's suggestions * Fix winpty * Fix conpty missing CloseHandle * Use unique_ptr to avoid `goto`s * Why macos failed? * fix: ci and minor cleanups * fix build failed on windows --------- Co-authored-by: deepak1556 --- .config/tsaoptions.json | 10 + .eslintrc.js | 5 +- azure-pipelines.yml | 267 +- binding.gyp | 20 +- deps/winpty/src/agent/Agent.cc | 14 +- examples/fork/index.js | 3 +- package-lock.json | 3542 +++++++++++++++++ package.json | 25 +- scripts/post-install.js | 61 +- src/interfaces.ts | 1 + src/native.d.ts | 8 +- src/unix/pty.cc | 525 ++- src/unixTerminal.ts | 22 +- src/win/conpty.cc | 419 +- src/win/conpty.h | 41 + src/win/conpty_console_list.cc | 31 +- src/win/path_util.cc | 75 +- src/win/path_util.h | 7 +- src/win/winpty.cc | 259 +- src/windowsPtyAgent.ts | 11 +- src/windowsTerminal.test.ts | 4 +- src/windowsTerminal.ts | 2 +- .../win10-arm64/OpenConsole.exe | Bin 0 -> 1376800 bytes .../1.20.240626001/win10-arm64/conpty.dll | Bin 0 -> 104992 bytes .../1.20.240626001/win10-x64/OpenConsole.exe | Bin 0 -> 1279016 bytes .../1.20.240626001/win10-x64/conpty.dll | Bin 0 -> 113192 bytes typings/node-pty.d.ts | 8 + 27 files changed, 4530 insertions(+), 830 deletions(-) create mode 100644 .config/tsaoptions.json create mode 100644 src/win/conpty.h create mode 100644 third_party/conpty/1.20.240626001/win10-arm64/OpenConsole.exe create mode 100644 third_party/conpty/1.20.240626001/win10-arm64/conpty.dll create mode 100644 third_party/conpty/1.20.240626001/win10-x64/OpenConsole.exe create mode 100644 third_party/conpty/1.20.240626001/win10-x64/conpty.dll diff --git a/.config/tsaoptions.json b/.config/tsaoptions.json new file mode 100644 index 000000000..cbb0afd21 --- /dev/null +++ b/.config/tsaoptions.json @@ -0,0 +1,10 @@ +{ + "codebaseName": "devdiv_microsoft_vscode_node_pty", + "instanceUrl": "https://devdiv.visualstudio.com/defaultcollection", + "projectName": "DevDiv", + "areaPath": "DevDiv\\VS Code (compliance tracking only)\\Visual Studio Code NPM Packages", + "notificationAliases": [ + "stbatt@microsoft.com", + "lszomoru@microsoft.com" + ] +} diff --git a/.eslintrc.js b/.eslintrc.js index 0042fcb16..542732374 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -9,7 +9,10 @@ module.exports = { "project": "src/tsconfig.json", "sourceType": "module" }, - "ignorePatterns": "**/typings/*.d.ts", + "ignorePatterns": [ + "**/typings/*.d.ts", + "scripts/**/*" + ], "plugins": [ "@typescript-eslint" ], diff --git a/azure-pipelines.yml b/azure-pipelines.yml index b546a698b..83604b234 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -3,96 +3,185 @@ # Add steps that analyze code, save build artifacts, deploy, and more: # https://docs.microsoft.com/azure/devops/pipelines/languages/javascript -jobs: -- job: Linux - pool: - vmImage: 'ubuntu-latest' - strategy: - matrix: - node_16_x: - node_version: 16.x - node_18_x: - node_version: 18.x - steps: - - task: NodeTool@0 - inputs: - versionSpec: $(node_version) - displayName: 'Install Node.js' - - script: | - npm i - displayName: 'Install dependencies and build' - - script: | - npm test - displayName: 'Test' - - script: | - npm run lint - displayName: 'Lint' +resources: + repositories: + - repository: 1esPipelines + type: git + name: 1ESPipelineTemplates/1ESPipelineTemplates + ref: refs/tags/release -- job: macOS - pool: - vmImage: 'macOS-latest' - strategy: - matrix: - node_16_x: - node_version: 16.x - node_18_x: - node_version: 18.x - steps: - - task: NodeTool@0 - inputs: - versionSpec: $(node_version) - displayName: 'Install Node.js' - - script: | - npm i - displayName: 'Install dependencies and build' - - script: | - npm test - displayName: 'Test' - - script: | - npm run lint - displayName: 'Lint' +extends: + template: v1/1ES.Official.PipelineTemplate.yml@1esPipelines + parameters: + sdl: + sourceAnalysisPool: 1es-oss-windows-2022-x64 + tsa: + enabled: true + stages: + - stage: Build + jobs: + - job: Linux + pool: + name: 1es-oss-ubuntu-22.04-x64 + os: Linux + strategy: + matrix: + node_18_x: + node_version: 18.x + steps: + - task: NodeTool@0 + inputs: + versionSpec: $(node_version) + displayName: 'Install Node.js' + - script: | + npm i + displayName: 'Install dependencies and build' + - script: | + npm test + displayName: 'Test' + - script: | + npm run lint + displayName: 'Lint' -- job: Windows - pool: - vmImage: 'windows-2019' - strategy: - matrix: - node_16_x: - node_version: 16.x - node_18_x: - node_version: 18.x - steps: - - task: NodeTool@0 - inputs: - versionSpec: $(node_version) - displayName: 'Install Node.js' - - script: | - npm i - displayName: 'Install dependencies and build' - - script: | - npm test - displayName: 'Test' - - script: | - npm run lint - displayName: 'Lint' + - job: macOS + pool: + name: Azure Pipelines + vmImage: 'macOS-latest' + os: macOS + strategy: + matrix: + node_18_x: + node_version: 18.x + steps: + - task: NodeTool@0 + inputs: + versionSpec: $(node_version) + displayName: 'Install Node.js' + - script: | + python3 -m pip install setuptools + displayName: Install setuptools (macOS) + - script: | + npm i + displayName: 'Install dependencies and build' + - script: | + npm test + displayName: 'Test' + - script: | + npm run lint + displayName: 'Lint' -- job: Release - dependsOn: - - Linux - - macOS - - Windows - condition: and(succeeded(), eq(variables['Build.SourceBranch'], 'refs/heads/main')) - pool: - vmImage: 'ubuntu-latest' - steps: - - task: NodeTool@0 - inputs: - versionSpec: '16.x' - displayName: 'Install Node.js' - - script: | - npm i - displayName: 'Install dependencies and build' - - script: | - NPM_AUTH_TOKEN="$(NPM_AUTH_TOKEN)" node ./scripts/publish.js - displayName: 'Publish to npm' + - job: Windows + pool: + name: 1es-oss-windows-2022-x64 + os: Windows + strategy: + matrix: + node_18_x: + node_version: 18.x + steps: + - task: NodeTool@0 + inputs: + versionSpec: $(node_version) + displayName: 'Install Node.js' + - script: | + npm i + displayName: 'Install dependencies and build' + - script: | + npm test + displayName: 'Test' + - script: | + npm run lint + displayName: 'Lint' + # - job: APIScan + # dependsOn: [] + # pool: + # name: 1es-oss-windows-2022-x64 + # os: Windows + # strategy: + # matrix: + # node_18_x: + # node_version: 18.x + # steps: + # - task: NodeTool@0 + # inputs: + # versionSpec: $(node_version) + # displayName: 'Install Node.js' + # - pwsh: | + # $includes = @' + # { + # 'target_defaults': { + # 'conditions': [ + # ['OS=="win"', { + # 'msvs_settings': { + # 'VCCLCompilerTool': { + # 'AdditionalOptions': [ + # '/Zi', + # '/FS' + # ], + # }, + # 'VCLinkerTool': { + # 'AdditionalOptions': [ + # '/profile' + # ] + # } + # } + # }] + # ] + # } + # } + # '@ + + # if (!(Test-Path "~/.gyp")) { + # mkdir "~/.gyp" + # echo $includes > "~/.gyp/include.gypi" + # } + # displayName: Create include.gypi + # - script: | + # npm i + # displayName: 'Install dependencies and build' + + # - task: APIScan@2 + # inputs: + # softwareFolder: $(Build.SourcesDirectory)\build\Release + # softwareName: 'vscode-node-pty' + # softwareVersionNum: '1' + # isLargeApp: false + # toolVersion: 'Latest' + # displayName: Run ApiScan + # condition: succeeded() + # env: + # AzureServicesAuthConnectionString: $(apiscan-connectionstring) + + # - task: PublishSecurityAnalysisLogs@3 + # inputs: + # ArtifactName: CodeAnalysisLogs + # ArtifactType: Container + # PublishProcessedResults: false + # AllTools: true + + - stage: Release + dependsOn: Build + jobs: + - job: Release + condition: eq(variables['Build.SourceBranch'], 'refs/heads/main') + # Output artifact to produce SBOM and to run SDL checks + templateContext: + outputs: + - output: pipelineArtifact + targetPath: $(Build.SourcesDirectory) + artifactName: drop + pool: + name: 1es-oss-ubuntu-22.04-x64 + os: Linux + steps: + - task: NodeTool@0 + inputs: + versionSpec: '18.x' + displayName: 'Install Node.js' + - script: | + npm i + displayName: 'Install dependencies and build' + - script: | + NPM_AUTH_TOKEN="$(NPM_AUTH_TOKEN)" node ./scripts/publish.js + displayName: 'Publish to npm' diff --git a/binding.gyp b/binding.gyp index cb0e5abdc..78ca0c40e 100644 --- a/binding.gyp +++ b/binding.gyp @@ -3,6 +3,9 @@ 'openssl_fips': "", }, 'target_defaults': { + 'dependencies': [ + " process.stdout.write(data)); diff --git a/package-lock.json b/package-lock.json index df3a1b57d..1c3170ffe 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,3 +1,3545 @@ +{ + "name": "node-pty", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "node-pty", + "version": "1.0.0", + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "node-addon-api": "^7.1.0" + }, + "devDependencies": { + "@types/mocha": "^7.0.2", + "@types/node": "12", + "@typescript-eslint/eslint-plugin": "^2.27.0", + "@typescript-eslint/parser": "^2.27.0", + "cross-env": "^5.1.4", + "eslint": "^6.8.0", + "mocha": "10", + "node-gyp": "^10.0.1", + "ps-list": "^6.0.0", + "typescript": "^3.8.3" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.25.7.tgz", + "integrity": "sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.25.7", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.7.tgz", + "integrity": "sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.25.7.tgz", + "integrity": "sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.25.7", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/@npmcli/agent": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.2.tgz", + "integrity": "sha512-OrcNPXdpSl9UX7qPVRWbmWMCSXrcDa2M9DvrbOTj7ao1S4PlqVFYv9/yLKMkrJKZ/V5A/kDBC690or307i26Og==", + "dev": true, + "dependencies": { + "agent-base": "^7.1.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.1", + "lru-cache": "^10.0.1", + "socks-proxy-agent": "^8.0.3" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/fs": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.1.tgz", + "integrity": "sha512-q9CRWjpHCMIh5sVyefoD1cA7PkvILqCZsnSOEUUivORLjxCO/Irmue2DprETiNgEqktDBZaM1Bi+jrarx1XdCg==", + "dev": true, + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@types/eslint-visitor-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", + "integrity": "sha512-OCutwjDZ4aFS6PB1UZ988C4YgwlBHJd6wCeQqaLdmadZ/7e+w79+hbMUFC1QXDNCmdyoRfAFdm0RypzwR+Qpag==", + "dev": true + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true + }, + "node_modules/@types/mocha": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-7.0.2.tgz", + "integrity": "sha512-ZvO2tAcjmMi8V/5Z3JsyofMe3hasRcaw88cto5etSVMwVQfeivGAlEYmaQgceUSVYFofVjT+ioHsATjdWcFt1w==", + "dev": true + }, + "node_modules/@types/node": { + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==", + "dev": true + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "2.34.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-2.34.0.tgz", + "integrity": "sha512-4zY3Z88rEE99+CNvTbXSyovv2z9PNOVffTWD2W8QF5s2prBQtwN2zadqERcrHpcR7O/+KMI3fcTAmUUhK/iQcQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/experimental-utils": "2.34.0", + "functional-red-black-tree": "^1.0.1", + "regexpp": "^3.0.0", + "tsutils": "^3.17.1" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^2.0.0", + "eslint": "^5.0.0 || ^6.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/experimental-utils": { + "version": "2.34.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-2.34.0.tgz", + "integrity": "sha512-eS6FTkq+wuMJ+sgtuNTtcqavWXqsflWcfBnlYhg/nS4aZ1leewkXGbvBhaapn1q6qf4M71bsR1tez5JTRMuqwA==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.3", + "@typescript-eslint/typescript-estree": "2.34.0", + "eslint-scope": "^5.0.0", + "eslint-utils": "^2.0.0" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "*" + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "2.34.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-2.34.0.tgz", + "integrity": "sha512-03ilO0ucSD0EPTw2X4PntSIRFtDPWjrVq7C3/Z3VQHRC7+13YB55rcJI3Jt+YgeHbjUdJPcPa7b23rXCBokuyA==", + "dev": true, + "dependencies": { + "@types/eslint-visitor-keys": "^1.0.0", + "@typescript-eslint/experimental-utils": "2.34.0", + "@typescript-eslint/typescript-estree": "2.34.0", + "eslint-visitor-keys": "^1.1.0" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^5.0.0 || ^6.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "2.34.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-2.34.0.tgz", + "integrity": "sha512-OMAr+nJWKdlVM9LOqCqh3pQQPwxHAN7Du8DR6dmwCrAmxtiXQnhHJ6tBNtf+cggqfo51SG/FCwnKhXCIM7hnVg==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "eslint-visitor-keys": "^1.1.0", + "glob": "^7.1.6", + "is-glob": "^4.0.1", + "lodash": "^4.17.15", + "semver": "^7.3.2", + "tsutils": "^3.17.1" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/abbrev": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz", + "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/agent-base": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "dev": true, + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-escapes/node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/astral-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", + "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browser-stdout": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", + "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", + "dev": true + }, + "node_modules/cacache": { + "version": "18.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.4.tgz", + "integrity": "sha512-B+L5iIa9mgcjLbliir2th36yEwPftrzteHYujzsx3dFP/31GCHcIeS8f5MGd80odLOjaOvSpU3EEAmRQptkxLQ==", + "dev": true, + "dependencies": { + "@npmcli/fs": "^3.1.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", + "minipass-collect": "^2.0.1", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^4.0.0", + "ssri": "^10.0.0", + "tar": "^6.1.11", + "unique-filename": "^3.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/cacache/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/cacache/node_modules/glob": { + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/cacache/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dev": true, + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/cliui/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/cross-env": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-5.2.1.tgz", + "integrity": "sha512-1yHhtcfAd1r4nwQgknowuUNfIT9E8dOMMspC36g45dN+iD1blloi7xp8X/xAIDnjHWyt1uQ8PHk2fkNaym7soQ==", + "dev": true, + "dependencies": { + "cross-spawn": "^6.0.5" + }, + "bin": { + "cross-env": "dist/bin/cross-env.js", + "cross-env-shell": "dist/bin/cross-env-shell.js" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "dependencies": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" + } + }, + "node_modules/cross-spawn/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/debug": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decamelize": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", + "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/diff": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz", + "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==", + "dev": true, + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dev": true, + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/encoding/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "dev": true + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/eslint": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz", + "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "ajv": "^6.10.0", + "chalk": "^2.1.0", + "cross-spawn": "^6.0.5", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "eslint-scope": "^5.0.0", + "eslint-utils": "^1.4.3", + "eslint-visitor-keys": "^1.1.0", + "espree": "^6.1.2", + "esquery": "^1.0.1", + "esutils": "^2.0.2", + "file-entry-cache": "^5.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.0.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "inquirer": "^7.0.0", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.3.0", + "lodash": "^4.17.14", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "optionator": "^0.8.3", + "progress": "^2.0.0", + "regexpp": "^2.0.1", + "semver": "^6.1.2", + "strip-ansi": "^5.2.0", + "strip-json-comments": "^3.0.1", + "table": "^5.2.3", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^1.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint/node_modules/eslint-utils": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", + "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^1.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/eslint/node_modules/regexpp": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", + "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", + "dev": true, + "engines": { + "node": ">=6.5.0" + } + }, + "node_modules/eslint/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/espree": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", + "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", + "dev": true, + "dependencies": { + "acorn": "^7.1.1", + "acorn-jsx": "^5.2.0", + "eslint-visitor-keys": "^1.1.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esquery/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/exponential-backoff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.1.tgz", + "integrity": "sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==", + "dev": true + }, + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dev": true, + "dependencies": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/file-entry-cache": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", + "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", + "dev": true, + "dependencies": { + "flat-cache": "^2.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "dev": true, + "bin": { + "flat": "cli.js" + } + }, + "node_modules/flat-cache": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", + "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", + "dev": true, + "dependencies": { + "flatted": "^2.0.0", + "rimraf": "2.6.3", + "write": "1.0.3" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/flatted": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", + "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", + "dev": true + }, + "node_modules/foreground-child": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz", + "integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/foreground-child/node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/foreground-child/node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/foreground-child/node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/foreground-child/node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/foreground-child/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/foreground-child/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/fs-minipass": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz", + "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", + "dev": true + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/globals": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", + "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "dev": true, + "dependencies": { + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true, + "bin": { + "he": "bin/he" + } + }, + "node_modules/http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", + "dev": true + }, + "node_modules/http-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", + "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", + "dev": true, + "dependencies": { + "agent-base": "^7.1.0", + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/https-proxy-agent": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", + "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", + "dev": true, + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/inquirer": { + "version": "7.3.3", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", + "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", + "dev": true, + "dependencies": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.19", + "mute-stream": "0.0.8", + "run-async": "^2.4.0", + "rxjs": "^6.6.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/inquirer/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/inquirer/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/inquirer/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/inquirer/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/inquirer/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/inquirer/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/inquirer/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/inquirer/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ip-address": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", + "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", + "dev": true, + "dependencies": { + "jsbn": "1.1.0", + "sprintf-js": "^1.1.3" + }, + "engines": { + "node": ">= 12" + } + }, + "node_modules/ip-address/node_modules/sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", + "dev": true + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", + "dev": true + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-plain-obj": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", + "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/jackspeak": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", + "dev": true, + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsbn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", + "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true + }, + "node_modules/levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", + "dev": true, + "dependencies": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-symbols/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/log-symbols/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/log-symbols/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/log-symbols/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/log-symbols/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/log-symbols/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true + }, + "node_modules/make-fetch-happen": { + "version": "13.0.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.1.tgz", + "integrity": "sha512-cKTUFc/rbKUd/9meOvgrpJ2WrNzymt6jfRDdwg5UCnVzv9dTpEj9JS5m3wtziXVCjluIXyL8pcaukYqezIzZQA==", + "dev": true, + "dependencies": { + "@npmcli/agent": "^2.0.0", + "cacache": "^18.0.0", + "http-cache-semantics": "^4.1.1", + "is-lambda": "^1.0.1", + "minipass": "^7.0.2", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "proc-log": "^4.2.0", + "promise-retry": "^2.0.1", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/minipass-collect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz", + "integrity": "sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/minipass-fetch": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.5.tgz", + "integrity": "sha512-2N8elDQAtSnFV0Dk7gt15KHsS0Fyz6CbYZ360h0WTYV1Ty46li3rAXVOQj1THMNLdmrD9Vt5pBPtWtVkpwGBqg==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-flush/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-pipeline/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/mocha": { + "version": "10.7.3", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.7.3.tgz", + "integrity": "sha512-uQWxAu44wwiACGqjbPYmjo7Lg8sFrS3dQe7PP2FQI+woptP4vZXSMcfMyFL/e1yFEeEpV4RtyTpZROOKmxis+A==", + "dev": true, + "dependencies": { + "ansi-colors": "^4.1.3", + "browser-stdout": "^1.3.1", + "chokidar": "^3.5.3", + "debug": "^4.3.5", + "diff": "^5.2.0", + "escape-string-regexp": "^4.0.0", + "find-up": "^5.0.0", + "glob": "^8.1.0", + "he": "^1.2.0", + "js-yaml": "^4.1.0", + "log-symbols": "^4.1.0", + "minimatch": "^5.1.6", + "ms": "^2.1.3", + "serialize-javascript": "^6.0.2", + "strip-json-comments": "^3.1.1", + "supports-color": "^8.1.1", + "workerpool": "^6.5.1", + "yargs": "^16.2.0", + "yargs-parser": "^20.2.9", + "yargs-unparser": "^2.0.0" + }, + "bin": { + "_mocha": "bin/_mocha", + "mocha": "bin/mocha.js" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/mocha/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/mocha/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/mocha/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/mocha/node_modules/glob": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/mocha/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/mocha/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/mocha/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/mocha/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + }, + "node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "dev": true + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true + }, + "node_modules/node-addon-api": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", + "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==" + }, + "node_modules/node-gyp": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.2.0.tgz", + "integrity": "sha512-sp3FonBAaFe4aYTcFdZUn2NYkbP7xroPGYvQmP4Nl5PxamznItBnNCgjrVTKrEfQynInMsJvZrdmqUnysCJ8rw==", + "dev": true, + "dependencies": { + "env-paths": "^2.2.0", + "exponential-backoff": "^3.1.1", + "glob": "^10.3.10", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^13.0.0", + "nopt": "^7.0.0", + "proc-log": "^4.1.0", + "semver": "^7.3.5", + "tar": "^6.2.1", + "which": "^4.0.0" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/node-gyp/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/node-gyp/node_modules/glob": { + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/node-gyp/node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", + "dev": true, + "engines": { + "node": ">=16" + } + }, + "node_modules/node-gyp/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/node-gyp/node_modules/which": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", + "dev": true, + "dependencies": { + "isexe": "^3.1.1" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^16.13.0 || >=18.0.0" + } + }, + "node_modules/nopt": { + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz", + "integrity": "sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==", + "dev": true, + "dependencies": { + "abbrev": "^2.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "dev": true, + "dependencies": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.6", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "word-wrap": "~1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", + "dev": true + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "dev": true, + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/picocolors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", + "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/proc-log": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", + "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "dev": true, + "dependencies": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ps-list": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/ps-list/-/ps-list-6.3.0.tgz", + "integrity": "sha512-qau0czUSB0fzSlBOQt0bo+I2v6R+xiQdj78e1BR/Qjfl5OHWJ/urXi8+ilw1eHe+5hSeDI1wrwVTgDp2wst4oA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dev": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/serialize-javascript": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", + "dev": true, + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "dev": true, + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, + "node_modules/slice-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", + "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.0", + "astral-regex": "^1.0.0", + "is-fullwidth-code-point": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/slice-ansi/node_modules/is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "dev": true, + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz", + "integrity": "sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==", + "dev": true, + "dependencies": { + "ip-address": "^9.0.5", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks-proxy-agent": { + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.4.tgz", + "integrity": "sha512-GNAq/eg8Udq2x0eNiFkr9gRg5bA7PXEWagQdeRX4cPSG+X/8V38v637gim9bjFptMk1QWsCTr0ttrJEiXbNnRw==", + "dev": true, + "dependencies": { + "agent-base": "^7.1.1", + "debug": "^4.3.4", + "socks": "^2.8.3" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, + "node_modules/ssri": { + "version": "10.0.6", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.6.tgz", + "integrity": "sha512-MGrFH9Z4NP9Iyhqn16sDtBpRRNJ0Y2hNa6D65h736fVSaPCHr4DM4sWUNvVaSuC+0OBGhwsrydQwmgfg5LncqQ==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "dependencies": { + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/table": { + "version": "5.4.6", + "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", + "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", + "dev": true, + "dependencies": { + "ajv": "^6.10.2", + "lodash": "^4.17.14", + "slice-ansi": "^2.1.0", + "string-width": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/table/node_modules/emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "node_modules/table/node_modules/is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/table/node_modules/string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "dependencies": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tar": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", + "dev": true, + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar/node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/tar/node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tar/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/tar/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true + }, + "node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dev": true, + "dependencies": { + "tslib": "^1.8.1" + }, + "engines": { + "node": ">= 6" + }, + "peerDependencies": { + "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + } + }, + "node_modules/type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", + "dev": true, + "dependencies": { + "prelude-ls": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/typescript": { + "version": "3.9.10", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", + "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/unique-filename": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", + "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==", + "dev": true, + "dependencies": { + "unique-slug": "^4.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/unique-slug": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz", + "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/v8-compile-cache": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.4.0.tgz", + "integrity": "sha512-ocyWc3bAHBB/guyqJQVI5o4BZkPhznPYUG2ea80Gond/BgNWpap8TOmLSeeQG7bnh2KMISxskdADG59j7zruhw==", + "dev": true + }, + "node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/workerpool": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.5.1.tgz", + "integrity": "sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==", + "dev": true + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/wrap-ansi/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "node_modules/write": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", + "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", + "dev": true, + "dependencies": { + "mkdirp": "^0.5.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yargs-unparser": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", + "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", + "dev": true, + "dependencies": { + "camelcase": "^6.0.0", + "decamelize": "^4.0.0", + "flat": "^5.0.2", + "is-plain-obj": "^2.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + } +} { "name": "@homebridge/node-pty-prebuilt-multiarch", "version": "0.11.14", diff --git a/package.json b/package.json index 29baf9e78..db742f2a4 100644 --- a/package.json +++ b/package.json @@ -48,21 +48,18 @@ "prepublishOnly": "npm run build" }, "dependencies": { - "nan": "^2.19.0", - "prebuild-install": "^7.1.2" + "node-addon-api": "^7.1.0" }, "devDependencies": { - "@types/mocha": "^10.0.6", - "@types/node": "^20.12.12", - "@typescript-eslint/eslint-plugin": "^7.10.0", - "@typescript-eslint/parser": "^7.10.0", - "cross-env": "^7.0.3", - "mocha": "^10.4.0", - "node-abi": "^3.62.0", - "node-gyp": "^10.1.0", - "prebuild": "^13.0.1", - "prebuildify": "^5.0.1", - "ps-list": "=7.2.0", - "typescript": "^5.4.5" + "@types/mocha": "^7.0.2", + "@types/node": "12", + "@typescript-eslint/eslint-plugin": "^2.27.0", + "@typescript-eslint/parser": "^2.27.0", + "cross-env": "^5.1.4", + "eslint": "^6.8.0", + "mocha": "10", + "node-gyp": "^10.0.1", + "ps-list": "^6.0.0", + "typescript": "^3.8.3" } } \ No newline at end of file diff --git a/scripts/post-install.js b/scripts/post-install.js index 745fbdbef..d192504f0 100644 --- a/scripts/post-install.js +++ b/scripts/post-install.js @@ -1,8 +1,12 @@ -var fs = require('fs'); -var path = require('path'); +//@ts-check -var RELEASE_DIR = path.join(__dirname, '..', 'build', 'Release'); -var BUILD_FILES = [ +const { execSync } = require('child_process'); +const fs = require('fs'); +const os = require('os'); +const path = require('path'); + +const RELEASE_DIR = path.join(__dirname, '../build/Release'); +const BUILD_FILES = [ path.join(RELEASE_DIR, 'conpty.node'), path.join(RELEASE_DIR, 'conpty.pdb'), path.join(RELEASE_DIR, 'conpty_console_list.node'), @@ -15,14 +19,18 @@ var BUILD_FILES = [ path.join(RELEASE_DIR, 'winpty.dll'), path.join(RELEASE_DIR, 'winpty.pdb') ]; +const CONPTY_DIR = path.join(__dirname, '../third_party/conpty'); +const CONPTY_SUPPORTED_ARCH = ['x64', 'arm64']; + +console.log('\x1b[32m> Cleaning release folder...\x1b[0m'); -cleanFolderRecursive = function(folder) { +function cleanFolderRecursive(folder) { var files = []; - if( fs.existsSync(folder) ) { + if (fs.existsSync(folder)) { files = fs.readdirSync(folder); files.forEach(function(file,index) { var curPath = path.join(folder, file); - if(fs.lstatSync(curPath).isDirectory()) { // recurse + if (fs.lstatSync(curPath).isDirectory()) { // recurse cleanFolderRecursive(curPath); fs.rmdirSync(curPath); } else if (BUILD_FILES.indexOf(curPath) < 0){ // delete file @@ -36,7 +44,40 @@ try { cleanFolderRecursive(RELEASE_DIR); } catch(e) { console.log(e); - //process.exit(1); -} finally { - process.exit(0); + process.exit(1); } + +console.log(`\x1b[32m> Moving conpty.dll...\x1b[0m`); +if (os.platform() !== 'win32') { + console.log(' SKIPPED (not Windows)'); +} else { + let windowsArch; + if (process.env.npm_config_arch) { + windowsArch = process.env.npm_config_arch; + console.log(` Using $npm_config_arch: ${windowsArch}`); + } else { + windowsArch = os.arch(); + console.log(` Using os.arch(): ${windowsArch}`); + } + + if (!CONPTY_SUPPORTED_ARCH.includes(windowsArch)) { + console.log(` SKIPPED (unsupported architecture ${windowsArch})`); + } else { + const versionFolder = fs.readdirSync(CONPTY_DIR)[0]; + console.log(` Found version ${versionFolder}`); + const sourceFolder = path.join(CONPTY_DIR, versionFolder, `win10-${windowsArch}`); + const destFolder = path.join(RELEASE_DIR, 'conpty'); + fs.mkdirSync(destFolder, { recursive: true }); + for (const file of ['conpty.dll', 'OpenConsole.exe']) { + const sourceFile = path.join(sourceFolder, file); + const destFile = path.join(destFolder, file); + console.log(` Copying ${sourceFile} -> ${destFile}`); + fs.copyFileSync(sourceFile, destFile); + } + } +} + +console.log(`\x1b[32m> Generating compile_commands.json...\x1b[0m`); +execSync('npx node-gyp configure -- -f compile_commands_json'); + +process.exit(0); diff --git a/src/interfaces.ts b/src/interfaces.ts index c05031f81..207bf15d5 100644 --- a/src/interfaces.ts +++ b/src/interfaces.ts @@ -119,6 +119,7 @@ export interface IPtyForkOptions extends IBasePtyForkOptions { export interface IWindowsPtyForkOptions extends IBasePtyForkOptions { useConpty?: boolean; + useConptyDll?: boolean; conptyInheritCursor?: boolean; } diff --git a/src/native.d.ts b/src/native.d.ts index 2ba107699..973aca57d 100644 --- a/src/native.d.ts +++ b/src/native.d.ts @@ -3,11 +3,11 @@ */ interface IConptyNative { - startProcess(file: string, cols: number, rows: number, debug: boolean, pipeName: string, conptyInheritCursor: boolean): IConptyProcess; + startProcess(file: string, cols: number, rows: number, debug: boolean, pipeName: string, conptyInheritCursor: boolean, useConptyDll: boolean): IConptyProcess; connect(ptyId: number, commandLine: string, cwd: string, env: string[], onExitCallback: (exitCode: number) => void): { pid: number }; - resize(ptyId: number, cols: number, rows: number): void; - clear(ptyId: number): void; - kill(ptyId: number): void; + resize(ptyId: number, cols: number, rows: number, useConptyDll: boolean): void; + clear(ptyId: number, useConptyDll: boolean): void; + kill(ptyId: number, useConptyDll: boolean): void; } interface IWinptyNative { diff --git a/src/unix/pty.cc b/src/unix/pty.cc index 309d38f68..2c99536bd 100644 --- a/src/unix/pty.cc +++ b/src/unix/pty.cc @@ -17,11 +17,14 @@ * Includes */ -#include +#define NODE_ADDON_API_DISABLE_DEPRECATED +#include +#include #include #include #include #include +#include #include #include @@ -38,6 +41,7 @@ #include #elif defined(__FreeBSD__) #include +#include #endif /* Some platforms name VWERASE and VDISCARD differently */ @@ -99,27 +103,120 @@ int pthread_fchdir_np(int fd) API_AVAILABLE(macosx(10.12)); }) #endif -/** - * Structs - */ - -struct pty_baton { - Nan::Persistent cb; - int exit_code; - int signal_code; - pid_t pid; - uv_async_t async; - uv_thread_t tid; +struct ExitEvent { + int exit_code = 0, signal_code = 0; }; +void SetupExitCallback(Napi::Env env, Napi::Function cb, pid_t pid) { + std::thread *th = new std::thread; + // Don't use Napi::AsyncWorker which is limited by UV_THREADPOOL_SIZE. + auto tsfn = Napi::ThreadSafeFunction::New( + env, + cb, // JavaScript function called asynchronously + "SetupExitCallback_resource", // Name + 0, // Unlimited queue + 1, // Only one thread will use this initially + [th](Napi::Env) { // Finalizer used to clean threads up + th->join(); + delete th; + }); + *th = std::thread([tsfn = std::move(tsfn), pid] { + auto callback = [](Napi::Env env, Napi::Function cb, ExitEvent *exit_event) { + cb.Call({Napi::Number::New(env, exit_event->exit_code), + Napi::Number::New(env, exit_event->signal_code)}); + delete exit_event; + }; + + int ret; + int stat_loc; +#if defined(__APPLE__) + // Based on + // https://source.chromium.org/chromium/chromium/src/+/main:base/process/kill_mac.cc;l=35-69? + int kq = HANDLE_EINTR(kqueue()); + struct kevent change = {0}; + EV_SET(&change, pid, EVFILT_PROC, EV_ADD, NOTE_EXIT, 0, NULL); + ret = HANDLE_EINTR(kevent(kq, &change, 1, NULL, 0, NULL)); + if (ret == -1) { + if (errno == ESRCH) { + // At this point, one of the following has occurred: + // 1. The process has died but has not yet been reaped. + // 2. The process has died and has already been reaped. + // 3. The process is in the process of dying. It's no longer + // kqueueable, but it may not be waitable yet either. Mark calls + // this case the "zombie death race". + ret = HANDLE_EINTR(waitpid(pid, &stat_loc, WNOHANG)); + if (ret == 0) { + ret = kill(pid, SIGKILL); + if (ret != -1) { + HANDLE_EINTR(waitpid(pid, &stat_loc, 0)); + } + } + } + } else { + struct kevent event = {0}; + ret = HANDLE_EINTR(kevent(kq, NULL, 0, &event, 1, NULL)); + if (ret == 1) { + if ((event.fflags & NOTE_EXIT) && + (event.ident == static_cast(pid))) { + // The process is dead or dying. This won't block for long, if at + // all. + HANDLE_EINTR(waitpid(pid, &stat_loc, 0)); + } + } + } +#else + while (true) { + errno = 0; + if ((ret = waitpid(pid, &stat_loc, 0)) != pid) { + if (ret == -1 && errno == EINTR) { + continue; + } + if (ret == -1 && errno == ECHILD) { + // XXX node v0.8.x seems to have this problem. + // waitpid is already handled elsewhere. + ; + } else { + assert(false); + } + } + break; + } +#endif + ExitEvent *exit_event = new ExitEvent; + if (WIFEXITED(stat_loc)) { + exit_event->exit_code = WEXITSTATUS(stat_loc); // errno? + } + if (WIFSIGNALED(stat_loc)) { + exit_event->signal_code = WTERMSIG(stat_loc); + } + auto status = tsfn.BlockingCall(exit_event, callback); // In main thread + switch (status) { + case napi_closing: + break; + + case napi_queue_full: + Napi::Error::Fatal("SetupExitCallback", "Queue was full"); + + case napi_ok: + if (tsfn.Release() != napi_ok) { + Napi::Error::Fatal("SetupExitCallback", "ThreadSafeFunction.Release() failed"); + } + break; + + default: + Napi::Error::Fatal("SetupExitCallback", "ThreadSafeFunction.BlockingCall() failed"); + } + }); +} + /** * Methods */ -NAN_METHOD(PtyFork); -NAN_METHOD(PtyOpen); -NAN_METHOD(PtyResize); -NAN_METHOD(PtyGetProc); +Napi::Value PtyFork(const Napi::CallbackInfo& info); +Napi::Value PtyOpen(const Napi::CallbackInfo& info); +Napi::Value PtyResize(const Napi::CallbackInfo& info); +Napi::Value PtyGetProc(const Napi::CallbackInfo& info); /** * Functions @@ -136,15 +233,6 @@ static char * pty_getproc(int, char *); #endif -static void -pty_waitpid(void *); - -static void -pty_after_waitpid(uv_async_t *); - -static void -pty_after_close(uv_handle_t *); - #if defined(__APPLE__) || defined(__OpenBSD__) static void pty_posix_spawn(char** argv, char** env, @@ -155,62 +243,75 @@ pty_posix_spawn(char** argv, char** env, int* err); #endif -NAN_METHOD(PtyFork) { - Nan::HandleScope scope; +struct DelBuf { + int len; + DelBuf(int len) : len(len) {} + void operator()(char **p) { + if (p == nullptr) + return; + for (int i = 0; i < len; i++) + free(p[i]); + delete[] p; + } +}; + +Napi::Value PtyFork(const Napi::CallbackInfo& info) { + Napi::Env napiEnv(info.Env()); + Napi::HandleScope scope(napiEnv); if (info.Length() != 11 || - !info[0]->IsString() || - !info[1]->IsArray() || - !info[2]->IsArray() || - !info[3]->IsString() || - !info[4]->IsNumber() || - !info[5]->IsNumber() || - !info[6]->IsNumber() || - !info[7]->IsNumber() || - !info[8]->IsBoolean() || - !info[9]->IsString() || - !info[10]->IsFunction()) { - return Nan::ThrowError( - "Usage: pty.fork(file, args, env, cwd, cols, rows, uid, gid, utf8, helperPath, onexit)"); + !info[0].IsString() || + !info[1].IsArray() || + !info[2].IsArray() || + !info[3].IsString() || + !info[4].IsNumber() || + !info[5].IsNumber() || + !info[6].IsNumber() || + !info[7].IsNumber() || + !info[8].IsBoolean() || + !info[9].IsString() || + !info[10].IsFunction()) { + throw Napi::Error::New(napiEnv, "Usage: pty.fork(file, args, env, cwd, cols, rows, uid, gid, utf8, helperPath, onexit)"); } // file - Nan::Utf8String file(info[0]); + std::string file = info[0].As(); // args - v8::Local argv_ = v8::Local::Cast(info[1]); + Napi::Array argv_ = info[1].As(); // env - v8::Local env_ = v8::Local::Cast(info[2]); - int envc = env_->Length(); - char **env = new char*[envc+1]; + Napi::Array env_ = info[2].As(); + int envc = env_.Length(); + std::unique_ptr env_unique_ptr(new char *[envc + 1], DelBuf(envc + 1)); + char **env = env_unique_ptr.get(); env[envc] = NULL; for (int i = 0; i < envc; i++) { - Nan::Utf8String pair(Nan::Get(env_, i).ToLocalChecked()); - env[i] = strdup(*pair); + std::string pair = env_.Get(i).As(); + env[i] = strdup(pair.c_str()); } // cwd - Nan::Utf8String cwd_(info[3]); + std::string cwd_ = info[3].As(); // size struct winsize winp; - winp.ws_col = info[4]->IntegerValue(Nan::GetCurrentContext()).FromJust(); - winp.ws_row = info[5]->IntegerValue(Nan::GetCurrentContext()).FromJust(); + winp.ws_col = info[4].As().Int32Value(); + winp.ws_row = info[5].As().Int32Value(); winp.ws_xpixel = 0; winp.ws_ypixel = 0; #if !defined(__APPLE__) // uid / gid - int uid = info[6]->IntegerValue(Nan::GetCurrentContext()).FromJust(); - int gid = info[7]->IntegerValue(Nan::GetCurrentContext()).FromJust(); + int uid = info[6].As().Int32Value(); + int gid = info[7].As().Int32Value(); #endif // termios struct termios t = termios(); struct termios *term = &t; term->c_iflag = ICRNL | IXON | IXANY | IMAXBEL | BRKINT; - if (Nan::To(info[8]).FromJust()) { + if (info[8].As().Value()) { #if defined(IUTF8) term->c_iflag |= IUTF8; #endif @@ -245,45 +346,44 @@ NAN_METHOD(PtyFork) { cfsetospeed(term, B38400); // helperPath - Nan::Utf8String helper_path(info[9]); + std::string helper_path = info[9].As(); pid_t pid; int master; #if defined(__APPLE__) - int argc = argv_->Length(); + int argc = argv_.Length(); int argl = argc + 4; - char **argv = new char*[argl]; - argv[0] = strdup(*helper_path); - argv[1] = strdup(*cwd_); - argv[2] = strdup(*file); + std::unique_ptr argv_unique_ptr(new char *[argl], DelBuf(argl)); + char **argv = argv_unique_ptr.get(); + argv[0] = strdup(helper_path.c_str()); + argv[1] = strdup(cwd_.c_str()); + argv[2] = strdup(file.c_str()); argv[argl - 1] = NULL; for (int i = 0; i < argc; i++) { - Nan::Utf8String arg(Nan::Get(argv_, i).ToLocalChecked()); - argv[i + 3] = strdup(*arg); + std::string arg = argv_.Get(i).As(); + argv[i + 3] = strdup(arg.c_str()); } int err = -1; pty_posix_spawn(argv, env, term, &winp, &master, &pid, &err); if (err != 0) { - Nan::ThrowError("posix_spawnp failed."); - goto done; + throw Napi::Error::New(napiEnv, "posix_spawnp failed."); } if (pty_nonblock(master) == -1) { - Nan::ThrowError("Could not set master fd to nonblocking."); - goto done; + throw Napi::Error::New(napiEnv, "Could not set master fd to nonblocking."); } #else - int argc = argv_->Length(); + int argc = argv_.Length(); int argl = argc + 2; - char **argv = new char*[argl]; - argv[0] = strdup(*file); + std::unique_ptr argv_unique_ptr(new char *[argl], DelBuf(argl)); + char** argv = argv_unique_ptr.get(); + argv[0] = strdup(file.c_str()); argv[argl - 1] = NULL; for (int i = 0; i < argc; i++) { - Nan::Utf8String arg(Nan::Get(argv_, i).ToLocalChecked()); - argv[i + 1] = strdup(*arg); + std::string arg = argv_.Get(i).As(); + argv[i + 1] = strdup(arg.c_str()); } - char* cwd = strdup(*cwd_); sigset_t newmask, oldmask; struct sigaction sig_action; // temporarily block all signals @@ -303,14 +403,6 @@ NAN_METHOD(PtyFork) { for (int i = 0 ; i < NSIG ; i++) { // NSIG is a macro for all signals + 1 sigaction(i, &sig_action, NULL); } - } else { - for (int i = 0; i < argl; i++) free(argv[i]); - delete[] argv; - - for (int i = 0; i < envc; i++) free(env[i]); - delete[] env; - - free(cwd); } // reenable signals @@ -318,11 +410,10 @@ NAN_METHOD(PtyFork) { switch (pid) { case -1: - Nan::ThrowError("forkpty(3) failed."); - goto done; + throw Napi::Error::New(napiEnv, "forkpty(3) failed."); case 0: - if (strlen(cwd)) { - if (chdir(cwd) == -1) { + if (strlen(cwd_.c_str())) { + if (chdir(cwd_.c_str()) == -1) { perror("chdir(2) failed."); _exit(1); } @@ -349,62 +440,36 @@ NAN_METHOD(PtyFork) { } default: if (pty_nonblock(master) == -1) { - Nan::ThrowError("Could not set master fd to nonblocking."); - goto done; + throw Napi::Error::New(napiEnv, "Could not set master fd to nonblocking."); } } #endif - { - v8::Local obj = Nan::New(); - Nan::Set(obj, - Nan::New("fd").ToLocalChecked(), - Nan::New(master)); - Nan::Set(obj, - Nan::New("pid").ToLocalChecked(), - Nan::New(pid)); - Nan::Set(obj, - Nan::New("pty").ToLocalChecked(), - Nan::New(ptsname(master)).ToLocalChecked()); - - pty_baton *baton = new pty_baton(); - baton->exit_code = 0; - baton->signal_code = 0; - baton->cb.Reset(v8::Local::Cast(info[10])); - baton->pid = pid; - baton->async.data = baton; + Napi::Object obj = Napi::Object::New(napiEnv); + obj.Set("fd", Napi::Number::New(napiEnv, master)); + obj.Set("pid", Napi::Number::New(napiEnv, pid)); + obj.Set("pty", Napi::String::New(napiEnv, ptsname(master))); - uv_async_init(uv_default_loop(), &baton->async, pty_after_waitpid); - - uv_thread_create(&baton->tid, pty_waitpid, static_cast(baton)); - - return info.GetReturnValue().Set(obj); - } - -done: -#if defined(__APPLE__) - for (int i = 0; i < argl; i++) free(argv[i]); - delete[] argv; - - for (int i = 0; i < envc; i++) free(env[i]); - delete[] env; -#endif - return info.GetReturnValue().SetUndefined(); + // Set up process exit callback. + Napi::Function cb = info[10].As(); + SetupExitCallback(napiEnv, cb, pid); + return obj; } -NAN_METHOD(PtyOpen) { - Nan::HandleScope scope; +Napi::Value PtyOpen(const Napi::CallbackInfo& info) { + Napi::Env env(info.Env()); + Napi::HandleScope scope(env); if (info.Length() != 2 || - !info[0]->IsNumber() || - !info[1]->IsNumber()) { - return Nan::ThrowError("Usage: pty.open(cols, rows)"); + !info[0].IsNumber() || + !info[1].IsNumber()) { + throw Napi::Error::New(env, "Usage: pty.open(cols, rows)"); } // size struct winsize winp; - winp.ws_col = info[0]->IntegerValue(Nan::GetCurrentContext()).FromJust(); - winp.ws_row = info[1]->IntegerValue(Nan::GetCurrentContext()).FromJust(); + winp.ws_col = info[0].As().Int32Value(); + winp.ws_row = info[1].As().Int32Value(); winp.ws_xpixel = 0; winp.ws_ypixel = 0; @@ -413,98 +478,98 @@ NAN_METHOD(PtyOpen) { int ret = openpty(&master, &slave, nullptr, NULL, static_cast(&winp)); if (ret == -1) { - return Nan::ThrowError("openpty(3) failed."); + throw Napi::Error::New(env, "openpty(3) failed."); } if (pty_nonblock(master) == -1) { - return Nan::ThrowError("Could not set master fd to nonblocking."); + throw Napi::Error::New(env, "Could not set master fd to nonblocking."); } if (pty_nonblock(slave) == -1) { - return Nan::ThrowError("Could not set slave fd to nonblocking."); + throw Napi::Error::New(env, "Could not set slave fd to nonblocking."); } - v8::Local obj = Nan::New(); - Nan::Set(obj, - Nan::New("master").ToLocalChecked(), - Nan::New(master)); - Nan::Set(obj, - Nan::New("slave").ToLocalChecked(), - Nan::New(slave)); - Nan::Set(obj, - Nan::New("pty").ToLocalChecked(), - Nan::New(ptsname(master)).ToLocalChecked()); + Napi::Object obj = Napi::Object::New(env); + obj.Set("master", Napi::Number::New(env, master)); + obj.Set("slave", Napi::Number::New(env, slave)); + obj.Set("pty", Napi::String::New(env, ptsname(master))); - return info.GetReturnValue().Set(obj); + return obj; } -NAN_METHOD(PtyResize) { - Nan::HandleScope scope; +Napi::Value PtyResize(const Napi::CallbackInfo& info) { + Napi::Env env(info.Env()); + Napi::HandleScope scope(env); if (info.Length() != 3 || - !info[0]->IsNumber() || - !info[1]->IsNumber() || - !info[2]->IsNumber()) { - return Nan::ThrowError("Usage: pty.resize(fd, cols, rows)"); + !info[0].IsNumber() || + !info[1].IsNumber() || + !info[2].IsNumber()) { + throw Napi::Error::New(env, "Usage: pty.resize(fd, cols, rows)"); } - int fd = info[0]->IntegerValue(Nan::GetCurrentContext()).FromJust(); + int fd = info[0].As().Int32Value(); struct winsize winp; - winp.ws_col = info[1]->IntegerValue(Nan::GetCurrentContext()).FromJust(); - winp.ws_row = info[2]->IntegerValue(Nan::GetCurrentContext()).FromJust(); + winp.ws_col = info[1].As().Int32Value(); + winp.ws_row = info[2].As().Int32Value(); winp.ws_xpixel = 0; winp.ws_ypixel = 0; if (ioctl(fd, TIOCSWINSZ, &winp) == -1) { switch (errno) { - case EBADF: return Nan::ThrowError("ioctl(2) failed, EBADF"); - case EFAULT: return Nan::ThrowError("ioctl(2) failed, EFAULT"); - case EINVAL: return Nan::ThrowError("ioctl(2) failed, EINVAL"); - case ENOTTY: return Nan::ThrowError("ioctl(2) failed, ENOTTY"); + case EBADF: + throw Napi::Error::New(env, "ioctl(2) failed, EBADF"); + case EFAULT: + throw Napi::Error::New(env, "ioctl(2) failed, EFAULT"); + case EINVAL: + throw Napi::Error::New(env, "ioctl(2) failed, EINVAL"); + case ENOTTY: + throw Napi::Error::New(env, "ioctl(2) failed, ENOTTY"); } - return Nan::ThrowError("ioctl(2) failed"); + throw Napi::Error::New(env, "ioctl(2) failed"); } - return info.GetReturnValue().SetUndefined(); + return env.Undefined(); } /** * Foreground Process Name */ -NAN_METHOD(PtyGetProc) { - Nan::HandleScope scope; +Napi::Value PtyGetProc(const Napi::CallbackInfo& info) { + Napi::Env env(info.Env()); + Napi::HandleScope scope(env); #if defined(__APPLE__) if (info.Length() != 1 || - !info[0]->IsNumber()) { - return Nan::ThrowError("Usage: pty.process(pid)"); + !info[0].IsNumber()) { + throw Napi::Error::New(env, "Usage: pty.process(pid)"); } - int fd = info[0]->IntegerValue(Nan::GetCurrentContext()).FromJust(); + int fd = info[0].As().Int32Value(); char *name = pty_getproc(fd); #else if (info.Length() != 2 || - !info[0]->IsNumber() || - !info[1]->IsString()) { - return Nan::ThrowError("Usage: pty.process(fd, tty)"); + !info[0].IsNumber() || + !info[1].IsString()) { + throw Napi::Error::New(env, "Usage: pty.process(fd, tty)"); } - int fd = info[0]->IntegerValue(Nan::GetCurrentContext()).FromJust(); + int fd = info[0].As().Int32Value(); - Nan::Utf8String tty_(info[1]); - char *tty = strdup(*tty_); + std::string tty_ = info[1].As(); + char *tty = strdup(tty_.c_str()); char *name = pty_getproc(fd, tty); free(tty); #endif if (name == NULL) { - return info.GetReturnValue().SetUndefined(); + return env.Undefined(); } - v8::Local name_ = Nan::New(name).ToLocalChecked(); + Napi::String name_ = Napi::String::New(env, name); free(name); - return info.GetReturnValue().Set(name_); + return name_; } /** @@ -518,114 +583,6 @@ pty_nonblock(int fd) { return fcntl(fd, F_SETFL, flags | O_NONBLOCK); } -/** - * pty_waitpid - * Wait for SIGCHLD to read exit status. - */ - -static void -pty_waitpid(void *data) { - int ret; - int stat_loc; - pty_baton *baton = static_cast(data); - errno = 0; -#if defined(__APPLE__) - // Based on - // https://source.chromium.org/chromium/chromium/src/+/main:base/process/kill_mac.cc;l=35-69? - int kq = HANDLE_EINTR(kqueue()); - struct kevent change = {0}; - EV_SET(&change, baton->pid, EVFILT_PROC, EV_ADD, NOTE_EXIT, 0, NULL); - ret = HANDLE_EINTR(kevent(kq, &change, 1, NULL, 0, NULL)); - if (ret == -1) { - if (errno == ESRCH) { - // At this point, one of the following has occurred: - // 1. The process has died but has not yet been reaped. - // 2. The process has died and has already been reaped. - // 3. The process is in the process of dying. It's no longer - // kqueueable, but it may not be waitable yet either. Mark calls - // this case the "zombie death race". - ret = HANDLE_EINTR(waitpid(baton->pid, &stat_loc, WNOHANG)); - if (ret == 0) { - ret = kill(baton->pid, SIGKILL); - if (ret != -1) { - HANDLE_EINTR(waitpid(baton->pid, &stat_loc, 0)); - } - } - } - } else { - struct kevent event = {0}; - ret = HANDLE_EINTR(kevent(kq, NULL, 0, &event, 1, NULL)); - if (ret == 1) { - if ((event.fflags & NOTE_EXIT) && - (event.ident == static_cast(baton->pid))) { - // The process is dead or dying. This won't block for long, if at - // all. - HANDLE_EINTR(waitpid(baton->pid, &stat_loc, 0)); - } - } - } -#else - if ((ret = waitpid(baton->pid, &stat_loc, 0)) != baton->pid) { - if (ret == -1 && errno == EINTR) { - return pty_waitpid(baton); - } - if (ret == -1 && errno == ECHILD) { - // XXX node v0.8.x seems to have this problem. - // waitpid is already handled elsewhere. - ; - } else { - assert(false); - } - } -#endif - - if (WIFEXITED(stat_loc)) { - baton->exit_code = WEXITSTATUS(stat_loc); // errno? - } - - if (WIFSIGNALED(stat_loc)) { - baton->signal_code = WTERMSIG(stat_loc); - } - - uv_async_send(&baton->async); -} - -/** - * pty_after_waitpid - * Callback after exit status has been read. - */ - -static void -pty_after_waitpid(uv_async_t *async) { - Nan::HandleScope scope; - pty_baton *baton = static_cast(async->data); - - v8::Local argv[] = { - Nan::New(baton->exit_code), - Nan::New(baton->signal_code), - }; - - v8::Local cb = Nan::New(baton->cb); - baton->cb.Reset(); - memset(&baton->cb, -1, sizeof(baton->cb)); - Nan::AsyncResource resource("pty_after_waitpid"); - resource.runInAsyncScope(Nan::GetCurrentContext()->Global(), cb, 2, argv); - - uv_close((uv_handle_t *)async, pty_after_close); -} - -/** - * pty_after_close - * uv_close() callback - free handle data - */ - -static void -pty_after_close(uv_handle_t *handle) { - uv_async_t *async = (uv_async_t *)handle; - pty_baton *baton = static_cast(async->data); - delete baton; -} - /** * pty_getproc * Taken from tmux. @@ -828,12 +785,12 @@ pty_posix_spawn(char** argv, char** env, * Init */ -NAN_MODULE_INIT(init) { - Nan::HandleScope scope; - Nan::Export(target, "fork", PtyFork); - Nan::Export(target, "open", PtyOpen); - Nan::Export(target, "resize", PtyResize); - Nan::Export(target, "process", PtyGetProc); +Napi::Object init(Napi::Env env, Napi::Object exports) { + exports.Set("fork", Napi::Function::New(env, PtyFork)); + exports.Set("open", Napi::Function::New(env, PtyOpen)); + exports.Set("resize", Napi::Function::New(env, PtyResize)); + exports.Set("process", Napi::Function::New(env, PtyGetProc)); + return exports; } -NODE_MODULE(pty, init) +NODE_API_MODULE(NODE_GYP_MODULE_NAME, init) diff --git a/src/unixTerminal.ts b/src/unixTerminal.ts index d3ef695e6..0084faeca 100644 --- a/src/unixTerminal.ts +++ b/src/unixTerminal.ts @@ -5,6 +5,7 @@ */ import * as net from 'net'; import * as path from 'path'; +import * as tty from 'tty'; import { Terminal, DEFAULT_COLS, DEFAULT_ROWS } from './terminal'; import { IProcessEnv, IPtyForkOptions, IPtyOpenOptions } from './interfaces'; import { ArgvOrCommandLine } from './types'; @@ -124,7 +125,7 @@ export class UnixTerminal extends Terminal { // fork const term = pty.fork(file, args, parsedEnv, cwd, this._cols, this._rows, uid, gid, (encoding === 'utf8'), helperPath, onexit); - this._socket = new PipeSocket(term.fd); + this._socket = new tty.ReadStream(term.fd); if (encoding !== null) { this._socket.setEncoding(encoding as BufferEncoding); } @@ -214,13 +215,13 @@ export class UnixTerminal extends Terminal { // open const term: IUnixOpenProcess = pty.open(cols, rows); - self._master = new PipeSocket(term.master); + self._master = new tty.ReadStream(term.master); if (encoding !== null) { self._master.setEncoding(encoding as BufferEncoding); } self._master.resume(); - self._slave = new PipeSocket(term.slave); + self._slave = new tty.ReadStream(term.slave); if (encoding !== null) { self._slave.setEncoding(encoding as BufferEncoding); } @@ -315,18 +316,3 @@ export class UnixTerminal extends Terminal { delete env['LINES']; } } - -/** - * Wraps net.Socket to force the handle type "PIPE" by temporarily overwriting - * tty_wrap.guessHandleType. - * See: https://github.com/chjj/pty.js/issues/103 - */ -class PipeSocket extends net.Socket { - constructor(fd: number) { - const pipeWrap = (process).binding('pipe_wrap'); // tslint:disable-line - // @types/node has fd as string? https://github.com/DefinitelyTyped/DefinitelyTyped/pull/18275 - const handle = new pipeWrap.Pipe(pipeWrap.constants.SOCKET); - handle.open(fd); - super({ handle }); - } -} diff --git a/src/win/conpty.cc b/src/win/conpty.cc index f614cc4af..b4b33d10b 100644 --- a/src/win/conpty.cc +++ b/src/win/conpty.cc @@ -8,23 +8,21 @@ * with pseudo-terminal file descriptors. */ -// node versions lower than 10 define this as 0x502 which disables many of the definitions needed to compile -#include -#if NODE_MODULE_VERSION <= 57 - #define _WIN32_WINNT 0x600 -#endif +#define _WIN32_WINNT 0x600 -#include -#include +#define NODE_ADDON_API_DISABLE_DEPRECATED +#include +#include #include // PathCombine, PathIsRelative #include +#include #include +#include #include #include #include #include "path_util.h" - -extern "C" void init(v8::Local); +#include "conpty.h" // Taken from the RS5 Windows SDK, but redefined here in case we're targeting <= 17134 #ifndef PROC_THREAD_ATTRIBUTE_PSEUDOCONSOLE @@ -46,10 +44,6 @@ struct pty_baton { HPCON hpc; HANDLE hShell; - HANDLE hWait; - Nan::Callback cb; - uv_async_t async; - uv_thread_t tid; pty_baton(int _id, HANDLE _hIn, HANDLE _hOut, HPCON _hpc) : id(_id), hIn(_hIn), hOut(_hOut), hpc(_hpc) {}; }; @@ -67,19 +61,78 @@ static pty_baton* get_pty_baton(int id) { return nullptr; } -template -std::vector vectorFromString(const std::basic_string &str) { - return std::vector(str.begin(), str.end()); +static bool remove_pty_baton(int id) { + for (size_t i = 0; i < ptyHandles.size(); ++i) { + pty_baton* ptyHandle = ptyHandles[i]; + if (ptyHandle->id == id) { + ptyHandles.erase(ptyHandles.begin() + i); + ptyHandle = nullptr; + return true; + } + } + return false; +} + +struct ExitEvent { + int exit_code = 0; +}; + +void SetupExitCallback(Napi::Env env, Napi::Function cb, pty_baton* baton) { + std::thread *th = new std::thread; + // Don't use Napi::AsyncWorker which is limited by UV_THREADPOOL_SIZE. + auto tsfn = Napi::ThreadSafeFunction::New( + env, + cb, // JavaScript function called asynchronously + "SetupExitCallback_resource", // Name + 0, // Unlimited queue + 1, // Only one thread will use this initially + [th](Napi::Env) { // Finalizer used to clean threads up + th->join(); + delete th; + }); + *th = std::thread([tsfn = std::move(tsfn), baton] { + auto callback = [](Napi::Env env, Napi::Function cb, ExitEvent *exit_event) { + cb.Call({Napi::Number::New(env, exit_event->exit_code)}); + delete exit_event; + }; + + ExitEvent *exit_event = new ExitEvent; + // Wait for process to complete. + WaitForSingleObject(baton->hShell, INFINITE); + // Get process exit code. + GetExitCodeProcess(baton->hShell, (LPDWORD)(&exit_event->exit_code)); + // Clean up handles + // Calling DisconnectNamedPipes here or in PtyKill results in a crash, + // ref https://github.com/microsoft/node-pty/issues/512, + // so we only call CloseHandle for now. + CloseHandle(baton->hIn); + CloseHandle(baton->hOut); + + auto status = tsfn.BlockingCall(exit_event, callback); // In main thread + switch (status) { + case napi_closing: + break; + + case napi_queue_full: + Napi::Error::Fatal("SetupExitCallback", "Queue was full"); + + case napi_ok: + if (tsfn.Release() != napi_ok) { + Napi::Error::Fatal("SetupExitCallback", "ThreadSafeFunction.Release() failed"); + } + break; + + default: + Napi::Error::Fatal("SetupExitCallback", "ThreadSafeFunction.BlockingCall() failed"); + } + }); } -void throwNanError(const Nan::FunctionCallbackInfo* info, const char* text, const bool getLastError) { +Napi::Error errorWithCode(const Napi::CallbackInfo& info, const char* text) { std::stringstream errorText; errorText << text; - if (getLastError) { - errorText << ", error code: " << GetLastError(); - } - Nan::ThrowError(errorText.str().c_str()); - (*info).GetReturnValue().SetUndefined(); + errorText << ", error code: " << GetLastError(); + return Napi::Error::New(info.Env(), errorText.str()); } // Returns a new server named pipe. It has not yet been connected. @@ -111,20 +164,52 @@ bool createDataServerPipe(bool write, return *hServer != INVALID_HANDLE_VALUE; } -HRESULT CreateNamedPipesAndPseudoConsole(COORD size, +HANDLE LoadConptyDll(const Napi::CallbackInfo& info, + const bool useConptyDll) +{ + if (!useConptyDll) { + return LoadLibraryExW(L"kernel32.dll", 0, 0); + } + wchar_t currentDir[MAX_PATH]; + HMODULE hModule = GetModuleHandleA("conpty.node"); + if (hModule == NULL) { + throw errorWithCode(info, "Failed to get conpty.node module handle"); + } + DWORD result = GetModuleFileNameW(hModule, currentDir, MAX_PATH); + if (result == 0) { + throw errorWithCode(info, "Failed to get conpty.node module file name"); + } + PathRemoveFileSpecW(currentDir); + wchar_t conptyDllPath[MAX_PATH]; + PathCombineW(conptyDllPath, currentDir, L"conpty\\conpty.dll"); + if (!path_util::file_exists(conptyDllPath)) { + std::wstring errorMessage = L"Cannot find conpty.dll at " + std::wstring(conptyDllPath); + std::string errorMessageStr = path_util::wstring_to_string(errorMessage); + throw errorWithCode(info, errorMessageStr.c_str()); + } + + return LoadLibraryW(conptyDllPath); +} + +HRESULT CreateNamedPipesAndPseudoConsole(const Napi::CallbackInfo& info, + COORD size, DWORD dwFlags, HANDLE *phInput, HANDLE *phOutput, HPCON* phPC, std::wstring& inName, std::wstring& outName, - const std::wstring& pipeName) + const std::wstring& pipeName, + const bool useConptyDll) { - HANDLE hLibrary = LoadLibraryExW(L"kernel32.dll", 0, 0); + HANDLE hLibrary = LoadConptyDll(info, useConptyDll); + DWORD error = GetLastError(); bool fLoadedDll = hLibrary != nullptr; if (fLoadedDll) { - PFNCREATEPSEUDOCONSOLE const pfnCreate = (PFNCREATEPSEUDOCONSOLE)GetProcAddress((HMODULE)hLibrary, "CreatePseudoConsole"); + PFNCREATEPSEUDOCONSOLE const pfnCreate = (PFNCREATEPSEUDOCONSOLE)GetProcAddress( + (HMODULE)hLibrary, + useConptyDll ? "ConptyCreatePseudoConsole" : "CreatePseudoConsole"); if (pfnCreate) { if (phPC == NULL || phInput == NULL || phOutput == NULL) @@ -151,6 +236,8 @@ HRESULT CreateNamedPipesAndPseudoConsole(COORD size, // We should fall back to winpty in this case. return HRESULT_FROM_WIN32(GetLastError()); } + } else { + throw errorWithCode(info, "Failed to load conpty.dll"); } // Failed to find kernel32. This is realy unlikely - honestly no idea how @@ -158,32 +245,34 @@ HRESULT CreateNamedPipesAndPseudoConsole(COORD size, return HRESULT_FROM_WIN32(GetLastError()); } -static NAN_METHOD(PtyStartProcess) { - Nan::HandleScope scope; +static Napi::Value PtyStartProcess(const Napi::CallbackInfo& info) { + Napi::Env env(info.Env()); + Napi::HandleScope scope(env); - v8::Local marshal; + Napi::Object marshal; std::wstring inName, outName; BOOL fSuccess = FALSE; std::unique_ptr mutableCommandline; PROCESS_INFORMATION _piClient{}; - if (info.Length() != 6 || - !info[0]->IsString() || - !info[1]->IsNumber() || - !info[2]->IsNumber() || - !info[3]->IsBoolean() || - !info[4]->IsString() || - !info[5]->IsBoolean()) { - Nan::ThrowError("Usage: pty.startProcess(file, cols, rows, debug, pipeName, inheritCursor)"); - return; + if (info.Length() != 7 || + !info[0].IsString() || + !info[1].IsNumber() || + !info[2].IsNumber() || + !info[3].IsBoolean() || + !info[4].IsString() || + !info[5].IsBoolean() || + !info[6].IsBoolean()) { + throw Napi::Error::New(env, "Usage: pty.startProcess(file, cols, rows, debug, pipeName, inheritCursor, useConptyDll)"); } - const std::wstring filename(path_util::to_wstring(Nan::Utf8String(info[0]))); - const SHORT cols = static_cast(info[1]->Uint32Value(Nan::GetCurrentContext()).FromJust()); - const SHORT rows = static_cast(info[2]->Uint32Value(Nan::GetCurrentContext()).FromJust()); - const bool debug = Nan::To(info[3]).FromJust(); - const std::wstring pipeName(path_util::to_wstring(Nan::Utf8String(info[4]))); - const bool inheritCursor = Nan::To(info[5]).FromJust(); + const std::wstring filename(path_util::to_wstring(info[0].As())); + const SHORT cols = static_cast(info[1].As().Uint32Value()); + const SHORT rows = static_cast(info[2].As().Uint32Value()); + const bool debug = info[3].As().Value(); + const std::wstring pipeName(path_util::to_wstring(info[4].As())); + const bool inheritCursor = info[5].As().Value(); + const bool useConptyDll = info[6].As().Value(); // use environment 'Path' variable to determine location of // the relative path that we have recieved (e.g cmd.exe) @@ -195,88 +284,49 @@ static NAN_METHOD(PtyStartProcess) { } if (shellpath.empty() || !path_util::file_exists(shellpath)) { - std::wstringstream why; - why << "File not found: " << shellpath; - Nan::ThrowError(path_util::from_wstring(why.str().c_str())); - return; + std::string why; + why += "File not found: "; + why += path_util::wstring_to_string(shellpath); + throw Napi::Error::New(env, why); } HANDLE hIn, hOut; HPCON hpc; - HRESULT hr = CreateNamedPipesAndPseudoConsole({cols, rows}, inheritCursor ? 1/*PSEUDOCONSOLE_INHERIT_CURSOR*/ : 0, &hIn, &hOut, &hpc, inName, outName, pipeName); + HRESULT hr = CreateNamedPipesAndPseudoConsole(info, {cols, rows}, inheritCursor ? 1/*PSEUDOCONSOLE_INHERIT_CURSOR*/ : 0, &hIn, &hOut, &hpc, inName, outName, pipeName, useConptyDll); // Restore default handling of ctrl+c SetConsoleCtrlHandler(NULL, FALSE); // Set return values - marshal = Nan::New(); + marshal = Napi::Object::New(env); if (SUCCEEDED(hr)) { // We were able to instantiate a conpty const int ptyId = InterlockedIncrement(&ptyCounter); - Nan::Set(marshal, Nan::New("pty").ToLocalChecked(), Nan::New(ptyId)); + marshal.Set("pty", Napi::Number::New(env, ptyId)); ptyHandles.insert(ptyHandles.end(), new pty_baton(ptyId, hIn, hOut, hpc)); } else { - Nan::ThrowError("Cannot launch conpty"); - return; + throw Napi::Error::New(env, "Cannot launch conpty"); } - std::string inNameStr(path_util::from_wstring(inName.c_str())); + std::string inNameStr = path_util::wstring_to_string(inName); if (inNameStr.empty()) { - Nan::ThrowError("Failed to initialize conpty conin"); - return; + throw Napi::Error::New(env, "Failed to initialize conpty conin"); } - std::string outNameStr(path_util::from_wstring(outName.c_str())); + std::string outNameStr = path_util::wstring_to_string(outName); if (outNameStr.empty()) { - Nan::ThrowError("Failed to initialize conpty conout"); - return; + throw Napi::Error::New(env, "Failed to initialize conpty conout"); } - Nan::Set(marshal, Nan::New("fd").ToLocalChecked(), Nan::New(-1)); - Nan::Set(marshal, Nan::New("conin").ToLocalChecked(), Nan::New(inNameStr).ToLocalChecked()); - Nan::Set(marshal, Nan::New("conout").ToLocalChecked(), Nan::New(outNameStr).ToLocalChecked()); - info.GetReturnValue().Set(marshal); -} - -VOID CALLBACK OnProcessExitWinEvent( - _In_ PVOID context, - _In_ BOOLEAN TimerOrWaitFired) { - pty_baton *baton = static_cast(context); - - // Fire OnProcessExit - uv_async_send(&baton->async); + marshal.Set("fd", Napi::Number::New(env, -1)); + marshal.Set("conin", Napi::String::New(env, inNameStr)); + marshal.Set("conout", Napi::String::New(env, outNameStr)); + return marshal; } -static void OnProcessExit(uv_async_t *async) { - Nan::HandleScope scope; - pty_baton *baton = static_cast(async->data); - - UnregisterWait(baton->hWait); - - // Get exit code - DWORD exitCode = 0; - GetExitCodeProcess(baton->hShell, &exitCode); - - // Clean up handles - // Calling DisconnectNamedPipes here or in PtyKill results in a crash, - // ref https://github.com/microsoft/node-pty/issues/512, - // so we only call CloseHandle for now. - CloseHandle(baton->hIn); - CloseHandle(baton->hOut); - - // Call function - v8::Local args[1] = { - Nan::New(exitCode) - }; - - Nan::AsyncResource asyncResource("node-pty.callback"); - baton->cb.Call(1, args, &asyncResource); - // Clean up - baton->cb.Reset(); -} - -static NAN_METHOD(PtyConnect) { - Nan::HandleScope scope; +static Napi::Value PtyConnect(const Napi::CallbackInfo& info) { + Napi::Env env(info.Env()); + Napi::HandleScope scope(env); // If we're working with conpty's we need to call ConnectNamedPipe here AFTER // the Socket has attempted to connect to the other end, then actually @@ -286,26 +336,24 @@ static NAN_METHOD(PtyConnect) { BOOL fSuccess = FALSE; if (info.Length() != 5 || - !info[0]->IsNumber() || - !info[1]->IsString() || - !info[2]->IsString() || - !info[3]->IsArray() || - !info[4]->IsFunction()) { - Nan::ThrowError("Usage: pty.connect(id, cmdline, cwd, env, exitCallback)"); - return; + !info[0].IsNumber() || + !info[1].IsString() || + !info[2].IsString() || + !info[3].IsArray() || + !info[4].IsFunction()) { + throw Napi::Error::New(env, "Usage: pty.connect(id, cmdline, cwd, env, exitCallback)"); } - const int id = info[0]->Int32Value(Nan::GetCurrentContext()).FromJust(); - const std::wstring cmdline(path_util::to_wstring(Nan::Utf8String(info[1]))); - const std::wstring cwd(path_util::to_wstring(Nan::Utf8String(info[2]))); - const v8::Local envValues = info[3].As(); - const v8::Local exitCallback = v8::Local::Cast(info[4]); + const int id = info[0].As().Int32Value(); + const std::wstring cmdline(path_util::to_wstring(info[1].As())); + const std::wstring cwd(path_util::to_wstring(info[2].As())); + const Napi::Array envValues = info[3].As(); + Napi::Function exitCallback = info[4].As(); // Fetch pty handle from ID and start process pty_baton* handle = get_pty_baton(id); if (!handle) { - Nan::ThrowError("Invalid pty handle"); - return; + throw Napi::Error::New(env, "Invalid pty handle"); } // Prepare command line @@ -317,17 +365,17 @@ static NAN_METHOD(PtyConnect) { hr = StringCchCopyW(mutableCwd.get(), cwd.length() + 1, cwd.c_str()); // Prepare environment - std::wstring env; + std::wstring envStr; if (!envValues.IsEmpty()) { - std::wstringstream envBlock; - for(uint32_t i = 0; i < envValues->Length(); i++) { - std::wstring envValue(path_util::to_wstring(Nan::Utf8String(Nan::Get(envValues, i).ToLocalChecked()))); - envBlock << envValue << L'\0'; + std::wstring envBlock; + for(uint32_t i = 0; i < envValues.Length(); i++) { + envBlock += path_util::to_wstring(envValues.Get(i).As()); + envBlock += L'\0'; } - envBlock << L'\0'; - env = envBlock.str(); + envBlock += L'\0'; + envStr = std::move(envBlock); } - auto envV = vectorFromString(env); + std::vector envV(envStr.cbegin(), envStr.cend()); LPWSTR envArg = envV.empty() ? nullptr : envV.data(); ConnectNamedPipe(handle->hIn, nullptr); @@ -348,7 +396,7 @@ static NAN_METHOD(PtyConnect) { fSuccess = InitializeProcThreadAttributeList(siEx.lpAttributeList, 1, 0, &size); if (!fSuccess) { - return throwNanError(&info, "InitializeProcThreadAttributeList failed", true); + throw errorWithCode(info, "InitializeProcThreadAttributeList failed"); } fSuccess = UpdateProcThreadAttribute(siEx.lpAttributeList, 0, @@ -358,7 +406,7 @@ static NAN_METHOD(PtyConnect) { NULL, NULL); if (!fSuccess) { - return throwNanError(&info, "UpdateProcThreadAttribute failed", true); + throw errorWithCode(info, "UpdateProcThreadAttribute failed"); } PROCESS_INFORMATION piClient{}; @@ -375,49 +423,50 @@ static NAN_METHOD(PtyConnect) { &piClient // lpProcessInformation ); if (!fSuccess) { - return throwNanError(&info, "Cannot create process", true); + throw errorWithCode(info, "Cannot create process"); } // Update handle handle->hShell = piClient.hProcess; - handle->cb.Reset(exitCallback); - handle->async.data = handle; - // Setup OnProcessExit callback - uv_async_init(uv_default_loop(), &handle->async, OnProcessExit); + // Close the thread handle to avoid resource leak + CloseHandle(piClient.hThread); - // Setup Windows wait for process exit event - RegisterWaitForSingleObject(&handle->hWait, piClient.hProcess, OnProcessExitWinEvent, (PVOID)handle, INFINITE, WT_EXECUTEONLYONCE); + SetupExitCallback(env, exitCallback, handle); // Return - v8::Local marshal = Nan::New(); - Nan::Set(marshal, Nan::New("pid").ToLocalChecked(), Nan::New(piClient.dwProcessId)); - info.GetReturnValue().Set(marshal); + auto marshal = Napi::Object::New(env); + marshal.Set("pid", Napi::Number::New(env, piClient.dwProcessId)); + return marshal; } -static NAN_METHOD(PtyResize) { - Nan::HandleScope scope; +static Napi::Value PtyResize(const Napi::CallbackInfo& info) { + Napi::Env env(info.Env()); + Napi::HandleScope scope(env); - if (info.Length() != 3 || - !info[0]->IsNumber() || - !info[1]->IsNumber() || - !info[2]->IsNumber()) { - Nan::ThrowError("Usage: pty.resize(id, cols, rows)"); - return; + if (info.Length() != 4 || + !info[0].IsNumber() || + !info[1].IsNumber() || + !info[2].IsNumber() || + !info[3].IsBoolean()) { + throw Napi::Error::New(env, "Usage: pty.resize(id, cols, rows, useConptyDll)"); } - int id = info[0]->Int32Value(Nan::GetCurrentContext()).FromJust(); - SHORT cols = static_cast(info[1]->Uint32Value(Nan::GetCurrentContext()).FromJust()); - SHORT rows = static_cast(info[2]->Uint32Value(Nan::GetCurrentContext()).FromJust()); + int id = info[0].As().Int32Value(); + SHORT cols = static_cast(info[1].As().Uint32Value()); + SHORT rows = static_cast(info[2].As().Uint32Value()); + const bool useConptyDll = info[3].As().Value(); const pty_baton* handle = get_pty_baton(id); if (handle != nullptr) { - HANDLE hLibrary = LoadLibraryExW(L"kernel32.dll", 0, 0); + HANDLE hLibrary = LoadConptyDll(info, useConptyDll); bool fLoadedDll = hLibrary != nullptr; if (fLoadedDll) { - PFNRESIZEPSEUDOCONSOLE const pfnResizePseudoConsole = (PFNRESIZEPSEUDOCONSOLE)GetProcAddress((HMODULE)hLibrary, "ResizePseudoConsole"); + PFNRESIZEPSEUDOCONSOLE const pfnResizePseudoConsole = (PFNRESIZEPSEUDOCONSOLE)GetProcAddress( + (HMODULE)hLibrary, + useConptyDll ? "ConptyResizePseudoConsole" : "ResizePseudoConsole"); if (pfnResizePseudoConsole) { COORD size = {cols, rows}; @@ -426,28 +475,37 @@ static NAN_METHOD(PtyResize) { } } - return info.GetReturnValue().SetUndefined(); + return env.Undefined(); } -static NAN_METHOD(PtyClear) { - Nan::HandleScope scope; +static Napi::Value PtyClear(const Napi::CallbackInfo& info) { + Napi::Env env(info.Env()); + Napi::HandleScope scope(env); - if (info.Length() != 1 || - !info[0]->IsNumber()) { - Nan::ThrowError("Usage: pty.clear(id)"); - return; + if (info.Length() != 2 || + !info[0].IsNumber() || + !info[1].IsBoolean()) { + throw Napi::Error::New(env, "Usage: pty.clear(id, useConptyDll)"); } - int id = info[0]->Int32Value(Nan::GetCurrentContext()).FromJust(); + int id = info[0].As().Int32Value(); + const bool useConptyDll = info[1].As().Value(); + + // This API is only supported for conpty.dll as it was introduced in a later version of Windows. + // We could hook it up to point at >= a version of Windows only, but the future is conpty.dll + // anyway. + if (!useConptyDll) { + return env.Undefined(); + } const pty_baton* handle = get_pty_baton(id); if (handle != nullptr) { - HANDLE hLibrary = LoadLibraryExW(L"kernel32.dll", 0, 0); + HANDLE hLibrary = LoadConptyDll(info, useConptyDll); bool fLoadedDll = hLibrary != nullptr; if (fLoadedDll) { - PFNCLEARPSEUDOCONSOLE const pfnClearPseudoConsole = (PFNCLEARPSEUDOCONSOLE)GetProcAddress((HMODULE)hLibrary, "ClearPseudoConsole"); + PFNCLEARPSEUDOCONSOLE const pfnClearPseudoConsole = (PFNCLEARPSEUDOCONSOLE)GetProcAddress((HMODULE)hLibrary, "ConptyClearPseudoConsole"); if (pfnClearPseudoConsole) { pfnClearPseudoConsole(handle->hpc); @@ -455,28 +513,32 @@ static NAN_METHOD(PtyClear) { } } - return info.GetReturnValue().SetUndefined(); + return env.Undefined(); } -static NAN_METHOD(PtyKill) { - Nan::HandleScope scope; +static Napi::Value PtyKill(const Napi::CallbackInfo& info) { + Napi::Env env(info.Env()); + Napi::HandleScope scope(env); - if (info.Length() != 1 || - !info[0]->IsNumber()) { - Nan::ThrowError("Usage: pty.kill(id)"); - return; + if (info.Length() != 2 || + !info[0].IsNumber() || + !info[1].IsBoolean()) { + throw Napi::Error::New(env, "Usage: pty.kill(id, useConptyDll)"); } - int id = info[0]->Int32Value(Nan::GetCurrentContext()).FromJust(); + int id = info[0].As().Int32Value(); + const bool useConptyDll = info[1].As().Value(); const pty_baton* handle = get_pty_baton(id); if (handle != nullptr) { - HANDLE hLibrary = LoadLibraryExW(L"kernel32.dll", 0, 0); + HANDLE hLibrary = LoadConptyDll(info, useConptyDll); bool fLoadedDll = hLibrary != nullptr; if (fLoadedDll) { - PFNCLOSEPSEUDOCONSOLE const pfnClosePseudoConsole = (PFNCLOSEPSEUDOCONSOLE)GetProcAddress((HMODULE)hLibrary, "ClosePseudoConsole"); + PFNCLOSEPSEUDOCONSOLE const pfnClosePseudoConsole = (PFNCLOSEPSEUDOCONSOLE)GetProcAddress( + (HMODULE)hLibrary, + useConptyDll ? "ConptyClosePseudoConsole" : "ClosePseudoConsole"); if (pfnClosePseudoConsole) { pfnClosePseudoConsole(handle->hpc); @@ -484,22 +546,23 @@ static NAN_METHOD(PtyKill) { } CloseHandle(handle->hShell); + assert(remove_pty_baton(id)); } - return info.GetReturnValue().SetUndefined(); + return env.Undefined(); } /** * Init */ -extern "C" void init(v8::Local target) { - Nan::HandleScope scope; - Nan::SetMethod(target, "startProcess", PtyStartProcess); - Nan::SetMethod(target, "connect", PtyConnect); - Nan::SetMethod(target, "resize", PtyResize); - Nan::SetMethod(target, "clear", PtyClear); - Nan::SetMethod(target, "kill", PtyKill); +Napi::Object init(Napi::Env env, Napi::Object exports) { + exports.Set("startProcess", Napi::Function::New(env, PtyStartProcess)); + exports.Set("connect", Napi::Function::New(env, PtyConnect)); + exports.Set("resize", Napi::Function::New(env, PtyResize)); + exports.Set("clear", Napi::Function::New(env, PtyClear)); + exports.Set("kill", Napi::Function::New(env, PtyKill)); + return exports; }; -NODE_MODULE(pty, init); +NODE_API_MODULE(NODE_GYP_MODULE_NAME, init); diff --git a/src/win/conpty.h b/src/win/conpty.h new file mode 100644 index 000000000..4cef31c4a --- /dev/null +++ b/src/win/conpty.h @@ -0,0 +1,41 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +// This header prototypes the Pseudoconsole symbols from conpty.lib with their original names. +// This is required because we cannot import __imp_CreatePseudoConsole from a static library +// as it doesn't produce an import lib. +// We can't use an /ALTERNATENAME trick because it seems that that name is only resolved when the +// linker cannot otherwise find the symbol. + +#pragma once + +#include + +#ifndef CONPTY_IMPEXP +#define CONPTY_IMPEXP __declspec(dllimport) +#endif + +#ifndef CONPTY_EXPORT +#ifdef __cplusplus +#define CONPTY_EXPORT extern "C" CONPTY_IMPEXP +#else +#define CONPTY_EXPORT extern CONPTY_IMPEXP +#endif +#endif + +#define PSEUDOCONSOLE_RESIZE_QUIRK (2u) +#define PSEUDOCONSOLE_PASSTHROUGH_MODE (8u) + +CONPTY_EXPORT HRESULT WINAPI ConptyCreatePseudoConsole(COORD size, HANDLE hInput, HANDLE hOutput, DWORD dwFlags, HPCON* phPC); +CONPTY_EXPORT HRESULT WINAPI ConptyCreatePseudoConsoleAsUser(HANDLE hToken, COORD size, HANDLE hInput, HANDLE hOutput, DWORD dwFlags, HPCON* phPC); + +CONPTY_EXPORT HRESULT WINAPI ConptyResizePseudoConsole(HPCON hPC, COORD size); +CONPTY_EXPORT HRESULT WINAPI ConptyClearPseudoConsole(HPCON hPC); +CONPTY_EXPORT HRESULT WINAPI ConptyShowHidePseudoConsole(HPCON hPC, bool show); +CONPTY_EXPORT HRESULT WINAPI ConptyReparentPseudoConsole(HPCON hPC, HWND newParent); +CONPTY_EXPORT HRESULT WINAPI ConptyReleasePseudoConsole(HPCON hPC); + +CONPTY_EXPORT VOID WINAPI ConptyClosePseudoConsole(HPCON hPC); +CONPTY_EXPORT VOID WINAPI ConptyClosePseudoConsoleTimeout(HPCON hPC, DWORD dwMilliseconds); + +CONPTY_EXPORT HRESULT WINAPI ConptyPackPseudoConsole(HANDLE hServerProcess, HANDLE hRef, HANDLE hSignal, HPCON* phPC); diff --git a/src/win/conpty_console_list.cc b/src/win/conpty_console_list.cc index 822b0b2be..4c8ab3932 100644 --- a/src/win/conpty_console_list.cc +++ b/src/win/conpty_console_list.cc @@ -2,23 +2,24 @@ * Copyright (c) 2019, Microsoft Corporation (MIT License). */ -#include +#define NODE_ADDON_API_DISABLE_DEPRECATED +#include #include -static NAN_METHOD(ApiConsoleProcessList) { +static Napi::Value ApiConsoleProcessList(const Napi::CallbackInfo& info) { + Napi::Env env(info.Env()); if (info.Length() != 1 || - !info[0]->IsNumber()) { - Nan::ThrowError("Usage: getConsoleProcessList(shellPid)"); - return; + !info[0].IsNumber()) { + throw Napi::Error::New(env, "Usage: getConsoleProcessList(shellPid)"); } - const DWORD pid = info[0]->Uint32Value(Nan::GetCurrentContext()).FromJust(); + const DWORD pid = info[0].As().Uint32Value(); if (!FreeConsole()) { - Nan::ThrowError("FreeConsole failed"); + throw Napi::Error::New(env, "FreeConsole failed"); } if (!AttachConsole(pid)) { - Nan::ThrowError("AttachConsole failed"); + throw Napi::Error::New(env, "AttachConsole failed"); } auto processList = std::vector(64); auto processCount = GetConsoleProcessList(&processList[0], static_cast(processList.size())); @@ -28,16 +29,16 @@ static NAN_METHOD(ApiConsoleProcessList) { } FreeConsole(); - v8::Local result = Nan::New(); + Napi::Array result = Napi::Array::New(env); for (DWORD i = 0; i < processCount; i++) { - Nan::Set(result, i, Nan::New(processList[i])); + result.Set(i, Napi::Number::New(env, processList[i])); } - info.GetReturnValue().Set(result); + return result; } -extern "C" void init(v8::Local target) { - Nan::HandleScope scope; - Nan::SetMethod(target, "getConsoleProcessList", ApiConsoleProcessList); +Napi::Object init(Napi::Env env, Napi::Object exports) { + exports.Set("getConsoleProcessList", Napi::Function::New(env, ApiConsoleProcessList)); + return exports; }; -NODE_MODULE(pty, init); +NODE_API_MODULE(NODE_GYP_MODULE_NAME, init); diff --git a/src/win/path_util.cc b/src/win/path_util.cc index 5ff438ee0..764c0330c 100644 --- a/src/win/path_util.cc +++ b/src/win/path_util.cc @@ -4,25 +4,29 @@ * Copyright (c) 2018, Microsoft Corporation (MIT License). */ -#include +#include #include // PathCombine - +#include #include "path_util.h" namespace path_util { -const wchar_t* to_wstring(const Nan::Utf8String& str) { - const char *bytes = *str; - int sizeOfStr = MultiByteToWideChar(CP_UTF8, 0, bytes, -1, NULL, 0); - if (sizeOfStr <= 0) { - return L""; +std::wstring to_wstring(const Napi::String& str) { + const std::u16string & u16 = str.Utf16Value(); + return std::wstring(u16.begin(), u16.end()); +} + +std::string wstring_to_string(const std::wstring &wide_string) { + if (wide_string.empty()) { + return ""; } - wchar_t *output = new wchar_t[sizeOfStr]; - int status = MultiByteToWideChar(CP_UTF8, 0, bytes, -1, output, sizeOfStr); - if (status == 0) { - return L""; + const auto size_needed = WideCharToMultiByte(CP_UTF8, 0, &wide_string.at(0), (int)wide_string.size(), nullptr, 0, nullptr, nullptr); + if (size_needed <= 0) { + return ""; } - return output; + std::string result(size_needed, 0); + WideCharToMultiByte(CP_UTF8, 0, &wide_string.at(0), (int)wide_string.size(), &result.at(0), size_needed, nullptr, nullptr); + return result; } const char* from_wstring(const wchar_t* wstr) { @@ -54,38 +58,37 @@ std::wstring get_shell_path(std::wstring filename) { return shellpath; } - wchar_t buffer_[MAX_ENV]; + wchar_t* buffer_ = new wchar_t[MAX_ENV]; int read = ::GetEnvironmentVariableW(L"Path", buffer_, MAX_ENV); - if (!read) { - return shellpath; - } - - std::wstring delimiter = L";"; - size_t pos = 0; - std::vector paths; - std::wstring buffer(buffer_); - while ((pos = buffer.find(delimiter)) != std::wstring::npos) { - paths.push_back(buffer.substr(0, pos)); - buffer.erase(0, pos + delimiter.length()); - } + if (read) { + std::wstring delimiter = L";"; + size_t pos = 0; + std::vector paths; + std::wstring buffer(buffer_); + while ((pos = buffer.find(delimiter)) != std::wstring::npos) { + paths.push_back(buffer.substr(0, pos)); + buffer.erase(0, pos + delimiter.length()); + } - const wchar_t *filename_ = filename.c_str(); + const wchar_t *filename_ = filename.c_str(); - for (size_t i = 0; i < paths.size(); ++i) { - std::wstring path = paths[i]; - wchar_t searchPath[MAX_PATH]; - ::PathCombineW(searchPath, const_cast(path.c_str()), filename_); + for (size_t i = 0; i < paths.size(); ++i) { + std::wstring path = paths[i]; + wchar_t searchPath[MAX_PATH]; + ::PathCombineW(searchPath, const_cast(path.c_str()), filename_); - if (searchPath == NULL) { - continue; - } + if (searchPath == NULL) { + continue; + } - if (file_exists(searchPath)) { - shellpath = searchPath; - break; + if (file_exists(searchPath)) { + shellpath = searchPath; + break; + } } } + delete[] buffer_; return shellpath; } diff --git a/src/win/path_util.h b/src/win/path_util.h index 5cb0d8730..0be99b6d3 100644 --- a/src/win/path_util.h +++ b/src/win/path_util.h @@ -7,13 +7,16 @@ #ifndef NODE_PTY_PATH_UTIL_H_ #define NODE_PTY_PATH_UTIL_H_ -#include +#define NODE_ADDON_API_DISABLE_DEPRECATED +#include +#include #define MAX_ENV 65536 namespace path_util { -const wchar_t* to_wstring(const Nan::Utf8String& str); +std::wstring to_wstring(const Napi::String& str); +std::string wstring_to_string(const std::wstring &wide_string); const char* from_wstring(const wchar_t* wstr); bool file_exists(std::wstring filename); std::wstring get_shell_path(std::wstring filename); diff --git a/src/win/winpty.cc b/src/win/winpty.cc index b8bde75e7..3996f8d66 100644 --- a/src/win/winpty.cc +++ b/src/win/winpty.cc @@ -8,9 +8,11 @@ * with pseudo-terminal file descriptors. */ +#define NODE_ADDON_API_DISABLE_DEPRECATED +#include #include +#include #include -#include #include // PathCombine, PathIsRelative #include #include @@ -24,8 +26,6 @@ /** * Misc */ -extern "C" void init(v8::Local); - #define WINPTY_DBG_VARIABLE TEXT("WINPTYDBG") /** @@ -66,28 +66,28 @@ static bool remove_pipe_handle(DWORD pid) { return false; } -void throw_winpty_error(const char *generalMsg, winpty_error_ptr_t error_ptr) { - std::wstringstream why; - std::wstring msg(winpty_error_msg(error_ptr)); - why << generalMsg << ": " << msg; - Nan::ThrowError(path_util::from_wstring(why.str().c_str())); +Napi::Error error_with_winpty_msg(const char *generalMsg, winpty_error_ptr_t error_ptr, Napi::Env env) { + std::string why; + why += generalMsg; + why += ": "; + why += path_util::wstring_to_string(winpty_error_msg(error_ptr)); winpty_error_free(error_ptr); + return Napi::Error::New(env, why); } -static NAN_METHOD(PtyGetExitCode) { - Nan::HandleScope scope; +static Napi::Value PtyGetExitCode(const Napi::CallbackInfo& info) { + Napi::Env env(info.Env()); + Napi::HandleScope scope(env); if (info.Length() != 1 || - !info[0]->IsNumber()) { - Nan::ThrowError("Usage: pty.getExitCode(pid)"); - return; + !info[0].IsNumber()) { + throw Napi::Error::New(env, "Usage: pty.getExitCode(pid)"); } - DWORD pid = info[0]->Uint32Value(Nan::GetCurrentContext()).FromJust(); + DWORD pid = info[0].As().Uint32Value(); HANDLE handle = OpenProcess(PROCESS_QUERY_INFORMATION, FALSE, pid); if (handle == NULL) { - info.GetReturnValue().Set(Nan::New(-1)); - return; + return Napi::Number::New(env, -1); } DWORD exitCode = 0; @@ -97,95 +97,86 @@ static NAN_METHOD(PtyGetExitCode) { } CloseHandle(handle); - info.GetReturnValue().Set(Nan::New(exitCode)); + return Napi::Number::New(env, exitCode); } -static NAN_METHOD(PtyGetProcessList) { - Nan::HandleScope scope; +static Napi::Value PtyGetProcessList(const Napi::CallbackInfo& info) { + Napi::Env env(info.Env()); + Napi::HandleScope scope(env); if (info.Length() != 1 || - !info[0]->IsNumber()) { - Nan::ThrowError("Usage: pty.getProcessList(pid)"); - return; + !info[0].IsNumber()) { + throw Napi::Error::New(env, "Usage: pty.getProcessList(pid)"); } - DWORD pid = info[0]->Uint32Value(Nan::GetCurrentContext()).FromJust(); + DWORD pid = info[0].As().Uint32Value(); winpty_t *pc = get_pipe_handle(pid); if (pc == nullptr) { - info.GetReturnValue().Set(Nan::New(0)); - return; + return Napi::Number::New(env, 0); } int processList[64]; const int processCount = 64; int actualCount = winpty_get_console_process_list(pc, processList, processCount, nullptr); if (actualCount <= 0) { - info.GetReturnValue().Set(Nan::New(0)); - return; + return Napi::Number::New(env, 0); } - uint32_t actualCountSize = static_cast(actualCount); - v8::Local result = Nan::New(actualCountSize); - for (uint32_t i = 0; i < actualCountSize; i++) { - Nan::Set(result, i, Nan::New(processList[i])); + Napi::Array result = Napi::Array::New(env, actualCount); + for (int i = 0; i < actualCount; i++) { + result.Set(i, Napi::Number::New(env, processList[i])); } - info.GetReturnValue().Set(result); + return result; } -static NAN_METHOD(PtyStartProcess) { - Nan::HandleScope scope; +static Napi::Value PtyStartProcess(const Napi::CallbackInfo& info) { + Napi::Env env(info.Env()); + Napi::HandleScope scope(env); if (info.Length() != 7 || - !info[0]->IsString() || - !info[1]->IsString() || - !info[2]->IsArray() || - !info[3]->IsString() || - !info[4]->IsNumber() || - !info[5]->IsNumber() || - !info[6]->IsBoolean()) { - Nan::ThrowError("Usage: pty.startProcess(file, cmdline, env, cwd, cols, rows, debug)"); - return; + !info[0].IsString() || + !info[1].IsString() || + !info[2].IsArray() || + !info[3].IsString() || + !info[4].IsNumber() || + !info[5].IsNumber() || + !info[6].IsBoolean()) { + throw Napi::Error::New(env, "Usage: pty.startProcess(file, cmdline, env, cwd, cols, rows, debug)"); } - const wchar_t *filename = path_util::to_wstring(Nan::Utf8String(info[0])); - const wchar_t *cmdline = path_util::to_wstring(Nan::Utf8String(info[1])); - const wchar_t *cwd = path_util::to_wstring(Nan::Utf8String(info[3])); + std::wstring filename(path_util::to_wstring(info[0].As())); + std::wstring cmdline(path_util::to_wstring(info[1].As())); + std::wstring cwd(path_util::to_wstring(info[3].As())); // create environment block - std::wstring env; - const v8::Local envValues = v8::Local::Cast(info[2]); + std::wstring envStr; + const Napi::Array envValues = info[2].As(); if (!envValues.IsEmpty()) { - - std::wstringstream envBlock; - - for(uint32_t i = 0; i < envValues->Length(); i++) { - std::wstring envValue(path_util::to_wstring(Nan::Utf8String(Nan::Get(envValues, i).ToLocalChecked()))); - envBlock << envValue << L'\0'; + std::wstring envBlock; + for(uint32_t i = 0; i < envValues.Length(); i++) { + envBlock += path_util::to_wstring(envValues.Get(i).As()); + envBlock += L'\0'; } - - env = envBlock.str(); + envStr = std::move(envBlock); } // use environment 'Path' variable to determine location of // the relative path that we have recieved (e.g cmd.exe) std::wstring shellpath; - if (::PathIsRelativeW(filename)) { + if (::PathIsRelativeW(filename.c_str())) { shellpath = path_util::get_shell_path(filename); } else { shellpath = filename; } if (shellpath.empty() || !path_util::file_exists(shellpath)) { - std::wstringstream why; - why << "File not found: " << shellpath; - Nan::ThrowError(path_util::from_wstring(why.str().c_str())); - delete filename; - delete cmdline; - delete cwd; - return; + std::string why; + why += "File not found: "; + why += path_util::wstring_to_string(shellpath); + throw Napi::Error::New(env, why); } - int cols = info[4]->Int32Value(Nan::GetCurrentContext()).FromJust(); - int rows = info[5]->Int32Value(Nan::GetCurrentContext()).FromJust(); - bool debug = Nan::To(info[6]).FromJust(); + int cols = info[4].As().Int32Value(); + int rows = info[5].As().Int32Value(); + bool debug = info[6].As().Value(); // Enable/disable debugging SetEnvironmentVariable(WINPTY_DBG_VARIABLE, debug ? "1" : NULL); // NULL = deletes variable @@ -194,11 +185,7 @@ static NAN_METHOD(PtyStartProcess) { winpty_error_ptr_t error_ptr = nullptr; winpty_config_t* winpty_config = winpty_config_new(0, &error_ptr); if (winpty_config == nullptr) { - throw_winpty_error("Error creating WinPTY config", error_ptr); - delete filename; - delete cmdline; - delete cwd; - return; + throw error_with_winpty_msg("Error creating WinPTY config", error_ptr, env); } winpty_error_free(error_ptr); @@ -209,23 +196,15 @@ static NAN_METHOD(PtyStartProcess) { winpty_t *pc = winpty_open(winpty_config, &error_ptr); winpty_config_free(winpty_config); if (pc == nullptr) { - throw_winpty_error("Error launching WinPTY agent", error_ptr); - delete filename; - delete cmdline; - delete cwd; - return; + throw error_with_winpty_msg("Error launching WinPTY agent", error_ptr, env); } winpty_error_free(error_ptr); // Create winpty spawn config - winpty_spawn_config_t* config = winpty_spawn_config_new(WINPTY_SPAWN_FLAG_AUTO_SHUTDOWN, shellpath.c_str(), cmdline, cwd, env.c_str(), &error_ptr); + winpty_spawn_config_t* config = winpty_spawn_config_new(WINPTY_SPAWN_FLAG_AUTO_SHUTDOWN, shellpath.c_str(), cmdline.c_str(), cwd.c_str(), envStr.c_str(), &error_ptr); if (config == nullptr) { - throw_winpty_error("Error creating WinPTY spawn config", error_ptr); winpty_free(pc); - delete filename; - delete cmdline; - delete cwd; - return; + throw error_with_winpty_msg("Error creating WinPTY spawn config", error_ptr, env); } winpty_error_free(error_ptr); @@ -234,121 +213,99 @@ static NAN_METHOD(PtyStartProcess) { BOOL spawnSuccess = winpty_spawn(pc, config, &handle, nullptr, nullptr, &error_ptr); winpty_spawn_config_free(config); if (!spawnSuccess) { - throw_winpty_error("Unable to start terminal process", error_ptr); if (handle) { CloseHandle(handle); } winpty_free(pc); - delete filename; - delete cmdline; - delete cwd; - return; + throw error_with_winpty_msg("Unable to start terminal process", error_ptr, env); } winpty_error_free(error_ptr); LPCWSTR coninPipeName = winpty_conin_name(pc); std::string coninPipeNameStr(path_util::from_wstring(coninPipeName)); if (coninPipeNameStr.empty()) { - Nan::ThrowError("Failed to initialize winpty conin"); CloseHandle(handle); winpty_free(pc); - delete filename; - delete cmdline; - delete cwd; - return; + throw Napi::Error::New(env, "Failed to initialize winpty conin"); } LPCWSTR conoutPipeName = winpty_conout_name(pc); std::string conoutPipeNameStr(path_util::from_wstring(conoutPipeName)); if (conoutPipeNameStr.empty()) { - Nan::ThrowError("Failed to initialize winpty conout"); CloseHandle(handle); winpty_free(pc); - delete filename; - delete cmdline; - delete cwd; - return; + throw Napi::Error::New(env, "Failed to initialize winpty conout"); } DWORD innerPid = GetProcessId(handle); if (createdHandles[innerPid]) { - std::stringstream why; - why << "There is already a process with innerPid " << innerPid; - Nan::ThrowError(why.str().c_str()); CloseHandle(handle); winpty_free(pc); - delete filename; - delete cmdline; - delete cwd; - return; + std::stringstream why; + why << "There is already a process with innerPid " << innerPid; + throw Napi::Error::New(env, why.str()); } createdHandles[innerPid] = handle; // Save pty struct for later use ptyHandles.push_back(pc); - v8::Local marshal = Nan::New(); DWORD pid = GetProcessId(winpty_agent_process(pc)); - Nan::Set(marshal, Nan::New("innerPid").ToLocalChecked(), Nan::New(static_cast(innerPid))); - Nan::Set(marshal, Nan::New("pid").ToLocalChecked(), Nan::New(static_cast(pid))); - Nan::Set(marshal, Nan::New("pty").ToLocalChecked(), Nan::New(InterlockedIncrement(&ptyCounter))); - Nan::Set(marshal, Nan::New("fd").ToLocalChecked(), Nan::New(-1)); - Nan::Set(marshal, Nan::New("conin").ToLocalChecked(), Nan::New(coninPipeNameStr).ToLocalChecked()); - Nan::Set(marshal, Nan::New("conout").ToLocalChecked(), Nan::New(conoutPipeNameStr).ToLocalChecked()); - info.GetReturnValue().Set(marshal); - - delete filename; - delete cmdline; - delete cwd; + Napi::Object marshal = Napi::Object::New(env); + marshal.Set("innerPid", Napi::Number::New(env, (int)innerPid)); + marshal.Set("pid", Napi::Number::New(env, (int)pid)); + marshal.Set("pty", Napi::Number::New(env, InterlockedIncrement(&ptyCounter))); + marshal.Set("fd", Napi::Number::New(env, -1)); + marshal.Set("conin", Napi::String::New(env, coninPipeNameStr)); + marshal.Set("conout", Napi::String::New(env, conoutPipeNameStr)); + + return marshal; } -static NAN_METHOD(PtyResize) { - Nan::HandleScope scope; +static Napi::Value PtyResize(const Napi::CallbackInfo& info) { + Napi::Env env(info.Env()); + Napi::HandleScope scope(env); if (info.Length() != 3 || - !info[0]->IsNumber() || - !info[1]->IsNumber() || - !info[2]->IsNumber()) { - Nan::ThrowError("Usage: pty.resize(pid, cols, rows)"); - return; + !info[0].IsNumber() || + !info[1].IsNumber() || + !info[2].IsNumber()) { + throw Napi::Error::New(env, "Usage: pty.resize(pid, cols, rows)"); } - DWORD pid = info[0]->Uint32Value(Nan::GetCurrentContext()).FromJust(); - int cols = info[1]->Int32Value(Nan::GetCurrentContext()).FromJust(); - int rows = info[2]->Int32Value(Nan::GetCurrentContext()).FromJust(); + DWORD pid = info[0].As().Uint32Value(); + int cols = info[1].As().Int32Value(); + int rows = info[2].As().Int32Value(); winpty_t *pc = get_pipe_handle(pid); if (pc == nullptr) { - Nan::ThrowError("The pty doesn't appear to exist"); - return; + throw Napi::Error::New(env, "The pty doesn't appear to exist"); } BOOL success = winpty_set_size(pc, cols, rows, nullptr); if (!success) { - Nan::ThrowError("The pty could not be resized"); - return; + throw Napi::Error::New(env, "The pty could not be resized"); } - return info.GetReturnValue().SetUndefined(); + return env.Undefined(); } -static NAN_METHOD(PtyKill) { - Nan::HandleScope scope; +static Napi::Value PtyKill(const Napi::CallbackInfo& info) { + Napi::Env env(info.Env()); + Napi::HandleScope scope(env); if (info.Length() != 2 || - !info[0]->IsNumber() || - !info[1]->IsNumber()) { - Nan::ThrowError("Usage: pty.kill(pid, innerPid)"); - return; + !info[0].IsNumber() || + !info[1].IsNumber()) { + throw Napi::Error::New(env, "Usage: pty.kill(pid, innerPid)"); } - DWORD pid = info[0]->Uint32Value(Nan::GetCurrentContext()).FromJust(); - DWORD innerPid = info[1]->Uint32Value(Nan::GetCurrentContext()).FromJust(); + DWORD pid = info[0].As().Uint32Value(); + DWORD innerPid = info[1].As().Uint32Value(); winpty_t *pc = get_pipe_handle(pid); if (pc == nullptr) { - Nan::ThrowError("Pty seems to have been killed already"); - return; + throw Napi::Error::New(env, "Pty seems to have been killed already"); } assert(remove_pipe_handle(pid)); @@ -357,20 +314,20 @@ static NAN_METHOD(PtyKill) { createdHandles.erase(innerPid); CloseHandle(innerPidHandle); - return info.GetReturnValue().SetUndefined(); + return env.Undefined(); } /** * Init */ -extern "C" void init(v8::Local target) { - Nan::HandleScope scope; - Nan::SetMethod(target, "startProcess", PtyStartProcess); - Nan::SetMethod(target, "resize", PtyResize); - Nan::SetMethod(target, "kill", PtyKill); - Nan::SetMethod(target, "getExitCode", PtyGetExitCode); - Nan::SetMethod(target, "getProcessList", PtyGetProcessList); +Napi::Object init(Napi::Env env, Napi::Object exports) { + exports.Set("startProcess", Napi::Function::New(env, PtyStartProcess)); + exports.Set("resize", Napi::Function::New(env, PtyResize)); + exports.Set("kill", Napi::Function::New(env, PtyKill)); + exports.Set("getExitCode", Napi::Function::New(env, PtyGetExitCode)); + exports.Set("getProcessList", Napi::Function::New(env, PtyGetProcessList)); + return exports; }; -NODE_MODULE(pty, init); +NODE_API_MODULE(NODE_GYP_MODULE_NAME, init); diff --git a/src/windowsPtyAgent.ts b/src/windowsPtyAgent.ts index ae6d45ddd..bf9145506 100644 --- a/src/windowsPtyAgent.ts +++ b/src/windowsPtyAgent.ts @@ -54,6 +54,7 @@ export class WindowsPtyAgent { rows: number, debug: boolean, private _useConpty: boolean | undefined, + private _useConptyDll: boolean = false, conptyInheritCursor: boolean = false ) { if (this._useConpty === undefined || this._useConpty === true) { @@ -99,7 +100,7 @@ export class WindowsPtyAgent { // Open pty session. let term: IConptyProcess | IWinptyProcess; if (this._useConpty) { - term = (this._ptyNative as IConptyNative).startProcess(file, cols, rows, debug, this._generatePipeName(), conptyInheritCursor); + term = (this._ptyNative as IConptyNative).startProcess(file, cols, rows, debug, this._generatePipeName(), conptyInheritCursor, this._useConptyDll); } else { term = (this._ptyNative as IWinptyNative).startProcess(file, commandLine, env, cwd, cols, rows, debug); this._pid = (term as IWinptyProcess).pid; @@ -144,15 +145,15 @@ export class WindowsPtyAgent { if (this._exitCode !== undefined) { throw new Error('Cannot resize a pty that has already exited'); } - this._ptyNative.resize(this._pty, cols, rows); + (this._ptyNative as IConptyNative).resize(this._pty, cols, rows, this._useConptyDll); return; } - this._ptyNative.resize(this._pid, cols, rows); + (this._ptyNative as IWinptyNative).resize(this._pid, cols, rows); } public clear(): void { if (this._useConpty) { - (this._ptyNative as IConptyNative).clear(this._pty); + (this._ptyNative as IConptyNative).clear(this._pty, this._useConptyDll); } } @@ -169,7 +170,7 @@ export class WindowsPtyAgent { // Ignore if process cannot be found (kill ESRCH error) } }); - (this._ptyNative as IConptyNative).kill(this._pty); + (this._ptyNative as IConptyNative).kill(this._pty, this._useConptyDll); }); } else { // Because pty.kill closes the handle, it will kill most processes by itself. diff --git a/src/windowsTerminal.test.ts b/src/windowsTerminal.test.ts index fcc7ccb84..a6b60bfe6 100644 --- a/src/windowsTerminal.test.ts +++ b/src/windowsTerminal.test.ts @@ -98,7 +98,7 @@ if (process.platform === 'win32') { (term)._defer(done); }); it('should kill the process tree', function (done: Mocha.Done): void { - this.timeout(5000); + this.timeout(10000); const term = new WindowsTerminal('cmd.exe', [], { useConpty }); // Start sub-processes term.write('powershell.exe\r'); @@ -134,7 +134,7 @@ if (process.platform === 'win32') { it('should throw a non-native exception when resizing a killed terminal', (done) => { const term = new WindowsTerminal('cmd.exe', [], { useConpty }); (term)._defer(() => { - term.on('exit', () => { + term.once('exit', () => { assert.throws(() => term.resize(1, 1)); done(); }); diff --git a/src/windowsTerminal.ts b/src/windowsTerminal.ts index 5fa61a97b..2ef9feddb 100644 --- a/src/windowsTerminal.ts +++ b/src/windowsTerminal.ts @@ -48,7 +48,7 @@ export class WindowsTerminal extends Terminal { this._deferreds = []; // Create new termal. - this._agent = new WindowsPtyAgent(file, args, parsedEnv, cwd, this._cols, this._rows, false, opt.useConpty, opt.conptyInheritCursor); + this._agent = new WindowsPtyAgent(file, args, parsedEnv, cwd, this._cols, this._rows, false, opt.useConpty, opt.useConptyDll, opt.conptyInheritCursor); this._socket = this._agent.outSocket; // Not available until `ready` event emitted. diff --git a/third_party/conpty/1.20.240626001/win10-arm64/OpenConsole.exe b/third_party/conpty/1.20.240626001/win10-arm64/OpenConsole.exe new file mode 100644 index 0000000000000000000000000000000000000000..664c9dd52ee5963c11eec9eadd3806c14d58b32c GIT binary patch literal 1376800 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

szF_8j_K7=wi7&Su-wQDt%WtHw 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�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 z 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