@react-x11/components 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (783) hide show
  1. package/README.md +979 -21
  2. package/dist/ansi/cast.d.ts +48 -0
  3. package/dist/ansi/cast.d.ts.map +1 -0
  4. package/dist/ansi/cast.js +135 -0
  5. package/dist/ansi/cast.js.map +1 -0
  6. package/dist/ansi/index.d.ts +10 -0
  7. package/dist/ansi/index.d.ts.map +1 -0
  8. package/dist/ansi/index.js +27 -0
  9. package/dist/ansi/index.js.map +1 -0
  10. package/dist/ansi/palette.d.ts +79 -0
  11. package/dist/ansi/palette.d.ts.map +1 -0
  12. package/dist/ansi/palette.js +155 -0
  13. package/dist/ansi/palette.js.map +1 -0
  14. package/dist/ansi/parse.d.ts +114 -0
  15. package/dist/ansi/parse.d.ts.map +1 -0
  16. package/dist/ansi/parse.js +687 -0
  17. package/dist/ansi/parse.js.map +1 -0
  18. package/dist/ansi/sgr.d.ts +87 -0
  19. package/dist/ansi/sgr.d.ts.map +1 -0
  20. package/dist/ansi/sgr.js +302 -0
  21. package/dist/ansi/sgr.js.map +1 -0
  22. package/dist/ansi/utf8.d.ts +15 -0
  23. package/dist/ansi/utf8.d.ts.map +1 -0
  24. package/dist/ansi/utf8.js +82 -0
  25. package/dist/ansi/utf8.js.map +1 -0
  26. package/dist/calendar/Calendar.d.ts +136 -0
  27. package/dist/calendar/Calendar.d.ts.map +1 -0
  28. package/dist/calendar/Calendar.js +460 -0
  29. package/dist/calendar/Calendar.js.map +1 -0
  30. package/dist/calendar/DatePicker.d.ts +52 -0
  31. package/dist/calendar/DatePicker.d.ts.map +1 -0
  32. package/dist/calendar/DatePicker.js +257 -0
  33. package/dist/calendar/DatePicker.js.map +1 -0
  34. package/dist/calendar/dates.d.ts +90 -0
  35. package/dist/calendar/dates.d.ts.map +1 -0
  36. package/dist/calendar/dates.js +236 -0
  37. package/dist/calendar/dates.js.map +1 -0
  38. package/dist/calendar/index.d.ts +8 -0
  39. package/dist/calendar/index.d.ts.map +1 -0
  40. package/dist/calendar/index.js +15 -0
  41. package/dist/calendar/index.js.map +1 -0
  42. package/dist/charts/components.d.ts +141 -0
  43. package/dist/charts/components.d.ts.map +1 -0
  44. package/dist/charts/components.js +580 -0
  45. package/dist/charts/components.js.map +1 -0
  46. package/dist/charts/data.d.ts +198 -0
  47. package/dist/charts/data.d.ts.map +1 -0
  48. package/dist/charts/data.js +616 -0
  49. package/dist/charts/data.js.map +1 -0
  50. package/dist/charts/hx.d.ts +21 -0
  51. package/dist/charts/hx.d.ts.map +1 -0
  52. package/dist/charts/hx.js +15 -0
  53. package/dist/charts/hx.js.map +1 -0
  54. package/dist/charts/index.d.ts +27 -0
  55. package/dist/charts/index.d.ts.map +1 -0
  56. package/dist/charts/index.js +38 -0
  57. package/dist/charts/index.js.map +1 -0
  58. package/dist/charts/node.d.ts +96 -0
  59. package/dist/charts/node.d.ts.map +1 -0
  60. package/dist/charts/node.js +720 -0
  61. package/dist/charts/node.js.map +1 -0
  62. package/dist/charts/render.d.ts +153 -0
  63. package/dist/charts/render.d.ts.map +1 -0
  64. package/dist/charts/render.js +762 -0
  65. package/dist/charts/render.js.map +1 -0
  66. package/dist/charts/scale.d.ts +42 -0
  67. package/dist/charts/scale.d.ts.map +1 -0
  68. package/dist/charts/scale.js +173 -0
  69. package/dist/charts/scale.js.map +1 -0
  70. package/dist/charts/spec.d.ts +91 -0
  71. package/dist/charts/spec.d.ts.map +1 -0
  72. package/dist/charts/spec.js +33 -0
  73. package/dist/charts/spec.js.map +1 -0
  74. package/dist/charts/timers.d.ts +6 -0
  75. package/dist/charts/timers.d.ts.map +1 -0
  76. package/dist/charts/timers.js +14 -0
  77. package/dist/charts/timers.js.map +1 -0
  78. package/dist/code/hx.d.ts +24 -0
  79. package/dist/code/hx.d.ts.map +1 -0
  80. package/dist/code/hx.js +25 -0
  81. package/dist/code/hx.js.map +1 -0
  82. package/dist/code/index.d.ts +45 -0
  83. package/dist/code/index.d.ts.map +1 -0
  84. package/dist/code/index.js +93 -0
  85. package/dist/code/index.js.map +1 -0
  86. package/dist/code-editor/completion.d.ts +26 -0
  87. package/dist/code-editor/completion.d.ts.map +1 -0
  88. package/dist/code-editor/completion.js +129 -0
  89. package/dist/code-editor/completion.js.map +1 -0
  90. package/dist/code-editor/doc.d.ts +35 -0
  91. package/dist/code-editor/doc.d.ts.map +1 -0
  92. package/dist/code-editor/doc.js +162 -0
  93. package/dist/code-editor/doc.js.map +1 -0
  94. package/dist/code-editor/hx.d.ts +13 -0
  95. package/dist/code-editor/hx.d.ts.map +1 -0
  96. package/dist/code-editor/hx.js +10 -0
  97. package/dist/code-editor/hx.js.map +1 -0
  98. package/dist/code-editor/index.d.ts +88 -0
  99. package/dist/code-editor/index.d.ts.map +1 -0
  100. package/dist/code-editor/index.js +401 -0
  101. package/dist/code-editor/index.js.map +1 -0
  102. package/dist/code-editor/node.d.ts +343 -0
  103. package/dist/code-editor/node.d.ts.map +1 -0
  104. package/dist/code-editor/node.js +1521 -0
  105. package/dist/code-editor/node.js.map +1 -0
  106. package/dist/code-language/hljs.d.ts +47 -0
  107. package/dist/code-language/hljs.d.ts.map +1 -0
  108. package/dist/code-language/hljs.js +211 -0
  109. package/dist/code-language/hljs.js.map +1 -0
  110. package/dist/code-language/index.d.ts +22 -0
  111. package/dist/code-language/index.d.ts.map +1 -0
  112. package/dist/code-language/index.js +20 -0
  113. package/dist/code-language/index.js.map +1 -0
  114. package/dist/code-language/languages/glsl.d.ts +4 -0
  115. package/dist/code-language/languages/glsl.d.ts.map +1 -0
  116. package/dist/code-language/languages/glsl.js +99 -0
  117. package/dist/code-language/languages/glsl.js.map +1 -0
  118. package/dist/code-language/languages/javascript.d.ts +10 -0
  119. package/dist/code-language/languages/javascript.d.ts.map +1 -0
  120. package/dist/code-language/languages/javascript.js +360 -0
  121. package/dist/code-language/languages/javascript.js.map +1 -0
  122. package/dist/code-language/languages/json.d.ts +4 -0
  123. package/dist/code-language/languages/json.d.ts.map +1 -0
  124. package/dist/code-language/languages/json.js +68 -0
  125. package/dist/code-language/languages/json.js.map +1 -0
  126. package/dist/code-language/languages/shell.d.ts +4 -0
  127. package/dist/code-language/languages/shell.d.ts.map +1 -0
  128. package/dist/code-language/languages/shell.js +189 -0
  129. package/dist/code-language/languages/shell.js.map +1 -0
  130. package/dist/code-language/languages/sql.d.ts +11 -0
  131. package/dist/code-language/languages/sql.d.ts.map +1 -0
  132. package/dist/code-language/languages/sql.js +133 -0
  133. package/dist/code-language/languages/sql.js.map +1 -0
  134. package/dist/code-language/lezer.d.ts +24 -0
  135. package/dist/code-language/lezer.d.ts.map +1 -0
  136. package/dist/code-language/lezer.js +148 -0
  137. package/dist/code-language/lezer.js.map +1 -0
  138. package/dist/code-language/registry.d.ts +19 -0
  139. package/dist/code-language/registry.d.ts.map +1 -0
  140. package/dist/code-language/registry.js +56 -0
  141. package/dist/code-language/registry.js.map +1 -0
  142. package/dist/code-language/runs.d.ts +35 -0
  143. package/dist/code-language/runs.d.ts.map +1 -0
  144. package/dist/code-language/runs.js +88 -0
  145. package/dist/code-language/runs.js.map +1 -0
  146. package/dist/code-language/stream.d.ts +70 -0
  147. package/dist/code-language/stream.d.ts.map +1 -0
  148. package/dist/code-language/stream.js +243 -0
  149. package/dist/code-language/stream.js.map +1 -0
  150. package/dist/code-language/textmate.d.ts +27 -0
  151. package/dist/code-language/textmate.d.ts.map +1 -0
  152. package/dist/code-language/textmate.js +86 -0
  153. package/dist/code-language/textmate.js.map +1 -0
  154. package/dist/code-language/theme.d.ts +26 -0
  155. package/dist/code-language/theme.d.ts.map +1 -0
  156. package/dist/code-language/theme.js +108 -0
  157. package/dist/code-language/theme.js.map +1 -0
  158. package/dist/code-language/timers.d.ts +7 -0
  159. package/dist/code-language/timers.d.ts.map +1 -0
  160. package/dist/code-language/timers.js +22 -0
  161. package/dist/code-language/timers.js.map +1 -0
  162. package/dist/code-language/types.d.ts +173 -0
  163. package/dist/code-language/types.d.ts.map +1 -0
  164. package/dist/code-language/types.js +41 -0
  165. package/dist/code-language/types.js.map +1 -0
  166. package/dist/codeblock/index.d.ts +69 -0
  167. package/dist/codeblock/index.d.ts.map +1 -0
  168. package/dist/codeblock/index.js +85 -0
  169. package/dist/codeblock/index.js.map +1 -0
  170. package/dist/color-picker/ColorField.d.ts +39 -0
  171. package/dist/color-picker/ColorField.d.ts.map +1 -0
  172. package/dist/color-picker/ColorField.js +239 -0
  173. package/dist/color-picker/ColorField.js.map +1 -0
  174. package/dist/color-picker/ColorPicker.d.ts +109 -0
  175. package/dist/color-picker/ColorPicker.d.ts.map +1 -0
  176. package/dist/color-picker/ColorPicker.js +757 -0
  177. package/dist/color-picker/ColorPicker.js.map +1 -0
  178. package/dist/color-picker/color.d.ts +105 -0
  179. package/dist/color-picker/color.d.ts.map +1 -0
  180. package/dist/color-picker/color.js +313 -0
  181. package/dist/color-picker/color.js.map +1 -0
  182. package/dist/color-picker/index.d.ts +8 -0
  183. package/dist/color-picker/index.d.ts.map +1 -0
  184. package/dist/color-picker/index.js +19 -0
  185. package/dist/color-picker/index.js.map +1 -0
  186. package/dist/desktop-calendar/eds.d.ts +102 -0
  187. package/dist/desktop-calendar/eds.d.ts.map +1 -0
  188. package/dist/desktop-calendar/eds.js +356 -0
  189. package/dist/desktop-calendar/eds.js.map +1 -0
  190. package/dist/desktop-calendar/ical.d.ts +63 -0
  191. package/dist/desktop-calendar/ical.d.ts.map +1 -0
  192. package/dist/desktop-calendar/ical.js +57 -0
  193. package/dist/desktop-calendar/ical.js.map +1 -0
  194. package/dist/desktop-calendar/index.d.ts +72 -0
  195. package/dist/desktop-calendar/index.d.ts.map +1 -0
  196. package/dist/desktop-calendar/index.js +213 -0
  197. package/dist/desktop-calendar/index.js.map +1 -0
  198. package/dist/embed/client.d.ts +121 -0
  199. package/dist/embed/client.d.ts.map +1 -0
  200. package/dist/embed/client.js +203 -0
  201. package/dist/embed/client.js.map +1 -0
  202. package/dist/embed/host.d.ts +96 -0
  203. package/dist/embed/host.d.ts.map +1 -0
  204. package/dist/embed/host.js +266 -0
  205. package/dist/embed/host.js.map +1 -0
  206. package/dist/embed/index.d.ts +5 -0
  207. package/dist/embed/index.d.ts.map +1 -0
  208. package/dist/embed/index.js +13 -0
  209. package/dist/embed/index.js.map +1 -0
  210. package/dist/embed/timers.d.ts +6 -0
  211. package/dist/embed/timers.d.ts.map +1 -0
  212. package/dist/embed/timers.js +16 -0
  213. package/dist/embed/timers.js.map +1 -0
  214. package/dist/flow/draw.d.ts +45 -0
  215. package/dist/flow/draw.d.ts.map +1 -0
  216. package/dist/flow/draw.js +295 -0
  217. package/dist/flow/draw.js.map +1 -0
  218. package/dist/flow/index.d.ts +64 -0
  219. package/dist/flow/index.d.ts.map +1 -0
  220. package/dist/flow/index.js +306 -0
  221. package/dist/flow/index.js.map +1 -0
  222. package/dist/flow/model.d.ts +158 -0
  223. package/dist/flow/model.d.ts.map +1 -0
  224. package/dist/flow/model.js +566 -0
  225. package/dist/flow/model.js.map +1 -0
  226. package/dist/flow/node.d.ts +429 -0
  227. package/dist/flow/node.d.ts.map +1 -0
  228. package/dist/flow/node.js +3025 -0
  229. package/dist/flow/node.js.map +1 -0
  230. package/dist/flow/paths.d.ts +43 -0
  231. package/dist/flow/paths.d.ts.map +1 -0
  232. package/dist/flow/paths.js +327 -0
  233. package/dist/flow/paths.js.map +1 -0
  234. package/dist/flow/types.d.ts +561 -0
  235. package/dist/flow/types.d.ts.map +1 -0
  236. package/dist/flow/types.js +2 -0
  237. package/dist/flow/types.js.map +1 -0
  238. package/dist/formula/hx.d.ts +24 -0
  239. package/dist/formula/hx.d.ts.map +1 -0
  240. package/dist/formula/hx.js +25 -0
  241. package/dist/formula/hx.js.map +1 -0
  242. package/dist/formula/index.d.ts +74 -0
  243. package/dist/formula/index.d.ts.map +1 -0
  244. package/dist/formula/index.js +155 -0
  245. package/dist/formula/index.js.map +1 -0
  246. package/dist/formula/katex.d.ts +78 -0
  247. package/dist/formula/katex.d.ts.map +1 -0
  248. package/dist/formula/katex.js +130 -0
  249. package/dist/formula/katex.js.map +1 -0
  250. package/dist/formula/layout.d.ts +103 -0
  251. package/dist/formula/layout.d.ts.map +1 -0
  252. package/dist/formula/layout.js +716 -0
  253. package/dist/formula/layout.js.map +1 -0
  254. package/dist/formula/node.d.ts +50 -0
  255. package/dist/formula/node.d.ts.map +1 -0
  256. package/dist/formula/node.js +351 -0
  257. package/dist/formula/node.js.map +1 -0
  258. package/dist/html/controls.d.ts +48 -0
  259. package/dist/html/controls.d.ts.map +1 -0
  260. package/dist/html/controls.js +195 -0
  261. package/dist/html/controls.js.map +1 -0
  262. package/dist/html/css/cascade.d.ts +51 -0
  263. package/dist/html/css/cascade.d.ts.map +1 -0
  264. package/dist/html/css/cascade.js +552 -0
  265. package/dist/html/css/cascade.js.map +1 -0
  266. package/dist/html/css/parse.d.ts +74 -0
  267. package/dist/html/css/parse.d.ts.map +1 -0
  268. package/dist/html/css/parse.js +464 -0
  269. package/dist/html/css/parse.js.map +1 -0
  270. package/dist/html/css/style.d.ts +142 -0
  271. package/dist/html/css/style.d.ts.map +1 -0
  272. package/dist/html/css/style.js +1145 -0
  273. package/dist/html/css/style.js.map +1 -0
  274. package/dist/html/css/ua.d.ts +5 -0
  275. package/dist/html/css/ua.d.ts.map +1 -0
  276. package/dist/html/css/ua.js +171 -0
  277. package/dist/html/css/ua.js.map +1 -0
  278. package/dist/html/css/values.d.ts +78 -0
  279. package/dist/html/css/values.d.ts.map +1 -0
  280. package/dist/html/css/values.js +330 -0
  281. package/dist/html/css/values.js.map +1 -0
  282. package/dist/html/dom.d.ts +112 -0
  283. package/dist/html/dom.d.ts.map +1 -0
  284. package/dist/html/dom.js +374 -0
  285. package/dist/html/dom.js.map +1 -0
  286. package/dist/html/hx.d.ts +24 -0
  287. package/dist/html/hx.d.ts.map +1 -0
  288. package/dist/html/hx.js +29 -0
  289. package/dist/html/hx.js.map +1 -0
  290. package/dist/html/index.d.ts +137 -0
  291. package/dist/html/index.d.ts.map +1 -0
  292. package/dist/html/index.js +339 -0
  293. package/dist/html/index.js.map +1 -0
  294. package/dist/html/layout/block.d.ts +58 -0
  295. package/dist/html/layout/block.d.ts.map +1 -0
  296. package/dist/html/layout/block.js +724 -0
  297. package/dist/html/layout/block.js.map +1 -0
  298. package/dist/html/layout/boxes.d.ts +261 -0
  299. package/dist/html/layout/boxes.d.ts.map +1 -0
  300. package/dist/html/layout/boxes.js +725 -0
  301. package/dist/html/layout/boxes.js.map +1 -0
  302. package/dist/html/layout/flex.d.ts +16 -0
  303. package/dist/html/layout/flex.d.ts.map +1 -0
  304. package/dist/html/layout/flex.js +242 -0
  305. package/dist/html/layout/flex.js.map +1 -0
  306. package/dist/html/layout/floats.d.ts +50 -0
  307. package/dist/html/layout/floats.d.ts.map +1 -0
  308. package/dist/html/layout/floats.js +110 -0
  309. package/dist/html/layout/floats.js.map +1 -0
  310. package/dist/html/layout/inline.d.ts +44 -0
  311. package/dist/html/layout/inline.d.ts.map +1 -0
  312. package/dist/html/layout/inline.js +700 -0
  313. package/dist/html/layout/inline.js.map +1 -0
  314. package/dist/html/layout/table.d.ts +5 -0
  315. package/dist/html/layout/table.d.ts.map +1 -0
  316. package/dist/html/layout/table.js +340 -0
  317. package/dist/html/layout/table.js.map +1 -0
  318. package/dist/html/node.d.ts +149 -0
  319. package/dist/html/node.d.ts.map +1 -0
  320. package/dist/html/node.js +861 -0
  321. package/dist/html/node.js.map +1 -0
  322. package/dist/html/paint.d.ts +48 -0
  323. package/dist/html/paint.d.ts.map +1 -0
  324. package/dist/html/paint.js +495 -0
  325. package/dist/html/paint.js.map +1 -0
  326. package/dist/html/resources.d.ts +48 -0
  327. package/dist/html/resources.d.ts.map +1 -0
  328. package/dist/html/resources.js +156 -0
  329. package/dist/html/resources.js.map +1 -0
  330. package/dist/index.d.ts +48 -0
  331. package/dist/index.d.ts.map +1 -0
  332. package/dist/index.js +92 -0
  333. package/dist/index.js.map +1 -0
  334. package/dist/internal/heights.d.ts +81 -0
  335. package/dist/internal/heights.d.ts.map +1 -0
  336. package/dist/internal/heights.js +193 -0
  337. package/dist/internal/heights.js.map +1 -0
  338. package/dist/internal/hx.d.ts +24 -0
  339. package/dist/internal/hx.d.ts.map +1 -0
  340. package/dist/internal/hx.js +27 -0
  341. package/dist/internal/hx.js.map +1 -0
  342. package/dist/internal/text.d.ts +6 -0
  343. package/dist/internal/text.d.ts.map +1 -0
  344. package/dist/internal/text.js +44 -0
  345. package/dist/internal/text.js.map +1 -0
  346. package/dist/internal/timers.d.ts +8 -0
  347. package/dist/internal/timers.d.ts.map +1 -0
  348. package/dist/internal/timers.js +22 -0
  349. package/dist/internal/timers.js.map +1 -0
  350. package/dist/internal/widget.d.ts +40 -0
  351. package/dist/internal/widget.d.ts.map +1 -0
  352. package/dist/internal/widget.js +44 -0
  353. package/dist/internal/widget.js.map +1 -0
  354. package/dist/markdown/ast.d.ts +126 -0
  355. package/dist/markdown/ast.d.ts.map +1 -0
  356. package/dist/markdown/ast.js +8 -0
  357. package/dist/markdown/ast.js.map +1 -0
  358. package/dist/markdown/hx.d.ts +24 -0
  359. package/dist/markdown/hx.d.ts.map +1 -0
  360. package/dist/markdown/hx.js +25 -0
  361. package/dist/markdown/hx.js.map +1 -0
  362. package/dist/markdown/index.d.ts +90 -0
  363. package/dist/markdown/index.d.ts.map +1 -0
  364. package/dist/markdown/index.js +413 -0
  365. package/dist/markdown/index.js.map +1 -0
  366. package/dist/markdown/parse.d.ts +8 -0
  367. package/dist/markdown/parse.d.ts.map +1 -0
  368. package/dist/markdown/parse.js +911 -0
  369. package/dist/markdown/parse.js.map +1 -0
  370. package/dist/markdown/spans.d.ts +20 -0
  371. package/dist/markdown/spans.d.ts.map +1 -0
  372. package/dist/markdown/spans.js +96 -0
  373. package/dist/markdown/spans.js.map +1 -0
  374. package/dist/media-player/backends.d.ts +64 -0
  375. package/dist/media-player/backends.d.ts.map +1 -0
  376. package/dist/media-player/backends.js +110 -0
  377. package/dist/media-player/backends.js.map +1 -0
  378. package/dist/media-player/control.d.ts +40 -0
  379. package/dist/media-player/control.d.ts.map +1 -0
  380. package/dist/media-player/control.js +44 -0
  381. package/dist/media-player/control.js.map +1 -0
  382. package/dist/media-player/hx.d.ts +24 -0
  383. package/dist/media-player/hx.d.ts.map +1 -0
  384. package/dist/media-player/hx.js +25 -0
  385. package/dist/media-player/hx.js.map +1 -0
  386. package/dist/media-player/index.d.ts +107 -0
  387. package/dist/media-player/index.d.ts.map +1 -0
  388. package/dist/media-player/index.js +219 -0
  389. package/dist/media-player/index.js.map +1 -0
  390. package/dist/media-player/mpv.d.ts +4 -0
  391. package/dist/media-player/mpv.d.ts.map +1 -0
  392. package/dist/media-player/mpv.js +120 -0
  393. package/dist/media-player/mpv.js.map +1 -0
  394. package/dist/media-player/vlc.d.ts +8 -0
  395. package/dist/media-player/vlc.d.ts.map +1 -0
  396. package/dist/media-player/vlc.js +83 -0
  397. package/dist/media-player/vlc.js.map +1 -0
  398. package/dist/richtext/index.d.ts +19 -0
  399. package/dist/richtext/index.d.ts.map +1 -0
  400. package/dist/richtext/index.js +4 -0
  401. package/dist/richtext/index.js.map +1 -0
  402. package/dist/richtext/links.d.ts +12 -0
  403. package/dist/richtext/links.d.ts.map +1 -0
  404. package/dist/richtext/links.js +64 -0
  405. package/dist/richtext/links.js.map +1 -0
  406. package/dist/richtext/menu.d.ts +11 -0
  407. package/dist/richtext/menu.d.ts.map +1 -0
  408. package/dist/richtext/menu.js +43 -0
  409. package/dist/richtext/menu.js.map +1 -0
  410. package/dist/richtext/node.d.ts +151 -0
  411. package/dist/richtext/node.d.ts.map +1 -0
  412. package/dist/richtext/node.js +255 -0
  413. package/dist/richtext/node.js.map +1 -0
  414. package/dist/richtext/runs.d.ts +92 -0
  415. package/dist/richtext/runs.d.ts.map +1 -0
  416. package/dist/richtext/runs.js +158 -0
  417. package/dist/richtext/runs.js.map +1 -0
  418. package/dist/table/hx.d.ts +24 -0
  419. package/dist/table/hx.d.ts.map +1 -0
  420. package/dist/table/hx.js +25 -0
  421. package/dist/table/hx.js.map +1 -0
  422. package/dist/table/index.d.ts +169 -0
  423. package/dist/table/index.d.ts.map +1 -0
  424. package/dist/table/index.js +844 -0
  425. package/dist/table/index.js.map +1 -0
  426. package/dist/table/rows.d.ts +136 -0
  427. package/dist/table/rows.d.ts.map +1 -0
  428. package/dist/table/rows.js +146 -0
  429. package/dist/table/rows.js.map +1 -0
  430. package/dist/terminal/backends.d.ts +105 -0
  431. package/dist/terminal/backends.d.ts.map +1 -0
  432. package/dist/terminal/backends.js +185 -0
  433. package/dist/terminal/backends.js.map +1 -0
  434. package/dist/terminal/hx.d.ts +24 -0
  435. package/dist/terminal/hx.d.ts.map +1 -0
  436. package/dist/terminal/hx.js +25 -0
  437. package/dist/terminal/hx.js.map +1 -0
  438. package/dist/terminal/index.d.ts +160 -0
  439. package/dist/terminal/index.d.ts.map +1 -0
  440. package/dist/terminal/index.js +344 -0
  441. package/dist/terminal/index.js.map +1 -0
  442. package/dist/terminal/title.d.ts +24 -0
  443. package/dist/terminal/title.d.ts.map +1 -0
  444. package/dist/terminal/title.js +129 -0
  445. package/dist/terminal/title.js.map +1 -0
  446. package/dist/terminal/vt/colors.d.ts +63 -0
  447. package/dist/terminal/vt/colors.d.ts.map +1 -0
  448. package/dist/terminal/vt/colors.js +203 -0
  449. package/dist/terminal/vt/colors.js.map +1 -0
  450. package/dist/terminal/vt/diff.d.ts +117 -0
  451. package/dist/terminal/vt/diff.d.ts.map +1 -0
  452. package/dist/terminal/vt/diff.js +358 -0
  453. package/dist/terminal/vt/diff.js.map +1 -0
  454. package/dist/terminal/vt/fonts.d.ts +92 -0
  455. package/dist/terminal/vt/fonts.d.ts.map +1 -0
  456. package/dist/terminal/vt/fonts.js +178 -0
  457. package/dist/terminal/vt/fonts.js.map +1 -0
  458. package/dist/terminal/vt/index.d.ts +78 -0
  459. package/dist/terminal/vt/index.d.ts.map +1 -0
  460. package/dist/terminal/vt/index.js +312 -0
  461. package/dist/terminal/vt/index.js.map +1 -0
  462. package/dist/terminal/vt/keys.d.ts +74 -0
  463. package/dist/terminal/vt/keys.d.ts.map +1 -0
  464. package/dist/terminal/vt/keys.js +309 -0
  465. package/dist/terminal/vt/keys.js.map +1 -0
  466. package/dist/terminal/vt/mouse.d.ts +44 -0
  467. package/dist/terminal/vt/mouse.d.ts.map +1 -0
  468. package/dist/terminal/vt/mouse.js +106 -0
  469. package/dist/terminal/vt/mouse.js.map +1 -0
  470. package/dist/terminal/vt/node.d.ts +246 -0
  471. package/dist/terminal/vt/node.d.ts.map +1 -0
  472. package/dist/terminal/vt/node.js +1068 -0
  473. package/dist/terminal/vt/node.js.map +1 -0
  474. package/dist/terminal/vt/pty.d.ts +81 -0
  475. package/dist/terminal/vt/pty.d.ts.map +1 -0
  476. package/dist/terminal/vt/pty.js +201 -0
  477. package/dist/terminal/vt/pty.js.map +1 -0
  478. package/dist/terminal/vt/renderer.d.ts +179 -0
  479. package/dist/terminal/vt/renderer.d.ts.map +1 -0
  480. package/dist/terminal/vt/renderer.js +357 -0
  481. package/dist/terminal/vt/renderer.js.map +1 -0
  482. package/dist/terminal/vt/timers.d.ts +6 -0
  483. package/dist/terminal/vt/timers.d.ts.map +1 -0
  484. package/dist/terminal/vt/timers.js +16 -0
  485. package/dist/terminal/vt/timers.js.map +1 -0
  486. package/dist/terminal/vt/xterm.d.ts +142 -0
  487. package/dist/terminal/vt/xterm.d.ts.map +1 -0
  488. package/dist/terminal/vt/xterm.js +32 -0
  489. package/dist/terminal/vt/xterm.js.map +1 -0
  490. package/dist/terminal-output/hx.d.ts +24 -0
  491. package/dist/terminal-output/hx.d.ts.map +1 -0
  492. package/dist/terminal-output/hx.js +25 -0
  493. package/dist/terminal-output/hx.js.map +1 -0
  494. package/dist/terminal-output/index.d.ts +92 -0
  495. package/dist/terminal-output/index.d.ts.map +1 -0
  496. package/dist/terminal-output/index.js +179 -0
  497. package/dist/terminal-output/index.js.map +1 -0
  498. package/dist/terminal-output/runs.d.ts +27 -0
  499. package/dist/terminal-output/runs.d.ts.map +1 -0
  500. package/dist/terminal-output/runs.js +66 -0
  501. package/dist/terminal-output/runs.js.map +1 -0
  502. package/dist/three/canvas.d.ts +46 -0
  503. package/dist/three/canvas.d.ts.map +1 -0
  504. package/dist/three/canvas.js +305 -0
  505. package/dist/three/canvas.js.map +1 -0
  506. package/dist/three/events.d.ts +64 -0
  507. package/dist/three/events.d.ts.map +1 -0
  508. package/dist/three/events.js +146 -0
  509. package/dist/three/events.js.map +1 -0
  510. package/dist/three/geometries.d.ts +89 -0
  511. package/dist/three/geometries.d.ts.map +1 -0
  512. package/dist/three/geometries.js +345 -0
  513. package/dist/three/geometries.js.map +1 -0
  514. package/dist/three/globals.d.ts +7 -0
  515. package/dist/three/globals.d.ts.map +1 -0
  516. package/dist/three/globals.js +20 -0
  517. package/dist/three/globals.js.map +1 -0
  518. package/dist/three/hx.d.ts +9 -0
  519. package/dist/three/hx.d.ts.map +1 -0
  520. package/dist/three/hx.js +10 -0
  521. package/dist/three/hx.js.map +1 -0
  522. package/dist/three/index.d.ts +22 -0
  523. package/dist/three/index.d.ts.map +1 -0
  524. package/dist/three/index.js +24 -0
  525. package/dist/three/index.js.map +1 -0
  526. package/dist/three/jsx-dev-runtime.d.ts +19 -0
  527. package/dist/three/jsx-dev-runtime.d.ts.map +1 -0
  528. package/dist/three/jsx-dev-runtime.js +2 -0
  529. package/dist/three/jsx-dev-runtime.js.map +1 -0
  530. package/dist/three/jsx-runtime.d.ts +19 -0
  531. package/dist/three/jsx-runtime.d.ts.map +1 -0
  532. package/dist/three/jsx-runtime.js +2 -0
  533. package/dist/three/jsx-runtime.js.map +1 -0
  534. package/dist/three/jsx.d.ts +198 -0
  535. package/dist/three/jsx.d.ts.map +1 -0
  536. package/dist/three/jsx.js +2 -0
  537. package/dist/three/jsx.js.map +1 -0
  538. package/dist/three/materials.d.ts +125 -0
  539. package/dist/three/materials.d.ts.map +1 -0
  540. package/dist/three/materials.js +229 -0
  541. package/dist/three/materials.js.map +1 -0
  542. package/dist/three/math.d.ts +146 -0
  543. package/dist/three/math.d.ts.map +1 -0
  544. package/dist/three/math.js +464 -0
  545. package/dist/three/math.js.map +1 -0
  546. package/dist/three/objects.d.ts +185 -0
  547. package/dist/three/objects.d.ts.map +1 -0
  548. package/dist/three/objects.js +309 -0
  549. package/dist/three/objects.js.map +1 -0
  550. package/dist/three/passes.d.ts +54 -0
  551. package/dist/three/passes.d.ts.map +1 -0
  552. package/dist/three/passes.js +78 -0
  553. package/dist/three/passes.js.map +1 -0
  554. package/dist/three/postprocess.d.ts +85 -0
  555. package/dist/three/postprocess.d.ts.map +1 -0
  556. package/dist/three/postprocess.js +503 -0
  557. package/dist/three/postprocess.js.map +1 -0
  558. package/dist/three/raycast.d.ts +24 -0
  559. package/dist/three/raycast.d.ts.map +1 -0
  560. package/dist/three/raycast.js +138 -0
  561. package/dist/three/raycast.js.map +1 -0
  562. package/dist/three/reconciler.d.ts +48 -0
  563. package/dist/three/reconciler.d.ts.map +1 -0
  564. package/dist/three/reconciler.js +416 -0
  565. package/dist/three/reconciler.js.map +1 -0
  566. package/dist/three/renderer-direct.d.ts +102 -0
  567. package/dist/three/renderer-direct.d.ts.map +1 -0
  568. package/dist/three/renderer-direct.js +782 -0
  569. package/dist/three/renderer-direct.js.map +1 -0
  570. package/dist/three/renderer-indirect.d.ts +68 -0
  571. package/dist/three/renderer-indirect.d.ts.map +1 -0
  572. package/dist/three/renderer-indirect.js +438 -0
  573. package/dist/three/renderer-indirect.js.map +1 -0
  574. package/dist/three/store.d.ts +81 -0
  575. package/dist/three/store.d.ts.map +1 -0
  576. package/dist/three/store.js +110 -0
  577. package/dist/three/store.js.map +1 -0
  578. package/dist/timeline/hx.d.ts +18 -0
  579. package/dist/timeline/hx.d.ts.map +1 -0
  580. package/dist/timeline/hx.js +10 -0
  581. package/dist/timeline/hx.js.map +1 -0
  582. package/dist/timeline/index.d.ts +152 -0
  583. package/dist/timeline/index.d.ts.map +1 -0
  584. package/dist/timeline/index.js +383 -0
  585. package/dist/timeline/index.js.map +1 -0
  586. package/dist/tray-host/hx.d.ts +24 -0
  587. package/dist/tray-host/hx.d.ts.map +1 -0
  588. package/dist/tray-host/hx.js +25 -0
  589. package/dist/tray-host/hx.js.map +1 -0
  590. package/dist/tray-host/index.d.ts +110 -0
  591. package/dist/tray-host/index.d.ts.map +1 -0
  592. package/dist/tray-host/index.js +191 -0
  593. package/dist/tray-host/index.js.map +1 -0
  594. package/dist/tray-host/manager.d.ts +137 -0
  595. package/dist/tray-host/manager.d.ts.map +1 -0
  596. package/dist/tray-host/manager.js +462 -0
  597. package/dist/tray-host/manager.js.map +1 -0
  598. package/dist/tray-host/notify.d.ts +22 -0
  599. package/dist/tray-host/notify.d.ts.map +1 -0
  600. package/dist/tray-host/notify.js +74 -0
  601. package/dist/tray-host/notify.js.map +1 -0
  602. package/dist/tray-host/protocol.d.ts +106 -0
  603. package/dist/tray-host/protocol.d.ts.map +1 -0
  604. package/dist/tray-host/protocol.js +191 -0
  605. package/dist/tray-host/protocol.js.map +1 -0
  606. package/dist/tree/hx.d.ts +24 -0
  607. package/dist/tree/hx.d.ts.map +1 -0
  608. package/dist/tree/hx.js +25 -0
  609. package/dist/tree/hx.js.map +1 -0
  610. package/dist/tree/index.d.ts +221 -0
  611. package/dist/tree/index.d.ts.map +1 -0
  612. package/dist/tree/index.js +716 -0
  613. package/dist/tree/index.js.map +1 -0
  614. package/dist/tree/internal.d.ts +18 -0
  615. package/dist/tree/internal.d.ts.map +1 -0
  616. package/dist/tree/internal.js +66 -0
  617. package/dist/tree/internal.js.map +1 -0
  618. package/dist/tree/rows.d.ts +177 -0
  619. package/dist/tree/rows.d.ts.map +1 -0
  620. package/dist/tree/rows.js +179 -0
  621. package/dist/tree/rows.js.map +1 -0
  622. package/package.json +166 -12
  623. package/src/ansi/cast.ts +159 -0
  624. package/src/ansi/index.ts +53 -0
  625. package/src/ansi/palette.ts +226 -0
  626. package/src/ansi/parse.ts +780 -0
  627. package/src/ansi/sgr.ts +380 -0
  628. package/src/ansi/utf8.ts +84 -0
  629. package/src/calendar/Calendar.ts +744 -0
  630. package/src/calendar/DatePicker.ts +368 -0
  631. package/src/calendar/dates.ts +307 -0
  632. package/src/calendar/index.ts +51 -0
  633. package/src/charts/components.ts +864 -0
  634. package/src/charts/data.ts +776 -0
  635. package/src/charts/hx.ts +39 -0
  636. package/src/charts/index.ts +99 -0
  637. package/src/charts/node.ts +932 -0
  638. package/src/charts/render.ts +982 -0
  639. package/src/charts/scale.ts +214 -0
  640. package/src/charts/spec.ts +122 -0
  641. package/src/charts/timers.ts +24 -0
  642. package/src/code/hx.ts +51 -0
  643. package/src/code/index.ts +174 -0
  644. package/src/code-editor/completion.ts +161 -0
  645. package/src/code-editor/doc.ts +198 -0
  646. package/src/code-editor/hx.ts +26 -0
  647. package/src/code-editor/index.ts +615 -0
  648. package/src/code-editor/node.ts +1926 -0
  649. package/src/code-language/hljs.ts +302 -0
  650. package/src/code-language/index.ts +51 -0
  651. package/src/code-language/languages/glsl.ts +120 -0
  652. package/src/code-language/languages/javascript.ts +419 -0
  653. package/src/code-language/languages/json.ts +72 -0
  654. package/src/code-language/languages/shell.ts +221 -0
  655. package/src/code-language/languages/sql.ts +165 -0
  656. package/src/code-language/lezer.ts +190 -0
  657. package/src/code-language/registry.ts +66 -0
  658. package/src/code-language/runs.ts +128 -0
  659. package/src/code-language/stream.ts +306 -0
  660. package/src/code-language/textmate.ts +134 -0
  661. package/src/code-language/theme.ts +124 -0
  662. package/src/code-language/timers.ts +36 -0
  663. package/src/code-language/types.ts +252 -0
  664. package/src/codeblock/index.ts +146 -0
  665. package/src/color-picker/ColorField.ts +333 -0
  666. package/src/color-picker/ColorPicker.ts +1069 -0
  667. package/src/color-picker/color.ts +399 -0
  668. package/src/color-picker/index.ts +50 -0
  669. package/src/desktop-calendar/eds.ts +484 -0
  670. package/src/desktop-calendar/ical.ts +119 -0
  671. package/src/desktop-calendar/index.ts +287 -0
  672. package/src/embed/client.ts +311 -0
  673. package/src/embed/host.ts +432 -0
  674. package/src/embed/index.ts +33 -0
  675. package/src/embed/timers.ts +32 -0
  676. package/src/flow/draw.ts +418 -0
  677. package/src/flow/index.ts +473 -0
  678. package/src/flow/model.ts +687 -0
  679. package/src/flow/node.ts +3694 -0
  680. package/src/flow/paths.ts +403 -0
  681. package/src/flow/types.ts +634 -0
  682. package/src/formula/hx.ts +51 -0
  683. package/src/formula/index.ts +243 -0
  684. package/src/formula/katex.ts +209 -0
  685. package/src/formula/layout.ts +876 -0
  686. package/src/formula/node.ts +467 -0
  687. package/src/html/controls.ts +244 -0
  688. package/src/html/css/cascade.ts +606 -0
  689. package/src/html/css/parse.ts +500 -0
  690. package/src/html/css/style.ts +1371 -0
  691. package/src/html/css/ua.ts +174 -0
  692. package/src/html/css/values.ts +358 -0
  693. package/src/html/dom.ts +410 -0
  694. package/src/html/hx.ts +55 -0
  695. package/src/html/index.ts +545 -0
  696. package/src/html/layout/block.ts +876 -0
  697. package/src/html/layout/boxes.ts +981 -0
  698. package/src/html/layout/flex.ts +297 -0
  699. package/src/html/layout/floats.ts +125 -0
  700. package/src/html/layout/inline.ts +870 -0
  701. package/src/html/layout/table.ts +380 -0
  702. package/src/html/node.ts +967 -0
  703. package/src/html/paint.ts +605 -0
  704. package/src/html/resources.ts +214 -0
  705. package/src/index.ts +638 -0
  706. package/src/internal/heights.ts +211 -0
  707. package/src/internal/hx.ts +53 -0
  708. package/src/internal/text.ts +44 -0
  709. package/src/internal/timers.ts +44 -0
  710. package/src/internal/widget.ts +92 -0
  711. package/src/markdown/ast.ts +163 -0
  712. package/src/markdown/hx.ts +51 -0
  713. package/src/markdown/index.ts +686 -0
  714. package/src/markdown/parse.ts +1037 -0
  715. package/src/markdown/spans.ts +143 -0
  716. package/src/media-player/backends.ts +155 -0
  717. package/src/media-player/control.ts +70 -0
  718. package/src/media-player/hx.ts +51 -0
  719. package/src/media-player/index.ts +378 -0
  720. package/src/media-player/mpv.ts +146 -0
  721. package/src/media-player/vlc.ts +97 -0
  722. package/src/richtext/index.ts +42 -0
  723. package/src/richtext/links.ts +78 -0
  724. package/src/richtext/menu.ts +49 -0
  725. package/src/richtext/node.ts +406 -0
  726. package/src/richtext/runs.ts +253 -0
  727. package/src/table/hx.ts +51 -0
  728. package/src/table/index.ts +1219 -0
  729. package/src/table/rows.ts +275 -0
  730. package/src/terminal/backends.ts +242 -0
  731. package/src/terminal/hx.ts +51 -0
  732. package/src/terminal/index.ts +574 -0
  733. package/src/terminal/title.ts +172 -0
  734. package/src/terminal/vt/colors.ts +247 -0
  735. package/src/terminal/vt/diff.ts +467 -0
  736. package/src/terminal/vt/fonts.ts +233 -0
  737. package/src/terminal/vt/index.ts +443 -0
  738. package/src/terminal/vt/keys.ts +369 -0
  739. package/src/terminal/vt/mouse.ts +144 -0
  740. package/src/terminal/vt/node.ts +1242 -0
  741. package/src/terminal/vt/pty.ts +334 -0
  742. package/src/terminal/vt/renderer.ts +555 -0
  743. package/src/terminal/vt/timers.ts +31 -0
  744. package/src/terminal/vt/xterm.ts +193 -0
  745. package/src/terminal-output/hx.ts +51 -0
  746. package/src/terminal-output/index.ts +340 -0
  747. package/src/terminal-output/runs.ts +79 -0
  748. package/src/three/canvas.ts +451 -0
  749. package/src/three/events.ts +197 -0
  750. package/src/three/geometries.ts +429 -0
  751. package/src/three/globals.ts +34 -0
  752. package/src/three/hx.ts +22 -0
  753. package/src/three/index.ts +98 -0
  754. package/src/three/jsx-dev-runtime.ts +27 -0
  755. package/src/three/jsx-runtime.ts +38 -0
  756. package/src/three/jsx.ts +275 -0
  757. package/src/three/materials.ts +270 -0
  758. package/src/three/math.ts +585 -0
  759. package/src/three/objects.ts +397 -0
  760. package/src/three/passes.ts +90 -0
  761. package/src/three/postprocess.ts +677 -0
  762. package/src/three/raycast.ts +189 -0
  763. package/src/three/react-reconciler.d.ts +50 -0
  764. package/src/three/reconciler.ts +624 -0
  765. package/src/three/renderer-direct.ts +1055 -0
  766. package/src/three/renderer-indirect.ts +570 -0
  767. package/src/three/store.ts +207 -0
  768. package/src/timeline/hx.ts +31 -0
  769. package/src/timeline/index.ts +603 -0
  770. package/src/tray-host/hx.ts +51 -0
  771. package/src/tray-host/index.ts +331 -0
  772. package/src/tray-host/manager.ts +639 -0
  773. package/src/tray-host/notify.ts +102 -0
  774. package/src/tray-host/protocol.ts +235 -0
  775. package/src/tree/hx.ts +51 -0
  776. package/src/tree/index.ts +1087 -0
  777. package/src/tree/internal.ts +87 -0
  778. package/src/tree/rows.ts +334 -0
  779. package/src/index.d.ts +0 -2
  780. package/src/index.js +0 -9
  781. package/src/sparkline/index.d.ts +0 -29
  782. package/src/sparkline/index.js +0 -50
  783. package/src/sparkline/node.js +0 -72
