@pubinfo/devtools 2.0.15 → 2.1.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 (348) hide show
  1. package/dist/client/assets/abap-C4bT1QEl.js +3 -0
  2. package/dist/client/assets/actionscript-3-BCWJ3mFB.js +3 -0
  3. package/dist/client/assets/ada-BwfYJ3cr.js +3 -0
  4. package/dist/client/assets/andromeeda-B_6dIUNk.js +2 -0
  5. package/dist/client/assets/angular-html-BPWgfvBc.js +23 -0
  6. package/dist/client/assets/angular-html-CAmvPqke.js +5 -0
  7. package/dist/client/assets/angular-ts-DGzTDMev.js +24 -0
  8. package/dist/client/assets/apache-kfYmMYjJ.js +3 -0
  9. package/dist/client/assets/apex-BEradrtF.js +3 -0
  10. package/dist/client/assets/apl-BPuavpVx.js +16 -0
  11. package/dist/client/assets/applescript-CuHZw4Cf.js +3 -0
  12. package/dist/client/assets/ara-BkKR-TQQ.js +3 -0
  13. package/dist/client/assets/asciidoc-CBayNp_C.js +3 -0
  14. package/dist/client/assets/asm-BwfqIsue.js +3 -0
  15. package/dist/client/assets/astro-S5XuEH5N.js +17 -0
  16. package/dist/client/assets/aurora-x-BXNTnfne.js +2 -0
  17. package/dist/client/assets/awk-BTtzreuE.js +3 -0
  18. package/dist/client/assets/ayu-dark-DqipJzHd.js +2 -0
  19. package/dist/client/assets/ballerina-Cr0e12Uh.js +3 -0
  20. package/dist/client/assets/bat--mz103Th.js +3 -0
  21. package/dist/client/assets/beancount-CFAdYWr2.js +3 -0
  22. package/dist/client/assets/berry-Bzd2YdCH.js +3 -0
  23. package/dist/client/assets/bibtex-DT-WcF1n.js +3 -0
  24. package/dist/client/assets/bicep-DUXUP27W.js +3 -0
  25. package/dist/client/assets/blade-BD3Ti8S8.js +20 -0
  26. package/dist/client/assets/bsl-FJCc2ZjR.js +4 -0
  27. package/dist/client/assets/c-0S9FUYVg.js +2 -0
  28. package/dist/client/assets/c-DcdCmnmu.js +3 -0
  29. package/dist/client/assets/cadence-Du0qqjuO.js +3 -0
  30. package/dist/client/assets/cairo-CT1kFY4g.js +4 -0
  31. package/dist/client/assets/catppuccin-frappe-DZIny9D9.js +2 -0
  32. package/dist/client/assets/catppuccin-latte-HfmdJgD2.js +2 -0
  33. package/dist/client/assets/catppuccin-macchiato-1ffQHJ6s.js +2 -0
  34. package/dist/client/assets/catppuccin-mocha-DRYMSOp4.js +2 -0
  35. package/dist/client/assets/clarity-CW1NMBSy.js +3 -0
  36. package/dist/client/assets/clojure-DkHpOkH2.js +3 -0
  37. package/dist/client/assets/cmake-87ADX9pg.js +2 -0
  38. package/dist/client/assets/cmake-CXVvo3Mh.js +3 -0
  39. package/dist/client/assets/cobol-CE0tFF5i.js +11 -0
  40. package/dist/client/assets/codeowners-DYf_YsrY.js +3 -0
  41. package/dist/client/assets/codeql-BeSKjUdD.js +3 -0
  42. package/dist/client/assets/coffee-D8rtNx1a.js +4 -0
  43. package/dist/client/assets/common-lisp-CsedMwlK.js +3 -0
  44. package/dist/client/assets/coq-Cfs5oQ5z.js +3 -0
  45. package/dist/client/assets/cpp-B4kRV-Mr.js +6 -0
  46. package/dist/client/assets/cpp-C4U1u9xk.js +19 -0
  47. package/dist/client/assets/crystal-C51LLczf.js +17 -0
  48. package/dist/client/assets/csharp-CxX8v9Z1.js +2 -0
  49. package/dist/client/assets/csharp-DYqgfnaO.js +3 -0
  50. package/dist/client/assets/css-BmwDvvHL.js +2 -0
  51. package/dist/client/assets/css-DVW7ZXKV.js +3 -0
  52. package/dist/client/assets/csv-B2eUHTA8.js +2 -0
  53. package/dist/client/assets/csv-rLH0WuQO.js +3 -0
  54. package/dist/client/assets/cue-CzLrU992.js +3 -0
  55. package/dist/client/assets/cypher-C2RENEAP.js +3 -0
  56. package/dist/client/assets/d-BJOAQFpK.js +3 -0
  57. package/dist/client/assets/dark-plus-Db9rRSHq.js +2 -0
  58. package/dist/client/assets/dart-B-KTJ0-J.js +3 -0
  59. package/dist/client/assets/dax-B7qtS36S.js +3 -0
  60. package/dist/client/assets/desktop-DfgAqZ8-.js +3 -0
  61. package/dist/client/assets/diff-akky_HM9.js +3 -0
  62. package/dist/client/assets/diff-pjHYd3BC.js +2 -0
  63. package/dist/client/assets/docker-CRnIvYqh.js +3 -0
  64. package/dist/client/assets/dotenv-CwGZ7tJA.js +3 -0
  65. package/dist/client/assets/dracula-C0nacXF8.js +2 -0
  66. package/dist/client/assets/dracula-soft-wdVBcfBY.js +2 -0
  67. package/dist/client/assets/dream-maker-B9ezz9kX.js +3 -0
  68. package/dist/client/assets/edge-WSoBDjCt.js +13 -0
  69. package/dist/client/assets/elixir-4Bcc41kI.js +6 -0
  70. package/dist/client/assets/elm-DisSriNR.js +5 -0
  71. package/dist/client/assets/emacs-lisp-fLGPzin6.js +3 -0
  72. package/dist/client/assets/erb-BuJIU0wX.js +26 -0
  73. package/dist/client/assets/erlang-BbsDmeCk.js +4 -0
  74. package/dist/client/assets/everforest-dark-NN95DCJl.js +2 -0
  75. package/dist/client/assets/everforest-light-idPY23JU.js +2 -0
  76. package/dist/client/assets/fennel-CSR5Mk7N.js +3 -0
  77. package/dist/client/assets/fetch-CTfoU6yt.js +873 -0
  78. package/dist/client/assets/fish-BlTQgKCk.js +3 -0
  79. package/dist/client/assets/fluent-TT7fQWak.js +3 -0
  80. package/dist/client/assets/fortran-fixed-form-DvnLkzBN.js +4 -0
  81. package/dist/client/assets/fortran-free-form-B1QQVoTU.js +3 -0
  82. package/dist/client/assets/fortran-free-form-xkm1udFL.js +2 -0
  83. package/dist/client/assets/fsharp-DyWqhI4o.js +4 -0
  84. package/dist/client/assets/gdresource-Ddtxl8Ni.js +9 -0
  85. package/dist/client/assets/gdscript-DLFBRMyo.js +2 -0
  86. package/dist/client/assets/gdscript-DLJhaHhX.js +3 -0
  87. package/dist/client/assets/gdshader-BFRlv_nM.js +3 -0
  88. package/dist/client/assets/gdshader-tCO8fx4f.js +2 -0
  89. package/dist/client/assets/genie-BmogPuVq.js +3 -0
  90. package/dist/client/assets/gherkin-uh-Mxnsi.js +3 -0
  91. package/dist/client/assets/git-commit-4JodcKYl.js +4 -0
  92. package/dist/client/assets/git-rebase-DZ3MZg-o.js +4 -0
  93. package/dist/client/assets/github-dark-C6J_EBvu.js +2 -0
  94. package/dist/client/assets/github-dark-default-DQDadoHp.js +2 -0
  95. package/dist/client/assets/github-dark-dimmed-DU7K1EZq.js +2 -0
  96. package/dist/client/assets/github-dark-high-contrast-BfsjVJDY.js +2 -0
  97. package/dist/client/assets/github-light-CM4f7fBZ.js +2 -0
  98. package/dist/client/assets/github-light-default-B_A-12O3.js +2 -0
  99. package/dist/client/assets/github-light-high-contrast-BhG28-t6.js +2 -0
  100. package/dist/client/assets/gleam-BByYw7_b.js +3 -0
  101. package/dist/client/assets/glimmer-js-Dw1YG46K.js +13 -0
  102. package/dist/client/assets/glimmer-ts-BoTKtLAn.js +13 -0
  103. package/dist/client/assets/glsl-BcvqNIzr.js +4 -0
  104. package/dist/client/assets/glsl-D7d1_ns-.js +3 -0
  105. package/dist/client/assets/gnuplot-CgWtMBol.js +3 -0
  106. package/dist/client/assets/go-B0RP9LHI.js +3 -0
  107. package/dist/client/assets/go-C2ti7VbT.js +2 -0
  108. package/dist/client/assets/graphql-CZtSUIVW.js +13 -0
  109. package/dist/client/assets/graphql-CeZ4pvez.js +6 -0
  110. package/dist/client/assets/groovy-Bpl59neu.js +3 -0
  111. package/dist/client/assets/gruvbox-dark-hard-BddnLFai.js +2 -0
  112. package/dist/client/assets/gruvbox-dark-medium-DClLifyq.js +2 -0
  113. package/dist/client/assets/gruvbox-dark-soft-CoL2WoEr.js +2 -0
  114. package/dist/client/assets/gruvbox-light-hard-CF2FUQYG.js +2 -0
  115. package/dist/client/assets/gruvbox-light-medium-DdKpn-Z3.js +2 -0
  116. package/dist/client/assets/gruvbox-light-soft-CXnF8CjV.js +2 -0
  117. package/dist/client/assets/hack-BYb9BCJH.js +11 -0
  118. package/dist/client/assets/haml-BImF9_sT.js +9 -0
  119. package/dist/client/assets/haml-DW6kjLLA.js +4 -0
  120. package/dist/client/assets/handlebars-BioaJ5nM.js +13 -0
  121. package/dist/client/assets/haskell-BmWZ6TRE.js +3 -0
  122. package/dist/client/assets/haxe-D-HM2q7w.js +3 -0
  123. package/dist/client/assets/haxe-DIufun--.js +2 -0
  124. package/dist/client/assets/hcl-S6uG4iQ0.js +3 -0
  125. package/dist/client/assets/hjson-mO0ORdeS.js +3 -0
  126. package/dist/client/assets/hlsl-C0jZ0PCe.js +2 -0
  127. package/dist/client/assets/hlsl-hj232ngO.js +3 -0
  128. package/dist/client/assets/houston-CdK1CUz1.js +2 -0
  129. package/dist/client/assets/html-BLAmfzfF.js +9 -0
  130. package/dist/client/assets/html-BpqLChx7.js +4 -0
  131. package/dist/client/assets/html-derivative-D5DGRC4b.js +5 -0
  132. package/dist/client/assets/html-derivative-EjRHFpnu.js +4 -0
  133. package/dist/client/assets/http-lZvWEzFG.js +18 -0
  134. package/dist/client/assets/hurl-Cq9E8TWb.js +16 -0
  135. package/dist/client/assets/hxml-ee_Yi0Bv.js +4 -0
  136. package/dist/client/assets/hy-DICTrdi3.js +3 -0
  137. package/dist/client/assets/imba-kv1YCcqW.js +3 -0
  138. package/dist/client/assets/index-BSkduMKH.js +7637 -0
  139. package/dist/client/assets/index-Co6hzA6u.css +443 -0
  140. package/dist/client/assets/ini-CeoNvVsQ.js +3 -0
  141. package/dist/client/assets/java-BUOns_Ip.js +2 -0
  142. package/dist/client/assets/java-DvTil0N3.js +3 -0
  143. package/dist/client/assets/javascript-239S-npV.js +3 -0
  144. package/dist/client/assets/javascript-qk0JMc6B.js +2 -0
  145. package/dist/client/assets/jinja-Bg3R28jD.js +8 -0
  146. package/dist/client/assets/jison-BC1q7dZB.js +4 -0
  147. package/dist/client/assets/json-B7uypvxJ.js +2 -0
  148. package/dist/client/assets/json-DugJQEGz.js +3 -0
  149. package/dist/client/assets/json5-7yQVqemE.js +3 -0
  150. package/dist/client/assets/jsonc-D8JMlU2y.js +3 -0
  151. package/dist/client/assets/jsonl-C08qrvBf.js +3 -0
  152. package/dist/client/assets/jsonnet-BvmZyW4T.js +3 -0
  153. package/dist/client/assets/jssm-DKBgqWqY.js +3 -0
  154. package/dist/client/assets/jsx-CT1RQ-OJ.js +3 -0
  155. package/dist/client/assets/jsx-CsU_AUfl.js +2 -0
  156. package/dist/client/assets/julia-EKUZwWmm.js +18 -0
  157. package/dist/client/assets/kanagawa-dragon-CT0GKJCY.js +2 -0
  158. package/dist/client/assets/kanagawa-lotus-BnTLrrY2.js +2 -0
  159. package/dist/client/assets/kanagawa-wave-DZKSoWHj.js +2 -0
  160. package/dist/client/assets/kdl-DVROzgs-.js +3 -0
  161. package/dist/client/assets/kotlin-DccTc7ae.js +3 -0
  162. package/dist/client/assets/kusto-DfjJ0A2b.js +3 -0
  163. package/dist/client/assets/laserwave-tIFKC5tj.js +2 -0
  164. package/dist/client/assets/latex-CflrJF-D.js +5 -0
  165. package/dist/client/assets/lean-CPP8F_7u.js +3 -0
  166. package/dist/client/assets/less-C1zBW-s6.js +3 -0
  167. package/dist/client/assets/less-CICUgOj-.js +2 -0
  168. package/dist/client/assets/light-plus-DhWyKCGQ.js +2 -0
  169. package/dist/client/assets/liquid-PHiGTwj1.js +13 -0
  170. package/dist/client/assets/llvm-I5QJoasC.js +3 -0
  171. package/dist/client/assets/log-gyTYf2xU.js +3 -0
  172. package/dist/client/assets/logo-DfMKoOqX.js +3 -0
  173. package/dist/client/assets/lua-CBf0ggeL.js +4 -0
  174. package/dist/client/assets/lua-crOEWYZ0.js +3 -0
  175. package/dist/client/assets/luau-B17X0UH2.js +3 -0
  176. package/dist/client/assets/make-B8j2I5oP.js +3 -0
  177. package/dist/client/assets/markdown-BIZO6UqW.js +2 -0
  178. package/dist/client/assets/markdown-DVA_ZXYg.js +3 -0
  179. package/dist/client/assets/marko-CE_g888v.js +13 -0
  180. package/dist/client/assets/material-theme-CoPt-P4I.js +2 -0
  181. package/dist/client/assets/material-theme-darker-FEG2rAOf.js +2 -0
  182. package/dist/client/assets/material-theme-lighter-BF7TTIIN.js +2 -0
  183. package/dist/client/assets/material-theme-ocean-DLZ8d_BI.js +2 -0
  184. package/dist/client/assets/material-theme-palenight-DDSTuCs0.js +2 -0
  185. package/dist/client/assets/matlab-k1xjK_b6.js +3 -0
  186. package/dist/client/assets/mdc-CTYOzD1j.js +14 -0
  187. package/dist/client/assets/mdx-BQUZJDaf.js +3 -0
  188. package/dist/client/assets/mermaid-DJ04LSyL.js +3 -0
  189. package/dist/client/assets/min-dark-B0gHld8V.js +2 -0
  190. package/dist/client/assets/min-light-DsiXGiCk.js +2 -0
  191. package/dist/client/assets/mipsasm-eWlP57CF.js +3 -0
  192. package/dist/client/assets/mojo-DPKjCktn.js +3 -0
  193. package/dist/client/assets/monokai-wE1Oe3ZE.js +2 -0
  194. package/dist/client/assets/move-jfk5_q-h.js +3 -0
  195. package/dist/client/assets/narrat-pUgLLkv0.js +3 -0
  196. package/dist/client/assets/nextflow-Cc6ZMjG9.js +3 -0
  197. package/dist/client/assets/nginx-Dj2-Xu09.js +5 -0
  198. package/dist/client/assets/night-owl-Bhwe1yQ8.js +2 -0
  199. package/dist/client/assets/nim-Btzc76t3.js +20 -0
  200. package/dist/client/assets/nix-D9NfD_az.js +3 -0
  201. package/dist/client/assets/nord-BSQfXDuM.js +2 -0
  202. package/dist/client/assets/nushell-BRDcl2mr.js +3 -0
  203. package/dist/client/assets/objective-c-DlHl8NyP.js +3 -0
  204. package/dist/client/assets/objective-cpp-B0dcjsTM.js +3 -0
  205. package/dist/client/assets/ocaml-F3DDYO_6.js +3 -0
  206. package/dist/client/assets/one-dark-pro-B5HIL-pf.js +2 -0
  207. package/dist/client/assets/one-light-hd3TKOg4.js +2 -0
  208. package/dist/client/assets/pages-BPB-93sD.js +18 -0
  209. package/dist/client/assets/pascal-k-jf8TbO.js +3 -0
  210. package/dist/client/assets/perl-DLie958B.js +16 -0
  211. package/dist/client/assets/php-CeVstFNC.js +17 -0
  212. package/dist/client/assets/php-Dqyegpf1.js +9 -0
  213. package/dist/client/assets/pkl-CTBspQUg.js +3 -0
  214. package/dist/client/assets/plastic-DTqiHuTe.js +2 -0
  215. package/dist/client/assets/plsql-CronX4zK.js +3 -0
  216. package/dist/client/assets/po-DIoaMCjY.js +3 -0
  217. package/dist/client/assets/poimandres-Ct2BSofG.js +2 -0
  218. package/dist/client/assets/polar-B5raTfsD.js +3 -0
  219. package/dist/client/assets/postcss-4oWH01ol.js +3 -0
  220. package/dist/client/assets/postcss-C4klqPVI.js +2 -0
  221. package/dist/client/assets/powerquery-Cq13nLq4.js +3 -0
  222. package/dist/client/assets/powershell-u1gI72JX.js +3 -0
  223. package/dist/client/assets/prisma-HKQ5cqp8.js +3 -0
  224. package/dist/client/assets/prolog-BesjPHql.js +3 -0
  225. package/dist/client/assets/proto-AagVn4-5.js +3 -0
  226. package/dist/client/assets/pug-D9BazAbt.js +11 -0
  227. package/dist/client/assets/puppet-DH-RAFaa.js +3 -0
  228. package/dist/client/assets/purescript-DfNGfmFP.js +3 -0
  229. package/dist/client/assets/python-BmLHvQtk.js +2 -0
  230. package/dist/client/assets/python-Dn88StJc.js +3 -0
  231. package/dist/client/assets/qml-Dsl5qRow.js +4 -0
  232. package/dist/client/assets/qmldir-DDMrTfWZ.js +3 -0
  233. package/dist/client/assets/qss-CHdy7svE.js +3 -0
  234. package/dist/client/assets/r-CbolghQs.js +2 -0
  235. package/dist/client/assets/r-DT24G0Sx.js +3 -0
  236. package/dist/client/assets/racket-B79KAvJY.js +3 -0
  237. package/dist/client/assets/raku-CTMhaGVX.js +3 -0
  238. package/dist/client/assets/razor-BjH6275R.js +11 -0
  239. package/dist/client/assets/red-CEj0QRPt.js +2 -0
  240. package/dist/client/assets/reg-Cypx77mL.js +3 -0
  241. package/dist/client/assets/regexp-ClZtLNbS.js +3 -0
  242. package/dist/client/assets/regexp-DJtnbMg9.js +2 -0
  243. package/dist/client/assets/rel-BpE3syVu.js +3 -0
  244. package/dist/client/assets/riscv-DyE_5IvB.js +3 -0
  245. package/dist/client/assets/rose-pine-6IUiFzUI.js +2 -0
  246. package/dist/client/assets/rose-pine-dawn-DoRlotcg.js +2 -0
  247. package/dist/client/assets/rose-pine-moon-B5Df1HyW.js +2 -0
  248. package/dist/client/assets/rosmsg-CIAJEgNV.js +3 -0
  249. package/dist/client/assets/rst-Pxh4TKKn.js +35 -0
  250. package/dist/client/assets/ruby-CAlvFaP5.js +29 -0
  251. package/dist/client/assets/ruby-Y14tynbZ.js +20 -0
  252. package/dist/client/assets/rust-DJhGYCa5.js +3 -0
  253. package/dist/client/assets/sas-BQQp9-K3.js +4 -0
  254. package/dist/client/assets/sass-DeLGkK3L.js +3 -0
  255. package/dist/client/assets/scala-cReyE3Yh.js +3 -0
  256. package/dist/client/assets/scheme-B1Lo-75f.js +3 -0
  257. package/dist/client/assets/scss-BP3WrVDm.js +3 -0
  258. package/dist/client/assets/scss-CJyb8K_U.js +4 -0
  259. package/dist/client/assets/sdbl-BKlGfwqV.js +3 -0
  260. package/dist/client/assets/sdbl-CLmP1IYn.js +2 -0
  261. package/dist/client/assets/server-router-BPUoghL2.js +8930 -0
  262. package/dist/client/assets/server-router-BiZSSnZD.css +91 -0
  263. package/dist/client/assets/shaderlab-C8C8_BgV.js +4 -0
  264. package/dist/client/assets/shellscript-Bd0FHBYA.js +2 -0
  265. package/dist/client/assets/shellscript-DsF2JDJS.js +3 -0
  266. package/dist/client/assets/shellsession-YAJaKmo5.js +4 -0
  267. package/dist/client/assets/slack-dark-BmjvCrQc.js +2 -0
  268. package/dist/client/assets/slack-ochin-PXT7PX3o.js +2 -0
  269. package/dist/client/assets/smalltalk-B3peVJF-.js +3 -0
  270. package/dist/client/assets/snazzy-light-DJv4SeqQ.js +2 -0
  271. package/dist/client/assets/solarized-dark-BvCiP_16.js +2 -0
  272. package/dist/client/assets/solarized-light-Bcu-a8JZ.js +2 -0
  273. package/dist/client/assets/solidity-2avG4OxK.js +3 -0
  274. package/dist/client/assets/soy-BwO6v7SS.js +6 -0
  275. package/dist/client/assets/sparql-Ctv9JmsW.js +4 -0
  276. package/dist/client/assets/splunk-UTnMmJ7Q.js +3 -0
  277. package/dist/client/assets/sql-DJRi7-HS.js +3 -0
  278. package/dist/client/assets/sql-DxeQhHVR.js +2 -0
  279. package/dist/client/assets/ssh-config-Du7ucyU5.js +3 -0
  280. package/dist/client/assets/stata-CBQSMhJu.js +4 -0
  281. package/dist/client/assets/stylus-BcbGHyGm.js +2 -0
  282. package/dist/client/assets/stylus-ESl0ir-D.js +3 -0
  283. package/dist/client/assets/svelte-C7A5FsG_.js +13 -0
  284. package/dist/client/assets/swift-BEUwwDAA.js +3 -0
  285. package/dist/client/assets/synthwave-84-BIVTX2kK.js +2 -0
  286. package/dist/client/assets/system-verilog-jIIGzizp.js +3 -0
  287. package/dist/client/assets/systemd-Do-I7Dk6.js +3 -0
  288. package/dist/client/assets/talonscript-B8BQ8lUi.js +3 -0
  289. package/dist/client/assets/tasl-Yr56vlbD.js +3 -0
  290. package/dist/client/assets/tcl-DHCz_jpi.js +3 -0
  291. package/dist/client/assets/templ-Dan_9-H5.js +11 -0
  292. package/dist/client/assets/terraform-CFJJDCa4.js +3 -0
  293. package/dist/client/assets/tex-CrNYpU8F.js +3 -0
  294. package/dist/client/assets/tex-DQvqQIPT.js +4 -0
  295. package/dist/client/assets/tokyo-night-C-8sx9_4.js +2 -0
  296. package/dist/client/assets/toml-CBSc9ib7.js +3 -0
  297. package/dist/client/assets/ts-tags-BSSXKo8m.js +49 -0
  298. package/dist/client/assets/tsv-B0JD-xkP.js +3 -0
  299. package/dist/client/assets/tsx-BV_Ie_mt.js +3 -0
  300. package/dist/client/assets/tsx-BzJMQxCY.js +2 -0
  301. package/dist/client/assets/turtle-kxVyEHLU.js +3 -0
  302. package/dist/client/assets/turtle-vZsG0FWM.js +2 -0
  303. package/dist/client/assets/twig-CUV6hi0h.js +34 -0
  304. package/dist/client/assets/typescript-Crma8FE2.js +3 -0
  305. package/dist/client/assets/typescript-nzfneafv.js +2 -0
  306. package/dist/client/assets/typespec-DCuJQu6m.js +3 -0
  307. package/dist/client/assets/typst-BDgLoDzV.js +3 -0
  308. package/dist/client/assets/v-DMA-YYXE.js +3 -0
  309. package/dist/client/assets/vala-BtBKHkJB.js +3 -0
  310. package/dist/client/assets/vb-CyVTXibQ.js +3 -0
  311. package/dist/client/assets/verilog-CC_Yo3jQ.js +3 -0
  312. package/dist/client/assets/vesper-BLuvFGfg.js +2 -0
  313. package/dist/client/assets/vhdl-C7ADyr0o.js +3 -0
  314. package/dist/client/assets/viml-hax2M4w6.js +3 -0
  315. package/dist/client/assets/vitesse-black-58mZKXM9.js +2 -0
  316. package/dist/client/assets/vitesse-dark-BE2jsHp9.js +2 -0
  317. package/dist/client/assets/vitesse-light-Bko17iRe.js +2 -0
  318. package/dist/client/assets/vue-BuGHx9kw.js +8 -0
  319. package/dist/client/assets/vue-CahofuY8.js +29 -0
  320. package/dist/client/assets/vue-html-B9xEgjjB.js +14 -0
  321. package/dist/client/assets/vue-vine-B9sh5nZz.js +23 -0
  322. package/dist/client/assets/vyper-BDpDemAA.js +3 -0
  323. package/dist/client/assets/wasm-BuJrhBgW.js +5 -0
  324. package/dist/client/assets/wasm-C9wAFEif.js +3 -0
  325. package/dist/client/assets/wenyan-DSsQqdmG.js +3 -0
  326. package/dist/client/assets/wgsl-CMOam7bY.js +3 -0
  327. package/dist/client/assets/wikitext-BqkWeRVY.js +3 -0
  328. package/dist/client/assets/wit-CHHZn0fR.js +3 -0
  329. package/dist/client/assets/wolfram-DhJOgCbz.js +3 -0
  330. package/dist/client/assets/xml-dAX-08G9.js +4 -0
  331. package/dist/client/assets/xml-yLaOmctb.js +3 -0
  332. package/dist/client/assets/xsl-mTp08Xh_.js +5 -0
  333. package/dist/client/assets/yaml-C5_iem5C.js +2 -0
  334. package/dist/client/assets/yaml-CN2n3pDD.js +3 -0
  335. package/dist/client/assets/zenscript-BmWf_m5U.js +3 -0
  336. package/dist/client/assets/zig-QOlp4jTZ.js +3 -0
  337. package/dist/client/cloud.svg +1 -0
  338. package/dist/client/index.html +27 -0
  339. package/dist/constants.d.ts +13 -0
  340. package/dist/constants.js +11 -0
  341. package/dist/dirs-BjObhKjC.js +17 -0
  342. package/dist/dirs.d.ts +13 -0
  343. package/dist/dirs.js +3 -0
  344. package/dist/index.d.ts +20 -3
  345. package/dist/index.js +581 -29
  346. package/dist/panel/index.d.ts +10 -0
  347. package/dist/panel/index.js +3852 -0
  348. package/package.json +35 -6
