basuicn 0.3.12 → 0.3.19

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 (316) hide show
  1. package/dist/assets/abap-CLvhMVsD.js +1 -0
  2. package/dist/assets/actionscript-3--17pq3dv.js +1 -0
  3. package/dist/assets/ada-C5qYipkI.js +1 -0
  4. package/dist/assets/andromeeda-vGVdxbeo.js +1 -0
  5. package/dist/assets/angular-html-C_R4boCs.js +1 -0
  6. package/dist/assets/angular-ts-DDC-7KEU.js +1 -0
  7. package/dist/assets/apache-U0d_L8uA.js +1 -0
  8. package/dist/assets/apex-VAyPSnFM.js +1 -0
  9. package/dist/assets/apl-C6NMFcit.js +1 -0
  10. package/dist/assets/applescript-CCn79oCD.js +1 -0
  11. package/dist/assets/ara-4CJ0cIlV.js +1 -0
  12. package/dist/assets/asciidoc-DE70LPWp.js +1 -0
  13. package/dist/assets/asm-Cmm7eHzH.js +1 -0
  14. package/dist/assets/astro-D6HwFgiT.js +1 -0
  15. package/dist/assets/aurora-x-CDeNXAV0.js +1 -0
  16. package/dist/assets/awk-BWXHIvNe.js +1 -0
  17. package/dist/assets/ayu-dark-DluEY0Gj.js +1 -0
  18. package/dist/assets/ayu-light-C3h-C4tm.js +1 -0
  19. package/dist/assets/ayu-mirage-Bqwy1Gya.js +1 -0
  20. package/dist/assets/ballerina-B7ZEbQpA.js +1 -0
  21. package/dist/assets/bat-Bo4NYOV-.js +1 -0
  22. package/dist/assets/beancount-D-usSTwE.js +1 -0
  23. package/dist/assets/berry-DKpUyyne.js +1 -0
  24. package/dist/assets/bibtex-Ci_nEsc7.js +1 -0
  25. package/dist/assets/bicep-CUHmPFLl.js +1 -0
  26. package/dist/assets/bird2-C6vDhewU.js +1 -0
  27. package/dist/assets/blade-C4l1V02K.js +1 -0
  28. package/dist/assets/bsl-BkkzgIyY.js +1 -0
  29. package/dist/assets/c-KSOZ_xJw.js +1 -0
  30. package/dist/assets/c3-BFHwR3_K.js +1 -0
  31. package/dist/assets/cadence-CQ2zXKGN.js +1 -0
  32. package/dist/assets/cairo-DLTphjLi.js +1 -0
  33. package/dist/assets/catppuccin-frappe-3VR1Za6u.js +1 -0
  34. package/dist/assets/catppuccin-latte-DwIHMF0Q.js +1 -0
  35. package/dist/assets/catppuccin-macchiato-DYnBP6_5.js +1 -0
  36. package/dist/assets/catppuccin-mocha-DYhrFGRu.js +1 -0
  37. package/dist/assets/clarity-SemFz856.js +1 -0
  38. package/dist/assets/clojure-DqKBuwfJ.js +1 -0
  39. package/dist/assets/cmake-Bj61d0ZC.js +1 -0
  40. package/dist/assets/cobol-DV3uoHgO.js +1 -0
  41. package/dist/assets/codeowners-C8r90Shi.js +1 -0
  42. package/dist/assets/codeql-oeQT6MSM.js +1 -0
  43. package/dist/assets/coffee-BI7IzQLX.js +1 -0
  44. package/dist/assets/common-lisp-Cv5bFMCO.js +1 -0
  45. package/dist/assets/coq-BrsZFFmf.js +1 -0
  46. package/dist/assets/cpp-nwtcw6V-.js +1 -0
  47. package/dist/assets/crystal-Cj7dDBIL.js +1 -0
  48. package/dist/assets/csharp-oqKa8noW.js +1 -0
  49. package/dist/assets/css-Bjl9g7PY.js +1 -0
  50. package/dist/assets/csv-Dx-8-gkx.js +1 -0
  51. package/dist/assets/cue-CE9AQfxI.js +1 -0
  52. package/dist/assets/cypher-ClKdZ_lG.js +1 -0
  53. package/dist/assets/d-qD-0Kul2.js +1 -0
  54. package/dist/assets/dark-plus-Cs2F2srj.js +1 -0
  55. package/dist/assets/dart-CnvKMtbv.js +1 -0
  56. package/dist/assets/dax-BkyTk9wS.js +1 -0
  57. package/dist/assets/desktop-Dlh5hvp9.js +1 -0
  58. package/dist/assets/diff-woXpYk--.js +1 -0
  59. package/dist/assets/docker-IyjqRm3v.js +1 -0
  60. package/dist/assets/dotenv-_5a1GRtc.js +1 -0
  61. package/dist/assets/dracula-BHWKrbxM.js +1 -0
  62. package/dist/assets/dracula-soft-5eyTD99u.js +1 -0
  63. package/dist/assets/dream-maker-DW3nJb8Q.js +1 -0
  64. package/dist/assets/edge-CLyulaNo.js +1 -0
  65. package/dist/assets/elixir-D1qe5nvJ.js +1 -0
  66. package/dist/assets/elm-BFVadj03.js +1 -0
  67. package/dist/assets/emacs-lisp-B4R74twV.js +1 -0
  68. package/dist/assets/erb-DLGpISTK.js +1 -0
  69. package/dist/assets/erlang-Cphh6RMH.js +1 -0
  70. package/dist/assets/everforest-dark-sB-x3p7T.js +1 -0
  71. package/dist/assets/everforest-light-Df2xbC6M.js +1 -0
  72. package/dist/assets/fennel-DQxkIbk2.js +1 -0
  73. package/dist/assets/fish-BJitypiv.js +1 -0
  74. package/dist/assets/fluent-C03EYrpw.js +1 -0
  75. package/dist/assets/fortran-fixed-form-DEKoE2YW.js +1 -0
  76. package/dist/assets/fortran-free-form-CYNrtFtB.js +1 -0
  77. package/dist/assets/fsharp-D13ZGOAj.js +1 -0
  78. package/dist/assets/gdresource-C0sCabJj.js +1 -0
  79. package/dist/assets/gdscript-Cp2uCuqX.js +1 -0
  80. package/dist/assets/gdshader-CBce3t8t.js +1 -0
  81. package/dist/assets/genie-CV2tkWYe.js +1 -0
  82. package/dist/assets/gherkin-DExj1W_8.js +1 -0
  83. package/dist/assets/git-commit-BSykSTBG.js +1 -0
  84. package/dist/assets/git-rebase-BAH2F1ja.js +1 -0
  85. package/dist/assets/github-dark-C-LZuMrd.js +1 -0
  86. package/dist/assets/github-dark-default-DXG-b-1a.js +1 -0
  87. package/dist/assets/github-dark-dimmed-Bx1FflLF.js +1 -0
  88. package/dist/assets/github-dark-high-contrast-B_tTalzw.js +1 -0
  89. package/dist/assets/github-light-EUqPIrTm.js +1 -0
  90. package/dist/assets/github-light-default-BXViO-2h.js +1 -0
  91. package/dist/assets/github-light-high-contrast-B68TUdTA.js +1 -0
  92. package/dist/assets/gleam-CSRkHgEL.js +1 -0
  93. package/dist/assets/glimmer-js-Dd1uIqub.js +1 -0
  94. package/dist/assets/glimmer-ts-DjqoMFcz.js +1 -0
  95. package/dist/assets/glsl-D2nmnYHV.js +1 -0
  96. package/dist/assets/gn-ilITqXS6.js +1 -0
  97. package/dist/assets/gnuplot-7GGW24-e.js +1 -0
  98. package/dist/assets/go-rLFTqkRN.js +1 -0
  99. package/dist/assets/graphql-Cw77QnDJ.js +1 -0
  100. package/dist/assets/groovy-CacY0gHj.js +1 -0
  101. package/dist/assets/gruvbox-dark-hard-C820rvS2.js +1 -0
  102. package/dist/assets/gruvbox-dark-medium-BPjhmG05.js +1 -0
  103. package/dist/assets/gruvbox-dark-soft-MrdJrrXF.js +1 -0
  104. package/dist/assets/gruvbox-light-hard-BC_s9l72.js +1 -0
  105. package/dist/assets/gruvbox-light-medium-BAWPOn9u.js +1 -0
  106. package/dist/assets/gruvbox-light-soft-BSMLrYjP.js +1 -0
  107. package/dist/assets/hack-Bb9mpV0i.js +1 -0
  108. package/dist/assets/haml-CF8RwEu1.js +1 -0
  109. package/dist/assets/handlebars-D2zFsrot.js +1 -0
  110. package/dist/assets/haskell-D8IpX4py.js +1 -0
  111. package/dist/assets/haxe-OTjmBuCE.js +1 -0
  112. package/dist/assets/hcl-Dh228itO.js +1 -0
  113. package/dist/assets/hjson-CxZEssPk.js +1 -0
  114. package/dist/assets/hlsl-Cvrh5tZx.js +1 -0
  115. package/dist/assets/horizon-CE9ld1lL.js +1 -0
  116. package/dist/assets/horizon-bright-DSNQnXHK.js +1 -0
  117. package/dist/assets/houston-CsvMBhTu.js +1 -0
  118. package/dist/assets/html-DPsTyQ4s.js +1 -0
  119. package/dist/assets/html-derivative-uE_H-K2_.js +1 -0
  120. package/dist/assets/http-BLC6NeYh.js +1 -0
  121. package/dist/assets/hurl-DO46mQZ1.js +1 -0
  122. package/dist/assets/hxml-B0Qn7Nwc.js +1 -0
  123. package/dist/assets/hy-CZbG8q4J.js +1 -0
  124. package/dist/assets/imba-DsUTQ-LC.js +1 -0
  125. package/dist/assets/index-Ba666nDd.css +1 -0
  126. package/dist/assets/index-CnNrrRnN.js +897 -0
  127. package/dist/assets/ini-B5eOa1yu.js +1 -0
  128. package/dist/assets/java-kzUtURfb.js +1 -0
  129. package/dist/assets/javascript-hXYTfjcT.js +1 -0
  130. package/dist/assets/jinja-DW3Ipkk9.js +1 -0
  131. package/dist/assets/jison-Dtk5Sh4F.js +1 -0
  132. package/dist/assets/json-yvvy5IcZ.js +1 -0
  133. package/dist/assets/json5-BR5RXkoi.js +1 -0
  134. package/dist/assets/jsonc-CYpm1nAK.js +1 -0
  135. package/dist/assets/jsonl-CmCQp5Yx.js +1 -0
  136. package/dist/assets/jsonnet-CJTPZ8u_.js +1 -0
  137. package/dist/assets/jssm-DXw9l8Rf.js +1 -0
  138. package/dist/assets/jsx-CXY-Xklo.js +1 -0
  139. package/dist/assets/julia-B-djpp87.js +1 -0
  140. package/dist/assets/just-Dy_P1Mi8.js +1 -0
  141. package/dist/assets/kanagawa-dragon-CXtmUGW6.js +1 -0
  142. package/dist/assets/kanagawa-lotus-BN08jTvb.js +1 -0
  143. package/dist/assets/kanagawa-wave-CTweb8Dz.js +1 -0
  144. package/dist/assets/kdl-CsD5j6eV.js +1 -0
  145. package/dist/assets/kotlin-DhhofPvG.js +1 -0
  146. package/dist/assets/kusto-C7mF5XQf.js +1 -0
  147. package/dist/assets/laserwave-C_8bwKvT.js +1 -0
  148. package/dist/assets/latex-CeRzDjwd.js +1 -0
  149. package/dist/assets/lean-CewbzKMR.js +1 -0
  150. package/dist/assets/less-DVTAwKKz.js +1 -0
  151. package/dist/assets/light-plus-DVQuIRkW.js +1 -0
  152. package/dist/assets/liquid-C5oaVhR-.js +1 -0
  153. package/dist/assets/llvm-Cm23YOpf.js +1 -0
  154. package/dist/assets/log-BNLmms1o.js +1 -0
  155. package/dist/assets/logo-Cluzi2Zq.js +1 -0
  156. package/dist/assets/lua-CzZee3zd.js +1 -0
  157. package/dist/assets/luau-FMPmPwt6.js +1 -0
  158. package/dist/assets/make-Dixweg8N.js +1 -0
  159. package/dist/assets/markdown-BYOwaDjH.js +1 -0
  160. package/dist/assets/marko-DwJR36iE.js +1 -0
  161. package/dist/assets/material-theme-Bm3Qr25_.js +1 -0
  162. package/dist/assets/material-theme-darker-2IIEA8gg.js +1 -0
  163. package/dist/assets/material-theme-lighter-uhdI0v04.js +1 -0
  164. package/dist/assets/material-theme-ocean-CHQ94UKr.js +1 -0
  165. package/dist/assets/material-theme-palenight-B5W6OYN7.js +1 -0
  166. package/dist/assets/matlab-D7qyCx1q.js +1 -0
  167. package/dist/assets/mdc-Cz5KPxip.js +1 -0
  168. package/dist/assets/mdx-DQZ5AkYe.js +1 -0
  169. package/dist/assets/mermaid-Bk4SNUv9.js +1 -0
  170. package/dist/assets/min-dark-BSWPekZh.js +1 -0
  171. package/dist/assets/min-light-DDpmG2fV.js +1 -0
  172. package/dist/assets/mipsasm-BMqwQI7S.js +1 -0
  173. package/dist/assets/mojo-BgCJLMeH.js +1 -0
  174. package/dist/assets/monokai-CdkpiU2Y.js +1 -0
  175. package/dist/assets/moonbit-CaWjb8XO.js +1 -0
  176. package/dist/assets/move-B1IS1UjX.js +1 -0
  177. package/dist/assets/narrat-_X_XdTYD.js +1 -0
  178. package/dist/assets/nextflow-BJtWHP5T.js +1 -0
  179. package/dist/assets/nextflow-groovy-DJMQeKeT.js +1 -0
  180. package/dist/assets/nginx-DP8PKHqg.js +1 -0
  181. package/dist/assets/night-owl-DhmEMT88.js +1 -0
  182. package/dist/assets/night-owl-light-eJ-hLW7d.js +1 -0
  183. package/dist/assets/nim-DLj_luda.js +1 -0
  184. package/dist/assets/nix-IvuFDN5E.js +1 -0
  185. package/dist/assets/nord-Cb4Vim4T.js +1 -0
  186. package/dist/assets/nushell-DcLAeLz5.js +1 -0
  187. package/dist/assets/objective-c-D1A_Heim.js +1 -0
  188. package/dist/assets/objective-cpp-BsSzOQcm.js +1 -0
  189. package/dist/assets/ocaml-O90oeIOV.js +1 -0
  190. package/dist/assets/odin-B1RWQWA5.js +1 -0
  191. package/dist/assets/one-dark-pro-CLwyXe_n.js +1 -0
  192. package/dist/assets/one-light-D7Lr4KcI.js +1 -0
  193. package/dist/assets/openscad-BUDT5pXO.js +1 -0
  194. package/dist/assets/pascal-4ZHwLPI5.js +1 -0
  195. package/dist/assets/perl-gt0YvaTf.js +1 -0
  196. package/dist/assets/php-BPUC88QF.js +1 -0
  197. package/dist/assets/pkl-ot-7Btpt.js +1 -0
  198. package/dist/assets/plastic-DQwYfKfQ.js +1 -0
  199. package/dist/assets/plsql-DGHpHOYJ.js +1 -0
  200. package/dist/assets/po-BiJDBrnU.js +1 -0
  201. package/dist/assets/poimandres-DRFjx7u4.js +1 -0
  202. package/dist/assets/polar-C7UOKdEL.js +1 -0
  203. package/dist/assets/postcss-BXeXVLqQ.js +1 -0
  204. package/dist/assets/powerquery-DNMTfnFr.js +1 -0
  205. package/dist/assets/powershell-DshXNtvi.js +1 -0
  206. package/dist/assets/prisma-BsRQq5mF.js +1 -0
  207. package/dist/assets/prolog-iXnhIJG7.js +1 -0
  208. package/dist/assets/proto-DB4EqR-F.js +1 -0
  209. package/dist/assets/pug-DgFsRPbA.js +1 -0
  210. package/dist/assets/puppet-CDv2pdJW.js +1 -0
  211. package/dist/assets/purescript-9MfHhQsQ.js +1 -0
  212. package/dist/assets/python-gzcpVVnB.js +1 -0
  213. package/dist/assets/qml-C_LfdLXm.js +1 -0
  214. package/dist/assets/qmldir-DCQb3MpD.js +1 -0
  215. package/dist/assets/qss-Fe1Jh2GI.js +1 -0
  216. package/dist/assets/r-Pj2SwcAG.js +1 -0
  217. package/dist/assets/racket-DcIDlBhZ.js +1 -0
  218. package/dist/assets/raku-B3gFvitq.js +1 -0
  219. package/dist/assets/razor-BKc5ThWc.js +1 -0
  220. package/dist/assets/red-CJ3rzSJv.js +1 -0
  221. package/dist/assets/reg-CRGYupPL.js +1 -0
  222. package/dist/assets/regexp-BHCMzRa4.js +1 -0
  223. package/dist/assets/rel-BtDbiS_P.js +1 -0
  224. package/dist/assets/riscv-Ckw8ddFX.js +1 -0
  225. package/dist/assets/ron-VUp2lXgN.js +1 -0
  226. package/dist/assets/rose-pine-BthvhNj6.js +1 -0
  227. package/dist/assets/rose-pine-dawn-Dg85fqjY.js +1 -0
  228. package/dist/assets/rose-pine-moon-hon4tzzS.js +1 -0
  229. package/dist/assets/rosmsg-CAekHB0j.js +1 -0
  230. package/dist/assets/rst-D1Q1H8XX.js +1 -0
  231. package/dist/assets/ruby-aFDqyHwf.js +1 -0
  232. package/dist/assets/rust-Cfkwpbl8.js +1 -0
  233. package/dist/assets/sas-DUQasUvv.js +1 -0
  234. package/dist/assets/sass-DXrisJhu.js +1 -0
  235. package/dist/assets/scala-DKOlJaKm.js +1 -0
  236. package/dist/assets/scheme-DQCgrYNe.js +1 -0
  237. package/dist/assets/scss-DRMVx3p6.js +1 -0
  238. package/dist/assets/sdbl-bTVj8UrX.js +1 -0
  239. package/dist/assets/shaderlab-TOUzSsQk.js +1 -0
  240. package/dist/assets/shellscript-9nE2ns3B.js +1 -0
  241. package/dist/assets/shellsession-Ym61uyCB.js +1 -0
  242. package/dist/assets/slack-dark-DnToyrRv.js +1 -0
  243. package/dist/assets/slack-ochin-B2OO5cIa.js +1 -0
  244. package/dist/assets/smalltalk-B16xEiuN.js +1 -0
  245. package/dist/assets/snazzy-light-4G7pJPwS.js +1 -0
  246. package/dist/assets/solarized-dark-DV17i1UV.js +1 -0
  247. package/dist/assets/solarized-light-DSh2HLQt.js +1 -0
  248. package/dist/assets/solidity-CKzVLygQ.js +1 -0
  249. package/dist/assets/soy-C9F5-hVX.js +1 -0
  250. package/dist/assets/sparql-D_iOobhT.js +1 -0
  251. package/dist/assets/splunk-BC2Px7Mm.js +1 -0
  252. package/dist/assets/sql-DNRGB4_D.js +1 -0
  253. package/dist/assets/ssh-config-BgfXC-Er.js +1 -0
  254. package/dist/assets/stata-9CUIUM5m.js +1 -0
  255. package/dist/assets/stylus-B6D30XZt.js +1 -0
  256. package/dist/assets/surrealql-BKa1jBv8.js +1 -0
  257. package/dist/assets/svelte-l-AzXjIs.js +1 -0
  258. package/dist/assets/swift-DonLKvLd.js +1 -0
  259. package/dist/assets/synthwave-84-nFMaYfgc.js +1 -0
  260. package/dist/assets/system-verilog-DJ5XKQeo.js +1 -0
  261. package/dist/assets/systemd-BxMlprV5.js +1 -0
  262. package/dist/assets/talonscript-CohzipZa.js +1 -0
  263. package/dist/assets/tasl-DMoTqEGO.js +1 -0
  264. package/dist/assets/tcl-CZd0xW_V.js +1 -0
  265. package/dist/assets/templ-CcqG4x7p.js +1 -0
  266. package/dist/assets/terraform-DswuEJGm.js +1 -0
  267. package/dist/assets/tex-DqjZxgcw.js +1 -0
  268. package/dist/assets/tokyo-night-oM2G3aXe.js +1 -0
  269. package/dist/assets/toml-CcmNWLt0.js +1 -0
  270. package/dist/assets/ts-tags-7N5waLHg.js +1 -0
  271. package/dist/assets/tsv-sltzmVWM.js +1 -0
  272. package/dist/assets/tsx-CZDiJHa-.js +1 -0
  273. package/dist/assets/turtle-ByJddavk.js +1 -0
  274. package/dist/assets/twig-DnrUvKgH.js +1 -0
  275. package/dist/assets/typescript-CNLx8Xjf.js +1 -0
  276. package/dist/assets/typespec-BRdr0IET.js +1 -0
  277. package/dist/assets/typst-DI99ib-x.js +1 -0
  278. package/dist/assets/v-DETTlOr0.js +1 -0
  279. package/dist/assets/vala-zf12oZj6.js +1 -0
  280. package/dist/assets/vb-Djn5o6TS.js +1 -0
  281. package/dist/assets/verilog-CiiDBU1e.js +1 -0
  282. package/dist/assets/vesper-DdrHHSXu.js +1 -0
  283. package/dist/assets/vhdl-BroJfC0k.js +1 -0
  284. package/dist/assets/viml-DvXPmvsu.js +1 -0
  285. package/dist/assets/vitesse-black-fwtXNY1n.js +1 -0
  286. package/dist/assets/vitesse-dark-BZCL-v6S.js +1 -0
  287. package/dist/assets/vitesse-light-VbXTXTou.js +1 -0
  288. package/dist/assets/vue-St5TuCBW.js +1 -0
  289. package/dist/assets/vue-html-BQ_bILAj.js +1 -0
  290. package/dist/assets/vue-vine-BbKxMI1X.js +1 -0
  291. package/dist/assets/vyper-CgoNMtux.js +1 -0
  292. package/dist/assets/wasm-BnjxR4X6.js +1 -0
  293. package/dist/assets/wasm-ByWQv1Qj.js +1 -0
  294. package/dist/assets/wenyan-C8pVoKbM.js +1 -0
  295. package/dist/assets/wgsl-BsKzXJz4.js +1 -0
  296. package/dist/assets/wikitext-ClFFjSW2.js +1 -0
  297. package/dist/assets/wit-DdvCle-K.js +1 -0
  298. package/dist/assets/wolfram-DLL8P-h_.js +1 -0
  299. package/dist/assets/xml-Bz0xg06z.js +1 -0
  300. package/dist/assets/xsl-DC-2vw27.js +1 -0
  301. package/dist/assets/yaml-m0kezuu_.js +1 -0
  302. package/dist/assets/zenscript-BnlCZFoB.js +1 -0
  303. package/dist/assets/zig-CMLA9XwU.js +1 -0
  304. package/dist/icons.svg +24 -24
  305. package/dist/index.html +29 -13
  306. package/dist/llm-full.txt +298 -0
  307. package/dist/llm.txt +110 -0
  308. package/dist/ui-cli.cjs +1 -1
  309. package/package.json +10 -5
  310. package/registry.json +179 -121
  311. package/scripts/build-cli.mjs +12 -12
  312. package/scripts/build-registry.ts +261 -261
  313. package/scripts/ui-cli.ts +1333 -1333
  314. package/dist/assets/index-1YAQdTE0.css +0 -2
  315. package/dist/assets/index-BsQ6nn74.js +0 -237
  316. package/dist/ui-cli.js +0 -124
