openspecui 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (296) hide show
  1. package/dist/cli.mjs +4537 -49
  2. package/dist/index.mjs +1 -1
  3. package/dist/{src-CNuprcB-.mjs → src-Bmm_kaB8.mjs} +168 -23
  4. package/package.json +5 -3
  5. package/web/dist/assets/abap-BdImnpbu.js +1 -0
  6. package/web/dist/assets/actionscript-3-CfeIJUat.js +1 -0
  7. package/web/dist/assets/ada-bCR0ucgS.js +1 -0
  8. package/web/dist/assets/andromeeda-C-Jbm3Hp.js +1 -0
  9. package/web/dist/assets/angular-html-CU67Zn6k.js +1 -0
  10. package/web/dist/assets/angular-ts-BwZT4LLn.js +1 -0
  11. package/web/dist/assets/apache-Pmp26Uib.js +1 -0
  12. package/web/dist/assets/apex-DDbsPZ6N.js +1 -0
  13. package/web/dist/assets/apl-dKokRX4l.js +1 -0
  14. package/web/dist/assets/applescript-Co6uUVPk.js +1 -0
  15. package/web/dist/assets/ara-BRHolxvo.js +1 -0
  16. package/web/dist/assets/asciidoc-Dv7Oe6Be.js +1 -0
  17. package/web/dist/assets/asm-D_Q5rh1f.js +1 -0
  18. package/web/dist/assets/astro-CbQHKStN.js +1 -0
  19. package/web/dist/assets/aurora-x-D-2ljcwZ.js +1 -0
  20. package/web/dist/assets/awk-DMzUqQB5.js +1 -0
  21. package/web/dist/assets/ayu-dark-Cv9koXgw.js +1 -0
  22. package/web/dist/assets/ballerina-BFfxhgS-.js +1 -0
  23. package/web/dist/assets/bat-BkioyH1T.js +1 -0
  24. package/web/dist/assets/beancount-k_qm7-4y.js +1 -0
  25. package/web/dist/assets/berry-uYugtg8r.js +1 -0
  26. package/web/dist/assets/bibtex-CHM0blh-.js +1 -0
  27. package/web/dist/assets/bicep-Bmn6On1c.js +1 -0
  28. package/web/dist/assets/blade-DVc8C-J4.js +1 -0
  29. package/web/dist/assets/bsl-BO_Y6i37.js +1 -0
  30. package/web/dist/assets/c-BIGW1oBm.js +1 -0
  31. package/web/dist/assets/cadence-Bv_4Rxtq.js +1 -0
  32. package/web/dist/assets/cairo-KRGpt6FW.js +1 -0
  33. package/web/dist/assets/catppuccin-frappe-DFWUc33u.js +1 -0
  34. package/web/dist/assets/catppuccin-latte-C9dUb6Cb.js +1 -0
  35. package/web/dist/assets/catppuccin-macchiato-DQyhUUbL.js +1 -0
  36. package/web/dist/assets/catppuccin-mocha-D87Tk5Gz.js +1 -0
  37. package/web/dist/assets/clarity-D53aC0YG.js +1 -0
  38. package/web/dist/assets/clojure-P80f7IUj.js +1 -0
  39. package/web/dist/assets/cmake-D1j8_8rp.js +1 -0
  40. package/web/dist/assets/cobol-nwyudZeR.js +1 -0
  41. package/web/dist/assets/codeowners-Bp6g37R7.js +1 -0
  42. package/web/dist/assets/codeql-DsOJ9woJ.js +1 -0
  43. package/web/dist/assets/coffee-Ch7k5sss.js +1 -0
  44. package/web/dist/assets/common-lisp-Cg-RD9OK.js +1 -0
  45. package/web/dist/assets/coq-DkFqJrB1.js +1 -0
  46. package/web/dist/assets/cpp-CofmeUqb.js +1 -0
  47. package/web/dist/assets/crystal-tKQVLTB8.js +1 -0
  48. package/web/dist/assets/csharp-K5feNrxe.js +1 -0
  49. package/web/dist/assets/css-DPfMkruS.js +1 -0
  50. package/web/dist/assets/csv-fuZLfV_i.js +1 -0
  51. package/web/dist/assets/cue-D82EKSYY.js +1 -0
  52. package/web/dist/assets/cypher-COkxafJQ.js +1 -0
  53. package/web/dist/assets/d-85-TOEBH.js +1 -0
  54. package/web/dist/assets/dark-plus-C3mMm8J8.js +1 -0
  55. package/web/dist/assets/dart-CF10PKvl.js +1 -0
  56. package/web/dist/assets/dax-CEL-wOlO.js +1 -0
  57. package/web/dist/assets/desktop-BmXAJ9_W.js +1 -0
  58. package/web/dist/assets/diff-D97Zzqfu.js +1 -0
  59. package/web/dist/assets/docker-BcOcwvcX.js +1 -0
  60. package/web/dist/assets/dotenv-Da5cRb03.js +1 -0
  61. package/web/dist/assets/dracula-BzJJZx-M.js +1 -0
  62. package/web/dist/assets/dracula-soft-BXkSAIEj.js +1 -0
  63. package/web/dist/assets/dream-maker-BtqSS_iP.js +1 -0
  64. package/web/dist/assets/edge-BkV0erSs.js +1 -0
  65. package/web/dist/assets/elixir-CDX3lj18.js +1 -0
  66. package/web/dist/assets/elm-DbKCFpqz.js +1 -0
  67. package/web/dist/assets/emacs-lisp-C9XAeP06.js +1 -0
  68. package/web/dist/assets/erb-BOJIQeun.js +1 -0
  69. package/web/dist/assets/erlang-DsQrWhSR.js +1 -0
  70. package/web/dist/assets/everforest-dark-BgDCqdQA.js +1 -0
  71. package/web/dist/assets/everforest-light-C8M2exoo.js +1 -0
  72. package/web/dist/assets/fennel-BYunw83y.js +1 -0
  73. package/web/dist/assets/fish-BvzEVeQv.js +1 -0
  74. package/web/dist/assets/fluent-C4IJs8-o.js +1 -0
  75. package/web/dist/assets/fortran-fixed-form-BZjJHVRy.js +1 -0
  76. package/web/dist/assets/fortran-free-form-D22FLkUw.js +1 -0
  77. package/web/dist/assets/fsharp-CXgrBDvD.js +1 -0
  78. package/web/dist/assets/gdresource-B7Tvp0Sc.js +1 -0
  79. package/web/dist/assets/gdscript-DTMYz4Jt.js +1 -0
  80. package/web/dist/assets/gdshader-DkwncUOv.js +1 -0
  81. package/web/dist/assets/genie-D0YGMca9.js +1 -0
  82. package/web/dist/assets/gherkin-DyxjwDmM.js +1 -0
  83. package/web/dist/assets/git-commit-F4YmCXRG.js +1 -0
  84. package/web/dist/assets/git-rebase-r7XF79zn.js +1 -0
  85. package/web/dist/assets/github-dark-DHJKELXO.js +1 -0
  86. package/web/dist/assets/github-dark-default-Cuk6v7N8.js +1 -0
  87. package/web/dist/assets/github-dark-dimmed-DH5Ifo-i.js +1 -0
  88. package/web/dist/assets/github-dark-high-contrast-E3gJ1_iC.js +1 -0
  89. package/web/dist/assets/github-light-DAi9KRSo.js +1 -0
  90. package/web/dist/assets/github-light-default-D7oLnXFd.js +1 -0
  91. package/web/dist/assets/github-light-high-contrast-BfjtVDDH.js +1 -0
  92. package/web/dist/assets/gleam-BspZqrRM.js +1 -0
  93. package/web/dist/assets/glimmer-js-Rg0-pVw9.js +1 -0
  94. package/web/dist/assets/glimmer-ts-U6CK756n.js +1 -0
  95. package/web/dist/assets/glsl-DplSGwfg.js +1 -0
  96. package/web/dist/assets/gnuplot-DdkO51Og.js +1 -0
  97. package/web/dist/assets/go-Dn2_MT6a.js +1 -0
  98. package/web/dist/assets/graphql-ChdNCCLP.js +1 -0
  99. package/web/dist/assets/groovy-gcz8RCvz.js +1 -0
  100. package/web/dist/assets/gruvbox-dark-hard-CFHQjOhq.js +1 -0
  101. package/web/dist/assets/gruvbox-dark-medium-GsRaNv29.js +1 -0
  102. package/web/dist/assets/gruvbox-dark-soft-CVdnzihN.js +1 -0
  103. package/web/dist/assets/gruvbox-light-hard-CH1njM8p.js +1 -0
  104. package/web/dist/assets/gruvbox-light-medium-DRw_LuNl.js +1 -0
  105. package/web/dist/assets/gruvbox-light-soft-hJgmCMqR.js +1 -0
  106. package/web/dist/assets/hack-CaT9iCJl.js +1 -0
  107. package/web/dist/assets/haml-B8DHNrY2.js +1 -0
  108. package/web/dist/assets/handlebars-BL8al0AC.js +1 -0
  109. package/web/dist/assets/haskell-Df6bDoY_.js +1 -0
  110. package/web/dist/assets/haxe-CzTSHFRz.js +1 -0
  111. package/web/dist/assets/hcl-BWvSN4gD.js +1 -0
  112. package/web/dist/assets/hjson-D5-asLiD.js +1 -0
  113. package/web/dist/assets/hlsl-D3lLCCz7.js +1 -0
  114. package/web/dist/assets/houston-DnULxvSX.js +1 -0
  115. package/web/dist/assets/html-GMplVEZG.js +1 -0
  116. package/web/dist/assets/html-derivative-BFtXZ54Q.js +1 -0
  117. package/web/dist/assets/http-jrhK8wxY.js +1 -0
  118. package/web/dist/assets/hurl-irOxFIW8.js +1 -0
  119. package/web/dist/assets/hxml-Bvhsp5Yf.js +1 -0
  120. package/web/dist/assets/hy-DFXneXwc.js +1 -0
  121. package/web/dist/assets/imba-DGztddWO.js +1 -0
  122. package/web/dist/assets/index-BNmb5C1F.css +1 -0
  123. package/web/dist/assets/index-BxBbLX3V.js +170 -0
  124. package/web/dist/assets/index-C4c5ARU5.css +1 -0
  125. package/web/dist/assets/index-l4gcUD8y.js +382 -0
  126. package/web/dist/assets/ini-BEwlwnbL.js +1 -0
  127. package/web/dist/assets/java-CylS5w8V.js +1 -0
  128. package/web/dist/assets/javascript-wDzz0qaB.js +1 -0
  129. package/web/dist/assets/jinja-4LBKfQ-Z.js +1 -0
  130. package/web/dist/assets/jison-wvAkD_A8.js +1 -0
  131. package/web/dist/assets/json-Cp-IABpG.js +1 -0
  132. package/web/dist/assets/json5-C9tS-k6U.js +1 -0
  133. package/web/dist/assets/jsonc-Des-eS-w.js +1 -0
  134. package/web/dist/assets/jsonl-DcaNXYhu.js +1 -0
  135. package/web/dist/assets/jsonnet-DFQXde-d.js +1 -0
  136. package/web/dist/assets/jssm-C2t-YnRu.js +1 -0
  137. package/web/dist/assets/jsx-g9-lgVsj.js +1 -0
  138. package/web/dist/assets/julia-C8NyazO9.js +1 -0
  139. package/web/dist/assets/kanagawa-dragon-CkXjmgJE.js +1 -0
  140. package/web/dist/assets/kanagawa-lotus-CfQXZHmo.js +1 -0
  141. package/web/dist/assets/kanagawa-wave-DWedfzmr.js +1 -0
  142. package/web/dist/assets/kdl-DV7GczEv.js +1 -0
  143. package/web/dist/assets/kotlin-BdnUsdx6.js +1 -0
  144. package/web/dist/assets/kusto-BvAqAH-y.js +1 -0
  145. package/web/dist/assets/laserwave-DUszq2jm.js +1 -0
  146. package/web/dist/assets/latex-BdAV_C_H.js +1 -0
  147. package/web/dist/assets/lean-Bc6EcWN3.js +1 -0
  148. package/web/dist/assets/less-B1dDrJ26.js +1 -0
  149. package/web/dist/assets/light-plus-B7mTdjB0.js +1 -0
  150. package/web/dist/assets/liquid-DYVedYrR.js +1 -0
  151. package/web/dist/assets/llvm-BtvRca6l.js +1 -0
  152. package/web/dist/assets/log-2UxHyX5q.js +1 -0
  153. package/web/dist/assets/logo-BtOb2qkB.js +1 -0
  154. package/web/dist/assets/lua-BbnMAYS6.js +1 -0
  155. package/web/dist/assets/luau-CXu1NL6O.js +1 -0
  156. package/web/dist/assets/make-CHLpvVh8.js +1 -0
  157. package/web/dist/assets/markdown-Cvjx9yec.js +1 -0
  158. package/web/dist/assets/marko-CPi9NSCl.js +1 -0
  159. package/web/dist/assets/material-theme-D5KoaKCx.js +1 -0
  160. package/web/dist/assets/material-theme-darker-BfHTSMKl.js +1 -0
  161. package/web/dist/assets/material-theme-lighter-B0m2ddpp.js +1 -0
  162. package/web/dist/assets/material-theme-ocean-CyktbL80.js +1 -0
  163. package/web/dist/assets/material-theme-palenight-Csfq5Kiy.js +1 -0
  164. package/web/dist/assets/matlab-D7o27uSR.js +1 -0
  165. package/web/dist/assets/mdc-DUICxH0z.js +1 -0
  166. package/web/dist/assets/mdx-Cmh6b_Ma.js +1 -0
  167. package/web/dist/assets/mermaid-DKYwYmdq.js +1 -0
  168. package/web/dist/assets/min-dark-CafNBF8u.js +1 -0
  169. package/web/dist/assets/min-light-CTRr51gU.js +1 -0
  170. package/web/dist/assets/mipsasm-CKIfxQSi.js +1 -0
  171. package/web/dist/assets/mojo-1DNp92w6.js +1 -0
  172. package/web/dist/assets/monokai-D4h5O-jR.js +1 -0
  173. package/web/dist/assets/move-Bu9oaDYs.js +1 -0
  174. package/web/dist/assets/narrat-DRg8JJMk.js +1 -0
  175. package/web/dist/assets/nextflow-BrzmwbiE.js +1 -0
  176. package/web/dist/assets/nginx-DknmC5AR.js +1 -0
  177. package/web/dist/assets/night-owl-C39BiMTA.js +1 -0
  178. package/web/dist/assets/nim-CVrawwO9.js +1 -0
  179. package/web/dist/assets/nix-c8nO5XWb.js +1 -0
  180. package/web/dist/assets/nord-Ddv68eIx.js +1 -0
  181. package/web/dist/assets/nushell-C-sUppwS.js +1 -0
  182. package/web/dist/assets/objective-c-DXmwc3jG.js +1 -0
  183. package/web/dist/assets/objective-cpp-CLxacb5B.js +1 -0
  184. package/web/dist/assets/ocaml-C0hk2d4L.js +1 -0
  185. package/web/dist/assets/one-dark-pro-DVMEJ2y_.js +1 -0
  186. package/web/dist/assets/one-light-PoHY5YXO.js +1 -0
  187. package/web/dist/assets/openscad-C4EeE6gA.js +1 -0
  188. package/web/dist/assets/pascal-D93ZcfNL.js +1 -0
  189. package/web/dist/assets/perl-C0TMdlhV.js +1 -0
  190. package/web/dist/assets/php-CDn_0X-4.js +1 -0
  191. package/web/dist/assets/pkl-u5AG7uiY.js +1 -0
  192. package/web/dist/assets/plastic-3e1v2bzS.js +1 -0
  193. package/web/dist/assets/plsql-ChMvpjG-.js +1 -0
  194. package/web/dist/assets/po-BTJTHyun.js +1 -0
  195. package/web/dist/assets/poimandres-CS3Unz2-.js +1 -0
  196. package/web/dist/assets/polar-C0HS_06l.js +1 -0
  197. package/web/dist/assets/postcss-CXtECtnM.js +1 -0
  198. package/web/dist/assets/powerquery-CEu0bR-o.js +1 -0
  199. package/web/dist/assets/powershell-Dpen1YoG.js +1 -0
  200. package/web/dist/assets/prisma-Dd19v3D-.js +1 -0
  201. package/web/dist/assets/prolog-CbFg5uaA.js +1 -0
  202. package/web/dist/assets/proto-DyJlTyXw.js +1 -0
  203. package/web/dist/assets/pug-CGlum2m_.js +1 -0
  204. package/web/dist/assets/puppet-BMWR74SV.js +1 -0
  205. package/web/dist/assets/purescript-CklMAg4u.js +1 -0
  206. package/web/dist/assets/python-B6aJPvgy.js +1 -0
  207. package/web/dist/assets/qml-3beO22l8.js +1 -0
  208. package/web/dist/assets/qmldir-C8lEn-DE.js +1 -0
  209. package/web/dist/assets/qss-IeuSbFQv.js +1 -0
  210. package/web/dist/assets/r-DiinP2Uv.js +1 -0
  211. package/web/dist/assets/racket-BqYA7rlc.js +1 -0
  212. package/web/dist/assets/raku-DXvB9xmW.js +1 -0
  213. package/web/dist/assets/razor-CE9lU5zL.js +1 -0
  214. package/web/dist/assets/red-bN70gL4F.js +1 -0
  215. package/web/dist/assets/reg-C-SQnVFl.js +1 -0
  216. package/web/dist/assets/regexp-CDVJQ6XC.js +1 -0
  217. package/web/dist/assets/rel-C3B-1QV4.js +1 -0
  218. package/web/dist/assets/riscv-BM1_JUlF.js +1 -0
  219. package/web/dist/assets/rose-pine-dawn-DHQR4-dF.js +1 -0
  220. package/web/dist/assets/rose-pine-moon-D4_iv3hh.js +1 -0
  221. package/web/dist/assets/rose-pine-qdsjHGoJ.js +1 -0
  222. package/web/dist/assets/rosmsg-BJDFO7_C.js +1 -0
  223. package/web/dist/assets/rst-B0xPkSld.js +1 -0
  224. package/web/dist/assets/ruby-BvKwtOVI.js +1 -0
  225. package/web/dist/assets/rust-B1yitclQ.js +1 -0
  226. package/web/dist/assets/sas-cz2c8ADy.js +1 -0
  227. package/web/dist/assets/sass-Cj5Yp3dK.js +1 -0
  228. package/web/dist/assets/scala-C151Ov-r.js +1 -0
  229. package/web/dist/assets/scheme-C98Dy4si.js +1 -0
  230. package/web/dist/assets/scss-OYdSNvt2.js +1 -0
  231. package/web/dist/assets/sdbl-DVxCFoDh.js +1 -0
  232. package/web/dist/assets/shaderlab-Dg9Lc6iA.js +1 -0
  233. package/web/dist/assets/shellscript-Yzrsuije.js +1 -0
  234. package/web/dist/assets/shellsession-BADoaaVG.js +1 -0
  235. package/web/dist/assets/slack-dark-BthQWCQV.js +1 -0
  236. package/web/dist/assets/slack-ochin-DqwNpetd.js +1 -0
  237. package/web/dist/assets/smalltalk-BERRCDM3.js +1 -0
  238. package/web/dist/assets/snazzy-light-Bw305WKR.js +1 -0
  239. package/web/dist/assets/solarized-dark-DXbdFlpD.js +1 -0
  240. package/web/dist/assets/solarized-light-L9t79GZl.js +1 -0
  241. package/web/dist/assets/solidity-rGO070M0.js +1 -0
  242. package/web/dist/assets/soy-Brmx7dQM.js +1 -0
  243. package/web/dist/assets/sparql-rVzFXLq3.js +1 -0
  244. package/web/dist/assets/splunk-BtCnVYZw.js +1 -0
  245. package/web/dist/assets/sql-BLtJtn59.js +1 -0
  246. package/web/dist/assets/ssh-config-_ykCGR6B.js +1 -0
  247. package/web/dist/assets/stata-BH5u7GGu.js +1 -0
  248. package/web/dist/assets/stylus-BEDo0Tqx.js +1 -0
  249. package/web/dist/assets/svelte-3Dk4HxPD.js +1 -0
  250. package/web/dist/assets/swift-Dg5xB15N.js +1 -0
  251. package/web/dist/assets/synthwave-84-CbfX1IO0.js +1 -0
  252. package/web/dist/assets/system-verilog-CnnmHF94.js +1 -0
  253. package/web/dist/assets/systemd-4A_iFExJ.js +1 -0
  254. package/web/dist/assets/talonscript-CkByrt1z.js +1 -0
  255. package/web/dist/assets/tasl-QIJgUcNo.js +1 -0
  256. package/web/dist/assets/tcl-dwOrl1Do.js +1 -0
  257. package/web/dist/assets/templ-W15q3VgB.js +1 -0
  258. package/web/dist/assets/terraform-BETggiCN.js +1 -0
  259. package/web/dist/assets/tex-CxkMU7Pf.js +1 -0
  260. package/web/dist/assets/tokyo-night-hegEt444.js +1 -0
  261. package/web/dist/assets/toml-vGWfd6FD.js +1 -0
  262. package/web/dist/assets/ts-tags-zn1MmPIZ.js +1 -0
  263. package/web/dist/assets/tsv-B_m7g4N7.js +1 -0
  264. package/web/dist/assets/tsx-COt5Ahok.js +1 -0
  265. package/web/dist/assets/turtle-BsS91CYL.js +1 -0
  266. package/web/dist/assets/twig-CO9l9SDP.js +1 -0
  267. package/web/dist/assets/typescript-BPQ3VLAy.js +1 -0
  268. package/web/dist/assets/typespec-BGHnOYBU.js +1 -0
  269. package/web/dist/assets/typst-DHCkPAjA.js +1 -0
  270. package/web/dist/assets/v-BcVCzyr7.js +1 -0
  271. package/web/dist/assets/vala-CsfeWuGM.js +1 -0
  272. package/web/dist/assets/vb-D17OF-Vu.js +1 -0
  273. package/web/dist/assets/verilog-BQ8w6xss.js +1 -0
  274. package/web/dist/assets/vesper-DU1UobuO.js +1 -0
  275. package/web/dist/assets/vhdl-CeAyd5Ju.js +1 -0
  276. package/web/dist/assets/viml-CJc9bBzg.js +1 -0
  277. package/web/dist/assets/vitesse-black-Bkuqu6BP.js +1 -0
  278. package/web/dist/assets/vitesse-dark-D0r3Knsf.js +1 -0
  279. package/web/dist/assets/vitesse-light-CVO1_9PV.js +1 -0
  280. package/web/dist/assets/vue-DnHKYNfI.js +1 -0
  281. package/web/dist/assets/vue-html-CChd_i61.js +1 -0
  282. package/web/dist/assets/vue-vine-8moa0y9V.js +1 -0
  283. package/web/dist/assets/vyper-CDx5xZoG.js +1 -0
  284. package/web/dist/assets/wasm-CG6Dc4jp.js +1 -0
  285. package/web/dist/assets/wasm-MzD3tlZU.js +1 -0
  286. package/web/dist/assets/wenyan-BV7otONQ.js +1 -0
  287. package/web/dist/assets/wgsl-Dx-B1_4e.js +1 -0
  288. package/web/dist/assets/wikitext-BhOHFoWU.js +1 -0
  289. package/web/dist/assets/wit-5i3qLPDT.js +1 -0
  290. package/web/dist/assets/wolfram-lXgVvXCa.js +1 -0
  291. package/web/dist/assets/xml-sdJ4AIDG.js +1 -0
  292. package/web/dist/assets/xsl-CtQFsRM5.js +1 -0
  293. package/web/dist/assets/yaml-Buea-lGh.js +1 -0
  294. package/web/dist/assets/zenscript-DVFEvuxE.js +1 -0
  295. package/web/dist/assets/zig-VOosw3JB.js +1 -0
  296. package/web/dist/index.html +2 -2
