@bytespell/shella 0.1.18 → 0.2.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 (1009) hide show
  1. package/README.md +278 -0
  2. package/bundled-plugins/agent/README.md +3 -0
  3. package/bundled-plugins/agent/components.json +24 -0
  4. package/bundled-plugins/agent/dist/assets/index-BGeDYr6P.css +1 -0
  5. package/bundled-plugins/agent/dist/assets/index-J14lI3Er.js +49 -0
  6. package/bundled-plugins/agent/dist/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2 +0 -0
  7. package/bundled-plugins/agent/dist/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2 +0 -0
  8. package/bundled-plugins/agent/dist/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2 +0 -0
  9. package/bundled-plugins/agent/dist/assets/inter-greek-wght-normal-CkhJZR-_.woff2 +0 -0
  10. package/bundled-plugins/agent/dist/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2 +0 -0
  11. package/bundled-plugins/agent/dist/assets/inter-latin-wght-normal-Dx4kXJAl.woff2 +0 -0
  12. package/bundled-plugins/agent/dist/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2 +0 -0
  13. package/bundled-plugins/agent/dist/index.html +14 -0
  14. package/bundled-plugins/agent/dist/vite.svg +1 -0
  15. package/bundled-plugins/agent/eslint.config.js +23 -0
  16. package/bundled-plugins/agent/index.html +13 -0
  17. package/bundled-plugins/agent/package-lock.json +11034 -0
  18. package/bundled-plugins/agent/package.json +52 -0
  19. package/bundled-plugins/agent/public/vite.svg +1 -0
  20. package/bundled-plugins/agent/server.js +240 -0
  21. package/bundled-plugins/agent/src/App.tsx +586 -0
  22. package/bundled-plugins/agent/src/assets/react.svg +1 -0
  23. package/bundled-plugins/agent/src/components/ui/alert-dialog.tsx +182 -0
  24. package/bundled-plugins/agent/src/components/ui/badge.tsx +45 -0
  25. package/bundled-plugins/agent/src/components/ui/button.tsx +60 -0
  26. package/bundled-plugins/agent/src/components/ui/card.tsx +94 -0
  27. package/bundled-plugins/agent/src/components/ui/combobox.tsx +294 -0
  28. package/bundled-plugins/agent/src/components/ui/dropdown-menu.tsx +253 -0
  29. package/bundled-plugins/agent/src/components/ui/field.tsx +225 -0
  30. package/bundled-plugins/agent/src/components/ui/input-group.tsx +147 -0
  31. package/bundled-plugins/agent/src/components/ui/input.tsx +19 -0
  32. package/bundled-plugins/agent/src/components/ui/label.tsx +24 -0
  33. package/bundled-plugins/agent/src/components/ui/select.tsx +185 -0
  34. package/bundled-plugins/agent/src/components/ui/separator.tsx +26 -0
  35. package/bundled-plugins/agent/src/components/ui/switch.tsx +31 -0
  36. package/bundled-plugins/agent/src/components/ui/textarea.tsx +18 -0
  37. package/bundled-plugins/agent/src/index.css +131 -0
  38. package/bundled-plugins/agent/src/lib/utils.ts +6 -0
  39. package/bundled-plugins/agent/src/main.tsx +11 -0
  40. package/bundled-plugins/agent/tsconfig.app.json +32 -0
  41. package/bundled-plugins/agent/tsconfig.json +13 -0
  42. package/bundled-plugins/agent/tsconfig.node.json +26 -0
  43. package/bundled-plugins/agent/vite.config.ts +14 -0
  44. package/bundled-plugins/terminal/index.html +24 -0
  45. package/bundled-plugins/terminal/package-lock.json +3316 -0
  46. package/bundled-plugins/terminal/package.json +37 -0
  47. package/bundled-plugins/terminal/server.ts +169 -0
  48. package/bundled-plugins/terminal/src/App.tsx +168 -0
  49. package/bundled-plugins/terminal/src/main.tsx +9 -0
  50. package/bundled-plugins/terminal/tsconfig.json +22 -0
  51. package/bundled-plugins/terminal/vite.config.ts +10 -0
  52. package/dist/bin/shella-daemon.d.ts +3 -0
  53. package/dist/bin/shella-daemon.d.ts.map +1 -0
  54. package/dist/bin/shella-daemon.js +8 -0
  55. package/dist/bin/shella-daemon.js.map +1 -0
  56. package/dist/bin/shella-init.d.ts +3 -0
  57. package/dist/bin/shella-init.d.ts.map +1 -0
  58. package/dist/bin/shella-init.js +234 -0
  59. package/dist/bin/shella-init.js.map +1 -0
  60. package/dist/src/api.d.ts +3 -0
  61. package/dist/src/api.d.ts.map +1 -0
  62. package/dist/src/api.js +242 -0
  63. package/dist/src/api.js.map +1 -0
  64. package/dist/src/bonjour.d.ts +3 -0
  65. package/dist/src/bonjour.d.ts.map +1 -0
  66. package/dist/src/bonjour.js +42 -0
  67. package/dist/src/bonjour.js.map +1 -0
  68. package/dist/src/index.d.ts +2 -0
  69. package/dist/src/index.d.ts.map +1 -0
  70. package/dist/src/index.js +77 -0
  71. package/dist/src/index.js.map +1 -0
  72. package/dist/src/logger.d.ts +21 -0
  73. package/dist/src/logger.d.ts.map +1 -0
  74. package/dist/src/logger.js +104 -0
  75. package/dist/src/logger.js.map +1 -0
  76. package/dist/src/paths.d.ts +18 -0
  77. package/dist/src/paths.d.ts.map +1 -0
  78. package/dist/src/paths.js +58 -0
  79. package/dist/src/paths.js.map +1 -0
  80. package/dist/src/plugin-manager.d.ts +38 -0
  81. package/dist/src/plugin-manager.d.ts.map +1 -0
  82. package/dist/src/plugin-manager.js +480 -0
  83. package/dist/src/plugin-manager.js.map +1 -0
  84. package/dist/src/port-allocator.d.ts +11 -0
  85. package/dist/src/port-allocator.d.ts.map +1 -0
  86. package/dist/src/port-allocator.js +51 -0
  87. package/dist/src/port-allocator.js.map +1 -0
  88. package/dist/src/registry.d.ts +22 -0
  89. package/dist/src/registry.d.ts.map +1 -0
  90. package/dist/src/registry.js +176 -0
  91. package/dist/src/registry.js.map +1 -0
  92. package/dist/src/sse.d.ts +45 -0
  93. package/dist/src/sse.d.ts.map +1 -0
  94. package/dist/src/sse.js +108 -0
  95. package/dist/src/sse.js.map +1 -0
  96. package/dist/src/types.d.ts +63 -0
  97. package/dist/src/types.d.ts.map +1 -0
  98. package/dist/src/types.js +4 -0
  99. package/dist/src/types.js.map +1 -0
  100. package/dist/src/watcher.d.ts +11 -0
  101. package/dist/src/watcher.d.ts.map +1 -0
  102. package/dist/src/watcher.js +111 -0
  103. package/dist/src/watcher.js.map +1 -0
  104. package/package.json +47 -73
  105. package/templates/express/package.json +11 -0
  106. package/templates/express/public/index.html +64 -0
  107. package/templates/express/server.js +37 -0
  108. package/templates/shadcn/README.md +3 -0
  109. package/templates/shadcn/components.json +24 -0
  110. package/templates/shadcn/eslint.config.js +23 -0
  111. package/templates/shadcn/index.html +13 -0
  112. package/templates/shadcn/package.json +43 -0
  113. package/templates/shadcn/public/vite.svg +1 -0
  114. package/templates/shadcn/server.js +59 -0
  115. package/templates/shadcn/src/App.tsx +35 -0
  116. package/templates/shadcn/src/assets/react.svg +1 -0
  117. package/templates/shadcn/src/components/ui/alert-dialog.tsx +182 -0
  118. package/templates/shadcn/src/components/ui/badge.tsx +45 -0
  119. package/templates/shadcn/src/components/ui/button.tsx +60 -0
  120. package/templates/shadcn/src/components/ui/card.tsx +94 -0
  121. package/templates/shadcn/src/components/ui/combobox.tsx +294 -0
  122. package/templates/shadcn/src/components/ui/dropdown-menu.tsx +253 -0
  123. package/templates/shadcn/src/components/ui/field.tsx +225 -0
  124. package/templates/shadcn/src/components/ui/input-group.tsx +147 -0
  125. package/templates/shadcn/src/components/ui/input.tsx +19 -0
  126. package/templates/shadcn/src/components/ui/label.tsx +24 -0
  127. package/templates/shadcn/src/components/ui/select.tsx +185 -0
  128. package/templates/shadcn/src/components/ui/separator.tsx +26 -0
  129. package/templates/shadcn/src/components/ui/textarea.tsx +18 -0
  130. package/templates/shadcn/src/index.css +129 -0
  131. package/templates/shadcn/src/lib/utils.ts +6 -0
  132. package/templates/shadcn/src/main.tsx +11 -0
  133. package/templates/shadcn/tsconfig.app.json +32 -0
  134. package/templates/shadcn/tsconfig.json +13 -0
  135. package/templates/shadcn/tsconfig.node.json +26 -0
  136. package/templates/shadcn/vite.config.ts +14 -0
  137. package/templates/vanilla/package.json +8 -0
  138. package/templates/vanilla/public/index.html +64 -0
  139. package/templates/vanilla/server.js +54 -0
  140. package/dist/bin/cli.js +0 -12203
  141. package/dist/bin/cli.js.map +0 -1
  142. package/dist/index.js +0 -12123
  143. package/dist/index.js.map +0 -1
  144. package/dist/public/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
  145. package/dist/public/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
  146. package/dist/public/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
  147. package/dist/public/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
  148. package/dist/public/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
  149. package/dist/public/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
  150. package/dist/public/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
  151. package/dist/public/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
  152. package/dist/public/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
  153. package/dist/public/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
  154. package/dist/public/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
  155. package/dist/public/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
  156. package/dist/public/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
  157. package/dist/public/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
  158. package/dist/public/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
  159. package/dist/public/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
  160. package/dist/public/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
  161. package/dist/public/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
  162. package/dist/public/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
  163. package/dist/public/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
  164. package/dist/public/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
  165. package/dist/public/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
  166. package/dist/public/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
  167. package/dist/public/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
  168. package/dist/public/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
  169. package/dist/public/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
  170. package/dist/public/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
  171. package/dist/public/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
  172. package/dist/public/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
  173. package/dist/public/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
  174. package/dist/public/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
  175. package/dist/public/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
  176. package/dist/public/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
  177. package/dist/public/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
  178. package/dist/public/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
  179. package/dist/public/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
  180. package/dist/public/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
  181. package/dist/public/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
  182. package/dist/public/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
  183. package/dist/public/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
  184. package/dist/public/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
  185. package/dist/public/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
  186. package/dist/public/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
  187. package/dist/public/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
  188. package/dist/public/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
  189. package/dist/public/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
  190. package/dist/public/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
  191. package/dist/public/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
  192. package/dist/public/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
  193. package/dist/public/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
  194. package/dist/public/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
  195. package/dist/public/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
  196. package/dist/public/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
  197. package/dist/public/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
  198. package/dist/public/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
  199. package/dist/public/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
  200. package/dist/public/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
  201. package/dist/public/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
  202. package/dist/public/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
  203. package/dist/public/assets/_baseUniq-ByOyfTSt.js +0 -1
  204. package/dist/public/assets/abap-BdImnpbu.js +0 -1
  205. package/dist/public/assets/actionscript-3-CfeIJUat.js +0 -1
  206. package/dist/public/assets/ada-bCR0ucgS.js +0 -1
  207. package/dist/public/assets/andromeeda-C-Jbm3Hp.js +0 -1
  208. package/dist/public/assets/angular-html-CU67Zn6k.js +0 -1
  209. package/dist/public/assets/angular-ts-BwZT4LLn.js +0 -1
  210. package/dist/public/assets/apache-Pmp26Uib.js +0 -1
  211. package/dist/public/assets/apex-D8_7TLub.js +0 -1
  212. package/dist/public/assets/apl-dKokRX4l.js +0 -1
  213. package/dist/public/assets/applescript-Co6uUVPk.js +0 -1
  214. package/dist/public/assets/ara-BRHolxvo.js +0 -1
  215. package/dist/public/assets/arc-DskGrXLH.js +0 -1
  216. package/dist/public/assets/architectureDiagram-VXUJARFQ-WbUu03xi.js +0 -36
  217. package/dist/public/assets/asciidoc-Dv7Oe6Be.js +0 -1
  218. package/dist/public/assets/asm-D_Q5rh1f.js +0 -1
  219. package/dist/public/assets/astro-CbQHKStN.js +0 -1
  220. package/dist/public/assets/aurora-x-D-2ljcwZ.js +0 -1
  221. package/dist/public/assets/awk-DMzUqQB5.js +0 -1
  222. package/dist/public/assets/ayu-dark-CmMr59Fi.js +0 -1
  223. package/dist/public/assets/ballerina-BFfxhgS-.js +0 -1
  224. package/dist/public/assets/bat-BkioyH1T.js +0 -1
  225. package/dist/public/assets/beancount-k_qm7-4y.js +0 -1
  226. package/dist/public/assets/berry-uYugtg8r.js +0 -1
  227. package/dist/public/assets/bibtex-CHM0blh-.js +0 -1
  228. package/dist/public/assets/bicep-Bmn6On1c.js +0 -1
  229. package/dist/public/assets/blade-D4QpJJKB.js +0 -1
  230. package/dist/public/assets/blockDiagram-VD42YOAC-4KVAiSxZ.js +0 -122
  231. package/dist/public/assets/bsl-BO_Y6i37.js +0 -1
  232. package/dist/public/assets/c-BIGW1oBm.js +0 -1
  233. package/dist/public/assets/c3-VCDPK7BO.js +0 -1
  234. package/dist/public/assets/c4Diagram-YG6GDRKO-JcXJu5BS.js +0 -10
  235. package/dist/public/assets/cadence-Bv_4Rxtq.js +0 -1
  236. package/dist/public/assets/cairo-KRGpt6FW.js +0 -1
  237. package/dist/public/assets/catppuccin-frappe-DFWUc33u.js +0 -1
  238. package/dist/public/assets/catppuccin-latte-C9dUb6Cb.js +0 -1
  239. package/dist/public/assets/catppuccin-macchiato-DQyhUUbL.js +0 -1
  240. package/dist/public/assets/catppuccin-mocha-D87Tk5Gz.js +0 -1
  241. package/dist/public/assets/channel-BdAgzAMp.js +0 -1
  242. package/dist/public/assets/chunk-4BX2VUAB-CqfDS9Sf.js +0 -1
  243. package/dist/public/assets/chunk-55IACEB6-UUyu6Y64.js +0 -1
  244. package/dist/public/assets/chunk-B4BG7PRW-C0F414xz.js +0 -165
  245. package/dist/public/assets/chunk-DI55MBZ5--p_STlY7.js +0 -220
  246. package/dist/public/assets/chunk-FMBD7UC4-CB48BS8a.js +0 -15
  247. package/dist/public/assets/chunk-QN33PNHL-vwkXbKVH.js +0 -1
  248. package/dist/public/assets/chunk-QZHKN3VN-B33xbk2M.js +0 -1
  249. package/dist/public/assets/chunk-TZMSLE5B-CLiEWPPK.js +0 -1
  250. package/dist/public/assets/clarity-D53aC0YG.js +0 -1
  251. package/dist/public/assets/classDiagram-2ON5EDUG-DFl0tfxs.js +0 -1
  252. package/dist/public/assets/classDiagram-v2-WZHVMYZB-DFl0tfxs.js +0 -1
  253. package/dist/public/assets/clojure-P80f7IUj.js +0 -1
  254. package/dist/public/assets/clone-C0W1RDRM.js +0 -1
  255. package/dist/public/assets/cmake-D1j8_8rp.js +0 -1
  256. package/dist/public/assets/cobol-nwyudZeR.js +0 -1
  257. package/dist/public/assets/code-block-IT6T5CEO-B7sxiU38.js +0 -2
  258. package/dist/public/assets/codeowners-Bp6g37R7.js +0 -1
  259. package/dist/public/assets/codeql-DsOJ9woJ.js +0 -1
  260. package/dist/public/assets/coffee-Ch7k5sss.js +0 -1
  261. package/dist/public/assets/common-lisp-Cg-RD9OK.js +0 -1
  262. package/dist/public/assets/coq-DkFqJrB1.js +0 -1
  263. package/dist/public/assets/cose-bilkent-S5V4N54A-DXzclefE.js +0 -1
  264. package/dist/public/assets/cpp-CofmeUqb.js +0 -1
  265. package/dist/public/assets/crystal-tKQVLTB8.js +0 -1
  266. package/dist/public/assets/csharp-K5feNrxe.js +0 -1
  267. package/dist/public/assets/css-DPfMkruS.js +0 -1
  268. package/dist/public/assets/csv-fuZLfV_i.js +0 -1
  269. package/dist/public/assets/cue-D82EKSYY.js +0 -1
  270. package/dist/public/assets/cypher-COkxafJQ.js +0 -1
  271. package/dist/public/assets/cytoscape.esm-5J0xJHOV.js +0 -321
  272. package/dist/public/assets/d-85-TOEBH.js +0 -1
  273. package/dist/public/assets/dagre-6UL2VRFP-BsdG-n7L.js +0 -4
  274. package/dist/public/assets/dark-plus-C3mMm8J8.js +0 -1
  275. package/dist/public/assets/dart-CF10PKvl.js +0 -1
  276. package/dist/public/assets/dax-CEL-wOlO.js +0 -1
  277. package/dist/public/assets/defaultLocale-C4B-KCzX.js +0 -1
  278. package/dist/public/assets/demo.svg +0 -1
  279. package/dist/public/assets/desktop-BmXAJ9_W.js +0 -1
  280. package/dist/public/assets/diagram-PSM6KHXK-QgD_inp5.js +0 -24
  281. package/dist/public/assets/diagram-QEK2KX5R-wzLRdwrU.js +0 -43
  282. package/dist/public/assets/diagram-S2PKOQOG-CuUvB9bN.js +0 -24
  283. package/dist/public/assets/diff-D97Zzqfu.js +0 -1
  284. package/dist/public/assets/docker-BcOcwvcX.js +0 -1
  285. package/dist/public/assets/dotenv-Da5cRb03.js +0 -1
  286. package/dist/public/assets/dracula-BzJJZx-M.js +0 -1
  287. package/dist/public/assets/dracula-soft-BXkSAIEj.js +0 -1
  288. package/dist/public/assets/dream-maker-BtqSS_iP.js +0 -1
  289. package/dist/public/assets/edge-BkV0erSs.js +0 -1
  290. package/dist/public/assets/elixir-CDX3lj18.js +0 -1
  291. package/dist/public/assets/elm-DbKCFpqz.js +0 -1
  292. package/dist/public/assets/emacs-lisp-C9XAeP06.js +0 -1
  293. package/dist/public/assets/erDiagram-Q2GNP2WA-CGklTYeV.js +0 -60
  294. package/dist/public/assets/erb-BOJIQeun.js +0 -1
  295. package/dist/public/assets/erlang-DsQrWhSR.js +0 -1
  296. package/dist/public/assets/everforest-dark-BgDCqdQA.js +0 -1
  297. package/dist/public/assets/everforest-light-C8M2exoo.js +0 -1
  298. package/dist/public/assets/fennel-BYunw83y.js +0 -1
  299. package/dist/public/assets/fish-BvzEVeQv.js +0 -1
  300. package/dist/public/assets/flowDiagram-NV44I4VS-CxjU7AVg.js +0 -162
  301. package/dist/public/assets/fluent-C4IJs8-o.js +0 -1
  302. package/dist/public/assets/fortran-fixed-form-CkoXwp7k.js +0 -1
  303. package/dist/public/assets/fortran-free-form-BxgE0vQu.js +0 -1
  304. package/dist/public/assets/fsharp-CXgrBDvD.js +0 -1
  305. package/dist/public/assets/ganttDiagram-JELNMOA3-CYpYrSPR.js +0 -267
  306. package/dist/public/assets/gdresource-B7Tvp0Sc.js +0 -1
  307. package/dist/public/assets/gdscript-DTMYz4Jt.js +0 -1
  308. package/dist/public/assets/gdshader-DkwncUOv.js +0 -1
  309. package/dist/public/assets/genie-D0YGMca9.js +0 -1
  310. package/dist/public/assets/gherkin-DyxjwDmM.js +0 -1
  311. package/dist/public/assets/git-commit-F4YmCXRG.js +0 -1
  312. package/dist/public/assets/git-rebase-r7XF79zn.js +0 -1
  313. package/dist/public/assets/gitGraphDiagram-NY62KEGX-DVNwWIcr.js +0 -65
  314. package/dist/public/assets/github-dark-DHJKELXO.js +0 -1
  315. package/dist/public/assets/github-dark-default-Cuk6v7N8.js +0 -1
  316. package/dist/public/assets/github-dark-dimmed-DH5Ifo-i.js +0 -1
  317. package/dist/public/assets/github-dark-high-contrast-E3gJ1_iC.js +0 -1
  318. package/dist/public/assets/github-light-DAi9KRSo.js +0 -1
  319. package/dist/public/assets/github-light-default-D7oLnXFd.js +0 -1
  320. package/dist/public/assets/github-light-high-contrast-BfjtVDDH.js +0 -1
  321. package/dist/public/assets/gleam-BspZqrRM.js +0 -1
  322. package/dist/public/assets/glimmer-js-Rg0-pVw9.js +0 -1
  323. package/dist/public/assets/glimmer-ts-U6CK756n.js +0 -1
  324. package/dist/public/assets/glsl-DplSGwfg.js +0 -1
  325. package/dist/public/assets/gn-n2N0HUVH.js +0 -1
  326. package/dist/public/assets/gnuplot-DdkO51Og.js +0 -1
  327. package/dist/public/assets/go-Dn2_MT6a.js +0 -1
  328. package/dist/public/assets/graph-pflBUROZ.js +0 -1
  329. package/dist/public/assets/graphql-ChdNCCLP.js +0 -1
  330. package/dist/public/assets/groovy-gcz8RCvz.js +0 -1
  331. package/dist/public/assets/gruvbox-dark-hard-CFHQjOhq.js +0 -1
  332. package/dist/public/assets/gruvbox-dark-medium-GsRaNv29.js +0 -1
  333. package/dist/public/assets/gruvbox-dark-soft-CVdnzihN.js +0 -1
  334. package/dist/public/assets/gruvbox-light-hard-CH1njM8p.js +0 -1
  335. package/dist/public/assets/gruvbox-light-medium-DRw_LuNl.js +0 -1
  336. package/dist/public/assets/gruvbox-light-soft-hJgmCMqR.js +0 -1
  337. package/dist/public/assets/hack-CaT9iCJl.js +0 -1
  338. package/dist/public/assets/haml-B8DHNrY2.js +0 -1
  339. package/dist/public/assets/handlebars-BL8al0AC.js +0 -1
  340. package/dist/public/assets/haskell-Df6bDoY_.js +0 -1
  341. package/dist/public/assets/haxe-CzTSHFRz.js +0 -1
  342. package/dist/public/assets/hcl-BWvSN4gD.js +0 -1
  343. package/dist/public/assets/hjson-D5-asLiD.js +0 -1
  344. package/dist/public/assets/hlsl-D3lLCCz7.js +0 -1
  345. package/dist/public/assets/houston-DnULxvSX.js +0 -1
  346. package/dist/public/assets/html-GMplVEZG.js +0 -1
  347. package/dist/public/assets/html-derivative-BFtXZ54Q.js +0 -1
  348. package/dist/public/assets/http-jrhK8wxY.js +0 -1
  349. package/dist/public/assets/hurl-irOxFIW8.js +0 -1
  350. package/dist/public/assets/hxml-Bvhsp5Yf.js +0 -1
  351. package/dist/public/assets/hy-DFXneXwc.js +0 -1
  352. package/dist/public/assets/imba-DGztddWO.js +0 -1
  353. package/dist/public/assets/index-C2YNSdOx.js +0 -1781
  354. package/dist/public/assets/index-C7JP9qmQ.css +0 -1
  355. package/dist/public/assets/index-DkE6H0eh.js +0 -23
  356. package/dist/public/assets/infoDiagram-WHAUD3N6-CrSA2woO.js +0 -2
  357. package/dist/public/assets/ini-BEwlwnbL.js +0 -1
  358. package/dist/public/assets/init-Gi6I4Gst.js +0 -1
  359. package/dist/public/assets/inter-cyrillic-400-normal-HOLc17fK.woff +0 -0
  360. package/dist/public/assets/inter-cyrillic-400-normal-obahsSVq.woff2 +0 -0
  361. package/dist/public/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2 +0 -0
  362. package/dist/public/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff +0 -0
  363. package/dist/public/assets/inter-greek-400-normal-B4URO6DV.woff2 +0 -0
  364. package/dist/public/assets/inter-greek-400-normal-q2sYcFCs.woff +0 -0
  365. package/dist/public/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2 +0 -0
  366. package/dist/public/assets/inter-greek-ext-400-normal-KugGGMne.woff +0 -0
  367. package/dist/public/assets/inter-latin-400-normal-C38fXH4l.woff2 +0 -0
  368. package/dist/public/assets/inter-latin-400-normal-CyCys3Eg.woff +0 -0
  369. package/dist/public/assets/inter-latin-ext-400-normal-77YHD8bZ.woff +0 -0
  370. package/dist/public/assets/inter-latin-ext-400-normal-C1nco2VV.woff2 +0 -0
  371. package/dist/public/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff +0 -0
  372. package/dist/public/assets/inter-vietnamese-400-normal-DMkecbls.woff2 +0 -0
  373. package/dist/public/assets/java-CylS5w8V.js +0 -1
  374. package/dist/public/assets/javascript-wDzz0qaB.js +0 -1
  375. package/dist/public/assets/jinja-4LBKfQ-Z.js +0 -1
  376. package/dist/public/assets/jison-wvAkD_A8.js +0 -1
  377. package/dist/public/assets/journeyDiagram-XKPGCS4Q-CZ4u0wMW.js +0 -139
  378. package/dist/public/assets/json-Cp-IABpG.js +0 -1
  379. package/dist/public/assets/json5-C9tS-k6U.js +0 -1
  380. package/dist/public/assets/jsonc-Des-eS-w.js +0 -1
  381. package/dist/public/assets/jsonl-DcaNXYhu.js +0 -1
  382. package/dist/public/assets/jsonnet-DFQXde-d.js +0 -1
  383. package/dist/public/assets/jssm-C2t-YnRu.js +0 -1
  384. package/dist/public/assets/jsx-g9-lgVsj.js +0 -1
  385. package/dist/public/assets/julia-CxzCAyBv.js +0 -1
  386. package/dist/public/assets/kanagawa-dragon-CkXjmgJE.js +0 -1
  387. package/dist/public/assets/kanagawa-lotus-CfQXZHmo.js +0 -1
  388. package/dist/public/assets/kanagawa-wave-DWedfzmr.js +0 -1
  389. package/dist/public/assets/kanban-definition-3W4ZIXB7-B_CeXxO7.js +0 -89
  390. package/dist/public/assets/katex-DvXFAOB1.css +0 -1
  391. package/dist/public/assets/kdl-DV7GczEv.js +0 -1
  392. package/dist/public/assets/kotlin-BdnUsdx6.js +0 -1
  393. package/dist/public/assets/kusto-DZf3V79B.js +0 -1
  394. package/dist/public/assets/laserwave-DUszq2jm.js +0 -1
  395. package/dist/public/assets/latex-B4uzh10-.js +0 -1
  396. package/dist/public/assets/layout-D5ppmRxC.js +0 -1
  397. package/dist/public/assets/lean-BZvkOJ9d.js +0 -1
  398. package/dist/public/assets/less-B1dDrJ26.js +0 -1
  399. package/dist/public/assets/light-plus-B7mTdjB0.js +0 -1
  400. package/dist/public/assets/linear-CMueD_Vx.js +0 -1
  401. package/dist/public/assets/liquid-DYVedYrR.js +0 -1
  402. package/dist/public/assets/llvm-BtvRca6l.js +0 -1
  403. package/dist/public/assets/log-2UxHyX5q.js +0 -1
  404. package/dist/public/assets/logo-BtOb2qkB.js +0 -1
  405. package/dist/public/assets/lua-BbnMAYS6.js +0 -1
  406. package/dist/public/assets/luau-C-HG3fhB.js +0 -1
  407. package/dist/public/assets/make-CHLpvVh8.js +0 -1
  408. package/dist/public/assets/markdown-Cvjx9yec.js +0 -1
  409. package/dist/public/assets/marko-DZsq8hO1.js +0 -1
  410. package/dist/public/assets/material-theme-D5KoaKCx.js +0 -1
  411. package/dist/public/assets/material-theme-darker-BfHTSMKl.js +0 -1
  412. package/dist/public/assets/material-theme-lighter-B0m2ddpp.js +0 -1
  413. package/dist/public/assets/material-theme-ocean-CyktbL80.js +0 -1
  414. package/dist/public/assets/material-theme-palenight-Csfq5Kiy.js +0 -1
  415. package/dist/public/assets/matlab-D7o27uSR.js +0 -1
  416. package/dist/public/assets/mdc-DUICxH0z.js +0 -1
  417. package/dist/public/assets/mdx-Cmh6b_Ma.js +0 -1
  418. package/dist/public/assets/mermaid-mWjccvbQ.js +0 -1
  419. package/dist/public/assets/mermaid.core-TRKy42Tp.js +0 -191
  420. package/dist/public/assets/min-DXLf4jfm.js +0 -1
  421. package/dist/public/assets/min-dark-CafNBF8u.js +0 -1
  422. package/dist/public/assets/min-light-CTRr51gU.js +0 -1
  423. package/dist/public/assets/mindmap-definition-VGOIOE7T-Bz9UxRPS.js +0 -68
  424. package/dist/public/assets/mipsasm-CKIfxQSi.js +0 -1
  425. package/dist/public/assets/mojo-B93PlW-d.js +0 -1
  426. package/dist/public/assets/monokai-D4h5O-jR.js +0 -1
  427. package/dist/public/assets/moonbit-Ba13S78F.js +0 -1
  428. package/dist/public/assets/move-Bu9oaDYs.js +0 -1
  429. package/dist/public/assets/narrat-DRg8JJMk.js +0 -1
  430. package/dist/public/assets/nextflow-BrzmwbiE.js +0 -1
  431. package/dist/public/assets/nginx-DknmC5AR.js +0 -1
  432. package/dist/public/assets/night-owl-C39BiMTA.js +0 -1
  433. package/dist/public/assets/nim-CVrawwO9.js +0 -1
  434. package/dist/public/assets/nix-CwoSXNpI.js +0 -1
  435. package/dist/public/assets/nord-Ddv68eIx.js +0 -1
  436. package/dist/public/assets/nushell-C-sUppwS.js +0 -1
  437. package/dist/public/assets/objective-c-DXmwc3jG.js +0 -1
  438. package/dist/public/assets/objective-cpp-CLxacb5B.js +0 -1
  439. package/dist/public/assets/ocaml-C0hk2d4L.js +0 -1
  440. package/dist/public/assets/one-dark-pro-DVMEJ2y_.js +0 -1
  441. package/dist/public/assets/one-light-PoHY5YXO.js +0 -1
  442. package/dist/public/assets/openscad-C4EeE6gA.js +0 -1
  443. package/dist/public/assets/ordinal-Cboi1Yqb.js +0 -1
  444. package/dist/public/assets/pascal-D93ZcfNL.js +0 -1
  445. package/dist/public/assets/perl-C0TMdlhV.js +0 -1
  446. package/dist/public/assets/php-CDn_0X-4.js +0 -1
  447. package/dist/public/assets/pieDiagram-ADFJNKIX-B__3BI2u.js +0 -30
  448. package/dist/public/assets/pierre-dark-BXuwtOqb.js +0 -1
  449. package/dist/public/assets/pierre-light-dckrK0oj.js +0 -1
  450. package/dist/public/assets/pkl-u5AG7uiY.js +0 -1
  451. package/dist/public/assets/plastic-3e1v2bzS.js +0 -1
  452. package/dist/public/assets/plsql-ChMvpjG-.js +0 -1
  453. package/dist/public/assets/po-BTJTHyun.js +0 -1
  454. package/dist/public/assets/poimandres-CS3Unz2-.js +0 -1
  455. package/dist/public/assets/polar-C0HS_06l.js +0 -1
  456. package/dist/public/assets/postcss-CXtECtnM.js +0 -1
  457. package/dist/public/assets/powerquery-CEu0bR-o.js +0 -1
  458. package/dist/public/assets/powershell-Dpen1YoG.js +0 -1
  459. package/dist/public/assets/prisma-Dd19v3D-.js +0 -1
  460. package/dist/public/assets/prolog-CbFg5uaA.js +0 -1
  461. package/dist/public/assets/proto-C7zT0LnQ.js +0 -1
  462. package/dist/public/assets/pug-CGlum2m_.js +0 -1
  463. package/dist/public/assets/puppet-BMWR74SV.js +0 -1
  464. package/dist/public/assets/purescript-CklMAg4u.js +0 -1
  465. package/dist/public/assets/python-B6aJPvgy.js +0 -1
  466. package/dist/public/assets/qml-3beO22l8.js +0 -1
  467. package/dist/public/assets/qmldir-C8lEn-DE.js +0 -1
  468. package/dist/public/assets/qss-IeuSbFQv.js +0 -1
  469. package/dist/public/assets/quadrantDiagram-AYHSOK5B-KinE0zs-.js +0 -7
  470. package/dist/public/assets/r-Dspwwk_N.js +0 -1
  471. package/dist/public/assets/racket-BqYA7rlc.js +0 -1
  472. package/dist/public/assets/raku-DXvB9xmW.js +0 -1
  473. package/dist/public/assets/razor-C1TweQQi.js +0 -1
  474. package/dist/public/assets/red-bN70gL4F.js +0 -1
  475. package/dist/public/assets/reg-C-SQnVFl.js +0 -1
  476. package/dist/public/assets/regexp-CDVJQ6XC.js +0 -1
  477. package/dist/public/assets/rel-C3B-1QV4.js +0 -1
  478. package/dist/public/assets/requirementDiagram-UZGBJVZJ-BsmhVLvc.js +0 -64
  479. package/dist/public/assets/riscv-BM1_JUlF.js +0 -1
  480. package/dist/public/assets/rose-pine-dawn-DHQR4-dF.js +0 -1
  481. package/dist/public/assets/rose-pine-moon-D4_iv3hh.js +0 -1
  482. package/dist/public/assets/rose-pine-qdsjHGoJ.js +0 -1
  483. package/dist/public/assets/rosmsg-BJDFO7_C.js +0 -1
  484. package/dist/public/assets/rst-B0xPkSld.js +0 -1
  485. package/dist/public/assets/ruby-BvKwtOVI.js +0 -1
  486. package/dist/public/assets/rust-B1yitclQ.js +0 -1
  487. package/dist/public/assets/sankeyDiagram-TZEHDZUN-BsWL3jC9.js +0 -10
  488. package/dist/public/assets/sas-cz2c8ADy.js +0 -1
  489. package/dist/public/assets/sass-Cj5Yp3dK.js +0 -1
  490. package/dist/public/assets/scala-C151Ov-r.js +0 -1
  491. package/dist/public/assets/scheme-C98Dy4si.js +0 -1
  492. package/dist/public/assets/scss-OYdSNvt2.js +0 -1
  493. package/dist/public/assets/sdbl-DVxCFoDh.js +0 -1
  494. package/dist/public/assets/sequenceDiagram-WL72ISMW-D7F2tlFl.js +0 -145
  495. package/dist/public/assets/shaderlab-Dg9Lc6iA.js +0 -1
  496. package/dist/public/assets/shellscript-Yzrsuije.js +0 -1
  497. package/dist/public/assets/shellsession-BADoaaVG.js +0 -1
  498. package/dist/public/assets/slack-dark-BthQWCQV.js +0 -1
  499. package/dist/public/assets/slack-ochin-DqwNpetd.js +0 -1
  500. package/dist/public/assets/smalltalk-BERRCDM3.js +0 -1
  501. package/dist/public/assets/snazzy-light-Bw305WKR.js +0 -1
  502. package/dist/public/assets/solarized-dark-DXbdFlpD.js +0 -1
  503. package/dist/public/assets/solarized-light-L9t79GZl.js +0 -1
  504. package/dist/public/assets/solidity-rGO070M0.js +0 -1
  505. package/dist/public/assets/soy-Brmx7dQM.js +0 -1
  506. package/dist/public/assets/sparql-rVzFXLq3.js +0 -1
  507. package/dist/public/assets/splunk-BtCnVYZw.js +0 -1
  508. package/dist/public/assets/sql-BLtJtn59.js +0 -1
  509. package/dist/public/assets/ssh-config-_ykCGR6B.js +0 -1
  510. package/dist/public/assets/stata-BH5u7GGu.js +0 -1
  511. package/dist/public/assets/stateDiagram-FKZM4ZOC-ChtT7kWx.js +0 -1
  512. package/dist/public/assets/stateDiagram-v2-4FDKWEC3-owa6FG7W.js +0 -1
  513. package/dist/public/assets/stylus-BEDo0Tqx.js +0 -1
  514. package/dist/public/assets/svelte-zxCyuUbr.js +0 -1
  515. package/dist/public/assets/swift-Dg5xB15N.js +0 -1
  516. package/dist/public/assets/synthwave-84-CbfX1IO0.js +0 -1
  517. package/dist/public/assets/system-verilog-CnnmHF94.js +0 -1
  518. package/dist/public/assets/systemd-4A_iFExJ.js +0 -1
  519. package/dist/public/assets/talonscript-CkByrt1z.js +0 -1
  520. package/dist/public/assets/tasl-QIJgUcNo.js +0 -1
  521. package/dist/public/assets/tcl-dwOrl1Do.js +0 -1
  522. package/dist/public/assets/templ-W15q3VgB.js +0 -1
  523. package/dist/public/assets/terraform-BETggiCN.js +0 -1
  524. package/dist/public/assets/tex-CvyZ59Mk.js +0 -1
  525. package/dist/public/assets/timeline-definition-IT6M3QCI-B0yUYz0D.js +0 -61
  526. package/dist/public/assets/tokyo-night-hegEt444.js +0 -1
  527. package/dist/public/assets/toml-vGWfd6FD.js +0 -1
  528. package/dist/public/assets/treemap-KMMF4GRG-8kxwYcwm.js +0 -128
  529. package/dist/public/assets/ts-tags-zn1MmPIZ.js +0 -1
  530. package/dist/public/assets/tsv-B_m7g4N7.js +0 -1
  531. package/dist/public/assets/tsx-COt5Ahok.js +0 -1
  532. package/dist/public/assets/turtle-BsS91CYL.js +0 -1
  533. package/dist/public/assets/twig-CO9l9SDP.js +0 -1
  534. package/dist/public/assets/typescript-BPQ3VLAy.js +0 -1
  535. package/dist/public/assets/typespec-BGHnOYBU.js +0 -1
  536. package/dist/public/assets/typst-DHCkPAjA.js +0 -1
  537. package/dist/public/assets/v-BcVCzyr7.js +0 -1
  538. package/dist/public/assets/vala-CsfeWuGM.js +0 -1
  539. package/dist/public/assets/vb-D17OF-Vu.js +0 -1
  540. package/dist/public/assets/verilog-BQ8w6xss.js +0 -1
  541. package/dist/public/assets/vesper-DU1UobuO.js +0 -1
  542. package/dist/public/assets/vhdl-CeAyd5Ju.js +0 -1
  543. package/dist/public/assets/viml-CJc9bBzg.js +0 -1
  544. package/dist/public/assets/vitesse-black-Bkuqu6BP.js +0 -1
  545. package/dist/public/assets/vitesse-dark-D0r3Knsf.js +0 -1
  546. package/dist/public/assets/vitesse-light-CVO1_9PV.js +0 -1
  547. package/dist/public/assets/vue-DN_0RTcg.js +0 -1
  548. package/dist/public/assets/vue-html-AaS7Mt5G.js +0 -1
  549. package/dist/public/assets/vue-vine-CQOfvN7w.js +0 -1
  550. package/dist/public/assets/vyper-CDx5xZoG.js +0 -1
  551. package/dist/public/assets/wasm-CG6Dc4jp.js +0 -1
  552. package/dist/public/assets/wasm-MzD3tlZU.js +0 -1
  553. package/dist/public/assets/wenyan-BV7otONQ.js +0 -1
  554. package/dist/public/assets/wgsl-Dx-B1_4e.js +0 -1
  555. package/dist/public/assets/wikitext-BhOHFoWU.js +0 -1
  556. package/dist/public/assets/wit-5i3qLPDT.js +0 -1
  557. package/dist/public/assets/wolfram-lXgVvXCa.js +0 -1
  558. package/dist/public/assets/xml-sdJ4AIDG.js +0 -1
  559. package/dist/public/assets/xsl-CtQFsRM5.js +0 -1
  560. package/dist/public/assets/xychartDiagram-PRI3JC2R-Bm8prpCy.js +0 -7
  561. package/dist/public/assets/yaml-Buea-lGh.js +0 -1
  562. package/dist/public/assets/zenscript-DVFEvuxE.js +0 -1
  563. package/dist/public/assets/zig-VOosw3JB.js +0 -1
  564. package/dist/public/favicon-16.ico +0 -0
  565. package/dist/public/favicon-32.ico +0 -0
  566. package/dist/public/favicon-48.ico +0 -0
  567. package/dist/public/favicon.svg +0 -4
  568. package/dist/public/index.html +0 -33
  569. package/dist/public/logo-1024.png +0 -0
  570. package/dist/public/logo-128.png +0 -0
  571. package/dist/public/logo-16.png +0 -0
  572. package/dist/public/logo-256.png +0 -0
  573. package/dist/public/logo-32.png +0 -0
  574. package/dist/public/logo-48.png +0 -0
  575. package/dist/public/logo-512.png +0 -0
  576. package/dist/public/logo-64.png +0 -0
  577. package/public/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
  578. package/public/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
  579. package/public/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
  580. package/public/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
  581. package/public/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
  582. package/public/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
  583. package/public/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
  584. package/public/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
  585. package/public/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
  586. package/public/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
  587. package/public/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
  588. package/public/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
  589. package/public/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
  590. package/public/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
  591. package/public/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
  592. package/public/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
  593. package/public/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
  594. package/public/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
  595. package/public/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
  596. package/public/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
  597. package/public/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
  598. package/public/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
  599. package/public/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
  600. package/public/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
  601. package/public/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
  602. package/public/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
  603. package/public/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
  604. package/public/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
  605. package/public/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
  606. package/public/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
  607. package/public/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
  608. package/public/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
  609. package/public/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
  610. package/public/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
  611. package/public/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
  612. package/public/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
  613. package/public/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
  614. package/public/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
  615. package/public/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
  616. package/public/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
  617. package/public/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
  618. package/public/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
  619. package/public/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
  620. package/public/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
  621. package/public/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
  622. package/public/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
  623. package/public/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
  624. package/public/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
  625. package/public/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
  626. package/public/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
  627. package/public/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
  628. package/public/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
  629. package/public/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
  630. package/public/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
  631. package/public/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
  632. package/public/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
  633. package/public/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
  634. package/public/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
  635. package/public/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
  636. package/public/assets/_baseUniq-ByOyfTSt.js +0 -1
  637. package/public/assets/abap-BdImnpbu.js +0 -1
  638. package/public/assets/actionscript-3-CfeIJUat.js +0 -1
  639. package/public/assets/ada-bCR0ucgS.js +0 -1
  640. package/public/assets/andromeeda-C-Jbm3Hp.js +0 -1
  641. package/public/assets/angular-html-CU67Zn6k.js +0 -1
  642. package/public/assets/angular-ts-BwZT4LLn.js +0 -1
  643. package/public/assets/apache-Pmp26Uib.js +0 -1
  644. package/public/assets/apex-D8_7TLub.js +0 -1
  645. package/public/assets/apl-dKokRX4l.js +0 -1
  646. package/public/assets/applescript-Co6uUVPk.js +0 -1
  647. package/public/assets/ara-BRHolxvo.js +0 -1
  648. package/public/assets/arc-DskGrXLH.js +0 -1
  649. package/public/assets/architectureDiagram-VXUJARFQ-WbUu03xi.js +0 -36
  650. package/public/assets/asciidoc-Dv7Oe6Be.js +0 -1
  651. package/public/assets/asm-D_Q5rh1f.js +0 -1
  652. package/public/assets/astro-CbQHKStN.js +0 -1
  653. package/public/assets/aurora-x-D-2ljcwZ.js +0 -1
  654. package/public/assets/awk-DMzUqQB5.js +0 -1
  655. package/public/assets/ayu-dark-CmMr59Fi.js +0 -1
  656. package/public/assets/ballerina-BFfxhgS-.js +0 -1
  657. package/public/assets/bat-BkioyH1T.js +0 -1
  658. package/public/assets/beancount-k_qm7-4y.js +0 -1
  659. package/public/assets/berry-uYugtg8r.js +0 -1
  660. package/public/assets/bibtex-CHM0blh-.js +0 -1
  661. package/public/assets/bicep-Bmn6On1c.js +0 -1
  662. package/public/assets/blade-D4QpJJKB.js +0 -1
  663. package/public/assets/blockDiagram-VD42YOAC-4KVAiSxZ.js +0 -122
  664. package/public/assets/bsl-BO_Y6i37.js +0 -1
  665. package/public/assets/c-BIGW1oBm.js +0 -1
  666. package/public/assets/c3-VCDPK7BO.js +0 -1
  667. package/public/assets/c4Diagram-YG6GDRKO-JcXJu5BS.js +0 -10
  668. package/public/assets/cadence-Bv_4Rxtq.js +0 -1
  669. package/public/assets/cairo-KRGpt6FW.js +0 -1
  670. package/public/assets/catppuccin-frappe-DFWUc33u.js +0 -1
  671. package/public/assets/catppuccin-latte-C9dUb6Cb.js +0 -1
  672. package/public/assets/catppuccin-macchiato-DQyhUUbL.js +0 -1
  673. package/public/assets/catppuccin-mocha-D87Tk5Gz.js +0 -1
  674. package/public/assets/channel-BdAgzAMp.js +0 -1
  675. package/public/assets/chunk-4BX2VUAB-CqfDS9Sf.js +0 -1
  676. package/public/assets/chunk-55IACEB6-UUyu6Y64.js +0 -1
  677. package/public/assets/chunk-B4BG7PRW-C0F414xz.js +0 -165
  678. package/public/assets/chunk-DI55MBZ5--p_STlY7.js +0 -220
  679. package/public/assets/chunk-FMBD7UC4-CB48BS8a.js +0 -15
  680. package/public/assets/chunk-QN33PNHL-vwkXbKVH.js +0 -1
  681. package/public/assets/chunk-QZHKN3VN-B33xbk2M.js +0 -1
  682. package/public/assets/chunk-TZMSLE5B-CLiEWPPK.js +0 -1
  683. package/public/assets/clarity-D53aC0YG.js +0 -1
  684. package/public/assets/classDiagram-2ON5EDUG-DFl0tfxs.js +0 -1
  685. package/public/assets/classDiagram-v2-WZHVMYZB-DFl0tfxs.js +0 -1
  686. package/public/assets/clojure-P80f7IUj.js +0 -1
  687. package/public/assets/clone-C0W1RDRM.js +0 -1
  688. package/public/assets/cmake-D1j8_8rp.js +0 -1
  689. package/public/assets/cobol-nwyudZeR.js +0 -1
  690. package/public/assets/code-block-IT6T5CEO-B7sxiU38.js +0 -2
  691. package/public/assets/codeowners-Bp6g37R7.js +0 -1
  692. package/public/assets/codeql-DsOJ9woJ.js +0 -1
  693. package/public/assets/coffee-Ch7k5sss.js +0 -1
  694. package/public/assets/common-lisp-Cg-RD9OK.js +0 -1
  695. package/public/assets/coq-DkFqJrB1.js +0 -1
  696. package/public/assets/cose-bilkent-S5V4N54A-DXzclefE.js +0 -1
  697. package/public/assets/cpp-CofmeUqb.js +0 -1
  698. package/public/assets/crystal-tKQVLTB8.js +0 -1
  699. package/public/assets/csharp-K5feNrxe.js +0 -1
  700. package/public/assets/css-DPfMkruS.js +0 -1
  701. package/public/assets/csv-fuZLfV_i.js +0 -1
  702. package/public/assets/cue-D82EKSYY.js +0 -1
  703. package/public/assets/cypher-COkxafJQ.js +0 -1
  704. package/public/assets/cytoscape.esm-5J0xJHOV.js +0 -321
  705. package/public/assets/d-85-TOEBH.js +0 -1
  706. package/public/assets/dagre-6UL2VRFP-BsdG-n7L.js +0 -4
  707. package/public/assets/dark-plus-C3mMm8J8.js +0 -1
  708. package/public/assets/dart-CF10PKvl.js +0 -1
  709. package/public/assets/dax-CEL-wOlO.js +0 -1
  710. package/public/assets/defaultLocale-C4B-KCzX.js +0 -1
  711. package/public/assets/demo.svg +0 -1
  712. package/public/assets/desktop-BmXAJ9_W.js +0 -1
  713. package/public/assets/diagram-PSM6KHXK-QgD_inp5.js +0 -24
  714. package/public/assets/diagram-QEK2KX5R-wzLRdwrU.js +0 -43
  715. package/public/assets/diagram-S2PKOQOG-CuUvB9bN.js +0 -24
  716. package/public/assets/diff-D97Zzqfu.js +0 -1
  717. package/public/assets/docker-BcOcwvcX.js +0 -1
  718. package/public/assets/dotenv-Da5cRb03.js +0 -1
  719. package/public/assets/dracula-BzJJZx-M.js +0 -1
  720. package/public/assets/dracula-soft-BXkSAIEj.js +0 -1
  721. package/public/assets/dream-maker-BtqSS_iP.js +0 -1
  722. package/public/assets/edge-BkV0erSs.js +0 -1
  723. package/public/assets/elixir-CDX3lj18.js +0 -1
  724. package/public/assets/elm-DbKCFpqz.js +0 -1
  725. package/public/assets/emacs-lisp-C9XAeP06.js +0 -1
  726. package/public/assets/erDiagram-Q2GNP2WA-CGklTYeV.js +0 -60
  727. package/public/assets/erb-BOJIQeun.js +0 -1
  728. package/public/assets/erlang-DsQrWhSR.js +0 -1
  729. package/public/assets/everforest-dark-BgDCqdQA.js +0 -1
  730. package/public/assets/everforest-light-C8M2exoo.js +0 -1
  731. package/public/assets/fennel-BYunw83y.js +0 -1
  732. package/public/assets/fish-BvzEVeQv.js +0 -1
  733. package/public/assets/flowDiagram-NV44I4VS-CxjU7AVg.js +0 -162
  734. package/public/assets/fluent-C4IJs8-o.js +0 -1
  735. package/public/assets/fortran-fixed-form-CkoXwp7k.js +0 -1
  736. package/public/assets/fortran-free-form-BxgE0vQu.js +0 -1
  737. package/public/assets/fsharp-CXgrBDvD.js +0 -1
  738. package/public/assets/ganttDiagram-JELNMOA3-CYpYrSPR.js +0 -267
  739. package/public/assets/gdresource-B7Tvp0Sc.js +0 -1
  740. package/public/assets/gdscript-DTMYz4Jt.js +0 -1
  741. package/public/assets/gdshader-DkwncUOv.js +0 -1
  742. package/public/assets/genie-D0YGMca9.js +0 -1
  743. package/public/assets/gherkin-DyxjwDmM.js +0 -1
  744. package/public/assets/git-commit-F4YmCXRG.js +0 -1
  745. package/public/assets/git-rebase-r7XF79zn.js +0 -1
  746. package/public/assets/gitGraphDiagram-NY62KEGX-DVNwWIcr.js +0 -65
  747. package/public/assets/github-dark-DHJKELXO.js +0 -1
  748. package/public/assets/github-dark-default-Cuk6v7N8.js +0 -1
  749. package/public/assets/github-dark-dimmed-DH5Ifo-i.js +0 -1
  750. package/public/assets/github-dark-high-contrast-E3gJ1_iC.js +0 -1
  751. package/public/assets/github-light-DAi9KRSo.js +0 -1
  752. package/public/assets/github-light-default-D7oLnXFd.js +0 -1
  753. package/public/assets/github-light-high-contrast-BfjtVDDH.js +0 -1
  754. package/public/assets/gleam-BspZqrRM.js +0 -1
  755. package/public/assets/glimmer-js-Rg0-pVw9.js +0 -1
  756. package/public/assets/glimmer-ts-U6CK756n.js +0 -1
  757. package/public/assets/glsl-DplSGwfg.js +0 -1
  758. package/public/assets/gn-n2N0HUVH.js +0 -1
  759. package/public/assets/gnuplot-DdkO51Og.js +0 -1
  760. package/public/assets/go-Dn2_MT6a.js +0 -1
  761. package/public/assets/graph-pflBUROZ.js +0 -1
  762. package/public/assets/graphql-ChdNCCLP.js +0 -1
  763. package/public/assets/groovy-gcz8RCvz.js +0 -1
  764. package/public/assets/gruvbox-dark-hard-CFHQjOhq.js +0 -1
  765. package/public/assets/gruvbox-dark-medium-GsRaNv29.js +0 -1
  766. package/public/assets/gruvbox-dark-soft-CVdnzihN.js +0 -1
  767. package/public/assets/gruvbox-light-hard-CH1njM8p.js +0 -1
  768. package/public/assets/gruvbox-light-medium-DRw_LuNl.js +0 -1
  769. package/public/assets/gruvbox-light-soft-hJgmCMqR.js +0 -1
  770. package/public/assets/hack-CaT9iCJl.js +0 -1
  771. package/public/assets/haml-B8DHNrY2.js +0 -1
  772. package/public/assets/handlebars-BL8al0AC.js +0 -1
  773. package/public/assets/haskell-Df6bDoY_.js +0 -1
  774. package/public/assets/haxe-CzTSHFRz.js +0 -1
  775. package/public/assets/hcl-BWvSN4gD.js +0 -1
  776. package/public/assets/hjson-D5-asLiD.js +0 -1
  777. package/public/assets/hlsl-D3lLCCz7.js +0 -1
  778. package/public/assets/houston-DnULxvSX.js +0 -1
  779. package/public/assets/html-GMplVEZG.js +0 -1
  780. package/public/assets/html-derivative-BFtXZ54Q.js +0 -1
  781. package/public/assets/http-jrhK8wxY.js +0 -1
  782. package/public/assets/hurl-irOxFIW8.js +0 -1
  783. package/public/assets/hxml-Bvhsp5Yf.js +0 -1
  784. package/public/assets/hy-DFXneXwc.js +0 -1
  785. package/public/assets/imba-DGztddWO.js +0 -1
  786. package/public/assets/index-C2YNSdOx.js +0 -1781
  787. package/public/assets/index-C7JP9qmQ.css +0 -1
  788. package/public/assets/index-DkE6H0eh.js +0 -23
  789. package/public/assets/infoDiagram-WHAUD3N6-CrSA2woO.js +0 -2
  790. package/public/assets/ini-BEwlwnbL.js +0 -1
  791. package/public/assets/init-Gi6I4Gst.js +0 -1
  792. package/public/assets/inter-cyrillic-400-normal-HOLc17fK.woff +0 -0
  793. package/public/assets/inter-cyrillic-400-normal-obahsSVq.woff2 +0 -0
  794. package/public/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2 +0 -0
  795. package/public/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff +0 -0
  796. package/public/assets/inter-greek-400-normal-B4URO6DV.woff2 +0 -0
  797. package/public/assets/inter-greek-400-normal-q2sYcFCs.woff +0 -0
  798. package/public/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2 +0 -0
  799. package/public/assets/inter-greek-ext-400-normal-KugGGMne.woff +0 -0
  800. package/public/assets/inter-latin-400-normal-C38fXH4l.woff2 +0 -0
  801. package/public/assets/inter-latin-400-normal-CyCys3Eg.woff +0 -0
  802. package/public/assets/inter-latin-ext-400-normal-77YHD8bZ.woff +0 -0
  803. package/public/assets/inter-latin-ext-400-normal-C1nco2VV.woff2 +0 -0
  804. package/public/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff +0 -0
  805. package/public/assets/inter-vietnamese-400-normal-DMkecbls.woff2 +0 -0
  806. package/public/assets/java-CylS5w8V.js +0 -1
  807. package/public/assets/javascript-wDzz0qaB.js +0 -1
  808. package/public/assets/jinja-4LBKfQ-Z.js +0 -1
  809. package/public/assets/jison-wvAkD_A8.js +0 -1
  810. package/public/assets/journeyDiagram-XKPGCS4Q-CZ4u0wMW.js +0 -139
  811. package/public/assets/json-Cp-IABpG.js +0 -1
  812. package/public/assets/json5-C9tS-k6U.js +0 -1
  813. package/public/assets/jsonc-Des-eS-w.js +0 -1
  814. package/public/assets/jsonl-DcaNXYhu.js +0 -1
  815. package/public/assets/jsonnet-DFQXde-d.js +0 -1
  816. package/public/assets/jssm-C2t-YnRu.js +0 -1
  817. package/public/assets/jsx-g9-lgVsj.js +0 -1
  818. package/public/assets/julia-CxzCAyBv.js +0 -1
  819. package/public/assets/kanagawa-dragon-CkXjmgJE.js +0 -1
  820. package/public/assets/kanagawa-lotus-CfQXZHmo.js +0 -1
  821. package/public/assets/kanagawa-wave-DWedfzmr.js +0 -1
  822. package/public/assets/kanban-definition-3W4ZIXB7-B_CeXxO7.js +0 -89
  823. package/public/assets/katex-DvXFAOB1.css +0 -1
  824. package/public/assets/kdl-DV7GczEv.js +0 -1
  825. package/public/assets/kotlin-BdnUsdx6.js +0 -1
  826. package/public/assets/kusto-DZf3V79B.js +0 -1
  827. package/public/assets/laserwave-DUszq2jm.js +0 -1
  828. package/public/assets/latex-B4uzh10-.js +0 -1
  829. package/public/assets/layout-D5ppmRxC.js +0 -1
  830. package/public/assets/lean-BZvkOJ9d.js +0 -1
  831. package/public/assets/less-B1dDrJ26.js +0 -1
  832. package/public/assets/light-plus-B7mTdjB0.js +0 -1
  833. package/public/assets/linear-CMueD_Vx.js +0 -1
  834. package/public/assets/liquid-DYVedYrR.js +0 -1
  835. package/public/assets/llvm-BtvRca6l.js +0 -1
  836. package/public/assets/log-2UxHyX5q.js +0 -1
  837. package/public/assets/logo-BtOb2qkB.js +0 -1
  838. package/public/assets/lua-BbnMAYS6.js +0 -1
  839. package/public/assets/luau-C-HG3fhB.js +0 -1
  840. package/public/assets/make-CHLpvVh8.js +0 -1
  841. package/public/assets/markdown-Cvjx9yec.js +0 -1
  842. package/public/assets/marko-DZsq8hO1.js +0 -1
  843. package/public/assets/material-theme-D5KoaKCx.js +0 -1
  844. package/public/assets/material-theme-darker-BfHTSMKl.js +0 -1
  845. package/public/assets/material-theme-lighter-B0m2ddpp.js +0 -1
  846. package/public/assets/material-theme-ocean-CyktbL80.js +0 -1
  847. package/public/assets/material-theme-palenight-Csfq5Kiy.js +0 -1
  848. package/public/assets/matlab-D7o27uSR.js +0 -1
  849. package/public/assets/mdc-DUICxH0z.js +0 -1
  850. package/public/assets/mdx-Cmh6b_Ma.js +0 -1
  851. package/public/assets/mermaid-mWjccvbQ.js +0 -1
  852. package/public/assets/mermaid.core-TRKy42Tp.js +0 -191
  853. package/public/assets/min-DXLf4jfm.js +0 -1
  854. package/public/assets/min-dark-CafNBF8u.js +0 -1
  855. package/public/assets/min-light-CTRr51gU.js +0 -1
  856. package/public/assets/mindmap-definition-VGOIOE7T-Bz9UxRPS.js +0 -68
  857. package/public/assets/mipsasm-CKIfxQSi.js +0 -1
  858. package/public/assets/mojo-B93PlW-d.js +0 -1
  859. package/public/assets/monokai-D4h5O-jR.js +0 -1
  860. package/public/assets/moonbit-Ba13S78F.js +0 -1
  861. package/public/assets/move-Bu9oaDYs.js +0 -1
  862. package/public/assets/narrat-DRg8JJMk.js +0 -1
  863. package/public/assets/nextflow-BrzmwbiE.js +0 -1
  864. package/public/assets/nginx-DknmC5AR.js +0 -1
  865. package/public/assets/night-owl-C39BiMTA.js +0 -1
  866. package/public/assets/nim-CVrawwO9.js +0 -1
  867. package/public/assets/nix-CwoSXNpI.js +0 -1
  868. package/public/assets/nord-Ddv68eIx.js +0 -1
  869. package/public/assets/nushell-C-sUppwS.js +0 -1
  870. package/public/assets/objective-c-DXmwc3jG.js +0 -1
  871. package/public/assets/objective-cpp-CLxacb5B.js +0 -1
  872. package/public/assets/ocaml-C0hk2d4L.js +0 -1
  873. package/public/assets/one-dark-pro-DVMEJ2y_.js +0 -1
  874. package/public/assets/one-light-PoHY5YXO.js +0 -1
  875. package/public/assets/openscad-C4EeE6gA.js +0 -1
  876. package/public/assets/ordinal-Cboi1Yqb.js +0 -1
  877. package/public/assets/pascal-D93ZcfNL.js +0 -1
  878. package/public/assets/perl-C0TMdlhV.js +0 -1
  879. package/public/assets/php-CDn_0X-4.js +0 -1
  880. package/public/assets/pieDiagram-ADFJNKIX-B__3BI2u.js +0 -30
  881. package/public/assets/pierre-dark-BXuwtOqb.js +0 -1
  882. package/public/assets/pierre-light-dckrK0oj.js +0 -1
  883. package/public/assets/pkl-u5AG7uiY.js +0 -1
  884. package/public/assets/plastic-3e1v2bzS.js +0 -1
  885. package/public/assets/plsql-ChMvpjG-.js +0 -1
  886. package/public/assets/po-BTJTHyun.js +0 -1
  887. package/public/assets/poimandres-CS3Unz2-.js +0 -1
  888. package/public/assets/polar-C0HS_06l.js +0 -1
  889. package/public/assets/postcss-CXtECtnM.js +0 -1
  890. package/public/assets/powerquery-CEu0bR-o.js +0 -1
  891. package/public/assets/powershell-Dpen1YoG.js +0 -1
  892. package/public/assets/prisma-Dd19v3D-.js +0 -1
  893. package/public/assets/prolog-CbFg5uaA.js +0 -1
  894. package/public/assets/proto-C7zT0LnQ.js +0 -1
  895. package/public/assets/pug-CGlum2m_.js +0 -1
  896. package/public/assets/puppet-BMWR74SV.js +0 -1
  897. package/public/assets/purescript-CklMAg4u.js +0 -1
  898. package/public/assets/python-B6aJPvgy.js +0 -1
  899. package/public/assets/qml-3beO22l8.js +0 -1
  900. package/public/assets/qmldir-C8lEn-DE.js +0 -1
  901. package/public/assets/qss-IeuSbFQv.js +0 -1
  902. package/public/assets/quadrantDiagram-AYHSOK5B-KinE0zs-.js +0 -7
  903. package/public/assets/r-Dspwwk_N.js +0 -1
  904. package/public/assets/racket-BqYA7rlc.js +0 -1
  905. package/public/assets/raku-DXvB9xmW.js +0 -1
  906. package/public/assets/razor-C1TweQQi.js +0 -1
  907. package/public/assets/red-bN70gL4F.js +0 -1
  908. package/public/assets/reg-C-SQnVFl.js +0 -1
  909. package/public/assets/regexp-CDVJQ6XC.js +0 -1
  910. package/public/assets/rel-C3B-1QV4.js +0 -1
  911. package/public/assets/requirementDiagram-UZGBJVZJ-BsmhVLvc.js +0 -64
  912. package/public/assets/riscv-BM1_JUlF.js +0 -1
  913. package/public/assets/rose-pine-dawn-DHQR4-dF.js +0 -1
  914. package/public/assets/rose-pine-moon-D4_iv3hh.js +0 -1
  915. package/public/assets/rose-pine-qdsjHGoJ.js +0 -1
  916. package/public/assets/rosmsg-BJDFO7_C.js +0 -1
  917. package/public/assets/rst-B0xPkSld.js +0 -1
  918. package/public/assets/ruby-BvKwtOVI.js +0 -1
  919. package/public/assets/rust-B1yitclQ.js +0 -1
  920. package/public/assets/sankeyDiagram-TZEHDZUN-BsWL3jC9.js +0 -10
  921. package/public/assets/sas-cz2c8ADy.js +0 -1
  922. package/public/assets/sass-Cj5Yp3dK.js +0 -1
  923. package/public/assets/scala-C151Ov-r.js +0 -1
  924. package/public/assets/scheme-C98Dy4si.js +0 -1
  925. package/public/assets/scss-OYdSNvt2.js +0 -1
  926. package/public/assets/sdbl-DVxCFoDh.js +0 -1
  927. package/public/assets/sequenceDiagram-WL72ISMW-D7F2tlFl.js +0 -145
  928. package/public/assets/shaderlab-Dg9Lc6iA.js +0 -1
  929. package/public/assets/shellscript-Yzrsuije.js +0 -1
  930. package/public/assets/shellsession-BADoaaVG.js +0 -1
  931. package/public/assets/slack-dark-BthQWCQV.js +0 -1
  932. package/public/assets/slack-ochin-DqwNpetd.js +0 -1
  933. package/public/assets/smalltalk-BERRCDM3.js +0 -1
  934. package/public/assets/snazzy-light-Bw305WKR.js +0 -1
  935. package/public/assets/solarized-dark-DXbdFlpD.js +0 -1
  936. package/public/assets/solarized-light-L9t79GZl.js +0 -1
  937. package/public/assets/solidity-rGO070M0.js +0 -1
  938. package/public/assets/soy-Brmx7dQM.js +0 -1
  939. package/public/assets/sparql-rVzFXLq3.js +0 -1
  940. package/public/assets/splunk-BtCnVYZw.js +0 -1
  941. package/public/assets/sql-BLtJtn59.js +0 -1
  942. package/public/assets/ssh-config-_ykCGR6B.js +0 -1
  943. package/public/assets/stata-BH5u7GGu.js +0 -1
  944. package/public/assets/stateDiagram-FKZM4ZOC-ChtT7kWx.js +0 -1
  945. package/public/assets/stateDiagram-v2-4FDKWEC3-owa6FG7W.js +0 -1
  946. package/public/assets/stylus-BEDo0Tqx.js +0 -1
  947. package/public/assets/svelte-zxCyuUbr.js +0 -1
  948. package/public/assets/swift-Dg5xB15N.js +0 -1
  949. package/public/assets/synthwave-84-CbfX1IO0.js +0 -1
  950. package/public/assets/system-verilog-CnnmHF94.js +0 -1
  951. package/public/assets/systemd-4A_iFExJ.js +0 -1
  952. package/public/assets/talonscript-CkByrt1z.js +0 -1
  953. package/public/assets/tasl-QIJgUcNo.js +0 -1
  954. package/public/assets/tcl-dwOrl1Do.js +0 -1
  955. package/public/assets/templ-W15q3VgB.js +0 -1
  956. package/public/assets/terraform-BETggiCN.js +0 -1
  957. package/public/assets/tex-CvyZ59Mk.js +0 -1
  958. package/public/assets/timeline-definition-IT6M3QCI-B0yUYz0D.js +0 -61
  959. package/public/assets/tokyo-night-hegEt444.js +0 -1
  960. package/public/assets/toml-vGWfd6FD.js +0 -1
  961. package/public/assets/treemap-KMMF4GRG-8kxwYcwm.js +0 -128
  962. package/public/assets/ts-tags-zn1MmPIZ.js +0 -1
  963. package/public/assets/tsv-B_m7g4N7.js +0 -1
  964. package/public/assets/tsx-COt5Ahok.js +0 -1
  965. package/public/assets/turtle-BsS91CYL.js +0 -1
  966. package/public/assets/twig-CO9l9SDP.js +0 -1
  967. package/public/assets/typescript-BPQ3VLAy.js +0 -1
  968. package/public/assets/typespec-BGHnOYBU.js +0 -1
  969. package/public/assets/typst-DHCkPAjA.js +0 -1
  970. package/public/assets/v-BcVCzyr7.js +0 -1
  971. package/public/assets/vala-CsfeWuGM.js +0 -1
  972. package/public/assets/vb-D17OF-Vu.js +0 -1
  973. package/public/assets/verilog-BQ8w6xss.js +0 -1
  974. package/public/assets/vesper-DU1UobuO.js +0 -1
  975. package/public/assets/vhdl-CeAyd5Ju.js +0 -1
  976. package/public/assets/viml-CJc9bBzg.js +0 -1
  977. package/public/assets/vitesse-black-Bkuqu6BP.js +0 -1
  978. package/public/assets/vitesse-dark-D0r3Knsf.js +0 -1
  979. package/public/assets/vitesse-light-CVO1_9PV.js +0 -1
  980. package/public/assets/vue-DN_0RTcg.js +0 -1
  981. package/public/assets/vue-html-AaS7Mt5G.js +0 -1
  982. package/public/assets/vue-vine-CQOfvN7w.js +0 -1
  983. package/public/assets/vyper-CDx5xZoG.js +0 -1
  984. package/public/assets/wasm-CG6Dc4jp.js +0 -1
  985. package/public/assets/wasm-MzD3tlZU.js +0 -1
  986. package/public/assets/wenyan-BV7otONQ.js +0 -1
  987. package/public/assets/wgsl-Dx-B1_4e.js +0 -1
  988. package/public/assets/wikitext-BhOHFoWU.js +0 -1
  989. package/public/assets/wit-5i3qLPDT.js +0 -1
  990. package/public/assets/wolfram-lXgVvXCa.js +0 -1
  991. package/public/assets/xml-sdJ4AIDG.js +0 -1
  992. package/public/assets/xsl-CtQFsRM5.js +0 -1
  993. package/public/assets/xychartDiagram-PRI3JC2R-Bm8prpCy.js +0 -7
  994. package/public/assets/yaml-Buea-lGh.js +0 -1
  995. package/public/assets/zenscript-DVFEvuxE.js +0 -1
  996. package/public/assets/zig-VOosw3JB.js +0 -1
  997. package/public/favicon-16.ico +0 -0
  998. package/public/favicon-32.ico +0 -0
  999. package/public/favicon-48.ico +0 -0
  1000. package/public/favicon.svg +0 -4
  1001. package/public/index.html +0 -33
  1002. package/public/logo-1024.png +0 -0
  1003. package/public/logo-128.png +0 -0
  1004. package/public/logo-16.png +0 -0
  1005. package/public/logo-256.png +0 -0
  1006. package/public/logo-32.png +0 -0
  1007. package/public/logo-48.png +0 -0
  1008. package/public/logo-512.png +0 -0
  1009. package/public/logo-64.png +0 -0