@@ -0,0 +1 @@
1
+ import{t as e}from"./index-CnNrrRnN.js";import{t}from"./java-kzUtURfb.js";var n=e({default:()=>i}),r=Object.freeze(JSON.parse(`{"displayName":"XML","name":"xml","patterns":[{"begin":"(<\\\\?)\\\\s*([-0-9A-Z_a-z]+)","captures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"entity.name.tag.xml"}},"end":"(\\\\?>)","name":"meta.tag.preprocessor.xml","patterns":[{"match":" ([-A-Za-z]+)","name":"entity.other.attribute-name.xml"},{"include":"#doublequotedString"},{"include":"#singlequotedString"}]},{"begin":"(<!)(DOCTYPE)\\\\s+([:A-Z_a-z][-.0-:A-Z_a-z]*)","captures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"keyword.other.doctype.xml"},"3":{"name":"variable.language.documentroot.xml"}},"end":"\\\\s*(>)","name":"meta.tag.sgml.doctype.xml","patterns":[{"include":"#internalSubset"}]},{"include":"#comments"},{"begin":"(<)((?:([-0-9A-Z_a-z]+)(:))?([-0-:A-Z_a-z]+))(?=(\\\\s[^>]*)?></\\\\2>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"entity.name.tag.xml"},"3":{"name":"entity.name.tag.namespace.xml"},"4":{"name":"punctuation.separator.namespace.xml"},"5":{"name":"entity.name.tag.localname.xml"}},"end":"(>)(</)((?:([-0-9A-Z_a-z]+)(:))?([-0-:A-Z_a-z]+))(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"punctuation.definition.tag.xml"},"3":{"name":"entity.name.tag.xml"},"4":{"name":"entity.name.tag.namespace.xml"},"5":{"name":"punctuation.separator.namespace.xml"},"6":{"name":"entity.name.tag.localname.xml"},"7":{"name":"punctuation.definition.tag.xml"}},"name":"meta.tag.no-content.xml","patterns":[{"include":"#tagStuff"}]},{"begin":"(</?)(?:([-.\\\\w]+)((:)))?([-.:\\\\w]+)","captures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"entity.name.tag.namespace.xml"},"3":{"name":"entity.name.tag.xml"},"4":{"name":"punctuation.separator.namespace.xml"},"5":{"name":"entity.name.tag.localname.xml"}},"end":"(/?>)","name":"meta.tag.xml","patterns":[{"include":"#tagStuff"}]},{"include":"#entity"},{"include":"#bare-ampersand"},{"begin":"<%@","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.xml"}},"end":"%>","endCaptures":{"0":{"name":"punctuation.section.embedded.end.xml"}},"name":"source.java-props.embedded.xml","patterns":[{"match":"page|include|taglib","name":"keyword.other.page-props.xml"}]},{"begin":"<%[!=]?(?!--)","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.xml"}},"end":"(?!--)%>","endCaptures":{"0":{"name":"punctuation.section.embedded.end.xml"}},"name":"source.java.embedded.xml","patterns":[{"include":"source.java"}]},{"begin":"<!\\\\[CDATA\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"end":"]]>","endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}},"name":"string.unquoted.cdata.xml"}],"repository":{"EntityDecl":{"begin":"(<!)(ENTITY)\\\\s+(%\\\\s+)?([:A-Z_a-z][-.0-:A-Z_a-z]*)(\\\\s+(?:SYSTEM|PUBLIC)\\\\s+)?","captures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"keyword.other.entity.xml"},"3":{"name":"punctuation.definition.entity.xml"},"4":{"name":"variable.language.entity.xml"},"5":{"name":"keyword.other.entitytype.xml"}},"end":"(>)","patterns":[{"include":"#doublequotedString"},{"include":"#singlequotedString"}]},"bare-ampersand":{"match":"&","name":"invalid.illegal.bad-ampersand.xml"},"comments":{"patterns":[{"begin":"<%--","captures":{"0":{"name":"punctuation.definition.comment.xml"},"end":"--%>","name":"comment.block.xml"}},{"begin":"<!--","captures":{"0":{"name":"punctuation.definition.comment.xml"}},"end":"-->","name":"comment.block.xml","patterns":[{"begin":"--(?!>)","captures":{"0":{"name":"invalid.illegal.bad-comments-or-CDATA.xml"}}}]}]},"doublequotedString":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}},"name":"string.quoted.double.xml","patterns":[{"include":"#entity"},{"include":"#bare-ampersand"}]},"entity":{"captures":{"1":{"name":"punctuation.definition.constant.xml"},"3":{"name":"punctuation.definition.constant.xml"}},"match":"(&)([:A-Z_a-z][-.0-:A-Z_a-z]*|#[0-9]+|#x\\\\h+)(;)","name":"constant.character.entity.xml"},"internalSubset":{"begin":"(\\\\[)","captures":{"1":{"name":"punctuation.definition.constant.xml"}},"end":"(])","name":"meta.internalsubset.xml","patterns":[{"include":"#EntityDecl"},{"include":"#parameterEntity"},{"include":"#comments"}]},"parameterEntity":{"captures":{"1":{"name":"punctuation.definition.constant.xml"},"3":{"name":"punctuation.definition.constant.xml"}},"match":"(%)([:A-Z_a-z][-.0-:A-Z_a-z]*)(;)","name":"constant.character.parameter-entity.xml"},"singlequotedString":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}},"name":"string.quoted.single.xml","patterns":[{"include":"#entity"},{"include":"#bare-ampersand"}]},"tagStuff":{"patterns":[{"captures":{"1":{"name":"entity.other.attribute-name.namespace.xml"},"2":{"name":"entity.other.attribute-name.xml"},"3":{"name":"punctuation.separator.namespace.xml"},"4":{"name":"entity.other.attribute-name.localname.xml"}},"match":"(?:^|\\\\s+)(?:([-.\\\\w]+)((:)))?([-.:\\\\w]+)\\\\s*="},{"include":"#doublequotedString"},{"include":"#singlequotedString"}]}},"scopeName":"text.xml","embeddedLangs":["java"]}`)),i=[...t,r];export{n,i as t};
@@ -0,0 +1 @@
1
+ import{t as e}from"./xml-Bz0xg06z.js";var t=Object.freeze(JSON.parse(`{"displayName":"XSL","name":"xsl","patterns":[{"begin":"(<)(xsl)((:))(template)","captures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"entity.name.tag.namespace.xml"},"3":{"name":"entity.name.tag.xml"},"4":{"name":"punctuation.separator.namespace.xml"},"5":{"name":"entity.name.tag.localname.xml"}},"end":"(>)","name":"meta.tag.xml.template","patterns":[{"captures":{"1":{"name":"entity.other.attribute-name.namespace.xml"},"2":{"name":"entity.other.attribute-name.xml"},"3":{"name":"punctuation.separator.namespace.xml"},"4":{"name":"entity.other.attribute-name.localname.xml"}},"match":" (?:([-0-9A-Z_a-z]+)((:)))?([-A-Za-z]+)"},{"include":"#doublequotedString"},{"include":"#singlequotedString"}]},{"include":"text.xml"}],"repository":{"doublequotedString":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}},"name":"string.quoted.double.xml"},"singlequotedString":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}},"name":"string.quoted.single.xml"}},"scopeName":"text.xml.xsl","embeddedLangs":["xml"]}`)),n=[...e,t];export{n as default};
@@ -0,0 +1 @@
1
+ import{t as e}from"./index-CnNrrRnN.js";var t=e({default:()=>n}),n=[Object.freeze(JSON.parse(`{"displayName":"YAML","fileTypes":["yaml","yml","rviz","reek","clang-format","yaml-tmlanguage","syntax","sublime-syntax"],"firstLineMatch":"^%YAML( ?1.\\\\d+)?","name":"yaml","patterns":[{"include":"#comment"},{"include":"#property"},{"include":"#directive"},{"match":"^---","name":"entity.other.document.begin.yaml"},{"match":"^\\\\.{3}","name":"entity.other.document.end.yaml"},{"include":"#node"}],"repository":{"block-collection":{"patterns":[{"include":"#block-sequence"},{"include":"#block-mapping"}]},"block-mapping":{"patterns":[{"include":"#block-pair"}]},"block-node":{"patterns":[{"include":"#prototype"},{"include":"#block-scalar"},{"include":"#block-collection"},{"include":"#flow-scalar-plain-out"},{"include":"#flow-node"}]},"block-pair":{"patterns":[{"begin":"\\\\?","beginCaptures":{"1":{"name":"punctuation.definition.key-value.begin.yaml"}},"end":"(?=\\\\?)|^ *(:)|(:)","endCaptures":{"1":{"name":"punctuation.separator.key-value.mapping.yaml"},"2":{"name":"invalid.illegal.expected-newline.yaml"}},"name":"meta.block-mapping.yaml","patterns":[{"include":"#block-node"}]},{"begin":"(?=(?:[^-\\\\]!\\"#%\\\\&'*,:>?@\\\\[\`{|}\\\\s]|[-:?]\\\\S)([^:\\\\s]|:\\\\S|\\\\s+(?![#\\\\s]))*\\\\s*:(\\\\s|$))","end":"(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$))","patterns":[{"include":"#flow-scalar-plain-out-implicit-type"},{"begin":"[^-\\\\]!\\"#%\\\\&'*,:>?@\\\\[\`{|}\\\\s]|[-:?]\\\\S","beginCaptures":{"0":{"name":"entity.name.tag.yaml"}},"contentName":"entity.name.tag.yaml","end":"(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$))","name":"string.unquoted.plain.out.yaml"}]},{"match":":(?=\\\\s|$)","name":"punctuation.separator.key-value.mapping.yaml"}]},"block-scalar":{"begin":"(?:(\\\\|)|(>))([1-9])?([-+])?(.*\\\\n?)","beginCaptures":{"1":{"name":"keyword.control.flow.block-scalar.literal.yaml"},"2":{"name":"keyword.control.flow.block-scalar.folded.yaml"},"3":{"name":"constant.numeric.indentation-indicator.yaml"},"4":{"name":"storage.modifier.chomping-indicator.yaml"},"5":{"patterns":[{"include":"#comment"},{"match":".+","name":"invalid.illegal.expected-comment-or-newline.yaml"}]}},"end":"^(?=\\\\S)|(?!\\\\G)","patterns":[{"begin":"^( +)(?! )","end":"^(?!\\\\1|\\\\s*$)","name":"string.unquoted.block.yaml"}]},"block-sequence":{"match":"(-)(?!\\\\S)","name":"punctuation.definition.block.sequence.item.yaml"},"comment":{"begin":"(?:^([\\\\t ]*)|[\\\\t ]+)(?=#\\\\p{print}*$)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.yaml"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.yaml"}},"end":"\\\\n","name":"comment.line.number-sign.yaml"}]},"directive":{"begin":"^%","beginCaptures":{"0":{"name":"punctuation.definition.directive.begin.yaml"}},"end":"(?=$|[\\\\t ]+($|#))","name":"meta.directive.yaml","patterns":[{"captures":{"1":{"name":"keyword.other.directive.yaml.yaml"},"2":{"name":"constant.numeric.yaml-version.yaml"}},"match":"\\\\G(YAML)[\\\\t ]+(\\\\d+\\\\.\\\\d+)"},{"captures":{"1":{"name":"keyword.other.directive.tag.yaml"},"2":{"name":"storage.type.tag-handle.yaml"},"3":{"name":"support.type.tag-prefix.yaml"}},"match":"\\\\G(TAG)(?:[\\\\t ]+(!(?:[-0-9A-Za-z]*!)?)(?:[\\\\t ]+(!(?:%\\\\h{2}|[]!#$\\\\&-;=?-\\\\[_a-z~])*|(?![]!,\\\\[{}])(?:%\\\\h{2}|[]!#$\\\\&-;=?-\\\\[_a-z~])+))?)?"},{"captures":{"1":{"name":"support.other.directive.reserved.yaml"},"2":{"name":"string.unquoted.directive-name.yaml"},"3":{"name":"string.unquoted.directive-parameter.yaml"}},"match":"\\\\G(\\\\w+)(?:[\\\\t ]+(\\\\w+)(?:[\\\\t ]+(\\\\w+))?)?"},{"match":"\\\\S+","name":"invalid.illegal.unrecognized.yaml"}]},"flow-alias":{"captures":{"1":{"name":"keyword.control.flow.alias.yaml"},"2":{"name":"punctuation.definition.alias.yaml"},"3":{"name":"variable.other.alias.yaml"},"4":{"name":"invalid.illegal.character.anchor.yaml"}},"match":"((\\\\*))([^],/\\\\[{}\\\\s]+)([^],}\\\\s]\\\\S*)?"},"flow-collection":{"patterns":[{"include":"#flow-sequence"},{"include":"#flow-mapping"}]},"flow-mapping":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.mapping.begin.yaml"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.mapping.end.yaml"}},"name":"meta.flow-mapping.yaml","patterns":[{"include":"#prototype"},{"match":",","name":"punctuation.separator.mapping.yaml"},{"include":"#flow-pair"}]},"flow-node":{"patterns":[{"include":"#prototype"},{"include":"#flow-alias"},{"include":"#flow-collection"},{"include":"#flow-scalar"}]},"flow-pair":{"patterns":[{"begin":"\\\\?","beginCaptures":{"0":{"name":"punctuation.definition.key-value.begin.yaml"}},"end":"(?=[],}])","name":"meta.flow-pair.explicit.yaml","patterns":[{"include":"#prototype"},{"include":"#flow-pair"},{"include":"#flow-node"},{"begin":":(?=\\\\s|$|[],\\\\[{}])","beginCaptures":{"0":{"name":"punctuation.separator.key-value.mapping.yaml"}},"end":"(?=[],}])","patterns":[{"include":"#flow-value"}]}]},{"begin":"(?=(?:[^-\\\\]!\\"#%\\\\&'*,:>?@\\\\[\`{|}\\\\s]|[-:?][^],\\\\[{}\\\\s])([^],:\\\\[{}\\\\s]|:[^],\\\\[{}\\\\s]|\\\\s+(?![#\\\\s]))*\\\\s*:(\\\\s|$))","end":"(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$)|\\\\s*:[],\\\\[{}]|\\\\s*[],\\\\[{}])","name":"meta.flow-pair.key.yaml","patterns":[{"include":"#flow-scalar-plain-in-implicit-type"},{"begin":"[^-\\\\]!\\"#%\\\\&'*,:>?@\\\\[\`{|}\\\\s]|[-:?][^],\\\\[{}\\\\s]","beginCaptures":{"0":{"name":"entity.name.tag.yaml"}},"contentName":"entity.name.tag.yaml","end":"(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$)|\\\\s*:[],\\\\[{}]|\\\\s*[],\\\\[{}])","name":"string.unquoted.plain.in.yaml"}]},{"include":"#flow-node"},{"begin":":(?=\\\\s|$|[],\\\\[{}])","captures":{"0":{"name":"punctuation.separator.key-value.mapping.yaml"}},"end":"(?=[],}])","name":"meta.flow-pair.yaml","patterns":[{"include":"#flow-value"}]}]},"flow-scalar":{"patterns":[{"include":"#flow-scalar-double-quoted"},{"include":"#flow-scalar-single-quoted"},{"include":"#flow-scalar-plain-in"}]},"flow-scalar-double-quoted":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.yaml"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.yaml"}},"name":"string.quoted.double.yaml","patterns":[{"match":"\\\\\\\\([ \\"/0LN\\\\\\\\_abefnprtv]|x\\\\d\\\\d|u\\\\d{4}|U\\\\d{8})","name":"constant.character.escape.yaml"},{"match":"\\\\\\\\\\\\n","name":"constant.character.escape.double-quoted.newline.yaml"}]},"flow-scalar-plain-in":{"patterns":[{"include":"#flow-scalar-plain-in-implicit-type"},{"begin":"[^-\\\\]!\\"#%\\\\&'*,:>?@\\\\[\`{|}\\\\s]|[-:?][^],\\\\[{}\\\\s]","end":"(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$)|\\\\s*:[],\\\\[{}]|\\\\s*[],\\\\[{}])","name":"string.unquoted.plain.in.yaml"}]},"flow-scalar-plain-in-implicit-type":{"patterns":[{"captures":{"1":{"name":"constant.language.null.yaml"},"2":{"name":"constant.language.boolean.yaml"},"3":{"name":"constant.numeric.integer.yaml"},"4":{"name":"constant.numeric.float.yaml"},"5":{"name":"constant.other.timestamp.yaml"},"6":{"name":"constant.language.value.yaml"},"7":{"name":"constant.language.merge.yaml"}},"match":"(?:(null|Null|NULL|~)|([Yy]|yes|Yes|YES|[Nn]|no|No|NO|true|True|TRUE|false|False|FALSE|on|On|ON|off|Off|OFF)|([-+]?0b[01_]+|[-+]?0[0-7_]+|[-+]?(?:0|[1-9][0-9_]*)|[-+]?0x[_\\\\h]+|[-+]?[1-9][0-9_]*(?::[0-5]?[0-9])+)|([-+]?(?:[0-9][0-9_]*)?\\\\.[.0-9]*(?:[Ee][-+][0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\\\.[0-9_]*|[-+]?\\\\.(?:inf|Inf|INF)|\\\\.(?:nan|NaN|NAN))|(\\\\d{4}-\\\\d{2}-\\\\d{2}|\\\\d{4}-\\\\d{1,2}-\\\\d{1,2}(?:[Tt]|[\\\\t ]+)\\\\d{1,2}:\\\\d{2}:\\\\d{2}(?:\\\\.\\\\d*)?(?:[\\\\t ]*Z|[-+]\\\\d{1,2}(?::\\\\d{1,2})?)?)|(=)|(<<))(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$)|\\\\s*:[],\\\\[{}]|\\\\s*[],\\\\[{}])"}]},"flow-scalar-plain-out":{"patterns":[{"include":"#flow-scalar-plain-out-implicit-type"},{"begin":"[^-\\\\]!\\"#%\\\\&'*,:>?@\\\\[\`{|}\\\\s]|[-:?]\\\\S","end":"(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$))","name":"string.unquoted.plain.out.yaml"}]},"flow-scalar-plain-out-implicit-type":{"patterns":[{"captures":{"1":{"name":"constant.language.null.yaml"},"2":{"name":"constant.language.boolean.yaml"},"3":{"name":"constant.numeric.integer.yaml"},"4":{"name":"constant.numeric.float.yaml"},"5":{"name":"constant.other.timestamp.yaml"},"6":{"name":"constant.language.value.yaml"},"7":{"name":"constant.language.merge.yaml"}},"match":"(?:(null|Null|NULL|~)|([Yy]|yes|Yes|YES|[Nn]|no|No|NO|true|True|TRUE|false|False|FALSE|on|On|ON|off|Off|OFF)|([-+]?0b[01_]+|[-+]?0[0-7_]+|[-+]?(?:0|[1-9][0-9_]*)|[-+]?0x[_\\\\h]+|[-+]?[1-9][0-9_]*(?::[0-5]?[0-9])+)|([-+]?(?:[0-9][0-9_]*)?\\\\.[.0-9]*(?:[Ee][-+][0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\\\.[0-9_]*|[-+]?\\\\.(?:inf|Inf|INF)|\\\\.(?:nan|NaN|NAN))|(\\\\d{4}-\\\\d{2}-\\\\d{2}|\\\\d{4}-\\\\d{1,2}-\\\\d{1,2}(?:[Tt]|[\\\\t ]+)\\\\d{1,2}:\\\\d{2}:\\\\d{2}(?:\\\\.\\\\d*)?(?:[\\\\t ]*Z|[-+]\\\\d{1,2}(?::\\\\d{1,2})?)?)|(=)|(<<))(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$))"}]},"flow-scalar-single-quoted":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.yaml"}},"end":"'(?!')","endCaptures":{"0":{"name":"punctuation.definition.string.end.yaml"}},"name":"string.quoted.single.yaml","patterns":[{"match":"''","name":"constant.character.escape.single-quoted.yaml"}]},"flow-sequence":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.sequence.begin.yaml"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.sequence.end.yaml"}},"name":"meta.flow-sequence.yaml","patterns":[{"include":"#prototype"},{"match":",","name":"punctuation.separator.sequence.yaml"},{"include":"#flow-pair"},{"include":"#flow-node"}]},"flow-value":{"patterns":[{"begin":"\\\\G(?![],}])","end":"(?=[],}])","name":"meta.flow-pair.value.yaml","patterns":[{"include":"#flow-node"}]}]},"node":{"patterns":[{"include":"#block-node"}]},"property":{"begin":"(?=[!\\\\&])","end":"(?!\\\\G)","name":"meta.property.yaml","patterns":[{"captures":{"1":{"name":"keyword.control.property.anchor.yaml"},"2":{"name":"punctuation.definition.anchor.yaml"},"3":{"name":"entity.name.type.anchor.yaml"},"4":{"name":"invalid.illegal.character.anchor.yaml"}},"match":"\\\\G((&))([^],/\\\\[{}\\\\s]+)(\\\\S+)?"},{"match":"\\\\G!(?:<(?:%\\\\h{2}|[]!#$\\\\&-;=?-\\\\[_a-z~])+>|(?:[-0-9A-Za-z]*!)?(?:%\\\\h{2}|[#$\\\\&-+\\\\--;=?-Z_a-z~])+|)(?=[\\\\t ]|$)","name":"storage.type.tag-handle.yaml"},{"match":"\\\\S+","name":"invalid.illegal.tag-handle.yaml"}]},"prototype":{"patterns":[{"include":"#comment"},{"include":"#property"}]}},"scopeName":"source.yaml","aliases":["yml"]}`))];export{t as n,n as t};
@@ -0,0 +1 @@
1
+ var e=[Object.freeze(JSON.parse(`{"displayName":"ZenScript","fileTypes":["zs"],"name":"zenscript","patterns":[{"match":"\\\\b((0([Xx])\\\\h*)|(([0-9]+\\\\.?[0-9]*)|(\\\\.[0-9]+))(([Ee])([-+])?[0-9]+)?)([DFLUdflu]|UL|ul)?\\\\b","name":"constant.numeric.zenscript"},{"match":"\\\\b-?(0[BOXbox])(0|[1-9A-Fa-f][_\\\\h]*)[A-Z_a-z]*\\\\b","name":"constant.numeric.zenscript"},{"include":"#code"},{"match":"\\\\b((?:[a-z]\\\\w*\\\\.)*[A-Z]+\\\\w*)(?=\\\\[)","name":"storage.type.object.array.zenscript"}],"repository":{"brackets":{"patterns":[{"captures":{"1":{"name":"keyword.control.zenscript"},"2":{"name":"keyword.other.zenscript"},"3":{"name":"keyword.control.zenscript"},"4":{"name":"variable.other.zenscript"},"5":{"name":"keyword.control.zenscript"},"6":{"name":"constant.numeric.zenscript"},"7":{"name":"keyword.control.zenscript"}},"match":"(<)\\\\b(.*?)(:(.*?(:(\\\\*|\\\\d+)?)?)?)(>)","name":"keyword.other.zenscript"}]},"class":{"captures":{"1":{"name":"storage.type.zenscript"},"2":{"name":"entity.name.type.class.zenscript"}},"match":"(zenClass)\\\\s+(\\\\w+)","name":"meta.class.zenscript"},"code":{"patterns":[{"include":"#class"},{"include":"#functions"},{"include":"#dots"},{"include":"#quotes"},{"include":"#brackets"},{"include":"#comments"},{"include":"#var"},{"include":"#keywords"},{"include":"#constants"},{"include":"#operators"}]},"comments":{"patterns":[{"match":"//[^\\\\n]*","name":"comment.line.double=slash"},{"begin":"/\\\\*","beginCaptures":{"0":{"name":"comment.block"}},"end":"\\\\*/","endCaptures":{"0":{"name":"comment.block"}},"name":"comment.block"}]},"dots":{"captures":{"1":{"name":"storage.type.zenscript"},"2":{"name":"keyword.control.zenscript"},"5":{"name":"keyword.control.zenscript"}},"match":"\\\\b(\\\\w+)(\\\\.)(\\\\w+)((\\\\.)(\\\\w+))*","name":"plain.text.zenscript"},"functions":{"captures":{"0":{"name":"storage.type.function.zenscript"},"1":{"name":"entity.name.function.zenscript"}},"match":"function\\\\s+([$A-Z_a-z][$\\\\w]*)\\\\s*(?=\\\\()","name":"meta.function.zenscript"},"keywords":{"patterns":[{"match":"\\\\b(instanceof|get|implements|set|import|function|override|const|if|else|do|while|for|throw|panic|lock|try|catch|finally|return|break|continue|switch|case|default|in|is|as|match|throws|super|new)\\\\b","name":"keyword.control.zenscript"},{"match":"\\\\b(zenClass|zenConstructor|alias|class|interface|enum|struct|expand|variant|set|void|bool|byte|sbyte|short|ushort|int|uint|long|ulong|usize|float|double|char|string)\\\\b","name":"storage.type.zenscript"},{"match":"\\\\b(variant|abstract|final|private|public|export|internal|static|protected|implicit|virtual|extern|immutable)\\\\b","name":"storage.modifier.zenscript"},{"match":"\\\\b(Native|Precondition)\\\\b","name":"entity.other.attribute-name"},{"match":"\\\\b(null|true|false)\\\\b","name":"constant.language"}]},"operators":{"patterns":[{"match":"\\\\b(\\\\.\\\\.??|\\\\.\\\\.\\\\.|[+,]|\\\\+=|\\\\+\\\\+|-=??|--|~=??|\\\\*=??|/=??|%=??|\\\\|=??|\\\\|\\\\||&=??|&&|\\\\^=??|\\\\?\\\\.??|\\\\?\\\\?|<=??|<<=??|>=??|>>=??|>>>=??|=>?|===??|!=??|!==|[$\`])\\\\b","name":"keyword.control"},{"match":"\\\\b([:;])\\\\b","name":"keyword.control"}]},"quotes":{"patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.zenscript"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.zenscript"}},"name":"string.quoted.double.zenscript","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.zenscript"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.zenscript"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.zenscript"}},"name":"string.quoted.single.zenscript","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.zenscript"}]}]},"var":{"match":"\\\\b(va[lr])\\\\b","name":"storage.type"}},"scopeName":"source.zenscript"}`))];export{e as default};
@@ -0,0 +1 @@
1
+ var e=[Object.freeze(JSON.parse(`{"displayName":"Zig","fileTypes":["zig","zon"],"name":"zig","patterns":[{"include":"#comments"},{"include":"#strings"},{"include":"#keywords"},{"include":"#operators"},{"include":"#punctuation"},{"include":"#numbers"},{"include":"#support"},{"include":"#variables"}],"repository":{"commentContents":{"patterns":[{"match":"\\\\b(TODO|FIXME|XXX|NOTE)\\\\b:?","name":"keyword.todo.zig"}]},"comments":{"patterns":[{"begin":"//[!/](?=[^/])","end":"$","name":"comment.line.documentation.zig","patterns":[{"include":"#commentContents"}]},{"begin":"//","end":"$","name":"comment.line.double-slash.zig","patterns":[{"include":"#commentContents"}]}]},"keywords":{"patterns":[{"match":"\\\\binline\\\\b(?!\\\\s*\\\\bfn\\\\b)","name":"keyword.control.repeat.zig"},{"match":"\\\\b(while|for)\\\\b","name":"keyword.control.repeat.zig"},{"match":"\\\\b(extern|packed|export|pub|noalias|inline|comptime|volatile|align|linksection|threadlocal|allowzero|noinline|callconv)\\\\b","name":"keyword.storage.zig"},{"match":"\\\\b(struct|enum|union|opaque)\\\\b","name":"keyword.structure.zig"},{"match":"\\\\b(asm|unreachable)\\\\b","name":"keyword.statement.zig"},{"match":"\\\\b(break|return|continue|defer|errdefer)\\\\b","name":"keyword.control.flow.zig"},{"match":"\\\\b(resume|suspend|nosuspend)\\\\b","name":"keyword.control.async.zig"},{"match":"\\\\b(try|catch)\\\\b","name":"keyword.control.trycatch.zig"},{"match":"\\\\b(if|else|switch|orelse)\\\\b","name":"keyword.control.conditional.zig"},{"match":"\\\\b(null|undefined)\\\\b","name":"keyword.constant.default.zig"},{"match":"\\\\b(true|false)\\\\b","name":"keyword.constant.bool.zig"},{"match":"\\\\b(test|and|or)\\\\b","name":"keyword.default.zig"},{"match":"\\\\b(bool|void|noreturn|type|error|anyerror|anyframe|anytype|anyopaque)\\\\b","name":"keyword.type.zig"},{"match":"\\\\b(f16|f32|f64|f80|f128|u\\\\d+|i\\\\d+|isize|usize|comptime_int|comptime_float)\\\\b","name":"keyword.type.integer.zig"},{"match":"\\\\b(c_(?:char|short|ushort|int|uint|long|ulong|longlong|ulonglong|longdouble))\\\\b","name":"keyword.type.c.zig"}]},"numbers":{"patterns":[{"match":"\\\\b0x\\\\h[_\\\\h]*(\\\\.\\\\h[_\\\\h]*)?([Pp][-+]?[_\\\\h]+)?\\\\b","name":"constant.numeric.hexfloat.zig"},{"match":"\\\\b[0-9][0-9_]*(\\\\.[0-9][0-9_]*)?([Ee][-+]?[0-9_]+)?\\\\b","name":"constant.numeric.float.zig"},{"match":"\\\\b[0-9][0-9_]*\\\\b","name":"constant.numeric.decimal.zig"},{"match":"\\\\b0x[_\\\\h]+\\\\b","name":"constant.numeric.hexadecimal.zig"},{"match":"\\\\b0o[0-7_]+\\\\b","name":"constant.numeric.octal.zig"},{"match":"\\\\b0b[01_]+\\\\b","name":"constant.numeric.binary.zig"},{"match":"\\\\b[0-9](([EPep][-+])|[0-9A-Z_a-z])*(\\\\.(([EPep][-+])|[0-9A-Z_a-z])*)?([EPep][-+])?[0-9A-Z_a-z]*\\\\b","name":"constant.numeric.invalid.zig"}]},"operators":{"patterns":[{"match":"(?<=\\\\[)\\\\*c(?=])","name":"keyword.operator.c-pointer.zig"},{"match":"\\\\b((and|or))\\\\b|(==|!=|<=|>=|[<>])","name":"keyword.operator.comparison.zig"},{"match":"(-%?|\\\\+%?|\\\\*%?|[%/])=?","name":"keyword.operator.arithmetic.zig"},{"match":"(<<%?|>>|[!\\\\&^|~])=?","name":"keyword.operator.bitwise.zig"},{"match":"(==|\\\\+\\\\+|\\\\*\\\\*|->)","name":"keyword.operator.special.zig"},{"match":"=","name":"keyword.operator.assignment.zig"},{"match":"\\\\?","name":"keyword.operator.question.zig"}]},"punctuation":{"patterns":[{"match":"\\\\.","name":"punctuation.accessor.zig"},{"match":",","name":"punctuation.comma.zig"},{"match":":","name":"punctuation.separator.key-value.zig"},{"match":";","name":"punctuation.terminator.statement.zig"}]},"stringcontent":{"patterns":[{"match":"\\\\\\\\([\\"'\\\\\\\\nrt]|(x\\\\h{2})|(u\\\\{\\\\h+}))","name":"constant.character.escape.zig"},{"match":"\\\\\\\\.","name":"invalid.illegal.unrecognized-string-escape.zig"}]},"strings":{"patterns":[{"begin":"\\"","end":"\\"","name":"string.quoted.double.zig","patterns":[{"include":"#stringcontent"}]},{"begin":"\\\\\\\\\\\\\\\\","end":"$","name":"string.multiline.zig"},{"match":"'([^'\\\\\\\\]|\\\\\\\\(x\\\\h{2}|[012][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.))'","name":"string.quoted.single.zig"}]},"support":{"patterns":[{"match":"@[A-Z_a-z][0-9A-Z_a-z]*","name":"support.function.builtin.zig"}]},"variables":{"patterns":[{"name":"meta.function.declaration.zig","patterns":[{"captures":{"1":{"name":"storage.type.function.zig"},"2":{"name":"entity.name.type.zig"}},"match":"\\\\b(fn)\\\\s+([A-Z][0-9A-Za-z]*)\\\\b"},{"captures":{"1":{"name":"storage.type.function.zig"},"2":{"name":"entity.name.function.zig"}},"match":"\\\\b(fn)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\b"},{"begin":"\\\\b(fn)\\\\s+@\\"","beginCaptures":{"1":{"name":"storage.type.function.zig"}},"end":"\\"","name":"entity.name.function.string.zig","patterns":[{"include":"#stringcontent"}]},{"match":"\\\\b(const|var|fn)\\\\b","name":"keyword.default.zig"}]},{"name":"meta.function.call.zig","patterns":[{"match":"([A-Z][0-9A-Za-z]*)(?=\\\\s*\\\\()","name":"entity.name.type.zig"},{"match":"([A-Z_a-z][0-9A-Z_a-z]*)(?=\\\\s*\\\\()","name":"entity.name.function.zig"}]},{"name":"meta.variable.zig","patterns":[{"match":"\\\\b[A-Z_a-z][0-9A-Z_a-z]*\\\\b","name":"variable.zig"},{"begin":"@\\"","end":"\\"","name":"variable.string.zig","patterns":[{"include":"#stringcontent"}]}]}]}},"scopeName":"source.zig"}`))];export{e as default};
package/dist/icons.svg CHANGED
@@ -1,24 +1,24 @@
1
- <svg xmlns="http://www.w3.org/2000/svg">
2
- <symbol id="bluesky-icon" viewBox="0 0 16 17">
3
- <g clip-path="url(#bluesky-clip)"><path fill="#08060d" d="M7.75 7.735c-.693-1.348-2.58-3.86-4.334-5.097-1.68-1.187-2.32-.981-2.74-.79C.188 2.065.1 2.812.1 3.251s.241 3.602.398 4.13c.52 1.744 2.367 2.333 4.07 2.145-2.495.37-4.71 1.278-1.805 4.512 3.196 3.309 4.38-.71 4.987-2.746.608 2.036 1.307 5.91 4.93 2.746 2.72-2.746.747-4.143-1.747-4.512 1.702.189 3.55-.4 4.07-2.145.156-.528.397-3.691.397-4.13s-.088-1.186-.575-1.406c-.42-.19-1.06-.395-2.741.79-1.755 1.24-3.64 3.752-4.334 5.099"/></g>
4
- <defs><clipPath id="bluesky-clip"><path fill="#fff" d="M.1.85h15.3v15.3H.1z"/></clipPath></defs>
5
- </symbol>
6
- <symbol id="discord-icon" viewBox="0 0 20 19">
7
- <path fill="#08060d" d="M16.224 3.768a14.5 14.5 0 0 0-3.67-1.153c-.158.286-.343.67-.47.976a13.5 13.5 0 0 0-4.067 0c-.128-.306-.317-.69-.476-.976A14.4 14.4 0 0 0 3.868 3.77C1.546 7.28.916 10.703 1.231 14.077a14.7 14.7 0 0 0 4.5 2.306q.545-.748.965-1.587a9.5 9.5 0 0 1-1.518-.74q.191-.14.372-.293c2.927 1.369 6.107 1.369 8.999 0q.183.152.372.294-.723.437-1.52.74.418.838.963 1.588a14.6 14.6 0 0 0 4.504-2.308c.37-3.911-.63-7.302-2.644-10.309m-9.13 8.234c-.878 0-1.599-.82-1.599-1.82 0-.998.705-1.82 1.6-1.82.894 0 1.614.82 1.599 1.82.001 1-.705 1.82-1.6 1.82m5.91 0c-.878 0-1.599-.82-1.599-1.82 0-.998.705-1.82 1.6-1.82.893 0 1.614.82 1.599 1.82 0 1-.706 1.82-1.6 1.82"/>
8
- </symbol>
9
- <symbol id="documentation-icon" viewBox="0 0 21 20">
10
- <path fill="none" stroke="#aa3bff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.35" d="m15.5 13.333 1.533 1.322c.645.555.967.833.967 1.178s-.322.623-.967 1.179L15.5 18.333m-3.333-5-1.534 1.322c-.644.555-.966.833-.966 1.178s.322.623.966 1.179l1.534 1.321"/>
11
- <path fill="none" stroke="#aa3bff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.35" d="M17.167 10.836v-4.32c0-1.41 0-2.117-.224-2.68-.359-.906-1.118-1.621-2.08-1.96-.599-.21-1.349-.21-2.848-.21-2.623 0-3.935 0-4.983.369-1.684.591-3.013 1.842-3.641 3.428C3 6.449 3 7.684 3 10.154v2.122c0 2.558 0 3.838.706 4.726q.306.383.713.671c.76.536 1.79.64 3.581.66"/>
12
- <path fill="none" stroke="#aa3bff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.35" d="M3 10a2.78 2.78 0 0 1 2.778-2.778c.555 0 1.209.097 1.748-.047.48-.129.854-.503.982-.982.145-.54.048-1.194.048-1.749a2.78 2.78 0 0 1 2.777-2.777"/>
13
- </symbol>
14
- <symbol id="github-icon" viewBox="0 0 19 19">
15
- <path fill="#08060d" fill-rule="evenodd" d="M9.356 1.85C5.05 1.85 1.57 5.356 1.57 9.694a7.84 7.84 0 0 0 5.324 7.44c.387.079.528-.168.528-.376 0-.182-.013-.805-.013-1.454-2.165.467-2.616-.935-2.616-.935-.349-.91-.864-1.143-.864-1.143-.71-.48.051-.48.051-.48.787.051 1.2.805 1.2.805.695 1.194 1.817.857 2.268.649.064-.507.27-.857.49-1.052-1.728-.182-3.545-.857-3.545-3.87 0-.857.31-1.558.8-2.104-.078-.195-.349-1 .077-2.078 0 0 .657-.208 2.14.805a7.5 7.5 0 0 1 1.946-.26c.657 0 1.328.092 1.946.26 1.483-1.013 2.14-.805 2.14-.805.426 1.078.155 1.883.078 2.078.502.546.799 1.247.799 2.104 0 3.013-1.818 3.675-3.558 3.87.284.247.528.714.528 1.454 0 1.052-.012 1.896-.012 2.156 0 .208.142.455.528.377a7.84 7.84 0 0 0 5.324-7.441c.013-4.338-3.48-7.844-7.773-7.844" clip-rule="evenodd"/>
16
- </symbol>
17
- <symbol id="social-icon" viewBox="0 0 20 20">
18
- <path fill="none" stroke="#aa3bff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.35" d="M12.5 6.667a4.167 4.167 0 1 0-8.334 0 4.167 4.167 0 0 0 8.334 0"/>
19
- <path fill="none" stroke="#aa3bff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.35" d="M2.5 16.667a5.833 5.833 0 0 1 8.75-5.053m3.837.474.513 1.035c.07.144.257.282.414.309l.93.155c.596.1.736.536.307.965l-.723.73a.64.64 0 0 0-.152.531l.207.903c.164.715-.213.991-.84.618l-.872-.52a.63.63 0 0 0-.577 0l-.872.52c-.624.373-1.003.094-.84-.618l.207-.903a.64.64 0 0 0-.152-.532l-.723-.729c-.426-.43-.289-.864.306-.964l.93-.156a.64.64 0 0 0 .412-.31l.513-1.034c.28-.562.735-.562 1.012 0"/>
20
- </symbol>
21
- <symbol id="x-icon" viewBox="0 0 19 19">
22
- <path fill="#08060d" fill-rule="evenodd" d="M1.893 1.98c.052.072 1.245 1.769 2.653 3.77l2.892 4.114c.183.261.333.48.333.486s-.068.089-.152.183l-.522.593-.765.867-3.597 4.087c-.375.426-.734.834-.798.905a1 1 0 0 0-.118.148c0 .01.236.017.664.017h.663l.729-.83c.4-.457.796-.906.879-.999a692 692 0 0 0 1.794-2.038c.034-.037.301-.34.594-.675l.551-.624.345-.392a7 7 0 0 1 .34-.374c.006 0 .93 1.306 2.052 2.903l2.084 2.965.045.063h2.275c1.87 0 2.273-.003 2.266-.021-.008-.02-1.098-1.572-3.894-5.547-2.013-2.862-2.28-3.246-2.273-3.266.008-.019.282-.332 2.085-2.38l2-2.274 1.567-1.782c.022-.028-.016-.03-.65-.03h-.674l-.3.342a871 871 0 0 1-1.782 2.025c-.067.075-.405.458-.75.852a100 100 0 0 1-.803.91c-.148.172-.299.344-.99 1.127-.304.343-.32.358-.345.327-.015-.019-.904-1.282-1.976-2.808L6.365 1.85H1.8zm1.782.91 8.078 11.294c.772 1.08 1.413 1.973 1.425 1.984.016.017.241.02 1.05.017l1.03-.004-2.694-3.766L7.796 5.75 5.722 2.852l-1.039-.004-1.039-.004z" clip-rule="evenodd"/>
23
- </symbol>
24
- </svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg">
2
+ <symbol id="bluesky-icon" viewBox="0 0 16 17">
3
+ <g clip-path="url(#bluesky-clip)"><path fill="#08060d" d="M7.75 7.735c-.693-1.348-2.58-3.86-4.334-5.097-1.68-1.187-2.32-.981-2.74-.79C.188 2.065.1 2.812.1 3.251s.241 3.602.398 4.13c.52 1.744 2.367 2.333 4.07 2.145-2.495.37-4.71 1.278-1.805 4.512 3.196 3.309 4.38-.71 4.987-2.746.608 2.036 1.307 5.91 4.93 2.746 2.72-2.746.747-4.143-1.747-4.512 1.702.189 3.55-.4 4.07-2.145.156-.528.397-3.691.397-4.13s-.088-1.186-.575-1.406c-.42-.19-1.06-.395-2.741.79-1.755 1.24-3.64 3.752-4.334 5.099"/></g>
4
+ <defs><clipPath id="bluesky-clip"><path fill="#fff" d="M.1.85h15.3v15.3H.1z"/></clipPath></defs>
5
+ </symbol>
6
+ <symbol id="discord-icon" viewBox="0 0 20 19">
7
+ <path fill="#08060d" d="M16.224 3.768a14.5 14.5 0 0 0-3.67-1.153c-.158.286-.343.67-.47.976a13.5 13.5 0 0 0-4.067 0c-.128-.306-.317-.69-.476-.976A14.4 14.4 0 0 0 3.868 3.77C1.546 7.28.916 10.703 1.231 14.077a14.7 14.7 0 0 0 4.5 2.306q.545-.748.965-1.587a9.5 9.5 0 0 1-1.518-.74q.191-.14.372-.293c2.927 1.369 6.107 1.369 8.999 0q.183.152.372.294-.723.437-1.52.74.418.838.963 1.588a14.6 14.6 0 0 0 4.504-2.308c.37-3.911-.63-7.302-2.644-10.309m-9.13 8.234c-.878 0-1.599-.82-1.599-1.82 0-.998.705-1.82 1.6-1.82.894 0 1.614.82 1.599 1.82.001 1-.705 1.82-1.6 1.82m5.91 0c-.878 0-1.599-.82-1.599-1.82 0-.998.705-1.82 1.6-1.82.893 0 1.614.82 1.599 1.82 0 1-.706 1.82-1.6 1.82"/>
8
+ </symbol>
9
+ <symbol id="documentation-icon" viewBox="0 0 21 20">
10
+ <path fill="none" stroke="#aa3bff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.35" d="m15.5 13.333 1.533 1.322c.645.555.967.833.967 1.178s-.322.623-.967 1.179L15.5 18.333m-3.333-5-1.534 1.322c-.644.555-.966.833-.966 1.178s.322.623.966 1.179l1.534 1.321"/>
11
+ <path fill="none" stroke="#aa3bff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.35" d="M17.167 10.836v-4.32c0-1.41 0-2.117-.224-2.68-.359-.906-1.118-1.621-2.08-1.96-.599-.21-1.349-.21-2.848-.21-2.623 0-3.935 0-4.983.369-1.684.591-3.013 1.842-3.641 3.428C3 6.449 3 7.684 3 10.154v2.122c0 2.558 0 3.838.706 4.726q.306.383.713.671c.76.536 1.79.64 3.581.66"/>
12
+ <path fill="none" stroke="#aa3bff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.35" d="M3 10a2.78 2.78 0 0 1 2.778-2.778c.555 0 1.209.097 1.748-.047.48-.129.854-.503.982-.982.145-.54.048-1.194.048-1.749a2.78 2.78 0 0 1 2.777-2.777"/>
13
+ </symbol>
14
+ <symbol id="github-icon" viewBox="0 0 19 19">
15
+ <path fill="#08060d" fill-rule="evenodd" d="M9.356 1.85C5.05 1.85 1.57 5.356 1.57 9.694a7.84 7.84 0 0 0 5.324 7.44c.387.079.528-.168.528-.376 0-.182-.013-.805-.013-1.454-2.165.467-2.616-.935-2.616-.935-.349-.91-.864-1.143-.864-1.143-.71-.48.051-.48.051-.48.787.051 1.2.805 1.2.805.695 1.194 1.817.857 2.268.649.064-.507.27-.857.49-1.052-1.728-.182-3.545-.857-3.545-3.87 0-.857.31-1.558.8-2.104-.078-.195-.349-1 .077-2.078 0 0 .657-.208 2.14.805a7.5 7.5 0 0 1 1.946-.26c.657 0 1.328.092 1.946.26 1.483-1.013 2.14-.805 2.14-.805.426 1.078.155 1.883.078 2.078.502.546.799 1.247.799 2.104 0 3.013-1.818 3.675-3.558 3.87.284.247.528.714.528 1.454 0 1.052-.012 1.896-.012 2.156 0 .208.142.455.528.377a7.84 7.84 0 0 0 5.324-7.441c.013-4.338-3.48-7.844-7.773-7.844" clip-rule="evenodd"/>
16
+ </symbol>
17
+ <symbol id="social-icon" viewBox="0 0 20 20">
18
+ <path fill="none" stroke="#aa3bff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.35" d="M12.5 6.667a4.167 4.167 0 1 0-8.334 0 4.167 4.167 0 0 0 8.334 0"/>
19
+ <path fill="none" stroke="#aa3bff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.35" d="M2.5 16.667a5.833 5.833 0 0 1 8.75-5.053m3.837.474.513 1.035c.07.144.257.282.414.309l.93.155c.596.1.736.536.307.965l-.723.73a.64.64 0 0 0-.152.531l.207.903c.164.715-.213.991-.84.618l-.872-.52a.63.63 0 0 0-.577 0l-.872.52c-.624.373-1.003.094-.84-.618l.207-.903a.64.64 0 0 0-.152-.532l-.723-.729c-.426-.43-.289-.864.306-.964l.93-.156a.64.64 0 0 0 .412-.31l.513-1.034c.28-.562.735-.562 1.012 0"/>
20
+ </symbol>
21
+ <symbol id="x-icon" viewBox="0 0 19 19">
22
+ <path fill="#08060d" fill-rule="evenodd" d="M1.893 1.98c.052.072 1.245 1.769 2.653 3.77l2.892 4.114c.183.261.333.48.333.486s-.068.089-.152.183l-.522.593-.765.867-3.597 4.087c-.375.426-.734.834-.798.905a1 1 0 0 0-.118.148c0 .01.236.017.664.017h.663l.729-.83c.4-.457.796-.906.879-.999a692 692 0 0 0 1.794-2.038c.034-.037.301-.34.594-.675l.551-.624.345-.392a7 7 0 0 1 .34-.374c.006 0 .93 1.306 2.052 2.903l2.084 2.965.045.063h2.275c1.87 0 2.273-.003 2.266-.021-.008-.02-1.098-1.572-3.894-5.547-2.013-2.862-2.28-3.246-2.273-3.266.008-.019.282-.332 2.085-2.38l2-2.274 1.567-1.782c.022-.028-.016-.03-.65-.03h-.674l-.3.342a871 871 0 0 1-1.782 2.025c-.067.075-.405.458-.75.852a100 100 0 0 1-.803.91c-.148.172-.299.344-.99 1.127-.304.343-.32.358-.345.327-.015-.019-.904-1.282-1.976-2.808L6.365 1.85H1.8zm1.782.91 8.078 11.294c.772 1.08 1.413 1.973 1.425 1.984.016.017.241.02 1.05.017l1.03-.004-2.694-3.766L7.796 5.75 5.722 2.852l-1.039-.004-1.039-.004z" clip-rule="evenodd"/>
23
+ </symbol>
24
+ </svg>
package/dist/index.html CHANGED
@@ -1,13 +1,29 @@
1
- <html lang="en">
2
- <head>
3
- <meta charset="UTF-8" />
4
- <link rel="icon" type="image/svg+xml" href="./favicon.svg" />
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
- <title>ui_lib</title>
7
- <script type="module" crossorigin src="./assets/index-BsQ6nn74.js"></script>
8
- <link rel="stylesheet" crossorigin href="./assets/index-1YAQdTE0.css">
9
- </head>
10
- <body>
11
- <div id="root"></div>
12
- </body>
13
- </html>
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <link rel="icon" type="image/png" href="/logo.png" />
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7
+ <title>UI Component Library</title>
8
+ <!--
9
+ Anti-FOUC: Script này chạy đồng bộ (blocking) trước khi trình duyệt render bất kỳ thứ gì.
10
+ Mục đích: Đọc localStorage và áp dụng class "dark" lên <html> ngay lập tức
11
+ để tránh hiện tượng nhấp nháy màu khi F5 lại trang.
12
+ -->
13
+ <script>
14
+ (function () {
15
+ try {
16
+ var theme = localStorage.getItem('theme');
17
+ if (theme === 'dark') {
18
+ document.documentElement.classList.add('dark');
19
+ }
20
+ } catch (e) {}
21
+ })();
22
+ </script>
23
+ <script type="module" crossorigin src="./assets/index-CnNrrRnN.js"></script>
24
+ <link rel="stylesheet" crossorigin href="./assets/index-Ba666nDd.css">
25
+ </head>
26
+ <body>
27
+ <div id="root"></div>
28
+ </body>
29
+ </html>
@@ -0,0 +1,298 @@
1
+ # basuicn — Full Reference
2
+
3
+ > React component library showcase & CLI tool (v0.2.5). Built on @base-ui/react headless primitives, styled with tailwind-variants. Ships `basuicn add <component>` CLI to copy-install components into consumer projects.
4
+
5
+ ## Stack
6
+
7
+ | Layer | Technology |
8
+ |-------|-----------|
9
+ | Framework | React 19.2 + Vite 6 |
10
+ | Language | TypeScript (strict) |
11
+ | Primitives | @base-ui/react 1.3 |
12
+ | Styling | Tailwind CSS v4.2 + tailwind-variants 3.2 + tailwind-merge 3.5 |
13
+ | Routing | react-router-dom 7.13 |
14
+ | Forms | react-hook-form 7.72 + zod 4.3 |
15
+ | Tables | @tanstack/react-table 8.21 + @tanstack/react-virtual 3.13 |
16
+ | Charts | recharts 3.8 |
17
+ | Icons | lucide-react 0.577 |
18
+ | Dates | date-fns 4.1 + react-day-picker 9.14 |
19
+ | Toast | sonner 2.0 |
20
+ | Carousel | keen-slider 6.8 |
21
+ | Code | shiki 4.0 + @codesandbox/sandpack-react 2.20 |
22
+ | Panels | react-resizable-panels 4.8 |
23
+ | Testing | Vitest 4.1 + Testing Library + Storybook 10.3 |
24
+ | Compiler | babel-plugin-react-compiler (auto-memoization) |
25
+
26
+ ## Architecture
27
+
28
+ ### Project Type
29
+ Vite SPA (client-side rendering only). NOT Next.js — no server components, no `"use client"`.
30
+
31
+ ### Path Aliases
32
+ - `@` → `src/`
33
+ - `@components` → `src/components/`
34
+ - `@lib` → `src/lib/`
35
+ - `@pages` → `src/pages/`
36
+ - `@assets` → `src/assets/`
37
+
38
+ ### Routing
39
+ `routes.tsx` is the single source of truth. It exports `ROUTES: RouteConfig[]` consumed by `App.tsx` (renders `<Route>`) and `AppSidebar.tsx` (renders nav items). Route constants live in `src/constants/Routes.constant.ts`.
40
+
41
+ ```
42
+ RouteConfig {
43
+ path: string
44
+ label: string
45
+ icon?: ReactNode
46
+ element?: ReactNode
47
+ category?: string // 'overview' | 'general' | 'forms' | 'complex' | 'overlays' | 'demo'
48
+ badge?: string // e.g. 'New'
49
+ children?: RouteConfig[]
50
+ }
51
+ ```
52
+
53
+ ### Component Pattern
54
+ Every UI component follows:
55
+
56
+ ```tsx
57
+ import { tv, type VariantProps } from 'tailwind-variants';
58
+ import { SomePrimitive } from '@base-ui/react';
59
+ import { cn } from '@/lib/utils/cn';
60
+
61
+ const myVariants = tv({
62
+ base: '...',
63
+ variants: { variant: {...}, size: {...} },
64
+ defaultVariants: { ... }
65
+ });
66
+
67
+ export const MyComponent = React.forwardRef<HTMLElement, MyProps>(
68
+ ({ className, variant, size, ...props }, ref) => (
69
+ <SomePrimitive
70
+ className={myVariants({ variant, size, className: className || '' })}
71
+ {...props}
72
+ ref={ref}
73
+ />
74
+ )
75
+ );
76
+ ```
77
+
78
+ Key rules:
79
+ - Always `forwardRef`
80
+ - Always `tailwind-variants` (tv()) for variants
81
+ - Always `@base-ui/react` primitives when available
82
+ - Class merging via `cn()` (clsx + tailwind-merge)
83
+ - No Radix UI, no shadcn/ui
84
+
85
+ ### Showcase Page Pattern
86
+ Pages in `src/pages/` use layout helpers from `src/components/ui/Showcase.tsx`:
87
+
88
+ ```tsx
89
+ import { PageHeader, ShowcaseCard } from '@/components/ui/Showcase';
90
+
91
+ const MyPage = () => (
92
+ <div className="max-w-5xl">
93
+ <PageHeader title="Component Name" description="Description text." />
94
+ <ShowcaseCard title="Demo Name" description="What this shows.">
95
+ {/* Component demos here */}
96
+ </ShowcaseCard>
97
+ </div>
98
+ );
99
+ export default MyPage;
100
+ ```
101
+
102
+ ### Theme System
103
+ Themes defined in `src/lib/theme/themes.ts` as plain JS objects (hex colors). CSS variables auto-generated in `src/styles/index.css` via `npm run theme:sync`. At runtime, `applyTheme()` injects a `<style>` tag. Dark mode uses `.dark` class on `<html>`.
104
+
105
+ Design tokens (Kraken-inspired):
106
+ - Primary: `#7132f5` (purple), dark: `#5741d8`, deep: `#5b1ecf`
107
+ - Text: `#101114` (near-black)
108
+ - Neutral: `#686b82` (cool gray), `#9497a9` (silver blue)
109
+ - Success: `#149e61`, Warning: amber, Danger: red
110
+ - Border radius: 12px (buttons), 16px (cards)
111
+ - Shadow: `rgba(0,0,0,0.03) 0px 4px 24px` (whisper-level)
112
+
113
+ ### Registry & CLI
114
+ `registry.json` maps component names → source files + dependencies. CLI command `basuicn add <component>` reads this to copy files into consumer projects. Run `npm run registry:build` after adding/modifying components.
115
+
116
+ ### Layout Components
117
+ - `DashboardLayout` — outer shell: AppSidebar + scrollable main via `<Outlet />`
118
+ - `AppSidebar` — reads ROUTES, renders sidebar nav
119
+ - `SidebarNavItem` — collapsible groups or nav links
120
+
121
+ ## Components Reference
122
+
123
+ ### General (17 components)
124
+
125
+ **Accordion** — `src/components/ui/accordion/Accordion.tsx`
126
+ Collapsible content sections. Built on @base-ui/react Accordion. Exports: Accordion, AccordionItem, AccordionTrigger, AccordionContent. Chevron animation, optional hideChevron.
127
+
128
+ **Alert** — `src/components/ui/alert/Alert.tsx`
129
+ Status messages with `role="alert"`. Variants: default, destructive, success, warning, info. Exports: Alert, AlertTitle, AlertDescription.
130
+
131
+ **AspectRatio** — `src/components/ui/aspect-ratio/AspectRatio.tsx`
132
+ CSS padding-bottom trick for aspect ratio. Default ratio: 1 (square).
133
+
134
+ **Avatar** — `src/components/ui/avatar/Avatar.tsx`
135
+ Profile image. Sizes: sm, md, lg, xl. Image error fallback shows first 2 chars.
136
+
137
+ **Badge** — `src/components/ui/badge/Badge.tsx`
138
+ Labels. 12 variants: default, secondary, outline, success, warning, danger, soft-primary/success/warning/danger, glass, gradient. Sizes: sm, md, lg. Optional pulse animation.
139
+
140
+ **Breadcrumb** — `src/components/ui/breadcrumb/Breadcrumb.tsx`
141
+ Navigation trail. Semantic `<nav aria-label="breadcrumb">`. Exports: Breadcrumb, BreadcrumbList, BreadcrumbItem, BreadcrumbLink, BreadcrumbPage, BreadcrumbSeparator, BreadcrumbEllipsis.
142
+
143
+ **Button** — `src/components/ui/button/Button.tsx`
144
+ Built on @base-ui/react Button. 12 variants: solid, outline, ghost, secondary, danger, link, glass, glass-white/amber/green/purple/pink. 5 sizes: sm, md, lg, icon, icon-sm. leftIcon/rightIcon, isLoading with Spinner.
145
+
146
+ **Calendar** — `src/components/ui/calendar/Calendar.tsx`
147
+ Date grid using react-day-picker. Modes: single, range, multiple. Locale support, disable past/future, sizes: sm, md, lg.
148
+
149
+ **Carousel** — `src/components/ui/carousel/Carousel.tsx`
150
+ keen-slider based. Plugins: AutoPlay, WheelControls, Mutation, 3D, Resize. Exports: Carousel, CarouselSlide, CarouselPrev, CarouselNext, CarouselDots, CarouselProgress, CarouselCounter.
151
+
152
+ **EmptyState** — `src/components/ui/empty/Empty.tsx`
153
+ 13 presets: users, documents, notifications, search, data, inbox, orders, messages, images, folders, stats, offline, general. Sizes: sm, md, lg. Custom icon/title/description/action.
154
+
155
+ **PreviewCard** — `src/components/ui/preview-card/PreviewCard.tsx`
156
+ Hover preview card with image, title, description.
157
+
158
+ **Rate** — `src/components/ui/rate/Rate.tsx`
159
+ Star rating. Controlled/uncontrolled, half-star support, custom icon, readonly mode.
160
+
161
+ **Separator** — `src/components/ui/separator/Separator.tsx`
162
+ Divider. Orientations: horizontal, vertical. Variants: default, muted, primary, dashed. Supports decorative vs semantic (role="separator").
163
+
164
+ **Skeleton** — `src/components/ui/skeleton/Skeleton.tsx`
165
+ Loading placeholder. Variants: default, muted. Rounded: none, sm, md, lg, full. `aria-hidden="true"`.
166
+
167
+ **Spinner** — `src/components/ui/spinner/Spinner.tsx`
168
+ Loading indicator. Sizes and color variants.
169
+
170
+ **Timeline** — `src/components/ui/timeline/Timeline.tsx`
171
+ Event sequence. Data-driven via `items: TimelineItemData[]`. Variants: default, primary, success, warning, danger. Sizes: sm, md, lg. Each item can have icon, title, description, time.
172
+
173
+ **Toggle** — `src/components/ui/toggle/Toggle.tsx`
174
+ Pressable button. Variants: default, outline, solid, ghost. Sizes: sm, md, lg, icon. ToggleGroup for single/multiple selection. `aria-pressed`.
175
+
176
+ **Typography** — `src/components/ui/typography/Typography.tsx`
177
+ 10 sub-components: Text (with copyable, gradient, mark, truncate, lines, code), Heading (level 1-6), Paragraph, Lead, Blockquote (with cite), Code (inline, copyable), Kbd (keyboard shortcuts), Link (external support), Mark (highlight).
178
+
179
+ ### Forms (13 components)
180
+
181
+ **Autocomplete** — `src/components/ui/autocomplete/Autocomplete.tsx`
182
+ Search input with filtered suggestions dropdown.
183
+
184
+ **Checkbox** — `src/components/ui/checkbox/Checkbox.tsx`
185
+ Built on @base-ui/react Checkbox. Sizes: sm, md, lg. Indeterminate state. Optional label, htmlFor association.
186
+
187
+ **ComboBox** — `src/components/ui/combobox/ComboBox.tsx`
188
+ Searchable select with filtering.
189
+
190
+ **DatePicker** — `src/components/ui/datepicker/DatePicker.tsx`
191
+ Built on @base-ui/react Popover + react-day-picker. Modes: single, range, time-only. Time formats: HH, HH:mm, HH:mm:ss. Time picker styles: input or select dropdowns. Locale prop (default: vi). Sub-files: TimePicker.tsx, time-helpers.ts.
192
+
193
+ **FileUpload** — `src/components/ui/file-upload/FileUpload.tsx`
194
+ Drag-and-drop zone. Props: accept, multiple, maxSize, maxFiles. File list with remove. Sizes: sm, md, lg. Custom children for dropzone content. Validation with onError callback.
195
+
196
+ **Form** — `src/components/ui/form/Form.tsx`
197
+ react-hook-form integration. Exports: Form, FormField, FormItem, FormLabel, FormControl, FormDescription, FormMessage. Auto aria-describedby and aria-invalid.
198
+
199
+ **Input** — `src/components/ui/input/Input.tsx`
200
+ Built on @base-ui/react Input + Field. Variants: default, filled, flushed. Password toggle. Start/end icons. Label, description, error.
201
+
202
+ **InputOTP** — `src/components/ui/input-otp/InputOtp.tsx`
203
+ OTP input. 4 variants: outline, filled, underline, glass. 3 shapes: square, rounded, circle. 3 sizes: sm, md, lg. Paste support, auto-submit, mask, keyboard navigation. Logic extracted to useInputOTP hook.
204
+
205
+ **NumberInput** — `src/components/ui/number-input/NumberInput.tsx`
206
+ Built on @base-ui/react NumberField. Stepper +/- buttons. Sizes: sm, md, lg. Props: min, max, step, disabled, label, description, error.
207
+
208
+ **Radio** — `src/components/ui/radio/Radio.tsx`
209
+ Built on @base-ui/react Radio. Variants: default (circular), card (full-width). Sizes: sm, md, lg.
210
+
211
+ **Select** — `src/components/ui/select/Select.tsx`
212
+ Built on @base-ui/react Select. Clearable, animated, error state. MultiSelect variant in MultiSelect.tsx with tag display and maxTags.
213
+
214
+ **Slider** — `src/components/ui/slider/Slider.tsx`
215
+ Built on @base-ui/react Slider. Optional tooltip, multi-thumb, controlled/uncontrolled.
216
+
217
+ **Switch** — `src/components/ui/switch/Switch.tsx`
218
+ Built on @base-ui/react Switch. Sizes: sm, md. Optional label.
219
+
220
+ **Textarea** — `src/components/ui/textarea/Textarea.tsx`
221
+ Built on @base-ui/react Field. Variants: default, filled. Label, description, error.
222
+
223
+ ### Complex (12 components)
224
+
225
+ **Command** — `src/components/ui/command/Command.tsx`
226
+ Command palette (Cmd+K). Built on @base-ui/react Dialog. Exports: Command, CommandInput, CommandList, CommandGroup, CommandItem, CommandEmpty, CommandSeparator, CommandShortcut. Search filtering, keyboard navigation, disabled items.
227
+
228
+ **DataTable** — `src/components/ui/table/Table.tsx`
229
+ Full-featured via @tanstack/react-table. Features: sorting, client/server pagination, row selection, expanding rows, column resizing, virtualization (@tanstack/react-virtual). Sub-files: TableHeader.tsx, TableBody.tsx, TablePagination.tsx. i18n labels.
230
+
231
+ **Resizable** — `src/components/ui/resizable/Resizable.tsx`
232
+ Panel dividers via react-resizable-panels. Handle variants: line, bar, handle, ghost. Exports: ResizablePanelGroup, ResizablePanel, ResizableHandle.
233
+
234
+ **Sidebar** — `src/components/ui/sidebar/`
235
+ Multi-file: Sidebar.tsx, SidebarContext.tsx, SidebarLayout.tsx, SidebarMenu.tsx, SidebarUserMenu.tsx. Collapsible modes: offcanvas, icon, none. Keyboard shortcut Cmd+B. Resizable width 160-480px.
236
+
237
+ **TreeView** — `src/components/ui/tree-view/TreeView.tsx`
238
+ Hierarchical data. Data-driven via `data: TreeNode[]`. Recursive rendering, expand/collapse, keyboard nav (Arrow keys, Enter, Space). Custom icons per node. `defaultExpanded` prop.
239
+
240
+ **CodeSandbox** — `src/components/ui/code-sandbox/`
241
+ Live code editor. Built on @codesandbox/sandpack-react. Sub-files: SandboxLayout, SandboxActivityBar, SandboxToolbar, SandboxStatusBar, SearchPanel, DependencyPanel, TerminalPane, FileTree.
242
+
243
+ ### Overlays (10 components)
244
+
245
+ **Dialog** — `src/components/ui/dialog/Dialog.tsx`
246
+ Built on @base-ui/react Dialog. Centered modal + fullscreen variant. Backdrop blur. Exports: Dialog, DialogTrigger, DialogContent, DialogHeader, DialogFooter, DialogTitle, DialogDescription, DialogClose.
247
+
248
+ **AlertDialog** — `src/components/ui/alert-dialog/AlertDialog.tsx`
249
+ Confirmation modal. Built on @base-ui/react AlertDialog. Same export pattern as Dialog.
250
+
251
+ **Drawer** — `src/components/ui/drawer/Drawer.tsx`
252
+ Slide-in panel. 4 directions: left, right, top, bottom. 4 sizes: sm, md, lg, full. Backdrop blur.
253
+
254
+ **Sheet** — `src/components/ui/sheet/Sheet.tsx`
255
+ Wrapper around Drawer, defaults to direction="right" size="lg".
256
+
257
+ **DropdownMenu** — `src/components/ui/dropdown-menu/DropdownMenu.tsx`
258
+ Built on @base-ui/react Menu. Submenu support, checkbox/radio items, keyboard shortcuts. 14 exported sub-components.
259
+
260
+ **ContextMenu** — `src/components/ui/context-menu/ContextMenu.tsx`
261
+ Right-click menu. Checkbox/radio items, keyboard navigation, viewport clamping.
262
+
263
+ **MenuBar** — `src/components/ui/menu-bar/MenuBar.tsx`
264
+ Application menu bar. Built on @base-ui/react Menu. Config-driven API via `MenuBarNav` + `menus` prop. Unlimited submenu depth, active route detection.
265
+
266
+ **Popover** — `src/components/ui/popover/Popover.tsx`
267
+ Built on @base-ui/react Popover. Optional arrow, configurable positioning.
268
+
269
+ **Tooltip** — `src/components/ui/tooltip/Tooltip.tsx`
270
+ Built on @base-ui/react Tooltip. `role="tooltip"`, optional arrow, side positioning.
271
+
272
+ **Progress** — `src/components/ui/progress/Progress.tsx`
273
+ Built on @base-ui/react Progress. Variants: default, success, warning, danger, gradient. Striped + animated. Label positions: inside, outside, none.
274
+
275
+ ## Adding a New Component
276
+
277
+ 1. Create `src/components/ui/<name>/<Name>.tsx` following the component pattern
278
+ 2. Add route constant to `src/constants/Routes.constant.ts`
279
+ 3. Create showcase page at `src/pages/<Name>Page.tsx`
280
+ 4. Add route entry to `routes.tsx` (import page, add to correct category)
281
+ 5. Export from `src/components/ui/index.ts`
282
+ 6. Add icons to `src/components/ui/icons/index.ts` if needed
283
+ 7. Run `npm run registry:build`
284
+
285
+ ## Commands
286
+
287
+ ```bash
288
+ npm run dev # Dev server :3000
289
+ npm run build # tsc -b && vite build
290
+ npm run lint # ESLint
291
+ npm run test # Vitest (watch)
292
+ npm run test:coverage # Coverage report
293
+ npm run storybook # Storybook :6006
294
+ npm run registry:build # Rebuild registry.json
295
+ npm run theme:sync # Re-gen CSS vars from themes.ts
296
+ npm run build:cli # Build CLI (dist/ui-cli.cjs)
297
+ npx vitest run src/path/to/test.tsx # Single test file
298
+ ```
package/dist/llm.txt ADDED
@@ -0,0 +1,110 @@
1
+ # basuicn
2
+
3
+ > React component library showcase & CLI tool. Built on @base-ui/react headless primitives, styled with tailwind-variants. Ships `basuicn add <component>` CLI to copy-install components into consumer projects.
4
+
5
+ - Version: 0.2.5
6
+ - Stack: React 19 + Vite + TypeScript
7
+ - Styling: Tailwind CSS v4 + tailwind-variants (tv())
8
+ - Primitives: @base-ui/react (NOT Radix/shadcn)
9
+ - Icons: lucide-react
10
+
11
+ ## Docs
12
+
13
+ - [Architecture](/CLAUDE.md): Routing, component patterns, theme system, CLI, testing setup
14
+ - [Design System](/.claude/DESIGN.md): Kraken-inspired color palette, typography, spacing, component stylings
15
+ - [Rules](/.claude/RULE.md): Coding conventions and constraints
16
+ - [Vite Workflow](/.claude/REACT-VITE-WORKFLOW.md): Tech stack, file structure, state management, security
17
+ - [Frontend Design](/.claude/FE_WORKFLOW.md): Visual design principles and quality gates
18
+
19
+ ## Components (57)
20
+
21
+ ### General
22
+ - [Accordion](/general/accordion): Collapsible content sections
23
+ - [Alert](/general/alert): Status messages — default, destructive, success, warning, info
24
+ - [AspectRatio](/general/aspect-ratio): Maintain width/height ratio
25
+ - [Avatar](/general/avatar): User profile image with fallback
26
+ - [Badge](/general/badge): Labels — solid, soft, outline, glass, gradient variants
27
+ - [Breadcrumb](/general/breadcrumb): Navigation trail with semantic ARIA
28
+ - [Button](/general/button): 12 variants (solid, outline, ghost, glass, etc.), 5 sizes, loading state
29
+ - [Calendar](/general/calendar): Date picker grid — single, range, multiple modes
30
+ - [Carousel](/general/carousel): Slide-based content — keen-slider, autoplay, 3D, dots, progress
31
+ - [EmptyState](/general/empty): 13 presets for no-data states with actions
32
+ - [PreviewCard](/general/preview-card): Hover preview card
33
+ - [Rate](/general/rate): Star rating input
34
+ - [Separator](/general/separator): Visual divider — horizontal, vertical, dashed
35
+ - [Skeleton](/general/skeleton): Loading placeholder animation
36
+ - [Spinner](/general/spinner): Loading indicator
37
+ - [Timeline](/general/timeline): Event sequence display — 5 variants, 3 sizes
38
+ - [Toggle](/general/toggle): Pressable on/off — single and group modes
39
+ - [Typography](/general/typography): Text, Heading, Paragraph, Lead, Blockquote, Code, Kbd, Link, Mark
40
+
41
+ ### Forms
42
+ - [Autocomplete](/form/autocomplete): Searchable input with suggestions
43
+ - [Checkbox](/form/checkbox): Check/uncheck with indeterminate state
44
+ - [ComboBox](/form/combobox): Searchable select dropdown
45
+ - [DatePicker](/form/datepicker): Date/time picker — single, range, time-only modes
46
+ - [FileUpload](/form/file-upload): Drag-and-drop upload with validation
47
+ - [Form](/form): react-hook-form integration with auto error display
48
+ - [Input](/form/input): Text input — default, filled, flushed variants, password toggle
49
+ - [InputOTP](/form/input-otp): One-time-password — 4 variants, 3 shapes, paste support
50
+ - [NumberInput](/form/number-input): Stepper input — @base-ui/react NumberField, 3 sizes
51
+ - [Radio](/form/radio): Radio buttons — default and card variants
52
+ - [Select](/form/select): Single and multi-select dropdowns
53
+ - [Slider](/form/slider): Range input with tooltip
54
+ - [Switch](/form/switch): Toggle switch — 2 sizes
55
+ - [Textarea](/form/textarea): Multi-line text input
56
+
57
+ ### Complex
58
+ - [Accordion](/complex/accordion): Expandable panels
59
+ - [CodeSandbox](/complex/code-sandbox): Live code editor with preview
60
+ - [Collapsible](/complex/collapsible): Show/hide content
61
+ - [Command](/complex/command): Command palette (Cmd+K) — search, groups, shortcuts
62
+ - [DataTable](/complex/table): Full-featured table — sorting, pagination, row selection, virtualization, column resize
63
+ - [Pagination](/complex/pagination): Page navigation controls
64
+ - [Resizable](/complex/resizable): Draggable panel dividers — 4 handle variants
65
+ - [ScrollArea](/complex/scroll-area): Custom scrollbar styling
66
+ - [Sidebar](/complex/sidebar): Collapsible navigation — offcanvas, icon modes, keyboard shortcut
67
+ - [TableOfContents](/complex/table-contents): Document section navigation
68
+ - [Tabs](/complex/tabs): Tabbed interface with animated indicator
69
+ - [TreeView](/complex/tree-view): Hierarchical data display with expand/collapse
70
+
71
+ ### Overlays
72
+ - [AlertDialog](/overlays/alert-dialog): Confirmation modal
73
+ - [ContextMenu](/overlays/context-menu): Right-click menu with checkbox/radio items
74
+ - [Dialog](/overlays/dialog): Modal window — centered and fullscreen
75
+ - [Drawer](/overlays/drawer): Slide-in panel — 4 directions, 4 sizes
76
+ - [DropdownMenu](/overlays/dropdown-menu): Click-triggered menu with submenus
77
+ - [MenuBar](/overlays/menu-bar): Application menu bar — config-driven API
78
+ - [Popover](/overlays/popover): Floating content panel
79
+ - [Progress](/overlays/progress): Progress bar — striped, animated, gradient
80
+ - [Sheet](/overlays/sheet): Side panel (Drawer wrapper)
81
+ - [Tooltip](/overlays/tooltip): Hover information popup
82
+
83
+ ## CLI
84
+
85
+ ```bash
86
+ npx basuicn add <component> # Copy-install a component into your project
87
+ ```
88
+
89
+ Registry at `registry.json` maps component names to source files and dependencies.
90
+
91
+ ## Theme
92
+
93
+ Kraken-inspired design system:
94
+ - Primary: `#7132f5` (Kraken Purple)
95
+ - Text: `#101114` (near-black)
96
+ - Radius: 12px buttons, 16px cards
97
+ - Fonts: Kraken-Brand (display) + Kraken-Product (body)
98
+ - Dark mode via `.dark` class on `<html>`
99
+
100
+ ## Dev
101
+
102
+ ```bash
103
+ npm run dev # Vite dev server :3000
104
+ npm run build # TypeScript + Vite production build
105
+ npm run lint # ESLint
106
+ npm run test # Vitest
107
+ npm run storybook # Storybook :6006
108
+ npm run registry:build # Rebuild registry.json
109
+ npm run theme:sync # Re-generate CSS variables from themes.ts
110
+ ```
package/dist/ui-cli.cjs CHANGED
@@ -27,7 +27,7 @@ var import_fs = __toESM(require("fs"), 1);
27
27
  var import_path = __toESM(require("path"), 1);
28
28
  var import_child_process = require("child_process");
29
29
  var import_readline = __toESM(require("readline"), 1);
30
- var VERSION = "0.3.12";
30
+ var VERSION = "0.3.17";
31
31
  var REGISTRY_LOCAL = "./registry.json";
32
32
  var REGISTRY_REMOTE = "https://raw.githubusercontent.com/Basuicn/basuicn-core/main/registry.json";
33
33
  var c = {