@@ -0,0 +1,873 @@
1
+ import { J as watch, N as customRef, O as effectScope, P as getCurrentScope, Q as isRef, R as onScopeDispose, T as readonly, U as ref, V as shallowReadonly, W as shallowRef, X as toRef, Y as toValue, Z as unref, k as computed, r as defineComponent, s as getCurrentInstance, x as nextTick, z as onMounted } from "./index-BSkduMKH.js";
2
+ function tryOnScopeDispose(fn) {
3
+ return getCurrentScope() ? (onScopeDispose(fn), true) : false;
4
+ }
5
+ /* @__NO_SIDE_EFFECTS__ */
6
+ function createEventHook() {
7
+ const fns = /* @__PURE__ */ new Set(), off = (fn) => {
8
+ fns.delete(fn);
9
+ }, clear = () => {
10
+ fns.clear();
11
+ }, on = (fn) => {
12
+ fns.add(fn);
13
+ const offFn = () => off(fn);
14
+ return tryOnScopeDispose(offFn), { off: offFn };
15
+ }, trigger = (...args) => {
16
+ return Promise.all(Array.from(fns).map((fn) => fn(...args)));
17
+ };
18
+ return {
19
+ on,
20
+ off,
21
+ trigger,
22
+ clear
23
+ };
24
+ }
25
+ /* @__NO_SIDE_EFFECTS__ */
26
+ function createSharedComposable(composable) {
27
+ let subscribers = 0, state, scope;
28
+ const dispose = () => {
29
+ if (subscribers -= 1, scope && subscribers <= 0) scope.stop(), state = void 0, scope = void 0;
30
+ };
31
+ return (...args) => {
32
+ if (subscribers += 1, !scope) scope = effectScope(true), state = scope.run(() => composable(...args));
33
+ return tryOnScopeDispose(dispose), state;
34
+ };
35
+ }
36
+ /* @__NO_SIDE_EFFECTS__ */
37
+ function makeDestructurable(obj, arr) {
38
+ if (typeof Symbol !== "undefined") {
39
+ const clone = { ...obj };
40
+ return Object.defineProperty(clone, Symbol.iterator, {
41
+ enumerable: false,
42
+ value() {
43
+ let index = 0;
44
+ return { next: () => ({
45
+ value: arr[index++],
46
+ done: index > arr.length
47
+ }) };
48
+ }
49
+ }), clone;
50
+ } else return Object.assign([...arr], obj);
51
+ }
52
+ const isClient = typeof window !== "undefined" && typeof document !== "undefined", isWorker = typeof WorkerGlobalScope !== "undefined" && globalThis instanceof WorkerGlobalScope, isDef = (val) => typeof val !== "undefined", toString = Object.prototype.toString, isObject = (val) => toString.call(val) === "[object Object]", noop = () => {}, isIOS = /* @__PURE__ */ getIsIOS();
53
+ function getIsIOS() {
54
+ var _a, _b;
55
+ return isClient && ((_a = window == null ? void 0 : window.navigator) == null ? void 0 : _a.userAgent) && (/iP(?:ad|hone|od)/.test(window.navigator.userAgent) || ((_b = window == null ? void 0 : window.navigator) == null ? void 0 : _b.maxTouchPoints) > 2 && /iPad|Macintosh/.test(window == null ? void 0 : window.navigator.userAgent));
56
+ }
57
+ function toRef$1(...args) {
58
+ if (args.length !== 1) return toRef(...args);
59
+ const r = args[0];
60
+ return typeof r === "function" ? readonly(customRef(() => ({
61
+ get: r,
62
+ set: noop
63
+ }))) : ref(r);
64
+ }
65
+ function createFilterWrapper(filter, fn) {
66
+ function wrapper(...args) {
67
+ return new Promise((resolve, reject) => {
68
+ Promise.resolve(filter(() => fn.apply(this, args), {
69
+ fn,
70
+ thisArg: this,
71
+ args
72
+ })).then(resolve).catch(reject);
73
+ });
74
+ }
75
+ return wrapper;
76
+ }
77
+ const bypassFilter = (invoke) => {
78
+ return invoke();
79
+ };
80
+ function pausableFilter(extendFilter = bypassFilter, options = {}) {
81
+ const { initialState = "active" } = options, isActive = toRef$1(initialState === "active");
82
+ function pause() {
83
+ isActive.value = false;
84
+ }
85
+ function resume() {
86
+ isActive.value = true;
87
+ }
88
+ const eventFilter = (...args) => {
89
+ if (isActive.value) extendFilter(...args);
90
+ };
91
+ return {
92
+ isActive: readonly(isActive),
93
+ pause,
94
+ resume,
95
+ eventFilter
96
+ };
97
+ }
98
+ function promiseTimeout(ms, throwOnTimeout = false, reason = "Timeout") {
99
+ return new Promise((resolve, reject) => {
100
+ if (throwOnTimeout) setTimeout(() => reject(reason), ms);
101
+ else setTimeout(resolve, ms);
102
+ });
103
+ }
104
+ function containsProp(obj, ...props) {
105
+ return props.some((k) => k in obj);
106
+ }
107
+ function toArray(value) {
108
+ return Array.isArray(value) ? value : [value];
109
+ }
110
+ function cacheStringFunction(fn) {
111
+ const cache = /* @__PURE__ */ Object.create(null);
112
+ return (str) => {
113
+ const hit = cache[str];
114
+ return hit || (cache[str] = fn(str));
115
+ };
116
+ }
117
+ const hyphenateRE = /\B([A-Z])/g, hyphenate = cacheStringFunction((str) => str.replace(hyphenateRE, "-$1").toLowerCase()), camelizeRE = /-(\w)/g, camelize = cacheStringFunction((str) => {
118
+ return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : "");
119
+ });
120
+ function getLifeCycleTarget(target) {
121
+ return target || getCurrentInstance();
122
+ }
123
+ function watchWithFilter(source, cb, options = {}) {
124
+ const { eventFilter = bypassFilter,...watchOptions } = options;
125
+ return watch(source, createFilterWrapper(eventFilter, cb), watchOptions);
126
+ }
127
+ function watchPausable(source, cb, options = {}) {
128
+ const { eventFilter: filter, initialState = "active",...watchOptions } = options, { eventFilter, pause, resume, isActive } = pausableFilter(filter, { initialState }), stop = watchWithFilter(source, cb, {
129
+ ...watchOptions,
130
+ eventFilter
131
+ });
132
+ return {
133
+ stop,
134
+ pause,
135
+ resume,
136
+ isActive
137
+ };
138
+ }
139
+ function tryOnMounted(fn, sync = true, target) {
140
+ const instance = getLifeCycleTarget(target);
141
+ if (instance) onMounted(fn, target);
142
+ else if (sync) fn();
143
+ else nextTick(fn);
144
+ }
145
+ function createUntil(r, isNot = false) {
146
+ function toMatch(condition, { flush = "sync", deep = false, timeout, throwOnTimeout } = {}) {
147
+ let stop = null;
148
+ const watcher = new Promise((resolve) => {
149
+ stop = watch(r, (v) => {
150
+ if (condition(v) !== isNot) {
151
+ if (stop) stop();
152
+ else nextTick(() => stop == null ? void 0 : stop());
153
+ resolve(v);
154
+ }
155
+ }, {
156
+ flush,
157
+ deep,
158
+ immediate: true
159
+ });
160
+ }), promises = [watcher];
161
+ if (timeout != null) promises.push(promiseTimeout(timeout, throwOnTimeout).then(() => toValue(r)).finally(() => stop == null ? void 0 : stop()));
162
+ return Promise.race(promises);
163
+ }
164
+ function toBe(value, options) {
165
+ if (!isRef(value)) return toMatch((v) => v === value, options);
166
+ const { flush = "sync", deep = false, timeout, throwOnTimeout } = options != null ? options : {};
167
+ let stop = null;
168
+ const watcher = new Promise((resolve) => {
169
+ stop = watch([r, value], ([v1, v2]) => {
170
+ if (isNot !== (v1 === v2)) {
171
+ if (stop) stop();
172
+ else nextTick(() => stop == null ? void 0 : stop());
173
+ resolve(v1);
174
+ }
175
+ }, {
176
+ flush,
177
+ deep,
178
+ immediate: true
179
+ });
180
+ }), promises = [watcher];
181
+ if (timeout != null) promises.push(promiseTimeout(timeout, throwOnTimeout).then(() => toValue(r)).finally(() => {
182
+ return stop?.(), toValue(r);
183
+ }));
184
+ return Promise.race(promises);
185
+ }
186
+ function toBeTruthy(options) {
187
+ return toMatch((v) => Boolean(v), options);
188
+ }
189
+ function toBeNull(options) {
190
+ return toBe(null, options);
191
+ }
192
+ function toBeUndefined(options) {
193
+ return toBe(void 0, options);
194
+ }
195
+ function toBeNaN(options) {
196
+ return toMatch(Number.isNaN, options);
197
+ }
198
+ function toContains(value, options) {
199
+ return toMatch((v) => {
200
+ const array = Array.from(v);
201
+ return array.includes(value) || array.includes(toValue(value));
202
+ }, options);
203
+ }
204
+ function changed(options) {
205
+ return changedTimes(1, options);
206
+ }
207
+ function changedTimes(n = 1, options) {
208
+ let count = -1;
209
+ return toMatch(() => {
210
+ return count += 1, count >= n;
211
+ }, options);
212
+ }
213
+ if (Array.isArray(toValue(r))) {
214
+ const instance = {
215
+ toMatch,
216
+ toContains,
217
+ changed,
218
+ changedTimes,
219
+ get not() {
220
+ return createUntil(r, !isNot);
221
+ }
222
+ };
223
+ return instance;
224
+ } else {
225
+ const instance = {
226
+ toMatch,
227
+ toBe,
228
+ toBeTruthy,
229
+ toBeNull,
230
+ toBeNaN,
231
+ toBeUndefined,
232
+ changed,
233
+ changedTimes,
234
+ get not() {
235
+ return createUntil(r, !isNot);
236
+ }
237
+ };
238
+ return instance;
239
+ }
240
+ }
241
+ function until(r) {
242
+ return createUntil(r);
243
+ }
244
+ function useTimeoutFn(cb, interval, options = {}) {
245
+ const { immediate = true, immediateCallback = false } = options, isPending = shallowRef(false);
246
+ let timer;
247
+ function clear() {
248
+ if (timer) clearTimeout(timer), timer = void 0;
249
+ }
250
+ function stop() {
251
+ isPending.value = false, clear();
252
+ }
253
+ function start(...args) {
254
+ if (immediateCallback) cb();
255
+ clear(), isPending.value = true, timer = setTimeout(() => {
256
+ isPending.value = false, timer = void 0, cb(...args);
257
+ }, toValue(interval));
258
+ }
259
+ if (immediate) {
260
+ if (isPending.value = true, isClient) start();
261
+ }
262
+ return tryOnScopeDispose(stop), {
263
+ isPending: shallowReadonly(isPending),
264
+ start,
265
+ stop
266
+ };
267
+ }
268
+ function watchImmediate(source, cb, options) {
269
+ return watch(source, cb, {
270
+ ...options,
271
+ immediate: true
272
+ });
273
+ }
274
+ /* @__NO_SIDE_EFFECTS__ */
275
+ function createReusableTemplate(options = {}) {
276
+ const { inheritAttrs = true } = options, render = shallowRef(), define = /* @__PURE__ */ defineComponent({ setup(_, { slots }) {
277
+ return () => {
278
+ render.value = slots.default;
279
+ };
280
+ } }), reuse = /* @__PURE__ */ defineComponent({
281
+ inheritAttrs,
282
+ props: options.props,
283
+ setup(props, { attrs, slots }) {
284
+ return () => {
285
+ var _a;
286
+ if (!render.value && false);
287
+ const vnode = (_a = render.value) == null ? void 0 : _a.call(render, {
288
+ ...options.props == null ? keysToCamelKebabCase(attrs) : props,
289
+ $slots: slots
290
+ });
291
+ return inheritAttrs && (vnode == null ? void 0 : vnode.length) === 1 ? vnode[0] : vnode;
292
+ };
293
+ }
294
+ });
295
+ return /* @__PURE__ */ makeDestructurable({
296
+ define,
297
+ reuse
298
+ }, [define, reuse]);
299
+ }
300
+ function keysToCamelKebabCase(obj) {
301
+ const newObj = {};
302
+ for (const key in obj) newObj[camelize(key)] = obj[key];
303
+ return newObj;
304
+ }
305
+ const defaultWindow = isClient ? window : void 0, defaultDocument = isClient ? window.document : void 0, defaultNavigator = isClient ? window.navigator : void 0, defaultLocation = isClient ? window.location : void 0;
306
+ function unrefElement(elRef) {
307
+ var _a;
308
+ const plain = toValue(elRef);
309
+ return (_a = plain == null ? void 0 : plain.$el) != null ? _a : plain;
310
+ }
311
+ function useEventListener(...args) {
312
+ const cleanups = [], cleanup = () => {
313
+ cleanups.forEach((fn) => fn()), cleanups.length = 0;
314
+ }, register = (el, event, listener, options) => {
315
+ return el.addEventListener(event, listener, options), () => el.removeEventListener(event, listener, options);
316
+ }, firstParamTargets = computed(() => {
317
+ const test = toArray(toValue(args[0])).filter((e) => e != null);
318
+ return test.every((e) => typeof e !== "string") ? test : void 0;
319
+ }), stopWatch = watchImmediate(() => {
320
+ var _a, _b;
321
+ return [
322
+ (_b = (_a = firstParamTargets.value) == null ? void 0 : _a.map((e) => unrefElement(e))) != null ? _b : [defaultWindow].filter((e) => e != null),
323
+ toArray(toValue(firstParamTargets.value ? args[1] : args[0])),
324
+ toArray(unref(firstParamTargets.value ? args[2] : args[1])),
325
+ toValue(firstParamTargets.value ? args[3] : args[2])
326
+ ];
327
+ }, ([raw_targets, raw_events, raw_listeners, raw_options]) => {
328
+ if (cleanup(), !(raw_targets == null ? void 0 : raw_targets.length) || !(raw_events == null ? void 0 : raw_events.length) || !(raw_listeners == null ? void 0 : raw_listeners.length)) return;
329
+ const optionsClone = isObject(raw_options) ? { ...raw_options } : raw_options;
330
+ cleanups.push(...raw_targets.flatMap((el) => raw_events.flatMap((event) => raw_listeners.map((listener) => register(el, event, listener, optionsClone)))));
331
+ }, { flush: "post" }), stop = () => {
332
+ stopWatch(), cleanup();
333
+ };
334
+ return tryOnScopeDispose(cleanup), stop;
335
+ }
336
+ let _iOSWorkaround = false;
337
+ function onClickOutside(target, handler, options = {}) {
338
+ const { window: window$1 = defaultWindow, ignore = [], capture = true, detectIframe = false, controls = false } = options;
339
+ if (!window$1) return controls ? {
340
+ stop: noop,
341
+ cancel: noop,
342
+ trigger: noop
343
+ } : noop;
344
+ if (isIOS && !_iOSWorkaround) {
345
+ _iOSWorkaround = true;
346
+ const listenerOptions = { passive: true };
347
+ Array.from(window$1.document.body.children).forEach((el) => el.addEventListener("click", noop, listenerOptions)), window$1.document.documentElement.addEventListener("click", noop, listenerOptions);
348
+ }
349
+ let shouldListen = true;
350
+ const shouldIgnore = (event) => {
351
+ return toValue(ignore).some((target2) => {
352
+ if (typeof target2 === "string") return Array.from(window$1.document.querySelectorAll(target2)).some((el) => el === event.target || event.composedPath().includes(el));
353
+ {
354
+ const el = unrefElement(target2);
355
+ return el && (event.target === el || event.composedPath().includes(el));
356
+ }
357
+ });
358
+ };
359
+ function hasMultipleRoots(target2) {
360
+ const vm = toValue(target2);
361
+ return vm && vm.$.subTree.shapeFlag === 16;
362
+ }
363
+ function checkMultipleRoots(target2, event) {
364
+ const vm = toValue(target2), children = vm.$.subTree && vm.$.subTree.children;
365
+ return children == null || !Array.isArray(children) ? false : children.some((child) => child.el === event.target || event.composedPath().includes(child.el));
366
+ }
367
+ const listener = (event) => {
368
+ const el = unrefElement(target);
369
+ if (event.target != null && !(!(el instanceof Element) && hasMultipleRoots(target) && checkMultipleRoots(target, event)) && !(!el || el === event.target || event.composedPath().includes(el))) {
370
+ if ("detail" in event && event.detail === 0) shouldListen = !shouldIgnore(event);
371
+ if (!shouldListen) {
372
+ shouldListen = true;
373
+ return;
374
+ }
375
+ handler(event);
376
+ }
377
+ };
378
+ let isProcessingClick = false;
379
+ const cleanup = [
380
+ useEventListener(window$1, "click", (event) => {
381
+ if (!isProcessingClick) isProcessingClick = true, setTimeout(() => {
382
+ isProcessingClick = false;
383
+ }, 0), listener(event);
384
+ }, {
385
+ passive: true,
386
+ capture
387
+ }),
388
+ useEventListener(window$1, "pointerdown", (e) => {
389
+ const el = unrefElement(target);
390
+ shouldListen = !shouldIgnore(e) && !!(el && !e.composedPath().includes(el));
391
+ }, { passive: true }),
392
+ detectIframe && useEventListener(window$1, "blur", (event) => {
393
+ setTimeout(() => {
394
+ var _a;
395
+ const el = unrefElement(target);
396
+ if (((_a = window$1.document.activeElement) == null ? void 0 : _a.tagName) === "IFRAME" && !(el == null ? void 0 : el.contains(window$1.document.activeElement))) handler(event);
397
+ }, 0);
398
+ }, { passive: true })
399
+ ].filter(Boolean), stop = () => cleanup.forEach((fn) => fn());
400
+ return controls ? {
401
+ stop,
402
+ cancel: () => {
403
+ shouldListen = false;
404
+ },
405
+ trigger: (event) => {
406
+ shouldListen = true, listener(event), shouldListen = false;
407
+ }
408
+ } : stop;
409
+ }
410
+ /* @__NO_SIDE_EFFECTS__ */
411
+ function useMounted() {
412
+ const isMounted = shallowRef(false), instance = getCurrentInstance();
413
+ if (instance) onMounted(() => {
414
+ isMounted.value = true;
415
+ }, instance);
416
+ return isMounted;
417
+ }
418
+ /* @__NO_SIDE_EFFECTS__ */
419
+ function useSupported(callback) {
420
+ const isMounted = /* @__PURE__ */ useMounted();
421
+ return computed(() => {
422
+ return isMounted.value, Boolean(callback());
423
+ });
424
+ }
425
+ const ssrWidthSymbol = Symbol("vueuse-ssr-width");
426
+ function cloneFnJSON(source) {
427
+ return JSON.parse(JSON.stringify(source));
428
+ }
429
+ const _global = typeof globalThis !== "undefined" ? globalThis : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : {}, globalKey = "__vueuse_ssr_handlers__", handlers = /* @__PURE__ */ getHandlers();
430
+ function getHandlers() {
431
+ if (!(globalKey in _global)) _global[globalKey] = _global[globalKey] || {};
432
+ return _global[globalKey];
433
+ }
434
+ function getSSRHandler(key, fallback) {
435
+ return handlers[key] || fallback;
436
+ }
437
+ function guessSerializerType(rawInit) {
438
+ return rawInit == null ? "any" : rawInit instanceof Set ? "set" : rawInit instanceof Map ? "map" : rawInit instanceof Date ? "date" : typeof rawInit === "boolean" ? "boolean" : typeof rawInit === "string" ? "string" : typeof rawInit === "object" ? "object" : !Number.isNaN(rawInit) ? "number" : "any";
439
+ }
440
+ const StorageSerializers = {
441
+ boolean: {
442
+ read: (v) => v === "true",
443
+ write: (v) => String(v)
444
+ },
445
+ object: {
446
+ read: (v) => JSON.parse(v),
447
+ write: (v) => JSON.stringify(v)
448
+ },
449
+ number: {
450
+ read: (v) => Number.parseFloat(v),
451
+ write: (v) => String(v)
452
+ },
453
+ any: {
454
+ read: (v) => v,
455
+ write: (v) => String(v)
456
+ },
457
+ string: {
458
+ read: (v) => v,
459
+ write: (v) => String(v)
460
+ },
461
+ map: {
462
+ read: (v) => new Map(JSON.parse(v)),
463
+ write: (v) => JSON.stringify(Array.from(v.entries()))
464
+ },
465
+ set: {
466
+ read: (v) => new Set(JSON.parse(v)),
467
+ write: (v) => JSON.stringify(Array.from(v))
468
+ },
469
+ date: {
470
+ read: (v) => new Date(v),
471
+ write: (v) => v.toISOString()
472
+ }
473
+ }, customStorageEventName = "vueuse-storage";
474
+ function useStorage(key, defaults, storage, options = {}) {
475
+ var _a;
476
+ const { flush = "pre", deep = true, listenToStorageChanges = true, writeDefaults = true, mergeDefaults = false, shallow, window: window$1 = defaultWindow, eventFilter, onError = (e) => {
477
+ console.error(e);
478
+ }, initOnMounted } = options, data = (shallow ? shallowRef : ref)(typeof defaults === "function" ? defaults() : defaults), keyComputed = computed(() => toValue(key));
479
+ if (!storage) try {
480
+ storage = getSSRHandler("getDefaultStorage", () => {
481
+ var _a2;
482
+ return (_a2 = defaultWindow) == null ? void 0 : _a2.localStorage;
483
+ })();
484
+ } catch (e) {
485
+ onError(e);
486
+ }
487
+ if (!storage) return data;
488
+ const rawInit = toValue(defaults), type = guessSerializerType(rawInit), serializer = (_a = options.serializer) != null ? _a : StorageSerializers[type], { pause: pauseWatch, resume: resumeWatch } = watchPausable(data, (newValue) => write(newValue), {
489
+ flush,
490
+ deep,
491
+ eventFilter
492
+ });
493
+ watch(keyComputed, () => update(), { flush });
494
+ let firstMounted = false;
495
+ const onStorageEvent = (ev) => {
496
+ initOnMounted && !firstMounted || update(ev);
497
+ }, onStorageCustomEvent = (ev) => {
498
+ initOnMounted && !firstMounted || updateFromCustomEvent(ev);
499
+ };
500
+ if (window$1 && listenToStorageChanges) if (storage instanceof Storage) useEventListener(window$1, "storage", onStorageEvent, { passive: true });
501
+ else useEventListener(window$1, customStorageEventName, onStorageCustomEvent);
502
+ if (initOnMounted) tryOnMounted(() => {
503
+ firstMounted = true, update();
504
+ });
505
+ else update();
506
+ function dispatchWriteEvent(oldValue, newValue) {
507
+ if (window$1) {
508
+ const payload = {
509
+ key: keyComputed.value,
510
+ oldValue,
511
+ newValue,
512
+ storageArea: storage
513
+ };
514
+ window$1.dispatchEvent(storage instanceof Storage ? new StorageEvent("storage", payload) : new CustomEvent(customStorageEventName, { detail: payload }));
515
+ }
516
+ }
517
+ function write(v) {
518
+ try {
519
+ const oldValue = storage.getItem(keyComputed.value);
520
+ if (v == null) dispatchWriteEvent(oldValue, null), storage.removeItem(keyComputed.value);
521
+ else {
522
+ const serialized = serializer.write(v);
523
+ if (oldValue !== serialized) storage.setItem(keyComputed.value, serialized), dispatchWriteEvent(oldValue, serialized);
524
+ }
525
+ } catch (e) {
526
+ onError(e);
527
+ }
528
+ }
529
+ function read(event) {
530
+ const rawValue = event ? event.newValue : storage.getItem(keyComputed.value);
531
+ if (rawValue == null) {
532
+ if (writeDefaults && rawInit != null) storage.setItem(keyComputed.value, serializer.write(rawInit));
533
+ return rawInit;
534
+ } else if (!event && mergeDefaults) {
535
+ const value = serializer.read(rawValue);
536
+ return typeof mergeDefaults === "function" ? mergeDefaults(value, rawInit) : type === "object" && !Array.isArray(value) ? {
537
+ ...rawInit,
538
+ ...value
539
+ } : value;
540
+ } else if (typeof rawValue !== "string") return rawValue;
541
+ else return serializer.read(rawValue);
542
+ }
543
+ function update(event) {
544
+ if (!(event && event.storageArea !== storage)) {
545
+ if (event && event.key == null) {
546
+ data.value = rawInit;
547
+ return;
548
+ }
549
+ if (!(event && event.key !== keyComputed.value)) {
550
+ pauseWatch();
551
+ try {
552
+ const serializedData = serializer.write(data.value);
553
+ if (event === void 0 || (event == null ? void 0 : event.newValue) !== serializedData) data.value = read(event);
554
+ } catch (e) {
555
+ onError(e);
556
+ } finally {
557
+ if (event) nextTick(resumeWatch);
558
+ else resumeWatch();
559
+ }
560
+ }
561
+ }
562
+ }
563
+ function updateFromCustomEvent(event) {
564
+ update(event.detail);
565
+ }
566
+ return data;
567
+ }
568
+ function useResizeObserver(target, callback, options = {}) {
569
+ const { window: window$1 = defaultWindow,...observerOptions } = options;
570
+ let observer;
571
+ const isSupported = /* @__PURE__ */ useSupported(() => window$1 && "ResizeObserver" in window$1), cleanup = () => {
572
+ if (observer) observer.disconnect(), observer = void 0;
573
+ }, targets = computed(() => {
574
+ const _targets = toValue(target);
575
+ return Array.isArray(_targets) ? _targets.map((el) => unrefElement(el)) : [unrefElement(_targets)];
576
+ }), stopWatch = watch(targets, (els) => {
577
+ if (cleanup(), isSupported.value && window$1) {
578
+ observer = new ResizeObserver(callback);
579
+ for (const _el of els) if (_el) observer.observe(_el, observerOptions);
580
+ }
581
+ }, {
582
+ immediate: true,
583
+ flush: "post"
584
+ }), stop = () => {
585
+ cleanup(), stopWatch();
586
+ };
587
+ return tryOnScopeDispose(stop), {
588
+ isSupported,
589
+ stop
590
+ };
591
+ }
592
+ function useElementSize(target, initialSize = {
593
+ width: 0,
594
+ height: 0
595
+ }, options = {}) {
596
+ const { window: window$1 = defaultWindow, box = "content-box" } = options, isSVG = computed(() => {
597
+ var _a, _b;
598
+ return (_b = (_a = unrefElement(target)) == null ? void 0 : _a.namespaceURI) == null ? void 0 : _b.includes("svg");
599
+ }), width = shallowRef(initialSize.width), height = shallowRef(initialSize.height), { stop: stop1 } = useResizeObserver(target, ([entry]) => {
600
+ const boxSize = box === "border-box" ? entry.borderBoxSize : box === "content-box" ? entry.contentBoxSize : entry.devicePixelContentBoxSize;
601
+ if (window$1 && isSVG.value) {
602
+ const $elem = unrefElement(target);
603
+ if ($elem) {
604
+ const rect = $elem.getBoundingClientRect();
605
+ width.value = rect.width, height.value = rect.height;
606
+ }
607
+ } else if (boxSize) {
608
+ const formatBoxSize = toArray(boxSize);
609
+ width.value = formatBoxSize.reduce((acc, { inlineSize }) => acc + inlineSize, 0), height.value = formatBoxSize.reduce((acc, { blockSize }) => acc + blockSize, 0);
610
+ } else width.value = entry.contentRect.width, height.value = entry.contentRect.height;
611
+ }, options);
612
+ tryOnMounted(() => {
613
+ const ele = unrefElement(target);
614
+ if (ele) width.value = "offsetWidth" in ele ? ele.offsetWidth : initialSize.width, height.value = "offsetHeight" in ele ? ele.offsetHeight : initialSize.height;
615
+ });
616
+ const stop2 = watch(() => unrefElement(target), (ele) => {
617
+ width.value = ele ? initialSize.width : 0, height.value = ele ? initialSize.height : 0;
618
+ });
619
+ function stop() {
620
+ stop1(), stop2();
621
+ }
622
+ return {
623
+ width,
624
+ height,
625
+ stop
626
+ };
627
+ }
628
+ const payloadMapping = {
629
+ json: "application/json",
630
+ text: "text/plain"
631
+ };
632
+ function isFetchOptions(obj) {
633
+ return obj && containsProp(obj, "immediate", "refetch", "initialData", "timeout", "beforeFetch", "afterFetch", "onFetchError", "fetch", "updateDataOnError");
634
+ }
635
+ function headersToObject(headers) {
636
+ return typeof Headers !== "undefined" && headers instanceof Headers ? Object.fromEntries(headers.entries()) : headers;
637
+ }
638
+ function useFetch(url, ...args) {
639
+ var _a, _b;
640
+ const supportsAbort = typeof AbortController === "function";
641
+ let fetchOptions = {}, options = {
642
+ immediate: true,
643
+ refetch: false,
644
+ timeout: 0,
645
+ updateDataOnError: false
646
+ };
647
+ const config = {
648
+ method: "GET",
649
+ type: "text",
650
+ payload: void 0
651
+ };
652
+ if (args.length > 0) if (isFetchOptions(args[0])) options = {
653
+ ...options,
654
+ ...args[0]
655
+ };
656
+ else fetchOptions = args[0];
657
+ if (args.length > 1) {
658
+ if (isFetchOptions(args[1])) options = {
659
+ ...options,
660
+ ...args[1]
661
+ };
662
+ }
663
+ const { fetch = (_b = (_a = defaultWindow) == null ? void 0 : _a.fetch) != null ? _b : globalThis == null ? void 0 : globalThis.fetch, initialData, timeout } = options, responseEvent = /* @__PURE__ */ createEventHook(), errorEvent = /* @__PURE__ */ createEventHook(), finallyEvent = /* @__PURE__ */ createEventHook(), isFinished = shallowRef(false), isFetching = shallowRef(false), aborted = shallowRef(false), statusCode = shallowRef(null), response = shallowRef(null), error = shallowRef(null), data = shallowRef(initialData || null), canAbort = computed(() => supportsAbort && isFetching.value);
664
+ let controller, timer;
665
+ const abort = (reason) => {
666
+ if (supportsAbort) controller?.abort(reason), controller = new AbortController(), controller.signal.onabort = () => aborted.value = true, fetchOptions = {
667
+ ...fetchOptions,
668
+ signal: controller.signal
669
+ };
670
+ }, loading = (isLoading) => {
671
+ isFetching.value = isLoading, isFinished.value = !isLoading;
672
+ };
673
+ if (timeout) timer = useTimeoutFn(abort, timeout, { immediate: false });
674
+ let executeCounter = 0;
675
+ const execute = async (throwOnFailed = false) => {
676
+ var _a2, _b2;
677
+ abort(), loading(true), error.value = null, statusCode.value = null, aborted.value = false, executeCounter += 1;
678
+ const currentExecuteCounter = executeCounter, defaultFetchOptions = {
679
+ method: config.method,
680
+ headers: {}
681
+ }, payload = toValue(config.payload);
682
+ if (payload) {
683
+ const headers = headersToObject(defaultFetchOptions.headers), proto = Object.getPrototypeOf(payload);
684
+ if (!config.payloadType && payload && (proto === Object.prototype || Array.isArray(proto)) && !(payload instanceof FormData)) config.payloadType = "json";
685
+ if (config.payloadType) headers["Content-Type"] = (_a2 = payloadMapping[config.payloadType]) != null ? _a2 : config.payloadType;
686
+ defaultFetchOptions.body = config.payloadType === "json" ? JSON.stringify(payload) : payload;
687
+ }
688
+ let isCanceled = false;
689
+ const context = {
690
+ url: toValue(url),
691
+ options: {
692
+ ...defaultFetchOptions,
693
+ ...fetchOptions
694
+ },
695
+ cancel: () => {
696
+ isCanceled = true;
697
+ }
698
+ };
699
+ if (options.beforeFetch) Object.assign(context, await options.beforeFetch(context));
700
+ if (isCanceled || !fetch) return loading(false), Promise.resolve(null);
701
+ let responseData = null;
702
+ if (timer) timer.start();
703
+ return fetch(context.url, {
704
+ ...defaultFetchOptions,
705
+ ...context.options,
706
+ headers: {
707
+ ...headersToObject(defaultFetchOptions.headers),
708
+ ...headersToObject((_b2 = context.options) == null ? void 0 : _b2.headers)
709
+ }
710
+ }).then(async (fetchResponse) => {
711
+ if (response.value = fetchResponse, statusCode.value = fetchResponse.status, responseData = await fetchResponse.clone()[config.type](), !fetchResponse.ok) throw data.value = initialData || null, new Error(fetchResponse.statusText);
712
+ if (options.afterFetch) ({data: responseData} = await options.afterFetch({
713
+ data: responseData,
714
+ response: fetchResponse,
715
+ context,
716
+ execute
717
+ }));
718
+ return data.value = responseData, responseEvent.trigger(fetchResponse), fetchResponse;
719
+ }).catch(async (fetchError) => {
720
+ let errorData = fetchError.message || fetchError.name;
721
+ if (options.onFetchError) ({error: errorData, data: responseData} = await options.onFetchError({
722
+ data: responseData,
723
+ error: fetchError,
724
+ response: response.value,
725
+ context,
726
+ execute
727
+ }));
728
+ if (error.value = errorData, options.updateDataOnError) data.value = responseData;
729
+ if (errorEvent.trigger(fetchError), throwOnFailed) throw fetchError;
730
+ return null;
731
+ }).finally(() => {
732
+ if (currentExecuteCounter === executeCounter) loading(false);
733
+ if (timer) timer.stop();
734
+ finallyEvent.trigger(null);
735
+ });
736
+ }, refetch = toRef$1(options.refetch);
737
+ watch([refetch, toRef$1(url)], ([refetch2]) => refetch2 && execute(), { deep: true });
738
+ const shell = {
739
+ isFinished: readonly(isFinished),
740
+ isFetching: readonly(isFetching),
741
+ statusCode,
742
+ response,
743
+ error,
744
+ data,
745
+ canAbort,
746
+ aborted,
747
+ abort,
748
+ execute,
749
+ onFetchResponse: responseEvent.on,
750
+ onFetchError: errorEvent.on,
751
+ onFetchFinally: finallyEvent.on,
752
+ get: setMethod("GET"),
753
+ put: setMethod("PUT"),
754
+ post: setMethod("POST"),
755
+ delete: setMethod("DELETE"),
756
+ patch: setMethod("PATCH"),
757
+ head: setMethod("HEAD"),
758
+ options: setMethod("OPTIONS"),
759
+ json: setType("json"),
760
+ text: setType("text"),
761
+ blob: setType("blob"),
762
+ arrayBuffer: setType("arrayBuffer"),
763
+ formData: setType("formData")
764
+ };
765
+ function setMethod(method) {
766
+ return (payload, payloadType) => {
767
+ if (!isFetching.value) {
768
+ if (config.method = method, config.payload = payload, config.payloadType = payloadType, isRef(config.payload)) watch([refetch, toRef$1(config.payload)], ([refetch2]) => refetch2 && execute(), { deep: true });
769
+ return {
770
+ ...shell,
771
+ then(onFulfilled, onRejected) {
772
+ return waitUntilFinished().then(onFulfilled, onRejected);
773
+ }
774
+ };
775
+ }
776
+ return void 0;
777
+ };
778
+ }
779
+ function waitUntilFinished() {
780
+ return new Promise((resolve, reject) => {
781
+ until(isFinished).toBe(true).then(() => resolve(shell)).catch(reject);
782
+ });
783
+ }
784
+ function setType(type) {
785
+ return () => {
786
+ return isFetching.value ? void 0 : (config.type = type, {
787
+ ...shell,
788
+ then(onFulfilled, onRejected) {
789
+ return waitUntilFinished().then(onFulfilled, onRejected);
790
+ }
791
+ });
792
+ };
793
+ }
794
+ if (options.immediate) Promise.resolve().then(() => execute());
795
+ return {
796
+ ...shell,
797
+ then(onFulfilled, onRejected) {
798
+ return waitUntilFinished().then(onFulfilled, onRejected);
799
+ }
800
+ };
801
+ }
802
+ function useLocalStorage(key, initialValue, options = {}) {
803
+ const { window: window$1 = defaultWindow } = options;
804
+ return useStorage(key, initialValue, window$1 == null ? void 0 : window$1.localStorage, options);
805
+ }
806
+ const DEFAULT_UNITS = [
807
+ {
808
+ max: 6e4,
809
+ value: 1e3,
810
+ name: "second"
811
+ },
812
+ {
813
+ max: 276e4,
814
+ value: 6e4,
815
+ name: "minute"
816
+ },
817
+ {
818
+ max: 72e6,
819
+ value: 36e5,
820
+ name: "hour"
821
+ },
822
+ {
823
+ max: 5184e5,
824
+ value: 864e5,
825
+ name: "day"
826
+ },
827
+ {
828
+ max: 24192e5,
829
+ value: 6048e5,
830
+ name: "week"
831
+ },
832
+ {
833
+ max: 28512e6,
834
+ value: 2592e6,
835
+ name: "month"
836
+ },
837
+ {
838
+ max: Number.POSITIVE_INFINITY,
839
+ value: 31536e6,
840
+ name: "year"
841
+ }
842
+ ];
843
+ /* @__NO_SIDE_EFFECTS__ */
844
+ function useVModel(props, key, emit, options = {}) {
845
+ var _a, _b, _c;
846
+ const { clone = false, passive = false, eventName, deep = false, defaultValue, shouldEmit } = options, vm = getCurrentInstance(), _emit = emit || (vm == null ? void 0 : vm.emit) || ((_a = vm == null ? void 0 : vm.$emit) == null ? void 0 : _a.bind(vm)) || ((_c = (_b = vm == null ? void 0 : vm.proxy) == null ? void 0 : _b.$emit) == null ? void 0 : _c.bind(vm == null ? void 0 : vm.proxy));
847
+ let event = eventName;
848
+ if (!key) key = "modelValue";
849
+ event = event || `update:${key.toString()}`;
850
+ const cloneFn = (val) => !clone ? val : typeof clone === "function" ? clone(val) : cloneFnJSON(val), getValue = () => isDef(props[key]) ? cloneFn(props[key]) : defaultValue, triggerEmit = (value) => {
851
+ if (shouldEmit) {
852
+ if (shouldEmit(value)) _emit(event, value);
853
+ } else _emit(event, value);
854
+ };
855
+ if (passive) {
856
+ const initialValue = getValue(), proxy = ref(initialValue);
857
+ let isUpdating = false;
858
+ return watch(() => props[key], (v) => {
859
+ if (!isUpdating) isUpdating = true, proxy.value = cloneFn(v), nextTick(() => isUpdating = false);
860
+ }), watch(proxy, (v) => {
861
+ if (!isUpdating && (v !== props[key] || deep)) triggerEmit(v);
862
+ }, { deep }), proxy;
863
+ } else return computed({
864
+ get() {
865
+ return getValue();
866
+ },
867
+ set(value) {
868
+ triggerEmit(value);
869
+ }
870
+ });
871
+ }
872
+ const API_ROOT = "/__pubinfo_devtools_api", infoFetch = useFetch(`${API_ROOT}`).json(), apiListFetch = useFetch(`${API_ROOT}/api-list`, { immediate: false }).json();
873
+ export { apiListFetch as b, infoFetch as c, createReusableTemplate as d, onClickOutside as e, useElementSize as f, useLocalStorage as g, useVModel as h, createSharedComposable as i };