@@ -0,0 +1,58 @@
1
+ import * as path from 'node:path';
2
+ import { fileURLToPath } from 'node:url';
3
+ import { existsSync } from 'node:fs';
4
+ const HOME = process.env.HOME ?? '';
5
+ const __dirname = path.dirname(fileURLToPath(import.meta.url));
6
+ /**
7
+ * XDG Base Directory paths for Shella
8
+ *
9
+ * Following the XDG Base Directory Specification:
10
+ * - XDG_DATA_HOME: User data files (default: ~/.local/share)
11
+ * - XDG_STATE_HOME: User state data (default: ~/.local/state)
12
+ *
13
+ * Plugins directory can be overridden with SHELLA_PLUGINS_DIR env var.
14
+ */
15
+ // XDG defaults
16
+ const XDG_DATA_HOME = process.env.XDG_DATA_HOME ?? path.join(HOME, '.local', 'share');
17
+ const XDG_STATE_HOME = process.env.XDG_STATE_HOME ?? path.join(HOME, '.local', 'state');
18
+ // Shella directories
19
+ const SHELLA_DATA_DIR = path.join(XDG_DATA_HOME, 'shella');
20
+ const SHELLA_STATE_DIR = path.join(XDG_STATE_HOME, 'shella');
21
+ /**
22
+ * Directory where plugins are stored
23
+ * Default: ~/.local/share/shella/plugins
24
+ * Override: SHELLA_PLUGINS_DIR environment variable
25
+ */
26
+ export const PLUGINS_DIR = process.env.SHELLA_PLUGINS_DIR ?? path.join(SHELLA_DATA_DIR, 'plugins');
27
+ /**
28
+ * Directory where state files are stored
29
+ * Default: ~/.local/state/shella
30
+ */
31
+ export const STATE_DIR = SHELLA_STATE_DIR;
32
+ /**
33
+ * Path to the registry file
34
+ * Default: ~/.local/state/shella/registry.json
35
+ */
36
+ export const REGISTRY_FILE = path.join(STATE_DIR, 'registry.json');
37
+ /**
38
+ * Directory containing bundled first-party plugins
39
+ * These are copied to PLUGINS_DIR on first run
40
+ *
41
+ * In development: __dirname = apps/daemon/src/
42
+ * In production: __dirname = apps/daemon/dist/src/
43
+ *
44
+ * We go up to find package.json and then look for bundled-plugins there.
45
+ */
46
+ function findPackageRoot() {
47
+ let dir = __dirname;
48
+ for (let i = 0; i < 5; i++) {
49
+ const pkgPath = path.join(dir, 'package.json');
50
+ if (existsSync(pkgPath)) {
51
+ return dir;
52
+ }
53
+ dir = path.dirname(dir);
54
+ }
55
+ return __dirname;
56
+ }
57
+ export const BUNDLED_PLUGINS_DIR = path.join(findPackageRoot(), 'bundled-plugins');
58
+ //# sourceMappingURL=paths.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paths.js","sourceRoot":"","sources":["../../src/paths.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;AACpC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAE/D;;;;;;;;GAQG;AAEH,eAAe;AACf,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AACtF,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AAExF,qBAAqB;AACrB,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;AAC3D,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;AAE7D;;;;GAIG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;AAEnG;;;GAGG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,gBAAgB,CAAC;AAE1C;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;AAEnE;;;;;;;;GAQG;AACH,SAAS,eAAe;IACtB,IAAI,GAAG,GAAG,SAAS,CAAC;IACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QAC/C,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACxB,OAAO,GAAG,CAAC;QACb,CAAC;QACD,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,iBAAiB,CAAC,CAAC"}
@@ -0,0 +1,38 @@
1
+ import type { PluginInfo, PluginInstance } from './types.js';
2
+ export declare class PluginManager {
3
+ private plugins;
4
+ /**
5
+ * Broadcast current plugins state to all SSE clients
6
+ */
7
+ private broadcastPlugins;
8
+ discoverPlugins(): Promise<string[]>;
9
+ /**
10
+ * Compare two semver versions. Returns:
11
+ * - positive if a > b
12
+ * - negative if a < b
13
+ * - 0 if equal
14
+ */
15
+ private compareVersions;
16
+ private deleteDirectory;
17
+ installBundledPlugins(): Promise<void>;
18
+ private copyDirectory;
19
+ private readPackageJson;
20
+ private needsInstall;
21
+ private runNpmInstall;
22
+ private updateInstanceStatus;
23
+ private ensurePluginExists;
24
+ startPlugin(name: string, devMode?: boolean): Promise<PluginInstance | null>;
25
+ private handlePluginExit;
26
+ stopInstance(name: string, instanceId: string): Promise<boolean>;
27
+ stopAllInstances(name: string): Promise<void>;
28
+ getPlugin(name: string): PluginInfo | undefined;
29
+ getAllPlugins(): PluginInfo[];
30
+ startAllPlugins(): Promise<void>;
31
+ stopAllPlugins(): Promise<void>;
32
+ killAllPluginsSync(): void;
33
+ handleNewPlugin(name: string): Promise<void>;
34
+ refreshPluginMetadata(name: string): Promise<void>;
35
+ handleRemovedPlugin(name: string): Promise<void>;
36
+ }
37
+ export declare const pluginManager: PluginManager;
38
+ //# sourceMappingURL=plugin-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-manager.d.ts","sourceRoot":"","sources":["../../src/plugin-manager.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAEV,UAAU,EACV,cAAc,EAGf,MAAM,YAAY,CAAC;AAEpB,qBAAa,aAAa;IACxB,OAAO,CAAC,OAAO,CAAyC;IAExD;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAKlB,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IA6B1C;;;;;OAKG;IACH,OAAO,CAAC,eAAe;YAcT,eAAe;IAIvB,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;YA4D9B,aAAa;YAgBb,eAAe;YASf,YAAY;IAkB1B,OAAO,CAAC,aAAa;IA4BrB,OAAO,CAAC,oBAAoB;YAuBd,kBAAkB;IAyC1B,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,UAAO,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAmH/E,OAAO,CAAC,gBAAgB;IAmClB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAsDhE,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUnD,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS;IAI/C,aAAa,IAAI,UAAU,EAAE;IAIvB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAShC,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAUrC,kBAAkB,IAAI,IAAI;IAepB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM5C,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiClD,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAQvD;AAED,eAAO,MAAM,aAAa,eAAsB,CAAC"}
@@ -0,0 +1,480 @@
1
+ import { spawn, execSync } from 'node:child_process';
2
+ import * as fs from 'node:fs/promises';
3
+ import * as fsSync from 'node:fs';
4
+ import * as path from 'node:path';
5
+ import { logger, createPluginLogger, logPluginOutput } from './logger.js';
6
+ import { portAllocator } from './port-allocator.js';
7
+ import { registry } from './registry.js';
8
+ import { sseManager } from './sse.js';
9
+ import { BUNDLED_PLUGINS_DIR, PLUGINS_DIR } from './paths.js';
10
+ export class PluginManager {
11
+ plugins = new Map();
12
+ /**
13
+ * Broadcast current plugins state to all SSE clients
14
+ */
15
+ broadcastPlugins() {
16
+ const plugins = this.getAllPlugins();
17
+ sseManager.broadcastPlugins(plugins);
18
+ }
19
+ async discoverPlugins() {
20
+ const pluginsDir = registry.getPluginsDir();
21
+ const discovered = [];
22
+ try {
23
+ const entries = await fs.readdir(pluginsDir, { withFileTypes: true });
24
+ for (const entry of entries) {
25
+ if (!entry.isDirectory() || entry.name.startsWith('.')) {
26
+ continue;
27
+ }
28
+ const pluginPath = path.join(pluginsDir, entry.name);
29
+ const packageJsonPath = path.join(pluginPath, 'package.json');
30
+ try {
31
+ await fs.access(packageJsonPath);
32
+ discovered.push(entry.name);
33
+ }
34
+ catch {
35
+ logger.debug({ plugin: entry.name }, 'Skipping directory without package.json');
36
+ }
37
+ }
38
+ }
39
+ catch (err) {
40
+ logger.error({ err }, 'Failed to read plugins directory');
41
+ }
42
+ return discovered;
43
+ }
44
+ /**
45
+ * Compare two semver versions. Returns:
46
+ * - positive if a > b
47
+ * - negative if a < b
48
+ * - 0 if equal
49
+ */
50
+ compareVersions(a, b) {
51
+ const aParts = a.split('.').map(Number);
52
+ const bParts = b.split('.').map(Number);
53
+ for (let i = 0; i < 3; i++) {
54
+ const aVal = aParts[i] ?? 0;
55
+ const bVal = bParts[i] ?? 0;
56
+ if (aVal !== bVal) {
57
+ return aVal - bVal;
58
+ }
59
+ }
60
+ return 0;
61
+ }
62
+ async deleteDirectory(dirPath) {
63
+ await fs.rm(dirPath, { recursive: true, force: true });
64
+ }
65
+ async installBundledPlugins() {
66
+ // Skip bundled plugin installation in test mode
67
+ if (process.env.SHELLA_SKIP_BUNDLED_PLUGINS === '1') {
68
+ return;
69
+ }
70
+ logger.info({ path: BUNDLED_PLUGINS_DIR }, 'Checking for bundled plugins');
71
+ // Check if bundled plugins directory exists
72
+ if (!fsSync.existsSync(BUNDLED_PLUGINS_DIR)) {
73
+ logger.info({ path: BUNDLED_PLUGINS_DIR }, 'No bundled plugins directory found');
74
+ return;
75
+ }
76
+ // Ensure user plugins directory exists
77
+ await fs.mkdir(PLUGINS_DIR, { recursive: true });
78
+ // Get list of bundled plugins
79
+ const entries = await fs.readdir(BUNDLED_PLUGINS_DIR, { withFileTypes: true });
80
+ const bundledPlugins = entries
81
+ .filter((e) => e.isDirectory() && !e.name.startsWith('.'))
82
+ .map((e) => e.name);
83
+ logger.info({ count: bundledPlugins.length }, 'Checking bundled plugins');
84
+ for (const pluginName of bundledPlugins) {
85
+ const destPath = path.join(PLUGINS_DIR, pluginName);
86
+ const srcPath = path.join(BUNDLED_PLUGINS_DIR, pluginName);
87
+ // Check if plugin already exists in user directory
88
+ if (fsSync.existsSync(destPath)) {
89
+ // Compare versions to see if we need to update
90
+ const bundledPkg = await this.readPackageJson(srcPath);
91
+ const installedPkg = await this.readPackageJson(destPath);
92
+ const bundledVersion = bundledPkg?.version ?? '0.0.0';
93
+ const installedVersion = installedPkg?.version ?? '0.0.0';
94
+ if (this.compareVersions(bundledVersion, installedVersion) > 0) {
95
+ logger.info({ plugin: pluginName, from: installedVersion, to: bundledVersion }, 'Updating bundled plugin to newer version');
96
+ await this.deleteDirectory(destPath);
97
+ }
98
+ else {
99
+ logger.debug({ plugin: pluginName, bundled: bundledVersion, installed: installedVersion }, 'Bundled plugin already up to date');
100
+ continue;
101
+ }
102
+ }
103
+ // Copy bundled plugin to user directory
104
+ logger.info({ plugin: pluginName }, 'Installing bundled plugin');
105
+ await this.copyDirectory(srcPath, destPath);
106
+ logger.info({ plugin: pluginName, path: destPath }, 'Bundled plugin installed');
107
+ }
108
+ }
109
+ async copyDirectory(src, dest) {
110
+ await fs.mkdir(dest, { recursive: true });
111
+ const entries = await fs.readdir(src, { withFileTypes: true });
112
+ for (const entry of entries) {
113
+ const srcPath = path.join(src, entry.name);
114
+ const destPath = path.join(dest, entry.name);
115
+ if (entry.isDirectory()) {
116
+ await this.copyDirectory(srcPath, destPath);
117
+ }
118
+ else {
119
+ await fs.copyFile(srcPath, destPath);
120
+ }
121
+ }
122
+ }
123
+ async readPackageJson(pluginPath) {
124
+ try {
125
+ const content = await fs.readFile(path.join(pluginPath, 'package.json'), 'utf-8');
126
+ return JSON.parse(content);
127
+ }
128
+ catch {
129
+ return null;
130
+ }
131
+ }
132
+ async needsInstall(pluginPath) {
133
+ const nodeModulesPath = path.join(pluginPath, 'node_modules');
134
+ const packageJsonPath = path.join(pluginPath, 'package.json');
135
+ try {
136
+ const [nodeModulesStats, packageJsonStats] = await Promise.all([
137
+ fs.stat(nodeModulesPath),
138
+ fs.stat(packageJsonPath),
139
+ ]);
140
+ // If package.json is newer than node_modules, need install
141
+ return packageJsonStats.mtimeMs > nodeModulesStats.mtimeMs;
142
+ }
143
+ catch {
144
+ // node_modules doesn't exist
145
+ return true;
146
+ }
147
+ }
148
+ runNpmInstall(pluginName, pluginPath) {
149
+ const pluginLog = createPluginLogger(pluginName);
150
+ pluginLog.info('Running npm install');
151
+ try {
152
+ execSync('npm install', {
153
+ cwd: pluginPath,
154
+ stdio: 'pipe',
155
+ timeout: 120000, // 2 minute timeout
156
+ });
157
+ pluginLog.info('npm install completed');
158
+ // Rebuild native modules to ensure they're compiled for current Node version
159
+ pluginLog.info('Running npm rebuild for native modules');
160
+ execSync('npm rebuild', {
161
+ cwd: pluginPath,
162
+ stdio: 'pipe',
163
+ timeout: 120000,
164
+ });
165
+ pluginLog.info('npm rebuild completed');
166
+ return true;
167
+ }
168
+ catch (err) {
169
+ pluginLog.error({ err }, 'npm install/rebuild failed');
170
+ return false;
171
+ }
172
+ }
173
+ updateInstanceStatus(name, instanceId, status, error) {
174
+ const plugin = this.plugins.get(name);
175
+ if (plugin === undefined) {
176
+ return;
177
+ }
178
+ const instance = plugin.info.instances.find((i) => i.id === instanceId);
179
+ if (instance !== undefined) {
180
+ instance.status = status;
181
+ if (error !== undefined) {
182
+ instance.error = error;
183
+ }
184
+ else {
185
+ delete instance.error;
186
+ }
187
+ registry.updatePlugin(plugin.info);
188
+ }
189
+ }
190
+ async ensurePluginExists(name) {
191
+ const pluginsDir = registry.getPluginsDir();
192
+ const pluginPath = path.join(pluginsDir, name);
193
+ const existing = this.plugins.get(name);
194
+ if (existing !== undefined) {
195
+ return existing;
196
+ }
197
+ const packageJson = await this.readPackageJson(pluginPath);
198
+ if (packageJson === null) {
199
+ return null;
200
+ }
201
+ const main = packageJson.main ?? 'index.js';
202
+ const displayName = packageJson.shella?.displayName ?? packageJson.name ?? name;
203
+ const devCommand = packageJson.shella?.devCommand;
204
+ const info = {
205
+ name,
206
+ displayName,
207
+ path: pluginPath,
208
+ main,
209
+ instances: [],
210
+ };
211
+ if (devCommand) {
212
+ info.devCommand = devCommand;
213
+ }
214
+ const pluginProcess = {
215
+ info,
216
+ processes: new Map(),
217
+ nextInstanceId: 1,
218
+ };
219
+ this.plugins.set(name, pluginProcess);
220
+ registry.updatePlugin(info);
221
+ return pluginProcess;
222
+ }
223
+ async startPlugin(name, devMode = true) {
224
+ const pluginsDir = registry.getPluginsDir();
225
+ const pluginPath = path.join(pluginsDir, name);
226
+ const pluginLog = createPluginLogger(name);
227
+ const pluginProcess = await this.ensurePluginExists(name);
228
+ if (pluginProcess === null) {
229
+ pluginLog.error('Failed to read package.json');
230
+ return null;
231
+ }
232
+ // If dev mode requested but no devCommand, silently fall back to production
233
+ const useDevMode = devMode && !!pluginProcess.info.devCommand;
234
+ // Check if npm install is needed (only if no instances are running)
235
+ if (pluginProcess.processes.size === 0 && (await this.needsInstall(pluginPath))) {
236
+ const installSuccess = this.runNpmInstall(name, pluginPath);
237
+ if (!installSuccess) {
238
+ return null;
239
+ }
240
+ }
241
+ // Allocate port for new instance
242
+ let port;
243
+ try {
244
+ port = await portAllocator.allocate();
245
+ }
246
+ catch (err) {
247
+ pluginLog.error({ err }, 'Failed to allocate port');
248
+ return null;
249
+ }
250
+ // Create new instance
251
+ const instanceId = String(pluginProcess.nextInstanceId++);
252
+ const instance = {
253
+ id: instanceId,
254
+ status: 'starting',
255
+ port,
256
+ pid: null,
257
+ url: `http://localhost:${port}`,
258
+ };
259
+ if (useDevMode) {
260
+ instance.devMode = true;
261
+ }
262
+ pluginProcess.info.instances.push(instance);
263
+ registry.updatePlugin(pluginProcess.info);
264
+ // Spawn the plugin process
265
+ let child;
266
+ if (useDevMode && pluginProcess.info.devCommand) {
267
+ // Run dev command with $PORT replaced
268
+ const devCmd = pluginProcess.info.devCommand.replace('$PORT', String(port));
269
+ const [cmd, ...args] = devCmd.split(' ');
270
+ pluginLog.info({ port, devCmd, instanceId }, 'Starting plugin in dev mode');
271
+ child = spawn(cmd ?? 'npm', args, {
272
+ cwd: pluginPath,
273
+ env: { ...process.env, PORT: String(port) },
274
+ stdio: ['ignore', 'pipe', 'pipe'],
275
+ detached: false,
276
+ });
277
+ }
278
+ else {
279
+ // Run main file directly
280
+ const mainFile = path.join(pluginPath, pluginProcess.info.main);
281
+ const isTypeScript = pluginProcess.info.main.endsWith('.ts');
282
+ const runtime = isTypeScript ? 'tsx' : 'node';
283
+ pluginLog.info({ port, mainFile, instanceId, runtime }, 'Starting plugin instance');
284
+ child = spawn(runtime, [mainFile], {
285
+ cwd: pluginPath,
286
+ env: { ...process.env, PORT: String(port) },
287
+ stdio: ['ignore', 'pipe', 'pipe'],
288
+ detached: false,
289
+ });
290
+ }
291
+ pluginProcess.processes.set(instanceId, child);
292
+ instance.pid = child.pid ?? null;
293
+ child.stdout?.on('data', (data) => {
294
+ logPluginOutput(name, instanceId, data.toString());
295
+ });
296
+ child.stderr?.on('data', (data) => {
297
+ logPluginOutput(name, instanceId, data.toString(), true);
298
+ });
299
+ child.on('error', (err) => {
300
+ pluginLog.error({ err, instanceId }, 'Plugin process error');
301
+ this.handlePluginExit(name, instanceId, 1);
302
+ });
303
+ child.on('exit', (code, signal) => {
304
+ pluginLog.info({ code, signal, instanceId }, 'Plugin process exited');
305
+ this.handlePluginExit(name, instanceId, code ?? 1);
306
+ });
307
+ // Wait briefly to see if the process starts successfully
308
+ await new Promise((resolve) => setTimeout(resolve, 500));
309
+ if (child.exitCode !== null) {
310
+ // Process already exited
311
+ pluginLog.error({ exitCode: child.exitCode, instanceId }, 'Plugin failed to start');
312
+ return null;
313
+ }
314
+ this.updateInstanceStatus(name, instanceId, 'running');
315
+ await registry.save();
316
+ this.broadcastPlugins();
317
+ pluginLog.info({ port, pid: child.pid, instanceId }, 'Plugin instance started successfully');
318
+ return instance;
319
+ }
320
+ handlePluginExit(name, instanceId, code) {
321
+ const plugin = this.plugins.get(name);
322
+ if (plugin === undefined) {
323
+ return;
324
+ }
325
+ const instance = plugin.info.instances.find((i) => i.id === instanceId);
326
+ if (instance === undefined) {
327
+ return;
328
+ }
329
+ if (instance.port !== null) {
330
+ portAllocator.release(instance.port);
331
+ }
332
+ plugin.processes.delete(instanceId);
333
+ instance.pid = null;
334
+ // Determine status based on how it exited
335
+ if (instance.status === 'running') {
336
+ // Unexpected exit
337
+ instance.status = code === 0 ? 'stopped' : 'crashed';
338
+ if (code !== 0) {
339
+ instance.error = `Process exited with code ${code}`;
340
+ }
341
+ }
342
+ else {
343
+ // Expected stop
344
+ instance.status = 'stopped';
345
+ }
346
+ registry.updatePlugin(plugin.info);
347
+ void registry.save();
348
+ this.broadcastPlugins();
349
+ }
350
+ async stopInstance(name, instanceId) {
351
+ const plugin = this.plugins.get(name);
352
+ const pluginLog = createPluginLogger(name);
353
+ if (plugin === undefined) {
354
+ pluginLog.warn('Plugin not found');
355
+ return false;
356
+ }
357
+ const instance = plugin.info.instances.find((i) => i.id === instanceId);
358
+ if (instance === undefined) {
359
+ pluginLog.warn({ instanceId }, 'Instance not found');
360
+ return false;
361
+ }
362
+ const child = plugin.processes.get(instanceId);
363
+ if (child === undefined) {
364
+ pluginLog.debug({ instanceId }, 'Instance is not running');
365
+ // Remove the instance from the list
366
+ plugin.info.instances = plugin.info.instances.filter((i) => i.id !== instanceId);
367
+ registry.updatePlugin(plugin.info);
368
+ await registry.save();
369
+ return true;
370
+ }
371
+ this.updateInstanceStatus(name, instanceId, 'stopped');
372
+ plugin.processes.delete(instanceId);
373
+ return new Promise((resolve) => {
374
+ const timeout = setTimeout(() => {
375
+ pluginLog.warn({ instanceId }, 'Instance did not stop gracefully, sending SIGKILL');
376
+ child.kill('SIGKILL');
377
+ }, 5000);
378
+ child.once('exit', () => {
379
+ clearTimeout(timeout);
380
+ if (instance.port !== null) {
381
+ portAllocator.release(instance.port);
382
+ }
383
+ instance.pid = null;
384
+ // Remove the instance from the list
385
+ plugin.info.instances = plugin.info.instances.filter((i) => i.id !== instanceId);
386
+ registry.updatePlugin(plugin.info);
387
+ void registry.save();
388
+ this.broadcastPlugins();
389
+ pluginLog.info({ instanceId }, 'Instance stopped');
390
+ resolve(true);
391
+ });
392
+ child.kill('SIGTERM');
393
+ });
394
+ }
395
+ async stopAllInstances(name) {
396
+ const plugin = this.plugins.get(name);
397
+ if (plugin === undefined) {
398
+ return;
399
+ }
400
+ const instanceIds = [...plugin.processes.keys()];
401
+ await Promise.all(instanceIds.map((id) => this.stopInstance(name, id)));
402
+ }
403
+ getPlugin(name) {
404
+ return this.plugins.get(name)?.info;
405
+ }
406
+ getAllPlugins() {
407
+ return Array.from(this.plugins.values()).map((p) => p.info);
408
+ }
409
+ async startAllPlugins() {
410
+ const pluginNames = await this.discoverPlugins();
411
+ logger.info({ count: pluginNames.length }, 'Discovered plugins');
412
+ for (const name of pluginNames) {
413
+ await this.startPlugin(name);
414
+ }
415
+ }
416
+ async stopAllPlugins() {
417
+ const stopPromises = [];
418
+ for (const [name] of this.plugins) {
419
+ stopPromises.push(this.stopAllInstances(name));
420
+ }
421
+ await Promise.all(stopPromises);
422
+ }
423
+ killAllPluginsSync() {
424
+ // Synchronously kill all child processes - used during shutdown
425
+ for (const [name, plugin] of this.plugins) {
426
+ for (const [instanceId, child] of plugin.processes) {
427
+ const pluginLog = createPluginLogger(name);
428
+ pluginLog.info({ instanceId }, 'Killing plugin instance');
429
+ try {
430
+ child.kill('SIGTERM');
431
+ }
432
+ catch {
433
+ // Process may already be dead
434
+ }
435
+ }
436
+ }
437
+ }
438
+ async handleNewPlugin(name) {
439
+ logger.info({ plugin: name }, 'New plugin detected');
440
+ await this.startPlugin(name);
441
+ this.broadcastPlugins();
442
+ }
443
+ async refreshPluginMetadata(name) {
444
+ const pluginsDir = registry.getPluginsDir();
445
+ const pluginPath = path.join(pluginsDir, name);
446
+ const plugin = this.plugins.get(name);
447
+ if (plugin === undefined) {
448
+ return;
449
+ }
450
+ const packageJson = await this.readPackageJson(pluginPath);
451
+ if (packageJson === null) {
452
+ return;
453
+ }
454
+ const main = packageJson.main ?? 'index.js';
455
+ const displayName = packageJson.shella?.displayName ?? packageJson.name ?? name;
456
+ const devCommand = packageJson.shella?.devCommand;
457
+ // Update cached info
458
+ plugin.info.main = main;
459
+ plugin.info.displayName = displayName;
460
+ if (devCommand) {
461
+ plugin.info.devCommand = devCommand;
462
+ }
463
+ else {
464
+ delete plugin.info.devCommand;
465
+ }
466
+ registry.updatePlugin(plugin.info);
467
+ await registry.save();
468
+ logger.debug({ plugin: name, main, displayName, devCommand }, 'Refreshed plugin metadata');
469
+ }
470
+ async handleRemovedPlugin(name) {
471
+ logger.info({ plugin: name }, 'Plugin removed');
472
+ await this.stopAllInstances(name);
473
+ this.plugins.delete(name);
474
+ registry.removePlugin(name);
475
+ await registry.save();
476
+ this.broadcastPlugins();
477
+ }
478
+ }
479
+ export const pluginManager = new PluginManager();
480
+ //# sourceMappingURL=plugin-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-manager.js","sourceRoot":"","sources":["../../src/plugin-manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ export declare class PortAllocator {
2
+ private allocatedPorts;
3
+ isPortAvailable(port: number): Promise<boolean>;
4
+ allocate(): Promise<number>;
5
+ release(port: number): void;
6
+ isAllocated(port: number): boolean;
7
+ getAllocatedPorts(): number[];
8
+ clear(): void;
9
+ }
10
+ export declare const portAllocator: PortAllocator;
11
+ //# sourceMappingURL=port-allocator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"port-allocator.d.ts","sourceRoot":"","sources":["../../src/port-allocator.ts"],"names":[],"mappings":"AAIA,qBAAa,aAAa;IACxB,OAAO,CAAC,cAAc,CAA0B;IAE1C,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAkB/C,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC;IAiBjC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAO3B,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIlC,iBAAiB,IAAI,MAAM,EAAE;IAI7B,KAAK,IAAI,IAAI;CAGd;AAED,eAAO,MAAM,aAAa,eAAsB,CAAC"}