package/dist/index.mjs CHANGED
@@ -1,3 +1,3 @@
1
- import { i as ACPAgents, n as createServer, r as ProviderManager, t as startServer } from "./src-CNuprcB-.mjs";
1
+ import { i as ACPAgents, n as createServer, r as ProviderManager, t as startServer } from "./src-Bmm_kaB8.mjs";
2
2
 
3
3
  export { ACPAgents, ProviderManager, createServer, startServer };
@@ -7,9 +7,9 @@ import { EventEmitter } from "events";
7
7
  import { mkdir, readFile, readdir, rename, stat, writeFile } from "fs/promises";
8
8
  import { join } from "path";
9
9
  import { watch } from "fs";
10
- import { existsSync, readFileSync, statSync } from "node:fs";
10
+ import { existsSync, readFileSync as readFileSync$1, statSync as statSync$1 } from "node:fs";
11
11
  import { createServer as createServer$1 } from "node:net";
12
- import { dirname, join as join$1 } from "node:path";
12
+ import { dirname as dirname$1, join as join$1 } from "node:path";
13
13
  import { fileURLToPath } from "node:url";
14
14
 
15
15
  //#region rolldown:runtime
@@ -376,7 +376,7 @@ var responseViaResponseObject = async (res, outgoing, options = {}) => {
376
376
  });
