@oddessentials/agent-guild 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (342) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +162 -0
  3. package/bin/agent-guild-report.mjs +134 -0
  4. package/bin/agent-guild.mjs +240 -0
  5. package/config/providers.default.json +124 -0
  6. package/examples/claude-code-settings.json +48 -0
  7. package/examples/codex-hooks.json +45 -0
  8. package/examples/gemini-settings.json +61 -0
  9. package/examples/grok-hooks.json +55 -0
  10. package/examples/providers.json +27 -0
  11. package/node_modules/@xterm/addon-fit/LICENSE +19 -0
  12. package/node_modules/@xterm/addon-fit/README.md +24 -0
  13. package/node_modules/@xterm/addon-fit/lib/addon-fit.js +2 -0
  14. package/node_modules/@xterm/addon-fit/lib/addon-fit.js.map +1 -0
  15. package/node_modules/@xterm/addon-fit/lib/addon-fit.mjs +18 -0
  16. package/node_modules/@xterm/addon-fit/lib/addon-fit.mjs.map +7 -0
  17. package/node_modules/@xterm/addon-fit/package.json +26 -0
  18. package/node_modules/@xterm/addon-fit/src/FitAddon.ts +92 -0
  19. package/node_modules/@xterm/addon-fit/typings/addon-fit.d.ts +55 -0
  20. package/node_modules/@xterm/addon-serialize/README.md +42 -0
  21. package/node_modules/@xterm/addon-serialize/lib/addon-serialize.js +2 -0
  22. package/node_modules/@xterm/addon-serialize/lib/addon-serialize.js.map +1 -0
  23. package/node_modules/@xterm/addon-serialize/lib/addon-serialize.mjs +19 -0
  24. package/node_modules/@xterm/addon-serialize/lib/addon-serialize.mjs.map +7 -0
  25. package/node_modules/@xterm/addon-serialize/package.json +29 -0
  26. package/node_modules/@xterm/addon-serialize/src/SerializeAddon.ts +695 -0
  27. package/node_modules/@xterm/addon-serialize/typings/addon-serialize.d.ts +116 -0
  28. package/node_modules/@xterm/addon-web-links/LICENSE +19 -0
  29. package/node_modules/@xterm/addon-web-links/README.md +21 -0
  30. package/node_modules/@xterm/addon-web-links/lib/addon-web-links.js +2 -0
  31. package/node_modules/@xterm/addon-web-links/lib/addon-web-links.js.map +1 -0
  32. package/node_modules/@xterm/addon-web-links/lib/addon-web-links.mjs +18 -0
  33. package/node_modules/@xterm/addon-web-links/lib/addon-web-links.mjs.map +7 -0
  34. package/node_modules/@xterm/addon-web-links/package.json +26 -0
  35. package/node_modules/@xterm/addon-web-links/src/WebLinkProvider.ts +199 -0
  36. package/node_modules/@xterm/addon-web-links/src/WebLinksAddon.ts +58 -0
  37. package/node_modules/@xterm/addon-web-links/typings/addon-web-links.d.ts +57 -0
  38. package/node_modules/@xterm/headless/README.md +31 -0
  39. package/node_modules/@xterm/headless/lib-headless/xterm-headless.js +2 -0
  40. package/node_modules/@xterm/headless/lib-headless/xterm-headless.js.map +1 -0
  41. package/node_modules/@xterm/headless/lib-headless/xterm-headless.mjs +46 -0
  42. package/node_modules/@xterm/headless/lib-headless/xterm-headless.mjs.map +7 -0
  43. package/node_modules/@xterm/headless/package.json +29 -0
  44. package/node_modules/@xterm/headless/typings/xterm-headless.d.ts +1385 -0
  45. package/node_modules/@xterm/xterm/LICENSE +21 -0
  46. package/node_modules/@xterm/xterm/README.md +243 -0
  47. package/node_modules/@xterm/xterm/css/xterm.css +285 -0
  48. package/node_modules/@xterm/xterm/lib/xterm.js +2 -0
  49. package/node_modules/@xterm/xterm/lib/xterm.js.map +1 -0
  50. package/node_modules/@xterm/xterm/lib/xterm.mjs +53 -0
  51. package/node_modules/@xterm/xterm/lib/xterm.mjs.map +7 -0
  52. package/node_modules/@xterm/xterm/package.json +111 -0
  53. package/node_modules/@xterm/xterm/src/browser/AccessibilityManager.ts +435 -0
  54. package/node_modules/@xterm/xterm/src/browser/Clipboard.ts +93 -0
  55. package/node_modules/@xterm/xterm/src/browser/ColorContrastCache.ts +34 -0
  56. package/node_modules/@xterm/xterm/src/browser/CoreBrowserTerminal.ts +1339 -0
  57. package/node_modules/@xterm/xterm/src/browser/Linkifier.ts +403 -0
  58. package/node_modules/@xterm/xterm/src/browser/LocalizableStrings.ts +23 -0
  59. package/node_modules/@xterm/xterm/src/browser/OscLinkProvider.ts +129 -0
  60. package/node_modules/@xterm/xterm/src/browser/RenderDebouncer.ts +84 -0
  61. package/node_modules/@xterm/xterm/src/browser/TimeBasedDebouncer.ts +86 -0
  62. package/node_modules/@xterm/xterm/src/browser/Types.ts +226 -0
  63. package/node_modules/@xterm/xterm/src/browser/Viewport.ts +192 -0
  64. package/node_modules/@xterm/xterm/src/browser/decorations/BufferDecorationRenderer.ts +139 -0
  65. package/node_modules/@xterm/xterm/src/browser/decorations/ColorZoneStore.ts +117 -0
  66. package/node_modules/@xterm/xterm/src/browser/decorations/OverviewRulerRenderer.ts +214 -0
  67. package/node_modules/@xterm/xterm/src/browser/input/CompositionHelper.ts +248 -0
  68. package/node_modules/@xterm/xterm/src/browser/input/Mouse.ts +54 -0
  69. package/node_modules/@xterm/xterm/src/browser/input/MoveToCell.ts +251 -0
  70. package/node_modules/@xterm/xterm/src/browser/public/Terminal.ts +275 -0
  71. package/node_modules/@xterm/xterm/src/browser/renderer/dom/DomRenderer.ts +542 -0
  72. package/node_modules/@xterm/xterm/src/browser/renderer/dom/DomRendererRowFactory.ts +546 -0
  73. package/node_modules/@xterm/xterm/src/browser/renderer/dom/WidthCache.ts +167 -0
  74. package/node_modules/@xterm/xterm/src/browser/renderer/shared/Constants.ts +6 -0
  75. package/node_modules/@xterm/xterm/src/browser/renderer/shared/RendererUtils.ts +95 -0
  76. package/node_modules/@xterm/xterm/src/browser/renderer/shared/SelectionRenderModel.ts +93 -0
  77. package/node_modules/@xterm/xterm/src/browser/renderer/shared/Types.ts +84 -0
  78. package/node_modules/@xterm/xterm/src/browser/selection/SelectionModel.ts +144 -0
  79. package/node_modules/@xterm/xterm/src/browser/selection/Types.ts +15 -0
  80. package/node_modules/@xterm/xterm/src/browser/services/CharSizeService.ts +127 -0
  81. package/node_modules/@xterm/xterm/src/browser/services/CharacterJoinerService.ts +339 -0
  82. package/node_modules/@xterm/xterm/src/browser/services/CoreBrowserService.ts +137 -0
  83. package/node_modules/@xterm/xterm/src/browser/services/LinkProviderService.ts +28 -0
  84. package/node_modules/@xterm/xterm/src/browser/services/MouseService.ts +46 -0
  85. package/node_modules/@xterm/xterm/src/browser/services/RenderService.ts +376 -0
  86. package/node_modules/@xterm/xterm/src/browser/services/SelectionService.ts +1039 -0
  87. package/node_modules/@xterm/xterm/src/browser/services/Services.ts +158 -0
  88. package/node_modules/@xterm/xterm/src/browser/services/ThemeService.ts +198 -0
  89. package/node_modules/@xterm/xterm/src/browser/shared/Constants.ts +8 -0
  90. package/node_modules/@xterm/xterm/src/common/CircularList.ts +241 -0
  91. package/node_modules/@xterm/xterm/src/common/Clone.ts +23 -0
  92. package/node_modules/@xterm/xterm/src/common/Color.ts +376 -0
  93. package/node_modules/@xterm/xterm/src/common/CoreTerminal.ts +283 -0
  94. package/node_modules/@xterm/xterm/src/common/InputHandler.ts +3495 -0
  95. package/node_modules/@xterm/xterm/src/common/MultiKeyMap.ts +42 -0
  96. package/node_modules/@xterm/xterm/src/common/Platform.ts +44 -0
  97. package/node_modules/@xterm/xterm/src/common/SortedList.ts +194 -0
  98. package/node_modules/@xterm/xterm/src/common/TaskQueue.ts +166 -0
  99. package/node_modules/@xterm/xterm/src/common/TypedArrayUtils.ts +17 -0
  100. package/node_modules/@xterm/xterm/src/common/Types.ts +552 -0
  101. package/node_modules/@xterm/xterm/src/common/WindowsMode.ts +27 -0
  102. package/node_modules/@xterm/xterm/src/common/buffer/AttributeData.ts +211 -0
  103. package/node_modules/@xterm/xterm/src/common/buffer/Buffer.ts +662 -0
  104. package/node_modules/@xterm/xterm/src/common/buffer/BufferLine.ts +551 -0
  105. package/node_modules/@xterm/xterm/src/common/buffer/BufferRange.ts +13 -0
  106. package/node_modules/@xterm/xterm/src/common/buffer/BufferReflow.ts +226 -0
  107. package/node_modules/@xterm/xterm/src/common/buffer/BufferSet.ts +134 -0
  108. package/node_modules/@xterm/xterm/src/common/buffer/CellData.ts +94 -0
  109. package/node_modules/@xterm/xterm/src/common/buffer/Constants.ts +157 -0
  110. package/node_modules/@xterm/xterm/src/common/buffer/Marker.ts +43 -0
  111. package/node_modules/@xterm/xterm/src/common/buffer/Types.ts +52 -0
  112. package/node_modules/@xterm/xterm/src/common/data/Charsets.ts +256 -0
  113. package/node_modules/@xterm/xterm/src/common/data/EscapeSequences.ts +153 -0
  114. package/node_modules/@xterm/xterm/src/common/input/Keyboard.ts +373 -0
  115. package/node_modules/@xterm/xterm/src/common/input/TextDecoder.ts +346 -0
  116. package/node_modules/@xterm/xterm/src/common/input/UnicodeV6.ts +145 -0
  117. package/node_modules/@xterm/xterm/src/common/input/WriteBuffer.ts +247 -0
  118. package/node_modules/@xterm/xterm/src/common/input/XParseColor.ts +80 -0
  119. package/node_modules/@xterm/xterm/src/common/parser/Constants.ts +58 -0
  120. package/node_modules/@xterm/xterm/src/common/parser/DcsParser.ts +192 -0
  121. package/node_modules/@xterm/xterm/src/common/parser/EscapeSequenceParser.ts +792 -0
  122. package/node_modules/@xterm/xterm/src/common/parser/OscParser.ts +238 -0
  123. package/node_modules/@xterm/xterm/src/common/parser/Params.ts +229 -0
  124. package/node_modules/@xterm/xterm/src/common/parser/Types.ts +275 -0
  125. package/node_modules/@xterm/xterm/src/common/public/AddonManager.ts +53 -0
  126. package/node_modules/@xterm/xterm/src/common/public/BufferApiView.ts +35 -0
  127. package/node_modules/@xterm/xterm/src/common/public/BufferLineApiView.ts +29 -0
  128. package/node_modules/@xterm/xterm/src/common/public/BufferNamespaceApi.ts +36 -0
  129. package/node_modules/@xterm/xterm/src/common/public/ParserApi.ts +37 -0
  130. package/node_modules/@xterm/xterm/src/common/public/UnicodeApi.ts +27 -0
  131. package/node_modules/@xterm/xterm/src/common/services/BufferService.ts +154 -0
  132. package/node_modules/@xterm/xterm/src/common/services/CharsetService.ts +34 -0
  133. package/node_modules/@xterm/xterm/src/common/services/CoreMouseService.ts +365 -0
  134. package/node_modules/@xterm/xterm/src/common/services/CoreService.ts +92 -0
  135. package/node_modules/@xterm/xterm/src/common/services/DecorationService.ts +140 -0
  136. package/node_modules/@xterm/xterm/src/common/services/InstantiationService.ts +85 -0
  137. package/node_modules/@xterm/xterm/src/common/services/LogService.ts +124 -0
  138. package/node_modules/@xterm/xterm/src/common/services/OptionsService.ts +212 -0
  139. package/node_modules/@xterm/xterm/src/common/services/OscLinkService.ts +115 -0
  140. package/node_modules/@xterm/xterm/src/common/services/ServiceRegistry.ts +49 -0
  141. package/node_modules/@xterm/xterm/src/common/services/Services.ts +396 -0
  142. package/node_modules/@xterm/xterm/src/common/services/UnicodeService.ts +111 -0
  143. package/node_modules/@xterm/xterm/src/vs/base/browser/browser.ts +141 -0
  144. package/node_modules/@xterm/xterm/src/vs/base/browser/canIUse.ts +49 -0
  145. package/node_modules/@xterm/xterm/src/vs/base/browser/dom.ts +2369 -0
  146. package/node_modules/@xterm/xterm/src/vs/base/browser/fastDomNode.ts +316 -0
  147. package/node_modules/@xterm/xterm/src/vs/base/browser/globalPointerMoveMonitor.ts +112 -0
  148. package/node_modules/@xterm/xterm/src/vs/base/browser/iframe.ts +135 -0
  149. package/node_modules/@xterm/xterm/src/vs/base/browser/keyboardEvent.ts +213 -0
  150. package/node_modules/@xterm/xterm/src/vs/base/browser/mouseEvent.ts +229 -0
  151. package/node_modules/@xterm/xterm/src/vs/base/browser/touch.ts +372 -0
  152. package/node_modules/@xterm/xterm/src/vs/base/browser/ui/scrollbar/abstractScrollbar.ts +303 -0
  153. package/node_modules/@xterm/xterm/src/vs/base/browser/ui/scrollbar/horizontalScrollbar.ts +114 -0
  154. package/node_modules/@xterm/xterm/src/vs/base/browser/ui/scrollbar/scrollableElement.ts +720 -0
  155. package/node_modules/@xterm/xterm/src/vs/base/browser/ui/scrollbar/scrollableElementOptions.ts +165 -0
  156. package/node_modules/@xterm/xterm/src/vs/base/browser/ui/scrollbar/scrollbarArrow.ts +114 -0
  157. package/node_modules/@xterm/xterm/src/vs/base/browser/ui/scrollbar/scrollbarState.ts +243 -0
  158. package/node_modules/@xterm/xterm/src/vs/base/browser/ui/scrollbar/scrollbarVisibilityController.ts +118 -0
  159. package/node_modules/@xterm/xterm/src/vs/base/browser/ui/scrollbar/verticalScrollbar.ts +116 -0
  160. package/node_modules/@xterm/xterm/src/vs/base/browser/ui/widget.ts +57 -0
  161. package/node_modules/@xterm/xterm/src/vs/base/browser/window.ts +14 -0
  162. package/node_modules/@xterm/xterm/src/vs/base/common/arrays.ts +887 -0
  163. package/node_modules/@xterm/xterm/src/vs/base/common/arraysFind.ts +202 -0
  164. package/node_modules/@xterm/xterm/src/vs/base/common/assert.ts +71 -0
  165. package/node_modules/@xterm/xterm/src/vs/base/common/async.ts +1992 -0
  166. package/node_modules/@xterm/xterm/src/vs/base/common/cancellation.ts +148 -0
  167. package/node_modules/@xterm/xterm/src/vs/base/common/charCode.ts +450 -0
  168. package/node_modules/@xterm/xterm/src/vs/base/common/collections.ts +140 -0
  169. package/node_modules/@xterm/xterm/src/vs/base/common/decorators.ts +130 -0
  170. package/node_modules/@xterm/xterm/src/vs/base/common/equals.ts +146 -0
  171. package/node_modules/@xterm/xterm/src/vs/base/common/errors.ts +303 -0
  172. package/node_modules/@xterm/xterm/src/vs/base/common/event.ts +1778 -0
  173. package/node_modules/@xterm/xterm/src/vs/base/common/functional.ts +32 -0
  174. package/node_modules/@xterm/xterm/src/vs/base/common/hash.ts +316 -0
  175. package/node_modules/@xterm/xterm/src/vs/base/common/iterator.ts +159 -0
  176. package/node_modules/@xterm/xterm/src/vs/base/common/keyCodes.ts +526 -0
  177. package/node_modules/@xterm/xterm/src/vs/base/common/keybindings.ts +284 -0
  178. package/node_modules/@xterm/xterm/src/vs/base/common/lazy.ts +47 -0
  179. package/node_modules/@xterm/xterm/src/vs/base/common/lifecycle.ts +801 -0
  180. package/node_modules/@xterm/xterm/src/vs/base/common/linkedList.ts +142 -0
  181. package/node_modules/@xterm/xterm/src/vs/base/common/map.ts +202 -0
  182. package/node_modules/@xterm/xterm/src/vs/base/common/numbers.ts +98 -0
  183. package/node_modules/@xterm/xterm/src/vs/base/common/observable.ts +76 -0
  184. package/node_modules/@xterm/xterm/src/vs/base/common/observableInternal/api.ts +31 -0
  185. package/node_modules/@xterm/xterm/src/vs/base/common/observableInternal/autorun.ts +281 -0
  186. package/node_modules/@xterm/xterm/src/vs/base/common/observableInternal/base.ts +489 -0
  187. package/node_modules/@xterm/xterm/src/vs/base/common/observableInternal/debugName.ts +145 -0
  188. package/node_modules/@xterm/xterm/src/vs/base/common/observableInternal/derived.ts +428 -0
  189. package/node_modules/@xterm/xterm/src/vs/base/common/observableInternal/lazyObservableValue.ts +146 -0
  190. package/node_modules/@xterm/xterm/src/vs/base/common/observableInternal/logging.ts +328 -0
  191. package/node_modules/@xterm/xterm/src/vs/base/common/observableInternal/promise.ts +209 -0
  192. package/node_modules/@xterm/xterm/src/vs/base/common/observableInternal/utils.ts +610 -0
  193. package/node_modules/@xterm/xterm/src/vs/base/common/platform.ts +281 -0
  194. package/node_modules/@xterm/xterm/src/vs/base/common/scrollable.ts +522 -0
  195. package/node_modules/@xterm/xterm/src/vs/base/common/sequence.ts +34 -0
  196. package/node_modules/@xterm/xterm/src/vs/base/common/stopwatch.ts +43 -0
  197. package/node_modules/@xterm/xterm/src/vs/base/common/strings.ts +557 -0
  198. package/node_modules/@xterm/xterm/src/vs/base/common/symbols.ts +9 -0
  199. package/node_modules/@xterm/xterm/src/vs/base/common/uint.ts +59 -0
  200. package/node_modules/@xterm/xterm/src/vs/patches/nls.ts +90 -0
  201. package/node_modules/@xterm/xterm/src/vs/typings/base-common.d.ts +20 -0
  202. package/node_modules/@xterm/xterm/src/vs/typings/require.d.ts +42 -0
  203. package/node_modules/@xterm/xterm/src/vs/typings/vscode-globals-nls.d.ts +36 -0
  204. package/node_modules/@xterm/xterm/src/vs/typings/vscode-globals-product.d.ts +33 -0
  205. package/node_modules/@xterm/xterm/typings/xterm.d.ts +1957 -0
  206. package/node_modules/node-addon-api/LICENSE.md +9 -0
  207. package/node_modules/node-addon-api/README.md +319 -0
  208. package/node_modules/node-addon-api/common.gypi +20 -0
  209. package/node_modules/node-addon-api/except.gypi +25 -0
  210. package/node_modules/node-addon-api/index.js +12 -0
  211. package/node_modules/node-addon-api/napi-inl.deprecated.h +186 -0
  212. package/node_modules/node-addon-api/napi-inl.h +6607 -0
  213. package/node_modules/node-addon-api/napi.h +3201 -0
  214. package/node_modules/node-addon-api/node_addon_api.gyp +32 -0
  215. package/node_modules/node-addon-api/node_api.gyp +9 -0
  216. package/node_modules/node-addon-api/noexcept.gypi +26 -0
  217. package/node_modules/node-addon-api/nothing.c +0 -0
  218. package/node_modules/node-addon-api/package-support.json +21 -0
  219. package/node_modules/node-addon-api/package.json +480 -0
  220. package/node_modules/node-addon-api/tools/README.md +73 -0
  221. package/node_modules/node-addon-api/tools/check-napi.js +99 -0
  222. package/node_modules/node-addon-api/tools/clang-format.js +71 -0
  223. package/node_modules/node-addon-api/tools/conversion.js +301 -0
  224. package/node_modules/node-addon-api/tools/eslint-format.js +79 -0
  225. package/node_modules/node-pty/LICENSE +69 -0
  226. package/node_modules/node-pty/README.md +164 -0
  227. package/node_modules/node-pty/binding.gyp +150 -0
  228. package/node_modules/node-pty/lib/conpty_console_list_agent.js +25 -0
  229. package/node_modules/node-pty/lib/eventEmitter2.js +47 -0
  230. package/node_modules/node-pty/lib/index.js +52 -0
  231. package/node_modules/node-pty/lib/interfaces.js +7 -0
  232. package/node_modules/node-pty/lib/shared/conout.js +10 -0
  233. package/node_modules/node-pty/lib/terminal.js +190 -0
  234. package/node_modules/node-pty/lib/types.js +7 -0
  235. package/node_modules/node-pty/lib/unixTerminal.js +351 -0
  236. package/node_modules/node-pty/lib/utils.js +38 -0
  237. package/node_modules/node-pty/lib/windowsConoutConnection.js +131 -0
  238. package/node_modules/node-pty/lib/windowsPtyAgent.js +344 -0
  239. package/node_modules/node-pty/lib/windowsTerminal.js +209 -0
  240. package/node_modules/node-pty/lib/worker/conoutSocketWorker.js +22 -0
  241. package/node_modules/node-pty/package.json +66 -0
  242. package/node_modules/node-pty/prebuilds/darwin-arm64/pty.node +0 -0
  243. package/node_modules/node-pty/prebuilds/darwin-arm64/spawn-helper +0 -0
  244. package/node_modules/node-pty/prebuilds/darwin-x64/pty.node +0 -0
  245. package/node_modules/node-pty/prebuilds/darwin-x64/spawn-helper +0 -0
  246. package/node_modules/node-pty/prebuilds/linux-arm64/pty.node +0 -0
  247. package/node_modules/node-pty/prebuilds/linux-x64/pty.node +0 -0
  248. package/node_modules/node-pty/prebuilds/win32-arm64/conpty/OpenConsole.exe +0 -0
  249. package/node_modules/node-pty/prebuilds/win32-arm64/conpty/conpty.dll +0 -0
  250. package/node_modules/node-pty/prebuilds/win32-arm64/conpty.node +0 -0
  251. package/node_modules/node-pty/prebuilds/win32-arm64/conpty.pdb +0 -0
  252. package/node_modules/node-pty/prebuilds/win32-arm64/conpty_console_list.node +0 -0
  253. package/node_modules/node-pty/prebuilds/win32-arm64/conpty_console_list.pdb +0 -0
  254. package/node_modules/node-pty/prebuilds/win32-x64/conpty/OpenConsole.exe +0 -0
  255. package/node_modules/node-pty/prebuilds/win32-x64/conpty/conpty.dll +0 -0
  256. package/node_modules/node-pty/prebuilds/win32-x64/conpty.node +0 -0
  257. package/node_modules/node-pty/prebuilds/win32-x64/conpty.pdb +0 -0
  258. package/node_modules/node-pty/prebuilds/win32-x64/conpty_console_list.node +0 -0
  259. package/node_modules/node-pty/prebuilds/win32-x64/conpty_console_list.pdb +0 -0
  260. package/node_modules/node-pty/scripts/post-install.js +76 -0
  261. package/node_modules/node-pty/scripts/prebuild.js +34 -0
  262. package/node_modules/node-pty/src/unix/pty.cc +876 -0
  263. package/node_modules/node-pty/src/unix/spawn-helper.cc +23 -0
  264. package/node_modules/node-pty/src/win/conpty.cc +616 -0
  265. package/node_modules/node-pty/src/win/conpty.h +41 -0
  266. package/node_modules/node-pty/src/win/conpty_console_list.cc +44 -0
  267. package/node_modules/node-pty/src/win/path_util.cc +95 -0
  268. package/node_modules/node-pty/src/win/path_util.h +26 -0
  269. package/node_modules/node-pty/third_party/conpty/1.25.260303002/win10-arm64/OpenConsole.exe +0 -0
  270. package/node_modules/node-pty/third_party/conpty/1.25.260303002/win10-arm64/conpty.dll +0 -0
  271. package/node_modules/node-pty/third_party/conpty/1.25.260303002/win10-x64/OpenConsole.exe +0 -0
  272. package/node_modules/node-pty/third_party/conpty/1.25.260303002/win10-x64/conpty.dll +0 -0
  273. package/node_modules/node-pty/typings/node-pty.d.ts +215 -0
  274. package/node_modules/ws/LICENSE +20 -0
  275. package/node_modules/ws/README.md +548 -0
  276. package/node_modules/ws/browser.js +8 -0
  277. package/node_modules/ws/index.js +22 -0
  278. package/node_modules/ws/lib/buffer-util.js +131 -0
  279. package/node_modules/ws/lib/constants.js +19 -0
  280. package/node_modules/ws/lib/event-target.js +292 -0
  281. package/node_modules/ws/lib/extension.js +203 -0
  282. package/node_modules/ws/lib/limiter.js +55 -0
  283. package/node_modules/ws/lib/permessage-deflate.js +530 -0
  284. package/node_modules/ws/lib/receiver.js +743 -0
  285. package/node_modules/ws/lib/sender.js +607 -0
  286. package/node_modules/ws/lib/stream.js +161 -0
  287. package/node_modules/ws/lib/subprotocol.js +62 -0
  288. package/node_modules/ws/lib/validation.js +152 -0
  289. package/node_modules/ws/lib/websocket-server.js +562 -0
  290. package/node_modules/ws/lib/websocket.js +1421 -0
  291. package/node_modules/ws/package.json +74 -0
  292. package/node_modules/ws/wrapper.mjs +21 -0
  293. package/package.json +52 -0
  294. package/src/manager/command-resolver.mjs +140 -0
  295. package/src/manager/config.mjs +94 -0
  296. package/src/manager/install-channels.mjs +268 -0
  297. package/src/manager/main.mjs +136 -0
  298. package/src/manager/providers.mjs +601 -0
  299. package/src/manager/report-shims.mjs +104 -0
  300. package/src/manager/server.mjs +421 -0
  301. package/src/manager/session-manager.mjs +306 -0
  302. package/src/manager/session.mjs +531 -0
  303. package/src/manager/shell-env.mjs +150 -0
  304. package/src/manager/usage.mjs +535 -0
  305. package/src/manager/versions.mjs +62 -0
  306. package/src/report/hooks.mjs +150 -0
  307. package/web/app.js +916 -0
  308. package/web/art/art.css +186 -0
  309. package/web/art/characters/anthropic/idle.png +0 -0
  310. package/web/art/characters/anthropic/locked.png +0 -0
  311. package/web/art/characters/anthropic/working.png +0 -0
  312. package/web/art/characters/google/idle.png +0 -0
  313. package/web/art/characters/google/locked.png +0 -0
  314. package/web/art/characters/google/working.png +0 -0
  315. package/web/art/characters/openai/idle.png +0 -0
  316. package/web/art/characters/openai/locked.png +0 -0
  317. package/web/art/characters/openai/working.png +0 -0
  318. package/web/art/characters/shell/idle.png +0 -0
  319. package/web/art/characters/shell/locked.png +0 -0
  320. package/web/art/characters/shell/working.png +0 -0
  321. package/web/art/characters/xai/idle.png +0 -0
  322. package/web/art/characters/xai/locked.png +0 -0
  323. package/web/art/characters/xai/working.png +0 -0
  324. package/web/art/familiars/aether.png +0 -0
  325. package/web/art/familiars/flame.png +0 -0
  326. package/web/art/familiars/leaf.png +0 -0
  327. package/web/art/familiars/night.png +0 -0
  328. package/web/art/icons/anthropic.png +0 -0
  329. package/web/art/icons/google.png +0 -0
  330. package/web/art/icons/openai.png +0 -0
  331. package/web/art/icons/shell.png +0 -0
  332. package/web/art/icons/xai.png +0 -0
  333. package/web/art/page.png +0 -0
  334. package/web/art/ui/frame.png +0 -0
  335. package/web/art/ui/gem-mana.png +0 -0
  336. package/web/art/ui/gem-vitality.png +0 -0
  337. package/web/art/ui/guild-crest.png +0 -0
  338. package/web/art/ui/level-medallion.png +0 -0
  339. package/web/art/ui/padlock.png +0 -0
  340. package/web/icons/README.md +8 -0
  341. package/web/index.html +154 -0
  342. package/web/styles.css +226 -0
