doclific 0.2.1 → 0.2.3

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 (584) hide show
  1. package/LICENSE +17 -0
  2. package/dist/bin/doclific.js +36 -8
  3. package/dist/public/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
  4. package/dist/public/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
  5. package/dist/public/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
  6. package/dist/public/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
  7. package/dist/public/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
  8. package/dist/public/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
  9. package/dist/public/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
  10. package/dist/public/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
  11. package/dist/public/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
  12. package/dist/public/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
  13. package/dist/public/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
  14. package/dist/public/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
  15. package/dist/public/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
  16. package/dist/public/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
  17. package/dist/public/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
  18. package/dist/public/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
  19. package/dist/public/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
  20. package/dist/public/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
  21. package/dist/public/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
  22. package/dist/public/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
  23. package/dist/public/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
  24. package/dist/public/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
  25. package/dist/public/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
  26. package/dist/public/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
  27. package/dist/public/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
  28. package/dist/public/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
  29. package/dist/public/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
  30. package/dist/public/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
  31. package/dist/public/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
  32. package/dist/public/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
  33. package/dist/public/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
  34. package/dist/public/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
  35. package/dist/public/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
  36. package/dist/public/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
  37. package/dist/public/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
  38. package/dist/public/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
  39. package/dist/public/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
  40. package/dist/public/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
  41. package/dist/public/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
  42. package/dist/public/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
  43. package/dist/public/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
  44. package/dist/public/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
  45. package/dist/public/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
  46. package/dist/public/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
  47. package/dist/public/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
  48. package/dist/public/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
  49. package/dist/public/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
  50. package/dist/public/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
  51. package/dist/public/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
  52. package/dist/public/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
  53. package/dist/public/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
  54. package/dist/public/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
  55. package/dist/public/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
  56. package/dist/public/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
  57. package/dist/public/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
  58. package/dist/public/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
  59. package/dist/public/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
  60. package/dist/public/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
  61. package/dist/public/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
  62. package/dist/public/assets/Preview-NR2gYrSG.js +1 -0
  63. package/dist/public/assets/abap-BdImnpbu.js +1 -0
  64. package/dist/public/assets/actionscript-3-CfeIJUat.js +1 -0
  65. package/dist/public/assets/ada-bCR0ucgS.js +1 -0
  66. package/dist/public/assets/andromeeda-C-Jbm3Hp.js +1 -0
  67. package/dist/public/assets/angular-html-CU67Zn6k.js +1 -0
  68. package/dist/public/assets/angular-ts-BwZT4LLn.js +1 -0
  69. package/dist/public/assets/apache-Pmp26Uib.js +1 -0
  70. package/dist/public/assets/apex-DDbsPZ6N.js +1 -0
  71. package/dist/public/assets/apl-dKokRX4l.js +1 -0
  72. package/dist/public/assets/applescript-Co6uUVPk.js +1 -0
  73. package/dist/public/assets/ara-BRHolxvo.js +1 -0
  74. package/dist/public/assets/asciidoc-Dv7Oe6Be.js +1 -0
  75. package/dist/public/assets/asm-D_Q5rh1f.js +1 -0
  76. package/dist/public/assets/astro-CbQHKStN.js +1 -0
  77. package/dist/public/assets/aurora-x-D-2ljcwZ.js +1 -0
  78. package/dist/public/assets/awk-DMzUqQB5.js +1 -0
  79. package/dist/public/assets/ayu-dark-Cv9koXgw.js +1 -0
  80. package/dist/public/assets/ballerina-BFfxhgS-.js +1 -0
  81. package/dist/public/assets/bat-BkioyH1T.js +1 -0
  82. package/dist/public/assets/beancount-k_qm7-4y.js +1 -0
  83. package/dist/public/assets/berry-uYugtg8r.js +1 -0
  84. package/dist/public/assets/bibtex-CHM0blh-.js +1 -0
  85. package/dist/public/assets/bicep-Bmn6On1c.js +1 -0
  86. package/dist/public/assets/blade-DVc8C-J4.js +1 -0
  87. package/dist/public/assets/bsl-BO_Y6i37.js +1 -0
  88. package/dist/public/assets/c-BIGW1oBm.js +1 -0
  89. package/dist/public/assets/cadence-Bv_4Rxtq.js +1 -0
  90. package/dist/public/assets/cairo-KRGpt6FW.js +1 -0
  91. package/dist/public/assets/catppuccin-frappe-DFWUc33u.js +1 -0
  92. package/dist/public/assets/catppuccin-latte-C9dUb6Cb.js +1 -0
  93. package/dist/public/assets/catppuccin-macchiato-DQyhUUbL.js +1 -0
  94. package/dist/public/assets/catppuccin-mocha-D87Tk5Gz.js +1 -0
  95. package/dist/public/assets/clarity-D53aC0YG.js +1 -0
  96. package/dist/public/assets/clojure-P80f7IUj.js +1 -0
  97. package/dist/public/assets/cmake-D1j8_8rp.js +1 -0
  98. package/dist/public/assets/cobol-nwyudZeR.js +1 -0
  99. package/dist/public/assets/codeowners-Bp6g37R7.js +1 -0
  100. package/dist/public/assets/codeql-DsOJ9woJ.js +1 -0
  101. package/dist/public/assets/coffee-Ch7k5sss.js +1 -0
  102. package/dist/public/assets/common-lisp-Cg-RD9OK.js +1 -0
  103. package/dist/public/assets/coq-DkFqJrB1.js +1 -0
  104. package/dist/public/assets/cpp-CofmeUqb.js +1 -0
  105. package/dist/public/assets/crystal-tKQVLTB8.js +1 -0
  106. package/dist/public/assets/csharp-K5feNrxe.js +1 -0
  107. package/dist/public/assets/css-DPfMkruS.js +1 -0
  108. package/dist/public/assets/csv-fuZLfV_i.js +1 -0
  109. package/dist/public/assets/cue-D82EKSYY.js +1 -0
  110. package/dist/public/assets/custom-media-element-Ce0vsE-t.js +43 -0
  111. package/dist/public/assets/cypher-COkxafJQ.js +1 -0
  112. package/dist/public/assets/d-85-TOEBH.js +1 -0
  113. package/dist/public/assets/dark-plus-C3mMm8J8.js +1 -0
  114. package/dist/public/assets/dart-CF10PKvl.js +1 -0
  115. package/dist/public/assets/dash.all.min-Oikk9St1.js +21 -0
  116. package/dist/public/assets/dax-CEL-wOlO.js +1 -0
  117. package/dist/public/assets/desktop-BmXAJ9_W.js +1 -0
  118. package/dist/public/assets/diff-D97Zzqfu.js +1 -0
  119. package/dist/public/assets/docker-BcOcwvcX.js +1 -0
  120. package/dist/public/assets/dotenv-Da5cRb03.js +1 -0
  121. package/dist/public/assets/dracula-BzJJZx-M.js +1 -0
  122. package/dist/public/assets/dracula-soft-BXkSAIEj.js +1 -0
  123. package/dist/public/assets/dream-maker-BtqSS_iP.js +1 -0
  124. package/dist/public/assets/edge-BkV0erSs.js +1 -0
  125. package/dist/public/assets/elixir-CDX3lj18.js +1 -0
  126. package/dist/public/assets/elm-DbKCFpqz.js +1 -0
  127. package/dist/public/assets/emacs-lisp-C9XAeP06.js +1 -0
  128. package/dist/public/assets/erb-BOJIQeun.js +1 -0
  129. package/dist/public/assets/erlang-DsQrWhSR.js +1 -0
  130. package/dist/public/assets/everforest-dark-BgDCqdQA.js +1 -0
  131. package/dist/public/assets/everforest-light-C8M2exoo.js +1 -0
  132. package/dist/public/assets/fennel-BYunw83y.js +1 -0
  133. package/dist/public/assets/fish-BvzEVeQv.js +1 -0
  134. package/dist/public/assets/fluent-C4IJs8-o.js +1 -0
  135. package/dist/public/assets/fortran-fixed-form-BZjJHVRy.js +1 -0
  136. package/dist/public/assets/fortran-free-form-D22FLkUw.js +1 -0
  137. package/dist/public/assets/fsharp-CXgrBDvD.js +1 -0
  138. package/dist/public/assets/gdresource-B7Tvp0Sc.js +1 -0
  139. package/dist/public/assets/gdscript-DTMYz4Jt.js +1 -0
  140. package/dist/public/assets/gdshader-DkwncUOv.js +1 -0
  141. package/dist/public/assets/genie-D0YGMca9.js +1 -0
  142. package/dist/public/assets/gherkin-DyxjwDmM.js +1 -0
  143. package/dist/public/assets/git-commit-F4YmCXRG.js +1 -0
  144. package/dist/public/assets/git-rebase-r7XF79zn.js +1 -0
  145. package/dist/public/assets/github-dark-DHJKELXO.js +1 -0
  146. package/dist/public/assets/github-dark-default-Cuk6v7N8.js +1 -0
  147. package/dist/public/assets/github-dark-dimmed-DH5Ifo-i.js +1 -0
  148. package/dist/public/assets/github-dark-high-contrast-E3gJ1_iC.js +1 -0
  149. package/dist/public/assets/github-light-DAi9KRSo.js +1 -0
  150. package/dist/public/assets/github-light-default-D7oLnXFd.js +1 -0
  151. package/dist/public/assets/github-light-high-contrast-BfjtVDDH.js +1 -0
  152. package/dist/public/assets/gleam-BspZqrRM.js +1 -0
  153. package/dist/public/assets/glimmer-js-Rg0-pVw9.js +1 -0
  154. package/dist/public/assets/glimmer-ts-U6CK756n.js +1 -0
  155. package/dist/public/assets/glsl-DplSGwfg.js +1 -0
  156. package/dist/public/assets/gnuplot-DdkO51Og.js +1 -0
  157. package/dist/public/assets/go-Dn2_MT6a.js +1 -0
  158. package/dist/public/assets/graphql-ChdNCCLP.js +1 -0
  159. package/dist/public/assets/groovy-gcz8RCvz.js +1 -0
  160. package/dist/public/assets/gruvbox-dark-hard-CFHQjOhq.js +1 -0
  161. package/dist/public/assets/gruvbox-dark-medium-GsRaNv29.js +1 -0
  162. package/dist/public/assets/gruvbox-dark-soft-CVdnzihN.js +1 -0
  163. package/dist/public/assets/gruvbox-light-hard-CH1njM8p.js +1 -0
  164. package/dist/public/assets/gruvbox-light-medium-DRw_LuNl.js +1 -0
  165. package/dist/public/assets/gruvbox-light-soft-hJgmCMqR.js +1 -0
  166. package/dist/public/assets/hack-CaT9iCJl.js +1 -0
  167. package/dist/public/assets/haml-B8DHNrY2.js +1 -0
  168. package/dist/public/assets/handlebars-BL8al0AC.js +1 -0
  169. package/dist/public/assets/haskell-Df6bDoY_.js +1 -0
  170. package/dist/public/assets/haxe-CzTSHFRz.js +1 -0
  171. package/dist/public/assets/hcl-BWvSN4gD.js +1 -0
  172. package/dist/public/assets/hjson-D5-asLiD.js +1 -0
  173. package/dist/public/assets/hls-C_5si56p.js +40 -0
  174. package/dist/public/assets/hlsl-D3lLCCz7.js +1 -0
  175. package/dist/public/assets/houston-DnULxvSX.js +1 -0
  176. package/dist/public/assets/html-GMplVEZG.js +1 -0
  177. package/dist/public/assets/html-derivative-BFtXZ54Q.js +1 -0
  178. package/dist/public/assets/http-jrhK8wxY.js +1 -0
  179. package/dist/public/assets/hurl-irOxFIW8.js +1 -0
  180. package/dist/public/assets/hxml-Bvhsp5Yf.js +1 -0
  181. package/dist/public/assets/hy-DFXneXwc.js +1 -0
  182. package/dist/public/assets/imba-DGztddWO.js +1 -0
  183. package/dist/public/assets/index-7dkQZ452.js +3299 -0
  184. package/dist/public/assets/index-Ba4GJyLR.js +594 -0
  185. package/dist/public/assets/index-Cr3JJDAk.css +1 -0
  186. package/dist/public/assets/ini-BEwlwnbL.js +1 -0
  187. package/dist/public/assets/java-CylS5w8V.js +1 -0
  188. package/dist/public/assets/javascript-wDzz0qaB.js +1 -0
  189. package/dist/public/assets/jinja-4LBKfQ-Z.js +1 -0
  190. package/dist/public/assets/jison-wvAkD_A8.js +1 -0
  191. package/dist/public/assets/json-Cp-IABpG.js +1 -0
  192. package/dist/public/assets/json5-C9tS-k6U.js +1 -0
  193. package/dist/public/assets/jsonc-Des-eS-w.js +1 -0
  194. package/dist/public/assets/jsonl-DcaNXYhu.js +1 -0
  195. package/dist/public/assets/jsonnet-DFQXde-d.js +1 -0
  196. package/dist/public/assets/jssm-C2t-YnRu.js +1 -0
  197. package/dist/public/assets/jsx-g9-lgVsj.js +1 -0
  198. package/dist/public/assets/julia-C8NyazO9.js +1 -0
  199. package/dist/public/assets/kanagawa-dragon-CkXjmgJE.js +1 -0
  200. package/dist/public/assets/kanagawa-lotus-CfQXZHmo.js +1 -0
  201. package/dist/public/assets/kanagawa-wave-DWedfzmr.js +1 -0
  202. package/dist/public/assets/kdl-DV7GczEv.js +1 -0
  203. package/dist/public/assets/kotlin-BdnUsdx6.js +1 -0
  204. package/dist/public/assets/kusto-BvAqAH-y.js +1 -0
  205. package/dist/public/assets/laserwave-DUszq2jm.js +1 -0
  206. package/dist/public/assets/latex-BdAV_C_H.js +1 -0
  207. package/dist/public/assets/lean-Bc6EcWN3.js +1 -0
  208. package/dist/public/assets/less-B1dDrJ26.js +1 -0
  209. package/dist/public/assets/light-plus-B7mTdjB0.js +1 -0
  210. package/dist/public/assets/liquid-DYVedYrR.js +1 -0
  211. package/dist/public/assets/llvm-BtvRca6l.js +1 -0
  212. package/dist/public/assets/log-2UxHyX5q.js +1 -0
  213. package/dist/public/assets/logo-BtOb2qkB.js +1 -0
  214. package/dist/public/assets/lua-BbnMAYS6.js +1 -0
  215. package/dist/public/assets/luau-CXu1NL6O.js +1 -0
  216. package/dist/public/assets/make-CHLpvVh8.js +1 -0
  217. package/dist/public/assets/markdown-Cvjx9yec.js +1 -0
  218. package/dist/public/assets/marko-CPi9NSCl.js +1 -0
  219. package/dist/public/assets/material-theme-D5KoaKCx.js +1 -0
  220. package/dist/public/assets/material-theme-darker-BfHTSMKl.js +1 -0
  221. package/dist/public/assets/material-theme-lighter-B0m2ddpp.js +1 -0
  222. package/dist/public/assets/material-theme-ocean-CyktbL80.js +1 -0
  223. package/dist/public/assets/material-theme-palenight-Csfq5Kiy.js +1 -0
  224. package/dist/public/assets/matlab-D7o27uSR.js +1 -0
  225. package/dist/public/assets/mdc-DUICxH0z.js +1 -0
  226. package/dist/public/assets/mdx-Cmh6b_Ma.js +1 -0
  227. package/dist/public/assets/mermaid-DKYwYmdq.js +1 -0
  228. package/dist/public/assets/min-dark-CafNBF8u.js +1 -0
  229. package/dist/public/assets/min-light-CTRr51gU.js +1 -0
  230. package/dist/public/assets/mipsasm-CKIfxQSi.js +1 -0
  231. package/dist/public/assets/mojo-1DNp92w6.js +1 -0
  232. package/dist/public/assets/monokai-D4h5O-jR.js +1 -0
  233. package/dist/public/assets/move-Bu9oaDYs.js +1 -0
  234. package/dist/public/assets/narrat-DRg8JJMk.js +1 -0
  235. package/dist/public/assets/nextflow-BrzmwbiE.js +1 -0
  236. package/dist/public/assets/nginx-DknmC5AR.js +1 -0
  237. package/dist/public/assets/night-owl-C39BiMTA.js +1 -0
  238. package/dist/public/assets/nim-CVrawwO9.js +1 -0
  239. package/dist/public/assets/nix-c8nO5XWb.js +1 -0
  240. package/dist/public/assets/nord-Ddv68eIx.js +1 -0
  241. package/dist/public/assets/nushell-C-sUppwS.js +1 -0
  242. package/dist/public/assets/objective-c-DXmwc3jG.js +1 -0
  243. package/dist/public/assets/objective-cpp-CLxacb5B.js +1 -0
  244. package/dist/public/assets/ocaml-C0hk2d4L.js +1 -0
  245. package/dist/public/assets/one-dark-pro-DVMEJ2y_.js +1 -0
  246. package/dist/public/assets/one-light-PoHY5YXO.js +1 -0
  247. package/dist/public/assets/openscad-C4EeE6gA.js +1 -0
  248. package/dist/public/assets/pascal-D93ZcfNL.js +1 -0
  249. package/dist/public/assets/perl-C0TMdlhV.js +1 -0
  250. package/dist/public/assets/php-CDn_0X-4.js +1 -0
  251. package/dist/public/assets/pkl-u5AG7uiY.js +1 -0
  252. package/dist/public/assets/plastic-3e1v2bzS.js +1 -0
  253. package/dist/public/assets/plsql-ChMvpjG-.js +1 -0
  254. package/dist/public/assets/po-BTJTHyun.js +1 -0
  255. package/dist/public/assets/poimandres-CS3Unz2-.js +1 -0
  256. package/dist/public/assets/polar-C0HS_06l.js +1 -0
  257. package/dist/public/assets/postcss-CXtECtnM.js +1 -0
  258. package/dist/public/assets/powerquery-CEu0bR-o.js +1 -0
  259. package/dist/public/assets/powershell-Dpen1YoG.js +1 -0
  260. package/dist/public/assets/prisma-Dd19v3D-.js +1 -0
  261. package/dist/public/assets/prolog-CbFg5uaA.js +1 -0
  262. package/dist/public/assets/proto-DyJlTyXw.js +1 -0
  263. package/dist/public/assets/pug-CGlum2m_.js +1 -0
  264. package/dist/public/assets/puppet-BMWR74SV.js +1 -0
  265. package/dist/public/assets/purescript-CklMAg4u.js +1 -0
  266. package/dist/public/assets/python-B6aJPvgy.js +1 -0
  267. package/dist/public/assets/qml-3beO22l8.js +1 -0
  268. package/dist/public/assets/qmldir-C8lEn-DE.js +1 -0
  269. package/dist/public/assets/qss-IeuSbFQv.js +1 -0
  270. package/dist/public/assets/r-DiinP2Uv.js +1 -0
  271. package/dist/public/assets/racket-BqYA7rlc.js +1 -0
  272. package/dist/public/assets/raku-DXvB9xmW.js +1 -0
  273. package/dist/public/assets/razor-CE9lU5zL.js +1 -0
  274. package/dist/public/assets/react-5ZXevCLf.js +17 -0
  275. package/dist/public/assets/react-BEcdFE7q.js +22 -0
  276. package/dist/public/assets/react-D2EJnkVv.js +19 -0
  277. package/dist/public/assets/react-D7jI_eai.js +1 -0
  278. package/dist/public/assets/react-DJAU2yhQ.js +6 -0
  279. package/dist/public/assets/react-DOmflkoB.js +19 -0
  280. package/dist/public/assets/react-cRnw9P6y.js +21 -0
  281. package/dist/public/assets/react-juJrAyUY.js +34 -0
  282. package/dist/public/assets/red-bN70gL4F.js +1 -0
  283. package/dist/public/assets/reg-C-SQnVFl.js +1 -0
  284. package/dist/public/assets/regexp-CDVJQ6XC.js +1 -0
  285. package/dist/public/assets/rel-C3B-1QV4.js +1 -0
  286. package/dist/public/assets/riscv-BM1_JUlF.js +1 -0
  287. package/dist/public/assets/rose-pine-dawn-DHQR4-dF.js +1 -0
  288. package/dist/public/assets/rose-pine-moon-D4_iv3hh.js +1 -0
  289. package/dist/public/assets/rose-pine-qdsjHGoJ.js +1 -0
  290. package/dist/public/assets/rosmsg-BJDFO7_C.js +1 -0
  291. package/dist/public/assets/rst-B0xPkSld.js +1 -0
  292. package/dist/public/assets/ruby-BvKwtOVI.js +1 -0
  293. package/dist/public/assets/rust-B1yitclQ.js +1 -0
  294. package/dist/public/assets/sas-cz2c8ADy.js +1 -0
  295. package/dist/public/assets/sass-Cj5Yp3dK.js +1 -0
  296. package/dist/public/assets/scala-C151Ov-r.js +1 -0
  297. package/dist/public/assets/scheme-C98Dy4si.js +1 -0
  298. package/dist/public/assets/scss-OYdSNvt2.js +1 -0
  299. package/dist/public/assets/sdbl-DVxCFoDh.js +1 -0
  300. package/dist/public/assets/shaderlab-Dg9Lc6iA.js +1 -0
  301. package/dist/public/assets/shellscript-Yzrsuije.js +1 -0
  302. package/dist/public/assets/shellsession-BADoaaVG.js +1 -0
  303. package/dist/public/assets/slack-dark-BthQWCQV.js +1 -0
  304. package/dist/public/assets/slack-ochin-DqwNpetd.js +1 -0
  305. package/dist/public/assets/smalltalk-BERRCDM3.js +1 -0
  306. package/dist/public/assets/snazzy-light-Bw305WKR.js +1 -0
  307. package/dist/public/assets/solarized-dark-DXbdFlpD.js +1 -0
  308. package/dist/public/assets/solarized-light-L9t79GZl.js +1 -0
  309. package/dist/public/assets/solidity-rGO070M0.js +1 -0
  310. package/dist/public/assets/soy-Brmx7dQM.js +1 -0
  311. package/dist/public/assets/sparql-rVzFXLq3.js +1 -0
  312. package/dist/public/assets/splunk-BtCnVYZw.js +1 -0
  313. package/dist/public/assets/sql-BLtJtn59.js +1 -0
  314. package/dist/public/assets/ssh-config-_ykCGR6B.js +1 -0
  315. package/dist/public/assets/stata-BH5u7GGu.js +1 -0
  316. package/dist/public/assets/stylus-BEDo0Tqx.js +1 -0
  317. package/dist/public/assets/svelte-3Dk4HxPD.js +1 -0
  318. package/dist/public/assets/swift-Dg5xB15N.js +1 -0
  319. package/dist/public/assets/synthwave-84-CbfX1IO0.js +1 -0
  320. package/dist/public/assets/system-verilog-CnnmHF94.js +1 -0
  321. package/dist/public/assets/systemd-4A_iFExJ.js +1 -0
  322. package/dist/public/assets/talonscript-CkByrt1z.js +1 -0
  323. package/dist/public/assets/tasl-QIJgUcNo.js +1 -0
  324. package/dist/public/assets/tcl-dwOrl1Do.js +1 -0
  325. package/dist/public/assets/templ-W15q3VgB.js +1 -0
  326. package/dist/public/assets/terraform-BETggiCN.js +1 -0
  327. package/dist/public/assets/tex-CxkMU7Pf.js +1 -0
  328. package/dist/public/assets/tokyo-night-hegEt444.js +1 -0
  329. package/dist/public/assets/toml-vGWfd6FD.js +1 -0
  330. package/dist/public/assets/ts-tags-zn1MmPIZ.js +1 -0
  331. package/dist/public/assets/tsv-B_m7g4N7.js +1 -0
  332. package/dist/public/assets/tsx-COt5Ahok.js +1 -0
  333. package/dist/public/assets/turtle-BsS91CYL.js +1 -0
  334. package/dist/public/assets/twig-CO9l9SDP.js +1 -0
  335. package/dist/public/assets/typescript-BPQ3VLAy.js +1 -0
  336. package/dist/public/assets/typespec-BGHnOYBU.js +1 -0
  337. package/dist/public/assets/typst-DHCkPAjA.js +1 -0
  338. package/dist/public/assets/v-BcVCzyr7.js +1 -0
  339. package/dist/public/assets/vala-CsfeWuGM.js +1 -0
  340. package/dist/public/assets/vb-D17OF-Vu.js +1 -0
  341. package/dist/public/assets/verilog-BQ8w6xss.js +1 -0
  342. package/dist/public/assets/vesper-DU1UobuO.js +1 -0
  343. package/dist/public/assets/vhdl-CeAyd5Ju.js +1 -0
  344. package/dist/public/assets/viml-CJc9bBzg.js +1 -0
  345. package/dist/public/assets/vitesse-black-Bkuqu6BP.js +1 -0
  346. package/dist/public/assets/vitesse-dark-D0r3Knsf.js +1 -0
  347. package/dist/public/assets/vitesse-light-CVO1_9PV.js +1 -0
  348. package/dist/public/assets/vue-DnHKYNfI.js +1 -0
  349. package/dist/public/assets/vue-html-CChd_i61.js +1 -0
  350. package/dist/public/assets/vue-vine-8moa0y9V.js +1 -0
  351. package/dist/public/assets/vyper-CDx5xZoG.js +1 -0
  352. package/dist/public/assets/wasm-CG6Dc4jp.js +1 -0
  353. package/dist/public/assets/wasm-MzD3tlZU.js +1 -0
  354. package/dist/public/assets/wenyan-BV7otONQ.js +1 -0
  355. package/dist/public/assets/wgsl-Dx-B1_4e.js +1 -0
  356. package/dist/public/assets/wikitext-BhOHFoWU.js +1 -0
  357. package/dist/public/assets/wit-5i3qLPDT.js +1 -0
  358. package/dist/public/assets/wolfram-lXgVvXCa.js +1 -0
  359. package/dist/public/assets/xml-sdJ4AIDG.js +1 -0
  360. package/dist/public/assets/xsl-CtQFsRM5.js +1 -0
  361. package/dist/public/assets/yaml-Buea-lGh.js +1 -0
  362. package/dist/public/assets/zenscript-DVFEvuxE.js +1 -0
  363. package/dist/public/assets/zig-VOosw3JB.js +1 -0
  364. package/{frontend → dist/public}/index.html +2 -1
  365. package/dist/server/index.js +1 -1
  366. package/package.json +10 -3
  367. package/readme.md +77 -0
  368. package/.gitattributes +0 -2
  369. package/.prettierignore +0 -5
  370. package/.prettierrc +0 -9
  371. package/.vscode/settings.json +0 -13
  372. package/frontend/README.md +0 -73
  373. package/frontend/components.json +0 -24
  374. package/frontend/eslint.config.js +0 -23
  375. package/frontend/package-lock.json +0 -15754
  376. package/frontend/package.json +0 -122
  377. package/frontend/src/App.tsx +0 -21
  378. package/frontend/src/components/app-sidebar.tsx +0 -393
  379. package/frontend/src/components/editor/editor-base-kit.tsx +0 -43
  380. package/frontend/src/components/editor/editor-kit.tsx +0 -93
  381. package/frontend/src/components/editor/plugins/align-base-kit.tsx +0 -16
  382. package/frontend/src/components/editor/plugins/align-kit.tsx +0 -18
  383. package/frontend/src/components/editor/plugins/autoformat-kit.tsx +0 -236
  384. package/frontend/src/components/editor/plugins/basic-blocks-base-kit.tsx +0 -35
  385. package/frontend/src/components/editor/plugins/basic-blocks-kit.tsx +0 -88
  386. package/frontend/src/components/editor/plugins/basic-marks-base-kit.tsx +0 -27
  387. package/frontend/src/components/editor/plugins/basic-marks-kit.tsx +0 -41
  388. package/frontend/src/components/editor/plugins/basic-nodes-kit.tsx +0 -6
  389. package/frontend/src/components/editor/plugins/block-menu-kit.tsx +0 -14
  390. package/frontend/src/components/editor/plugins/block-placeholder-kit.tsx +0 -17
  391. package/frontend/src/components/editor/plugins/block-selection-kit.tsx +0 -32
  392. package/frontend/src/components/editor/plugins/callout-base-kit.tsx +0 -7
  393. package/frontend/src/components/editor/plugins/callout-kit.tsx +0 -7
  394. package/frontend/src/components/editor/plugins/code-block-base-kit.tsx +0 -23
  395. package/frontend/src/components/editor/plugins/code-block-kit.tsx +0 -26
  396. package/frontend/src/components/editor/plugins/codebase-kit.tsx +0 -23
  397. package/frontend/src/components/editor/plugins/column-base-kit.tsx +0 -11
  398. package/frontend/src/components/editor/plugins/column-kit.tsx +0 -10
  399. package/frontend/src/components/editor/plugins/comment-base-kit.tsx +0 -7
  400. package/frontend/src/components/editor/plugins/comment-kit.tsx +0 -97
  401. package/frontend/src/components/editor/plugins/cursor-overlay-kit.tsx +0 -13
  402. package/frontend/src/components/editor/plugins/date-base-kit.tsx +0 -5
  403. package/frontend/src/components/editor/plugins/date-kit.tsx +0 -7
  404. package/frontend/src/components/editor/plugins/discussion-kit.tsx +0 -148
  405. package/frontend/src/components/editor/plugins/dnd-kit.tsx +0 -28
  406. package/frontend/src/components/editor/plugins/docx-kit.tsx +0 -6
  407. package/frontend/src/components/editor/plugins/emoji-kit.tsx +0 -13
  408. package/frontend/src/components/editor/plugins/excalidraw-kit.tsx +0 -9
  409. package/frontend/src/components/editor/plugins/exit-break-kit.tsx +0 -12
  410. package/frontend/src/components/editor/plugins/floating-toolbar-kit.tsx +0 -19
  411. package/frontend/src/components/editor/plugins/font-base-kit.tsx +0 -20
  412. package/frontend/src/components/editor/plugins/font-kit.tsx +0 -29
  413. package/frontend/src/components/editor/plugins/indent-base-kit.tsx +0 -19
  414. package/frontend/src/components/editor/plugins/indent-kit.tsx +0 -22
  415. package/frontend/src/components/editor/plugins/line-height-base-kit.tsx +0 -14
  416. package/frontend/src/components/editor/plugins/line-height-kit.tsx +0 -16
  417. package/frontend/src/components/editor/plugins/link-base-kit.tsx +0 -5
  418. package/frontend/src/components/editor/plugins/link-kit.tsx +0 -15
  419. package/frontend/src/components/editor/plugins/list-base-kit.tsx +0 -23
  420. package/frontend/src/components/editor/plugins/list-kit.tsx +0 -26
  421. package/frontend/src/components/editor/plugins/markdown-kit.tsx +0 -46
  422. package/frontend/src/components/editor/plugins/math-base-kit.tsx +0 -11
  423. package/frontend/src/components/editor/plugins/math-kit.tsx +0 -13
  424. package/frontend/src/components/editor/plugins/media-base-kit.tsx +0 -31
  425. package/frontend/src/components/editor/plugins/media-kit.tsx +0 -43
  426. package/frontend/src/components/editor/plugins/mention-base-kit.tsx +0 -7
  427. package/frontend/src/components/editor/plugins/mention-kit.tsx +0 -15
  428. package/frontend/src/components/editor/plugins/slash-kit.tsx +0 -18
  429. package/frontend/src/components/editor/plugins/suggestion-base-kit.tsx +0 -7
  430. package/frontend/src/components/editor/plugins/suggestion-kit.tsx +0 -90
  431. package/frontend/src/components/editor/plugins/table-base-kit.tsx +0 -20
  432. package/frontend/src/components/editor/plugins/table-kit.tsx +0 -22
  433. package/frontend/src/components/editor/plugins/toc-base-kit.tsx +0 -5
  434. package/frontend/src/components/editor/plugins/toc-kit.tsx +0 -14
  435. package/frontend/src/components/editor/plugins/toggle-base-kit.tsx +0 -7
  436. package/frontend/src/components/editor/plugins/toggle-kit.tsx +0 -11
  437. package/frontend/src/components/editor/transforms.ts +0 -194
  438. package/frontend/src/components/markdown-to-slate-demo.tsx +0 -50
  439. package/frontend/src/components/mode-toggle.tsx +0 -15
  440. package/frontend/src/components/theme-provider.tsx +0 -73
  441. package/frontend/src/components/ui/alert-dialog.tsx +0 -155
  442. package/frontend/src/components/ui/align-toolbar-button.tsx +0 -84
  443. package/frontend/src/components/ui/avatar.tsx +0 -51
  444. package/frontend/src/components/ui/block-context-menu.tsx +0 -199
  445. package/frontend/src/components/ui/block-discussion.tsx +0 -365
  446. package/frontend/src/components/ui/block-draggable.tsx +0 -512
  447. package/frontend/src/components/ui/block-list-static.tsx +0 -80
  448. package/frontend/src/components/ui/block-list.tsx +0 -87
  449. package/frontend/src/components/ui/block-selection.tsx +0 -42
  450. package/frontend/src/components/ui/block-suggestion.tsx +0 -473
  451. package/frontend/src/components/ui/blockquote-node-static.tsx +0 -11
  452. package/frontend/src/components/ui/blockquote-node.tsx +0 -13
  453. package/frontend/src/components/ui/button.tsx +0 -62
  454. package/frontend/src/components/ui/calendar.tsx +0 -218
  455. package/frontend/src/components/ui/callout-node-static.tsx +0 -36
  456. package/frontend/src/components/ui/callout-node.tsx +0 -63
  457. package/frontend/src/components/ui/caption.tsx +0 -63
  458. package/frontend/src/components/ui/checkbox.tsx +0 -30
  459. package/frontend/src/components/ui/code-block-node-static.tsx +0 -35
  460. package/frontend/src/components/ui/code-block-node.tsx +0 -287
  461. package/frontend/src/components/ui/code-node-static.tsx +0 -15
  462. package/frontend/src/components/ui/code-node.tsx +0 -17
  463. package/frontend/src/components/ui/codebase-snippet-node.tsx +0 -237
  464. package/frontend/src/components/ui/column-node-static.tsx +0 -29
  465. package/frontend/src/components/ui/column-node.tsx +0 -317
  466. package/frontend/src/components/ui/command.tsx +0 -182
  467. package/frontend/src/components/ui/comment-node-static.tsx +0 -15
  468. package/frontend/src/components/ui/comment-node.tsx +0 -45
  469. package/frontend/src/components/ui/comment-toolbar-button.tsx +0 -24
  470. package/frontend/src/components/ui/comment.tsx +0 -618
  471. package/frontend/src/components/ui/context-menu.tsx +0 -250
  472. package/frontend/src/components/ui/cursor-overlay.tsx +0 -66
  473. package/frontend/src/components/ui/date-node-static.tsx +0 -45
  474. package/frontend/src/components/ui/date-node.tsx +0 -93
  475. package/frontend/src/components/ui/dialog.tsx +0 -143
  476. package/frontend/src/components/ui/dropdown-menu.tsx +0 -255
  477. package/frontend/src/components/ui/dynamic-icon.tsx +0 -12
  478. package/frontend/src/components/ui/editor-static.tsx +0 -53
  479. package/frontend/src/components/ui/editor.tsx +0 -130
  480. package/frontend/src/components/ui/emoji-node.tsx +0 -69
  481. package/frontend/src/components/ui/emoji-toolbar-button.tsx +0 -628
  482. package/frontend/src/components/ui/equation-node-static.tsx +0 -98
  483. package/frontend/src/components/ui/equation-node.tsx +0 -235
  484. package/frontend/src/components/ui/equation-toolbar-button.tsx +0 -25
  485. package/frontend/src/components/ui/excalidraw-node.tsx +0 -36
  486. package/frontend/src/components/ui/export-toolbar-button.tsx +0 -174
  487. package/frontend/src/components/ui/file-selector.tsx +0 -339
  488. package/frontend/src/components/ui/floating-toolbar-buttons.tsx +0 -73
  489. package/frontend/src/components/ui/floating-toolbar.tsx +0 -85
  490. package/frontend/src/components/ui/font-color-toolbar-button.tsx +0 -831
  491. package/frontend/src/components/ui/font-size-toolbar-button.tsx +0 -152
  492. package/frontend/src/components/ui/heading-node-static.tsx +0 -68
  493. package/frontend/src/components/ui/heading-node.tsx +0 -58
  494. package/frontend/src/components/ui/highlight-node-static.tsx +0 -11
  495. package/frontend/src/components/ui/highlight-node.tsx +0 -13
  496. package/frontend/src/components/ui/history-toolbar-button.tsx +0 -50
  497. package/frontend/src/components/ui/hr-node-static.tsx +0 -20
  498. package/frontend/src/components/ui/hr-node.tsx +0 -33
  499. package/frontend/src/components/ui/import-toolbar-button.tsx +0 -97
  500. package/frontend/src/components/ui/indent-toolbar-button.tsx +0 -30
  501. package/frontend/src/components/ui/inline-combobox.tsx +0 -414
  502. package/frontend/src/components/ui/input.tsx +0 -21
  503. package/frontend/src/components/ui/insert-toolbar-button.tsx +0 -254
  504. package/frontend/src/components/ui/kbd-node-static.tsx +0 -15
  505. package/frontend/src/components/ui/kbd-node.tsx +0 -17
  506. package/frontend/src/components/ui/layout-header.tsx +0 -35
  507. package/frontend/src/components/ui/line-height-toolbar-button.tsx +0 -68
  508. package/frontend/src/components/ui/link-node-static.tsx +0 -21
  509. package/frontend/src/components/ui/link-node.tsx +0 -39
  510. package/frontend/src/components/ui/link-toolbar-button.tsx +0 -22
  511. package/frontend/src/components/ui/link-toolbar.tsx +0 -206
  512. package/frontend/src/components/ui/list-toolbar-button.tsx +0 -204
  513. package/frontend/src/components/ui/mark-toolbar-button.tsx +0 -19
  514. package/frontend/src/components/ui/media-audio-node-static.tsx +0 -17
  515. package/frontend/src/components/ui/media-audio-node.tsx +0 -39
  516. package/frontend/src/components/ui/media-embed-node.tsx +0 -136
  517. package/frontend/src/components/ui/media-file-node-static.tsx +0 -29
  518. package/frontend/src/components/ui/media-file-node.tsx +0 -47
  519. package/frontend/src/components/ui/media-image-node-static.tsx +0 -39
  520. package/frontend/src/components/ui/media-image-node.tsx +0 -80
  521. package/frontend/src/components/ui/media-placeholder-node.tsx +0 -249
  522. package/frontend/src/components/ui/media-preview-dialog.tsx +0 -152
  523. package/frontend/src/components/ui/media-toolbar-button.tsx +0 -225
  524. package/frontend/src/components/ui/media-toolbar.tsx +0 -115
  525. package/frontend/src/components/ui/media-upload-toast.tsx +0 -66
  526. package/frontend/src/components/ui/media-video-node-static.tsx +0 -30
  527. package/frontend/src/components/ui/media-video-node.tsx +0 -121
  528. package/frontend/src/components/ui/mention-node-static.tsx +0 -36
  529. package/frontend/src/components/ui/mention-node.tsx +0 -194
  530. package/frontend/src/components/ui/mode-toolbar-button.tsx +0 -123
  531. package/frontend/src/components/ui/more-toolbar-button.tsx +0 -80
  532. package/frontend/src/components/ui/paragraph-node-static.tsx +0 -13
  533. package/frontend/src/components/ui/paragraph-node.tsx +0 -15
  534. package/frontend/src/components/ui/popover.tsx +0 -46
  535. package/frontend/src/components/ui/resize-handle.tsx +0 -87
  536. package/frontend/src/components/ui/separator.tsx +0 -28
  537. package/frontend/src/components/ui/sheet.tsx +0 -139
  538. package/frontend/src/components/ui/sidebar.tsx +0 -726
  539. package/frontend/src/components/ui/skeleton.tsx +0 -13
  540. package/frontend/src/components/ui/slash-node.tsx +0 -233
  541. package/frontend/src/components/ui/sonner.tsx +0 -38
  542. package/frontend/src/components/ui/suggestion-node-static.tsx +0 -35
  543. package/frontend/src/components/ui/suggestion-node.tsx +0 -162
  544. package/frontend/src/components/ui/suggestion-toolbar-button.tsx +0 -25
  545. package/frontend/src/components/ui/table-icons.tsx +0 -862
  546. package/frontend/src/components/ui/table-node-static.tsx +0 -98
  547. package/frontend/src/components/ui/table-node.tsx +0 -656
  548. package/frontend/src/components/ui/table-toolbar-button.tsx +0 -264
  549. package/frontend/src/components/ui/toc-node-static.tsx +0 -92
  550. package/frontend/src/components/ui/toc-node.tsx +0 -55
  551. package/frontend/src/components/ui/toggle-node-static.tsx +0 -18
  552. package/frontend/src/components/ui/toggle-node.tsx +0 -36
  553. package/frontend/src/components/ui/toggle-toolbar-button.tsx +0 -22
  554. package/frontend/src/components/ui/toolbar.tsx +0 -387
  555. package/frontend/src/components/ui/tooltip.tsx +0 -59
  556. package/frontend/src/components/ui/turn-into-toolbar-button.tsx +0 -188
  557. package/frontend/src/hooks/use-debounce.ts +0 -18
  558. package/frontend/src/hooks/use-is-touch-device.ts +0 -24
  559. package/frontend/src/hooks/use-mobile.ts +0 -19
  560. package/frontend/src/hooks/use-mounted.ts +0 -11
  561. package/frontend/src/hooks/use-upload-file.ts +0 -128
  562. package/frontend/src/index.css +0 -128
  563. package/frontend/src/layout.tsx +0 -42
  564. package/frontend/src/lib/markdown-joiner-transform.ts +0 -239
  565. package/frontend/src/lib/orpc.ts +0 -13
  566. package/frontend/src/lib/uploadthing.ts +0 -19
  567. package/frontend/src/lib/utils.ts +0 -6
  568. package/frontend/src/main.tsx +0 -13
  569. package/frontend/src/pages/editor.tsx +0 -44
  570. package/frontend/src/types/docs.d.ts +0 -6
  571. package/frontend/src/types/global.d.ts +0 -9
  572. package/frontend/src/types/router.d.ts +0 -4
  573. package/frontend/tsconfig.app.json +0 -33
  574. package/frontend/tsconfig.json +0 -10
  575. package/frontend/tsconfig.node.json +0 -26
  576. package/frontend/vite.config.ts +0 -14
  577. package/src/bin/doclific.ts +0 -47
  578. package/src/core/codebase.ts +0 -39
  579. package/src/core/docs.ts +0 -90
  580. package/src/core/git.ts +0 -48
  581. package/src/server/index.ts +0 -55
  582. package/src/server/router.ts +0 -65
  583. package/tsconfig.json +0 -15
  584. /package/{frontend → dist}/public/logo.svg +0 -0