377
377
  if (!chunk) {
378
378
  if (i === 1) {
379
- await new Promise((resolve) => setTimeout(resolve));
379
+ await new Promise((resolve$1) => setTimeout(resolve$1));
380
380
  maxReadCount = 3;
381
381
  continue;
382
382
  }
@@ -6653,8 +6653,8 @@ var Unpromise = class Unpromise$1 {
6653
6653
  status: "fulfilled",
6654
6654
  value
6655
6655
  };
6656
- subscribers === null || subscribers === void 0 || subscribers.forEach(({ resolve }) => {
6657
- resolve(value);
6656
+ subscribers === null || subscribers === void 0 || subscribers.forEach(({ resolve: resolve$1 }) => {
6657
+ resolve$1(value);
6658
6658
  });
6659
6659
  });
6660
6660
  if ("catch" in thenReturn) thenReturn.catch((reason) => {
@@ -6801,14 +6801,14 @@ function resolveSelfTuple(promise) {
6801
6801
  /** VENDORED (Future) PROMISE UTILITIES */
6802
6802
  /** Reference implementation of https://github.com/tc39/proposal-promise-with-resolvers */
6803
6803
  function withResolvers() {
6804
- let resolve;
6804
+ let resolve$1;
6805
6805
  let reject;
6806
6806
  return {
6807
6807
  promise: new Promise((_resolve, _reject) => {
6808
- resolve = _resolve;
6808
+ resolve$1 = _resolve;
6809
6809
  reject = _reject;
6810
6810
  }),
6811
- resolve,
6811
+ resolve: resolve$1,
6812
6812
  reject
6813
6813
  };
6814
6814
  }
@@ -6864,8 +6864,8 @@ function timerResource(ms) {
6864
6864
  let timer = null;
6865
6865
  return makeResource({ start() {
6866
6866
  if (timer) throw new Error("Timer already started");
6867
- return new Promise((resolve) => {
6868
- timer = setTimeout(() => resolve(disposablePromiseTimerResult), ms);
6867
+ return new Promise((resolve$1) => {
6868
+ timer = setTimeout(() => resolve$1(disposablePromiseTimerResult), ms);
6869
6869
  });
6870
6870
  } }, () => {
6871
6871
  if (timer) clearTimeout(timer);
@@ -7082,14 +7082,14 @@ function _takeWithGrace() {
7082
7082
  return _takeWithGrace.apply(this, arguments);
7083
7083
  }
7084
7084
  function createDeferred() {
7085
- let resolve;
7085
+ let resolve$1;
7086
7086
  let reject;
7087
7087
  return {
7088
7088
  promise: new Promise((res, rej) => {
7089
- resolve = res;
7089
+ resolve$1 = res;
7090
7090
  reject = rej;
7091
7091
  }),
7092
- resolve,
7092
+ resolve: resolve$1,
7093
7093
  reject
7094
7094
  };
7095
7095
  }
@@ -8703,8 +8703,8 @@ function getWSConnectionHandler(opts) {
8703
8703
  try {
8704
8704
  var _usingCtx = (0, import_usingCtx.default)();
8705
8705
  const iterator = _usingCtx.a(iteratorResource(iterable));
8706
- const abortPromise = new Promise((resolve) => {
8707
- abortController$1.signal.onabort = () => resolve("abort");
8706
+ const abortPromise = new Promise((resolve$1) => {
8707
+ abortController$1.signal.onabort = () => resolve$1("abort");
8708
8708
  });
8709
8709
  let next;
8710
8710
  let result$1;
@@ -12754,6 +12754,18 @@ var OpenSpecAdapter = class {
12754
12754
  return [];
12755
12755
  }
12756
12756
  }
12757
+ /**
12758
+ * List specs with metadata (id and name)
12759
+ */
12760
+ async listSpecsWithMeta() {
12761
+ const ids = await this.listSpecs();
12762
+ return await Promise.all(ids.map(async (id) => {
12763
+ return {
12764
+ id,
12765
+ name: (await this.readSpec(id))?.name ?? id
12766
+ };
12767
+ }));
12768
+ }
12757
12769
  async listChanges() {
12758
12770
  try {
12759
12771
  return (await readdir(this.changesDir, { withFileTypes: true })).filter((e) => e.isDirectory() && !e.name.startsWith(".") && e.name !== "archive").map((e) => e.name);
@@ -12761,6 +12773,23 @@ var OpenSpecAdapter = class {
12761
12773
  return [];
12762
12774
  }
12763
12775
  }
12776
+ /**
12777
+ * List changes with metadata (id, name, and progress)
12778
+ */
12779
+ async listChangesWithMeta() {
12780
+ const ids = await this.listChanges();
12781
+ return await Promise.all(ids.map(async (id) => {
12782
+ const change = await this.readChange(id);
12783
+ return {
12784
+ id,
12785
+ name: change?.name ?? id,
12786
+ progress: change?.progress ?? {
12787
+ total: 0,
12788
+ completed: 0
12789
+ }
12790
+ };
12791
+ }));
12792
+ }
12764
12793
  async listArchivedChanges() {
12765
12794
  try {
12766
12795
  return (await readdir(this.archiveDir, { withFileTypes: true })).filter((e) => e.isDirectory() && !e.name.startsWith(".")).map((e) => e.name);
@@ -12768,6 +12797,50 @@ var OpenSpecAdapter = class {
12768
12797
  return [];
12769
12798
  }
12770
12799
  }
12800
+ /**
12801
+ * List archived changes with metadata
12802
+ */
12803
+ async listArchivedChangesWithMeta() {
12804
+ const ids = await this.listArchivedChanges();
12805
+ return await Promise.all(ids.map(async (id) => {
12806
+ return {
12807
+ id,
12808
+ name: (await this.readArchivedChange(id))?.name ?? id
12809
+ };
12810
+ }));
12811
+ }
12812
+ /**
12813
+ * Read project.md content
12814
+ */
12815
+ async readProjectMd() {
12816
+ try {
12817
+ return await readFile(join(this.openspecDir, "project.md"), "utf-8");
12818
+ } catch {
12819
+ return null;
12820
+ }
12821
+ }
12822
+ /**
12823
+ * Read AGENTS.md content
12824
+ */
12825
+ async readAgentsMd() {
12826
+ try {
12827
+ return await readFile(join(this.openspecDir, "AGENTS.md"), "utf-8");
12828
+ } catch {
12829
+ return null;
12830
+ }
12831
+ }
12832
+ /**
12833
+ * Write project.md content
12834
+ */
12835
+ async writeProjectMd(content) {
12836
+ await writeFile(join(this.openspecDir, "project.md"), content, "utf-8");
12837
+ }
12838
+ /**
12839
+ * Write AGENTS.md content
12840
+ */
12841
+ async writeAgentsMd(content) {
12842
+ await writeFile(join(this.openspecDir, "AGENTS.md"), content, "utf-8");
12843
+ }
12771
12844
  async readSpec(specId) {
12772
12845
  try {
12773
12846
  const content = await this.readSpecRaw(specId);
@@ -12806,6 +12879,34 @@ var OpenSpecAdapter = class {
12806
12879
  return null;
12807
12880
  }
12808
12881
  }
12882
+ /**
12883
+ * Read an archived change
12884
+ */
12885
+ async readArchivedChange(changeId) {
12886
+ try {
12887
+ const raw$1 = await this.readArchivedChangeRaw(changeId);
12888
+ if (!raw$1) return null;
12889
+ return this.parser.parseChange(changeId, raw$1.proposal, raw$1.tasks);
12890
+ } catch {
12891
+ return null;
12892
+ }
12893
+ }
12894
+ /**
12895
+ * Read raw archived change files
12896
+ */
12897
+ async readArchivedChangeRaw(changeId) {
12898
+ try {
12899
+ const proposalPath = join(this.archiveDir, changeId, "proposal.md");
12900
+ const tasksPath = join(this.archiveDir, changeId, "tasks.md");
12901
+ const [proposal, tasks] = await Promise.all([readFile(proposalPath, "utf-8"), readFile(tasksPath, "utf-8").catch(() => "")]);
12902
+ return {
12903
+ proposal,
12904
+ tasks
12905
+ };
12906
+ } catch {
12907
+ return null;
12908
+ }
12909
+ }
12809
12910
  async writeSpec(specId, content) {
12810
12911
  const specDir = join(this.specsDir, specId);
12811
12912
  await mkdir(specDir, { recursive: true });
@@ -13169,6 +13270,9 @@ const specRouter = router({
13169
13270
  list: publicProcedure.query(async ({ ctx }) => {
13170
13271
  return ctx.adapter.listSpecs();
13171
13272
  }),
13273
+ listWithMeta: publicProcedure.query(async ({ ctx }) => {
13274
+ return ctx.adapter.listSpecsWithMeta();
13275
+ }),
13172
13276
  get: publicProcedure.input(objectType({ id: stringType() })).query(async ({ ctx, input }) => {
13173
13277
  return ctx.adapter.readSpec(input.id);
13174
13278
  }),
@@ -13193,6 +13297,9 @@ const changeRouter = router({
13193
13297
  list: publicProcedure.query(async ({ ctx }) => {
13194
13298
  return ctx.adapter.listChanges();
13195
13299
  }),
13300
+ listWithMeta: publicProcedure.query(async ({ ctx }) => {
13301
+ return ctx.adapter.listChangesWithMeta();
13302
+ }),
13196
13303
  listArchived: publicProcedure.query(async ({ ctx }) => {
13197
13304
  return ctx.adapter.listArchivedChanges();
13198
13305
  }),
@@ -13303,6 +13410,42 @@ const initRouter = router({ init: publicProcedure.mutation(async ({ ctx }) => {
13303
13410
  await ctx.adapter.init();
13304
13411
  return { success: true };
13305
13412
  }) });
13413
+ /**
13414
+ * Project router - project-level files (project.md, AGENTS.md)
13415
+ */
13416
+ const projectRouter = router({
13417
+ getProjectMd: publicProcedure.query(async ({ ctx }) => {
13418
+ return ctx.adapter.readProjectMd();
13419
+ }),
13420
+ getAgentsMd: publicProcedure.query(async ({ ctx }) => {
13421
+ return ctx.adapter.readAgentsMd();
13422
+ }),
13423
+ saveProjectMd: publicProcedure.input(objectType({ content: stringType() })).mutation(async ({ ctx, input }) => {
13424
+ await ctx.adapter.writeProjectMd(input.content);
13425
+ return { success: true };
13426
+ }),
13427
+ saveAgentsMd: publicProcedure.input(objectType({ content: stringType() })).mutation(async ({ ctx, input }) => {
13428
+ await ctx.adapter.writeAgentsMd(input.content);
13429
+ return { success: true };
13430
+ })
13431
+ });
13432
+ /**
13433
+ * Archive router - archived changes
13434
+ */
13435
+ const archiveRouter = router({
13436
+ list: publicProcedure.query(async ({ ctx }) => {
13437
+ return ctx.adapter.listArchivedChanges();
13438
+ }),
13439
+ listWithMeta: publicProcedure.query(async ({ ctx }) => {
13440
+ return ctx.adapter.listArchivedChangesWithMeta();
13441
+ }),
13442
+ get: publicProcedure.input(objectType({ id: stringType() })).query(async ({ ctx, input }) => {
13443
+ return ctx.adapter.readArchivedChange(input.id);
13444
+ }),
13445
+ getRaw: publicProcedure.input(objectType({ id: stringType() })).query(async ({ ctx, input }) => {
13446
+ return ctx.adapter.readArchivedChangeRaw(input.id);
13447
+ })
13448
+ });
13306
13449
  objectType({
13307
13450
  type: enumType([
13308
13451
  "spec",
@@ -13380,6 +13523,8 @@ const appRouter = router({
13380
13523
  dashboard: dashboardRouter,
13381
13524
  spec: specRouter,
13382
13525
  change: changeRouter,
13526
+ archive: archiveRouter,
13527
+ project: projectRouter,
13383
13528
  ai: aiRouter,
13384
13529
  init: initRouter,
13385
13530
  realtime: realtimeRouter
@@ -13475,18 +13620,18 @@ function createWebSocketServer(server, httpServer) {
13475
13620
 
13476
13621
  //#endregion
13477
13622
  //#region src/index.ts
13478
- const __dirname = dirname(fileURLToPath(import.meta.url));
13623
+ const __dirname = dirname$1(fileURLToPath(import.meta.url));
13479
13624
  /**
13480
13625
  * Check if a port is available by trying to listen on it
13481
13626
  */
13482
13627
  function isPortAvailable(port) {
13483
- return new Promise((resolve) => {
13628
+ return new Promise((resolve$1) => {
13484
13629
  const server = createServer$1();
13485
13630
  server.once("error", () => {
13486
- resolve(false);
13631
+ resolve$1(false);
13487
13632
  });
13488
13633
  server.once("listening", () => {
13489
- server.close(() => resolve(true));
13634
+ server.close(() => resolve$1(true));
13490
13635
  });
13491
13636
  server.listen(port, "0.0.0.0");
13492
13637
  });
@@ -13557,8 +13702,8 @@ async function startServer(options = {}) {
13557
13702
  const path$1 = c.req.path === "/" ? "/index.html" : c.req.path;
13558
13703
  if (path$1.startsWith("/trpc")) return next();
13559
13704
  const filePath = join$1(webDir, path$1);
13560
- if (existsSync(filePath) && statSync(filePath).isFile()) {
13561
- const content = readFileSync(filePath);
13705
+ if (existsSync(filePath) && statSync$1(filePath).isFile()) {
13706
+ const content = readFileSync$1(filePath);
13562
13707
  const contentType = {
13563
13708
  html: "text/html",
13564
13709
  js: "application/javascript",
@@ -13579,7 +13724,7 @@ async function startServer(options = {}) {
13579
13724
  if (!path$1.includes(".")) {
13580
13725
  const indexPath = join$1(webDir, "index.html");
13581
13726
  if (existsSync(indexPath)) {
13582
- const content = readFileSync(indexPath, "utf-8");
13727
+ const content = readFileSync$1(indexPath, "utf-8");
13583
13728
  return c.html(content);
13584
13729
  }
13585
13730
  }
@@ -13601,4 +13746,4 @@ async function startServer(options = {}) {
13601
13746
  }
13602
13747
 
13603
13748
  //#endregion
13604
- export { ACPAgents as i, createServer$2 as n, ProviderManager as r, startServer as t };
13749
+ export { __commonJS$1 as a, ACPAgents as i, createServer$2 as n, __toESM$1 as o, ProviderManager as r, startServer as t };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "openspecui",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "OpenSpec UI - Visual interface for spec-driven development",
5
5
  "type": "module",
6
6
  "main": "dist/index.mjs",
@@ -20,14 +20,16 @@
20
20
  "@hono/node-server": "^1.14.1",
21
21
  "@types/node": "^22.10.2",
22
22
  "@types/ws": "^8.5.13",
23
+ "@types/yargs": "^17.0.35",
23
24
  "hono": "^4.7.3",
24
25
  "open": "^10.1.0",
25
26
  "tsdown": "^0.16.6",
26
27
  "tsx": "^4.19.2",
27
28
  "typescript": "^5.7.2",
28
29
  "vitest": "^2.1.8",
29
- "@openspecui/server": "0.1.0",
30
- "@openspecui/ai-provider": "0.1.0"
30
+ "yargs": "^18.0.0",
31
+ "@openspecui/ai-provider": "0.1.0",
32
+ "@openspecui/server": "0.1.0"
31
33
  },
32
34
  "scripts": {
33
35
  "build": "pnpm run build:copy-web && tsdown",
@@ -0,0 +1 @@
1
+ const e=Object.freeze(JSON.parse('{"displayName":"ABAP","fileTypes":["abap","ABAP"],"foldingStartMarker":"/\\\\*\\\\*|\\\\{\\\\s*$","foldingStopMarker":"\\\\*\\\\*/|^\\\\s*}","name":"abap","patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.abap"}},"match":"^\\\\*.*\\\\n?","name":"comment.line.full.abap"},{"captures":{"1":{"name":"punctuation.definition.comment.abap"}},"match":"\\".*\\\\n?","name":"comment.line.partial.abap"},{"match":"(?<!\\\\S)##.*?(?=([,.:\\\\s]))","name":"comment.line.pragma.abap"},{"match":"(?i)(?<=[-~\\\\s])(?<=[-=]>)([/_a-z][/-9_a-z]*)(?=\\\\s+(?:|[-*+/]|&&?)=\\\\s+)","name":"variable.other.abap"},{"match":"\\\\b[0-9]+(\\\\b|[,.])","name":"constant.numeric.abap"},{"match":"(?i)(^|\\\\s+)((P(?:UBLIC|RIVATE|ROTECTED))\\\\sSECTION)(?=\\\\s+|[.:])","name":"storage.modifier.class.abap"},{"begin":"(?<!\\\\\\\\)(\\\\|)(.*?)","beginCaptures":{"1":{"name":"constant.character.escape.abap"}},"end":"(?<!\\\\\\\\)(\\\\||(\\\\\\\\\\\\\\\\\\\\|))","endCaptures":{"1":{"name":"constant.character.escape.abap"}},"name":"string.interpolated.abap","patterns":[{"match":"(\\\\{ )|( })","name":"constant.character.escape"},{"match":"\\\\\\\\\\\\|","name":"constant.character.escape.abap"},{"match":"(?i)(?<=\\\\s)(align|alpha|case|country|currency|date|decimals|exponent|number|pad|sign|style|time|timestamp|timezone|width|xsd|zero)(?=\\\\s=)","name":"entity.name.property.stringtemplate.abap"},{"match":"(?i)(?<==\\\\s)(center|engineering|environment|in|iso|left|leftplus|leftspace|lower|no|out|raw|right|rightplus|rightspace|scale_preserving|scale_preserving_scientific|scientific|scientific_with_leading_zero|sign_as_postfix|simple|space|upper|user|yes)(?=\\\\s)","name":"entity.value.property.stringtemplate.abap"}]},{"begin":"\'","end":"\'","name":"string.quoted.single.abap","patterns":[{"match":"\'\'","name":"constant.character.escape.abap"}]},{"begin":"`","end":"`","name":"string.quoted.single.abap","patterns":[{"match":"``","name":"constant.character.escape.abap"}]},{"begin":"(?i)^\\\\s*(class)\\\\s([/_a-z][/-9_a-z]*)","beginCaptures":{"1":{"name":"storage.type.block.abap"},"2":{"name":"entity.name.type.block.abap"}},"end":"\\\\s*\\\\.\\\\s*\\\\n?","name":"meta.block.begin.implementation.abap","patterns":[{"match":"(?i)(^|\\\\s+)(definition|implementation|public|inheriting\\\\s+from|final|deferred|abstract|shared\\\\s+memory\\\\s+enabled|(global|local)*\\\\s*friends|(create\\\\s+(p(?:ublic|rotected|rivate)))|for\\\\s+behavior\\\\s+of|for\\\\s+testing|risk\\\\s+level\\\\s+(critical|dangerous|harmless))|duration\\\\s(short|medium|long)(?=\\\\s+|\\\\.)","name":"storage.modifier.class.abap"},{"begin":"(?=[A-Z_a-z][0-9A-Z_a-z]*)","contentName":"entity.name.type.block.abap","end":"(?![0-9A-Z_a-z])","patterns":[{"include":"#generic_names"}]}]},{"begin":"(?i)^\\\\s*(method)\\\\s(?:([/_a-z][/-9_a-z]*)~)?([/_a-z][/-9_a-z]*)","beginCaptures":{"1":{"name":"storage.type.block.abap"},"2":{"name":"entity.name.type.abap"},"3":{"name":"entity.name.function.abap"}},"end":"\\\\s*\\\\.\\\\s*\\\\n?","patterns":[{"match":"(?i)(?<=^|\\\\s)(BY(?:\\\\s+DATABASE(\\\\s+PROCEDURE|\\\\s+FUNCTION|\\\\s+GRAPH\\\\s+WORKSPACE)|\\\\s+KERNEL\\\\s+MODULE))(?=\\\\s+|\\\\.)","name":"storage.modifier.method.abap"},{"match":"(?i)(?<=^|\\\\s)(FOR\\\\s+(HDB|LLANG))(?=\\\\s+|\\\\.)","name":"storage.modifier.method.abap"},{"match":"(?i)(?<=\\\\s)(OPTIONS\\\\s+(READ-ONLY|DETERMINISTIC|SUPPRESS\\\\s+SYNTAX\\\\s+ERRORS))(?=\\\\s+|\\\\.)","name":"storage.modifier.method.abap"},{"match":"(?i)(?<=^|\\\\s)(LANGUAGE\\\\s+(SQLSCRIPT|SQL|GRAPH))(?=\\\\s+|\\\\.)","name":"storage.modifier.method.abap"},{"captures":{"1":{"name":"storage.modifier.method.abap"}},"match":"(?i)(?<=\\\\s)(USING)\\\\s+([/_a-z][/-9=>_a-z]*)+(?=\\\\s+|\\\\.)"},{"begin":"(?=[A-Z_a-z][0-9A-Z_a-z]*)","end":"(?![0-9A-Z_a-z])","patterns":[{"include":"#generic_names"}]}]},{"begin":"(?i)^\\\\s*(INTERFACE)\\\\s([/_a-z][/-9_a-z]*)","beginCaptures":{"1":{"name":"storage.type.block.abap"},"2":{"name":"entity.name.type.abap"}},"end":"\\\\s*\\\\.\\\\s*\\\\n?","patterns":[{"match":"(?i)(?<=^|\\\\s)(DEFERRED|PUBLIC)(?=\\\\s+|\\\\.)","name":"storage.modifier.method.abap"}]},{"begin":"(?i)^\\\\s*(FORM)\\\\s([/_a-z][-/-9?_a-z]*)","beginCaptures":{"1":{"name":"storage.type.block.abap"},"2":{"name":"entity.name.type.abap"}},"end":"\\\\s*\\\\.\\\\s*\\\\n?","patterns":[{"match":"(?i)(?<=^|\\\\s)(USING|TABLES|CHANGING|RAISING|IMPLEMENTATION|DEFINITION)(?=\\\\s+|\\\\.)","name":"storage.modifier.form.abap"},{"include":"#abaptypes"},{"include":"#keywords_followed_by_braces"}]},{"match":"(?i)(end(?:class|method|form|interface))","name":"storage.type.block.end.abap"},{"match":"(?i)(<[A-Z_a-z][0-9A-Z_a-z]*>)","name":"variable.other.field.symbol.abap"},{"include":"#keywords"},{"include":"#abap_constants"},{"include":"#reserved_names"},{"include":"#operators"},{"include":"#builtin_functions"},{"include":"#abaptypes"},{"include":"#system_fields"},{"include":"#sql_functions"},{"include":"#sql_types"}],"repository":{"abap_constants":{"match":"(?i)(?<=\\\\s)(initial|null|@?space|@?abap_true|@?abap_false|@?abap_undefined|table_line|%_final|%_hints|%_predefined|col_background|col_group|col_heading|col_key|col_negative|col_normal|col_positive|col_total|adabas|as400|db2|db6|hdb|oracle|sybase|mssqlnt|pos_low|pos_high)(?=[,.\\\\s])","name":"constant.language.abap"},"abaptypes":{"patterns":[{"match":"(?i)\\\\s(abap_bool|string|xstring|any|clike|csequence|numeric|xsequence|decfloat|decfloat16|decfloat34|utclong|simple|int8|[cdfinptx])(?=[,.\\\\s])","name":"support.type.abap"},{"match":"(?i)\\\\s(TYPE|REF|TO|LIKE|LINE|OF|STRUCTURE|STANDARD|SORTED|HASHED|INDEX|TABLE|WITH|UNIQUE|NON-UNIQUE|SECONDARY|DEFAULT|KEY)(?=[,.\\\\s])","name":"keyword.control.simple.abap"}]},"arithmetic_operator":{"match":"(?i)(?<=\\\\s)([-*+]|\\\\*\\\\*|[%/]|DIV|MOD|BIT-AND|BIT-OR|BIT-XOR|BIT-NOT)(?=\\\\s)","name":"keyword.control.simple.abap"},"builtin_functions":{"match":"(?i)(?<=\\\\s)(abs|sign|ceil|floor|trunc|frac|acos|asin|atan|cos|sin|tan|cosh|sinh|tanh|exp|log|log10|sqrt|strlen|xstrlen|charlen|lines|numofchar|dbmaxlen|round|rescale|nmax|nmin|cmax|cmin|boolc|boolx|xsdbool|contains|contains_any_of|contains_any_not_of|matches|line_exists|ipow|char_off|count|count_any_of|count_any_not_of|distance|condense|concat_lines_of|escape|find|find_end|find_any_of|find_any_not_of|insert|match|repeat|replace|reverse|segment|shift_left|shift_right|substring|substring_after|substring_from|substring_before|substring_to|to_upper|to_lower|to_mixed|from_mixed|translate|bit-set|line_index)(?=\\\\()","name":"entity.name.function.builtin.abap"},"comparison_operator":{"match":"(?i)(?<=\\\\s)([<>]|<=|>=|=|<>|eq|ne|lt|le|gt|ge|cs|cp|co|cn|ca|na|ns|np|byte-co|byte-cn|byte-ca|byte-na|byte-cs|byte-ns|[moz])(?=\\\\s)","name":"keyword.control.simple.abap"},"control_keywords":{"match":"(?i)(^|\\\\s)(at|case|catch|continue|do|elseif|else|endat|endcase|endcatch|enddo|endif|endloop|endon|endtry|endwhile|if|loop|on|raise|try|while)(?=[.:\\\\s])","name":"keyword.control.flow.abap"},"generic_names":{"match":"[A-Z_a-z][0-9A-Z_a-z]*"},"keywords":{"patterns":[{"include":"#main_keywords"},{"include":"#text_symbols"},{"include":"#control_keywords"},{"include":"#keywords_followed_by_braces"}]},"keywords_followed_by_braces":{"captures":{"1":{"name":"keyword.control.simple.abap"},"2":{"name":"variable.other.abap"}},"match":"(?i)\\\\b(data|value|field-symbol|final|reference|resumable)\\\\((<?[/_a-z][/-9_a-z]*>?)\\\\)"},"logical_operator":{"match":"(?i)(?<=\\\\s)(not|or|and)(?=\\\\s)","name":"keyword.control.simple.abap"},"main_keywords":{"match":"(?i)(?<=^|\\\\s)(abap-source|abstract|accept|accepting|access|according|action|activation|actual|add|add-corresponding|adjacent|after|alias|aliases|all|allocate|amdp|analysis|analyzer|append|appending|application|archive|area|arithmetic|as|ascending|assert|assign|assigned|assigning|association|asynchronous|at|attributes|authority|authority-check|authorization|auto|back|background|backward|badi|base|before|begin|behavior|between|binary|bit|blanks??|blocks??|bound|boundaries|bounds|boxed|break|break-point|buffer|by|bypassing|byte|byte-order|call|calling|cast|casting|cds|centered|change|changing|channels|char-to-hex|character|check|checkbox|cid|circular|class|class-data|class-events|class-methods??|class-pool|cleanup|clear|clients??|clock|clone|close|cnt|code|collect|color|column|comments??|commit|common|communication|comparing|components??|compression|compute|concatenate|cond|condense|condition|connection|constants??|contexts??|controls??|conv|conversion|convert|copy|corresponding|count|country|cover|create|currency|current|cursor|customer-function|data|database|datainfo|dataset|date|daylight|ddl|deallocate|decimals|declarations|deep|default|deferred|define|delete|deleting|demand|descending|describe|destination|detail|determine|dialog|did|directory|discarding|display|display-mode|distance|distinct|divide|divide-corresponding|dummy|duplicates??|duration|during|dynpro|edit|editor-call|empty|enabled|enabling|encoding|end|end-enhancement-section|end-of-definition|end-of-page|end-of-selection|end-test-injection|end-test-seam|endenhancement|endexec|endfunction|endian|ending|endmodule|endprovide|endselect|endwith|enhancement|enhancement-point|enhancement-section|enhancements|entities|entity|entries|entry|enum|equiv|errors|escape|escaping|events??|exact|except|exception|exception-table|exceptions|excluding|exec|execute|exists|exit|exit-command|expanding|explicit|exponent|export|exporting|extended|extension|extract|fail|failed|features|fetch|field|field-groups|field-symbols|fields|file|fill|filters??|final|find|first|first-line|fixed-point|flush|following|for|format|forward|found|frames??|free|from|full|function|function-pool|generate|get|giving|graph|groups??|handler??|hashed|having|headers??|heading|help-id|help-request|hide|hint|hold|hotspot|icon|id|identification|identifier|ignore|ignoring|immediately|implemented|implicit|import|importing|in|inactive|incl|includes??|including|increment|index|index-line|indicators|infotypes|inheriting|init|initial|initialization|inner|input|insert|instances??|intensified|interface|interface-pool|interfaces|internal|intervals|into|inverse|inverted-date|is|job|join|keep|keeping|kernel|keys??|keywords|kind|language|last|late|layout|leading|leave|left|left-justified|legacy|length|let|levels??|like|line|line-count|line-selection|line-size|linefeed|lines|link|list|list-processing|listbox|load|load-of-program|locale??|locks??|log-point|logical|lower|mapped|mapping|margin|mark|mask|match|matchcode|maximum|members|memory|mesh|message|message-id|messages|messaging|methods??|mode|modif|modifier|modify|module|move|move-corresponding|multiply|multiply-corresponding|name|nametab|native|nested|nesting|new|new-line|new-page|new-section|next|no-display|no-extension|no-gaps??|no-grouping|no-heading|no-scrolling|no-sign|no-title|no-zero|nodes|non-unicode|non-unique|number|objects??|objmgr|obligatory|occurences??|occurrences??|occurs|of|offset|on|only|open|optional|options??|order|others|out|outer|output|output-length|overflow|overlay|pack|package|padding|page|parameter|parameter-table|parameters|part|partially|pcre|perform|performing|permissions|pf-status|places|pool|position|pragmas|preceding|precompiled|preferred|preserving|primary|print|print-control|private|privileged|procedure|process|program|property|protected|provide|push|pushbutton|put|query|queue-only|queueonly|quickinfo|radiobutton|raising|ranges??|read|read-only|received??|receiving|redefinition|reduce|ref|reference|refresh|regex|reject|renaming|replace|replacement|replacing|report|reported|request|requested|required|reserve|reset|resolution|respecting|response|restore|results??|resumable|resume|retry|return|returning|right|right-justified|rollback|rows|rp-provide-from-last|run|sap|sap-spool|save|saving|scan|screen|scroll|scroll-boundary|scrolling|search|seconds|section|select|select-options|selection|selection-screen|selection-sets??|selection-table|selections|send|separated??|session|set|shared|shift|shortdump|shortdump-id|sign|simple|simulation|single|size|skip|skipping|smart|some|sort|sortable|sorted|source|specified|split|spool|spots|sql|stable|stamp|standard|start-of-selection|starting|state|statements??|statics??|statusinfo|step|step-loop|stop|structures??|style|subkey|submatches|submit|subroutine|subscreen|substring|subtract|subtract-corresponding|suffix|sum|summary|supplied|supply|suppress|switch|symbol|syntax-check|syntax-trace|system-call|system-exceptions|tab|tabbed|tables??|tableview|tabstrip|target|tasks??|test|test-injection|test-seam|testing|text|textpool|then|throw|times??|title|titlebar|to|tokens|top-lines|top-of-page|trace-file|trace-table|trailing|transaction|transfer|transformation|translate|transporting|trmac|truncate|truncation|type|type-pools??|types|uline|unassign|unbounded|under|unicode|union|unique|unit|unix|unpack|until|unwind|up|update|upper|user|user-command|using|utf-8|uuid|valid|validate|value|value-request|values|vary|varying|version|via|visible|wait|when|where|windows??|with|with-heading|with-title|without|word|work|workspace|write|xml|zone)(?=[,.:\\\\s])","name":"keyword.control.simple.abap"},"operators":{"patterns":[{"include":"#other_operator"},{"include":"#arithmetic_operator"},{"include":"#comparison_operator"},{"include":"#logical_operator"}]},"other_operator":{"match":"(?<=\\\\s)(&&?|\\\\?=|\\\\+=|-=|/=|\\\\*=|&&=|&=)(?=\\\\s)","name":"keyword.control.simple.abap"},"reserved_names":{"match":"(?i)(?<=\\\\s)(me|super)(?=[,.\\\\s]|->)","name":"constant.language.abap"},"sql_functions":{"match":"(?i)(?<=\\\\s)(abap_system_timezone|abap_user_timezone|abs|add_days|add_months|allow_precision_loss|as_geo_json|avg|bintohex|cast|ceil|coalesce|concat_with_space|concat|corr_spearman|corr|count|currency_conversion|datn_add_days|datn_add_months|datn_days_between|dats_add_days|dats_add_months|dats_days_between|dats_from_datn|dats_is_valid|dats_tims_to_tstmp|dats_to_datn|dayname|days_between|dense_rank|division|div|extract_day|extract_hour|extract_minute|extract_month|extract_second|extract_year|first_value|floor|grouping|hextobin|initcap|instr|is_valid|lag|last_value|lead|left|length|like_regexpr|locate_regexpr_after|locate_regexpr|locate|lower|lpad|ltrim|max|median|min|mod|monthname|ntile|occurrences_regexpr|over|product|rank|replace_regexpr|replace|rigth|round|row_number|rpad|rtrim|stddev|string_agg|substring_regexpr|substring|sum|tims_from_timn|tims_is_valid|tims_to_timn|to_blob|to_clob|tstmp_add_seconds|tstmp_current_utctimestamp|tstmp_is_valid|tstmp_seconds_between|tstmp_to_dats|tstmp_to_dst|tstmp_to_tims|tstmpl_from_utcl|tstmpl_to_utcl|unit_conversion|upper|utcl_add_seconds|utcl_current|utcl_seconds_between|uuid|var|weekday)(?=\\\\()","name":"entity.name.function.sql.abap"},"sql_types":{"match":"(?i)(?<=\\\\s)(char|clnt|cuky|curr|datn|dats|dec|decfloat16|decfloat34|fltp|int1|int2|int4|int8|lang|numc|quan|raw|sstring|timn|tims|unit|utclong)(?=[()\\\\s])","name":"entity.name.type.sql.abap"},"system_fields":{"captures":{"1":{"name":"variable.language.abap"},"2":{"name":"variable.language.abap"}},"match":"(?i)\\\\b(sy)-(abcde|batch|binpt|calld|callr|colno|cpage|cprog|cucol|curow|datar|datlo|datum|dayst|dbcnt|dbnam|dbsysc|dyngr|dynnr|fdayw|fdpos|host|index|langu|ldbpg|lilli|linct|linno|linsz|lisel|listi|loopc|lsind|macol|mandt|marow|modno|msgid|msgli|msgno|msgty|msgv[1-4]|opsysc|pagno|pfkey|repid|saprl|scols|slset|spono|srows|staco|staro|stepl|subrc|sysid|tabix|tcode|tfill|timlo|title|tleng|tvar[0-9]|tzone|ucomm|uline|uname|uzeit|vline|wtitl|zonlo)(?=[.\\\\s])"},"text_symbols":{"captures":{"1":{"name":"keyword.control.simple.abap"},"2":{"name":"constant.numeric.abap"}},"match":"(?i)(?<=^|\\\\s)(text)-([0-9A-Z]{1,3})(?=[,.:\\\\s])"}},"scopeName":"source.abap"}')),a=[e];export{a as default};
@@ -0,0 +1 @@
1
+ const e=Object.freeze(JSON.parse(`{"displayName":"ActionScript","fileTypes":["as"],"name":"actionscript-3","patterns":[{"include":"#comments"},{"include":"#package"},{"include":"#class"},{"include":"#interface"},{"include":"#namespace_declaration"},{"include":"#import"},{"include":"#mxml"},{"include":"#strings"},{"include":"#regexp"},{"include":"#variable_declaration"},{"include":"#numbers"},{"include":"#primitive_types"},{"include":"#primitive_error_types"},{"include":"#dynamic_type"},{"include":"#primitive_functions"},{"include":"#language_constants"},{"include":"#language_variables"},{"include":"#guess_type"},{"include":"#guess_constant"},{"include":"#other_operators"},{"include":"#arithmetic_operators"},{"include":"#logical_operators"},{"include":"#array_access_operators"},{"include":"#vector_creation_operators"},{"include":"#control_keywords"},{"include":"#other_keywords"},{"include":"#use_namespace"},{"include":"#functions"}],"repository":{"arithmetic_operators":{"match":"([-%+/]|(?<!:)\\\\*)","name":"keyword.operator.actionscript.3"},"array_access_operators":{"match":"([]\\\\[])","name":"keyword.operator.actionscript.3"},"class":{"begin":"(^|\\\\s+|;)(\\\\b(dynamic|final|abstract)\\\\b\\\\s+)?(\\\\b(internal|public)\\\\b\\\\s+)?(\\\\b(dynamic|final|abstract)\\\\b\\\\s+)?(?=\\\\bclass\\\\b)","beginCaptures":{"3":{"name":"storage.modifier.actionscript.3"},"5":{"name":"storage.modifier.actionscript.3"},"7":{"name":"storage.modifier.actionscript.3"}},"end":"}","name":"meta.class.actionscript.3","patterns":[{"include":"#class_declaration"},{"include":"#metadata"},{"include":"#method"},{"include":"#comments"},{"include":"#strings"},{"include":"#regexp"},{"include":"#numbers"},{"include":"#primitive_types"},{"include":"#primitive_error_types"},{"include":"#dynamic_type"},{"include":"#primitive_functions"},{"include":"#language_constants"},{"include":"#language_variables"},{"include":"#other_operators"},{"include":"#other_keywords"},{"include":"#use_namespace"},{"include":"#guess_type"},{"include":"#guess_constant"},{"include":"#arithmetic_operators"},{"include":"#array_access_operators"},{"include":"#vector_creation_operators"},{"include":"#variable_declaration"},{"include":"#object_literal"}]},"class_declaration":{"begin":"\\\\b(class)\\\\b\\\\s+([$.0-9A-Z_a-z]+|\\\\*)","beginCaptures":{"1":{"name":"storage.type.class.actionscript.3"},"2":{"name":"entity.name.class.actionscript.3"}},"end":"\\\\{","name":"meta.class_declaration.actionscript.3","patterns":[{"include":"#extends"},{"include":"#implements"},{"include":"#comments"}]},"code_block":{"begin":"\\\\{","end":"}","name":"meta.code_block.actionscript.3","patterns":[{"include":"#code_block"},{"include":"#comments"},{"include":"#strings"},{"include":"#regexp"},{"include":"#variable_declaration"},{"include":"#numbers"},{"include":"#primitive_types"},{"include":"#primitive_error_types"},{"include":"#dynamic_type"},{"include":"#primitive_functions"},{"include":"#language_constants"},{"include":"#language_variables"},{"include":"#guess_type"},{"include":"#guess_constant"},{"include":"#other_operators"},{"include":"#arithmetic_operators"},{"include":"#logical_operators"},{"include":"#array_access_operators"},{"include":"#vector_creation_operators"},{"include":"#control_keywords"},{"include":"#other_keywords"},{"include":"#use_namespace"},{"include":"#functions"},{"include":"#import"}]},"comments":{"patterns":[{"begin":"/\\\\*\\\\*(?!/)","end":"\\\\*/","name":"comment.block.documentation.actionscript.3","patterns":[{"match":"@(copy|default|eventType|example|exampleText|includeExample|inheritDoc|internal|param|private|return|see|since|throws)\\\\b","name":"keyword.other.documentation.actionscript.3.asdoc"}]},{"begin":"/\\\\*","end":"\\\\*/","name":"comment.block.actionscript.3"},{"match":"//.*","name":"comment.line.actionscript.3"}]},"control_keywords":{"match":"\\\\b(if|else|do|while|for|each|continue|return|switch|case|default|break|try|catch|finally|throw|with)\\\\b","name":"keyword.control.actionscript.3"},"dynamic_type":{"captures":{"1":{"name":"support.type.actionscript.3"}},"match":"(?<=:)\\\\s*(\\\\*)"},"escapes":{"match":"\\\\\\\\(x\\\\h{2}|[012][0-7]{0,2}|3[0-6][0-7]|37[0-7]?|[4-7][0-7]?|.)","name":"constant.character.escape.actionscript.3"},"extends":{"captures":{"1":{"name":"keyword.other.actionscript.3"},"2":{"name":"entity.other.inherited-class.actionscript.3"},"3":{"name":"entity.other.inherited-class.actionscript.3"}},"match":"\\\\b(extends)\\\\b\\\\s+([$.0-9A-Z_a-z]+)\\\\s*(?:,\\\\s*([$.0-9A-Z_a-z]+))*\\\\s*","name":"meta.extends.actionscript.3"},"function_arguments":{"begin":"\\\\(","end":"\\\\)","name":"meta.function_arguments.actionscript.3","patterns":[{"include":"#parameters"},{"include":"#comments"}]},"functions":{"begin":"\\\\b(function)\\\\b(?:\\\\s+\\\\b([gs]et)\\\\b\\\\s+)?\\\\s*([$0-9A-Z_a-z]+\\\\b)?","beginCaptures":{"1":{"name":"storage.type.function.actionscript.3"},"2":{"name":"storage.modifier.actionscript.3"},"3":{"name":"entity.name.function.actionscript.3"}},"end":"($|;|(?=\\\\{))","name":"meta.function.actionscript.3","patterns":[{"include":"#function_arguments"},{"include":"#return_type"},{"include":"#comments"}]},"guess_constant":{"captures":{"1":{"name":"constant.other.actionscript.3"}},"match":"\\\\b([$A-Z][0-9A-Z_]+)\\\\b"},"guess_type":{"captures":{"1":{"name":"support.type.actionscript.3"}},"match":"\\\\b((?:[$0-9A-Z_a-z]+\\\\.)*[A-Z][0-9A-Z]*[a-z]+[$0-9A-Z_a-z]*)\\\\b"},"implements":{"captures":{"1":{"name":"keyword.other.actionscript.3"},"2":{"name":"entity.other.inherited-class.actionscript.3"},"3":{"name":"entity.other.inherited-class.actionscript.3"}},"match":"\\\\b(implements)\\\\b\\\\s+([$.0-9A-Z_a-z]+)\\\\s*(?:,\\\\s*([$.0-9A-Z_a-z]+))*\\\\s*","name":"meta.implements.actionscript.3"},"import":{"captures":{"2":{"name":"keyword.control.import.actionscript.3"},"3":{"name":"support.type.actionscript.3"}},"match":"(^|\\\\s+|;)\\\\b(import)\\\\b\\\\s+([$.0-9A-Z_a-z]+(?:\\\\.\\\\*)?)\\\\s*(?=;|$)","name":"meta.import.actionscript.3"},"interface":{"begin":"(^|\\\\s+|;)(\\\\b(internal|public)\\\\b\\\\s+)?(?=\\\\binterface\\\\b)","beginCaptures":{"3":{"name":"storage.modifier.actionscript.3"}},"end":"}","name":"meta.interface.actionscript.3","patterns":[{"include":"#interface_declaration"},{"include":"#metadata"},{"include":"#functions"},{"include":"#comments"}]},"interface_declaration":{"begin":"\\\\b(interface)\\\\b\\\\s+([$.0-9A-Z_a-z]+)","beginCaptures":{"1":{"name":"storage.type.interface.actionscript.3"},"2":{"name":"entity.name.class.actionscript.3"}},"end":"\\\\{","name":"meta.class_declaration.actionscript.3","patterns":[{"include":"#extends"},{"include":"#comments"}]},"language_constants":{"match":"\\\\b(true|false|null|Infinity|-Infinity|NaN|undefined)\\\\b","name":"constant.language.actionscript.3"},"language_variables":{"match":"\\\\b(super|this|arguments)\\\\b","name":"variable.language.actionscript.3"},"logical_operators":{"match":"([!\\\\&<>?^|~])","name":"keyword.operator.actionscript.3"},"metadata":{"begin":"(?<=(?:^|[;{}]|\\\\*/)\\\\s*)\\\\[\\\\s*\\\\b([$A-Z_a-z][$0-9A-Z_a-z]+)\\\\b","beginCaptures":{"1":{"name":"keyword.other.actionscript.3"}},"end":"]","name":"meta.metadata_info.actionscript.3","patterns":[{"include":"#metadata_info"}]},"metadata_info":{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"#strings"},{"captures":{"1":{"name":"variable.parameter.actionscript.3"},"2":{"name":"keyword.operator.actionscript.3"}},"match":"(\\\\w+)\\\\s*(=)"}]},"method":{"begin":"(^|\\\\s+)((\\\\w+)\\\\s+)?((\\\\w+)\\\\s+)?((\\\\w+)\\\\s+)?((\\\\w+)\\\\s+)?(?=\\\\bfunction\\\\b)","beginCaptures":{"3":{"name":"storage.modifier.actionscript.3"},"5":{"name":"storage.modifier.actionscript.3"},"7":{"name":"storage.modifier.actionscript.3"},"8":{"name":"storage.modifier.actionscript.3"}},"end":"(?<=([;}]))","name":"meta.method.actionscript.3","patterns":[{"include":"#functions"},{"include":"#code_block"}]},"mxml":{"begin":"<!\\\\[CDATA\\\\[","end":"]]>","name":"meta.cdata.actionscript.3","patterns":[{"include":"#comments"},{"include":"#import"},{"include":"#metadata"},{"include":"#class"},{"include":"#namespace_declaration"},{"include":"#use_namespace"},{"include":"#class_declaration"},{"include":"#method"},{"include":"#comments"},{"include":"#strings"},{"include":"#regexp"},{"include":"#numbers"},{"include":"#primitive_types"},{"include":"#primitive_error_types"},{"include":"#dynamic_type"},{"include":"#primitive_functions"},{"include":"#language_constants"},{"include":"#language_variables"},{"include":"#other_keywords"},{"include":"#guess_type"},{"include":"#guess_constant"},{"include":"#other_operators"},{"include":"#arithmetic_operators"},{"include":"#array_access_operators"},{"include":"#vector_creation_operators"},{"include":"#variable_declaration"}]},"namespace_declaration":{"captures":{"2":{"name":"storage.modifier.actionscript.3"},"3":{"name":"storage.modifier.actionscript.3"}},"match":"((\\\\w+)\\\\s+)?(namespace)\\\\s+[$0-9A-Z_a-z]+","name":"meta.namespace_declaration.actionscript.3"},"numbers":{"match":"\\\\b((0([Xx])\\\\h*)|(([0-9]+\\\\.?[0-9]*)|(\\\\.[0-9]+))(([Ee])([-+])?[0-9]+)?)([Ll]|UL|ul|[FUfu])?\\\\b","name":"constant.numeric.actionscript.3"},"object_literal":{"begin":"\\\\{","end":"}","name":"meta.object_literal.actionscript.3","patterns":[{"include":"#object_literal"},{"include":"#comments"},{"include":"#strings"},{"include":"#regexp"},{"include":"#numbers"},{"include":"#primitive_types"},{"include":"#primitive_error_types"},{"include":"#dynamic_type"},{"include":"#primitive_functions"},{"include":"#language_constants"},{"include":"#language_variables"},{"include":"#guess_type"},{"include":"#guess_constant"},{"include":"#array_access_operators"},{"include":"#vector_creation_operators"},{"include":"#functions"}]},"other_keywords":{"match":"\\\\b(as|delete|in|instanceof|is|native|new|to|typeof)\\\\b","name":"keyword.other.actionscript.3"},"other_operators":{"match":"([.=])","name":"keyword.operator.actionscript.3"},"package":{"begin":"(^|\\\\s+)(package)\\\\b","beginCaptures":{"2":{"name":"keyword.other.actionscript.3"}},"end":"}","name":"meta.package.actionscript.3","patterns":[{"include":"#package_name"},{"include":"#variable_declaration"},{"include":"#method"},{"include":"#comments"},{"include":"#return_type"},{"include":"#import"},{"include":"#use_namespace"},{"include":"#strings"},{"include":"#numbers"},{"include":"#language_constants"},{"include":"#metadata"},{"include":"#class"},{"include":"#interface"},{"include":"#namespace_declaration"}]},"package_name":{"begin":"(?<=package)\\\\s+([._\\\\w]*)\\\\b","end":"\\\\{","name":"meta.package_name.actionscript.3"},"parameters":{"begin":"(\\\\.\\\\.\\\\.)?\\\\s*([$A-Z_a-z][$0-9A-Z_a-z]*)(?:\\\\s*(:)\\\\s*(?:([$A-Za-z][$0-9A-Z_a-z]+(?:\\\\.[$A-Za-z][$0-9A-Z_a-z]+)*)(?:\\\\.<([$A-Za-z][$0-9A-Z_a-z]+(?:\\\\.[$A-Za-z][$0-9A-Z_a-z]+)*)>)?|(\\\\*)))?(?:\\\\s*(=))?","beginCaptures":{"1":{"name":"keyword.operator.actionscript.3"},"2":{"name":"variable.parameter.actionscript.3"},"3":{"name":"keyword.operator.actionscript.3"},"4":{"name":"support.type.actionscript.3"},"5":{"name":"support.type.actionscript.3"},"6":{"name":"support.type.actionscript.3"},"7":{"name":"keyword.operator.actionscript.3"}},"end":",|(?=\\\\))","patterns":[{"include":"#strings"},{"include":"#numbers"},{"include":"#language_constants"},{"include":"#comments"},{"include":"#primitive_types"},{"include":"#primitive_error_types"},{"include":"#dynamic_type"},{"include":"#guess_type"},{"include":"#guess_constant"}]},"primitive_error_types":{"captures":{"1":{"name":"support.class.error.actionscript.3"}},"match":"\\\\b((Argument|Definition|Eval|Internal|Range|Reference|Security|Syntax|Type|URI|Verify)?Error)\\\\b"},"primitive_functions":{"captures":{"1":{"name":"support.function.actionscript.3"}},"match":"\\\\b(decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|escape|isFinite|isNaN|isXMLName|parseFloat|parseInt|trace|unescape)(?=\\\\s*\\\\()"},"primitive_types":{"captures":{"1":{"name":"support.class.builtin.actionscript.3"}},"match":"\\\\b(Array|Boolean|Class|Date|Function|int|JSON|Math|Namespace|Number|Object|QName|RegExp|String|uint|Vector|XML|XMLList|\\\\*(?<=a))\\\\b"},"regexp":{"begin":"(?<=[(,:=\\\\[]|^|return|&&|\\\\|\\\\||!)\\\\s*(/)(?![*+/?{}])","end":"$|(/)[gim]*","name":"string.regex.actionscript.3","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.actionscript.3"},{"match":"\\\\[(\\\\\\\\]|[^]])*]","name":"constant.character.class.actionscript.3"}]},"return_type":{"captures":{"1":{"name":"keyword.operator.actionscript.3"},"2":{"name":"support.type.actionscript.3"},"3":{"name":"support.type.actionscript.3"},"4":{"name":"support.type.actionscript.3"}},"match":"(:)\\\\s*([$A-Za-z][$0-9A-Z_a-z]+(?:\\\\.[$A-Za-z][$0-9A-Z_a-z]+)*)(?:\\\\.<([$A-Za-z][$0-9A-Z_a-z]+(?:\\\\.[$A-Za-z][$0-9A-Z_a-z]+)*)>)?|(\\\\*)"},"strings":{"patterns":[{"begin":"@\\"","end":"\\"","name":"string.quoted.verbatim.actionscript.3"},{"begin":"\\"","end":"\\"","name":"string.quoted.double.actionscript.3","patterns":[{"include":"#escapes"}]},{"begin":"'","end":"'","name":"string.quoted.single.actionscript.3","patterns":[{"include":"#escapes"}]}]},"use_namespace":{"captures":{"2":{"name":"keyword.other.actionscript.3"},"3":{"name":"keyword.other.actionscript.3"},"4":{"name":"storage.modifier.actionscript.3"}},"match":"(^|\\\\s+|;)(use\\\\s+)?(namespace)\\\\s+(\\\\w+)\\\\s*(;|$)"},"variable_declaration":{"captures":{"2":{"name":"storage.modifier.actionscript.3"},"4":{"name":"storage.modifier.actionscript.3"},"6":{"name":"storage.modifier.actionscript.3"},"7":{"name":"storage.modifier.actionscript.3"},"8":{"name":"keyword.operator.actionscript.3"}},"match":"((static)\\\\s+)?((\\\\w+)\\\\s+)?((static)\\\\s+)?(const|var)\\\\s+[$0-9A-Z_a-z]+(?:\\\\s*(:))?","name":"meta.variable_declaration.actionscript.3"},"vector_creation_operators":{"match":"([<>])","name":"keyword.operator.actionscript.3"}},"scopeName":"source.actionscript.3"}`)),t=[e];export{t as default};