@alivault/pico 0.14.0 → 0.16.1

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 (703) hide show
  1. package/.output/public/_shell.html +19 -0
  2. package/.output/public/assets/PatchDiff-SN-mXa3p.js +343 -0
  3. package/.output/public/assets/{angular-html-BZNntD0J.js → angular-html-B9LEBPKs.js} +1 -1
  4. package/.output/public/assets/{angular-ts-SQQMYL2C.js → angular-ts-CD6u-Ij9.js} +1 -1
  5. package/.output/public/assets/{apl-D5V6uPDr.js → apl-VeDHIFIx.js} +1 -1
  6. package/.output/public/assets/app-shell-common-0xa28gDm.js +1 -0
  7. package/.output/public/assets/{astro-DeXKSaFP.js → astro-Dd8L1z6M.js} +1 -1
  8. package/.output/public/assets/{blade-Bu5re0Vg.js → blade-BNxrbiva.js} +1 -1
  9. package/.output/public/assets/{bsl-B1qbqNES.js → bsl-B0twaj2j.js} +1 -1
  10. package/.output/public/assets/{cairo-BDj8wWhy.js → cairo-DASKFAWI.js} +1 -1
  11. package/.output/public/assets/{cobol-nvZDS9LT.js → cobol-D_qN8j4K.js} +1 -1
  12. package/.output/public/assets/{coffee-BKLOTq4e.js → coffee-60nIQewd.js} +1 -1
  13. package/.output/public/assets/{cpp-D6g1DVNt.js → cpp-e1j1tDCV.js} +1 -1
  14. package/.output/public/assets/{crystal-DfoZI57w.js → crystal-brDfRjQ_.js} +1 -1
  15. package/.output/public/assets/{edge-DwocGnOF.js → edge-DadfRK3Q.js} +1 -1
  16. package/.output/public/assets/{elixir-Dtbfds1r.js → elixir-CsoHPmz3.js} +1 -1
  17. package/.output/public/assets/{elm-CpPtm471.js → elm-BLTa0sZG.js} +1 -1
  18. package/.output/public/assets/{erb--z3IM9Cb.js → erb-DIR2QRkp.js} +1 -1
  19. package/.output/public/assets/{erlang-Bc4hQuqa.js → erlang-DnbJbitJ.js} +1 -1
  20. package/.output/public/assets/{fortran-fixed-form-B02FOYI-.js → fortran-fixed-form-Bse4XUyD.js} +1 -1
  21. package/.output/public/assets/{fsharp-DhdR18vN.js → fsharp-Dy8OnZ0O.js} +1 -1
  22. package/.output/public/assets/{gdresource-DgnrMPIx.js → gdresource-BD_7yRHA.js} +1 -1
  23. package/.output/public/assets/{git-commit-DGJi7qBD.js → git-commit-CIMjlyHf.js} +1 -1
  24. package/.output/public/assets/{git-rebase-Ce47xoa6.js → git-rebase-DV2DyQK7.js} +1 -1
  25. package/.output/public/assets/{glimmer-js-C0BuzxQC.js → glimmer-js-DVG5pFvd.js} +1 -1
  26. package/.output/public/assets/{glimmer-ts-irOZ-cAQ.js → glimmer-ts-BeWaLARz.js} +1 -1
  27. package/.output/public/assets/{glsl-JAhLUe0P.js → glsl-BrOWUUEh.js} +1 -1
  28. package/.output/public/assets/{graphql-D2ba3BkR.js → graphql-B_3o81z5.js} +1 -1
  29. package/.output/public/assets/{hack-CgzUpY8l.js → hack-BW-0PxQy.js} +1 -1
  30. package/.output/public/assets/{haml-C-oIZcDo.js → haml-DnNXiHAO.js} +1 -1
  31. package/.output/public/assets/{handlebars-CbP-Mhzf.js → handlebars-CftcPtku.js} +1 -1
  32. package/.output/public/assets/{html-ddqpqPg0.js → html-D5IqfVuz.js} +1 -1
  33. package/.output/public/assets/{html-derivative-DWGxf_At.js → html-derivative-QNqmMkaY.js} +1 -1
  34. package/.output/public/assets/{http-Bg1nG1nG.js → http-Dd7eRKUa.js} +1 -1
  35. package/.output/public/assets/{hurl-zm47Pi1n.js → hurl-kBs5Ibg1.js} +1 -1
  36. package/.output/public/assets/{hxml-adC65L_J.js → hxml-CGx66ebi.js} +1 -1
  37. package/.output/public/assets/index-C-mxWGZ5.css +2 -0
  38. package/.output/public/assets/index-FOqZaR4L.js +48 -0
  39. package/.output/public/assets/{jinja-Bnj4awH5.js → jinja-BPoCSjyd.js} +1 -1
  40. package/.output/public/assets/{jison-CuCNs9Q3.js → jison-WHPVy3Jl.js} +1 -1
  41. package/.output/public/assets/{julia-DNYHzXlE.js → julia-BaKiQMPf.js} +1 -1
  42. package/.output/public/assets/{just-BlWkkmf2.js → just-BKMc7tVT.js} +1 -1
  43. package/.output/public/assets/{latex-DqPzjMIt.js → latex-Cczzu1HI.js} +1 -1
  44. package/.output/public/assets/{liquid-BURJK16h.js → liquid-DrJZrMEf.js} +1 -1
  45. package/.output/public/assets/{lua-31hdJClp.js → lua-CFIwCMnP.js} +1 -1
  46. package/.output/public/assets/{marko-C2ZcdSLh.js → marko-BreagErn.js} +1 -1
  47. package/.output/public/assets/{mdc-N1ii9pk5.js → mdc-CBcMHZUq.js} +1 -1
  48. package/.output/public/assets/{nextflow-JEyYUlIq.js → nextflow-CZbrTmS2.js} +1 -1
  49. package/.output/public/assets/{nginx-BuomO0W8.js → nginx-CMOi8dTH.js} +1 -1
  50. package/.output/public/assets/{nim-hKoEPsYL.js → nim-DbDZ9Wa-.js} +1 -1
  51. package/.output/public/assets/{perl-CAGVW6Ra.js → perl-DyRCGnKu.js} +1 -1
  52. package/.output/public/assets/{php-BycclmzS.js → php-Ciarv7b4.js} +1 -1
  53. package/.output/public/assets/plus-B1rJPgNv.js +1 -0
  54. package/.output/public/assets/preload-helper-Csz9R64u.js +5 -0
  55. package/.output/public/assets/{pug-4maJHz9G.js → pug-CVCqbfEm.js} +1 -1
  56. package/.output/public/assets/{qml-JLIQfzyb.js → qml-DechmdFA.js} +1 -1
  57. package/.output/public/assets/query-keys-C9jMaRnO.js +1 -0
  58. package/.output/public/assets/{razor-P8rbooCh.js → razor-bgzHke67.js} +1 -1
  59. package/.output/public/assets/right-sidebar-CWvXcZzC.js +1831 -0
  60. package/.output/public/assets/routes-CXlaorp4.js +23 -0
  61. package/.output/public/assets/{rst-C6GHyL-N.js → rst-Ce6_XwFd.js} +1 -1
  62. package/.output/public/assets/{ruby-Cl8PVkbY.js → ruby-BtLKlt8E.js} +1 -1
  63. package/.output/public/assets/{sas-CXoVwlZN.js → sas-Bco5tnse.js} +1 -1
  64. package/.output/public/assets/{scss-DNczJ95n.js → scss-KPCA05M8.js} +1 -1
  65. package/.output/public/assets/{shaderlab-DZ3Lsiak.js → shaderlab-uUHiM5Mm.js} +1 -1
  66. package/.output/public/assets/{shellsession-COm1V40U.js → shellsession-BnUZVYXU.js} +1 -1
  67. package/.output/public/assets/{soy-DwewhJ_3.js → soy-Dsrg4bVI.js} +1 -1
  68. package/.output/public/assets/{sparql-B9c85a_o.js → sparql-D5zsvcbT.js} +1 -1
  69. package/.output/public/assets/{stata-Bl--TAbZ.js → stata-BdK5CFUf.js} +1 -1
  70. package/.output/public/assets/{surrealql-BW79EE-U.js → surrealql-Blm5wp47.js} +1 -1
  71. package/.output/public/assets/{svelte-ziMErdPi.js → svelte-DZrj_gMz.js} +1 -1
  72. package/.output/public/assets/{templ-C_9I6ncv.js → templ-CJ7sDrtu.js} +1 -1
  73. package/.output/public/assets/terminal-panel-YGR6v-ZH.js +1 -0
  74. package/.output/public/assets/{tex-D8LVuLf5.js → tex-CvSRdXZA.js} +1 -1
  75. package/.output/public/assets/{ts-tags-DKuFCGsc.js → ts-tags-DgGFCSef.js} +1 -1
  76. package/.output/public/assets/{twig-Bs1kcsO6.js → twig-D8_PS89g.js} +1 -1
  77. package/.output/public/assets/{vue-Dnf0y5RU.js → vue-KvGEuYod.js} +1 -1
  78. package/.output/public/assets/{vue-html-CRtKS76J.js → vue-html-qAt9D-IF.js} +1 -1
  79. package/.output/public/assets/{vue-vine-BxjPqU7T.js → vue-vine-j1nOqxMu.js} +1 -1
  80. package/.output/public/assets/{xml-eU7M3iZJ.js → xml-BrFkMwfd.js} +1 -1
  81. package/.output/public/assets/{xsl-DSqe4nTO.js → xsl-OmCo2PyZ.js} +1 -1
  82. package/.output/public/index.html +19 -0
  83. package/README.md +171 -46
  84. package/bin/native-runtime.mjs +265 -0
  85. package/bin/pico.mjs +289 -222
  86. package/package.json +34 -31
  87. package/.output/nitro.json +0 -17
  88. package/.output/public/assets/index-DBVxXDtw.js +0 -54
  89. package/.output/public/assets/routes-yUxD2q-l.js +0 -2194
  90. package/.output/public/assets/styles-CUVz7jV9.css +0 -2
  91. package/.output/server/__23tanstack-start-plugin-adapters-y_fshQDY.mjs +0 -5
  92. package/.output/server/_chunks/ssr-renderer.mjs +0 -15
  93. package/.output/server/_libs/@base-ui/react+[...].mjs +0 -14512
  94. package/.output/server/_libs/@dnd-kit/core+[...].mjs +0 -2748
  95. package/.output/server/_libs/@pierre/diffs+[...].mjs +0 -19314
  96. package/.output/server/_libs/@pierre/trees+[...].mjs +0 -9236
  97. package/.output/server/_libs/@radix-ui/react-dialog+[...].mjs +0 -1789
  98. package/.output/server/_libs/@radix-ui/react-primitive+[...].mjs +0 -136
  99. package/.output/server/_libs/@tanstack/devtools-event-client+[...].mjs +0 -196
  100. package/.output/server/_libs/@tanstack/hotkeys+[...].mjs +0 -1607
  101. package/.output/server/_libs/@tanstack/react-router+[...].mjs +0 -13950
  102. package/.output/server/_libs/@tanstack/react-router-ssr-query+[...].mjs +0 -90
  103. package/.output/server/_libs/bail.mjs +0 -13
  104. package/.output/server/_libs/character-entities.mjs +0 -2135
  105. package/.output/server/_libs/class-variance-authority+clsx.mjs +0 -69
  106. package/.output/server/_libs/cmdk.mjs +0 -473
  107. package/.output/server/_libs/crossws.mjs +0 -2929
  108. package/.output/server/_libs/decode-named-character-reference+[...].mjs +0 -19
  109. package/.output/server/_libs/devlop.mjs +0 -5
  110. package/.output/server/_libs/diff.mjs +0 -732
  111. package/.output/server/_libs/dnd-kit__accessibility.mjs +0 -46
  112. package/.output/server/_libs/dnd-kit__sortable.mjs +0 -400
  113. package/.output/server/_libs/entities.mjs +0 -372
  114. package/.output/server/_libs/escape-string-regexp.mjs +0 -7
  115. package/.output/server/_libs/estree-util-is-identifier-name.mjs +0 -20
  116. package/.output/server/_libs/extend.mjs +0 -75
  117. package/.output/server/_libs/h3+rou3+srvx.mjs +0 -1216
  118. package/.output/server/_libs/hast-util-from-parse5+[...].mjs +0 -741
  119. package/.output/server/_libs/hast-util-raw+[...].mjs +0 -7897
  120. package/.output/server/_libs/hast-util-sanitize.mjs +0 -780
  121. package/.output/server/_libs/hast-util-to-jsx-runtime+[...].mjs +0 -1165
  122. package/.output/server/_libs/hookable.mjs +0 -41
  123. package/.output/server/_libs/html-url-attributes.mjs +0 -44
  124. package/.output/server/_libs/is-plain-obj.mjs +0 -8
  125. package/.output/server/_libs/longest-streak.mjs +0 -29
  126. package/.output/server/_libs/lucide-react.mjs +0 -788
  127. package/.output/server/_libs/markdown-table.mjs +0 -289
  128. package/.output/server/_libs/mdast-util-find-and-replace.mjs +0 -198
  129. package/.output/server/_libs/mdast-util-from-markdown+[...].mjs +0 -8409
  130. package/.output/server/_libs/mdast-util-gfm+[...].mjs +0 -2062
  131. package/.output/server/_libs/mdast-util-to-hast+[...].mjs +0 -1771
  132. package/.output/server/_libs/micromark-extension-gfm+[...].mjs +0 -2234
  133. package/.output/server/_libs/next-themes.mjs +0 -124
  134. package/.output/server/_libs/pierre__theme.mjs +0 -10
  135. package/.output/server/_libs/radix-ui__primitive.mjs +0 -9
  136. package/.output/server/_libs/radix-ui__react-compose-refs.mjs +0 -30
  137. package/.output/server/_libs/radix-ui__react-context.mjs +0 -88
  138. package/.output/server/_libs/react-markdown+[...].mjs +0 -2316
  139. package/.output/server/_libs/rehype-raw.mjs +0 -37
  140. package/.output/server/_libs/rehype-sanitize.mjs +0 -27
  141. package/.output/server/_libs/remark-gfm.mjs +0 -34
  142. package/.output/server/_libs/shiki.mjs +0 -16
  143. package/.output/server/_libs/shikijs__langs.mjs +0 -1355
  144. package/.output/server/_libs/shikijs__themes.mjs +0 -262
  145. package/.output/server/_libs/sonner.mjs +0 -908
  146. package/.output/server/_libs/tailwind-merge.mjs +0 -1962
  147. package/.output/server/_libs/tanstack__history.mjs +0 -342
  148. package/.output/server/_libs/tanstack__pacer.mjs +0 -1111
  149. package/.output/server/_libs/tanstack__query-core.mjs +0 -2202
  150. package/.output/server/_libs/tanstack__react-hotkeys.mjs +0 -152
  151. package/.output/server/_libs/tanstack__react-query.mjs +0 -180
  152. package/.output/server/_libs/tanstack__react-store.mjs +0 -39
  153. package/.output/server/_libs/tanstack__router-core.mjs +0 -6
  154. package/.output/server/_libs/tanstack__store.mjs +0 -28
  155. package/.output/server/_libs/ufo.mjs +0 -64
  156. package/.output/server/_libs/unctx.mjs +0 -82
  157. package/.output/server/_libs/ungap__structured-clone.mjs +0 -197
  158. package/.output/server/_libs/vaul.mjs +0 -1250
  159. package/.output/server/_libs/xterm__addon-fit.mjs +0 -44
  160. package/.output/server/_libs/xterm__xterm.mjs +0 -10234
  161. package/.output/server/_libs/zod.mjs +0 -3341
  162. package/.output/server/_routes/api/terminal/[id]/ws.mjs +0 -8874
  163. package/.output/server/_runtime.mjs +0 -35
  164. package/.output/server/_ssr/router-CN4JMm2A.mjs +0 -9733
  165. package/.output/server/_ssr/routes-BsQ26pbY.mjs +0 -29306
  166. package/.output/server/_ssr/routes-DbjuMLFI.mjs +0 -3400
  167. package/.output/server/_ssr/ssr.mjs +0 -5176
  168. package/.output/server/_ssr/start-jIczsXlR.mjs +0 -4
  169. package/.output/server/_tanstack-start-manifest_v-Bs4g_j1_.mjs +0 -77
  170. package/.output/server/index.mjs +0 -2670
  171. package/.output/server/node_modules/node-pty/LICENSE +0 -69
  172. package/.output/server/node_modules/node-pty/README.md +0 -165
  173. package/.output/server/node_modules/node-pty/binding.gyp +0 -111
  174. package/.output/server/node_modules/node-pty/build/Makefile +0 -369
  175. package/.output/server/node_modules/node-pty/build/Release/pty.node +0 -0
  176. package/.output/server/node_modules/node-pty/build/binding.Makefile +0 -6
  177. package/.output/server/node_modules/node-pty/build/pty.target.mk +0 -168
  178. package/.output/server/node_modules/node-pty/deps/.editorconfig +0 -2
  179. package/.output/server/node_modules/node-pty/deps/winpty/.drone.yml +0 -17
  180. package/.output/server/node_modules/node-pty/deps/winpty/.gitattributes +0 -19
  181. package/.output/server/node_modules/node-pty/deps/winpty/LICENSE +0 -21
  182. package/.output/server/node_modules/node-pty/deps/winpty/Makefile +0 -166
  183. package/.output/server/node_modules/node-pty/deps/winpty/README.md +0 -151
  184. package/.output/server/node_modules/node-pty/deps/winpty/RELEASES.md +0 -280
  185. package/.output/server/node_modules/node-pty/deps/winpty/VERSION.txt +0 -1
  186. package/.output/server/node_modules/node-pty/deps/winpty/configure +0 -167
  187. package/.output/server/node_modules/node-pty/deps/winpty/misc/BufferResizeTests.cc +0 -90
  188. package/.output/server/node_modules/node-pty/deps/winpty/misc/ChangeScreenBuffer.cc +0 -53
  189. package/.output/server/node_modules/node-pty/deps/winpty/misc/ClearConsole.cc +0 -72
  190. package/.output/server/node_modules/node-pty/deps/winpty/misc/ConinMode.cc +0 -117
  191. package/.output/server/node_modules/node-pty/deps/winpty/misc/ConinMode.ps1 +0 -116
  192. package/.output/server/node_modules/node-pty/deps/winpty/misc/ConoutMode.cc +0 -113
  193. package/.output/server/node_modules/node-pty/deps/winpty/misc/DebugClient.py +0 -42
  194. package/.output/server/node_modules/node-pty/deps/winpty/misc/DebugServer.py +0 -63
  195. package/.output/server/node_modules/node-pty/deps/winpty/misc/DumpLines.py +0 -5
  196. package/.output/server/node_modules/node-pty/deps/winpty/misc/EnableExtendedFlags.txt +0 -46
  197. package/.output/server/node_modules/node-pty/deps/winpty/misc/Font-Report-June2016/CP437-Consolas.txt +0 -528
  198. package/.output/server/node_modules/node-pty/deps/winpty/misc/Font-Report-June2016/CP437-Lucida.txt +0 -633
  199. package/.output/server/node_modules/node-pty/deps/winpty/misc/Font-Report-June2016/CP932.txt +0 -630
  200. package/.output/server/node_modules/node-pty/deps/winpty/misc/Font-Report-June2016/CP936.txt +0 -630
  201. package/.output/server/node_modules/node-pty/deps/winpty/misc/Font-Report-June2016/CP949.txt +0 -630
  202. package/.output/server/node_modules/node-pty/deps/winpty/misc/Font-Report-June2016/CP950.txt +0 -630
  203. package/.output/server/node_modules/node-pty/deps/winpty/misc/Font-Report-June2016/MinimumWindowWidths.txt +0 -16
  204. package/.output/server/node_modules/node-pty/deps/winpty/misc/Font-Report-June2016/Results.txt +0 -4
  205. package/.output/server/node_modules/node-pty/deps/winpty/misc/Font-Report-June2016/Windows10SetFontBugginess.txt +0 -144
  206. package/.output/server/node_modules/node-pty/deps/winpty/misc/FontSurvey.cc +0 -100
  207. package/.output/server/node_modules/node-pty/deps/winpty/misc/FormatChar.h +0 -21
  208. package/.output/server/node_modules/node-pty/deps/winpty/misc/FreezePerfTest.cc +0 -62
  209. package/.output/server/node_modules/node-pty/deps/winpty/misc/GetCh.cc +0 -20
  210. package/.output/server/node_modules/node-pty/deps/winpty/misc/GetConsolePos.cc +0 -41
  211. package/.output/server/node_modules/node-pty/deps/winpty/misc/GetFont.cc +0 -261
  212. package/.output/server/node_modules/node-pty/deps/winpty/misc/IdentifyConsoleWindow.ps1 +0 -51
  213. package/.output/server/node_modules/node-pty/deps/winpty/misc/IsNewConsole.cc +0 -87
  214. package/.output/server/node_modules/node-pty/deps/winpty/misc/MouseInputNotes.txt +0 -90
  215. package/.output/server/node_modules/node-pty/deps/winpty/misc/MoveConsoleWindow.cc +0 -34
  216. package/.output/server/node_modules/node-pty/deps/winpty/misc/Notes.txt +0 -219
  217. package/.output/server/node_modules/node-pty/deps/winpty/misc/OSVersion.cc +0 -27
  218. package/.output/server/node_modules/node-pty/deps/winpty/misc/ScreenBufferFreezeInactive.cc +0 -101
  219. package/.output/server/node_modules/node-pty/deps/winpty/misc/ScreenBufferTest.cc +0 -671
  220. package/.output/server/node_modules/node-pty/deps/winpty/misc/ScreenBufferTest2.cc +0 -151
  221. package/.output/server/node_modules/node-pty/deps/winpty/misc/SelectAllTest.cc +0 -45
  222. package/.output/server/node_modules/node-pty/deps/winpty/misc/SetBufferSize.cc +0 -32
  223. package/.output/server/node_modules/node-pty/deps/winpty/misc/SetCursorPos.cc +0 -10
  224. package/.output/server/node_modules/node-pty/deps/winpty/misc/SetFont.cc +0 -145
  225. package/.output/server/node_modules/node-pty/deps/winpty/misc/SetWindowRect.cc +0 -36
  226. package/.output/server/node_modules/node-pty/deps/winpty/misc/ShowArgv.cc +0 -12
  227. package/.output/server/node_modules/node-pty/deps/winpty/misc/ShowConsoleInput.cc +0 -40
  228. package/.output/server/node_modules/node-pty/deps/winpty/misc/Spew.py +0 -5
  229. package/.output/server/node_modules/node-pty/deps/winpty/misc/TestUtil.cc +0 -172
  230. package/.output/server/node_modules/node-pty/deps/winpty/misc/UnicodeDoubleWidthTest.cc +0 -102
  231. package/.output/server/node_modules/node-pty/deps/winpty/misc/UnicodeWideTest1.cc +0 -246
  232. package/.output/server/node_modules/node-pty/deps/winpty/misc/UnicodeWideTest2.cc +0 -130
  233. package/.output/server/node_modules/node-pty/deps/winpty/misc/UnixEcho.cc +0 -89
  234. package/.output/server/node_modules/node-pty/deps/winpty/misc/Utf16Echo.cc +0 -46
  235. package/.output/server/node_modules/node-pty/deps/winpty/misc/VeryLargeRead.cc +0 -122
  236. package/.output/server/node_modules/node-pty/deps/winpty/misc/VkEscapeTest.cc +0 -56
  237. package/.output/server/node_modules/node-pty/deps/winpty/misc/Win10ResizeWhileFrozen.cc +0 -52
  238. package/.output/server/node_modules/node-pty/deps/winpty/misc/Win10WrapTest1.cc +0 -57
  239. package/.output/server/node_modules/node-pty/deps/winpty/misc/Win10WrapTest2.cc +0 -30
  240. package/.output/server/node_modules/node-pty/deps/winpty/misc/Win32Echo1.cc +0 -26
  241. package/.output/server/node_modules/node-pty/deps/winpty/misc/Win32Echo2.cc +0 -19
  242. package/.output/server/node_modules/node-pty/deps/winpty/misc/Win32Test1.cc +0 -46
  243. package/.output/server/node_modules/node-pty/deps/winpty/misc/Win32Test2.cc +0 -70
  244. package/.output/server/node_modules/node-pty/deps/winpty/misc/Win32Test3.cc +0 -78
  245. package/.output/server/node_modules/node-pty/deps/winpty/misc/Win32Write1.cc +0 -44
  246. package/.output/server/node_modules/node-pty/deps/winpty/misc/WindowsBugCrashReader.cc +0 -27
  247. package/.output/server/node_modules/node-pty/deps/winpty/misc/WriteConsole.cc +0 -106
  248. package/.output/server/node_modules/node-pty/deps/winpty/misc/build32.sh +0 -9
  249. package/.output/server/node_modules/node-pty/deps/winpty/misc/build64.sh +0 -9
  250. package/.output/server/node_modules/node-pty/deps/winpty/misc/color-test.sh +0 -212
  251. package/.output/server/node_modules/node-pty/deps/winpty/misc/font-notes.txt +0 -300
  252. package/.output/server/node_modules/node-pty/deps/winpty/misc/winbug-15048.cc +0 -201
  253. package/.output/server/node_modules/node-pty/deps/winpty/ship/build-pty4j-libpty.bat +0 -36
  254. package/.output/server/node_modules/node-pty/deps/winpty/ship/common_ship.py +0 -53
  255. package/.output/server/node_modules/node-pty/deps/winpty/ship/make_msvc_package.py +0 -165
  256. package/.output/server/node_modules/node-pty/deps/winpty/ship/ship.py +0 -108
  257. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/Agent.cc +0 -613
  258. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/Agent.h +0 -103
  259. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/AgentCreateDesktop.cc +0 -84
  260. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/AgentCreateDesktop.h +0 -28
  261. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/ConsoleFont.cc +0 -632
  262. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/ConsoleFont.h +0 -28
  263. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/ConsoleInput.cc +0 -852
  264. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/ConsoleInput.h +0 -109
  265. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/ConsoleInputReencoding.cc +0 -121
  266. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/ConsoleInputReencoding.h +0 -36
  267. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/ConsoleLine.cc +0 -152
  268. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/ConsoleLine.h +0 -41
  269. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/Coord.h +0 -87
  270. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/DebugShowInput.cc +0 -239
  271. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/DebugShowInput.h +0 -32
  272. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/DefaultInputMap.cc +0 -422
  273. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/DefaultInputMap.h +0 -28
  274. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/DsrSender.h +0 -30
  275. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/EventLoop.cc +0 -99
  276. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/EventLoop.h +0 -47
  277. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/InputMap.cc +0 -246
  278. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/InputMap.h +0 -114
  279. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/LargeConsoleRead.cc +0 -71
  280. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/LargeConsoleRead.h +0 -68
  281. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/NamedPipe.cc +0 -378
  282. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/NamedPipe.h +0 -125
  283. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/Scraper.cc +0 -699
  284. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/Scraper.h +0 -103
  285. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/SimplePool.h +0 -75
  286. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/SmallRect.h +0 -143
  287. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/Terminal.cc +0 -535
  288. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/Terminal.h +0 -69
  289. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/UnicodeEncoding.h +0 -157
  290. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/UnicodeEncodingTest.cc +0 -189
  291. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/Win32Console.cc +0 -107
  292. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/Win32Console.h +0 -67
  293. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/Win32ConsoleBuffer.cc +0 -193
  294. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/Win32ConsoleBuffer.h +0 -99
  295. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/main.cc +0 -114
  296. package/.output/server/node_modules/node-pty/deps/winpty/src/agent/subdir.mk +0 -61
  297. package/.output/server/node_modules/node-pty/deps/winpty/src/configurations.gypi +0 -60
  298. package/.output/server/node_modules/node-pty/deps/winpty/src/debugserver/DebugServer.cc +0 -117
  299. package/.output/server/node_modules/node-pty/deps/winpty/src/debugserver/subdir.mk +0 -41
  300. package/.output/server/node_modules/node-pty/deps/winpty/src/include/winpty.h +0 -242
  301. package/.output/server/node_modules/node-pty/deps/winpty/src/include/winpty_constants.h +0 -131
  302. package/.output/server/node_modules/node-pty/deps/winpty/src/libwinpty/AgentLocation.cc +0 -75
  303. package/.output/server/node_modules/node-pty/deps/winpty/src/libwinpty/AgentLocation.h +0 -28
  304. package/.output/server/node_modules/node-pty/deps/winpty/src/libwinpty/LibWinptyException.h +0 -54
  305. package/.output/server/node_modules/node-pty/deps/winpty/src/libwinpty/WinptyInternal.h +0 -72
  306. package/.output/server/node_modules/node-pty/deps/winpty/src/libwinpty/subdir.mk +0 -46
  307. package/.output/server/node_modules/node-pty/deps/winpty/src/libwinpty/winpty.cc +0 -970
  308. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/AgentMsg.h +0 -38
  309. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/BackgroundDesktop.cc +0 -122
  310. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/BackgroundDesktop.h +0 -73
  311. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/Buffer.cc +0 -103
  312. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/Buffer.h +0 -102
  313. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/DebugClient.cc +0 -187
  314. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/DebugClient.h +0 -38
  315. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/GenRandom.cc +0 -138
  316. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/GenRandom.h +0 -55
  317. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/GetCommitHash.bat +0 -13
  318. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/Mutex.h +0 -54
  319. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/OsModule.h +0 -63
  320. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/OwnedHandle.cc +0 -36
  321. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/OwnedHandle.h +0 -45
  322. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/PrecompiledHeader.h +0 -43
  323. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/StringBuilder.h +0 -227
  324. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/StringBuilderTest.cc +0 -114
  325. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/StringUtil.cc +0 -55
  326. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/StringUtil.h +0 -80
  327. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/TimeMeasurement.h +0 -63
  328. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/UnixCtrlChars.h +0 -45
  329. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/UpdateGenVersion.bat +0 -20
  330. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/WindowsSecurity.cc +0 -460
  331. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/WindowsSecurity.h +0 -104
  332. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/WindowsVersion.cc +0 -252
  333. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/WindowsVersion.h +0 -29
  334. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/WinptyAssert.cc +0 -55
  335. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/WinptyAssert.h +0 -64
  336. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/WinptyException.cc +0 -57
  337. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/WinptyException.h +0 -43
  338. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/WinptyVersion.cc +0 -42
  339. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/WinptyVersion.h +0 -27
  340. package/.output/server/node_modules/node-pty/deps/winpty/src/shared/winpty_snprintf.h +0 -99
  341. package/.output/server/node_modules/node-pty/deps/winpty/src/subdir.mk +0 -5
  342. package/.output/server/node_modules/node-pty/deps/winpty/src/tests/subdir.mk +0 -28
  343. package/.output/server/node_modules/node-pty/deps/winpty/src/tests/trivial_test.cc +0 -158
  344. package/.output/server/node_modules/node-pty/deps/winpty/src/unix-adapter/InputHandler.cc +0 -114
  345. package/.output/server/node_modules/node-pty/deps/winpty/src/unix-adapter/InputHandler.h +0 -56
  346. package/.output/server/node_modules/node-pty/deps/winpty/src/unix-adapter/OutputHandler.cc +0 -80
  347. package/.output/server/node_modules/node-pty/deps/winpty/src/unix-adapter/OutputHandler.h +0 -53
  348. package/.output/server/node_modules/node-pty/deps/winpty/src/unix-adapter/Util.cc +0 -86
  349. package/.output/server/node_modules/node-pty/deps/winpty/src/unix-adapter/Util.h +0 -31
  350. package/.output/server/node_modules/node-pty/deps/winpty/src/unix-adapter/WakeupFd.cc +0 -70
  351. package/.output/server/node_modules/node-pty/deps/winpty/src/unix-adapter/WakeupFd.h +0 -42
  352. package/.output/server/node_modules/node-pty/deps/winpty/src/unix-adapter/main.cc +0 -729
  353. package/.output/server/node_modules/node-pty/deps/winpty/src/unix-adapter/subdir.mk +0 -41
  354. package/.output/server/node_modules/node-pty/deps/winpty/src/winpty.gyp +0 -234
  355. package/.output/server/node_modules/node-pty/deps/winpty/vcbuild.bat +0 -83
  356. package/.output/server/node_modules/node-pty/lib/conpty_console_list_agent.js +0 -16
  357. package/.output/server/node_modules/node-pty/lib/conpty_console_list_agent.js.map +0 -1
  358. package/.output/server/node_modules/node-pty/lib/eventEmitter2.js +0 -47
  359. package/.output/server/node_modules/node-pty/lib/eventEmitter2.js.map +0 -1
  360. package/.output/server/node_modules/node-pty/lib/eventEmitter2.test.js +0 -30
  361. package/.output/server/node_modules/node-pty/lib/eventEmitter2.test.js.map +0 -1
  362. package/.output/server/node_modules/node-pty/lib/index.js +0 -52
  363. package/.output/server/node_modules/node-pty/lib/index.js.map +0 -1
  364. package/.output/server/node_modules/node-pty/lib/interfaces.js +0 -7
  365. package/.output/server/node_modules/node-pty/lib/interfaces.js.map +0 -1
  366. package/.output/server/node_modules/node-pty/lib/shared/conout.js +0 -11
  367. package/.output/server/node_modules/node-pty/lib/shared/conout.js.map +0 -1
  368. package/.output/server/node_modules/node-pty/lib/terminal.js +0 -190
  369. package/.output/server/node_modules/node-pty/lib/terminal.js.map +0 -1
  370. package/.output/server/node_modules/node-pty/lib/terminal.test.js +0 -139
  371. package/.output/server/node_modules/node-pty/lib/terminal.test.js.map +0 -1
  372. package/.output/server/node_modules/node-pty/lib/testUtils.test.js +0 -28
  373. package/.output/server/node_modules/node-pty/lib/testUtils.test.js.map +0 -1
  374. package/.output/server/node_modules/node-pty/lib/types.js +0 -7
  375. package/.output/server/node_modules/node-pty/lib/types.js.map +0 -1
  376. package/.output/server/node_modules/node-pty/lib/unixTerminal.js +0 -346
  377. package/.output/server/node_modules/node-pty/lib/unixTerminal.js.map +0 -1
  378. package/.output/server/node_modules/node-pty/lib/unixTerminal.test.js +0 -351
  379. package/.output/server/node_modules/node-pty/lib/unixTerminal.test.js.map +0 -1
  380. package/.output/server/node_modules/node-pty/lib/utils.js +0 -39
  381. package/.output/server/node_modules/node-pty/lib/utils.js.map +0 -1
  382. package/.output/server/node_modules/node-pty/lib/windowsConoutConnection.js +0 -125
  383. package/.output/server/node_modules/node-pty/lib/windowsConoutConnection.js.map +0 -1
  384. package/.output/server/node_modules/node-pty/lib/windowsPtyAgent.js +0 -320
  385. package/.output/server/node_modules/node-pty/lib/windowsPtyAgent.js.map +0 -1
  386. package/.output/server/node_modules/node-pty/lib/windowsPtyAgent.test.js +0 -90
  387. package/.output/server/node_modules/node-pty/lib/windowsPtyAgent.test.js.map +0 -1
  388. package/.output/server/node_modules/node-pty/lib/windowsTerminal.js +0 -199
  389. package/.output/server/node_modules/node-pty/lib/windowsTerminal.js.map +0 -1
  390. package/.output/server/node_modules/node-pty/lib/windowsTerminal.test.js +0 -219
  391. package/.output/server/node_modules/node-pty/lib/windowsTerminal.test.js.map +0 -1
  392. package/.output/server/node_modules/node-pty/lib/worker/conoutSocketWorker.js +0 -22
  393. package/.output/server/node_modules/node-pty/lib/worker/conoutSocketWorker.js.map +0 -1
  394. package/.output/server/node_modules/node-pty/package.json +0 -64
  395. package/.output/server/node_modules/node-pty/prebuilds/darwin-arm64/pty.node +0 -0
  396. package/.output/server/node_modules/node-pty/prebuilds/darwin-arm64/spawn-helper +0 -0
  397. package/.output/server/node_modules/node-pty/prebuilds/darwin-x64/pty.node +0 -0
  398. package/.output/server/node_modules/node-pty/prebuilds/darwin-x64/spawn-helper +0 -0
  399. package/.output/server/node_modules/node-pty/prebuilds/win32-arm64/conpty/OpenConsole.exe +0 -0
  400. package/.output/server/node_modules/node-pty/prebuilds/win32-arm64/conpty/conpty.dll +0 -0
  401. package/.output/server/node_modules/node-pty/prebuilds/win32-arm64/conpty.node +0 -0
  402. package/.output/server/node_modules/node-pty/prebuilds/win32-arm64/conpty.pdb +0 -0
  403. package/.output/server/node_modules/node-pty/prebuilds/win32-arm64/conpty_console_list.node +0 -0
  404. package/.output/server/node_modules/node-pty/prebuilds/win32-arm64/conpty_console_list.pdb +0 -0
  405. package/.output/server/node_modules/node-pty/prebuilds/win32-arm64/pty.node +0 -0
  406. package/.output/server/node_modules/node-pty/prebuilds/win32-arm64/pty.pdb +0 -0
  407. package/.output/server/node_modules/node-pty/prebuilds/win32-arm64/winpty-agent.exe +0 -0
  408. package/.output/server/node_modules/node-pty/prebuilds/win32-arm64/winpty-agent.pdb +0 -0
  409. package/.output/server/node_modules/node-pty/prebuilds/win32-arm64/winpty.dll +0 -0
  410. package/.output/server/node_modules/node-pty/prebuilds/win32-arm64/winpty.pdb +0 -0
  411. package/.output/server/node_modules/node-pty/prebuilds/win32-x64/conpty/OpenConsole.exe +0 -0
  412. package/.output/server/node_modules/node-pty/prebuilds/win32-x64/conpty/conpty.dll +0 -0
  413. package/.output/server/node_modules/node-pty/prebuilds/win32-x64/conpty.node +0 -0
  414. package/.output/server/node_modules/node-pty/prebuilds/win32-x64/conpty.pdb +0 -0
  415. package/.output/server/node_modules/node-pty/prebuilds/win32-x64/conpty_console_list.node +0 -0
  416. package/.output/server/node_modules/node-pty/prebuilds/win32-x64/conpty_console_list.pdb +0 -0
  417. package/.output/server/node_modules/node-pty/prebuilds/win32-x64/pty.node +0 -0
  418. package/.output/server/node_modules/node-pty/prebuilds/win32-x64/pty.pdb +0 -0
  419. package/.output/server/node_modules/node-pty/prebuilds/win32-x64/winpty-agent.exe +0 -0
  420. package/.output/server/node_modules/node-pty/prebuilds/win32-x64/winpty-agent.pdb +0 -0
  421. package/.output/server/node_modules/node-pty/prebuilds/win32-x64/winpty.dll +0 -0
  422. package/.output/server/node_modules/node-pty/prebuilds/win32-x64/winpty.pdb +0 -0
  423. package/.output/server/node_modules/node-pty/scripts/gen-compile-commands.js +0 -8
  424. package/.output/server/node_modules/node-pty/scripts/increment-version.js +0 -54
  425. package/.output/server/node_modules/node-pty/scripts/post-install.js +0 -80
  426. package/.output/server/node_modules/node-pty/scripts/prebuild.js +0 -34
  427. package/.output/server/node_modules/node-pty/src/conpty_console_list_agent.ts +0 -15
  428. package/.output/server/node_modules/node-pty/src/eventEmitter2.test.ts +0 -30
  429. package/.output/server/node_modules/node-pty/src/eventEmitter2.ts +0 -48
  430. package/.output/server/node_modules/node-pty/src/index.ts +0 -52
  431. package/.output/server/node_modules/node-pty/src/interfaces.ts +0 -130
  432. package/.output/server/node_modules/node-pty/src/native.d.ts +0 -54
  433. package/.output/server/node_modules/node-pty/src/shared/conout.ts +0 -15
  434. package/.output/server/node_modules/node-pty/src/terminal.test.ts +0 -119
  435. package/.output/server/node_modules/node-pty/src/terminal.ts +0 -211
  436. package/.output/server/node_modules/node-pty/src/testUtils.test.ts +0 -23
  437. package/.output/server/node_modules/node-pty/src/tsconfig.json +0 -22
  438. package/.output/server/node_modules/node-pty/src/types.ts +0 -15
  439. package/.output/server/node_modules/node-pty/src/unix/pty.cc +0 -799
  440. package/.output/server/node_modules/node-pty/src/unix/spawn-helper.cc +0 -23
  441. package/.output/server/node_modules/node-pty/src/unixTerminal.test.ts +0 -367
  442. package/.output/server/node_modules/node-pty/src/unixTerminal.ts +0 -388
  443. package/.output/server/node_modules/node-pty/src/utils.ts +0 -29
  444. package/.output/server/node_modules/node-pty/src/win/conpty.cc +0 -583
  445. package/.output/server/node_modules/node-pty/src/win/conpty.h +0 -41
  446. package/.output/server/node_modules/node-pty/src/win/conpty_console_list.cc +0 -44
  447. package/.output/server/node_modules/node-pty/src/win/path_util.cc +0 -95
  448. package/.output/server/node_modules/node-pty/src/win/path_util.h +0 -26
  449. package/.output/server/node_modules/node-pty/src/win/winpty.cc +0 -333
  450. package/.output/server/node_modules/node-pty/src/windowsConoutConnection.ts +0 -82
  451. package/.output/server/node_modules/node-pty/src/windowsPtyAgent.test.ts +0 -94
  452. package/.output/server/node_modules/node-pty/src/windowsPtyAgent.ts +0 -321
  453. package/.output/server/node_modules/node-pty/src/windowsTerminal.test.ts +0 -229
  454. package/.output/server/node_modules/node-pty/src/windowsTerminal.ts +0 -203
  455. package/.output/server/node_modules/node-pty/src/worker/conoutSocketWorker.ts +0 -22
  456. package/.output/server/node_modules/node-pty/third_party/conpty/1.23.251008001/win10-arm64/OpenConsole.exe +0 -0
  457. package/.output/server/node_modules/node-pty/third_party/conpty/1.23.251008001/win10-arm64/conpty.dll +0 -0
  458. package/.output/server/node_modules/node-pty/third_party/conpty/1.23.251008001/win10-x64/OpenConsole.exe +0 -0
  459. package/.output/server/node_modules/node-pty/third_party/conpty/1.23.251008001/win10-x64/conpty.dll +0 -0
  460. package/.output/server/node_modules/node-pty/typings/node-pty.d.ts +0 -211
  461. package/.output/server/node_modules/tslib/modules/index.js +0 -70
  462. package/.output/server/node_modules/tslib/modules/package.json +0 -3
  463. package/.output/server/node_modules/tslib/package.json +0 -47
  464. package/.output/server/node_modules/tslib/tslib.js +0 -484
  465. package/.output/server/package.json +0 -10
  466. package/scripts/release.mjs +0 -173
  467. package/vendor/node-domexception/index.js +0 -3
  468. package/vendor/node-domexception/package.json +0 -10
  469. /package/.output/public/assets/{abap-smLpETzL.js → abap-CglpPUUh.js} +0 -0
  470. /package/.output/public/assets/{actionscript-3-o-aRvjY5.js → actionscript-3-CGv72Q9E.js} +0 -0
  471. /package/.output/public/assets/{ada-D5RRX1i4.js → ada-CfxXaXwr.js} +0 -0
  472. /package/.output/public/assets/{addon-fit-CMMXLNsg.js → addon-fit-C9RD8ot3.js} +0 -0
  473. /package/.output/public/assets/{andromeeda-N4z3YzmR.js → andromeeda-DXsn6mTE.js} +0 -0
  474. /package/.output/public/assets/{apache-DttKlSqg.js → apache-D5xAQKSB.js} +0 -0
  475. /package/.output/public/assets/{apex-DL7j-a2n.js → apex-qgfedJV2.js} +0 -0
  476. /package/.output/public/assets/{applescript-DCbL_2FX.js → applescript-DqumQxTt.js} +0 -0
  477. /package/.output/public/assets/{ara-DqheWJCe.js → ara-Ditv3ow6.js} +0 -0
  478. /package/.output/public/assets/{asciidoc-BH2sf2K4.js → asciidoc-DL8QwiT7.js} +0 -0
  479. /package/.output/public/assets/{asm-rfjOMz3U.js → asm-K6TMxl3o.js} +0 -0
  480. /package/.output/public/assets/{aurora-x-CND-FqEb.js → aurora-x-DGv-xZaa.js} +0 -0
  481. /package/.output/public/assets/{awk-CMV5n9Z7.js → awk-CYSfQSDT.js} +0 -0
  482. /package/.output/public/assets/{ayu-dark-on7xzq_B.js → ayu-dark-DGBaJbpH.js} +0 -0
  483. /package/.output/public/assets/{ayu-light-DnGeGGc2.js → ayu-light-BQrGPVs2.js} +0 -0
  484. /package/.output/public/assets/{ayu-mirage-DG3LlYC_.js → ayu-mirage-Do-5o2VL.js} +0 -0
  485. /package/.output/public/assets/{ballerina-BjMqJjlr.js → ballerina-BE-8n54s.js} +0 -0
  486. /package/.output/public/assets/{bat-BaVbo_qw.js → bat-B1zTc1QZ.js} +0 -0
  487. /package/.output/public/assets/{beancount-DBt5Mbc_.js → beancount-DhObrvif.js} +0 -0
  488. /package/.output/public/assets/{berry-Cyjuxiss.js → berry-Cnbvthv1.js} +0 -0
  489. /package/.output/public/assets/{bibtex-BV_0nsPq.js → bibtex-pp5SrwZy.js} +0 -0
  490. /package/.output/public/assets/{bicep-C2gEwu4J.js → bicep-BL6eYxbs.js} +0 -0
  491. /package/.output/public/assets/{bird2-BRyaEJd0.js → bird2-BQaXYY9n.js} +0 -0
  492. /package/.output/public/assets/{c-Nc9zJT78.js → c-BHFJ4Jk3.js} +0 -0
  493. /package/.output/public/assets/{c3-DTTbp5N2.js → c3-BHTco5Hb.js} +0 -0
  494. /package/.output/public/assets/{cadence-CPz83cmI.js → cadence-CoPxW0qb.js} +0 -0
  495. /package/.output/public/assets/{catppuccin-frappe-Dr22sraq.js → catppuccin-frappe-9fYwMJCf.js} +0 -0
  496. /package/.output/public/assets/{catppuccin-latte-C57EeX8c.js → catppuccin-latte-BUiKH1yZ.js} +0 -0
  497. /package/.output/public/assets/{catppuccin-macchiato-CpheI4uD.js → catppuccin-macchiato-ZmO2e0M_.js} +0 -0
  498. /package/.output/public/assets/{catppuccin-mocha-D8Lmdks_.js → catppuccin-mocha-CFwbXQfO.js} +0 -0
  499. /package/.output/public/assets/{clarity-CFJ2Yc3q.js → clarity-DVUGm1xP.js} +0 -0
  500. /package/.output/public/assets/{clojure-6R01QgJC.js → clojure-BgXJG6FG.js} +0 -0
  501. /package/.output/public/assets/{cmake-D5rSbMir.js → cmake-CZndsvm6.js} +0 -0
  502. /package/.output/public/assets/{codeowners-_3A-ClkN.js → codeowners-Dd7a447M.js} +0 -0
  503. /package/.output/public/assets/{codeql-DlIhJTR7.js → codeql-XJR6llG-.js} +0 -0
  504. /package/.output/public/assets/{common-lisp-BvQzz173.js → common-lisp-BOMbLvgT.js} +0 -0
  505. /package/.output/public/assets/{coq-DTNXReIC.js → coq-DnhmQYDa.js} +0 -0
  506. /package/.output/public/assets/{csharp-BDKQY1K9.js → csharp-BdEyRqBm.js} +0 -0
  507. /package/.output/public/assets/{css-DRmnABqB.js → css-CsTDDTLq.js} +0 -0
  508. /package/.output/public/assets/{csv-DNUpVBxl.js → csv-CXchYFbz.js} +0 -0
  509. /package/.output/public/assets/{cue-DDdBc2s3.js → cue-D7YpBZvd.js} +0 -0
  510. /package/.output/public/assets/{cypher-CguaznO2.js → cypher-XIm1N8YJ.js} +0 -0
  511. /package/.output/public/assets/{d-CHcoyjv3.js → d-DvB0pbZH.js} +0 -0
  512. /package/.output/public/assets/{dark-plus-CqeW_0kH.js → dark-plus-BUdpMFIA.js} +0 -0
  513. /package/.output/public/assets/{dart-RM3aRphk.js → dart-CwpSKTMB.js} +0 -0
  514. /package/.output/public/assets/{dax-nbnY1d79.js → dax-CEynWJsU.js} +0 -0
  515. /package/.output/public/assets/{desktop-BD76cvxT.js → desktop-Dk-YiYS_.js} +0 -0
  516. /package/.output/public/assets/{diff-CdkWtnkL.js → diff-abLZ-xM1.js} +0 -0
  517. /package/.output/public/assets/{docker-ZyPHc6zB.js → docker-BT48KsRJ.js} +0 -0
  518. /package/.output/public/assets/{dotenv-BdJZEwA6.js → dotenv-NOMQQbM0.js} +0 -0
  519. /package/.output/public/assets/{dracula-CtqCPLGa.js → dracula-BUW0ZyNO.js} +0 -0
  520. /package/.output/public/assets/{dracula-soft-DmBpwRAy.js → dracula-soft-BMjAt1_u.js} +0 -0
  521. /package/.output/public/assets/{dream-maker-BJL4qlg3.js → dream-maker-D26TP1Q3.js} +0 -0
  522. /package/.output/public/assets/{emacs-lisp-_LyYa2Ky.js → emacs-lisp-C2EvfotR.js} +0 -0
  523. /package/.output/public/assets/{everforest-dark-CrbyKk4n.js → everforest-dark-hC6a272f.js} +0 -0
  524. /package/.output/public/assets/{everforest-light-DRbSh8Tm.js → everforest-light-BTpbYY5G.js} +0 -0
  525. /package/.output/public/assets/{fennel-CC2BkRsS.js → fennel-DWOL-Ewx.js} +0 -0
  526. /package/.output/public/assets/{fish-D2ZCzqcE.js → fish-CQPQq0pQ.js} +0 -0
  527. /package/.output/public/assets/{fluent-DKAm3m7q.js → fluent-BYdsr2M8.js} +0 -0
  528. /package/.output/public/assets/{fortran-free-form-BPTf0lbT.js → fortran-free-form-C_EtY4F9.js} +0 -0
  529. /package/.output/public/assets/{gdscript-CsadCSaZ.js → gdscript-CH_tD-VB.js} +0 -0
  530. /package/.output/public/assets/{gdshader-PfnN_8tR.js → gdshader-BemFblFP.js} +0 -0
  531. /package/.output/public/assets/{genie-Bj-orPAV.js → genie-hCPg_eq7.js} +0 -0
  532. /package/.output/public/assets/{gherkin-COVWpJ-Q.js → gherkin-CO0ypD1P.js} +0 -0
  533. /package/.output/public/assets/{github-dark-ipGuFGYC.js → github-dark-cA72fqmI.js} +0 -0
  534. /package/.output/public/assets/{github-dark-default-DX3IG_X0.js → github-dark-default-DiYTFvY5.js} +0 -0
  535. /package/.output/public/assets/{github-dark-dimmed-CH6p_7ez.js → github-dark-dimmed-D-uBHzyG.js} +0 -0
  536. /package/.output/public/assets/{github-dark-high-contrast-Bg2sSao5.js → github-dark-high-contrast-BrUSkckI.js} +0 -0
  537. /package/.output/public/assets/{github-light-default-DwpDd1IQ.js → github-light-default-BT-6Vf7C.js} +0 -0
  538. /package/.output/public/assets/{github-light-high-contrast-C0QeixPf.js → github-light-high-contrast-DqmEyTTc.js} +0 -0
  539. /package/.output/public/assets/{github-light-BxjqOQl0.js → github-light-piFPqU8R.js} +0 -0
  540. /package/.output/public/assets/{gleam-BF2NigGj.js → gleam-CWJA_H5i.js} +0 -0
  541. /package/.output/public/assets/{gn-CMIt9roj.js → gn-nlTwLSjP.js} +0 -0
  542. /package/.output/public/assets/{gnuplot-DgWlRTEj.js → gnuplot-wYV0MbPl.js} +0 -0
  543. /package/.output/public/assets/{go-DLnOLj8q.js → go-BUPBDRDo.js} +0 -0
  544. /package/.output/public/assets/{groovy-B9qLWIkE.js → groovy-BusafOA8.js} +0 -0
  545. /package/.output/public/assets/{gruvbox-dark-hard-BIMX9ePb.js → gruvbox-dark-hard-BrrZYoPF.js} +0 -0
  546. /package/.output/public/assets/{gruvbox-dark-medium-DxuwyVzM.js → gruvbox-dark-medium-DsxcLuUs.js} +0 -0
  547. /package/.output/public/assets/{gruvbox-dark-soft-ba2fjht0.js → gruvbox-dark-soft-DQXOs_GH.js} +0 -0
  548. /package/.output/public/assets/{gruvbox-light-hard-DAJK2PqC.js → gruvbox-light-hard-CtHwj_cB.js} +0 -0
  549. /package/.output/public/assets/{gruvbox-light-medium-WRifDAJD.js → gruvbox-light-medium-CPJMdgXQ.js} +0 -0
  550. /package/.output/public/assets/{gruvbox-light-soft-B0dBOoVB.js → gruvbox-light-soft-C4Xh9Hc-.js} +0 -0
  551. /package/.output/public/assets/{haskell-BaGpmm_c.js → haskell-CaDqJkn4.js} +0 -0
  552. /package/.output/public/assets/{haxe-DfXTCEOz.js → haxe-Dxg-8_J7.js} +0 -0
  553. /package/.output/public/assets/{hcl-CbCtpSbi.js → hcl-Bjg-rMJ0.js} +0 -0
  554. /package/.output/public/assets/{hjson-_4-w-pHU.js → hjson-BMbeOOMg.js} +0 -0
  555. /package/.output/public/assets/{hlsl-DpuYn7pp.js → hlsl-D-cuwCFV.js} +0 -0
  556. /package/.output/public/assets/{horizon-C5RtD1fY.js → horizon-BofYY9of.js} +0 -0
  557. /package/.output/public/assets/{horizon-bright-pEOice34.js → horizon-bright-CFOVQsf2.js} +0 -0
  558. /package/.output/public/assets/{houston-A0zg9vNP.js → houston-BIBYxFpQ.js} +0 -0
  559. /package/.output/public/assets/{hy-t9zDXBje.js → hy-Cye3Jt7O.js} +0 -0
  560. /package/.output/public/assets/{imba-Bxu-TDfw.js → imba-CjkQtgD2.js} +0 -0
  561. /package/.output/public/assets/{ini-D-v34c8N.js → ini-BvMtfDNl.js} +0 -0
  562. /package/.output/public/assets/{java-DVLnIrqC.js → java-BYO3uQJZ.js} +0 -0
  563. /package/.output/public/assets/{javascript-Cop1kpy_.js → javascript-BsdGTPv_.js} +0 -0
  564. /package/.output/public/assets/{json-CTw4n7kn.js → json-Kp2u6f_f.js} +0 -0
  565. /package/.output/public/assets/{json5-D0XL1D5m.js → json5-BCxDPjxU.js} +0 -0
  566. /package/.output/public/assets/{jsonc-BBgf3TX3.js → jsonc-BV8VFjqO.js} +0 -0
  567. /package/.output/public/assets/{jsonl-KrKLbtB7.js → jsonl-DHrr7c-M.js} +0 -0
  568. /package/.output/public/assets/{jsonnet-B2ZwWMOt.js → jsonnet-xURar8mu.js} +0 -0
  569. /package/.output/public/assets/{jssm-ByRpI9-B.js → jssm-DtoLUQAt.js} +0 -0
  570. /package/.output/public/assets/{jsx-0oMUGqZj.js → jsx-CyrO086S.js} +0 -0
  571. /package/.output/public/assets/{kanagawa-dragon-CtPmcCMp.js → kanagawa-dragon-COwlYgQB.js} +0 -0
  572. /package/.output/public/assets/{kanagawa-lotus-DpOXEGCa.js → kanagawa-lotus-GZWqyq_E.js} +0 -0
  573. /package/.output/public/assets/{kanagawa-wave-CLVCyc-n.js → kanagawa-wave-CP4uw3DX.js} +0 -0
  574. /package/.output/public/assets/{kdl-6FPPEH4H.js → kdl-DGo2N7N5.js} +0 -0
  575. /package/.output/public/assets/{kotlin-D4L3Nd2D.js → kotlin-Cm4W8Bbs.js} +0 -0
  576. /package/.output/public/assets/{kusto-D-mmc07O.js → kusto-DQ22_tcT.js} +0 -0
  577. /package/.output/public/assets/{laserwave-7fEj4XGb.js → laserwave-DfABGYsD.js} +0 -0
  578. /package/.output/public/assets/{lean-BMVMuP2E.js → lean-D-8a6Wwv.js} +0 -0
  579. /package/.output/public/assets/{less-C95PyOu0.js → less-B-qZzFKw.js} +0 -0
  580. /package/.output/public/assets/{light-plus-DHI2dh3p.js → light-plus-DS_rmE1N.js} +0 -0
  581. /package/.output/public/assets/{llvm-Dy3qORTl.js → llvm-Ch-k6TUk.js} +0 -0
  582. /package/.output/public/assets/{log-BQop7fzg.js → log-BGwbCG2S.js} +0 -0
  583. /package/.output/public/assets/{logo-DKtnYmrp.js → logo-DHGHbFWy.js} +0 -0
  584. /package/.output/public/assets/{luau-Dha4KG0q.js → luau-qsvm_nYh.js} +0 -0
  585. /package/.output/public/assets/{make-DfmS6buu.js → make-Dlfjp_Q8.js} +0 -0
  586. /package/.output/public/assets/{markdown-BaI9LyM4.js → markdown-COh4ruD_.js} +0 -0
  587. /package/.output/public/assets/{material-theme-Dm6ETY8i.js → material-theme-Ccrl1jie.js} +0 -0
  588. /package/.output/public/assets/{material-theme-darker-BeyjmM5Z.js → material-theme-darker-CcOH0iHe.js} +0 -0
  589. /package/.output/public/assets/{material-theme-lighter-CCOYYzKL.js → material-theme-lighter-DoKpC7NM.js} +0 -0
  590. /package/.output/public/assets/{material-theme-ocean-CUtPiiX3.js → material-theme-ocean-BcvBZHgH.js} +0 -0
  591. /package/.output/public/assets/{material-theme-palenight-2L4zMwIM.js → material-theme-palenight-DIL4EAzl.js} +0 -0
  592. /package/.output/public/assets/{matlab-BT79Cq_j.js → matlab-CBqMuw7w.js} +0 -0
  593. /package/.output/public/assets/{mdx-CxGBwLNt.js → mdx-BjoJxHxW.js} +0 -0
  594. /package/.output/public/assets/{mermaid-DLf3axBN.js → mermaid-DjAh2yR5.js} +0 -0
  595. /package/.output/public/assets/{min-dark-B8TUPGHg.js → min-dark-CbwghdE5.js} +0 -0
  596. /package/.output/public/assets/{min-light-BDOoBxcA.js → min-light-_F39d_94.js} +0 -0
  597. /package/.output/public/assets/{mipsasm-DXuU_0cI.js → mipsasm-DA1H0O78.js} +0 -0
  598. /package/.output/public/assets/{mojo-1Omp2pIo.js → mojo-BVgjRjTn.js} +0 -0
  599. /package/.output/public/assets/{monokai-E_VBmXGZ.js → monokai-CxgvaWkX.js} +0 -0
  600. /package/.output/public/assets/{moonbit-DZzq699o.js → moonbit-tKY94ZOM.js} +0 -0
  601. /package/.output/public/assets/{move-DxDAOJVd.js → move-B5WspEjG.js} +0 -0
  602. /package/.output/public/assets/{narrat-CxDcPPb9.js → narrat-CDPRStf_.js} +0 -0
  603. /package/.output/public/assets/{nextflow-groovy-wvmJO4hi.js → nextflow-groovy-1GYTZoD5.js} +0 -0
  604. /package/.output/public/assets/{night-owl-DefhalNX.js → night-owl-CCydx7ZR.js} +0 -0
  605. /package/.output/public/assets/{night-owl-light-byb3AbEn.js → night-owl-light-CLM7UUPY.js} +0 -0
  606. /package/.output/public/assets/{nix-DsFTDHWT.js → nix-DXFN4IwW.js} +0 -0
  607. /package/.output/public/assets/{nord-D5rQzHT-.js → nord-CiCWZ1de.js} +0 -0
  608. /package/.output/public/assets/{nushell-BQ_rO0AM.js → nushell-Ck9o2qOx.js} +0 -0
  609. /package/.output/public/assets/{objective-c-BMq6JT_m.js → objective-c-4koxci9E.js} +0 -0
  610. /package/.output/public/assets/{objective-cpp-DRwojuGv.js → objective-cpp-BPFAgSN9.js} +0 -0
  611. /package/.output/public/assets/{ocaml-e4_gKO6E.js → ocaml-BdlBLhZV.js} +0 -0
  612. /package/.output/public/assets/{odin-mdTPwYOg.js → odin-BcGOLCqZ.js} +0 -0
  613. /package/.output/public/assets/{one-dark-pro-DxXww9jg.js → one-dark-pro-DEMdTgiO.js} +0 -0
  614. /package/.output/public/assets/{one-light-D9c03w7t.js → one-light-Cmpe9X1u.js} +0 -0
  615. /package/.output/public/assets/{openscad-D2aTdNfr.js → openscad-DBveSHYE.js} +0 -0
  616. /package/.output/public/assets/{pascal-D4n_G8vj.js → pascal-DxOVE99u.js} +0 -0
  617. /package/.output/public/assets/{pierre-dark-CizZ1Z5z.js → pierre-dark-DIUCKU6U.js} +0 -0
  618. /package/.output/public/assets/{pierre-light-CHMWfAMe.js → pierre-light-DVO2KPlh.js} +0 -0
  619. /package/.output/public/assets/{pkl-DcjhAp0L.js → pkl-pIvtf7Vu.js} +0 -0
  620. /package/.output/public/assets/{plastic-uOsw7z1x.js → plastic-Dvdf8qVN.js} +0 -0
  621. /package/.output/public/assets/{plsql-BSy3Ag0J.js → plsql-d50MFTFK.js} +0 -0
  622. /package/.output/public/assets/{po-Be96RYkA.js → po-CboxWwYg.js} +0 -0
  623. /package/.output/public/assets/{poimandres-CyO4HORD.js → poimandres-DHgQGH4M.js} +0 -0
  624. /package/.output/public/assets/{polar-BmhMKWum.js → polar-DNp7Oek8.js} +0 -0
  625. /package/.output/public/assets/{postcss-BTQso3H9.js → postcss-LpmI6XQv.js} +0 -0
  626. /package/.output/public/assets/{powerquery-DVyQv3M2.js → powerquery-BNCl8Uwz.js} +0 -0
  627. /package/.output/public/assets/{powershell-BmtCGJVD.js → powershell-CZ9J0XuS.js} +0 -0
  628. /package/.output/public/assets/{prisma-CCFA9rEj.js → prisma-AELUiJCl.js} +0 -0
  629. /package/.output/public/assets/{prolog-DWGEEo78.js → prolog-BlqwejRD.js} +0 -0
  630. /package/.output/public/assets/{proto-C3eop1kM.js → proto-DRQC3swD.js} +0 -0
  631. /package/.output/public/assets/{puppet-C0_7Nv5A.js → puppet-DBKR8MlH.js} +0 -0
  632. /package/.output/public/assets/{purescript-Bv-B8yRw.js → purescript-DItLzxZS.js} +0 -0
  633. /package/.output/public/assets/{python-CKg5r0C3.js → python-D9t_ETu8.js} +0 -0
  634. /package/.output/public/assets/{qmldir-Cqfb4Lox.js → qmldir-DP_KD1nk.js} +0 -0
  635. /package/.output/public/assets/{qss-Csho9BH8.js → qss-CL02opOd.js} +0 -0
  636. /package/.output/public/assets/{r-UcxRcvcA.js → r-DmmrCFmB.js} +0 -0
  637. /package/.output/public/assets/{racket-D8-uWeQH.js → racket-K0frLTWj.js} +0 -0
  638. /package/.output/public/assets/{raku-Cj4JSa8p.js → raku-DwgLlPg9.js} +0 -0
  639. /package/.output/public/assets/{red-z4H4llUY.js → red-DzDu-aXc.js} +0 -0
  640. /package/.output/public/assets/{reg-DXGFiJSl.js → reg-B_y3c7di.js} +0 -0
  641. /package/.output/public/assets/{regexp-3-A0406L.js → regexp--eMB47Xx.js} +0 -0
  642. /package/.output/public/assets/{rel-CunnVTBK.js → rel-CT65ywJp.js} +0 -0
  643. /package/.output/public/assets/{riscv-C8BcOCkS.js → riscv-Qv5W2vIg.js} +0 -0
  644. /package/.output/public/assets/{ron-DiDyR9oa.js → ron-cRHu9zPp.js} +0 -0
  645. /package/.output/public/assets/{rose-pine-BADquuIH.js → rose-pine-DFmTJHIJ.js} +0 -0
  646. /package/.output/public/assets/{rose-pine-dawn-BLcEeBoh.js → rose-pine-dawn-YIuK9wUm.js} +0 -0
  647. /package/.output/public/assets/{rose-pine-moon-BK_tLY1Y.js → rose-pine-moon-BYEHfkUB.js} +0 -0
  648. /package/.output/public/assets/{rosmsg-CHmL1Uyj.js → rosmsg-_L1z4wrx.js} +0 -0
  649. /package/.output/public/assets/{rust-DjJFInu3.js → rust-BA5wQ_EY.js} +0 -0
  650. /package/.output/public/assets/{sass-D3xZ5o-v.js → sass-sd__ov8V.js} +0 -0
  651. /package/.output/public/assets/{scala-B0IRml5w.js → scala--cVG4U7H.js} +0 -0
  652. /package/.output/public/assets/{scheme-BhwcV3Av.js → scheme-D6Q1O-kY.js} +0 -0
  653. /package/.output/public/assets/{sdbl-BmWYR-pI.js → sdbl-jB0DUrL_.js} +0 -0
  654. /package/.output/public/assets/{shellscript-DaVPunOM.js → shellscript-DyWRuzkj.js} +0 -0
  655. /package/.output/public/assets/{slack-dark-DOnVms5P.js → slack-dark-DHhAlQBa.js} +0 -0
  656. /package/.output/public/assets/{slack-ochin-DcRTft4q.js → slack-ochin-PZXbcZaN.js} +0 -0
  657. /package/.output/public/assets/{smalltalk-DVQuUMII.js → smalltalk-C7VkdTlv.js} +0 -0
  658. /package/.output/public/assets/{snazzy-light-x9CLJ1W9.js → snazzy-light-CPc_Qts9.js} +0 -0
  659. /package/.output/public/assets/{solarized-dark-BB1sh-pe.js → solarized-dark-DCCfKtTh.js} +0 -0
  660. /package/.output/public/assets/{solarized-light-9-RPS998.js → solarized-light-B84T-R9X.js} +0 -0
  661. /package/.output/public/assets/{solidity-gQ4WXILB.js → solidity-DVsDPpDS.js} +0 -0
  662. /package/.output/public/assets/{splunk-OB48_RcD.js → splunk-A-BwP6Va.js} +0 -0
  663. /package/.output/public/assets/{sql-CrTmZCMa.js → sql-CRzu7iKx.js} +0 -0
  664. /package/.output/public/assets/{ssh-config-DA9YMRGV.js → ssh-config-CFPv6mTy.js} +0 -0
  665. /package/.output/public/assets/{stylus-sKwvsUaC.js → stylus-CUf3IESt.js} +0 -0
  666. /package/.output/public/assets/{swift-C72NbAtg.js → swift-CSiiYB_Q.js} +0 -0
  667. /package/.output/public/assets/{synthwave-84-eJ9uRN_S.js → synthwave-84-uJp1j2Jd.js} +0 -0
  668. /package/.output/public/assets/{system-verilog-CnWMF7Nq.js → system-verilog-rMjKy-O9.js} +0 -0
  669. /package/.output/public/assets/{systemd-DMzItW5N.js → systemd-R-KDM4-t.js} +0 -0
  670. /package/.output/public/assets/{talonscript-DopQCWDL.js → talonscript-D666vCtm.js} +0 -0
  671. /package/.output/public/assets/{tasl-C28SYKbq.js → tasl-68cbBocU.js} +0 -0
  672. /package/.output/public/assets/{tcl-DHq7zmoF.js → tcl-Y39dJ_pX.js} +0 -0
  673. /package/.output/public/assets/{terraform-CogS1YKX.js → terraform-BF7wAo-b.js} +0 -0
  674. /package/.output/public/assets/{tokyo-night-B9N7LyrF.js → tokyo-night-EeABtN82.js} +0 -0
  675. /package/.output/public/assets/{toml-BH_iPsgK.js → toml-BrMFN1JF.js} +0 -0
  676. /package/.output/public/assets/{tsv-BIkdBZX1.js → tsv-Dp2l5v7f.js} +0 -0
  677. /package/.output/public/assets/{tsx-BjkCKOtw.js → tsx-CQqypS0k.js} +0 -0
  678. /package/.output/public/assets/{turtle-CqNXyJWZ.js → turtle-_N1aDtpV.js} +0 -0
  679. /package/.output/public/assets/{typescript-BoHeP9q1.js → typescript-CPmDkqmE.js} +0 -0
  680. /package/.output/public/assets/{typespec-CQ9LYD_e.js → typespec-ghgF2GAI.js} +0 -0
  681. /package/.output/public/assets/{typst-T-Fsk-Sv.js → typst-DP_izaNK.js} +0 -0
  682. /package/.output/public/assets/{v-BhMEOw9x.js → v-CdNC_Wok.js} +0 -0
  683. /package/.output/public/assets/{vala-DzajMnwt.js → vala-Bu4pYkLC.js} +0 -0
  684. /package/.output/public/assets/{vb-7Xr8dEYW.js → vb-u84IyWSS.js} +0 -0
  685. /package/.output/public/assets/{verilog-AvXtwZir.js → verilog-BC33pi7Z.js} +0 -0
  686. /package/.output/public/assets/{vesper-CtgQQ2sf.js → vesper-7-XtS0Kg.js} +0 -0
  687. /package/.output/public/assets/{vhdl-BHu0zg1P.js → vhdl-BBxTOQe0.js} +0 -0
  688. /package/.output/public/assets/{viml-Di0QpLfC.js → viml-X_r-ivXA.js} +0 -0
  689. /package/.output/public/assets/{vitesse-black-jXdfyqgD.js → vitesse-black-DRdlY-cW.js} +0 -0
  690. /package/.output/public/assets/{vitesse-dark-B88PxG1r.js → vitesse-dark-Bz0hOFHJ.js} +0 -0
  691. /package/.output/public/assets/{vitesse-light-BXxZh2iV.js → vitesse-light-7kCLd0yn.js} +0 -0
  692. /package/.output/public/assets/{vyper-C3R5yXgx.js → vyper-E7qIwMXy.js} +0 -0
  693. /package/.output/public/assets/{wasm-D_MQmneJ.js → wasm-BqG9CUph.js} +0 -0
  694. /package/.output/public/assets/{wasm-Chsuwt1A.js → wasm-C18OEcCL.js} +0 -0
  695. /package/.output/public/assets/{wenyan-BonVcr2i.js → wenyan-siXAC4el.js} +0 -0
  696. /package/.output/public/assets/{wgsl-D59WYmNq.js → wgsl-BJQt8Uld.js} +0 -0
  697. /package/.output/public/assets/{wikitext-ariTI2Wk.js → wikitext-Ci0ePJmf.js} +0 -0
  698. /package/.output/public/assets/{wit-EA4fa3Dt.js → wit-BdDJ7geN.js} +0 -0
  699. /package/.output/public/assets/{wolfram-DDp7LhyU.js → wolfram-Bi-O1IUM.js} +0 -0
  700. /package/.output/public/assets/{xterm-CCMwI7sy.js → xterm-TTe2Bv9Z.js} +0 -0
  701. /package/.output/public/assets/{yaml-BTD1XHJG.js → yaml-DgkO7CC2.js} +0 -0
  702. /package/.output/public/assets/{zenscript-4WaROUyc.js → zenscript-CnkrxCBw.js} +0 -0
  703. /package/.output/public/assets/{zig-CJoLJGwV.js → zig-CgMsxF9-.js} +0 -0