@@ -1,339 +0,0 @@
1
- import { useState, useMemo } from "react";
2
- import { ChevronRight, ChevronDown, File, Folder, X } from "lucide-react";
3
- import { cn } from "@/lib/utils";
4
- import { Button } from "@/components/ui/button";
5
- import { useQuery, useQueryClient } from "@tanstack/react-query";
6
- import { orpcTs } from "@/lib/orpc";
7
-
8
- interface FileNode {
9
- name: string;
10
- path: string;
11
- type: "file" | "directory";
12
- children?: FileNode[];
13
- }
14
-
15
- interface FileSelectorProps {
16
- open: boolean;
17
- onClose: () => void;
18
- onSelect: (filePath: string, startLine: number, endLine: number) => void;
19
- currentFilePath?: string;
20
- currentStartLine?: string;
21
- currentEndLine?: string;
22
- }
23
-
24
- export function FileSelector({
25
- open,
26
- onClose,
27
- onSelect,
28
- currentFilePath,
29
- currentStartLine,
30
- currentEndLine,
31
- }: FileSelectorProps) {
32
- const queryClient = useQueryClient();
33
- const [expandedDirs, setExpandedDirs] = useState<Set<string>>(new Set());
34
- const [selectedFile, setSelectedFile] = useState<string>(currentFilePath || "");
35
- const [startLineInput, setStartLineInput] = useState<string>(
36
- currentStartLine || ""
37
- );
38
- const [endLineInput, setEndLineInput] = useState<string>(
39
- currentEndLine || ""
40
- );
41
- const [folderContents, setFolderContents] = useState<Map<string, FileNode[]>>(new Map());
42
-
43
- const rootFolderQuery = useQuery({
44
- ...orpcTs.codebase.getFolderContents.queryOptions({
45
- input: { filePath: "" },
46
- }),
47
- enabled: open,
48
- });
49
-
50
- // Merge all folder contents for rendering (includes root folder)
51
- const allFolderContents = useMemo(() => {
52
- const merged = new Map(folderContents);
53
- if (rootFolderQuery.data) {
54
- merged.set("", rootFolderQuery.data);
55
- }
56
- return merged;
57
- }, [folderContents, rootFolderQuery.data]);
58
-
59
- const fileContentQuery = useQuery({
60
- ...orpcTs.codebase.getFileContents.queryOptions({
61
- input: { filePath: selectedFile },
62
- }),
63
- enabled: open && !!selectedFile,
64
- });
65
-
66
- const fileContent = fileContentQuery.data?.contents || "";
67
- const lineCount = fileContent.split("\n").length;
68
-
69
- // Convert inputs to numbers for calculations, with defaults
70
- const startLine = startLineInput === "" ? 1 : Math.max(1, parseInt(startLineInput) || 1);
71
- const endLine = endLineInput === ""
72
- ? (fileContentQuery.data && lineCount > 0 ? Math.min(50, lineCount) : 1)
73
- : Math.min(lineCount, Math.max(startLine, parseInt(endLineInput) || lineCount));
74
-
75
- const toggleExpanded = async (path: string) => {
76
- const newExpanded = new Set(expandedDirs);
77
- if (newExpanded.has(path)) {
78
- newExpanded.delete(path);
79
- } else {
80
- newExpanded.add(path);
81
- // Fetch folder contents if not already loaded
82
- if (!folderContents.has(path)) {
83
- try {
84
- const data = await queryClient.fetchQuery(
85
- orpcTs.codebase.getFolderContents.queryOptions({
86
- input: { filePath: path },
87
- })
88
- );
89
- setFolderContents((prev) => {
90
- const newMap = new Map(prev);
91
- newMap.set(path, data || []);
92
- return newMap;
93
- });
94
- } catch (error) {
95
- console.error("Failed to fetch folder contents:", error);
96
- }
97
- }
98
- }
99
- setExpandedDirs(newExpanded);
100
- };
101
-
102
- const handleSelectFile = (filePath: string) => {
103
- setSelectedFile(filePath);
104
- setStartLineInput("");
105
- setEndLineInput("");
106
- fileContentQuery.refetch();
107
- };
108
-
109
- const handleConfirm = () => {
110
- if (selectedFile) {
111
- onSelect(selectedFile, startLine, endLine);
112
- onClose();
113
- }
114
- };
115
-
116
- const renderFileTree = (nodes: FileNode[], depth = 0) => {
117
- return (
118
- <div>
119
- {nodes.map((node) => {
120
- const children = node.type === "directory" ? allFolderContents.get(node.path) : undefined;
121
- const isLoading = node.type === "directory" && expandedDirs.has(node.path) && !allFolderContents.has(node.path);
122
-
123
- return (
124
- <div key={node.path}>
125
- <div
126
- className={cn(
127
- "flex items-center gap-1 px-2 py-1.5 hover:bg-muted transition-colors cursor-pointer rounded text-sm",
128
- selectedFile === node.path && node.type === "file"
129
- ? "bg-primary/10"
130
- : ""
131
- )}
132
- style={{ paddingLeft: `${depth * 16 + 8}px` }}
133
- >
134
- {node.type === "directory" ? (
135
- <>
136
- <button
137
- onClick={() => toggleExpanded(node.path)}
138
- className="flex items-center justify-center w-4 h-4 p-0"
139
- disabled={isLoading}
140
- >
141
- {isLoading ? (
142
- <div className="w-4 h-4 border-2 border-primary border-t-transparent rounded-full animate-spin" />
143
- ) : expandedDirs.has(node.path) ? (
144
- <ChevronDown className="w-4 h-4" />
145
- ) : (
146
- <ChevronRight className="w-4 h-4" />
147
- )}
148
- </button>
149
- <Folder className="w-4 h-4 text-blue-500 flex-shrink-0" />
150
- <span className="text-foreground">{node.name}</span>
151
- </>
152
- ) : (
153
- <>
154
- <div className="w-4" />
155
- <File className="w-4 h-4 text-muted-foreground flex-shrink-0" />
156
- <button
157
- onClick={() => handleSelectFile(node.path)}
158
- className="text-foreground hover:text-primary"
159
- >
160
- {node.name}
161
- </button>
162
- </>
163
- )}
164
- </div>
165
- {node.type === "directory" &&
166
- expandedDirs.has(node.path) &&
167
- children && (
168
- <>{renderFileTree(children, depth + 1)}</>
169
- )}
170
- </div>
171
- );
172
- })}
173
- </div>
174
- );
175
- };
176
-
177
- if (!open) return null;
178
-
179
- return (
180
- <div className="fixed inset-0 z-50 flex items-center justify-center">
181
- {/* Backdrop */}
182
- <div className="absolute inset-0 bg-black/50" onClick={onClose} />
183
-
184
- {/* Modal */}
185
- <div className="relative z-50 w-full max-w-4xl min-h-[80vh] max-h-[calc(100vh-2rem)] mx-4 bg-background rounded-lg shadow-xl flex flex-col overflow-hidden border">
186
- {/* Header */}
187
- <div className="flex items-center justify-between px-6 py-4 border-b">
188
- <div>
189
- <h2 className="text-lg font-semibold">Select File and Lines</h2>
190
- <p className="text-sm text-muted-foreground">
191
- Choose a file and specify the line range you want to display
192
- </p>
193
- </div>
194
- <button
195
- onClick={onClose}
196
- className="p-1 hover:bg-muted rounded"
197
- >
198
- <X className="w-6 h-6" />
199
- </button>
200
- </div>
201
-
202
- {/* Content */}
203
- <div className="flex gap-4 flex-1 overflow-hidden p-6">
204
- {/* File browser */}
205
- <div className="flex-1 border rounded-lg overflow-y-auto bg-muted/50 p-2">
206
- {rootFolderQuery.isLoading ? (
207
- <div className="p-4 text-sm text-muted-foreground">
208
- Loading files...
209
- </div>
210
- ) : (
211
- renderFileTree(allFolderContents.get("") || [])
212
- )}
213
- </div>
214
-
215
- {/* Preview and line selection */}
216
- <div className="flex-1 flex flex-col gap-4">
217
- {selectedFile ? (
218
- <>
219
- <div>
220
- <p className="text-sm font-semibold mb-2">
221
- Selected:{" "}
222
- <span className="text-primary">{selectedFile}</span>
223
- </p>
224
- <p className="text-xs text-muted-foreground">
225
- Total lines: {lineCount}
226
- </p>
227
- </div>
228
-
229
- {/* Line range inputs */}
230
- <div className="flex gap-4">
231
- <div className="flex-1">
232
- <label className="text-xs font-medium text-muted-foreground block mb-1">
233
- Start Line
234
- </label>
235
- <input
236
- type="text"
237
- inputMode="numeric"
238
- value={startLineInput}
239
- onChange={(e) => {
240
- const value = e.target.value;
241
- // Allow empty string or valid numbers
242
- if (value === "" || /^\d+$/.test(value)) {
243
- setStartLineInput(value);
244
- }
245
- }}
246
- onBlur={(e) => {
247
- // Validate on blur - set to 1 if empty or invalid
248
- const num = parseInt(e.target.value);
249
- if (isNaN(num) || num < 1) {
250
- setStartLineInput("");
251
- } else if (num > lineCount) {
252
- setStartLineInput(String(lineCount));
253
- }
254
- }}
255
- className="w-full px-2 py-1 border rounded text-sm bg-background text-foreground"
256
- placeholder="1"
257
- />
258
- </div>
259
- <div className="flex-1">
260
- <label className="text-xs font-medium text-muted-foreground block mb-1">
261
- End Line
262
- </label>
263
- <input
264
- type="text"
265
- inputMode="numeric"
266
- value={endLineInput}
267
- onChange={(e) => {
268
- const value = e.target.value;
269
- // Allow empty string or valid numbers
270
- if (value === "" || /^\d+$/.test(value)) {
271
- setEndLineInput(value);
272
- }
273
- }}
274
- onBlur={(e) => {
275
- // Validate on blur
276
- const num = parseInt(e.target.value);
277
- if (isNaN(num) || num < startLine) {
278
- setEndLineInput("");
279
- } else if (num > lineCount) {
280
- setEndLineInput(String(lineCount));
281
- }
282
- }}
283
- className="w-full px-2 py-1 border rounded text-sm bg-background text-foreground"
284
- placeholder={String(lineCount)}
285
- />
286
- </div>
287
- </div>
288
-
289
- {/* Preview */}
290
- <div className="flex-1 flex flex-col">
291
- <p className="text-xs font-medium text-muted-foreground mb-1">
292
- Preview
293
- </p>
294
- <div className="flex-1 relative">
295
- <div className="bg-muted rounded border p-2 overflow-y-auto absolute inset-0 text-xs font-mono">
296
- {fileContentQuery.isLoading ? (
297
- <p className="text-muted-foreground">Loading...</p>
298
- ) : (
299
- fileContent
300
- .split("\n")
301
- .slice(startLine - 1, endLine)
302
- .map((line, idx) => (
303
- <div
304
- key={idx}
305
- className="flex gap-2 text-foreground"
306
- >
307
- <span className="text-muted-foreground w-8 text-right flex-shrink-0">
308
- {startLine + idx}
309
- </span>
310
- <span>{line}</span>
311
- </div>
312
- ))
313
- )}
314
- </div>
315
- </div>
316
- </div>
317
- </>
318
- ) : (
319
- <div className="flex items-center justify-center h-full text-muted-foreground">
320
- <p>Select a file to begin</p>
321
- </div>
322
- )}
323
- </div>
324
- </div>
325
-
326
- {/* Footer */}
327
- <div className="flex justify-end gap-2 px-6 py-4 border-t bg-muted/50">
328
- <Button variant="outline" onClick={onClose}>
329
- Cancel
330
- </Button>
331
- <Button onClick={handleConfirm} disabled={!selectedFile}>
332
- Insert Code
333
- </Button>
334
- </div>
335
- </div>
336
- </div>
337
- );
338
- }
339
-
@@ -1,73 +0,0 @@
1
-
2
-
3
- import {
4
- BoldIcon,
5
- Code2Icon,
6
- ItalicIcon,
7
- StrikethroughIcon,
8
- UnderlineIcon,
9
- } from 'lucide-react';
10
- import { KEYS } from 'platejs';
11
- import { useEditorReadOnly } from 'platejs/react';
12
-
13
- import { CommentToolbarButton } from './comment-toolbar-button';
14
- import { InlineEquationToolbarButton } from './equation-toolbar-button';
15
- import { LinkToolbarButton } from './link-toolbar-button';
16
- import { MarkToolbarButton } from './mark-toolbar-button';
17
- import { MoreToolbarButton } from './more-toolbar-button';
18
- import { SuggestionToolbarButton } from './suggestion-toolbar-button';
19
- import { ToolbarGroup } from './toolbar';
20
- import { TurnIntoToolbarButton } from './turn-into-toolbar-button';
21
-
22
- export function FloatingToolbarButtons() {
23
- const readOnly = useEditorReadOnly();
24
-
25
- return (
26
- <>
27
- {!readOnly && (
28
- <>
29
- <ToolbarGroup>
30
- <TurnIntoToolbarButton />
31
-
32
- <MarkToolbarButton nodeType={KEYS.bold} tooltip="Bold (⌘+B)">
33
- <BoldIcon />
34
- </MarkToolbarButton>
35
-
36
- <MarkToolbarButton nodeType={KEYS.italic} tooltip="Italic (⌘+I)">
37
- <ItalicIcon />
38
- </MarkToolbarButton>
39
-
40
- <MarkToolbarButton
41
- nodeType={KEYS.underline}
42
- tooltip="Underline (⌘+U)"
43
- >
44
- <UnderlineIcon />
45
- </MarkToolbarButton>
46
-
47
- <MarkToolbarButton
48
- nodeType={KEYS.strikethrough}
49
- tooltip="Strikethrough (⌘+⇧+M)"
50
- >
51
- <StrikethroughIcon />
52
- </MarkToolbarButton>
53
-
54
- <MarkToolbarButton nodeType={KEYS.code} tooltip="Code (⌘+E)">
55
- <Code2Icon />
56
- </MarkToolbarButton>
57
-
58
- <InlineEquationToolbarButton />
59
-
60
- <LinkToolbarButton />
61
- </ToolbarGroup>
62
- </>
63
- )}
64
-
65
- <ToolbarGroup>
66
- <CommentToolbarButton />
67
- <SuggestionToolbarButton />
68
-
69
- {!readOnly && <MoreToolbarButton />}
70
- </ToolbarGroup>
71
- </>
72
- );
73
- }
@@ -1,85 +0,0 @@
1
-
2
-
3
- import {
4
- type FloatingToolbarState,
5
- flip,
6
- offset,
7
- useFloatingToolbar,
8
- useFloatingToolbarState,
9
- } from '@platejs/floating';
10
- import { useComposedRef } from '@udecode/cn';
11
- import { KEYS } from 'platejs';
12
- import {
13
- useEditorId,
14
- useEventEditorValue,
15
- usePluginOption,
16
- } from 'platejs/react';
17
-
18
- import { cn } from '@/lib/utils';
19
-
20
- import { Toolbar } from './toolbar';
21
-
22
- export function FloatingToolbar({
23
- children,
24
- className,
25
- state,
26
- ...props
27
- }: React.ComponentProps<typeof Toolbar> & {
28
- state?: FloatingToolbarState;
29
- }) {
30
- const editorId = useEditorId();
31
- const focusedEditorId = useEventEditorValue('focus');
32
- const isFloatingLinkOpen = !!usePluginOption({ key: KEYS.link }, 'mode');
33
- const isAIChatOpen = usePluginOption({ key: KEYS.aiChat }, 'open');
34
-
35
- const floatingToolbarState = useFloatingToolbarState({
36
- editorId,
37
- focusedEditorId,
38
- hideToolbar: isFloatingLinkOpen || isAIChatOpen,
39
- ...state,
40
- floatingOptions: {
41
- middleware: [
42
- offset(12),
43
- flip({
44
- fallbackPlacements: [
45
- 'top-start',
46
- 'top-end',
47
- 'bottom-start',
48
- 'bottom-end',
49
- ],
50
- padding: 12,
51
- }),
52
- ],
53
- placement: 'top',
54
- ...state?.floatingOptions,
55
- },
56
- });
57
-
58
- const {
59
- clickOutsideRef,
60
- hidden,
61
- props: rootProps,
62
- ref: floatingRef,
63
- } = useFloatingToolbar(floatingToolbarState);
64
-
65
- const ref = useComposedRef<HTMLDivElement>(props.ref, floatingRef);
66
-
67
- if (hidden) return null;
68
-
69
- return (
70
- <div ref={clickOutsideRef}>
71
- <Toolbar
72
- {...props}
73
- {...rootProps}
74
- ref={ref}
75
- className={cn(
76
- 'scrollbar-hide absolute z-50 overflow-x-auto whitespace-nowrap rounded-md border bg-popover p-1 opacity-100 shadow-md print:hidden',
77
- 'max-w-[80vw]',
78
- className
79
- )}
80
- >
81
- {children}
82
- </Toolbar>
83
- </div>
84
- );
85
- }