@@ -0,0 +1,164 @@
1
+ # node-pty
2
+
3
+ [![Build Status](https://dev.azure.com/vscode/node-pty/_apis/build/status/Microsoft.node-pty?branchName=main)](https://dev.azure.com/vscode/node-pty/_build/latest?definitionId=11&branchName=main)
4
+
5
+ `forkpty(3)` bindings for node.js. This allows you to fork processes with pseudoterminal file descriptors. It returns a terminal object which allows reads and writes.
6
+
7
+ This is useful for:
8
+
9
+ - Writing a terminal emulator (eg. via [xterm.js](https://github.com/sourcelair/xterm.js)).
10
+ - Getting certain programs to *think* you're a terminal, such as when you need a program to send you control sequences.
11
+
12
+ `node-pty` supports Linux, macOS and Windows. Windows support is possible by utilizing the [Windows conpty API](https://blogs.msdn.microsoft.com/commandline/2018/08/02/windows-command-line-introducing-the-windows-pseudo-console-conpty/) on Windows 1809+.
13
+
14
+ > **Note:** Support for the `winpty` library has been removed. Windows 10 version 1809 (build 18309) or later is now required.
15
+
16
+ ## API
17
+
18
+ The full API for node-pty is contained within the [TypeScript declaration file](https://github.com/microsoft/node-pty/blob/main/typings/node-pty.d.ts), use the branch/tag picker in GitHub (`w`) to navigate to the correct version of the API.
19
+
20
+ ## Example Usage
21
+
22
+ ```js
23
+ import * as os from 'node:os';
24
+ import * as pty from 'node-pty';
25
+
26
+ const shell = os.platform() === 'win32' ? 'powershell.exe' : 'bash';
27
+
28
+ const ptyProcess = pty.spawn(shell, [], {
29
+ name: 'xterm-color',
30
+ cols: 80,
31
+ rows: 30,
32
+ cwd: process.env.HOME,
33
+ env: process.env
34
+ });
35
+
36
+ ptyProcess.onData((data) => {
37
+ process.stdout.write(data);
38
+ });
39
+
40
+ ptyProcess.write('ls\r');
41
+ ptyProcess.resize(100, 40);
42
+ ptyProcess.write('ls\r');
43
+ ```
44
+
45
+ ## Real-world Uses
46
+
47
+ `node-pty` powers many different terminal emulators, including:
48
+
49
+ - [Microsoft Visual Studio Code](https://code.visualstudio.com)
50
+ - [Hyper](https://hyper.is/)
51
+ - [Upterm](https://github.com/railsware/upterm)
52
+ - [Script Runner](https://github.com/ioquatix/script-runner) for Atom.
53
+ - [Theia](https://github.com/theia-ide/theia)
54
+ - [FreeMAN](https://github.com/matthew-matvei/freeman) file manager
55
+ - [terminus](https://atom.io/packages/terminus) - An Atom plugin for providing terminals inside your Atom workspace.
56
+ - [x-terminal](https://atom.io/packages/x-terminal) - Also an Atom plugin that provides terminals inside your Atom workspace.
57
+ - [Termination](https://atom.io/packages/termination) - Also an Atom plugin that provides terminals inside your Atom workspace.
58
+ - [atom-xterm](https://atom.io/packages/atom-xterm) - Also an Atom plugin that provides terminals inside your Atom workspace.
59
+ - [electerm](https://github.com/electerm/electerm) Terminal/SSH/SFTP client(Linux, macOS, Windows).
60
+ - [Extraterm](http://extraterm.org/)
61
+ - [Wetty](https://github.com/krishnasrinivas/wetty) Browser based Terminal over HTTP and HTTPS
62
+ - [nomad](https://github.com/lukebarnard1/nomad-term)
63
+ - [DockerStacks](https://github.com/sfx101/docker-stacks) Local LAMP/LEMP stack using Docker
64
+ - [TeleType](https://github.com/akshaykmr/TeleType): cli tool that allows you to share your terminal online conveniently. Show off mad cli-fu, help a colleague, teach, or troubleshoot.
65
+ - [mesos-term](https://github.com/criteo/mesos-term): A web terminal for Apache Mesos. It allows to execute commands within containers.
66
+ - [Commas](https://github.com/CyanSalt/commas): A hackable terminal and command runner.
67
+ - [ENiGMA½ BBS Software](https://github.com/NuSkooler/enigma-bbs): A modern BBS software with a nostalgic flair!
68
+ - [Tinkerun](https://github.com/tinkerun/tinkerun): A new way of running Tinker.
69
+ - [Tess](https://tessapp.dev): Hackable, simple and rapid terminal for the new era of technology 👍
70
+ - [NxShell](https://nxshell.github.io/): An easy to use new terminal for Windows/Linux/MacOS platform.
71
+ - [OpenSumi](https://github.com/opensumi/core): A framework helps you quickly build Cloud or Desktop IDE products.
72
+ - [Enjoy Git](https://github.com/huangcs427/enjoy-git-release): A modern Git client featuring an intuitive user interface, built with Electron, Vue 3, and TypeScript.
73
+ - [Logos](https://github.com/zixiao-labs/logos): A Modern, Lightweight Code Editor, built with Electron, Vue 3, and TypeScript.
74
+
75
+ Do you use node-pty in your application as well? Please open a [Pull Request](https://github.com/Tyriar/node-pty/pulls) to include it here. We would love to have it in our list.
76
+
77
+ ## Building
78
+
79
+ ```bash
80
+ # Install dependencies and build C++
81
+ npm install
82
+ # Compile TypeScript -> JavaScript
83
+ npm run build
84
+ ```
85
+
86
+ ## Dependencies
87
+
88
+ Node.JS 16 or Electron 19 is required to use `node-pty`. What version of node is supported is currently mostly bound to [whatever version Visual Studio Code is using](https://github.com/microsoft/node-pty/issues/557#issuecomment-1332193541).
89
+
90
+ ### Linux (apt)
91
+
92
+ ```sh
93
+ sudo apt install -y make python build-essential
94
+ ```
95
+
96
+ ### macOS
97
+
98
+ Xcode is needed to compile the sources, this can be installed from the App Store.
99
+
100
+ ### Windows
101
+
102
+ `npm install` requires some tools to be present in the system like Python and C++ compiler. Windows users can easily install them by running the following command in PowerShell as administrator. For more information see https://github.com/felixrieseberg/windows-build-tools:
103
+
104
+ ```sh
105
+ npm install --global --production windows-build-tools
106
+ ```
107
+
108
+ The following are also needed:
109
+
110
+ - [Windows SDK](https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk) - only the "Desktop C++ Apps" components are needed to be installed
111
+ - Spectre-mitigated libraries - In order to avoid the build error "MSB8040: Spectre-mitigated libraries are required for this project", open the Visual Studio Installer, press the Modify button, navigate to the "Individual components" tab, search "Spectre", and install an option like "MSVC v143 - VS 2022 C++ x64/x86 Spectre-mitigated libs (Latest)" (the exact option to install will depend on your version of Visual Studio as well as your operating system architecture)
112
+
113
+ ## Debugging
114
+
115
+ [The wiki](https://github.com/Microsoft/node-pty/wiki/Debugging) contains instructions for debugging node-pty.
116
+
117
+ ## Security
118
+
119
+ All processes launched from node-pty will launch at the same permission level of the parent process. Take care particularly when using node-pty inside a server that's accessible on the internet. We recommend launching the pty inside a container to protect your host machine.
120
+
121
+ ## Thread Safety
122
+
123
+ Note that node-pty is not thread safe so running it across multiple worker threads in node.js could cause issues.
124
+
125
+ ## Flow Control
126
+
127
+ Automatic flow control can be enabled by either providing `handleFlowControl = true` in the constructor options or setting it later on:
128
+
129
+ ```js
130
+ const PAUSE = '\x13'; // XOFF
131
+ const RESUME = '\x11'; // XON
132
+
133
+ const ptyProcess = pty.spawn(shell, [], {handleFlowControl: true});
134
+
135
+ // flow control in action
136
+ ptyProcess.write(PAUSE); // pty will block and pause the child program
137
+ ...
138
+ ptyProcess.write(RESUME); // pty will enter flow mode and resume the child program
139
+
140
+ // temporarily disable/re-enable flow control
141
+ ptyProcess.handleFlowControl = false;
142
+ ...
143
+ ptyProcess.handleFlowControl = true;
144
+ ```
145
+
146
+ By default `PAUSE` and `RESUME` are XON/XOFF control codes (as shown above). To avoid conflicts in environments that use these control codes for different purposes the messages can be customized as `flowControlPause: string` and `flowControlResume: string` in the constructor options. `PAUSE` and `RESUME` are not passed to the underlying pseudoterminal if flow control is enabled.
147
+
148
+ ## Troubleshooting
149
+
150
+ ### Powershell gives error 8009001d
151
+
152
+ > Internal Windows PowerShell error. Loading managed Windows PowerShell failed with error 8009001d.
153
+
154
+ This happens when PowerShell is launched with no `SystemRoot` environment variable present.
155
+
156
+ ## pty.js
157
+
158
+ This project is forked from [chjj/pty.js](https://github.com/chjj/pty.js) with the primary goals being to provide better support for later Node.js versions and Windows.
159
+
160
+ ## License
161
+
162
+ Copyright (c) 2012-2015, Christopher Jeffrey (MIT License).<br>
163
+ Copyright (c) 2016, Daniel Imms (MIT License).<br>
164
+ Copyright (c) 2018, Microsoft Corporation (MIT License).
@@ -0,0 +1,150 @@
1
+ {
2
+ 'target_defaults': {
3
+ 'dependencies': [
4
+ "<!(node -p \"require('node-addon-api').targets\"):node_addon_api_except",
5
+ ],
6
+ 'conditions': [
7
+ ['OS=="win"', {
8
+ 'msvs_configuration_attributes': {
9
+ 'SpectreMitigation': 'Spectre'
10
+ },
11
+ 'msvs_settings': {
12
+ 'VCCLCompilerTool': {
13
+ 'AdditionalOptions': [
14
+ '/guard:cf',
15
+ '/sdl',
16
+ '/W3',
17
+ '/we4146',
18
+ '/we4244',
19
+ '/we4267',
20
+ '/ZH:SHA_256'
21
+ ]
22
+ },
23
+ 'VCLinkerTool': {
24
+ 'AdditionalOptions': [
25
+ '/DYNAMICBASE',
26
+ '/guard:cf'
27
+ ]
28
+ }
29
+ },
30
+ }, {
31
+ 'cflags': ['-O2', '-fstack-protector-strong'],
32
+ }],
33
+ ],
34
+ },
35
+ 'conditions': [
36
+ ['OS=="win"', {
37
+ 'targets': [
38
+ {
39
+ 'target_name': 'conpty',
40
+ 'sources' : [
41
+ 'src/win/conpty.cc',
42
+ 'src/win/path_util.cc'
43
+ ],
44
+ 'libraries': [
45
+ '-lshlwapi'
46
+ ],
47
+ },
48
+ {
49
+ 'target_name': 'conpty_console_list',
50
+ 'sources' : [
51
+ 'src/win/conpty_console_list.cc'
52
+ ],
53
+ }
54
+ ]
55
+ }, { # OS!="win"
56
+ 'targets': [
57
+ {
58
+ 'target_name': 'pty',
59
+ 'sources': [
60
+ 'src/unix/pty.cc',
61
+ ],
62
+ 'libraries': [
63
+ '-lutil'
64
+ ],
65
+ 'cflags': ['-Wall'],
66
+ 'ldflags': [],
67
+ 'conditions': [
68
+ # http://www.gnu.org/software/gnulib/manual/html_node/forkpty.html
69
+ # One some systems (at least including Cygwin, Interix,
70
+ # OSF/1 4 and 5, and Mac OS X) linking with -lutil is not required.
71
+ ['OS=="mac" or OS=="solaris"', {
72
+ 'libraries!': [
73
+ '-lutil'
74
+ ]
75
+ }],
76
+ ['OS=="linux"', {
77
+ 'variables': {
78
+ 'sysroot%': '<!(node -p "process.env.SYSROOT_PATH || \'\'")',
79
+ 'target_arch%': '<!(node -p "process.env.npm_config_arch || process.arch")',
80
+ },
81
+ 'conditions': [
82
+ ['sysroot!=""', {
83
+ 'variables': {
84
+ 'gcc_include%': '<!(${CXX:-g++} -print-file-name=include)',
85
+ },
86
+ 'conditions': [
87
+ ['target_arch=="x64"', {
88
+ 'cflags': [
89
+ '--sysroot=<(sysroot)',
90
+ '-nostdinc',
91
+ '-isystem<(gcc_include)',
92
+ '-isystem<(sysroot)/usr/include',
93
+ '-isystem<(sysroot)/usr/include/x86_64-linux-gnu'
94
+ ],
95
+ 'cflags_cc': [
96
+ '-nostdinc++',
97
+ '-isystem<(sysroot)/../include/c++/10.5.0',
98
+ '-isystem<(sysroot)/../include/c++/10.5.0/x86_64-linux-gnu',
99
+ '-isystem<(sysroot)/../include/c++/10.5.0/backward'
100
+ ],
101
+ 'ldflags': [
102
+ '--sysroot=<(sysroot)',
103
+ '-L<(sysroot)/lib',
104
+ '-L<(sysroot)/usr/lib'
105
+ ],
106
+ }],
107
+ ['target_arch=="arm64"', {
108
+ 'cflags': [
109
+ '--sysroot=<(sysroot)',
110
+ '-nostdinc',
111
+ '-isystem<(gcc_include)',
112
+ '-isystem<(sysroot)/usr/include',
113
+ '-isystem<(sysroot)/usr/include/aarch64-linux-gnu'
114
+ ],
115
+ 'cflags_cc': [
116
+ '-nostdinc++',
117
+ '-isystem<(sysroot)/../include/c++/10.5.0',
118
+ '-isystem<(sysroot)/../include/c++/10.5.0/aarch64-linux-gnu',
119
+ '-isystem<(sysroot)/../include/c++/10.5.0/backward'
120
+ ],
121
+ 'ldflags': [
122
+ '--sysroot=<(sysroot)',
123
+ '-L<(sysroot)/lib',
124
+ '-L<(sysroot)/usr/lib'
125
+ ],
126
+ }]
127
+ ]
128
+ }]
129
+ ]
130
+ }]
131
+ ]
132
+ }
133
+ ]
134
+ }],
135
+ ['OS=="mac"', {
136
+ 'targets': [
137
+ {
138
+ 'target_name': 'spawn-helper',
139
+ 'type': 'executable',
140
+ 'sources': [
141
+ 'src/unix/spawn-helper.cc',
142
+ ],
143
+ "xcode_settings": {
144
+ "MACOSX_DEPLOYMENT_TARGET":"10.7"
145
+ }
146
+ },
147
+ ]
148
+ }]
149
+ ]
150
+ }
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) 2019, Microsoft Corporation (MIT License).
4
+ *
5
+ * This module fetches the console process list for a particular PID. It must be
6
+ * called from a different process (child_process.fork) as there can only be a
7
+ * single console attached to a process.
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ var utils_1 = require("./utils");
11
+ var getConsoleProcessList = (0, utils_1.loadNativeModule)('conpty_console_list').module.getConsoleProcessList;
12
+ var shellPid = parseInt(process.argv[2], 10);
13
+ var consoleProcessList = [];
14
+ if (shellPid > 0) {
15
+ try {
16
+ consoleProcessList = getConsoleProcessList(shellPid);
17
+ }
18
+ catch (_a) {
19
+ // AttachConsole can fail if the process already exited or is invalid.
20
+ consoleProcessList = [];
21
+ }
22
+ }
23
+ process.send({ consoleProcessList: consoleProcessList });
24
+ process.exit(0);
25
+ //# sourceMappingURL=conpty_console_list_agent.js.map
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) 2019, Microsoft Corporation (MIT License).
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.EventEmitter2 = void 0;
7
+ var EventEmitter2 = /** @class */ (function () {
8
+ function EventEmitter2() {
9
+ this._listeners = [];
10
+ }
11
+ Object.defineProperty(EventEmitter2.prototype, "event", {
12
+ get: function () {
13
+ var _this = this;
14
+ if (!this._event) {
15
+ this._event = function (listener) {
16
+ _this._listeners.push(listener);
17
+ var disposable = {
18
+ dispose: function () {
19
+ for (var i = 0; i < _this._listeners.length; i++) {
20
+ if (_this._listeners[i] === listener) {
21
+ _this._listeners.splice(i, 1);
22
+ return;
23
+ }
24
+ }
25
+ }
26
+ };
27
+ return disposable;
28
+ };
29
+ }
30
+ return this._event;
31
+ },
32
+ enumerable: false,
33
+ configurable: true
34
+ });
35
+ EventEmitter2.prototype.fire = function (data) {
36
+ var queue = [];
37
+ for (var i = 0; i < this._listeners.length; i++) {
38
+ queue.push(this._listeners[i]);
39
+ }
40
+ for (var i = 0; i < queue.length; i++) {
41
+ queue[i].call(undefined, data);
42
+ }
43
+ };
44
+ return EventEmitter2;
45
+ }());
46
+ exports.EventEmitter2 = EventEmitter2;
47
+ //# sourceMappingURL=eventEmitter2.js.map
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) 2012-2015, Christopher Jeffrey, Peter Sunde (MIT License)
4
+ * Copyright (c) 2016, Daniel Imms (MIT License).
5
+ * Copyright (c) 2018, Microsoft Corporation (MIT License).
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.native = void 0;
9
+ exports.spawn = spawn;
10
+ exports.fork = fork;
11
+ exports.createTerminal = createTerminal;
12
+ exports.open = open;
13
+ var utils_1 = require("./utils");
14
+ var terminalCtor;
15
+ if (process.platform === 'win32') {
16
+ terminalCtor = require('./windowsTerminal').WindowsTerminal;
17
+ }
18
+ else {
19
+ terminalCtor = require('./unixTerminal').UnixTerminal;
20
+ }
21
+ /**
22
+ * Forks a process as a pseudoterminal.
23
+ * @param file The file to launch.
24
+ * @param args The file's arguments as argv (string[]) or in a pre-escaped
25
+ * CommandLine format (string). Note that the CommandLine option is only
26
+ * available on Windows and is expected to be escaped properly.
27
+ * @param options The options of the terminal.
28
+ * @throws When the file passed to spawn with does not exists.
29
+ * @see CommandLineToArgvW https://msdn.microsoft.com/en-us/library/windows/desktop/bb776391(v=vs.85).aspx
30
+ * @see Parsing C++ Comamnd-Line Arguments https://msdn.microsoft.com/en-us/library/17w5ykft.aspx
31
+ * @see GetCommandLine https://msdn.microsoft.com/en-us/library/windows/desktop/ms683156.aspx
32
+ */
33
+ function spawn(file, args, opt) {
34
+ return new terminalCtor(file, args, opt);
35
+ }
36
+ /** @deprecated */
37
+ function fork(file, args, opt) {
38
+ return new terminalCtor(file, args, opt);
39
+ }
40
+ /** @deprecated */
41
+ function createTerminal(file, args, opt) {
42
+ return new terminalCtor(file, args, opt);
43
+ }
44
+ function open(options) {
45
+ return terminalCtor.open(options);
46
+ }
47
+ /**
48
+ * Expose the native API when not Windows, note that this is not public API and
49
+ * could be removed at any time.
50
+ */
51
+ exports.native = (process.platform !== 'win32' ? (0, utils_1.loadNativeModule)('pty').module : null);
52
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) 2016, Daniel Imms (MIT License).
4
+ * Copyright (c) 2018, Microsoft Corporation (MIT License).
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ //# sourceMappingURL=interfaces.js.map
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) 2020, Microsoft Corporation (MIT License).
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.getWorkerPipeName = getWorkerPipeName;
7
+ function getWorkerPipeName(conoutPipeName) {
8
+ return "".concat(conoutPipeName, "-worker");
9
+ }
10
+ //# sourceMappingURL=conout.js.map
@@ -0,0 +1,190 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) 2012-2015, Christopher Jeffrey (MIT License)
4
+ * Copyright (c) 2016, Daniel Imms (MIT License).
5
+ * Copyright (c) 2018, Microsoft Corporation (MIT License).
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.Terminal = exports.DEFAULT_ROWS = exports.DEFAULT_COLS = void 0;
9
+ var events_1 = require("events");
10
+ var eventEmitter2_1 = require("./eventEmitter2");
11
+ exports.DEFAULT_COLS = 80;
12
+ exports.DEFAULT_ROWS = 24;
13
+ /**
14
+ * Default messages to indicate PAUSE/RESUME for automatic flow control.
15
+ * To avoid conflicts with rebound XON/XOFF control codes (such as on-my-zsh),
16
+ * the sequences can be customized in `IPtyForkOptions`.
17
+ */
18
+ var FLOW_CONTROL_PAUSE = '\x13'; // defaults to XOFF
19
+ var FLOW_CONTROL_RESUME = '\x11'; // defaults to XON
20
+ var Terminal = /** @class */ (function () {
21
+ function Terminal(opt) {
22
+ this._pid = 0;
23
+ this._fd = 0;
24
+ this._cols = 0;
25
+ this._rows = 0;
26
+ this._readable = false;
27
+ this._writable = false;
28
+ this._onData = new eventEmitter2_1.EventEmitter2();
29
+ this._onExit = new eventEmitter2_1.EventEmitter2();
30
+ // for 'close'
31
+ this._internalee = new events_1.EventEmitter();
32
+ // setup flow control handling
33
+ this.handleFlowControl = !!(opt === null || opt === void 0 ? void 0 : opt.handleFlowControl);
34
+ this._flowControlPause = (opt === null || opt === void 0 ? void 0 : opt.flowControlPause) || FLOW_CONTROL_PAUSE;
35
+ this._flowControlResume = (opt === null || opt === void 0 ? void 0 : opt.flowControlResume) || FLOW_CONTROL_RESUME;
36
+ if (!opt) {
37
+ return;
38
+ }
39
+ // Do basic type checks here in case node-pty is being used within JavaScript. If the wrong
40
+ // types go through to the C++ side it can lead to hard to diagnose exceptions.
41
+ this._checkType('name', opt.name ? opt.name : undefined, 'string');
42
+ this._checkType('cols', opt.cols ? opt.cols : undefined, 'number');
43
+ this._checkType('rows', opt.rows ? opt.rows : undefined, 'number');
44
+ this._checkType('cwd', opt.cwd ? opt.cwd : undefined, 'string');
45
+ this._checkType('env', opt.env ? opt.env : undefined, 'object');
46
+ this._checkType('uid', opt.uid ? opt.uid : undefined, 'number');
47
+ this._checkType('gid', opt.gid ? opt.gid : undefined, 'number');
48
+ this._checkType('encoding', opt.encoding ? opt.encoding : undefined, 'string');
49
+ }
50
+ Object.defineProperty(Terminal.prototype, "onData", {
51
+ get: function () { return this._onData.event; },
52
+ enumerable: false,
53
+ configurable: true
54
+ });
55
+ Object.defineProperty(Terminal.prototype, "onExit", {
56
+ get: function () { return this._onExit.event; },
57
+ enumerable: false,
58
+ configurable: true
59
+ });
60
+ Object.defineProperty(Terminal.prototype, "pid", {
61
+ get: function () { return this._pid; },
62
+ enumerable: false,
63
+ configurable: true
64
+ });
65
+ Object.defineProperty(Terminal.prototype, "cols", {
66
+ get: function () { return this._cols; },
67
+ enumerable: false,
68
+ configurable: true
69
+ });
70
+ Object.defineProperty(Terminal.prototype, "rows", {
71
+ get: function () { return this._rows; },
72
+ enumerable: false,
73
+ configurable: true
74
+ });
75
+ Terminal.prototype.write = function (data) {
76
+ if (this.handleFlowControl) {
77
+ // PAUSE/RESUME messages are not forwarded to the pty
78
+ if (data === this._flowControlPause) {
79
+ this.pause();
80
+ return;
81
+ }
82
+ if (data === this._flowControlResume) {
83
+ this.resume();
84
+ return;
85
+ }
86
+ }
87
+ // everything else goes to the real pty
88
+ this._write(data);
89
+ };
90
+ Terminal.prototype._forwardEvents = function () {
91
+ var _this = this;
92
+ this.on('data', function (e) { return _this._onData.fire(e); });
93
+ this.on('exit', function (exitCode, signal) { return _this._onExit.fire({ exitCode: exitCode, signal: signal }); });
94
+ };
95
+ Terminal.prototype._checkType = function (name, value, type, allowArray) {
96
+ if (allowArray === void 0) { allowArray = false; }
97
+ if (value === undefined) {
98
+ return;
99
+ }
100
+ if (allowArray) {
101
+ if (Array.isArray(value)) {
102
+ value.forEach(function (v, i) {
103
+ if (typeof v !== type) {
104
+ throw new Error("".concat(name, "[").concat(i, "] must be a ").concat(type, " (not a ").concat(typeof v[i], ")"));
105
+ }
106
+ });
107
+ return;
108
+ }
109
+ }
110
+ if (typeof value !== type) {
111
+ throw new Error("".concat(name, " must be a ").concat(type, " (not a ").concat(typeof value, ")"));
112
+ }
113
+ };
114
+ /** See net.Socket.end */
115
+ Terminal.prototype.end = function (data) {
116
+ this._socket.end(data);
117
+ };
118
+ /** See stream.Readable.pipe */
119
+ Terminal.prototype.pipe = function (dest, options) {
120
+ return this._socket.pipe(dest, options);
121
+ };
122
+ /** See net.Socket.pause */
123
+ Terminal.prototype.pause = function () {
124
+ return this._socket.pause();
125
+ };
126
+ /** See net.Socket.resume */
127
+ Terminal.prototype.resume = function () {
128
+ return this._socket.resume();
129
+ };
130
+ /** See net.Socket.setEncoding */
131
+ Terminal.prototype.setEncoding = function (encoding) {
132
+ if (this._socket._decoder) {
133
+ delete this._socket._decoder;
134
+ }
135
+ if (encoding) {
136
+ this._socket.setEncoding(encoding);
137
+ }
138
+ };
139
+ Terminal.prototype.addListener = function (eventName, listener) { this.on(eventName, listener); };
140
+ Terminal.prototype.on = function (eventName, listener) {
141
+ if (eventName === 'close') {
142
+ this._internalee.on('close', listener);
143
+ return;
144
+ }
145
+ this._socket.on(eventName, listener);
146
+ };
147
+ Terminal.prototype.emit = function (eventName) {
148
+ var args = [];
149
+ for (var _i = 1; _i < arguments.length; _i++) {
150
+ args[_i - 1] = arguments[_i];
151
+ }
152
+ if (eventName === 'close') {
153
+ return this._internalee.emit.apply(this._internalee, arguments);
154
+ }
155
+ return this._socket.emit.apply(this._socket, arguments);
156
+ };
157
+ Terminal.prototype.listeners = function (eventName) {
158
+ return this._socket.listeners(eventName);
159
+ };
160
+ Terminal.prototype.removeListener = function (eventName, listener) {
161
+ this._socket.removeListener(eventName, listener);
162
+ };
163
+ Terminal.prototype.removeAllListeners = function (eventName) {
164
+ this._socket.removeAllListeners(eventName);
165
+ };
166
+ Terminal.prototype.once = function (eventName, listener) {
167
+ this._socket.once(eventName, listener);
168
+ };
169
+ Terminal.prototype._close = function () {
170
+ this._socket.readable = false;
171
+ this.write = function () { };
172
+ this.end = function () { };
173
+ this._writable = false;
174
+ this._readable = false;
175
+ };
176
+ Terminal.prototype._parseEnv = function (env) {
177
+ var keys = Object.keys(env || {});
178
+ var pairs = [];
179
+ for (var i = 0; i < keys.length; i++) {
180
+ if (keys[i] === undefined) {
181
+ continue;
182
+ }
183
+ pairs.push(keys[i] + '=' + env[keys[i]]);
184
+ }
185
+ return pairs;
186
+ };
187
+ return Terminal;
188
+ }());
189
+ exports.Terminal = Terminal;
190
+ //# sourceMappingURL=terminal.js.map
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) 2017, Daniel Imms (MIT License).
4
+ * Copyright (c) 2018, Microsoft Corporation (MIT License).
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ //# sourceMappingURL=types.js.map