@@ -0,0 +1,78 @@
1
+ import type { ReactElement, Ref } from 'react';
2
+ import type { WheelEvent } from 'react-x11';
3
+ import type { Style } from 'react-x11/style';
4
+ import type { EmbedStatus, ExitInfo } from '../../embed/index.js';
5
+ import type { TerminalColors } from '../backends.js';
6
+ import { ELEMENT, VtTermNode } from './node.js';
7
+ import type { VtTermProps } from './node.js';
8
+ import type { PtyHost } from './pty.js';
9
+ export { ELEMENT as VT_TERMINAL_ELEMENT, VtTermNode };
10
+ export type { VtTermProps };
11
+ export { PTY_MODULES, PtyUnavailableError, defaultShell, nodePtyHost, ptyLoadError, } from './pty.js';
12
+ export type { PtyHost, PtyOptions, PtySession } from './pty.js';
13
+ /** What the vt backend's own handle can do. `<Terminal>` widens it. */
14
+ export interface VtHandle {
15
+ /** Towards the program. The reserved method, real at last. */
16
+ write(data: string): boolean;
17
+ restart(): void;
18
+ signal(signal?: string): boolean;
19
+ resizeToFit(): void;
20
+ selection(): string | null;
21
+ clearSelection(): void;
22
+ scrollToBottom(): void;
23
+ scrollLines(n: number): void;
24
+ serialize(): string | null;
25
+ readonly pid: number | null;
26
+ readonly status: EmbedStatus;
27
+ readonly cols: number | null;
28
+ readonly rows: number | null;
29
+ }
30
+ export interface VtTerminalProps {
31
+ command?: readonly string[];
32
+ cwd?: string;
33
+ env?: Record<string, string | undefined>;
34
+ colors?: TerminalColors;
35
+ fontFamily?: string;
36
+ fontSize?: number;
37
+ scrollback?: number;
38
+ cursorStyle?: 'block' | 'underline' | 'bar';
39
+ cursorBlink?: boolean;
40
+ bell?: 'none' | 'visual';
41
+ onBell?: () => void;
42
+ allowClipboardWrite?: boolean;
43
+ onSelectionChange?: (text: string) => void;
44
+ /** Where the pty comes from. The `processes` prop's counterpart. */
45
+ pty?: PtyHost;
46
+ enabled?: boolean;
47
+ stopSignal?: string;
48
+ focusable?: boolean;
49
+ onExit?: (info: ExitInfo) => void;
50
+ onTitleChange?: (title: string) => void;
51
+ onError?: (err: Error) => void;
52
+ /** Reported as it changes, so `<Terminal>` can render its `fallback`. */
53
+ onStatus?: (status: EmbedStatus) => void;
54
+ style?: Style | Style[];
55
+ ref?: Ref<VtHandle | null>;
56
+ 'data-testname'?: string;
57
+ }
58
+ /**
59
+ * A terminal drawn by this process.
60
+ *
61
+ * Not exported from the package root: `<Terminal backend="vt">` is the API,
62
+ * and this is what it renders once the dynamic import lands.
63
+ */
64
+ export declare function VtTerminal(props: VtTerminalProps): ReactElement;
65
+ declare module 'react-x11/jsx-runtime' {
66
+ namespace JSX {
67
+ interface IntrinsicElements {
68
+ vtterm: VtTermProps & {
69
+ focusable?: boolean;
70
+ 'aria-label'?: string;
71
+ onWheel?: (ev: WheelEvent) => void;
72
+ 'data-testname'?: string;
73
+ ref?: Ref<VtTermNode | null>;
74
+ };
75
+ }
76
+ }
77
+ }
78
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/terminal/vt/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,312 @@
1
+ // The vt backend: a pty, `@xterm/headless` as the escape-sequence state
2
+ // machine, and `<vtterm>` as the renderer.
3
+ //
4
+ // **This module is the one with the side effect** — `registerElement` at
5
+ // module scope — and it is reached only through the dynamic `import()` in
6
+ // `../index.ts`, taken when `backend="vt"` is actually selected. An app that
7
+ // renders `<Terminal backend="xterm">`, or that imports the barrel and never
8
+ // mounts a terminal, loads neither this module nor `@xterm/headless`; the
9
+ // tree-shaking guard asserts exactly that.
10
+ //
11
+ // What lives here versus in `./node.ts`: this file owns the *process* — the
12
+ // optional dependencies, the emulator, the pty, flow control, restart and
13
+ // exit, the imperative surface — and the node owns pixels and input. That is
14
+ // the same split `<CodeEditor>` has, and it is what lets the whole renderer be
15
+ // driven by a fake pty in CI.
16
+ import React, { useCallback, useEffect, useMemo, useRef, useState, } from 'react';
17
+ import { registerElement, registeredElements } from 'react-x11/host';
18
+ import { ELEMENT, VtTermNode } from './node.js';
19
+ import { PtyUnavailableError, nodePtyHost } from './pty.js';
20
+ import { startTimeout, stopTimeout } from '../../embed/timers.js';
21
+ import { loadXterm } from './xterm.js';
22
+ export { ELEMENT as VT_TERMINAL_ELEMENT, VtTermNode };
23
+ export { PTY_MODULES, PtyUnavailableError, defaultShell, nodePtyHost, ptyLoadError, } from './pty.js';
24
+ if (!registeredElements().includes(ELEMENT)) {
25
+ registerElement(ELEMENT, {
26
+ create: (props, app) => new VtTermNode(props, app),
27
+ // `colors` is the terminal's own vocabulary and not a style name today,
28
+ // but it is close enough to one that an audit flagged it: declared, so a
29
+ // future style property of that name fails loudly here rather than
30
+ // silently in somebody's app.
31
+ semanticNames: ['colors', 'cursorStyle'],
32
+ childrenAllowed: false,
33
+ });
34
+ }
35
+ /** Bytes buffered in the emulator before the pty is told to stop. */
36
+ const HIGH_WATER = 512 * 1024;
37
+ const LOW_WATER = 128 * 1024;
38
+ /** How long the screen stays inverted for a visual bell. */
39
+ const BELL_FLASH_MS = 80;
40
+ /**
41
+ * A terminal drawn by this process.
42
+ *
43
+ * Not exported from the package root: `<Terminal backend="vt">` is the API,
44
+ * and this is what it renders once the dynamic import lands.
45
+ */
46
+ export function VtTerminal(props) {
47
+ const { enabled = true, stopSignal = 'SIGTERM', scrollback = 1000, bell = 'none', } = props;
48
+ const [term, setTerm] = useState(null);
49
+ const [status, setStatus] = useState('idle');
50
+ const [inverted, setInverted] = useState(false);
51
+ const [generation, setGeneration] = useState(0);
52
+ const nodeRef = useRef(null);
53
+ const sessionRef = useRef(null);
54
+ const termRef = useRef(null);
55
+ // The grid the node last measured. Read when the emulator is created —
56
+ // layout usually beats the dynamic imports, and when it does not, 80×24 is
57
+ // corrected by the first `onGridResize` a frame later.
58
+ const gridRef = useRef({ cols: 80, rows: 24 });
59
+ const flashRef = useRef(null);
60
+ // Handlers are read when they fire, so an inline arrow function in the
61
+ // parent does not restart the shell.
62
+ const handlers = useRef(props);
63
+ handlers.current = props;
64
+ const report = useCallback((next) => {
65
+ setStatus(next);
66
+ handlers.current.onStatus?.(next);
67
+ }, []);
68
+ // Everything that decides *which* program runs, as one string: the restart
69
+ // key, for the reason `../index.ts` documents — `command={['bash']}` is a
70
+ // new array on every paint and an effect keyed on it never settles.
71
+ const launchKey = useMemo(() => JSON.stringify([
72
+ props.command ?? null,
73
+ props.cwd ?? null,
74
+ props.env ?? null,
75
+ scrollback,
76
+ ]), [props.command, props.cwd, props.env, scrollback]);
77
+ useEffect(() => {
78
+ if (!enabled) {
79
+ report('idle');
80
+ return undefined;
81
+ }
82
+ let live = true;
83
+ let session = null;
84
+ let emulator = null;
85
+ const fail = (err, next) => {
86
+ if (!live)
87
+ return;
88
+ const wrapped = err instanceof Error ? err : new Error(String(err));
89
+ report(next);
90
+ handlers.current.onError?.(wrapped);
91
+ };
92
+ void (async () => {
93
+ report('starting');
94
+ const mod = await loadXterm();
95
+ if (!live)
96
+ return;
97
+ if (!mod) {
98
+ // An ordinary state of a healthy machine — `npm install --no-optional`
99
+ // — so it is a status and a fallback, never a throw (AGENTS.md). It
100
+ // is still *reported*: `status` and `fallback` say something is
101
+ // missing, and only `onError` can say which thing.
102
+ fail(new Error('@react-x11/components: the terminal core is not installed — ' +
103
+ '`npm i @xterm/headless`, or pass `fallback` to render ' +
104
+ 'something else.'), 'unavailable');
105
+ return;
106
+ }
107
+ const host = handlers.current.pty ?? nodePtyHost();
108
+ if (!(await host.available())) {
109
+ // The message separates "nothing installed" from "installed but it
110
+ // would not load" — a native module built for another Node ABI looks
111
+ // exactly like a missing one from out here, and telling somebody to
112
+ // install what they already installed is the worst answer available.
113
+ if (live)
114
+ fail(new PtyUnavailableError(), 'unavailable');
115
+ return;
116
+ }
117
+ if (!live)
118
+ return;
119
+ const { cols, rows } = gridRef.current;
120
+ emulator = new mod.Terminal({
121
+ cols,
122
+ rows,
123
+ scrollback,
124
+ // The buffer, the parser and the mode flags are all behind this
125
+ // flag in 6.0 — `term.buffer` throws without it. Everything this
126
+ // component reads is *published* API (it is in the typings and in
127
+ // the docs); "proposed" is xterm.js's word for "may change in a
128
+ // major", which is why the slice we use is written out
129
+ // structurally in `./xterm.ts` and pinned in CI.
130
+ allowProposedApi: true,
131
+ cursorStyle: handlers.current.cursorStyle,
132
+ cursorBlink: handlers.current.cursorBlink,
133
+ });
134
+ // The reply channel: DA, DSR, mouse reports the core encodes itself. A
135
+ // terminal that does not pipe this back is a terminal that hangs the
136
+ // first program to ask it a question.
137
+ emulator.onData((data) => sessionRef.current?.write(data));
138
+ emulator.onBinary((data) => sessionRef.current?.write(data));
139
+ emulator.onTitleChange((title) => handlers.current.onTitleChange?.(title));
140
+ emulator.onBell(() => {
141
+ handlers.current.onBell?.();
142
+ if (handlers.current.bell !== 'visual')
143
+ return;
144
+ setInverted(true);
145
+ stopTimeout(flashRef.current);
146
+ flashRef.current = startTimeout(() => setInverted(false), BELL_FLASH_MS);
147
+ });
148
+ try {
149
+ session = await host.openPty(
150
+ // Empty argv means "whatever the default shell is over there", and
151
+ // that is the host's call rather than ours: `nodePtyHost` fills in
152
+ // the local `$SHELL`, an ssh host opens a login shell on the far
153
+ // side. Substituting *this* machine's shell here would be wrong for
154
+ // every host that is not this machine.
155
+ handlers.current.command ?? [], {
156
+ cols,
157
+ rows,
158
+ cwd: handlers.current.cwd,
159
+ env: {
160
+ // The honest advertisement: the core is xterm-compatible and
161
+ // this renderer does 24-bit colour.
162
+ TERM: 'xterm-256color',
163
+ COLORTERM: 'truecolor',
164
+ ...handlers.current.env,
165
+ },
166
+ });
167
+ }
168
+ catch (err) {
169
+ emulator.dispose();
170
+ emulator = null;
171
+ // "This machine cannot run a terminal at all" and "the ssh host
172
+ // refused the connection" are different news, and only the first is
173
+ // what `fallback` is for. Same split the embed path makes between
174
+ // `BackendUnavailableError` and everything else.
175
+ fail(err, err instanceof PtyUnavailableError ? 'unavailable' : 'exited');
176
+ return;
177
+ }
178
+ if (!live) {
179
+ session.kill(stopSignal);
180
+ emulator.dispose();
181
+ return;
182
+ }
183
+ // Flow control. `yes` fills a pipe faster than anything can parse it,
184
+ // and the watermarks are what keep the queue — and the memory behind
185
+ // it — bounded rather than the UI starved.
186
+ let buffered = 0;
187
+ let paused = false;
188
+ session.onData((chunk) => {
189
+ const current = emulator;
190
+ if (!current)
191
+ return;
192
+ buffered += chunk.length;
193
+ if (!paused && buffered > HIGH_WATER && session?.pause) {
194
+ paused = true;
195
+ session.pause();
196
+ }
197
+ current.write(chunk, () => {
198
+ buffered -= chunk.length;
199
+ if (paused && buffered < LOW_WATER && session?.resume) {
200
+ paused = false;
201
+ session.resume();
202
+ }
203
+ });
204
+ });
205
+ session.onExit((info) => {
206
+ if (!live)
207
+ return;
208
+ sessionRef.current = null;
209
+ report('exited');
210
+ handlers.current.onExit?.(info);
211
+ });
212
+ sessionRef.current = session;
213
+ termRef.current = emulator;
214
+ setTerm(emulator);
215
+ report('running');
216
+ })();
217
+ return () => {
218
+ live = false;
219
+ stopTimeout(flashRef.current);
220
+ sessionRef.current = null;
221
+ termRef.current = null;
222
+ setTerm(null);
223
+ session?.kill(stopSignal);
224
+ // Order: the pty first, then the emulator — disposing the parser while
225
+ // a chunk is still on its way in is how a write lands on a dead core.
226
+ emulator?.dispose();
227
+ };
228
+ }, [enabled, launchKey, generation, stopSignal, scrollback, report]);
229
+ const fontStyle = useMemo(() => {
230
+ const font = {};
231
+ if (props.fontFamily !== undefined)
232
+ font.fontFamily = props.fontFamily;
233
+ if (props.fontSize !== undefined)
234
+ font.fontSize = props.fontSize;
235
+ const extra = props.style
236
+ ? Array.isArray(props.style)
237
+ ? props.style
238
+ : [props.style]
239
+ : [];
240
+ return [font, ...extra];
241
+ }, [props.fontFamily, props.fontSize, props.style]);
242
+ const setNode = useCallback((node) => {
243
+ nodeRef.current = node ?? null;
244
+ }, []);
245
+ const onInput = useCallback((data) => {
246
+ sessionRef.current?.write(data);
247
+ }, []);
248
+ const onGridResize = useCallback((cols, rows) => {
249
+ gridRef.current = { cols, rows };
250
+ const emulator = termRef.current;
251
+ if (emulator && (emulator.cols !== cols || emulator.rows !== rows)) {
252
+ // xterm reflows its own wrapped lines; the pty gets the SIGWINCH.
253
+ emulator.resize(cols, rows);
254
+ }
255
+ sessionRef.current?.resize(cols, rows);
256
+ }, []);
257
+ React.useImperativeHandle(props.ref, () => ({
258
+ write(data) {
259
+ const session = sessionRef.current;
260
+ if (!session || !data)
261
+ return false;
262
+ session.write(data);
263
+ return true;
264
+ },
265
+ restart: () => setGeneration((n) => n + 1),
266
+ signal: (signal = 'SIGTERM') => sessionRef.current?.kill(signal) ?? false,
267
+ resizeToFit: () => nodeRef.current?.resizeToFit(),
268
+ selection: () => nodeRef.current?.selectionText() ?? null,
269
+ clearSelection: () => nodeRef.current?.clearSelection(),
270
+ scrollToBottom: () => nodeRef.current?.scrollToBottom(),
271
+ scrollLines: (n) => nodeRef.current?.scrollLines(n),
272
+ serialize: () => nodeRef.current?.serialize() ?? null,
273
+ get pid() {
274
+ return sessionRef.current?.pid ?? null;
275
+ },
276
+ get status() {
277
+ return status;
278
+ },
279
+ get cols() {
280
+ return termRef.current?.cols ?? null;
281
+ },
282
+ get rows() {
283
+ return termRef.current?.rows ?? null;
284
+ },
285
+ }), [status]);
286
+ return React.createElement(ELEMENT, {
287
+ term,
288
+ onInput,
289
+ onGridResize,
290
+ onSelectionChange: props.onSelectionChange,
291
+ colors: props.colors,
292
+ cursorStyle: props.cursorStyle,
293
+ cursorBlink: props.cursorBlink,
294
+ allowClipboardWrite: props.allowClipboardWrite,
295
+ inverted: bell === 'visual' && inverted,
296
+ focusable: props.focusable ?? true,
297
+ 'aria-label': 'Terminal',
298
+ ref: setNode,
299
+ // Wheel has no default-action seam, so it is wired here — the shape
300
+ // `<CodeEditor>` uses for the same gap.
301
+ onWheel: (ev) => {
302
+ if (nodeRef.current?.handleWheel(ev))
303
+ ev.preventDefault();
304
+ },
305
+ // The font goes in through the style, because that is what it is: the
306
+ // element reads `fontFamily`/`fontSize` off the cascade like every other
307
+ // element that draws text, and core throws on either as a flat prop.
308
+ style: fontStyle,
309
+ 'data-testname': props['data-testname'],
310
+ });
311
+ }
312
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/terminal/vt/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,74 @@
1
+ /**
2
+ * The keysyms core does not export yet.
3
+ *
4
+ * Keysyms are stable numbers defined by the protocol, so a local table is a
5
+ * transcription rather than a fork — and the missing ones are the keypad,
6
+ * which core has no reason to name until something needs the whole block.
7
+ * Proposed upstream as a zero-risk addition to `keysyms.js`.
8
+ */
9
+ export declare const XK_ISO_LEFT_TAB = 65056;
10
+ export declare const XK_BEGIN = 65368;
11
+ export declare const XK_KP_SPACE = 65408;
12
+ export declare const XK_KP_TAB = 65417;
13
+ export declare const XK_KP_F1 = 65425;
14
+ export declare const XK_KP_F2 = 65426;
15
+ export declare const XK_KP_F3 = 65427;
16
+ export declare const XK_KP_F4 = 65428;
17
+ export declare const XK_KP_HOME = 65429;
18
+ export declare const XK_KP_LEFT = 65430;
19
+ export declare const XK_KP_UP = 65431;
20
+ export declare const XK_KP_RIGHT = 65432;
21
+ export declare const XK_KP_DOWN = 65433;
22
+ export declare const XK_KP_PAGE_UP = 65434;
23
+ export declare const XK_KP_PAGE_DOWN = 65435;
24
+ export declare const XK_KP_END = 65436;
25
+ export declare const XK_KP_BEGIN = 65437;
26
+ export declare const XK_KP_INSERT = 65438;
27
+ export declare const XK_KP_DELETE = 65439;
28
+ export declare const XK_KP_EQUAL = 65469;
29
+ export declare const XK_KP_MULTIPLY = 65450;
30
+ export declare const XK_KP_ADD = 65451;
31
+ export declare const XK_KP_SEPARATOR = 65452;
32
+ export declare const XK_KP_SUBTRACT = 65453;
33
+ export declare const XK_KP_DECIMAL = 65454;
34
+ export declare const XK_KP_DIVIDE = 65455;
35
+ export declare const XK_KP_0 = 65456;
36
+ export declare const XK_KP_9 = 65465;
37
+ /** What a key event has to carry to be encodable. A subset of react-x11's
38
+ * `KeyboardEvent`, so the node passes one straight through. */
39
+ export interface VtKeyEvent {
40
+ keysym?: number;
41
+ /** What the key produced, layout and level applied — dead keys already
42
+ * resolved by core's compose handling. */
43
+ codepoint?: number;
44
+ shiftKey: boolean;
45
+ ctrlKey: boolean;
46
+ altKey: boolean;
47
+ metaKey: boolean;
48
+ }
49
+ /** The two modes the encoding branches on, straight off `term.modes`. */
50
+ export interface KeyModes {
51
+ applicationCursorKeysMode: boolean;
52
+ applicationKeypadMode: boolean;
53
+ }
54
+ /** xterm's modifier parameter: 1 + shift + 2·alt + 4·ctrl + 8·meta. */
55
+ export declare function modifierParam(ev: VtKeyEvent): number;
56
+ /**
57
+ * The bytes a key sends, or `null` when the terminal has nothing to say about
58
+ * it — a bare modifier, an unmapped key, an application chord. `null` is not
59
+ * "send nothing": it is "this key was not consumed", which is what lets the
60
+ * node leave `preventDefault()` alone and let the key reach whatever is
61
+ * outside.
62
+ */
63
+ export declare function encodeKey(ev: VtKeyEvent, modes: KeyModes): string | null;
64
+ /**
65
+ * Text on its way in from a paste.
66
+ *
67
+ * Bracketed paste is not decoration: without it a shell runs every newline in
68
+ * a pasted block, and a pasted `rm -rf` with a trailing newline is a very bad
69
+ * afternoon. Inside the brackets the payload still has to be sanitised —
70
+ * a `\x1b[201~` in the pasted text would close them early — and newlines
71
+ * normalise to CR because that is what the key sends.
72
+ */
73
+ export declare function encodePaste(text: string, bracketed: boolean): string;
74
+ //# sourceMappingURL=keys.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../../src/terminal/vt/keys.ts"],"names":[],"mappings":"AA0CA;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,QAAS,CAAC;AACtC,eAAO,MAAM,QAAQ,QAAS,CAAC;AAC/B,eAAO,MAAM,WAAW,QAAS,CAAC;AAClC,eAAO,MAAM,SAAS,QAAS,CAAC;AAChC,eAAO,MAAM,QAAQ,QAAS,CAAC;AAC/B,eAAO,MAAM,QAAQ,QAAS,CAAC;AAC/B,eAAO,MAAM,QAAQ,QAAS,CAAC;AAC/B,eAAO,MAAM,QAAQ,QAAS,CAAC;AAC/B,eAAO,MAAM,UAAU,QAAS,CAAC;AACjC,eAAO,MAAM,UAAU,QAAS,CAAC;AACjC,eAAO,MAAM,QAAQ,QAAS,CAAC;AAC/B,eAAO,MAAM,WAAW,QAAS,CAAC;AAClC,eAAO,MAAM,UAAU,QAAS,CAAC;AACjC,eAAO,MAAM,aAAa,QAAS,CAAC;AACpC,eAAO,MAAM,eAAe,QAAS,CAAC;AACtC,eAAO,MAAM,SAAS,QAAS,CAAC;AAChC,eAAO,MAAM,WAAW,QAAS,CAAC;AAClC,eAAO,MAAM,YAAY,QAAS,CAAC;AACnC,eAAO,MAAM,YAAY,QAAS,CAAC;AACnC,eAAO,MAAM,WAAW,QAAS,CAAC;AAClC,eAAO,MAAM,cAAc,QAAS,CAAC;AACrC,eAAO,MAAM,SAAS,QAAS,CAAC;AAChC,eAAO,MAAM,eAAe,QAAS,CAAC;AACtC,eAAO,MAAM,cAAc,QAAS,CAAC;AACrC,eAAO,MAAM,aAAa,QAAS,CAAC;AACpC,eAAO,MAAM,YAAY,QAAS,CAAC;AACnC,eAAO,MAAM,OAAO,QAAS,CAAC;AAC9B,eAAO,MAAM,OAAO,QAAS,CAAC;AAM9B;gEACgE;AAChE,MAAM,WAAW,UAAU;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;+CAC2C;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,yEAAyE;AACzE,MAAM,WAAW,QAAQ;IACvB,yBAAyB,EAAE,OAAO,CAAC;IACnC,qBAAqB,EAAE,OAAO,CAAC;CAChC;AAED,uEAAuE;AACvE,wBAAgB,aAAa,CAAC,EAAE,EAAE,UAAU,GAAG,MAAM,CAQpD;AAqID;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,GAAG,MAAM,GAAG,IAAI,CAgGxE;AAED;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,GAAG,MAAM,CAUpE"}