@@ -1,970 +0,0 @@
1
- // Copyright (c) 2011-2016 Ryan Prichard
2
- //
3
- // Permission is hereby granted, free of charge, to any person obtaining a copy
4
- // of this software and associated documentation files (the "Software"), to
5
- // deal in the Software without restriction, including without limitation the
6
- // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
7
- // sell copies of the Software, and to permit persons to whom the Software is
8
- // furnished to do so, subject to the following conditions:
9
- //
10
- // The above copyright notice and this permission notice shall be included in
11
- // all copies or substantial portions of the Software.
12
- //
13
- // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
- // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
- // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
- // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
- // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
18
- // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
19
- // IN THE SOFTWARE.
20
-
21
- #include <windows.h>
22
-
23
- #include <stdint.h>
24
- #include <stdio.h>
25
- #include <string.h>
26
-
27
- #include <limits>
28
- #include <string>
29
- #include <vector>
30
-
31
- #include "../include/winpty.h"
32
-
33
- #include "../shared/AgentMsg.h"
34
- #include "../shared/BackgroundDesktop.h"
35
- #include "../shared/Buffer.h"
36
- #include "../shared/DebugClient.h"
37
- #include "../shared/GenRandom.h"
38
- #include "../shared/OwnedHandle.h"
39
- #include "../shared/StringBuilder.h"
40
- #include "../shared/StringUtil.h"
41
- #include "../shared/WindowsSecurity.h"
42
- #include "../shared/WindowsVersion.h"
43
- #include "../shared/WinptyAssert.h"
44
- #include "../shared/WinptyException.h"
45
- #include "../shared/WinptyVersion.h"
46
-
47
- #include "AgentLocation.h"
48
- #include "LibWinptyException.h"
49
- #include "WinptyInternal.h"
50
-
51
-
52
-
53
- /*****************************************************************************
54
- * Error handling -- translate C++ exceptions to an optional error object
55
- * output and log the result. */
56
-
57
- static const winpty_error_s kOutOfMemory = {
58
- WINPTY_ERROR_OUT_OF_MEMORY,
59
- L"Out of memory",
60
- nullptr
61
- };
62
-
63
- static const winpty_error_s kBadRpcPacket = {
64
- WINPTY_ERROR_UNSPECIFIED,
65
- L"Bad RPC packet",
66
- nullptr
67
- };
68
-
69
- static const winpty_error_s kUncaughtException = {
70
- WINPTY_ERROR_UNSPECIFIED,
71
- L"Uncaught C++ exception",
72
- nullptr
73
- };
74
-
75
- /* Gets the error code from the error object. */
76
- WINPTY_API winpty_result_t winpty_error_code(winpty_error_ptr_t err) {
77
- return err != nullptr ? err->code : WINPTY_ERROR_SUCCESS;
78
- }
79
-
80
- /* Returns a textual representation of the error. The string is freed when
81
- * the error is freed. */
82
- WINPTY_API LPCWSTR winpty_error_msg(winpty_error_ptr_t err) {
83
- if (err != nullptr) {
84
- if (err->msgStatic != nullptr) {
85
- return err->msgStatic;
86
- } else {
87
- ASSERT(err->msgDynamic != nullptr);
88
- std::wstring *msgPtr = err->msgDynamic->get();
89
- ASSERT(msgPtr != nullptr);
90
- return msgPtr->c_str();
91
- }
92
- } else {
93
- return L"Success";
94
- }
95
- }
96
-
97
- /* Free the error object. Every error returned from the winpty API must be
98
- * freed. */
99
- WINPTY_API void winpty_error_free(winpty_error_ptr_t err) {
100
- if (err != nullptr && err->msgDynamic != nullptr) {
101
- delete err->msgDynamic;
102
- delete err;
103
- }
104
- }
105
-
106
- static void translateException(winpty_error_ptr_t *&err) {
107
- winpty_error_ptr_t ret = nullptr;
108
- try {
109
- try {
110
- throw;
111
- } catch (const ReadBuffer::DecodeError&) {
112
- ret = const_cast<winpty_error_ptr_t>(&kBadRpcPacket);
113
- } catch (const LibWinptyException &e) {
114
- std::unique_ptr<winpty_error_t> obj(new winpty_error_t);
115
- obj->code = e.code();
116
- obj->msgStatic = nullptr;
117
- obj->msgDynamic =
118
- new std::shared_ptr<std::wstring>(e.whatSharedStr());
119
- ret = obj.release();
120
- } catch (const WinptyException &e) {
121
- std::unique_ptr<winpty_error_t> obj(new winpty_error_t);
122
- std::shared_ptr<std::wstring> msg(new std::wstring(e.what()));
123
- obj->code = WINPTY_ERROR_UNSPECIFIED;
124
- obj->msgStatic = nullptr;
125
- obj->msgDynamic = new std::shared_ptr<std::wstring>(msg);
126
- ret = obj.release();
127
- }
128
- } catch (const std::bad_alloc&) {
129
- ret = const_cast<winpty_error_ptr_t>(&kOutOfMemory);
130
- } catch (...) {
131
- ret = const_cast<winpty_error_ptr_t>(&kUncaughtException);
132
- }
133
- trace("libwinpty error: code=%u msg='%s'",
134
- static_cast<unsigned>(ret->code),
135
- utf8FromWide(winpty_error_msg(ret)).c_str());
136
- if (err != nullptr) {
137
- *err = ret;
138
- } else {
139
- winpty_error_free(ret);
140
- }
141
- }
142
-
143
- #define API_TRY \
144
- if (err != nullptr) { *err = nullptr; } \
145
- try
146
-
147
- #define API_CATCH(ret) \
148
- catch (...) { translateException(err); return (ret); }
149
-
150
-
151
-
152
- /*****************************************************************************
153
- * Configuration of a new agent. */
154
-
155
- WINPTY_API winpty_config_t *
156
- winpty_config_new(UINT64 flags, winpty_error_ptr_t *err /*OPTIONAL*/) {
157
- API_TRY {
158
- ASSERT((flags & WINPTY_FLAG_MASK) == flags);
159
- std::unique_ptr<winpty_config_t> ret(new winpty_config_t);
160
- ret->flags = flags;
161
- return ret.release();
162
- } API_CATCH(nullptr)
163
- }
164
-
165
- WINPTY_API void winpty_config_free(winpty_config_t *cfg) {
166
- delete cfg;
167
- }
168
-
169
- WINPTY_API void
170
- winpty_config_set_initial_size(winpty_config_t *cfg, int cols, int rows) {
171
- ASSERT(cfg != nullptr && cols > 0 && rows > 0);
172
- cfg->cols = cols;
173
- cfg->rows = rows;
174
- }
175
-
176
- WINPTY_API void
177
- winpty_config_set_mouse_mode(winpty_config_t *cfg, int mouseMode) {
178
- ASSERT(cfg != nullptr &&
179
- mouseMode >= WINPTY_MOUSE_MODE_NONE &&
180
- mouseMode <= WINPTY_MOUSE_MODE_FORCE);
181
- cfg->mouseMode = mouseMode;
182
- }
183
-
184
- WINPTY_API void
185
- winpty_config_set_agent_timeout(winpty_config_t *cfg, DWORD timeoutMs) {
186
- ASSERT(cfg != nullptr && timeoutMs > 0);
187
- cfg->timeoutMs = timeoutMs;
188
- }
189
-
190
-
191
-
192
- /*****************************************************************************
193
- * Agent I/O. */
194
-
195
- namespace {
196
-
197
- // Once an I/O operation fails with ERROR_IO_PENDING, the caller *must* wait
198
- // for it to complete, even after calling CancelIo on it! See
199
- // https://blogs.msdn.microsoft.com/oldnewthing/20110202-00/?p=11613. This
200
- // class enforces that requirement.
201
- class PendingIo {
202
- HANDLE m_file;
203
- OVERLAPPED &m_over;
204
- bool m_finished;
205
- public:
206
- // The file handle and OVERLAPPED object must live as long as the PendingIo
207
- // object.
208
- PendingIo(HANDLE file, OVERLAPPED &over) :
209
- m_file(file), m_over(over), m_finished(false) {}
210
- ~PendingIo() {
211
- if (!m_finished) {
212
- // We're not usually that interested in CancelIo's return value.
213
- // In any case, we must not throw an exception in this dtor.
214
- CancelIo(m_file);
215
- waitForCompletion();
216
- }
217
- }
218
- std::tuple<BOOL, DWORD> waitForCompletion(DWORD &actual) WINPTY_NOEXCEPT {
219
- m_finished = true;
220
- const BOOL success =
221
- GetOverlappedResult(m_file, &m_over, &actual, TRUE);
222
- return std::make_tuple(success, GetLastError());
223
- }
224
- std::tuple<BOOL, DWORD> waitForCompletion() WINPTY_NOEXCEPT {
225
- DWORD actual = 0;
226
- return waitForCompletion(actual);
227
- }
228
- };
229
-
230
- } // anonymous namespace
231
-
232
- static void handlePendingIo(winpty_t &wp, OVERLAPPED &over, BOOL &success,
233
- DWORD &lastError, DWORD &actual) {
234
- if (!success && lastError == ERROR_IO_PENDING) {
235
- PendingIo io(wp.controlPipe.get(), over);
236
- const HANDLE waitHandles[2] = { wp.ioEvent.get(),
237
- wp.agentProcess.get() };
238
- DWORD waitRet = WaitForMultipleObjects(
239
- 2, waitHandles, FALSE, wp.agentTimeoutMs);
240
- if (waitRet != WAIT_OBJECT_0) {
241
- // The I/O is still pending. Cancel it, close the I/O event, and
242
- // throw an exception.
243
- if (waitRet == WAIT_OBJECT_0 + 1) {
244
- throw LibWinptyException(WINPTY_ERROR_AGENT_DIED, L"agent died");
245
- } else if (waitRet == WAIT_TIMEOUT) {
246
- throw LibWinptyException(WINPTY_ERROR_AGENT_TIMEOUT,
247
- L"agent timed out");
248
- } else if (waitRet == WAIT_FAILED) {
249
- throwWindowsError(L"WaitForMultipleObjects failed");
250
- } else {
251
- ASSERT(false &&
252
- "unexpected WaitForMultipleObjects return value");
253
- }
254
- }
255
- std::tie(success, lastError) = io.waitForCompletion(actual);
256
- }
257
- }
258
-
259
- static void handlePendingIo(winpty_t &wp, OVERLAPPED &over, BOOL &success,
260
- DWORD &lastError) {
261
- DWORD actual = 0;
262
- handlePendingIo(wp, over, success, lastError, actual);
263
- }
264
-
265
- static void handleReadWriteErrors(winpty_t &wp, BOOL success, DWORD lastError,
266
- const wchar_t *genericErrMsg) {
267
- if (!success) {
268
- // If the pipe connection is broken after it's been connected, then
269
- // later I/O operations fail with ERROR_BROKEN_PIPE (reads) or
270
- // ERROR_NO_DATA (writes). With Wine, they may also fail with
271
- // ERROR_PIPE_NOT_CONNECTED. See this gist[1].
272
- //
273
- // [1] https://gist.github.com/rprichard/8dd8ca134b39534b7da2733994aa07ba
274
- if (lastError == ERROR_BROKEN_PIPE || lastError == ERROR_NO_DATA ||
275
- lastError == ERROR_PIPE_NOT_CONNECTED) {
276
- throw LibWinptyException(WINPTY_ERROR_LOST_CONNECTION,
277
- L"lost connection to agent");
278
- } else {
279
- throwWindowsError(genericErrMsg, lastError);
280
- }
281
- }
282
- }
283
-
284
- // Calls ConnectNamedPipe to wait until the agent connects to the control pipe.
285
- static void
286
- connectControlPipe(winpty_t &wp) {
287
- OVERLAPPED over = {};
288
- over.hEvent = wp.ioEvent.get();
289
- BOOL success = ConnectNamedPipe(wp.controlPipe.get(), &over);
290
- DWORD lastError = GetLastError();
291
- handlePendingIo(wp, over, success, lastError);
292
- if (!success && lastError == ERROR_PIPE_CONNECTED) {
293
- success = TRUE;
294
- }
295
- if (!success) {
296
- throwWindowsError(L"ConnectNamedPipe failed", lastError);
297
- }
298
- }
299
-
300
- static void writeData(winpty_t &wp, const void *data, size_t amount) {
301
- // Perform a single pipe write.
302
- DWORD actual = 0;
303
- OVERLAPPED over = {};
304
- over.hEvent = wp.ioEvent.get();
305
- BOOL success = WriteFile(wp.controlPipe.get(), data, amount,
306
- &actual, &over);
307
- DWORD lastError = GetLastError();
308
- if (!success) {
309
- handlePendingIo(wp, over, success, lastError, actual);
310
- handleReadWriteErrors(wp, success, lastError, L"WriteFile failed");
311
- ASSERT(success);
312
- }
313
- // TODO: Can a partial write actually happen somehow?
314
- ASSERT(actual == amount && "WriteFile wrote fewer bytes than requested");
315
- }
316
-
317
- static inline WriteBuffer newPacket() {
318
- WriteBuffer packet;
319
- packet.putRawValue<uint64_t>(0); // Reserve space for size.
320
- return packet;
321
- }
322
-
323
- static void writePacket(winpty_t &wp, WriteBuffer &packet) {
324
- const auto &buf = packet.buf();
325
- packet.replaceRawValue<uint64_t>(0, buf.size());
326
- writeData(wp, buf.data(), buf.size());
327
- }
328
-
329
- static size_t readData(winpty_t &wp, void *data, size_t amount) {
330
- DWORD actual = 0;
331
- OVERLAPPED over = {};
332
- over.hEvent = wp.ioEvent.get();
333
- BOOL success = ReadFile(wp.controlPipe.get(), data, amount,
334
- &actual, &over);
335
- DWORD lastError = GetLastError();
336
- if (!success) {
337
- handlePendingIo(wp, over, success, lastError, actual);
338
- handleReadWriteErrors(wp, success, lastError, L"ReadFile failed");
339
- }
340
- return actual;
341
- }
342
-
343
- static void readAll(winpty_t &wp, void *data, size_t amount) {
344
- while (amount > 0) {
345
- const size_t chunk = readData(wp, data, amount);
346
- ASSERT(chunk <= amount && "readData result is larger than amount");
347
- data = reinterpret_cast<char*>(data) + chunk;
348
- amount -= chunk;
349
- }
350
- }
351
-
352
- static uint64_t readUInt64(winpty_t &wp) {
353
- uint64_t ret = 0;
354
- readAll(wp, &ret, sizeof(ret));
355
- return ret;
356
- }
357
-
358
- // Returns a reply packet's payload.
359
- static ReadBuffer readPacket(winpty_t &wp) {
360
- const uint64_t packetSize = readUInt64(wp);
361
- if (packetSize < sizeof(packetSize) || packetSize > SIZE_MAX) {
362
- throwWinptyException(L"Agent RPC error: invalid packet size");
363
- }
364
- const size_t payloadSize = packetSize - sizeof(packetSize);
365
- std::vector<char> bytes(payloadSize);
366
- readAll(wp, bytes.data(), bytes.size());
367
- return ReadBuffer(std::move(bytes));
368
- }
369
-
370
- static OwnedHandle createControlPipe(const std::wstring &name) {
371
- const auto sd = createPipeSecurityDescriptorOwnerFullControl();
372
- if (!sd) {
373
- throwWinptyException(
374
- L"could not create the control pipe's SECURITY_DESCRIPTOR");
375
- }
376
- SECURITY_ATTRIBUTES sa = {};
377
- sa.nLength = sizeof(sa);
378
- sa.lpSecurityDescriptor = sd.get();
379
- HANDLE ret = CreateNamedPipeW(name.c_str(),
380
- /*dwOpenMode=*/
381
- PIPE_ACCESS_DUPLEX |
382
- FILE_FLAG_FIRST_PIPE_INSTANCE |
383
- FILE_FLAG_OVERLAPPED,
384
- /*dwPipeMode=*/rejectRemoteClientsPipeFlag(),
385
- /*nMaxInstances=*/1,
386
- /*nOutBufferSize=*/8192,
387
- /*nInBufferSize=*/256,
388
- /*nDefaultTimeOut=*/30000,
389
- &sa);
390
- if (ret == INVALID_HANDLE_VALUE) {
391
- throwWindowsError(L"CreateNamedPipeW failed");
392
- }
393
- return OwnedHandle(ret);
394
- }
395
-
396
-
397
-
398
- /*****************************************************************************
399
- * Start the agent. */
400
-
401
- static OwnedHandle createEvent() {
402
- // manual reset, initially unset
403
- HANDLE h = CreateEventW(nullptr, TRUE, FALSE, nullptr);
404
- if (h == nullptr) {
405
- throwWindowsError(L"CreateEventW failed");
406
- }
407
- return OwnedHandle(h);
408
- }
409
-
410
- // For debugging purposes, provide a way to keep the console on the main window
411
- // station, visible.
412
- static bool shouldShowConsoleWindow() {
413
- char buf[32];
414
- return GetEnvironmentVariableA("WINPTY_SHOW_CONSOLE", buf, sizeof(buf)) > 0;
415
- }
416
-
417
- static bool shouldCreateBackgroundDesktop(bool &createUsingAgent) {
418
- // Prior to Windows 7, winpty's repeated selection-deselection loop
419
- // prevented the user from interacting with their *visible* console
420
- // windows, unless we placed the console onto a background desktop.
421
- // The SetProcessWindowStation call interferes with the clipboard and
422
- // isn't thread-safe, though[1]. The call should perhaps occur in a
423
- // special agent subprocess. Spawning a process in a background desktop
424
- // also breaks ConEmu, but marking the process SW_HIDE seems to correct
425
- // that[2].
426
- //
427
- // Windows 7 moved a lot of console handling out of csrss.exe and into
428
- // a per-console conhost.exe process, which may explain why it isn't
429
- // affected.
430
- //
431
- // This is a somewhat risky change, so there are low-level flags to
432
- // assist in debugging if there are issues.
433
- //
434
- // [1] https://github.com/rprichard/winpty/issues/58
435
- // [2] https://github.com/rprichard/winpty/issues/70
436
- bool ret = !shouldShowConsoleWindow() && !isAtLeastWindows7();
437
- const bool force = hasDebugFlag("force_desktop");
438
- const bool force_spawn = hasDebugFlag("force_desktop_spawn");
439
- const bool force_curproc = hasDebugFlag("force_desktop_curproc");
440
- const bool suppress = hasDebugFlag("no_desktop");
441
- if (force + force_spawn + force_curproc + suppress > 1) {
442
- trace("error: Only one of force_desktop, force_desktop_spawn, "
443
- "force_desktop_curproc, and no_desktop may be set");
444
- } else if (force) {
445
- ret = true;
446
- } else if (force_spawn) {
447
- ret = true;
448
- createUsingAgent = true;
449
- } else if (force_curproc) {
450
- ret = true;
451
- createUsingAgent = false;
452
- } else if (suppress) {
453
- ret = false;
454
- }
455
- return ret;
456
- }
457
-
458
- static bool shouldSpecifyHideFlag() {
459
- const bool force = hasDebugFlag("force_sw_hide");
460
- const bool suppress = hasDebugFlag("no_sw_hide");
461
- bool ret = !shouldShowConsoleWindow();
462
- if (force && suppress) {
463
- trace("error: Both the force_sw_hide and no_sw_hide flags are set");
464
- } else if (force) {
465
- ret = true;
466
- } else if (suppress) {
467
- ret = false;
468
- }
469
- return ret;
470
- }
471
-
472
- static OwnedHandle startAgentProcess(
473
- const std::wstring &desktop,
474
- const std::wstring &controlPipeName,
475
- const std::wstring &params,
476
- DWORD creationFlags,
477
- DWORD &agentPid) {
478
- const std::wstring exePath = findAgentProgram();
479
- const std::wstring cmdline =
480
- (WStringBuilder(256)
481
- << L"\"" << exePath << L"\" "
482
- << controlPipeName << L' '
483
- << params).str_moved();
484
-
485
- auto cmdlineV = vectorWithNulFromString(cmdline);
486
- auto desktopV = vectorWithNulFromString(desktop);
487
-
488
- // Start the agent.
489
- STARTUPINFOW sui = {};
490
- sui.cb = sizeof(sui);
491
- sui.lpDesktop = desktop.empty() ? nullptr : desktopV.data();
492
-
493
- if (shouldSpecifyHideFlag()) {
494
- sui.dwFlags |= STARTF_USESHOWWINDOW;
495
- sui.wShowWindow = SW_HIDE;
496
- }
497
- PROCESS_INFORMATION pi = {};
498
- const BOOL success =
499
- CreateProcessW(exePath.c_str(),
500
- cmdlineV.data(),
501
- nullptr, nullptr,
502
- /*bInheritHandles=*/FALSE,
503
- /*dwCreationFlags=*/creationFlags,
504
- nullptr, nullptr,
505
- &sui, &pi);
506
- if (!success) {
507
- const DWORD lastError = GetLastError();
508
- const auto errStr =
509
- (WStringBuilder(256)
510
- << L"winpty-agent CreateProcess failed: cmdline='" << cmdline
511
- << L"' err=0x" << whexOfInt(lastError)).str_moved();
512
- throw LibWinptyException(
513
- WINPTY_ERROR_AGENT_CREATION_FAILED, errStr.c_str());
514
- }
515
- CloseHandle(pi.hThread);
516
- TRACE("Created agent successfully, pid=%u, cmdline=%s",
517
- static_cast<unsigned int>(pi.dwProcessId),
518
- utf8FromWide(cmdline).c_str());
519
- agentPid = pi.dwProcessId;
520
- return OwnedHandle(pi.hProcess);
521
- }
522
-
523
- static void verifyPipeClientPid(HANDLE serverPipe, DWORD agentPid) {
524
- const auto client = getNamedPipeClientProcessId(serverPipe);
525
- const auto success = std::get<0>(client);
526
- const auto lastError = std::get<2>(client);
527
- if (success == GetNamedPipeClientProcessId_Result::Success) {
528
- const auto clientPid = std::get<1>(client);
529
- if (clientPid != agentPid) {
530
- WStringBuilder errMsg;
531
- errMsg << L"Security check failed: pipe client pid (" << clientPid
532
- << L") does not match agent pid (" << agentPid << L")";
533
- throwWinptyException(errMsg.c_str());
534
- }
535
- } else if (success == GetNamedPipeClientProcessId_Result::UnsupportedOs) {
536
- trace("Pipe client PID security check skipped: "
537
- "GetNamedPipeClientProcessId unsupported on this OS version");
538
- } else {
539
- throwWindowsError(L"GetNamedPipeClientProcessId failed", lastError);
540
- }
541
- }
542
-
543
- static std::unique_ptr<winpty_t>
544
- createAgentSession(const winpty_config_t *cfg,
545
- const std::wstring &desktop,
546
- const std::wstring &params,
547
- DWORD creationFlags) {
548
- std::unique_ptr<winpty_t> wp(new winpty_t);
549
- wp->agentTimeoutMs = cfg->timeoutMs;
550
- wp->ioEvent = createEvent();
551
-
552
- // Create control server pipe.
553
- const auto pipeName =
554
- L"\\\\.\\pipe\\winpty-control-" + GenRandom().uniqueName();
555
- wp->controlPipe = createControlPipe(pipeName);
556
-
557
- DWORD agentPid = 0;
558
- wp->agentProcess = startAgentProcess(
559
- desktop, pipeName, params, creationFlags, agentPid);
560
- connectControlPipe(*wp.get());
561
- verifyPipeClientPid(wp->controlPipe.get(), agentPid);
562
-
563
- return std::move(wp);
564
- }
565
-
566
- namespace {
567
-
568
- class AgentDesktop {
569
- public:
570
- virtual std::wstring name() = 0;
571
- virtual ~AgentDesktop() {}
572
- };
573
-
574
- class AgentDesktopDirect : public AgentDesktop {
575
- public:
576
- AgentDesktopDirect(BackgroundDesktop &&desktop) :
577
- m_desktop(std::move(desktop))
578
- {
579
- }
580
- std::wstring name() override { return m_desktop.desktopName(); }
581
- private:
582
- BackgroundDesktop m_desktop;
583
- };
584
-
585
- class AgentDesktopIndirect : public AgentDesktop {
586
- public:
587
- AgentDesktopIndirect(std::unique_ptr<winpty_t> &&wp,
588
- std::wstring &&desktopName) :
589
- m_wp(std::move(wp)),
590
- m_desktopName(std::move(desktopName))
591
- {
592
- }
593
- std::wstring name() override { return m_desktopName; }
594
- private:
595
- std::unique_ptr<winpty_t> m_wp;
596
- std::wstring m_desktopName;
597
- };
598
-
599
- } // anonymous namespace
600
-
601
- std::unique_ptr<AgentDesktop>
602
- setupBackgroundDesktop(const winpty_config_t *cfg) {
603
- bool useDesktopAgent =
604
- !(cfg->flags & WINPTY_FLAG_ALLOW_CURPROC_DESKTOP_CREATION);
605
- const bool useDesktop = shouldCreateBackgroundDesktop(useDesktopAgent);
606
-
607
- if (!useDesktop) {
608
- return std::unique_ptr<AgentDesktop>();
609
- }
610
-
611
- if (useDesktopAgent) {
612
- auto wp = createAgentSession(
613
- cfg, std::wstring(), L"--create-desktop", DETACHED_PROCESS);
614
-
615
- // Read the desktop name.
616
- auto packet = readPacket(*wp.get());
617
- auto desktopName = packet.getWString();
618
- packet.assertEof();
619
-
620
- if (desktopName.empty()) {
621
- return std::unique_ptr<AgentDesktop>();
622
- } else {
623
- return std::unique_ptr<AgentDesktop>(
624
- new AgentDesktopIndirect(std::move(wp),
625
- std::move(desktopName)));
626
- }
627
- } else {
628
- try {
629
- BackgroundDesktop desktop;
630
- return std::unique_ptr<AgentDesktop>(new AgentDesktopDirect(
631
- std::move(desktop)));
632
- } catch (const WinptyException &e) {
633
- trace("Error: failed to create background desktop, "
634
- "using original desktop instead: %s",
635
- utf8FromWide(e.what()).c_str());
636
- return std::unique_ptr<AgentDesktop>();
637
- }
638
- }
639
- }
640
-
641
- WINPTY_API winpty_t *
642
- winpty_open(const winpty_config_t *cfg,
643
- winpty_error_ptr_t *err /*OPTIONAL*/) {
644
- API_TRY {
645
- ASSERT(cfg != nullptr);
646
- dumpWindowsVersion();
647
- dumpVersionToTrace();
648
-
649
- // Setup a background desktop for the agent.
650
- auto desktop = setupBackgroundDesktop(cfg);
651
- const auto desktopName = desktop ? desktop->name() : std::wstring();
652
-
653
- // Start the primary agent session.
654
- const auto params =
655
- (WStringBuilder(128)
656
- << cfg->flags << L' '
657
- << cfg->mouseMode << L' '
658
- << cfg->cols << L' '
659
- << cfg->rows).str_moved();
660
- auto wp = createAgentSession(cfg, desktopName, params,
661
- CREATE_NEW_CONSOLE);
662
-
663
- // Close handles to the background desktop and restore the original
664
- // window station. This must wait until we know the agent is running
665
- // -- if we close these handles too soon, then the desktop and
666
- // windowstation will be destroyed before the agent can connect with
667
- // them.
668
- //
669
- // If we used a separate agent process to create the desktop, we
670
- // disconnect from that process here, allowing it to exit.
671
- desktop.reset();
672
-
673
- // If we ran the agent process on a background desktop, then when we
674
- // spawn a child process from the agent, it will need to be explicitly
675
- // placed back onto the original desktop.
676
- if (!desktopName.empty()) {
677
- wp->spawnDesktopName = getCurrentDesktopName();
678
- }
679
-
680
- // Get the CONIN/CONOUT pipe names.
681
- auto packet = readPacket(*wp.get());
682
- wp->coninPipeName = packet.getWString();
683
- wp->conoutPipeName = packet.getWString();
684
- if (cfg->flags & WINPTY_FLAG_CONERR) {
685
- wp->conerrPipeName = packet.getWString();
686
- }
687
- packet.assertEof();
688
-
689
- return wp.release();
690
- } API_CATCH(nullptr)
691
- }
692
-
693
- WINPTY_API HANDLE winpty_agent_process(winpty_t *wp) {
694
- ASSERT(wp != nullptr);
695
- return wp->agentProcess.get();
696
- }
697
-
698
-
699
-
700
- /*****************************************************************************
701
- * I/O pipes. */
702
-
703
- static const wchar_t *cstrFromWStringOrNull(const std::wstring &str) {
704
- try {
705
- return str.c_str();
706
- } catch (const std::bad_alloc&) {
707
- return nullptr;
708
- }
709
- }
710
-
711
- WINPTY_API LPCWSTR winpty_conin_name(winpty_t *wp) {
712
- ASSERT(wp != nullptr);
713
- return cstrFromWStringOrNull(wp->coninPipeName);
714
- }
715
-
716
- WINPTY_API LPCWSTR winpty_conout_name(winpty_t *wp) {
717
- ASSERT(wp != nullptr);
718
- return cstrFromWStringOrNull(wp->conoutPipeName);
719
- }
720
-
721
- WINPTY_API LPCWSTR winpty_conerr_name(winpty_t *wp) {
722
- ASSERT(wp != nullptr);
723
- if (wp->conerrPipeName.empty()) {
724
- return nullptr;
725
- } else {
726
- return cstrFromWStringOrNull(wp->conerrPipeName);
727
- }
728
- }
729
-
730
-
731
-
732
- /*****************************************************************************
733
- * winpty agent RPC calls. */
734
-
735
- namespace {
736
-
737
- // Close the control pipe if something goes wrong with the pipe communication,
738
- // which could leave the control pipe in an inconsistent state.
739
- class RpcOperation {
740
- public:
741
- RpcOperation(winpty_t &wp) : m_wp(wp) {
742
- if (m_wp.controlPipe.get() == nullptr) {
743
- throwWinptyException(L"Agent shutdown due to RPC failure");
744
- }
745
- }
746
- ~RpcOperation() {
747
- if (!m_success) {
748
- trace("~RpcOperation: Closing control pipe");
749
- m_wp.controlPipe.dispose(true);
750
- }
751
- }
752
- void success() { m_success = true; }
753
- private:
754
- winpty_t &m_wp;
755
- bool m_success = false;
756
- };
757
-
758
- } // anonymous namespace
759
-
760
-
761
-
762
- /*****************************************************************************
763
- * winpty agent RPC call: process creation. */
764
-
765
- // Return a std::wstring containing every character of the environment block.
766
- // Typically, the block is non-empty, so the std::wstring returned ends with
767
- // two NUL terminators. (These two terminators are counted in size(), so
768
- // calling c_str() produces a triply-terminated string.)
769
- static std::wstring wstringFromEnvBlock(const wchar_t *env) {
770
- std::wstring envStr;
771
- if (env != NULL) {
772
- const wchar_t *p = env;
773
- while (*p != L'\0') {
774
- p += wcslen(p) + 1;
775
- }
776
- p++;
777
- envStr.assign(env, p);
778
-
779
- // Assuming the environment was non-empty, envStr now ends with two NUL
780
- // terminators.
781
- //
782
- // If the environment were empty, though, then envStr would only be
783
- // singly terminated, but the MSDN documentation thinks an env block is
784
- // always doubly-terminated, so add an extra NUL just in case it
785
- // matters.
786
- const auto envStrSz = envStr.size();
787
- if (envStrSz == 1) {
788
- ASSERT(envStr[0] == L'\0');
789
- envStr.push_back(L'\0');
790
- } else {
791
- ASSERT(envStrSz >= 3);
792
- ASSERT(envStr[envStrSz - 3] != L'\0');
793
- ASSERT(envStr[envStrSz - 2] == L'\0');
794
- ASSERT(envStr[envStrSz - 1] == L'\0');
795
- }
796
- }
797
- return envStr;
798
- }
799
-
800
- WINPTY_API winpty_spawn_config_t *
801
- winpty_spawn_config_new(UINT64 winptyFlags,
802
- LPCWSTR appname /*OPTIONAL*/,
803
- LPCWSTR cmdline /*OPTIONAL*/,
804
- LPCWSTR cwd /*OPTIONAL*/,
805
- LPCWSTR env /*OPTIONAL*/,
806
- winpty_error_ptr_t *err /*OPTIONAL*/) {
807
- API_TRY {
808
- ASSERT((winptyFlags & WINPTY_SPAWN_FLAG_MASK) == winptyFlags);
809
- std::unique_ptr<winpty_spawn_config_t> cfg(new winpty_spawn_config_t);
810
- cfg->winptyFlags = winptyFlags;
811
- if (appname != nullptr) { cfg->appname = appname; }
812
- if (cmdline != nullptr) { cfg->cmdline = cmdline; }
813
- if (cwd != nullptr) { cfg->cwd = cwd; }
814
- if (env != nullptr) { cfg->env = wstringFromEnvBlock(env); }
815
- return cfg.release();
816
- } API_CATCH(nullptr)
817
- }
818
-
819
- WINPTY_API void winpty_spawn_config_free(winpty_spawn_config_t *cfg) {
820
- delete cfg;
821
- }
822
-
823
- // It's safe to truncate a handle from 64-bits to 32-bits, or to sign-extend it
824
- // back to 64-bits. See the MSDN article, "Interprocess Communication Between
825
- // 32-bit and 64-bit Applications".
826
- // https://msdn.microsoft.com/en-us/library/windows/desktop/aa384203.aspx
827
- static inline HANDLE handleFromInt64(int64_t i) {
828
- return reinterpret_cast<HANDLE>(static_cast<intptr_t>(i));
829
- }
830
-
831
- // Given a process and a handle in that process, duplicate the handle into the
832
- // current process and close it in the originating process.
833
- static inline OwnedHandle stealHandle(HANDLE process, HANDLE handle) {
834
- HANDLE result = nullptr;
835
- if (!DuplicateHandle(process, handle,
836
- GetCurrentProcess(),
837
- &result, 0, FALSE,
838
- DUPLICATE_CLOSE_SOURCE | DUPLICATE_SAME_ACCESS)) {
839
- throwWindowsError(L"DuplicateHandle of process handle");
840
- }
841
- return OwnedHandle(result);
842
- }
843
-
844
- WINPTY_API BOOL
845
- winpty_spawn(winpty_t *wp,
846
- const winpty_spawn_config_t *cfg,
847
- HANDLE *process_handle /*OPTIONAL*/,
848
- HANDLE *thread_handle /*OPTIONAL*/,
849
- DWORD *create_process_error /*OPTIONAL*/,
850
- winpty_error_ptr_t *err /*OPTIONAL*/) {
851
- API_TRY {
852
- ASSERT(wp != nullptr && cfg != nullptr);
853
-
854
- if (process_handle != nullptr) { *process_handle = nullptr; }
855
- if (thread_handle != nullptr) { *thread_handle = nullptr; }
856
- if (create_process_error != nullptr) { *create_process_error = 0; }
857
-
858
- LockGuard<Mutex> lock(wp->mutex);
859
- RpcOperation rpc(*wp);
860
-
861
- // Send spawn request.
862
- auto packet = newPacket();
863
- packet.putInt32(AgentMsg::StartProcess);
864
- packet.putInt64(cfg->winptyFlags);
865
- packet.putInt32(process_handle != nullptr);
866
- packet.putInt32(thread_handle != nullptr);
867
- packet.putWString(cfg->appname);
868
- packet.putWString(cfg->cmdline);
869
- packet.putWString(cfg->cwd);
870
- packet.putWString(cfg->env);
871
- packet.putWString(wp->spawnDesktopName);
872
- writePacket(*wp, packet);
873
-
874
- // Receive reply.
875
- auto reply = readPacket(*wp);
876
- const auto result = static_cast<StartProcessResult>(reply.getInt32());
877
- if (result == StartProcessResult::CreateProcessFailed) {
878
- const DWORD lastError = reply.getInt32();
879
- reply.assertEof();
880
- if (create_process_error != nullptr) {
881
- *create_process_error = lastError;
882
- }
883
- rpc.success();
884
- throw LibWinptyException(WINPTY_ERROR_SPAWN_CREATE_PROCESS_FAILED,
885
- L"CreateProcess failed");
886
- } else if (result == StartProcessResult::ProcessCreated) {
887
- const HANDLE remoteProcess = handleFromInt64(reply.getInt64());
888
- const HANDLE remoteThread = handleFromInt64(reply.getInt64());
889
- reply.assertEof();
890
- OwnedHandle localProcess;
891
- OwnedHandle localThread;
892
- if (remoteProcess != nullptr) {
893
- localProcess =
894
- stealHandle(wp->agentProcess.get(), remoteProcess);
895
- }
896
- if (remoteThread != nullptr) {
897
- localThread =
898
- stealHandle(wp->agentProcess.get(), remoteThread);
899
- }
900
- if (process_handle != nullptr) {
901
- *process_handle = localProcess.release();
902
- }
903
- if (thread_handle != nullptr) {
904
- *thread_handle = localThread.release();
905
- }
906
- rpc.success();
907
- } else {
908
- throwWinptyException(
909
- L"Agent RPC error: invalid StartProcessResult");
910
- }
911
- return TRUE;
912
- } API_CATCH(FALSE)
913
- }
914
-
915
-
916
-
917
- /*****************************************************************************
918
- * winpty agent RPC calls: everything else */
919
-
920
- WINPTY_API BOOL
921
- winpty_set_size(winpty_t *wp, int cols, int rows,
922
- winpty_error_ptr_t *err /*OPTIONAL*/) {
923
- API_TRY {
924
- ASSERT(wp != nullptr && cols > 0 && rows > 0);
925
- LockGuard<Mutex> lock(wp->mutex);
926
- RpcOperation rpc(*wp);
927
- auto packet = newPacket();
928
- packet.putInt32(AgentMsg::SetSize);
929
- packet.putInt32(cols);
930
- packet.putInt32(rows);
931
- writePacket(*wp, packet);
932
- readPacket(*wp).assertEof();
933
- rpc.success();
934
- return TRUE;
935
- } API_CATCH(FALSE)
936
- }
937
-
938
- WINPTY_API int
939
- winpty_get_console_process_list(winpty_t *wp, int *processList, const int processCount,
940
- winpty_error_ptr_t *err /*OPTIONAL*/) {
941
- API_TRY {
942
- ASSERT(wp != nullptr);
943
- ASSERT(processList != nullptr);
944
- LockGuard<Mutex> lock(wp->mutex);
945
- RpcOperation rpc(*wp);
946
- auto packet = newPacket();
947
- packet.putInt32(AgentMsg::GetConsoleProcessList);
948
- writePacket(*wp, packet);
949
- auto reply = readPacket(*wp);
950
-
951
- auto actualProcessCount = reply.getInt32();
952
-
953
- if (actualProcessCount <= processCount) {
954
- for (auto i = 0; i < actualProcessCount; i++) {
955
- processList[i] = reply.getInt32();
956
- }
957
- }
958
-
959
- reply.assertEof();
960
- rpc.success();
961
- return actualProcessCount;
962
- } API_CATCH(0)
963
- }
964
-
965
- WINPTY_API void winpty_free(winpty_t *wp) {
966
- // At least in principle, CloseHandle can fail, so this deletion can
967
- // fail. It won't throw an exception, but maybe there's an error that
968
- // should be propagated?
969
- delete wp;
970
- }