@waniwani/sdk 0.1.20-beta.8 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (718) hide show
  1. package/README.md +101 -52
  2. package/dist/abap-KGVIZMDC.js +3 -0
  3. package/dist/abap-KGVIZMDC.js.map +1 -0
  4. package/dist/actionscript-3-2UHK5QYP.js +3 -0
  5. package/dist/actionscript-3-2UHK5QYP.js.map +1 -0
  6. package/dist/ada-JKTWR5BV.js +3 -0
  7. package/dist/ada-JKTWR5BV.js.map +1 -0
  8. package/dist/andromeeda-HAPOYWX3.js +3 -0
  9. package/dist/andromeeda-HAPOYWX3.js.map +1 -0
  10. package/dist/angular-html-EOIKHM3D.js +3 -0
  11. package/dist/angular-html-EOIKHM3D.js.map +1 -0
  12. package/dist/angular-ts-A7ZNTSV6.js +3 -0
  13. package/dist/angular-ts-A7ZNTSV6.js.map +1 -0
  14. package/dist/apache-MPGFGQFB.js +3 -0
  15. package/dist/apache-MPGFGQFB.js.map +1 -0
  16. package/dist/apex-BOAZL66Z.js +3 -0
  17. package/dist/apex-BOAZL66Z.js.map +1 -0
  18. package/dist/apl-QBN4KIYA.js +3 -0
  19. package/dist/apl-QBN4KIYA.js.map +1 -0
  20. package/dist/applescript-C4CJ3STL.js +3 -0
  21. package/dist/applescript-C4CJ3STL.js.map +1 -0
  22. package/dist/ara-FSFFBRSD.js +3 -0
  23. package/dist/ara-FSFFBRSD.js.map +1 -0
  24. package/dist/asciidoc-QQK2LANG.js +3 -0
  25. package/dist/asciidoc-QQK2LANG.js.map +1 -0
  26. package/dist/asm-X43A2VYW.js +3 -0
  27. package/dist/asm-X43A2VYW.js.map +1 -0
  28. package/dist/astro-OQUOYMBE.js +3 -0
  29. package/dist/astro-OQUOYMBE.js.map +1 -0
  30. package/dist/aurora-x-R6WAWEBC.js +3 -0
  31. package/dist/aurora-x-R6WAWEBC.js.map +1 -0
  32. package/dist/awk-4Z3PRTF7.js +3 -0
  33. package/dist/awk-4Z3PRTF7.js.map +1 -0
  34. package/dist/ayu-dark-KMD4YO7F.js +3 -0
  35. package/dist/ayu-dark-KMD4YO7F.js.map +1 -0
  36. package/dist/ayu-light-2ATPDILG.js +3 -0
  37. package/dist/ayu-light-2ATPDILG.js.map +1 -0
  38. package/dist/ayu-mirage-LJ7PG5AM.js +3 -0
  39. package/dist/ayu-mirage-LJ7PG5AM.js.map +1 -0
  40. package/dist/ballerina-JCXSJ2QD.js +3 -0
  41. package/dist/ballerina-JCXSJ2QD.js.map +1 -0
  42. package/dist/bat-XFWR7RMZ.js +3 -0
  43. package/dist/bat-XFWR7RMZ.js.map +1 -0
  44. package/dist/beancount-7BBDB4BH.js +3 -0
  45. package/dist/beancount-7BBDB4BH.js.map +1 -0
  46. package/dist/berry-PQ2BEJIZ.js +3 -0
  47. package/dist/berry-PQ2BEJIZ.js.map +1 -0
  48. package/dist/bibtex-J2PAB23I.js +3 -0
  49. package/dist/bibtex-J2PAB23I.js.map +1 -0
  50. package/dist/bicep-TNKT6R3W.js +3 -0
  51. package/dist/bicep-TNKT6R3W.js.map +1 -0
  52. package/dist/blade-QBDEYXMB.js +3 -0
  53. package/dist/blade-QBDEYXMB.js.map +1 -0
  54. package/dist/bsl-PQW6E45S.js +3 -0
  55. package/dist/bsl-PQW6E45S.js.map +1 -0
  56. package/dist/c-PZBJFNXE.js +3 -0
  57. package/dist/c-PZBJFNXE.js.map +1 -0
  58. package/dist/c3-GP7XYHE6.js +3 -0
  59. package/dist/c3-GP7XYHE6.js.map +1 -0
  60. package/dist/cadence-NABGDHKY.js +3 -0
  61. package/dist/cadence-NABGDHKY.js.map +1 -0
  62. package/dist/cairo-WQSC2GLN.js +3 -0
  63. package/dist/cairo-WQSC2GLN.js.map +1 -0
  64. package/dist/catppuccin-frappe-Z4Y2POK6.js +3 -0
  65. package/dist/catppuccin-frappe-Z4Y2POK6.js.map +1 -0
  66. package/dist/catppuccin-latte-4TQUIKX4.js +3 -0
  67. package/dist/catppuccin-latte-4TQUIKX4.js.map +1 -0
  68. package/dist/catppuccin-macchiato-B7YYPERT.js +3 -0
  69. package/dist/catppuccin-macchiato-B7YYPERT.js.map +1 -0
  70. package/dist/catppuccin-mocha-KX33VXKA.js +3 -0
  71. package/dist/catppuccin-mocha-KX33VXKA.js.map +1 -0
  72. package/dist/chat/index.d.ts +14 -3
  73. package/dist/chat/index.js +49 -1
  74. package/dist/chat/index.js.map +1 -1
  75. package/dist/chat/next-js/index.d.ts +148 -40
  76. package/dist/chat/next-js/index.js +1 -1
  77. package/dist/chat/next-js/index.js.map +1 -1
  78. package/dist/chat/server/index.d.ts +5 -0
  79. package/dist/chat/styles.css +1 -1
  80. package/dist/chunk-2RR26LLP.js +3 -0
  81. package/dist/chunk-2RR26LLP.js.map +1 -0
  82. package/dist/chunk-3MXGGSWX.js +3 -0
  83. package/dist/chunk-3MXGGSWX.js.map +1 -0
  84. package/dist/chunk-4LBJUPWV.js +3 -0
  85. package/dist/chunk-4LBJUPWV.js.map +1 -0
  86. package/dist/chunk-4VTSQZWF.js +3 -0
  87. package/dist/chunk-4VTSQZWF.js.map +1 -0
  88. package/dist/chunk-7JLJRE2N.js +3 -0
  89. package/dist/chunk-7JLJRE2N.js.map +1 -0
  90. package/dist/chunk-7PHUBJVC.js +3 -0
  91. package/dist/chunk-7PHUBJVC.js.map +1 -0
  92. package/dist/chunk-AGWJ4LUC.js +3 -0
  93. package/dist/chunk-AGWJ4LUC.js.map +1 -0
  94. package/dist/chunk-ASVQBXNX.js +3 -0
  95. package/dist/chunk-ASVQBXNX.js.map +1 -0
  96. package/dist/chunk-ATLIFHJQ.js +3 -0
  97. package/dist/chunk-ATLIFHJQ.js.map +1 -0
  98. package/dist/chunk-BWAU264B.js +3 -0
  99. package/dist/chunk-BWAU264B.js.map +1 -0
  100. package/dist/chunk-C2XW4T23.js +3 -0
  101. package/dist/chunk-C2XW4T23.js.map +1 -0
  102. package/dist/chunk-C3DWQQH3.js +3 -0
  103. package/dist/chunk-C3DWQQH3.js.map +1 -0
  104. package/dist/chunk-CIEDXAJY.js +3 -0
  105. package/dist/chunk-CIEDXAJY.js.map +1 -0
  106. package/dist/chunk-CNY3RWNZ.js +3 -0
  107. package/dist/chunk-CNY3RWNZ.js.map +1 -0
  108. package/dist/chunk-ED2SBPIQ.js +3 -0
  109. package/dist/chunk-ED2SBPIQ.js.map +1 -0
  110. package/dist/chunk-F3QSOBPN.js +3 -0
  111. package/dist/chunk-F3QSOBPN.js.map +1 -0
  112. package/dist/chunk-FHRHXPXN.js +3 -0
  113. package/dist/chunk-FHRHXPXN.js.map +1 -0
  114. package/dist/chunk-FWHINPYE.js +3 -0
  115. package/dist/chunk-FWHINPYE.js.map +1 -0
  116. package/dist/chunk-HMEGK7JX.js +3 -0
  117. package/dist/chunk-HMEGK7JX.js.map +1 -0
  118. package/dist/chunk-HU77EH3T.js +3 -0
  119. package/dist/chunk-HU77EH3T.js.map +1 -0
  120. package/dist/chunk-HVAT4SNH.js +116 -0
  121. package/dist/chunk-HVAT4SNH.js.map +1 -0
  122. package/dist/chunk-IXROC4D6.js +3 -0
  123. package/dist/chunk-IXROC4D6.js.map +1 -0
  124. package/dist/chunk-JVRIR5KA.js +3 -0
  125. package/dist/chunk-JVRIR5KA.js.map +1 -0
  126. package/dist/chunk-JXSURY23.js +3 -0
  127. package/dist/chunk-JXSURY23.js.map +1 -0
  128. package/dist/chunk-JZBW5KEX.js +3 -0
  129. package/dist/chunk-JZBW5KEX.js.map +1 -0
  130. package/dist/chunk-M4CKEROZ.js +3 -0
  131. package/dist/chunk-M4CKEROZ.js.map +1 -0
  132. package/dist/chunk-NWMKWKIF.js +3 -0
  133. package/dist/chunk-NWMKWKIF.js.map +1 -0
  134. package/dist/chunk-OZU5OBWU.js +3 -0
  135. package/dist/chunk-OZU5OBWU.js.map +1 -0
  136. package/dist/chunk-Q7Y54EZU.js +3 -0
  137. package/dist/chunk-Q7Y54EZU.js.map +1 -0
  138. package/dist/chunk-QLNWMFSL.js +3 -0
  139. package/dist/chunk-QLNWMFSL.js.map +1 -0
  140. package/dist/chunk-R5U25TSM.js +3 -0
  141. package/dist/chunk-R5U25TSM.js.map +1 -0
  142. package/dist/chunk-RH56J7QY.js +3 -0
  143. package/dist/chunk-RH56J7QY.js.map +1 -0
  144. package/dist/chunk-RLHBVYHM.js +3 -0
  145. package/dist/chunk-RLHBVYHM.js.map +1 -0
  146. package/dist/chunk-RYVXTIMY.js +3 -0
  147. package/dist/chunk-RYVXTIMY.js.map +1 -0
  148. package/dist/chunk-U4R5XKLD.js +3 -0
  149. package/dist/chunk-U4R5XKLD.js.map +1 -0
  150. package/dist/chunk-V3ZDECK5.js +3 -0
  151. package/dist/chunk-V3ZDECK5.js.map +1 -0
  152. package/dist/chunk-VBWVDIIW.js +3 -0
  153. package/dist/chunk-VBWVDIIW.js.map +1 -0
  154. package/dist/chunk-VME4UB43.js +3 -0
  155. package/dist/chunk-VME4UB43.js.map +1 -0
  156. package/dist/chunk-VNX5AK2O.js +3 -0
  157. package/dist/chunk-VNX5AK2O.js.map +1 -0
  158. package/dist/chunk-WKR2RWJ6.js +3 -0
  159. package/dist/chunk-WKR2RWJ6.js.map +1 -0
  160. package/dist/chunk-XD5VGPVP.js +3 -0
  161. package/dist/chunk-XD5VGPVP.js.map +1 -0
  162. package/dist/chunk-Z3IKGRKN.js +3 -0
  163. package/dist/chunk-Z3IKGRKN.js.map +1 -0
  164. package/dist/chunk-Z7QCZ4DQ.js +3 -0
  165. package/dist/chunk-Z7QCZ4DQ.js.map +1 -0
  166. package/dist/chunk-ZHMHS6LG.js +3 -0
  167. package/dist/chunk-ZHMHS6LG.js.map +1 -0
  168. package/dist/chunk-ZU32Z5HV.js +3 -0
  169. package/dist/chunk-ZU32Z5HV.js.map +1 -0
  170. package/dist/clarity-NXNSINKX.js +3 -0
  171. package/dist/clarity-NXNSINKX.js.map +1 -0
  172. package/dist/clojure-Y57BKRMA.js +3 -0
  173. package/dist/clojure-Y57BKRMA.js.map +1 -0
  174. package/dist/cmake-LVMEA3JZ.js +3 -0
  175. package/dist/cmake-LVMEA3JZ.js.map +1 -0
  176. package/dist/cobol-6DNJTKH3.js +3 -0
  177. package/dist/cobol-6DNJTKH3.js.map +1 -0
  178. package/dist/code-block-37QAKDTI-M2QCKVTI.js +4 -0
  179. package/dist/code-block-37QAKDTI-M2QCKVTI.js.map +1 -0
  180. package/dist/codeowners-JYHOTXQS.js +3 -0
  181. package/dist/codeowners-JYHOTXQS.js.map +1 -0
  182. package/dist/codeql-IWWSYR3L.js +3 -0
  183. package/dist/codeql-IWWSYR3L.js.map +1 -0
  184. package/dist/coffee-NNDQ5QXC.js +3 -0
  185. package/dist/coffee-NNDQ5QXC.js.map +1 -0
  186. package/dist/common-lisp-JKXCDYH3.js +3 -0
  187. package/dist/common-lisp-JKXCDYH3.js.map +1 -0
  188. package/dist/coq-BEHPNP64.js +3 -0
  189. package/dist/coq-BEHPNP64.js.map +1 -0
  190. package/dist/cpp-IALOHSZA.js +3 -0
  191. package/dist/cpp-IALOHSZA.js.map +1 -0
  192. package/dist/crystal-ZDP3FIUI.js +3 -0
  193. package/dist/crystal-ZDP3FIUI.js.map +1 -0
  194. package/dist/csharp-ODFBXRGA.js +3 -0
  195. package/dist/csharp-ODFBXRGA.js.map +1 -0
  196. package/dist/css-CJGL5AVH.js +3 -0
  197. package/dist/css-CJGL5AVH.js.map +1 -0
  198. package/dist/csv-LIK4TU3Z.js +3 -0
  199. package/dist/csv-LIK4TU3Z.js.map +1 -0
  200. package/dist/cue-UAAEAKHI.js +3 -0
  201. package/dist/cue-UAAEAKHI.js.map +1 -0
  202. package/dist/cypher-SZPVUQZJ.js +3 -0
  203. package/dist/cypher-SZPVUQZJ.js.map +1 -0
  204. package/dist/d-VSCA3XHG.js +3 -0
  205. package/dist/d-VSCA3XHG.js.map +1 -0
  206. package/dist/dark-plus-LNHXUR7U.js +3 -0
  207. package/dist/dark-plus-LNHXUR7U.js.map +1 -0
  208. package/dist/dart-A4PE6FIS.js +3 -0
  209. package/dist/dart-A4PE6FIS.js.map +1 -0
  210. package/dist/dax-TILIKSFB.js +3 -0
  211. package/dist/dax-TILIKSFB.js.map +1 -0
  212. package/dist/desktop-75KK3D55.js +3 -0
  213. package/dist/desktop-75KK3D55.js.map +1 -0
  214. package/dist/diff-HOT6P45M.js +3 -0
  215. package/dist/diff-HOT6P45M.js.map +1 -0
  216. package/dist/docker-FF35TY6T.js +3 -0
  217. package/dist/docker-FF35TY6T.js.map +1 -0
  218. package/dist/dotenv-FVPPHJI3.js +3 -0
  219. package/dist/dotenv-FVPPHJI3.js.map +1 -0
  220. package/dist/dracula-T2CMBBQ5.js +3 -0
  221. package/dist/dracula-T2CMBBQ5.js.map +1 -0
  222. package/dist/dracula-soft-SMFRNKX2.js +3 -0
  223. package/dist/dracula-soft-SMFRNKX2.js.map +1 -0
  224. package/dist/dream-maker-SYE3ZPSJ.js +3 -0
  225. package/dist/dream-maker-SYE3ZPSJ.js.map +1 -0
  226. package/dist/edge-CCLQ2CKA.js +3 -0
  227. package/dist/edge-CCLQ2CKA.js.map +1 -0
  228. package/dist/elixir-F6DQGRKA.js +3 -0
  229. package/dist/elixir-F6DQGRKA.js.map +1 -0
  230. package/dist/elm-5QRQXDZ6.js +3 -0
  231. package/dist/elm-5QRQXDZ6.js.map +1 -0
  232. package/dist/emacs-lisp-NJ4S4OHV.js +3 -0
  233. package/dist/emacs-lisp-NJ4S4OHV.js.map +1 -0
  234. package/dist/erb-HGSLHT5Y.js +3 -0
  235. package/dist/erb-HGSLHT5Y.js.map +1 -0
  236. package/dist/erlang-APEONNZ6.js +3 -0
  237. package/dist/erlang-APEONNZ6.js.map +1 -0
  238. package/dist/everforest-dark-DBZHIUAO.js +3 -0
  239. package/dist/everforest-dark-DBZHIUAO.js.map +1 -0
  240. package/dist/everforest-light-TDAGYJUK.js +3 -0
  241. package/dist/everforest-light-TDAGYJUK.js.map +1 -0
  242. package/dist/fennel-7OCMFVPS.js +3 -0
  243. package/dist/fennel-7OCMFVPS.js.map +1 -0
  244. package/dist/fish-BC46ME2N.js +3 -0
  245. package/dist/fish-BC46ME2N.js.map +1 -0
  246. package/dist/fluent-MXZS6EX3.js +3 -0
  247. package/dist/fluent-MXZS6EX3.js.map +1 -0
  248. package/dist/fortran-fixed-form-35BC2KX6.js +3 -0
  249. package/dist/fortran-fixed-form-35BC2KX6.js.map +1 -0
  250. package/dist/fortran-free-form-AXRAI2HH.js +3 -0
  251. package/dist/fortran-free-form-AXRAI2HH.js.map +1 -0
  252. package/dist/fsharp-JKNSQXHD.js +3 -0
  253. package/dist/fsharp-JKNSQXHD.js.map +1 -0
  254. package/dist/gdresource-ZMKZGPZV.js +3 -0
  255. package/dist/gdresource-ZMKZGPZV.js.map +1 -0
  256. package/dist/gdscript-HNCVXEYB.js +3 -0
  257. package/dist/gdscript-HNCVXEYB.js.map +1 -0
  258. package/dist/gdshader-XAJ4QRYP.js +3 -0
  259. package/dist/gdshader-XAJ4QRYP.js.map +1 -0
  260. package/dist/genie-HEFVQZAP.js +3 -0
  261. package/dist/genie-HEFVQZAP.js.map +1 -0
  262. package/dist/gherkin-OFBRDPXX.js +3 -0
  263. package/dist/gherkin-OFBRDPXX.js.map +1 -0
  264. package/dist/git-commit-ZE2M3Q5H.js +3 -0
  265. package/dist/git-commit-ZE2M3Q5H.js.map +1 -0
  266. package/dist/git-rebase-3N3INGLU.js +3 -0
  267. package/dist/git-rebase-3N3INGLU.js.map +1 -0
  268. package/dist/github-dark-3E25TTAN.js +3 -0
  269. package/dist/github-dark-3E25TTAN.js.map +1 -0
  270. package/dist/github-dark-default-KCBFVSS5.js +3 -0
  271. package/dist/github-dark-default-KCBFVSS5.js.map +1 -0
  272. package/dist/github-dark-dimmed-WRCBXEVS.js +3 -0
  273. package/dist/github-dark-dimmed-WRCBXEVS.js.map +1 -0
  274. package/dist/github-dark-high-contrast-ET7SAHAV.js +3 -0
  275. package/dist/github-dark-high-contrast-ET7SAHAV.js.map +1 -0
  276. package/dist/github-light-6FNTZH5H.js +3 -0
  277. package/dist/github-light-6FNTZH5H.js.map +1 -0
  278. package/dist/github-light-default-GGTAKNM7.js +3 -0
  279. package/dist/github-light-default-GGTAKNM7.js.map +1 -0
  280. package/dist/github-light-high-contrast-LHYKPR5E.js +3 -0
  281. package/dist/github-light-high-contrast-LHYKPR5E.js.map +1 -0
  282. package/dist/gleam-NFFQFQLP.js +3 -0
  283. package/dist/gleam-NFFQFQLP.js.map +1 -0
  284. package/dist/glimmer-js-RSUW6JYN.js +3 -0
  285. package/dist/glimmer-js-RSUW6JYN.js.map +1 -0
  286. package/dist/glimmer-ts-EZGWLX5T.js +3 -0
  287. package/dist/glimmer-ts-EZGWLX5T.js.map +1 -0
  288. package/dist/glsl-VJLRYEVJ.js +3 -0
  289. package/dist/glsl-VJLRYEVJ.js.map +1 -0
  290. package/dist/gn-UH2XQWLG.js +3 -0
  291. package/dist/gn-UH2XQWLG.js.map +1 -0
  292. package/dist/gnuplot-K6IV6NNR.js +3 -0
  293. package/dist/gnuplot-K6IV6NNR.js.map +1 -0
  294. package/dist/go-BDV7RR5G.js +3 -0
  295. package/dist/go-BDV7RR5G.js.map +1 -0
  296. package/dist/graphql-YEJQLMOO.js +3 -0
  297. package/dist/graphql-YEJQLMOO.js.map +1 -0
  298. package/dist/groovy-SX7K3XGL.js +3 -0
  299. package/dist/groovy-SX7K3XGL.js.map +1 -0
  300. package/dist/gruvbox-dark-hard-IQWZCHF7.js +3 -0
  301. package/dist/gruvbox-dark-hard-IQWZCHF7.js.map +1 -0
  302. package/dist/gruvbox-dark-medium-ARPWF4FS.js +3 -0
  303. package/dist/gruvbox-dark-medium-ARPWF4FS.js.map +1 -0
  304. package/dist/gruvbox-dark-soft-ODS6FPID.js +3 -0
  305. package/dist/gruvbox-dark-soft-ODS6FPID.js.map +1 -0
  306. package/dist/gruvbox-light-hard-KFA5YFDW.js +3 -0
  307. package/dist/gruvbox-light-hard-KFA5YFDW.js.map +1 -0
  308. package/dist/gruvbox-light-medium-MMET4L3Y.js +3 -0
  309. package/dist/gruvbox-light-medium-MMET4L3Y.js.map +1 -0
  310. package/dist/gruvbox-light-soft-DBZDERMK.js +3 -0
  311. package/dist/gruvbox-light-soft-DBZDERMK.js.map +1 -0
  312. package/dist/hack-3TGPQNR2.js +3 -0
  313. package/dist/hack-3TGPQNR2.js.map +1 -0
  314. package/dist/haml-335RVEQR.js +3 -0
  315. package/dist/haml-335RVEQR.js.map +1 -0
  316. package/dist/handlebars-73IS6B2J.js +3 -0
  317. package/dist/handlebars-73IS6B2J.js.map +1 -0
  318. package/dist/haskell-P5PTJARU.js +3 -0
  319. package/dist/haskell-P5PTJARU.js.map +1 -0
  320. package/dist/haxe-RCPSSA3N.js +3 -0
  321. package/dist/haxe-RCPSSA3N.js.map +1 -0
  322. package/dist/hcl-AKKZAVC2.js +3 -0
  323. package/dist/hcl-AKKZAVC2.js.map +1 -0
  324. package/dist/hjson-REXV6F6N.js +3 -0
  325. package/dist/hjson-REXV6F6N.js.map +1 -0
  326. package/dist/hlsl-AJ7VWOVL.js +3 -0
  327. package/dist/hlsl-AJ7VWOVL.js.map +1 -0
  328. package/dist/horizon-FSOMPXNP.js +3 -0
  329. package/dist/horizon-FSOMPXNP.js.map +1 -0
  330. package/dist/houston-FAQBCORN.js +3 -0
  331. package/dist/houston-FAQBCORN.js.map +1 -0
  332. package/dist/html-654LNGWF.js +3 -0
  333. package/dist/html-654LNGWF.js.map +1 -0
  334. package/dist/html-derivative-CMQ7BFDQ.js +3 -0
  335. package/dist/html-derivative-CMQ7BFDQ.js.map +1 -0
  336. package/dist/http-NEPTRAQZ.js +3 -0
  337. package/dist/http-NEPTRAQZ.js.map +1 -0
  338. package/dist/hurl-V6ZX2Q3F.js +3 -0
  339. package/dist/hurl-V6ZX2Q3F.js.map +1 -0
  340. package/dist/hxml-5BXJCAAU.js +3 -0
  341. package/dist/hxml-5BXJCAAU.js.map +1 -0
  342. package/dist/hy-SB4TMFE7.js +3 -0
  343. package/dist/hy-SB4TMFE7.js.map +1 -0
  344. package/dist/imba-Y64MHYWP.js +3 -0
  345. package/dist/imba-Y64MHYWP.js.map +1 -0
  346. package/dist/index.d.ts +187 -41
  347. package/dist/index.js +1 -1
  348. package/dist/index.js.map +1 -1
  349. package/dist/ini-J2OP4CNW.js +3 -0
  350. package/dist/ini-J2OP4CNW.js.map +1 -0
  351. package/dist/java-MJKJ5GPP.js +3 -0
  352. package/dist/java-MJKJ5GPP.js.map +1 -0
  353. package/dist/javascript-IYAGHPR6.js +3 -0
  354. package/dist/javascript-IYAGHPR6.js.map +1 -0
  355. package/dist/jinja-WPD26JJ6.js +3 -0
  356. package/dist/jinja-WPD26JJ6.js.map +1 -0
  357. package/dist/jison-UYDZQBN5.js +3 -0
  358. package/dist/jison-UYDZQBN5.js.map +1 -0
  359. package/dist/json-5V4JESJO.js +3 -0
  360. package/dist/json-5V4JESJO.js.map +1 -0
  361. package/dist/json5-7SHUZD3R.js +3 -0
  362. package/dist/json5-7SHUZD3R.js.map +1 -0
  363. package/dist/jsonc-X3Z34FN3.js +3 -0
  364. package/dist/jsonc-X3Z34FN3.js.map +1 -0
  365. package/dist/jsonl-6I3D2HM6.js +3 -0
  366. package/dist/jsonl-6I3D2HM6.js.map +1 -0
  367. package/dist/jsonnet-PZEQIBYV.js +3 -0
  368. package/dist/jsonnet-PZEQIBYV.js.map +1 -0
  369. package/dist/jssm-GJJ25IKR.js +3 -0
  370. package/dist/jssm-GJJ25IKR.js.map +1 -0
  371. package/dist/jsx-NI2J427C.js +3 -0
  372. package/dist/jsx-NI2J427C.js.map +1 -0
  373. package/dist/julia-QPZ7EOS6.js +3 -0
  374. package/dist/julia-QPZ7EOS6.js.map +1 -0
  375. package/dist/kanagawa-dragon-JNDVF5RJ.js +3 -0
  376. package/dist/kanagawa-dragon-JNDVF5RJ.js.map +1 -0
  377. package/dist/kanagawa-lotus-S7JK6TQ6.js +3 -0
  378. package/dist/kanagawa-lotus-S7JK6TQ6.js.map +1 -0
  379. package/dist/kanagawa-wave-QJJIMVEV.js +3 -0
  380. package/dist/kanagawa-wave-QJJIMVEV.js.map +1 -0
  381. package/dist/kb/index.d.ts +79 -0
  382. package/dist/kb/index.js +2 -0
  383. package/dist/kb/index.js.map +1 -0
  384. package/dist/kdl-IA7HA2TL.js +3 -0
  385. package/dist/kdl-IA7HA2TL.js.map +1 -0
  386. package/dist/kotlin-CCRMGYMI.js +3 -0
  387. package/dist/kotlin-CCRMGYMI.js.map +1 -0
  388. package/dist/kusto-7DW25GYH.js +3 -0
  389. package/dist/kusto-7DW25GYH.js.map +1 -0
  390. package/dist/laserwave-YFP3EJVX.js +3 -0
  391. package/dist/laserwave-YFP3EJVX.js.map +1 -0
  392. package/dist/latex-F2CTDTFG.js +3 -0
  393. package/dist/latex-F2CTDTFG.js.map +1 -0
  394. package/dist/lean-MGJJWBTR.js +3 -0
  395. package/dist/lean-MGJJWBTR.js.map +1 -0
  396. package/dist/less-WFSIMX5G.js +3 -0
  397. package/dist/less-WFSIMX5G.js.map +1 -0
  398. package/dist/light-plus-NGDHCPUZ.js +3 -0
  399. package/dist/light-plus-NGDHCPUZ.js.map +1 -0
  400. package/dist/liquid-7CFNUD3V.js +3 -0
  401. package/dist/liquid-7CFNUD3V.js.map +1 -0
  402. package/dist/llvm-CFQSEDXB.js +3 -0
  403. package/dist/llvm-CFQSEDXB.js.map +1 -0
  404. package/dist/log-YQNML6LA.js +3 -0
  405. package/dist/log-YQNML6LA.js.map +1 -0
  406. package/dist/logo-2PPKBL2M.js +3 -0
  407. package/dist/logo-2PPKBL2M.js.map +1 -0
  408. package/dist/lua-RPAMRKNG.js +3 -0
  409. package/dist/lua-RPAMRKNG.js.map +1 -0
  410. package/dist/luau-GR2DOH6N.js +3 -0
  411. package/dist/luau-GR2DOH6N.js.map +1 -0
  412. package/dist/make-DQQEEPI4.js +3 -0
  413. package/dist/make-DQQEEPI4.js.map +1 -0
  414. package/dist/markdown-OC5ILZSY.js +3 -0
  415. package/dist/markdown-OC5ILZSY.js.map +1 -0
  416. package/dist/marko-XSB3CTWQ.js +3 -0
  417. package/dist/marko-XSB3CTWQ.js.map +1 -0
  418. package/dist/material-theme-H2BHKUKX.js +3 -0
  419. package/dist/material-theme-H2BHKUKX.js.map +1 -0
  420. package/dist/material-theme-darker-VENCGWTB.js +3 -0
  421. package/dist/material-theme-darker-VENCGWTB.js.map +1 -0
  422. package/dist/material-theme-lighter-SDMLS22W.js +3 -0
  423. package/dist/material-theme-lighter-SDMLS22W.js.map +1 -0
  424. package/dist/material-theme-ocean-UHDBRLVF.js +3 -0
  425. package/dist/material-theme-ocean-UHDBRLVF.js.map +1 -0
  426. package/dist/material-theme-palenight-3TB2BEET.js +3 -0
  427. package/dist/material-theme-palenight-3TB2BEET.js.map +1 -0
  428. package/dist/matlab-YQY6FS4U.js +3 -0
  429. package/dist/matlab-YQY6FS4U.js.map +1 -0
  430. package/dist/mcp/index.d.ts +381 -31
  431. package/dist/mcp/index.js +3 -3
  432. package/dist/mcp/index.js.map +1 -1
  433. package/dist/mcp/react.d.ts +80 -25
  434. package/dist/mcp/react.js +7 -7
  435. package/dist/mcp/react.js.map +1 -1
  436. package/dist/mcp-apps-client-6WEBHSGH.js +3 -0
  437. package/dist/mcp-apps-client-6WEBHSGH.js.map +1 -0
  438. package/dist/mdc-TEVTGSC7.js +3 -0
  439. package/dist/mdc-TEVTGSC7.js.map +1 -0
  440. package/dist/mdx-ZIH2JLVR.js +3 -0
  441. package/dist/mdx-ZIH2JLVR.js.map +1 -0
  442. package/dist/mermaid-4DMBBIKO-NR6M3PLG.js +3 -0
  443. package/dist/mermaid-4DMBBIKO-NR6M3PLG.js.map +1 -0
  444. package/dist/mermaid-WPX56SBB.js +3 -0
  445. package/dist/mermaid-WPX56SBB.js.map +1 -0
  446. package/dist/min-dark-CQ5WKNT7.js +3 -0
  447. package/dist/min-dark-CQ5WKNT7.js.map +1 -0
  448. package/dist/min-light-LZRD4NPR.js +3 -0
  449. package/dist/min-light-LZRD4NPR.js.map +1 -0
  450. package/dist/mipsasm-IDXQRZ2B.js +3 -0
  451. package/dist/mipsasm-IDXQRZ2B.js.map +1 -0
  452. package/dist/mojo-MH7EQVOK.js +3 -0
  453. package/dist/mojo-MH7EQVOK.js.map +1 -0
  454. package/dist/monokai-WHRY6275.js +3 -0
  455. package/dist/monokai-WHRY6275.js.map +1 -0
  456. package/dist/moonbit-5JDFTWKE.js +3 -0
  457. package/dist/moonbit-5JDFTWKE.js.map +1 -0
  458. package/dist/move-RWSXKYDY.js +3 -0
  459. package/dist/move-RWSXKYDY.js.map +1 -0
  460. package/dist/narrat-QJUEXMVV.js +3 -0
  461. package/dist/narrat-QJUEXMVV.js.map +1 -0
  462. package/dist/nextflow-2EICNZA3.js +3 -0
  463. package/dist/nextflow-2EICNZA3.js.map +1 -0
  464. package/dist/nginx-RIWAEC5Z.js +3 -0
  465. package/dist/nginx-RIWAEC5Z.js.map +1 -0
  466. package/dist/night-owl-7PNEW2JB.js +3 -0
  467. package/dist/night-owl-7PNEW2JB.js.map +1 -0
  468. package/dist/night-owl-light-GJUYOOJR.js +3 -0
  469. package/dist/night-owl-light-GJUYOOJR.js.map +1 -0
  470. package/dist/nim-JPSYX5KC.js +3 -0
  471. package/dist/nim-JPSYX5KC.js.map +1 -0
  472. package/dist/nix-XCKQVWCN.js +3 -0
  473. package/dist/nix-XCKQVWCN.js.map +1 -0
  474. package/dist/nord-EVGUMUX2.js +3 -0
  475. package/dist/nord-EVGUMUX2.js.map +1 -0
  476. package/dist/nushell-QGW7HANA.js +3 -0
  477. package/dist/nushell-QGW7HANA.js.map +1 -0
  478. package/dist/objective-c-V7KYXFHL.js +3 -0
  479. package/dist/objective-c-V7KYXFHL.js.map +1 -0
  480. package/dist/objective-cpp-NKUEWVGU.js +3 -0
  481. package/dist/objective-cpp-NKUEWVGU.js.map +1 -0
  482. package/dist/ocaml-QT2CZJZN.js +3 -0
  483. package/dist/ocaml-QT2CZJZN.js.map +1 -0
  484. package/dist/odin-MVMIXBHP.js +3 -0
  485. package/dist/odin-MVMIXBHP.js.map +1 -0
  486. package/dist/one-dark-pro-PMTR3SA7.js +3 -0
  487. package/dist/one-dark-pro-PMTR3SA7.js.map +1 -0
  488. package/dist/one-light-O7WH4N5X.js +3 -0
  489. package/dist/one-light-O7WH4N5X.js.map +1 -0
  490. package/dist/openai-client-HLQSYZJC.js +3 -0
  491. package/dist/openai-client-HLQSYZJC.js.map +1 -0
  492. package/dist/openscad-BJDUXUUZ.js +3 -0
  493. package/dist/openscad-BJDUXUUZ.js.map +1 -0
  494. package/dist/pascal-HGWEFD6L.js +3 -0
  495. package/dist/pascal-HGWEFD6L.js.map +1 -0
  496. package/dist/perl-X4IFZB22.js +3 -0
  497. package/dist/perl-X4IFZB22.js.map +1 -0
  498. package/dist/php-3V7EPUAN.js +3 -0
  499. package/dist/php-3V7EPUAN.js.map +1 -0
  500. package/dist/pkl-VA5ZK5DW.js +3 -0
  501. package/dist/pkl-VA5ZK5DW.js.map +1 -0
  502. package/dist/plastic-FBVUW6NJ.js +3 -0
  503. package/dist/plastic-FBVUW6NJ.js.map +1 -0
  504. package/dist/plsql-J7A7YWFH.js +3 -0
  505. package/dist/plsql-J7A7YWFH.js.map +1 -0
  506. package/dist/po-5RDI65JX.js +3 -0
  507. package/dist/po-5RDI65JX.js.map +1 -0
  508. package/dist/poimandres-WBB7GZAD.js +3 -0
  509. package/dist/poimandres-WBB7GZAD.js.map +1 -0
  510. package/dist/polar-VUJL2E7F.js +3 -0
  511. package/dist/polar-VUJL2E7F.js.map +1 -0
  512. package/dist/postcss-ESTB5G7N.js +3 -0
  513. package/dist/postcss-ESTB5G7N.js.map +1 -0
  514. package/dist/powerquery-ODTEKQCW.js +3 -0
  515. package/dist/powerquery-ODTEKQCW.js.map +1 -0
  516. package/dist/powershell-ZOYRAWBJ.js +3 -0
  517. package/dist/powershell-ZOYRAWBJ.js.map +1 -0
  518. package/dist/prisma-QHG2W5GE.js +3 -0
  519. package/dist/prisma-QHG2W5GE.js.map +1 -0
  520. package/dist/prolog-CSAPG5PH.js +3 -0
  521. package/dist/prolog-CSAPG5PH.js.map +1 -0
  522. package/dist/proto-WDNJBTSW.js +3 -0
  523. package/dist/proto-WDNJBTSW.js.map +1 -0
  524. package/dist/pug-P7LS6DER.js +3 -0
  525. package/dist/pug-P7LS6DER.js.map +1 -0
  526. package/dist/puppet-LHFWHTY3.js +3 -0
  527. package/dist/puppet-LHFWHTY3.js.map +1 -0
  528. package/dist/purescript-DUFJP4FY.js +3 -0
  529. package/dist/purescript-DUFJP4FY.js.map +1 -0
  530. package/dist/python-5ZNZSNQ2.js +3 -0
  531. package/dist/python-5ZNZSNQ2.js.map +1 -0
  532. package/dist/qml-LTAXB6W5.js +3 -0
  533. package/dist/qml-LTAXB6W5.js.map +1 -0
  534. package/dist/qmldir-7Z2ODQLM.js +3 -0
  535. package/dist/qmldir-7Z2ODQLM.js.map +1 -0
  536. package/dist/qss-FDFD3HQD.js +3 -0
  537. package/dist/qss-FDFD3HQD.js.map +1 -0
  538. package/dist/r-6ZOS53WN.js +3 -0
  539. package/dist/r-6ZOS53WN.js.map +1 -0
  540. package/dist/racket-7AYZPEUI.js +3 -0
  541. package/dist/racket-7AYZPEUI.js.map +1 -0
  542. package/dist/raku-A4F6VHVG.js +3 -0
  543. package/dist/raku-A4F6VHVG.js.map +1 -0
  544. package/dist/razor-4QOCK4UD.js +3 -0
  545. package/dist/razor-4QOCK4UD.js.map +1 -0
  546. package/dist/red-7KAMONOP.js +3 -0
  547. package/dist/red-7KAMONOP.js.map +1 -0
  548. package/dist/reg-FAPHGG66.js +3 -0
  549. package/dist/reg-FAPHGG66.js.map +1 -0
  550. package/dist/regexp-5BYLYA2R.js +3 -0
  551. package/dist/regexp-5BYLYA2R.js.map +1 -0
  552. package/dist/rel-7DJ7HHU4.js +3 -0
  553. package/dist/rel-7DJ7HHU4.js.map +1 -0
  554. package/dist/riscv-YIYJATFG.js +3 -0
  555. package/dist/riscv-YIYJATFG.js.map +1 -0
  556. package/dist/ron-HYYMCHTX.js +3 -0
  557. package/dist/ron-HYYMCHTX.js.map +1 -0
  558. package/dist/rose-pine-F2G5IHZD.js +3 -0
  559. package/dist/rose-pine-F2G5IHZD.js.map +1 -0
  560. package/dist/rose-pine-dawn-ALZ7XGH2.js +3 -0
  561. package/dist/rose-pine-dawn-ALZ7XGH2.js.map +1 -0
  562. package/dist/rose-pine-moon-D3K4SWUL.js +3 -0
  563. package/dist/rose-pine-moon-D3K4SWUL.js.map +1 -0
  564. package/dist/rosmsg-FDNH6QF7.js +3 -0
  565. package/dist/rosmsg-FDNH6QF7.js.map +1 -0
  566. package/dist/rst-WIWCR2KQ.js +3 -0
  567. package/dist/rst-WIWCR2KQ.js.map +1 -0
  568. package/dist/ruby-LXZJUMFB.js +3 -0
  569. package/dist/ruby-LXZJUMFB.js.map +1 -0
  570. package/dist/rust-V3GMJA2K.js +3 -0
  571. package/dist/rust-V3GMJA2K.js.map +1 -0
  572. package/dist/sas-D3G4GB3X.js +3 -0
  573. package/dist/sas-D3G4GB3X.js.map +1 -0
  574. package/dist/sass-JTO65AGR.js +3 -0
  575. package/dist/sass-JTO65AGR.js.map +1 -0
  576. package/dist/scala-4XQGFSVM.js +3 -0
  577. package/dist/scala-4XQGFSVM.js.map +1 -0
  578. package/dist/scheme-CB7AC7IL.js +3 -0
  579. package/dist/scheme-CB7AC7IL.js.map +1 -0
  580. package/dist/scss-6SKV4OGI.js +3 -0
  581. package/dist/scss-6SKV4OGI.js.map +1 -0
  582. package/dist/sdbl-LKGZFJ46.js +3 -0
  583. package/dist/sdbl-LKGZFJ46.js.map +1 -0
  584. package/dist/shaderlab-K536DHEB.js +3 -0
  585. package/dist/shaderlab-K536DHEB.js.map +1 -0
  586. package/dist/shellscript-LRNUKUSZ.js +3 -0
  587. package/dist/shellscript-LRNUKUSZ.js.map +1 -0
  588. package/dist/shellsession-IBQK7VWQ.js +3 -0
  589. package/dist/shellsession-IBQK7VWQ.js.map +1 -0
  590. package/dist/slack-dark-YFPJODWS.js +3 -0
  591. package/dist/slack-dark-YFPJODWS.js.map +1 -0
  592. package/dist/slack-ochin-H67AWZOI.js +3 -0
  593. package/dist/slack-ochin-H67AWZOI.js.map +1 -0
  594. package/dist/smalltalk-DQOSWAW7.js +3 -0
  595. package/dist/smalltalk-DQOSWAW7.js.map +1 -0
  596. package/dist/snazzy-light-OUVS63VK.js +3 -0
  597. package/dist/snazzy-light-OUVS63VK.js.map +1 -0
  598. package/dist/solarized-dark-2RCAVEXJ.js +3 -0
  599. package/dist/solarized-dark-2RCAVEXJ.js.map +1 -0
  600. package/dist/solarized-light-XFSENHTC.js +3 -0
  601. package/dist/solarized-light-XFSENHTC.js.map +1 -0
  602. package/dist/solidity-V2FMZEG4.js +3 -0
  603. package/dist/solidity-V2FMZEG4.js.map +1 -0
  604. package/dist/soy-VW3CKXWF.js +3 -0
  605. package/dist/soy-VW3CKXWF.js.map +1 -0
  606. package/dist/sparql-L2VKP7YP.js +3 -0
  607. package/dist/sparql-L2VKP7YP.js.map +1 -0
  608. package/dist/splunk-KDKHP7GC.js +3 -0
  609. package/dist/splunk-KDKHP7GC.js.map +1 -0
  610. package/dist/sql-UF27CALT.js +3 -0
  611. package/dist/sql-UF27CALT.js.map +1 -0
  612. package/dist/ssh-config-JC2DQ6ED.js +3 -0
  613. package/dist/ssh-config-JC2DQ6ED.js.map +1 -0
  614. package/dist/stata-7PXCUY24.js +3 -0
  615. package/dist/stata-7PXCUY24.js.map +1 -0
  616. package/dist/stylus-2L7N3EZD.js +3 -0
  617. package/dist/stylus-2L7N3EZD.js.map +1 -0
  618. package/dist/surrealql-ZY3E6XEL.js +3 -0
  619. package/dist/surrealql-ZY3E6XEL.js.map +1 -0
  620. package/dist/svelte-Q45XIK2A.js +3 -0
  621. package/dist/svelte-Q45XIK2A.js.map +1 -0
  622. package/dist/swift-XBH5HZSC.js +3 -0
  623. package/dist/swift-XBH5HZSC.js.map +1 -0
  624. package/dist/synthwave-84-5XXB3K6S.js +3 -0
  625. package/dist/synthwave-84-5XXB3K6S.js.map +1 -0
  626. package/dist/system-verilog-VRAUSZY3.js +3 -0
  627. package/dist/system-verilog-VRAUSZY3.js.map +1 -0
  628. package/dist/systemd-JOTSGJD4.js +3 -0
  629. package/dist/systemd-JOTSGJD4.js.map +1 -0
  630. package/dist/talonscript-NNZRZKOU.js +3 -0
  631. package/dist/talonscript-NNZRZKOU.js.map +1 -0
  632. package/dist/tasl-MBFZ4QNC.js +3 -0
  633. package/dist/tasl-MBFZ4QNC.js.map +1 -0
  634. package/dist/tcl-4GEDCBVE.js +3 -0
  635. package/dist/tcl-4GEDCBVE.js.map +1 -0
  636. package/dist/templ-3XM7DLQ3.js +3 -0
  637. package/dist/templ-3XM7DLQ3.js.map +1 -0
  638. package/dist/terraform-XTHOS4UK.js +3 -0
  639. package/dist/terraform-XTHOS4UK.js.map +1 -0
  640. package/dist/tex-UXMN2CV7.js +3 -0
  641. package/dist/tex-UXMN2CV7.js.map +1 -0
  642. package/dist/tokyo-night-CHJCCBJH.js +3 -0
  643. package/dist/tokyo-night-CHJCCBJH.js.map +1 -0
  644. package/dist/toml-J6K55ZSV.js +3 -0
  645. package/dist/toml-J6K55ZSV.js.map +1 -0
  646. package/dist/ts-tags-7WGDLEKX.js +3 -0
  647. package/dist/ts-tags-7WGDLEKX.js.map +1 -0
  648. package/dist/tsv-DOUJHQDQ.js +3 -0
  649. package/dist/tsv-DOUJHQDQ.js.map +1 -0
  650. package/dist/tsx-G5BMVRHK.js +3 -0
  651. package/dist/tsx-G5BMVRHK.js.map +1 -0
  652. package/dist/turtle-JHJ7W6U5.js +3 -0
  653. package/dist/turtle-JHJ7W6U5.js.map +1 -0
  654. package/dist/twig-C6YWFFZU.js +3 -0
  655. package/dist/twig-C6YWFFZU.js.map +1 -0
  656. package/dist/typescript-LMKEAHFC.js +3 -0
  657. package/dist/typescript-LMKEAHFC.js.map +1 -0
  658. package/dist/typespec-5CLTIJYY.js +3 -0
  659. package/dist/typespec-5CLTIJYY.js.map +1 -0
  660. package/dist/typst-4W4Z436Z.js +3 -0
  661. package/dist/typst-4W4Z436Z.js.map +1 -0
  662. package/dist/v-Y4SBDBN7.js +3 -0
  663. package/dist/v-Y4SBDBN7.js.map +1 -0
  664. package/dist/vala-UMKT2MFA.js +3 -0
  665. package/dist/vala-UMKT2MFA.js.map +1 -0
  666. package/dist/vb-DQ7A5WJU.js +3 -0
  667. package/dist/vb-DQ7A5WJU.js.map +1 -0
  668. package/dist/verilog-N6ZF7GQD.js +3 -0
  669. package/dist/verilog-N6ZF7GQD.js.map +1 -0
  670. package/dist/vesper-Y5GIEAN4.js +3 -0
  671. package/dist/vesper-Y5GIEAN4.js.map +1 -0
  672. package/dist/vhdl-BNYDT37G.js +3 -0
  673. package/dist/vhdl-BNYDT37G.js.map +1 -0
  674. package/dist/viml-37RMDCBC.js +3 -0
  675. package/dist/viml-37RMDCBC.js.map +1 -0
  676. package/dist/vitesse-black-7TI33KHX.js +3 -0
  677. package/dist/vitesse-black-7TI33KHX.js.map +1 -0
  678. package/dist/vitesse-dark-FOB25MRB.js +3 -0
  679. package/dist/vitesse-dark-FOB25MRB.js.map +1 -0
  680. package/dist/vitesse-light-4WCNCTCO.js +3 -0
  681. package/dist/vitesse-light-4WCNCTCO.js.map +1 -0
  682. package/dist/vue-O6SLORWU.js +3 -0
  683. package/dist/vue-O6SLORWU.js.map +1 -0
  684. package/dist/vue-html-ZLTZN573.js +3 -0
  685. package/dist/vue-html-ZLTZN573.js.map +1 -0
  686. package/dist/vue-vine-6JKAZ54I.js +3 -0
  687. package/dist/vue-vine-6JKAZ54I.js.map +1 -0
  688. package/dist/vyper-GVXF46KD.js +3 -0
  689. package/dist/vyper-GVXF46KD.js.map +1 -0
  690. package/dist/wasm-EOPKAILK.js +3 -0
  691. package/dist/wasm-EOPKAILK.js.map +1 -0
  692. package/dist/wasm-NTB4O7GL.js +3 -0
  693. package/dist/wasm-NTB4O7GL.js.map +1 -0
  694. package/dist/wenyan-W7WB3BC7.js +3 -0
  695. package/dist/wenyan-W7WB3BC7.js.map +1 -0
  696. package/dist/wgsl-7GTDVXHG.js +3 -0
  697. package/dist/wgsl-7GTDVXHG.js.map +1 -0
  698. package/dist/wikitext-ASAFPAIL.js +3 -0
  699. package/dist/wikitext-ASAFPAIL.js.map +1 -0
  700. package/dist/wit-ZBCR6544.js +3 -0
  701. package/dist/wit-ZBCR6544.js.map +1 -0
  702. package/dist/wolfram-SZRZOETJ.js +3 -0
  703. package/dist/wolfram-SZRZOETJ.js.map +1 -0
  704. package/dist/xml-EBTJCOTU.js +3 -0
  705. package/dist/xml-EBTJCOTU.js.map +1 -0
  706. package/dist/xsl-IBYEXWDX.js +3 -0
  707. package/dist/xsl-IBYEXWDX.js.map +1 -0
  708. package/dist/yaml-GMVQNECR.js +3 -0
  709. package/dist/yaml-GMVQNECR.js.map +1 -0
  710. package/dist/zenscript-O2TZFP4A.js +3 -0
  711. package/dist/zenscript-O2TZFP4A.js.map +1 -0
  712. package/dist/zig-ZLGM7IMN.js +3 -0
  713. package/dist/zig-ZLGM7IMN.js.map +1 -0
  714. package/package.json +20 -39
  715. package/dist/mcp-apps-client-Z62VBB36.js +0 -3
  716. package/dist/mcp-apps-client-Z62VBB36.js.map +0 -1
  717. package/dist/openai-client-MVV4KJUO.js +0 -3
  718. package/dist/openai-client-MVV4KJUO.js.map +0 -1
package/dist/index.d.ts CHANGED
@@ -3,7 +3,58 @@ declare class WaniWaniError extends Error {
3
3
  constructor(message: string, status: number);
4
4
  }
5
5
 
6
- type EventType = "tool.called" | "quote.requested" | "quote.succeeded" | "quote.failed" | "link.clicked" | "purchase.completed";
6
+ interface SearchResult {
7
+ source: string;
8
+ heading: string;
9
+ content: string;
10
+ score: number;
11
+ }
12
+ /** A file to ingest into the knowledge base */
13
+ interface KbIngestFile {
14
+ /** Filename (used as chunk source identifier) */
15
+ filename: string;
16
+ /** Markdown content of the file */
17
+ content: string;
18
+ }
19
+ /** Response from the ingest endpoint */
20
+ interface KbIngestResult {
21
+ /** Number of chunks created from the ingested files */
22
+ chunksIngested: number;
23
+ /** Number of files successfully processed */
24
+ filesProcessed: number;
25
+ }
26
+ /** Options for the search method */
27
+ interface KbSearchOptions {
28
+ /** Number of results to return (1-20, default 5) */
29
+ topK?: number;
30
+ /** Minimum similarity score threshold (0-1, default 0.3) */
31
+ minScore?: number;
32
+ }
33
+ /** A source entry in the knowledge base */
34
+ interface KbSource {
35
+ /** Source filename */
36
+ source: string;
37
+ /** Number of chunks from this source */
38
+ chunkCount: number;
39
+ /** ISO timestamp of when the source was first ingested */
40
+ createdAt: string;
41
+ }
42
+ /** KB client for server-side knowledge base operations */
43
+ interface KbClient {
44
+ /**
45
+ * Ingest files into the knowledge base.
46
+ *
47
+ * **Warning**: This is destructive — it deletes ALL existing chunks
48
+ * for the environment before ingesting the new files.
49
+ */
50
+ ingest(files: KbIngestFile[]): Promise<KbIngestResult>;
51
+ /** Search the knowledge base for relevant chunks */
52
+ search(query: string, options?: KbSearchOptions): Promise<SearchResult[]>;
53
+ /** List all sources in the knowledge base */
54
+ sources(): Promise<KbSource[]>;
55
+ }
56
+
57
+ type EventType = "session.started" | "tool.called" | "quote.requested" | "quote.succeeded" | "quote.failed" | "link.clicked" | "purchase.completed" | "widget_render" | "widget_click" | "widget_link_click" | "widget_error" | "widget_scroll" | "widget_form_field" | "widget_form_submit";
7
58
  interface ToolCalledProperties {
8
59
  name?: string;
9
60
  type?: "pricing" | "product_info" | "availability" | "support" | "other";
@@ -19,30 +70,7 @@ interface PurchaseCompletedProperties {
19
70
  amount?: number;
20
71
  currency?: string;
21
72
  }
22
- interface BaseEvent {
23
- /**
24
- * Event type.
25
- *
26
- * @example
27
- * ```typescript
28
- * wani.track({
29
- * event: 'tool.called',
30
- * });
31
- * ```
32
- */
33
- event: EventType;
34
- /**
35
- * Event properties.
36
- *
37
- * @example
38
- * ```typescript
39
- * wani.track({
40
- * event: 'tool.called',
41
- * properties: { name: 'search' },
42
- * });
43
- * ```
44
- */
45
- properties?: Record<string, unknown>;
73
+ interface TrackingContext {
46
74
  /**
47
75
  * MCP request metadata passed through to the API.
48
76
  *
@@ -51,35 +79,107 @@ interface BaseEvent {
51
79
  * - `@modelcontextprotocol/sdk`: `request.params._meta`
52
80
  */
53
81
  meta?: Record<string, unknown>;
82
+ /** Legacy metadata field supported for backward compatibility. */
83
+ metadata?: Record<string, unknown>;
84
+ /** Optional explicit correlation fields. */
85
+ sessionId?: string;
86
+ traceId?: string;
87
+ requestId?: string;
88
+ correlationId?: string;
89
+ externalUserId?: string;
90
+ /** Optional explicit envelope fields. */
91
+ eventId?: string;
92
+ timestamp?: string | Date;
93
+ source?: string;
94
+ }
95
+ /**
96
+ * Modern tracking shape (preferred).
97
+ */
98
+ interface BaseTrackEvent extends TrackingContext {
99
+ event: EventType;
100
+ properties?: Record<string, unknown>;
54
101
  }
55
102
  type TrackEvent = ({
103
+ event: "session.started";
104
+ } & BaseTrackEvent) | ({
56
105
  event: "tool.called";
57
- properties: ToolCalledProperties;
58
- } & BaseEvent) | ({
106
+ properties?: ToolCalledProperties;
107
+ } & BaseTrackEvent) | ({
59
108
  event: "quote.requested";
60
- } & BaseEvent) | ({
109
+ } & BaseTrackEvent) | ({
61
110
  event: "quote.succeeded";
62
- properties: QuoteSucceededProperties;
63
- } & BaseEvent) | ({
111
+ properties?: QuoteSucceededProperties;
112
+ } & BaseTrackEvent) | ({
64
113
  event: "quote.failed";
65
- } & BaseEvent) | ({
114
+ } & BaseTrackEvent) | ({
66
115
  event: "link.clicked";
67
- properties: LinkClickedProperties;
68
- } & BaseEvent) | ({
116
+ properties?: LinkClickedProperties;
117
+ } & BaseTrackEvent) | ({
69
118
  event: "purchase.completed";
70
- properties: PurchaseCompletedProperties;
71
- } & BaseEvent);
119
+ properties?: PurchaseCompletedProperties;
120
+ } & BaseTrackEvent);
121
+ /**
122
+ * Legacy tracking shape supported for existing integrations.
123
+ */
124
+ interface LegacyTrackEvent extends TrackingContext {
125
+ eventType: EventType;
126
+ properties?: Record<string, unknown>;
127
+ toolName?: string;
128
+ toolType?: ToolCalledProperties["type"];
129
+ quoteAmount?: number;
130
+ quoteCurrency?: string;
131
+ linkUrl?: string;
132
+ purchaseAmount?: number;
133
+ purchaseCurrency?: string;
134
+ }
72
135
  /**
73
- * Tracking module methods for WaniWaniClient
136
+ * Public track input accepted by `client.track()`.
137
+ */
138
+ type TrackInput = TrackEvent | LegacyTrackEvent;
139
+ interface TrackingConfig {
140
+ /** Events API V2 endpoint path. */
141
+ endpointPath?: string;
142
+ /** Periodic flush interval for buffered events. */
143
+ flushIntervalMs?: number;
144
+ /** Max events per HTTP batch send. */
145
+ maxBatchSize?: number;
146
+ /** Max in-memory buffer size before oldest items are dropped. */
147
+ maxBufferSize?: number;
148
+ /** Number of retries for retryable failures. */
149
+ maxRetries?: number;
150
+ /** Retry backoff base delay. */
151
+ retryBaseDelayMs?: number;
152
+ /** Retry backoff max delay. */
153
+ retryMaxDelayMs?: number;
154
+ /** Default shutdown timeout when none is provided. */
155
+ shutdownTimeoutMs?: number;
156
+ }
157
+ interface TrackingShutdownOptions {
158
+ timeoutMs?: number;
159
+ }
160
+ interface TrackingShutdownResult {
161
+ timedOut: boolean;
162
+ pendingEvents: number;
163
+ }
164
+ /**
165
+ * Tracking module methods for WaniWaniClient.
74
166
  */
75
167
  interface TrackingClient {
76
168
  /**
77
- * Track an event. Pass MCP request metadata to auto-extract session, user,
78
- * and location info from the provider (OpenAI, Anthropic, etc.).
169
+ * Track an event using modern or legacy input shape.
170
+ * Returns a deterministic event id immediately after enqueue.
79
171
  */
80
- track: (event: TrackEvent) => Promise<{
172
+ track: (event: TrackInput) => Promise<{
81
173
  eventId: string;
82
174
  }>;
175
+ /**
176
+ * Flush all currently buffered events.
177
+ */
178
+ flush: () => Promise<void>;
179
+ /**
180
+ * Flush and stop the transport.
181
+ */
182
+ shutdown: (options?: TrackingShutdownOptions) => Promise<TrackingShutdownResult>;
83
183
  }
84
184
 
85
185
  interface WaniWaniConfig {
@@ -98,12 +198,16 @@ interface WaniWaniConfig {
98
198
  * Defaults to https://app.waniwani.ai
99
199
  */
100
200
  baseUrl?: string;
201
+ /**
202
+ * Tracking transport behavior.
203
+ */
204
+ tracking?: TrackingConfig;
101
205
  }
102
206
  /**
103
207
  * WaniWani SDK Client
104
208
  *
105
209
  * Extends with each module:
106
- * - TrackingClient: track(), getOrCreateSession()
210
+ * - TrackingClient: track(), flush(), shutdown()
107
211
  *
108
212
  * Pass this client to framework adapters:
109
213
  * - `toNextJsHandler(wani, { ... })` for Next.js route handlers
@@ -111,10 +215,52 @@ interface WaniWaniConfig {
111
215
  interface WaniWaniClient extends TrackingClient {
112
216
  /** @internal Resolved config — used by framework adapters */
113
217
  readonly _config: InternalConfig;
218
+ /** Knowledge base client for ingestion, search, and source listing */
219
+ readonly kb: KbClient;
114
220
  }
115
221
  interface InternalConfig {
116
222
  baseUrl: string;
117
223
  apiKey: string | undefined;
224
+ tracking: Required<TrackingConfig>;
225
+ }
226
+
227
+ type V2EnvelopeType = "mcp.event";
228
+ interface V2CorrelationIds {
229
+ sessionId?: string;
230
+ traceId?: string;
231
+ requestId?: string;
232
+ correlationId?: string;
233
+ externalUserId?: string;
234
+ }
235
+ interface V2EventEnvelope {
236
+ id: string;
237
+ type: V2EnvelopeType;
238
+ name: EventType;
239
+ source: string;
240
+ timestamp: string;
241
+ correlation: V2CorrelationIds;
242
+ properties: Record<string, unknown>;
243
+ metadata: Record<string, unknown>;
244
+ rawLegacy?: LegacyTrackEvent;
245
+ }
246
+ interface V2BatchRequest {
247
+ sentAt: string;
248
+ source: {
249
+ sdk: string;
250
+ version?: string;
251
+ };
252
+ events: V2EventEnvelope[];
253
+ }
254
+ interface V2BatchRejectedEvent {
255
+ eventId: string;
256
+ code: string;
257
+ message?: string;
258
+ retryable?: boolean;
259
+ }
260
+ interface V2BatchResponse {
261
+ accepted: number;
262
+ rejected?: V2BatchRejectedEvent[];
263
+ requestId?: string;
118
264
  }
119
265
 
120
266
  /**
@@ -138,4 +284,4 @@ interface InternalConfig {
138
284
  */
139
285
  declare function waniwani(config?: WaniWaniConfig): WaniWaniClient;
140
286
 
141
- export { type EventType, type LinkClickedProperties, type PurchaseCompletedProperties, type QuoteSucceededProperties, type ToolCalledProperties, type TrackEvent, type WaniWaniClient, type WaniWaniConfig, WaniWaniError, waniwani };
287
+ export { type EventType, type KbClient, type KbIngestFile, type KbIngestResult, type KbSearchOptions, type KbSource, type LegacyTrackEvent, type LinkClickedProperties, type PurchaseCompletedProperties, type QuoteSucceededProperties, type ToolCalledProperties, type TrackEvent, type TrackInput, type TrackingConfig, type TrackingShutdownOptions, type TrackingShutdownResult, type V2BatchRejectedEvent, type V2BatchRequest, type V2BatchResponse, type V2CorrelationIds, type V2EnvelopeType, type V2EventEnvelope, type WaniWaniClient, type WaniWaniConfig, WaniWaniError, waniwani };
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- var i=class extends Error{constructor(e,n){super(e);this.status=n;this.name="WaniWaniError"}};function l(r){let{baseUrl:o,apiKey:e}=r;function n(){if(!e)throw new Error("WANIWANI_API_KEY is not set")}return{async track(p){try{n();let t=await fetch(`${o}/api/mcp/events`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${e}`},body:JSON.stringify(p)}),c=await t.json();if(!t.ok)throw new i(c.message??"Request failed",t.status);return{eventId:c.data.eventId}}catch(t){throw console.error("[WaniWani] Track error:",t),t}}}}function f(r){let o=r?.baseUrl??"https://app.waniwani.ai",e=r?.apiKey??process.env.WANIWANI_API_KEY,n={baseUrl:o,apiKey:e};return{...l(n),_config:n}}export{i as WaniWaniError,f as waniwani};
1
+ var f=class extends Error{constructor(n,r){super(n);this.status=r;this.name="WaniWaniError"}};var _="@waniwani/sdk";function S(e){let{baseUrl:t,apiKey:n}=e;function r(){if(!n)throw new Error("WANIWANI_API_KEY is not set");return n}async function s(i,a,o){let l=r(),v=`${t.replace(/\/$/,"")}${a}`,g={Authorization:`Bearer ${l}`,"X-WaniWani-SDK":_},p={method:i,headers:g};o!==void 0&&(g["Content-Type"]="application/json",p.body=JSON.stringify(o));let u=await fetch(v,p);if(!u.ok){let R=await u.text().catch(()=>"");throw new f(R||`KB API error: HTTP ${u.status}`,u.status)}return(await u.json()).data}return{async ingest(i){return s("POST","/api/mcp/kb/ingest",{files:i})},async search(i,a){return s("POST","/api/mcp/kb/search",{query:i,...a})},async sources(){return s("GET","/api/mcp/kb/sources")}}}var x="@waniwani/sdk";function T(e,t={}){let n=t.now??(()=>new Date),r=t.generateId??I,s=B(e),i=y(e.meta),a=y(e.metadata),o=C(e,i),l=c(e.eventId)??r(),v=V(e.timestamp,n),g=c(e.source)??t.source??x,p=E(e)?{...e}:void 0,u={...a};return Object.keys(i).length>0&&(u.meta=i),p&&(u.rawLegacy=p),{id:l,type:"mcp.event",name:s,source:g,timestamp:v,correlation:o,properties:D(e,s),metadata:u,rawLegacy:p}}function I(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?`evt_${crypto.randomUUID()}`:`evt_${Math.random().toString(36).slice(2,10)}_${Date.now().toString(36)}`}function D(e,t){if(!E(e))return y(e.properties);let n=A(e,t),r=y(e.properties);return{...n,...r}}function A(e,t){switch(t){case"tool.called":{let n={};return c(e.toolName)&&(n.name=e.toolName),c(e.toolType)&&(n.type=e.toolType),n}case"quote.succeeded":{let n={};return typeof e.quoteAmount=="number"&&(n.amount=e.quoteAmount),c(e.quoteCurrency)&&(n.currency=e.quoteCurrency),n}case"link.clicked":{let n={};return c(e.linkUrl)&&(n.url=e.linkUrl),n}case"purchase.completed":{let n={};return typeof e.purchaseAmount=="number"&&(n.amount=e.purchaseAmount),c(e.purchaseCurrency)&&(n.currency=e.purchaseCurrency),n}default:return{}}}function B(e){return E(e)?e.eventType:e.event}function C(e,t){let n=c(e.requestId)??m(t,["openai/requestId","requestId","mcp/requestId"]),r=c(e.sessionId)??m(t,["openai/sessionId","sessionId","conversationId","anthropic/sessionId"]),s=c(e.traceId)??m(t,["openai/traceId","traceId","mcp/traceId","openai/requestId","requestId"]),i=c(e.externalUserId)??m(t,["openai/userId","externalUserId","userId","actorId"]),a=c(e.correlationId)??m(t,["correlationId","openai/requestId"])??n,o={};return r&&(o.sessionId=r),s&&(o.traceId=s),n&&(o.requestId=n),a&&(o.correlationId=a),i&&(o.externalUserId=i),o}function V(e,t){if(e instanceof Date)return e.toISOString();if(typeof e=="string"){let n=new Date(e);if(!Number.isNaN(n.getTime()))return n.toISOString()}return t().toISOString()}function m(e,t){for(let n of t){let r=e[n];if(typeof r=="string"&&r.trim().length>0)return r}}function y(e){return!e||typeof e!="object"||Array.isArray(e)?{}:e}function c(e){if(typeof e=="string"&&e.trim().length!==0)return e}function E(e){return"eventType"in e}var P="/api/mcp/events/v2/batch";var w="@waniwani/sdk",F=new Set([401,403]),U=new Set([408,425,429,500,502,503,504]);function b(e){return new k(e)}var k=class{endpointUrl;flushIntervalMs;maxBatchSize;maxBufferSize;maxRetries;retryBaseDelayMs;retryMaxDelayMs;shutdownTimeoutMs;sdkVersion;fetchFn;logger;now;sleep;apiKey;buffer=[];flushTimer;flushScheduled=!1;flushScheduledTimer;flushInFlight;inFlightCount=0;isStopped=!1;isShuttingDown=!1;constructor(t){this.endpointUrl=O(t.baseUrl,t.endpointPath??P),this.flushIntervalMs=t.flushIntervalMs??1e3,this.maxBatchSize=t.maxBatchSize??20,this.maxBufferSize=t.maxBufferSize??1e3,this.maxRetries=t.maxRetries??3,this.retryBaseDelayMs=t.retryBaseDelayMs??200,this.retryMaxDelayMs=t.retryMaxDelayMs??2e3,this.shutdownTimeoutMs=t.shutdownTimeoutMs??2e3,this.fetchFn=t.fetchFn??fetch,this.logger=t.logger??console,this.now=t.now??(()=>new Date),this.sleep=t.sleep??(n=>new Promise(r=>setTimeout(r,n))),this.apiKey=t.apiKey,this.sdkVersion=t.sdkVersion,this.flushIntervalMs>0&&(this.flushTimer=setInterval(()=>{this.flush()},this.flushIntervalMs))}enqueue(t){if(this.isStopped||this.isShuttingDown){this.logger.warn("[WaniWani] Tracking transport is stopped, dropping event %s",t.id);return}if(this.buffer.length>=this.maxBufferSize){let n=this.buffer.length-this.maxBufferSize+1;this.buffer.splice(0,n),this.logger.warn("[WaniWani] Tracking buffer overflow, dropped %d oldest event(s)",n)}if(this.buffer.push(t),this.buffer.length>=this.maxBatchSize){this.flush();return}this.scheduleMicroFlush()}pendingEvents(){return this.buffer.length+this.inFlightCount}async flush(){return this.flushInFlight?this.flushInFlight:(this.flushInFlight=this.flushLoop().finally(()=>{this.flushInFlight=void 0}),this.flushInFlight)}async shutdown(t){this.isShuttingDown=!0,this.flushTimer&&(clearInterval(this.flushTimer),this.flushTimer=void 0),this.flushScheduledTimer&&(clearTimeout(this.flushScheduledTimer),this.flushScheduledTimer=void 0,this.flushScheduled=!1);let n=t?.timeoutMs??this.shutdownTimeoutMs,r=this.flush();if(!Number.isFinite(n)||n<=0)return await r,this.isStopped=!0,{timedOut:!1,pendingEvents:this.pendingEvents()};let s=Symbol("shutdown-timeout");return await Promise.race([r.then(()=>"flushed"),this.sleep(n).then(()=>s)])===s?(this.isStopped=!0,{timedOut:!0,pendingEvents:this.pendingEvents()}):(this.isStopped=!0,{timedOut:!1,pendingEvents:this.pendingEvents()})}scheduleMicroFlush(){this.flushScheduled||(this.flushScheduled=!0,this.flushScheduledTimer=setTimeout(()=>{this.flushScheduledTimer=void 0,this.flushScheduled=!1,this.flush()},0))}async flushLoop(){for(;this.buffer.length>0&&!this.isStopped;){let t=this.buffer.splice(0,this.maxBatchSize);await this.sendBatchWithRetry(t)}}async sendBatchWithRetry(t){let n=0,r=t;for(;r.length>0&&!this.isStopped;){this.inFlightCount=r.length;let s=await this.sendBatchOnce(r);switch(this.inFlightCount=0,s.kind){case"success":return;case"auth":this.stopTransportForAuthFailure(s.status,r.length);return;case"permanent":this.logger.error("[WaniWani] Dropping %d event(s) after permanent failure: %s",r.length,s.reason);return;case"retryable":if(n>=this.maxRetries){this.logger.error("[WaniWani] Dropping %d event(s) after retry exhaustion: %s",r.length,s.reason);return}await this.sleep(this.backoffDelayMs(n)),n+=1;continue;case"partial":if(s.permanent.length>0&&this.logger.error("[WaniWani] Dropping %d event(s) rejected as permanent",s.permanent.length),s.retryable.length===0)return;if(n>=this.maxRetries){this.logger.error("[WaniWani] Dropping %d retryable event(s) after retry exhaustion",s.retryable.length);return}r=s.retryable,await this.sleep(this.backoffDelayMs(n)),n+=1;continue}}}async sendBatchOnce(t){let n;try{n=await this.fetchFn(this.endpointUrl,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.apiKey}`,"X-WaniWani-SDK":w},body:JSON.stringify(this.makeBatchRequest(t))})}catch(i){return{kind:"retryable",reason:K(i)}}if(F.has(n.status))return{kind:"auth",status:n.status};if(U.has(n.status))return{kind:"retryable",reason:`HTTP ${n.status}`};if(!n.ok)return{kind:"permanent",reason:`HTTP ${n.status}`};let r=await L(n);if(!r?.rejected||r.rejected.length===0)return{kind:"success"};let s=this.classifyRejectedEvents(t,r.rejected);return s.retryable.length===0&&s.permanent.length===0?{kind:"success"}:{kind:"partial",retryable:s.retryable,permanent:s.permanent}}makeBatchRequest(t){return{sentAt:this.now().toISOString(),source:{sdk:w,version:this.sdkVersion??"0.0.0"},events:t}}classifyRejectedEvents(t,n){let r=new Map(t.map(a=>[a.id,a])),s=[],i=[];for(let a of n){let o=r.get(a.eventId);if(o){if(W(a)){s.push(o);continue}i.push(o)}}return{retryable:s,permanent:i}}backoffDelayMs(t){let n=this.retryBaseDelayMs*2**t;return Math.min(n,this.retryMaxDelayMs)}stopTransportForAuthFailure(t,n){this.isStopped=!0;let r=this.buffer.length;this.buffer.splice(0,r),this.logger.error("[WaniWani] Auth failure (HTTP %d). Stopping tracking transport and dropping %d queued event(s)",t,n+r)}};function W(e){if(e.retryable===!0)return!0;let t=e.code.toLowerCase();return t.includes("timeout")||t.includes("temporary")||t.includes("unavailable")||t.includes("rate_limit")||t.includes("transient")||t.includes("server")}async function L(e){let t=await e.text();if(t)try{return JSON.parse(t)}catch{return}}function O(e,t){let n=e.endsWith("/")?e:`${e}/`,r=t.startsWith("/")?t.slice(1):t;return`${n}${r}`}function K(e){return e instanceof Error?e.message:String(e)}function M(e){let{baseUrl:t,apiKey:n,tracking:r}=e;function s(){if(!n)throw new Error("WANIWANI_API_KEY is not set");return n}let i=n?b({baseUrl:t,apiKey:n,endpointPath:r.endpointPath,flushIntervalMs:r.flushIntervalMs,maxBatchSize:r.maxBatchSize,maxBufferSize:r.maxBufferSize,maxRetries:r.maxRetries,retryBaseDelayMs:r.retryBaseDelayMs,retryMaxDelayMs:r.retryMaxDelayMs,shutdownTimeoutMs:r.shutdownTimeoutMs}):void 0,a={async track(o){s();let l=T(o);return i?.enqueue(l),{eventId:l.id}},async flush(){s(),await i?.flush()},async shutdown(o){return s(),await i?.shutdown({timeoutMs:o?.timeoutMs??r.shutdownTimeoutMs})??{timedOut:!1,pendingEvents:0}}};return i&&j(a,r.shutdownTimeoutMs),a}function j(e,t){if(typeof process>"u"||typeof process.once!="function"||typeof process.on!="function")return;let n=()=>{e.shutdown({timeoutMs:t})};process.once("beforeExit",n),process.once("SIGINT",n),process.once("SIGTERM",n)}function q(e){let t=e?.baseUrl??"https://app.waniwani.ai",n=e?.apiKey??process.env.WANIWANI_API_KEY,r={endpointPath:e?.tracking?.endpointPath??"/api/mcp/events/v2/batch",flushIntervalMs:e?.tracking?.flushIntervalMs??1e3,maxBatchSize:e?.tracking?.maxBatchSize??20,maxBufferSize:e?.tracking?.maxBufferSize??1e3,maxRetries:e?.tracking?.maxRetries??3,retryBaseDelayMs:e?.tracking?.retryBaseDelayMs??200,retryMaxDelayMs:e?.tracking?.retryMaxDelayMs??2e3,shutdownTimeoutMs:e?.tracking?.shutdownTimeoutMs??2e3},s={baseUrl:t,apiKey:n,tracking:r},i=M(s),a=S(s);return{...i,kb:a,_config:s}}export{f as WaniWaniError,q as waniwani};
2
2
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/error.ts","../src/tracking/index.ts","../src/waniwani.ts"],"sourcesContent":["// WaniWani SDK - Errors\n\nexport class WaniWaniError extends Error {\n\tconstructor(\n\t\tmessage: string,\n\t\tpublic status: number,\n\t) {\n\t\tsuper(message);\n\t\tthis.name = \"WaniWaniError\";\n\t}\n}\n","// Tracking Module\n\nimport { WaniWaniError } from \"../error.js\";\nimport type { InternalConfig } from \"../types.js\";\nimport type { TrackEvent, TrackingClient } from \"./@types.js\";\n\n// Re-export types\nexport type {\n\tEventType,\n\tLinkClickedProperties,\n\tPurchaseCompletedProperties,\n\tQuoteSucceededProperties,\n\tToolCalledProperties,\n\tTrackEvent,\n\tTrackingClient,\n} from \"./@types.js\";\n\nexport function createTrackingClient(config: InternalConfig): TrackingClient {\n\tconst { baseUrl, apiKey } = config;\n\n\tfunction checkIfApiKeyIsSet() {\n\t\tif (!apiKey) {\n\t\t\tthrow new Error(\"WANIWANI_API_KEY is not set\");\n\t\t}\n\t}\n\n\treturn {\n\t\tasync track(event: TrackEvent): Promise<{ eventId: string }> {\n\t\t\ttry {\n\t\t\t\tcheckIfApiKeyIsSet();\n\n\t\t\t\tconst response = await fetch(`${baseUrl}/api/mcp/events`, {\n\t\t\t\t\tmethod: \"POST\",\n\t\t\t\t\theaders: {\n\t\t\t\t\t\t\"Content-Type\": \"application/json\",\n\t\t\t\t\t\tAuthorization: `Bearer ${apiKey}`,\n\t\t\t\t\t},\n\t\t\t\t\tbody: JSON.stringify(event),\n\t\t\t\t});\n\n\t\t\t\tconst data = await response.json();\n\n\t\t\t\tif (!response.ok) {\n\t\t\t\t\tthrow new WaniWaniError(\n\t\t\t\t\t\tdata.message ?? \"Request failed\",\n\t\t\t\t\t\tresponse.status,\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\treturn { eventId: data.data.eventId };\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error(\"[WaniWani] Track error:\", error);\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t},\n\t};\n}\n","// WaniWani SDK - Main Entry\n\nimport { createTrackingClient } from \"./tracking/index.js\";\nimport type { WaniWaniClient, WaniWaniConfig } from \"./types.js\";\n\n/**\n * Create a WaniWani SDK client\n *\n * @param config - Configuration options\n * @returns A fully typed WaniWani client\n *\n * @example\n * ```typescript\n * import { waniwani } from \"@waniwani/sdk\";\n * import { toNextJsHandler } from \"@waniwani/sdk/next-js\";\n *\n * const wani = waniwani({ apiKey: \"...\" });\n *\n * // Next.js route handler\n * export const { GET, POST } = toNextJsHandler(wani, {\n * chat: { systemPrompt: \"You are a helpful assistant.\" },\n * });\n * ```\n */\nexport function waniwani(config?: WaniWaniConfig): WaniWaniClient {\n\tconst baseUrl = config?.baseUrl ?? \"https://app.waniwani.ai\";\n\tconst apiKey = config?.apiKey ?? process.env.WANIWANI_API_KEY;\n\n\tconst internalConfig = { baseUrl, apiKey };\n\n\t// Compose client from modules\n\tconst tracking = createTrackingClient(internalConfig);\n\n\treturn {\n\t\t...tracking,\n\t\t_config: internalConfig,\n\t};\n}\n"],"mappings":"AAEO,IAAMA,EAAN,cAA4B,KAAM,CACxC,YACCC,EACOC,EACN,CACD,MAAMD,CAAO,EAFN,YAAAC,EAGP,KAAK,KAAO,eACb,CACD,ECOO,SAASC,EAAqBC,EAAwC,CAC5E,GAAM,CAAE,QAAAC,EAAS,OAAAC,CAAO,EAAIF,EAE5B,SAASG,GAAqB,CAC7B,GAAI,CAACD,EACJ,MAAM,IAAI,MAAM,6BAA6B,CAE/C,CAEA,MAAO,CACN,MAAM,MAAME,EAAiD,CAC5D,GAAI,CACHD,EAAmB,EAEnB,IAAME,EAAW,MAAM,MAAM,GAAGJ,CAAO,kBAAmB,CACzD,OAAQ,OACR,QAAS,CACR,eAAgB,mBAChB,cAAe,UAAUC,CAAM,EAChC,EACA,KAAM,KAAK,UAAUE,CAAK,CAC3B,CAAC,EAEKE,EAAO,MAAMD,EAAS,KAAK,EAEjC,GAAI,CAACA,EAAS,GACb,MAAM,IAAIE,EACTD,EAAK,SAAW,iBAChBD,EAAS,MACV,EAGD,MAAO,CAAE,QAASC,EAAK,KAAK,OAAQ,CACrC,OAASE,EAAO,CACf,cAAQ,MAAM,0BAA2BA,CAAK,EACxCA,CACP,CACD,CACD,CACD,CChCO,SAASC,EAASC,EAAyC,CACjE,IAAMC,EAAUD,GAAQ,SAAW,0BAC7BE,EAASF,GAAQ,QAAU,QAAQ,IAAI,iBAEvCG,EAAiB,CAAE,QAAAF,EAAS,OAAAC,CAAO,EAKzC,MAAO,CACN,GAHgBE,EAAqBD,CAAc,EAInD,QAASA,CACV,CACD","names":["WaniWaniError","message","status","createTrackingClient","config","baseUrl","apiKey","checkIfApiKeyIsSet","event","response","data","WaniWaniError","error","waniwani","config","baseUrl","apiKey","internalConfig","createTrackingClient"]}
1
+ {"version":3,"sources":["../src/error.ts","../src/kb/client.ts","../src/tracking/mapper.ts","../src/tracking/transport.ts","../src/tracking/index.ts","../src/waniwani.ts"],"sourcesContent":["// WaniWani SDK - Errors\n\nexport class WaniWaniError extends Error {\n\tconstructor(\n\t\tmessage: string,\n\t\tpublic status: number,\n\t) {\n\t\tsuper(message);\n\t\tthis.name = \"WaniWaniError\";\n\t}\n}\n","// KB Client — thin HTTP wrapper for knowledge base API\n\nimport { WaniWaniError } from \"../error.js\";\nimport type { InternalConfig } from \"../types.js\";\nimport type {\n\tKbClient,\n\tKbIngestFile,\n\tKbIngestResult,\n\tKbSearchOptions,\n\tKbSource,\n\tSearchResult,\n} from \"./types.js\";\n\nconst SDK_NAME = \"@waniwani/sdk\";\n\nexport function createKbClient(config: InternalConfig): KbClient {\n\tconst { baseUrl, apiKey } = config;\n\n\tfunction requireApiKey(): string {\n\t\tif (!apiKey) {\n\t\t\tthrow new Error(\"WANIWANI_API_KEY is not set\");\n\t\t}\n\t\treturn apiKey;\n\t}\n\n\tasync function request<T>(\n\t\tmethod: \"GET\" | \"POST\",\n\t\tpath: string,\n\t\tbody?: unknown,\n\t): Promise<T> {\n\t\tconst key = requireApiKey();\n\t\tconst url = `${baseUrl.replace(/\\/$/, \"\")}${path}`;\n\n\t\tconst headers: Record<string, string> = {\n\t\t\tAuthorization: `Bearer ${key}`,\n\t\t\t\"X-WaniWani-SDK\": SDK_NAME,\n\t\t};\n\n\t\tconst init: RequestInit = { method, headers };\n\n\t\tif (body !== undefined) {\n\t\t\theaders[\"Content-Type\"] = \"application/json\";\n\t\t\tinit.body = JSON.stringify(body);\n\t\t}\n\n\t\tconst response = await fetch(url, init);\n\n\t\tif (!response.ok) {\n\t\t\tconst text = await response.text().catch(() => \"\");\n\t\t\tthrow new WaniWaniError(\n\t\t\t\ttext || `KB API error: HTTP ${response.status}`,\n\t\t\t\tresponse.status,\n\t\t\t);\n\t\t}\n\n\t\tconst json = (await response.json()) as { data: T };\n\t\treturn json.data;\n\t}\n\n\treturn {\n\t\tasync ingest(files: KbIngestFile[]): Promise<KbIngestResult> {\n\t\t\treturn request<KbIngestResult>(\"POST\", \"/api/mcp/kb/ingest\", {\n\t\t\t\tfiles,\n\t\t\t});\n\t\t},\n\n\t\tasync search(\n\t\t\tquery: string,\n\t\t\toptions?: KbSearchOptions,\n\t\t): Promise<SearchResult[]> {\n\t\t\treturn request<SearchResult[]>(\"POST\", \"/api/mcp/kb/search\", {\n\t\t\t\tquery,\n\t\t\t\t...options,\n\t\t\t});\n\t\t},\n\n\t\tasync sources(): Promise<KbSource[]> {\n\t\t\treturn request<KbSource[]>(\"GET\", \"/api/mcp/kb/sources\");\n\t\t},\n\t};\n}\n","import type { EventType, LegacyTrackEvent, TrackInput } from \"./@types.js\";\nimport type { V2CorrelationIds, V2EventEnvelope } from \"./v2-types.js\";\n\nconst DEFAULT_SOURCE = \"@waniwani/sdk\";\n\nexport interface MapTrackEventOptions {\n\tnow?: () => Date;\n\tgenerateId?: () => string;\n\tsource?: string;\n}\n\nexport function mapTrackEventToV2(\n\tinput: TrackInput,\n\toptions: MapTrackEventOptions = {},\n): V2EventEnvelope {\n\tconst now = options.now ?? (() => new Date());\n\tconst generateId = options.generateId ?? createEventId;\n\tconst eventName = resolveEventName(input);\n\tconst meta = toRecord(input.meta);\n\tconst metadata = toRecord(input.metadata);\n\tconst correlation = resolveCorrelationIds(input, meta);\n\tconst eventId = takeNonEmptyString(input.eventId) ?? generateId();\n\tconst timestamp = normalizeTimestamp(input.timestamp, now);\n\tconst source =\n\t\ttakeNonEmptyString(input.source) ?? options.source ?? DEFAULT_SOURCE;\n\tconst rawLegacy = isLegacyTrackEvent(input) ? { ...input } : undefined;\n\n\tconst mappedMetadata: Record<string, unknown> = {\n\t\t...metadata,\n\t};\n\tif (Object.keys(meta).length > 0) mappedMetadata.meta = meta;\n\tif (rawLegacy) mappedMetadata.rawLegacy = rawLegacy;\n\n\treturn {\n\t\tid: eventId,\n\t\ttype: \"mcp.event\",\n\t\tname: eventName,\n\t\tsource,\n\t\ttimestamp,\n\t\tcorrelation,\n\t\tproperties: mapProperties(input, eventName),\n\t\tmetadata: mappedMetadata,\n\t\trawLegacy,\n\t};\n}\n\nexport function createEventId(): string {\n\tif (\n\t\ttypeof crypto !== \"undefined\" &&\n\t\ttypeof crypto.randomUUID === \"function\"\n\t) {\n\t\treturn `evt_${crypto.randomUUID()}`;\n\t}\n\n\treturn `evt_${Math.random().toString(36).slice(2, 10)}_${Date.now().toString(36)}`;\n}\n\nfunction mapProperties(\n\tinput: TrackInput,\n\teventName: EventType,\n): Record<string, unknown> {\n\tif (!isLegacyTrackEvent(input)) {\n\t\treturn toRecord(input.properties);\n\t}\n\n\tconst legacyProperties = mapLegacyProperties(input, eventName);\n\tconst explicitProperties = toRecord(input.properties);\n\treturn {\n\t\t...legacyProperties,\n\t\t...explicitProperties,\n\t};\n}\n\nfunction mapLegacyProperties(\n\tinput: LegacyTrackEvent,\n\teventName: EventType,\n): Record<string, unknown> {\n\tswitch (eventName) {\n\t\tcase \"tool.called\": {\n\t\t\tconst properties: Record<string, unknown> = {};\n\t\t\tif (takeNonEmptyString(input.toolName)) properties.name = input.toolName;\n\t\t\tif (takeNonEmptyString(input.toolType)) properties.type = input.toolType;\n\t\t\treturn properties;\n\t\t}\n\t\tcase \"quote.succeeded\": {\n\t\t\tconst properties: Record<string, unknown> = {};\n\t\t\tif (typeof input.quoteAmount === \"number\") {\n\t\t\t\tproperties.amount = input.quoteAmount;\n\t\t\t}\n\t\t\tif (takeNonEmptyString(input.quoteCurrency)) {\n\t\t\t\tproperties.currency = input.quoteCurrency;\n\t\t\t}\n\t\t\treturn properties;\n\t\t}\n\t\tcase \"link.clicked\": {\n\t\t\tconst properties: Record<string, unknown> = {};\n\t\t\tif (takeNonEmptyString(input.linkUrl)) properties.url = input.linkUrl;\n\t\t\treturn properties;\n\t\t}\n\t\tcase \"purchase.completed\": {\n\t\t\tconst properties: Record<string, unknown> = {};\n\t\t\tif (typeof input.purchaseAmount === \"number\") {\n\t\t\t\tproperties.amount = input.purchaseAmount;\n\t\t\t}\n\t\t\tif (takeNonEmptyString(input.purchaseCurrency)) {\n\t\t\t\tproperties.currency = input.purchaseCurrency;\n\t\t\t}\n\t\t\treturn properties;\n\t\t}\n\t\tdefault:\n\t\t\treturn {};\n\t}\n}\n\nfunction resolveEventName(input: TrackInput): EventType {\n\tif (isLegacyTrackEvent(input)) return input.eventType;\n\treturn input.event;\n}\n\nfunction resolveCorrelationIds(\n\tinput: TrackInput,\n\tmeta: Record<string, unknown>,\n): V2CorrelationIds {\n\tconst requestId =\n\t\ttakeNonEmptyString(input.requestId) ??\n\t\tpickFirstString(meta, [\"openai/requestId\", \"requestId\", \"mcp/requestId\"]);\n\n\tconst sessionId =\n\t\ttakeNonEmptyString(input.sessionId) ??\n\t\tpickFirstString(meta, [\n\t\t\t\"openai/sessionId\",\n\t\t\t\"sessionId\",\n\t\t\t\"conversationId\",\n\t\t\t\"anthropic/sessionId\",\n\t\t]);\n\n\tconst traceId =\n\t\ttakeNonEmptyString(input.traceId) ??\n\t\tpickFirstString(meta, [\n\t\t\t\"openai/traceId\",\n\t\t\t\"traceId\",\n\t\t\t\"mcp/traceId\",\n\t\t\t\"openai/requestId\",\n\t\t\t\"requestId\",\n\t\t]);\n\n\tconst externalUserId =\n\t\ttakeNonEmptyString(input.externalUserId) ??\n\t\tpickFirstString(meta, [\n\t\t\t\"openai/userId\",\n\t\t\t\"externalUserId\",\n\t\t\t\"userId\",\n\t\t\t\"actorId\",\n\t\t]);\n\n\tconst correlationId =\n\t\ttakeNonEmptyString(input.correlationId) ??\n\t\tpickFirstString(meta, [\"correlationId\", \"openai/requestId\"]) ??\n\t\trequestId;\n\n\tconst correlation: V2CorrelationIds = {};\n\tif (sessionId) correlation.sessionId = sessionId;\n\tif (traceId) correlation.traceId = traceId;\n\tif (requestId) correlation.requestId = requestId;\n\tif (correlationId) correlation.correlationId = correlationId;\n\tif (externalUserId) correlation.externalUserId = externalUserId;\n\treturn correlation;\n}\n\nfunction normalizeTimestamp(\n\tinput: string | Date | undefined,\n\tnow: () => Date,\n): string {\n\tif (input instanceof Date) return input.toISOString();\n\tif (typeof input === \"string\") {\n\t\tconst date = new Date(input);\n\t\tif (!Number.isNaN(date.getTime())) return date.toISOString();\n\t}\n\treturn now().toISOString();\n}\n\nfunction pickFirstString(\n\trecord: Record<string, unknown>,\n\tkeys: readonly string[],\n): string | undefined {\n\tfor (const key of keys) {\n\t\tconst value = record[key];\n\t\tif (typeof value === \"string\" && value.trim().length > 0) {\n\t\t\treturn value;\n\t\t}\n\t}\n\treturn undefined;\n}\n\nfunction toRecord(value: unknown): Record<string, unknown> {\n\tif (!value || typeof value !== \"object\" || Array.isArray(value)) {\n\t\treturn {};\n\t}\n\treturn value as Record<string, unknown>;\n}\n\nfunction takeNonEmptyString(value: unknown): string | undefined {\n\tif (typeof value !== \"string\") return undefined;\n\tif (value.trim().length === 0) return undefined;\n\treturn value;\n}\n\nfunction isLegacyTrackEvent(input: TrackInput): input is LegacyTrackEvent {\n\treturn \"eventType\" in input;\n}\n","import type {\n\tTrackingShutdownOptions,\n\tTrackingShutdownResult,\n} from \"./@types.js\";\nimport type {\n\tV2BatchRejectedEvent,\n\tV2BatchRequest,\n\tV2BatchResponse,\n\tV2EventEnvelope,\n} from \"./v2-types.js\";\n\nconst DEFAULT_ENDPOINT_PATH = \"/api/mcp/events/v2/batch\";\nconst DEFAULT_FLUSH_INTERVAL_MS = 1_000;\nconst DEFAULT_MAX_BATCH_SIZE = 20;\nconst DEFAULT_MAX_BUFFER_SIZE = 1_000;\nconst DEFAULT_MAX_RETRIES = 3;\nconst DEFAULT_RETRY_BASE_DELAY_MS = 200;\nconst DEFAULT_RETRY_MAX_DELAY_MS = 2_000;\nconst DEFAULT_SHUTDOWN_TIMEOUT_MS = 2_000;\nconst SDK_NAME = \"@waniwani/sdk\";\n\nconst AUTH_FAILURE_STATUS = new Set([401, 403]);\nconst RETRYABLE_STATUS = new Set([408, 425, 429, 500, 502, 503, 504]);\n\ninterface Logger {\n\twarn: (message: string, ...args: unknown[]) => void;\n\terror: (message: string, ...args: unknown[]) => void;\n}\n\nexport interface V2TransportOptions {\n\tbaseUrl: string;\n\tapiKey: string;\n\tendpointPath?: string;\n\tflushIntervalMs?: number;\n\tmaxBatchSize?: number;\n\tmaxBufferSize?: number;\n\tmaxRetries?: number;\n\tretryBaseDelayMs?: number;\n\tretryMaxDelayMs?: number;\n\tshutdownTimeoutMs?: number;\n\tsdkVersion?: string;\n\tfetchFn?: typeof fetch;\n\tlogger?: Logger;\n\tnow?: () => Date;\n\tsleep?: (delayMs: number) => Promise<void>;\n}\n\nexport interface V2BatchTransport {\n\tenqueue: (event: V2EventEnvelope) => void;\n\tflush: () => Promise<void>;\n\tshutdown: (\n\t\toptions?: TrackingShutdownOptions,\n\t) => Promise<TrackingShutdownResult>;\n\tpendingEvents: () => number;\n}\n\ntype SendBatchResult =\n\t| { kind: \"success\" }\n\t| { kind: \"retryable\"; reason: string }\n\t| { kind: \"permanent\"; reason: string }\n\t| { kind: \"auth\"; status: number }\n\t| {\n\t\t\tkind: \"partial\";\n\t\t\tretryable: V2EventEnvelope[];\n\t\t\tpermanent: V2EventEnvelope[];\n\t };\n\nexport function createV2BatchTransport(\n\toptions: V2TransportOptions,\n): V2BatchTransport {\n\treturn new BatchingV2Transport(options);\n}\n\nclass BatchingV2Transport implements V2BatchTransport {\n\tprivate readonly endpointUrl: string;\n\tprivate readonly flushIntervalMs: number;\n\tprivate readonly maxBatchSize: number;\n\tprivate readonly maxBufferSize: number;\n\tprivate readonly maxRetries: number;\n\tprivate readonly retryBaseDelayMs: number;\n\tprivate readonly retryMaxDelayMs: number;\n\tprivate readonly shutdownTimeoutMs: number;\n\tprivate readonly sdkVersion?: string;\n\tprivate readonly fetchFn: typeof fetch;\n\tprivate readonly logger: Logger;\n\tprivate readonly now: () => Date;\n\tprivate readonly sleep: (delayMs: number) => Promise<void>;\n\tprivate readonly apiKey: string;\n\n\tprivate readonly buffer: V2EventEnvelope[] = [];\n\tprivate flushTimer: ReturnType<typeof setInterval> | undefined;\n\tprivate flushScheduled = false;\n\tprivate flushScheduledTimer: ReturnType<typeof setTimeout> | undefined;\n\tprivate flushInFlight: Promise<void> | undefined;\n\tprivate inFlightCount = 0;\n\tprivate isStopped = false;\n\tprivate isShuttingDown = false;\n\n\tconstructor(options: V2TransportOptions) {\n\t\tthis.endpointUrl = joinUrl(\n\t\t\toptions.baseUrl,\n\t\t\toptions.endpointPath ?? DEFAULT_ENDPOINT_PATH,\n\t\t);\n\t\tthis.flushIntervalMs = options.flushIntervalMs ?? DEFAULT_FLUSH_INTERVAL_MS;\n\t\tthis.maxBatchSize = options.maxBatchSize ?? DEFAULT_MAX_BATCH_SIZE;\n\t\tthis.maxBufferSize = options.maxBufferSize ?? DEFAULT_MAX_BUFFER_SIZE;\n\t\tthis.maxRetries = options.maxRetries ?? DEFAULT_MAX_RETRIES;\n\t\tthis.retryBaseDelayMs =\n\t\t\toptions.retryBaseDelayMs ?? DEFAULT_RETRY_BASE_DELAY_MS;\n\t\tthis.retryMaxDelayMs =\n\t\t\toptions.retryMaxDelayMs ?? DEFAULT_RETRY_MAX_DELAY_MS;\n\t\tthis.shutdownTimeoutMs =\n\t\t\toptions.shutdownTimeoutMs ?? DEFAULT_SHUTDOWN_TIMEOUT_MS;\n\t\tthis.fetchFn = options.fetchFn ?? fetch;\n\t\tthis.logger = options.logger ?? console;\n\t\tthis.now = options.now ?? (() => new Date());\n\t\tthis.sleep =\n\t\t\toptions.sleep ??\n\t\t\t((delayMs) => new Promise((resolve) => setTimeout(resolve, delayMs)));\n\t\tthis.apiKey = options.apiKey;\n\t\tthis.sdkVersion = options.sdkVersion;\n\n\t\tif (this.flushIntervalMs > 0) {\n\t\t\tthis.flushTimer = setInterval(() => {\n\t\t\t\tvoid this.flush();\n\t\t\t}, this.flushIntervalMs);\n\t\t}\n\t}\n\n\tenqueue(event: V2EventEnvelope): void {\n\t\tif (this.isStopped || this.isShuttingDown) {\n\t\t\tthis.logger.warn(\n\t\t\t\t\"[WaniWani] Tracking transport is stopped, dropping event %s\",\n\t\t\t\tevent.id,\n\t\t\t);\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.buffer.length >= this.maxBufferSize) {\n\t\t\tconst dropCount = this.buffer.length - this.maxBufferSize + 1;\n\t\t\tthis.buffer.splice(0, dropCount);\n\t\t\tthis.logger.warn(\n\t\t\t\t\"[WaniWani] Tracking buffer overflow, dropped %d oldest event(s)\",\n\t\t\t\tdropCount,\n\t\t\t);\n\t\t}\n\n\t\tthis.buffer.push(event);\n\n\t\tif (this.buffer.length >= this.maxBatchSize) {\n\t\t\tvoid this.flush();\n\t\t\treturn;\n\t\t}\n\n\t\tthis.scheduleMicroFlush();\n\t}\n\n\tpendingEvents(): number {\n\t\treturn this.buffer.length + this.inFlightCount;\n\t}\n\n\tasync flush(): Promise<void> {\n\t\tif (this.flushInFlight) return this.flushInFlight;\n\t\tthis.flushInFlight = this.flushLoop().finally(() => {\n\t\t\tthis.flushInFlight = undefined;\n\t\t});\n\t\treturn this.flushInFlight;\n\t}\n\n\tasync shutdown(\n\t\toptions?: TrackingShutdownOptions,\n\t): Promise<TrackingShutdownResult> {\n\t\tthis.isShuttingDown = true;\n\t\tif (this.flushTimer) {\n\t\t\tclearInterval(this.flushTimer);\n\t\t\tthis.flushTimer = undefined;\n\t\t}\n\t\tif (this.flushScheduledTimer) {\n\t\t\tclearTimeout(this.flushScheduledTimer);\n\t\t\tthis.flushScheduledTimer = undefined;\n\t\t\tthis.flushScheduled = false;\n\t\t}\n\n\t\tconst timeoutMs = options?.timeoutMs ?? this.shutdownTimeoutMs;\n\t\tconst flushPromise = this.flush();\n\n\t\tif (!Number.isFinite(timeoutMs) || timeoutMs <= 0) {\n\t\t\tawait flushPromise;\n\t\t\tthis.isStopped = true;\n\t\t\treturn { timedOut: false, pendingEvents: this.pendingEvents() };\n\t\t}\n\n\t\tconst timeoutSignal = Symbol(\"shutdown-timeout\");\n\t\tconst result = await Promise.race([\n\t\t\tflushPromise.then(() => \"flushed\" as const),\n\t\t\tthis.sleep(timeoutMs).then(() => timeoutSignal),\n\t\t]);\n\n\t\tif (result === timeoutSignal) {\n\t\t\tthis.isStopped = true;\n\t\t\treturn { timedOut: true, pendingEvents: this.pendingEvents() };\n\t\t}\n\n\t\tthis.isStopped = true;\n\t\treturn { timedOut: false, pendingEvents: this.pendingEvents() };\n\t}\n\n\tprivate scheduleMicroFlush(): void {\n\t\tif (this.flushScheduled) return;\n\t\tthis.flushScheduled = true;\n\t\tthis.flushScheduledTimer = setTimeout(() => {\n\t\t\tthis.flushScheduledTimer = undefined;\n\t\t\tthis.flushScheduled = false;\n\t\t\tvoid this.flush();\n\t\t}, 0);\n\t}\n\n\tprivate async flushLoop(): Promise<void> {\n\t\twhile (this.buffer.length > 0 && !this.isStopped) {\n\t\t\tconst batch = this.buffer.splice(0, this.maxBatchSize);\n\t\t\tawait this.sendBatchWithRetry(batch);\n\t\t}\n\t}\n\n\tprivate async sendBatchWithRetry(batch: V2EventEnvelope[]): Promise<void> {\n\t\tlet attempt = 0;\n\t\tlet pendingBatch = batch;\n\n\t\twhile (pendingBatch.length > 0 && !this.isStopped) {\n\t\t\tthis.inFlightCount = pendingBatch.length;\n\t\t\tconst result = await this.sendBatchOnce(pendingBatch);\n\t\t\tthis.inFlightCount = 0;\n\n\t\t\tswitch (result.kind) {\n\t\t\t\tcase \"success\":\n\t\t\t\t\treturn;\n\t\t\t\tcase \"auth\":\n\t\t\t\t\tthis.stopTransportForAuthFailure(result.status, pendingBatch.length);\n\t\t\t\t\treturn;\n\t\t\t\tcase \"permanent\":\n\t\t\t\t\tthis.logger.error(\n\t\t\t\t\t\t\"[WaniWani] Dropping %d event(s) after permanent failure: %s\",\n\t\t\t\t\t\tpendingBatch.length,\n\t\t\t\t\t\tresult.reason,\n\t\t\t\t\t);\n\t\t\t\t\treturn;\n\t\t\t\tcase \"retryable\":\n\t\t\t\t\tif (attempt >= this.maxRetries) {\n\t\t\t\t\t\tthis.logger.error(\n\t\t\t\t\t\t\t\"[WaniWani] Dropping %d event(s) after retry exhaustion: %s\",\n\t\t\t\t\t\t\tpendingBatch.length,\n\t\t\t\t\t\t\tresult.reason,\n\t\t\t\t\t\t);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tawait this.sleep(this.backoffDelayMs(attempt));\n\t\t\t\t\tattempt += 1;\n\t\t\t\t\tcontinue;\n\t\t\t\tcase \"partial\":\n\t\t\t\t\tif (result.permanent.length > 0) {\n\t\t\t\t\t\tthis.logger.error(\n\t\t\t\t\t\t\t\"[WaniWani] Dropping %d event(s) rejected as permanent\",\n\t\t\t\t\t\t\tresult.permanent.length,\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tif (result.retryable.length === 0) return;\n\t\t\t\t\tif (attempt >= this.maxRetries) {\n\t\t\t\t\t\tthis.logger.error(\n\t\t\t\t\t\t\t\"[WaniWani] Dropping %d retryable event(s) after retry exhaustion\",\n\t\t\t\t\t\t\tresult.retryable.length,\n\t\t\t\t\t\t);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tpendingBatch = result.retryable;\n\t\t\t\t\tawait this.sleep(this.backoffDelayMs(attempt));\n\t\t\t\t\tattempt += 1;\n\t\t\t\t\tcontinue;\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate async sendBatchOnce(\n\t\tevents: V2EventEnvelope[],\n\t): Promise<SendBatchResult> {\n\t\tlet response: Response;\n\n\t\ttry {\n\t\t\tresponse = await this.fetchFn(this.endpointUrl, {\n\t\t\t\tmethod: \"POST\",\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": \"application/json\",\n\t\t\t\t\tAuthorization: `Bearer ${this.apiKey}`,\n\t\t\t\t\t\"X-WaniWani-SDK\": SDK_NAME,\n\t\t\t\t},\n\t\t\t\tbody: JSON.stringify(this.makeBatchRequest(events)),\n\t\t\t});\n\t\t} catch (error) {\n\t\t\treturn {\n\t\t\t\tkind: \"retryable\",\n\t\t\t\treason: getErrorMessage(error),\n\t\t\t};\n\t\t}\n\n\t\tif (AUTH_FAILURE_STATUS.has(response.status)) {\n\t\t\treturn { kind: \"auth\", status: response.status };\n\t\t}\n\n\t\tif (RETRYABLE_STATUS.has(response.status)) {\n\t\t\treturn {\n\t\t\t\tkind: \"retryable\",\n\t\t\t\treason: `HTTP ${response.status}`,\n\t\t\t};\n\t\t}\n\n\t\tif (!response.ok) {\n\t\t\treturn {\n\t\t\t\tkind: \"permanent\",\n\t\t\t\treason: `HTTP ${response.status}`,\n\t\t\t};\n\t\t}\n\n\t\tconst data = await parseJsonResponse<V2BatchResponse>(response);\n\t\tif (!data?.rejected || data.rejected.length === 0) {\n\t\t\treturn { kind: \"success\" };\n\t\t}\n\n\t\tconst partial = this.classifyRejectedEvents(events, data.rejected);\n\t\tif (partial.retryable.length === 0 && partial.permanent.length === 0) {\n\t\t\treturn { kind: \"success\" };\n\t\t}\n\n\t\treturn {\n\t\t\tkind: \"partial\",\n\t\t\tretryable: partial.retryable,\n\t\t\tpermanent: partial.permanent,\n\t\t};\n\t}\n\n\tprivate makeBatchRequest(events: V2EventEnvelope[]): V2BatchRequest {\n\t\treturn {\n\t\t\tsentAt: this.now().toISOString(),\n\t\t\tsource: {\n\t\t\t\tsdk: SDK_NAME,\n\t\t\t\tversion: this.sdkVersion ?? \"0.0.0\",\n\t\t\t},\n\t\t\tevents,\n\t\t};\n\t}\n\n\tprivate classifyRejectedEvents(\n\t\tevents: V2EventEnvelope[],\n\t\trejected: V2BatchRejectedEvent[],\n\t): {\n\t\tretryable: V2EventEnvelope[];\n\t\tpermanent: V2EventEnvelope[];\n\t} {\n\t\tconst byId = new Map(events.map((event) => [event.id, event]));\n\t\tconst retryable: V2EventEnvelope[] = [];\n\t\tconst permanent: V2EventEnvelope[] = [];\n\n\t\tfor (const rejectedEvent of rejected) {\n\t\t\tconst event = byId.get(rejectedEvent.eventId);\n\t\t\tif (!event) continue;\n\t\t\tif (isRetryableRejectedEvent(rejectedEvent)) {\n\t\t\t\tretryable.push(event);\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tpermanent.push(event);\n\t\t}\n\n\t\treturn { retryable, permanent };\n\t}\n\n\tprivate backoffDelayMs(attempt: number): number {\n\t\tconst rawDelay = this.retryBaseDelayMs * 2 ** attempt;\n\t\treturn Math.min(rawDelay, this.retryMaxDelayMs);\n\t}\n\n\tprivate stopTransportForAuthFailure(\n\t\tstatus: number,\n\t\trejectedCount: number,\n\t): void {\n\t\tthis.isStopped = true;\n\t\tconst buffered = this.buffer.length;\n\t\tthis.buffer.splice(0, buffered);\n\t\tthis.logger.error(\n\t\t\t\"[WaniWani] Auth failure (HTTP %d). Stopping tracking transport and dropping %d queued event(s)\",\n\t\t\tstatus,\n\t\t\trejectedCount + buffered,\n\t\t);\n\t}\n}\n\nfunction isRetryableRejectedEvent(\n\trejectedEvent: V2BatchRejectedEvent,\n): boolean {\n\tif (rejectedEvent.retryable === true) return true;\n\tconst code = rejectedEvent.code.toLowerCase();\n\treturn (\n\t\tcode.includes(\"timeout\") ||\n\t\tcode.includes(\"temporary\") ||\n\t\tcode.includes(\"unavailable\") ||\n\t\tcode.includes(\"rate_limit\") ||\n\t\tcode.includes(\"transient\") ||\n\t\tcode.includes(\"server\")\n\t);\n}\n\nasync function parseJsonResponse<T>(\n\tresponse: Response,\n): Promise<T | undefined> {\n\tconst body = await response.text();\n\tif (!body) return undefined;\n\ttry {\n\t\treturn JSON.parse(body) as T;\n\t} catch {\n\t\treturn undefined;\n\t}\n}\n\nfunction joinUrl(baseUrl: string, endpointPath: string): string {\n\tconst normalizedBase = baseUrl.endsWith(\"/\") ? baseUrl : `${baseUrl}/`;\n\tconst normalizedPath = endpointPath.startsWith(\"/\")\n\t\t? endpointPath.slice(1)\n\t\t: endpointPath;\n\treturn `${normalizedBase}${normalizedPath}`;\n}\n\nfunction getErrorMessage(error: unknown): string {\n\tif (error instanceof Error) return error.message;\n\treturn String(error);\n}\n","// Tracking Module\n\nimport type { InternalConfig } from \"../types.js\";\nimport type {\n\tTrackInput,\n\tTrackingClient,\n\tTrackingShutdownOptions,\n} from \"./@types.js\";\nimport { mapTrackEventToV2 } from \"./mapper.js\";\nimport { createV2BatchTransport } from \"./transport.js\";\n\n// Re-export types\nexport type {\n\tEventType,\n\tLegacyTrackEvent,\n\tLinkClickedProperties,\n\tPurchaseCompletedProperties,\n\tQuoteSucceededProperties,\n\tToolCalledProperties,\n\tTrackEvent,\n\tTrackInput,\n\tTrackingClient,\n\tTrackingConfig,\n\tTrackingShutdownOptions,\n\tTrackingShutdownResult,\n} from \"./@types.js\";\nexport { createEventId, mapTrackEventToV2 } from \"./mapper.js\";\nexport type {\n\tV2BatchRejectedEvent,\n\tV2BatchRequest,\n\tV2BatchResponse,\n\tV2CorrelationIds,\n\tV2EnvelopeType,\n\tV2EventEnvelope,\n} from \"./v2-types.js\";\n\nexport function createTrackingClient(config: InternalConfig): TrackingClient {\n\tconst { baseUrl, apiKey, tracking } = config;\n\n\tfunction requireApiKey(): string {\n\t\tif (!apiKey) {\n\t\t\tthrow new Error(\"WANIWANI_API_KEY is not set\");\n\t\t}\n\t\treturn apiKey;\n\t}\n\n\tconst transport = apiKey\n\t\t? createV2BatchTransport({\n\t\t\t\tbaseUrl,\n\t\t\t\tapiKey,\n\t\t\t\tendpointPath: tracking.endpointPath,\n\t\t\t\tflushIntervalMs: tracking.flushIntervalMs,\n\t\t\t\tmaxBatchSize: tracking.maxBatchSize,\n\t\t\t\tmaxBufferSize: tracking.maxBufferSize,\n\t\t\t\tmaxRetries: tracking.maxRetries,\n\t\t\t\tretryBaseDelayMs: tracking.retryBaseDelayMs,\n\t\t\t\tretryMaxDelayMs: tracking.retryMaxDelayMs,\n\t\t\t\tshutdownTimeoutMs: tracking.shutdownTimeoutMs,\n\t\t\t})\n\t\t: undefined;\n\n\tconst client: TrackingClient = {\n\t\tasync track(event: TrackInput): Promise<{ eventId: string }> {\n\t\t\trequireApiKey();\n\t\t\tconst mappedEvent = mapTrackEventToV2(event);\n\t\t\ttransport?.enqueue(mappedEvent);\n\t\t\treturn { eventId: mappedEvent.id };\n\t\t},\n\t\tasync flush(): Promise<void> {\n\t\t\trequireApiKey();\n\t\t\tawait transport?.flush();\n\t\t},\n\t\tasync shutdown(options?: TrackingShutdownOptions) {\n\t\t\trequireApiKey();\n\t\t\treturn (\n\t\t\t\t(await transport?.shutdown({\n\t\t\t\t\ttimeoutMs: options?.timeoutMs ?? tracking.shutdownTimeoutMs,\n\t\t\t\t})) ?? { timedOut: false, pendingEvents: 0 }\n\t\t\t);\n\t\t},\n\t};\n\n\tif (transport) {\n\t\tattachShutdownHooks(client, tracking.shutdownTimeoutMs);\n\t}\n\treturn client;\n}\n\nfunction attachShutdownHooks(\n\tclient: TrackingClient,\n\tdefaultTimeoutMs: number,\n): void {\n\tif (\n\t\ttypeof process === \"undefined\" ||\n\t\ttypeof process.once !== \"function\" ||\n\t\ttypeof process.on !== \"function\"\n\t) {\n\t\treturn;\n\t}\n\n\tconst shutdown = () => {\n\t\tvoid client.shutdown({ timeoutMs: defaultTimeoutMs });\n\t};\n\n\tprocess.once(\"beforeExit\", shutdown);\n\tprocess.once(\"SIGINT\", shutdown);\n\tprocess.once(\"SIGTERM\", shutdown);\n}\n","// WaniWani SDK - Main Entry\n\nimport { createKbClient } from \"./kb/client.js\";\nimport { createTrackingClient } from \"./tracking/index.js\";\nimport type { WaniWaniClient, WaniWaniConfig } from \"./types.js\";\n\n/**\n * Create a WaniWani SDK client\n *\n * @param config - Configuration options\n * @returns A fully typed WaniWani client\n *\n * @example\n * ```typescript\n * import { waniwani } from \"@waniwani/sdk\";\n * import { toNextJsHandler } from \"@waniwani/sdk/next-js\";\n *\n * const wani = waniwani({ apiKey: \"...\" });\n *\n * // Next.js route handler\n * export const { GET, POST } = toNextJsHandler(wani, {\n * chat: { systemPrompt: \"You are a helpful assistant.\" },\n * });\n * ```\n */\nexport function waniwani(config?: WaniWaniConfig): WaniWaniClient {\n\tconst baseUrl = config?.baseUrl ?? \"https://app.waniwani.ai\";\n\tconst apiKey = config?.apiKey ?? process.env.WANIWANI_API_KEY;\n\tconst trackingConfig = {\n\t\tendpointPath: config?.tracking?.endpointPath ?? \"/api/mcp/events/v2/batch\",\n\t\tflushIntervalMs: config?.tracking?.flushIntervalMs ?? 1_000,\n\t\tmaxBatchSize: config?.tracking?.maxBatchSize ?? 20,\n\t\tmaxBufferSize: config?.tracking?.maxBufferSize ?? 1_000,\n\t\tmaxRetries: config?.tracking?.maxRetries ?? 3,\n\t\tretryBaseDelayMs: config?.tracking?.retryBaseDelayMs ?? 200,\n\t\tretryMaxDelayMs: config?.tracking?.retryMaxDelayMs ?? 2_000,\n\t\tshutdownTimeoutMs: config?.tracking?.shutdownTimeoutMs ?? 2_000,\n\t};\n\n\tconst internalConfig = { baseUrl, apiKey, tracking: trackingConfig };\n\n\t// Compose client from modules\n\tconst trackingClient = createTrackingClient(internalConfig);\n\tconst kbClient = createKbClient(internalConfig);\n\n\treturn {\n\t\t...trackingClient,\n\t\tkb: kbClient,\n\t\t_config: internalConfig,\n\t};\n}\n"],"mappings":"AAEO,IAAMA,EAAN,cAA4B,KAAM,CACxC,YACCC,EACOC,EACN,CACD,MAAMD,CAAO,EAFN,YAAAC,EAGP,KAAK,KAAO,eACb,CACD,ECGA,IAAMC,EAAW,gBAEV,SAASC,EAAeC,EAAkC,CAChE,GAAM,CAAE,QAAAC,EAAS,OAAAC,CAAO,EAAIF,EAE5B,SAASG,GAAwB,CAChC,GAAI,CAACD,EACJ,MAAM,IAAI,MAAM,6BAA6B,EAE9C,OAAOA,CACR,CAEA,eAAeE,EACdC,EACAC,EACAC,EACa,CACb,IAAMC,EAAML,EAAc,EACpBM,EAAM,GAAGR,EAAQ,QAAQ,MAAO,EAAE,CAAC,GAAGK,CAAI,GAE1CI,EAAkC,CACvC,cAAe,UAAUF,CAAG,GAC5B,iBAAkBV,CACnB,EAEMa,EAAoB,CAAE,OAAAN,EAAQ,QAAAK,CAAQ,EAExCH,IAAS,SACZG,EAAQ,cAAc,EAAI,mBAC1BC,EAAK,KAAO,KAAK,UAAUJ,CAAI,GAGhC,IAAMK,EAAW,MAAM,MAAMH,EAAKE,CAAI,EAEtC,GAAI,CAACC,EAAS,GAAI,CACjB,IAAMC,EAAO,MAAMD,EAAS,KAAK,EAAE,MAAM,IAAM,EAAE,EACjD,MAAM,IAAIE,EACTD,GAAQ,sBAAsBD,EAAS,MAAM,GAC7CA,EAAS,MACV,CACD,CAGA,OADc,MAAMA,EAAS,KAAK,GACtB,IACb,CAEA,MAAO,CACN,MAAM,OAAOG,EAAgD,CAC5D,OAAOX,EAAwB,OAAQ,qBAAsB,CAC5D,MAAAW,CACD,CAAC,CACF,EAEA,MAAM,OACLC,EACAC,EAC0B,CAC1B,OAAOb,EAAwB,OAAQ,qBAAsB,CAC5D,MAAAY,EACA,GAAGC,CACJ,CAAC,CACF,EAEA,MAAM,SAA+B,CACpC,OAAOb,EAAoB,MAAO,qBAAqB,CACxD,CACD,CACD,CC7EA,IAAMc,EAAiB,gBAQhB,SAASC,EACfC,EACAC,EAAgC,CAAC,EACf,CAClB,IAAMC,EAAMD,EAAQ,MAAQ,IAAM,IAAI,MAChCE,EAAaF,EAAQ,YAAcG,EACnCC,EAAYC,EAAiBN,CAAK,EAClCO,EAAOC,EAASR,EAAM,IAAI,EAC1BS,EAAWD,EAASR,EAAM,QAAQ,EAClCU,EAAcC,EAAsBX,EAAOO,CAAI,EAC/CK,EAAUC,EAAmBb,EAAM,OAAO,GAAKG,EAAW,EAC1DW,EAAYC,EAAmBf,EAAM,UAAWE,CAAG,EACnDc,EACLH,EAAmBb,EAAM,MAAM,GAAKC,EAAQ,QAAUH,EACjDmB,EAAYC,EAAmBlB,CAAK,EAAI,CAAE,GAAGA,CAAM,EAAI,OAEvDmB,EAA0C,CAC/C,GAAGV,CACJ,EACA,OAAI,OAAO,KAAKF,CAAI,EAAE,OAAS,IAAGY,EAAe,KAAOZ,GACpDU,IAAWE,EAAe,UAAYF,GAEnC,CACN,GAAIL,EACJ,KAAM,YACN,KAAMP,EACN,OAAAW,EACA,UAAAF,EACA,YAAAJ,EACA,WAAYU,EAAcpB,EAAOK,CAAS,EAC1C,SAAUc,EACV,UAAAF,CACD,CACD,CAEO,SAASb,GAAwB,CACvC,OACC,OAAO,OAAW,KAClB,OAAO,OAAO,YAAe,WAEtB,OAAO,OAAO,WAAW,CAAC,GAG3B,OAAO,KAAK,OAAO,EAAE,SAAS,EAAE,EAAE,MAAM,EAAG,EAAE,CAAC,IAAI,KAAK,IAAI,EAAE,SAAS,EAAE,CAAC,EACjF,CAEA,SAASgB,EACRpB,EACAK,EAC0B,CAC1B,GAAI,CAACa,EAAmBlB,CAAK,EAC5B,OAAOQ,EAASR,EAAM,UAAU,EAGjC,IAAMqB,EAAmBC,EAAoBtB,EAAOK,CAAS,EACvDkB,EAAqBf,EAASR,EAAM,UAAU,EACpD,MAAO,CACN,GAAGqB,EACH,GAAGE,CACJ,CACD,CAEA,SAASD,EACRtB,EACAK,EAC0B,CAC1B,OAAQA,EAAW,CAClB,IAAK,cAAe,CACnB,IAAMmB,EAAsC,CAAC,EAC7C,OAAIX,EAAmBb,EAAM,QAAQ,IAAGwB,EAAW,KAAOxB,EAAM,UAC5Da,EAAmBb,EAAM,QAAQ,IAAGwB,EAAW,KAAOxB,EAAM,UACzDwB,CACR,CACA,IAAK,kBAAmB,CACvB,IAAMA,EAAsC,CAAC,EAC7C,OAAI,OAAOxB,EAAM,aAAgB,WAChCwB,EAAW,OAASxB,EAAM,aAEvBa,EAAmBb,EAAM,aAAa,IACzCwB,EAAW,SAAWxB,EAAM,eAEtBwB,CACR,CACA,IAAK,eAAgB,CACpB,IAAMA,EAAsC,CAAC,EAC7C,OAAIX,EAAmBb,EAAM,OAAO,IAAGwB,EAAW,IAAMxB,EAAM,SACvDwB,CACR,CACA,IAAK,qBAAsB,CAC1B,IAAMA,EAAsC,CAAC,EAC7C,OAAI,OAAOxB,EAAM,gBAAmB,WACnCwB,EAAW,OAASxB,EAAM,gBAEvBa,EAAmBb,EAAM,gBAAgB,IAC5CwB,EAAW,SAAWxB,EAAM,kBAEtBwB,CACR,CACA,QACC,MAAO,CAAC,CACV,CACD,CAEA,SAASlB,EAAiBN,EAA8B,CACvD,OAAIkB,EAAmBlB,CAAK,EAAUA,EAAM,UACrCA,EAAM,KACd,CAEA,SAASW,EACRX,EACAO,EACmB,CACnB,IAAMkB,EACLZ,EAAmBb,EAAM,SAAS,GAClC0B,EAAgBnB,EAAM,CAAC,mBAAoB,YAAa,eAAe,CAAC,EAEnEoB,EACLd,EAAmBb,EAAM,SAAS,GAClC0B,EAAgBnB,EAAM,CACrB,mBACA,YACA,iBACA,qBACD,CAAC,EAEIqB,EACLf,EAAmBb,EAAM,OAAO,GAChC0B,EAAgBnB,EAAM,CACrB,iBACA,UACA,cACA,mBACA,WACD,CAAC,EAEIsB,EACLhB,EAAmBb,EAAM,cAAc,GACvC0B,EAAgBnB,EAAM,CACrB,gBACA,iBACA,SACA,SACD,CAAC,EAEIuB,EACLjB,EAAmBb,EAAM,aAAa,GACtC0B,EAAgBnB,EAAM,CAAC,gBAAiB,kBAAkB,CAAC,GAC3DkB,EAEKf,EAAgC,CAAC,EACvC,OAAIiB,IAAWjB,EAAY,UAAYiB,GACnCC,IAASlB,EAAY,QAAUkB,GAC/BH,IAAWf,EAAY,UAAYe,GACnCK,IAAepB,EAAY,cAAgBoB,GAC3CD,IAAgBnB,EAAY,eAAiBmB,GAC1CnB,CACR,CAEA,SAASK,EACRf,EACAE,EACS,CACT,GAAIF,aAAiB,KAAM,OAAOA,EAAM,YAAY,EACpD,GAAI,OAAOA,GAAU,SAAU,CAC9B,IAAM+B,EAAO,IAAI,KAAK/B,CAAK,EAC3B,GAAI,CAAC,OAAO,MAAM+B,EAAK,QAAQ,CAAC,EAAG,OAAOA,EAAK,YAAY,CAC5D,CACA,OAAO7B,EAAI,EAAE,YAAY,CAC1B,CAEA,SAASwB,EACRM,EACAC,EACqB,CACrB,QAAWC,KAAOD,EAAM,CACvB,IAAME,EAAQH,EAAOE,CAAG,EACxB,GAAI,OAAOC,GAAU,UAAYA,EAAM,KAAK,EAAE,OAAS,EACtD,OAAOA,CAET,CAED,CAEA,SAAS3B,EAAS2B,EAAyC,CAC1D,MAAI,CAACA,GAAS,OAAOA,GAAU,UAAY,MAAM,QAAQA,CAAK,EACtD,CAAC,EAEFA,CACR,CAEA,SAAStB,EAAmBsB,EAAoC,CAC/D,GAAI,OAAOA,GAAU,UACjBA,EAAM,KAAK,EAAE,SAAW,EAC5B,OAAOA,CACR,CAEA,SAASjB,EAAmBlB,EAA8C,CACzE,MAAO,cAAeA,CACvB,CCtMA,IAAMoC,EAAwB,2BAQ9B,IAAMC,EAAW,gBAEXC,EAAsB,IAAI,IAAI,CAAC,IAAK,GAAG,CAAC,EACxCC,EAAmB,IAAI,IAAI,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,GAAG,CAAC,EA6C7D,SAASC,EACfC,EACmB,CACnB,OAAO,IAAIC,EAAoBD,CAAO,CACvC,CAEA,IAAMC,EAAN,KAAsD,CACpC,YACA,gBACA,aACA,cACA,WACA,iBACA,gBACA,kBACA,WACA,QACA,OACA,IACA,MACA,OAEA,OAA4B,CAAC,EACtC,WACA,eAAiB,GACjB,oBACA,cACA,cAAgB,EAChB,UAAY,GACZ,eAAiB,GAEzB,YAAYD,EAA6B,CACxC,KAAK,YAAcE,EAClBF,EAAQ,QACRA,EAAQ,cAAgBG,CACzB,EACA,KAAK,gBAAkBH,EAAQ,iBAAmB,IAClD,KAAK,aAAeA,EAAQ,cAAgB,GAC5C,KAAK,cAAgBA,EAAQ,eAAiB,IAC9C,KAAK,WAAaA,EAAQ,YAAc,EACxC,KAAK,iBACJA,EAAQ,kBAAoB,IAC7B,KAAK,gBACJA,EAAQ,iBAAmB,IAC5B,KAAK,kBACJA,EAAQ,mBAAqB,IAC9B,KAAK,QAAUA,EAAQ,SAAW,MAClC,KAAK,OAASA,EAAQ,QAAU,QAChC,KAAK,IAAMA,EAAQ,MAAQ,IAAM,IAAI,MACrC,KAAK,MACJA,EAAQ,QACNI,GAAY,IAAI,QAASC,GAAY,WAAWA,EAASD,CAAO,CAAC,GACpE,KAAK,OAASJ,EAAQ,OACtB,KAAK,WAAaA,EAAQ,WAEtB,KAAK,gBAAkB,IAC1B,KAAK,WAAa,YAAY,IAAM,CAC9B,KAAK,MAAM,CACjB,EAAG,KAAK,eAAe,EAEzB,CAEA,QAAQM,EAA8B,CACrC,GAAI,KAAK,WAAa,KAAK,eAAgB,CAC1C,KAAK,OAAO,KACX,8DACAA,EAAM,EACP,EACA,MACD,CAEA,GAAI,KAAK,OAAO,QAAU,KAAK,cAAe,CAC7C,IAAMC,EAAY,KAAK,OAAO,OAAS,KAAK,cAAgB,EAC5D,KAAK,OAAO,OAAO,EAAGA,CAAS,EAC/B,KAAK,OAAO,KACX,kEACAA,CACD,CACD,CAIA,GAFA,KAAK,OAAO,KAAKD,CAAK,EAElB,KAAK,OAAO,QAAU,KAAK,aAAc,CACvC,KAAK,MAAM,EAChB,MACD,CAEA,KAAK,mBAAmB,CACzB,CAEA,eAAwB,CACvB,OAAO,KAAK,OAAO,OAAS,KAAK,aAClC,CAEA,MAAM,OAAuB,CAC5B,OAAI,KAAK,cAAsB,KAAK,eACpC,KAAK,cAAgB,KAAK,UAAU,EAAE,QAAQ,IAAM,CACnD,KAAK,cAAgB,MACtB,CAAC,EACM,KAAK,cACb,CAEA,MAAM,SACLN,EACkC,CAClC,KAAK,eAAiB,GAClB,KAAK,aACR,cAAc,KAAK,UAAU,EAC7B,KAAK,WAAa,QAEf,KAAK,sBACR,aAAa,KAAK,mBAAmB,EACrC,KAAK,oBAAsB,OAC3B,KAAK,eAAiB,IAGvB,IAAMQ,EAAYR,GAAS,WAAa,KAAK,kBACvCS,EAAe,KAAK,MAAM,EAEhC,GAAI,CAAC,OAAO,SAASD,CAAS,GAAKA,GAAa,EAC/C,aAAMC,EACN,KAAK,UAAY,GACV,CAAE,SAAU,GAAO,cAAe,KAAK,cAAc,CAAE,EAG/D,IAAMC,EAAgB,OAAO,kBAAkB,EAM/C,OALe,MAAM,QAAQ,KAAK,CACjCD,EAAa,KAAK,IAAM,SAAkB,EAC1C,KAAK,MAAMD,CAAS,EAAE,KAAK,IAAME,CAAa,CAC/C,CAAC,IAEcA,GACd,KAAK,UAAY,GACV,CAAE,SAAU,GAAM,cAAe,KAAK,cAAc,CAAE,IAG9D,KAAK,UAAY,GACV,CAAE,SAAU,GAAO,cAAe,KAAK,cAAc,CAAE,EAC/D,CAEQ,oBAA2B,CAC9B,KAAK,iBACT,KAAK,eAAiB,GACtB,KAAK,oBAAsB,WAAW,IAAM,CAC3C,KAAK,oBAAsB,OAC3B,KAAK,eAAiB,GACjB,KAAK,MAAM,CACjB,EAAG,CAAC,EACL,CAEA,MAAc,WAA2B,CACxC,KAAO,KAAK,OAAO,OAAS,GAAK,CAAC,KAAK,WAAW,CACjD,IAAMC,EAAQ,KAAK,OAAO,OAAO,EAAG,KAAK,YAAY,EACrD,MAAM,KAAK,mBAAmBA,CAAK,CACpC,CACD,CAEA,MAAc,mBAAmBA,EAAyC,CACzE,IAAIC,EAAU,EACVC,EAAeF,EAEnB,KAAOE,EAAa,OAAS,GAAK,CAAC,KAAK,WAAW,CAClD,KAAK,cAAgBA,EAAa,OAClC,IAAMC,EAAS,MAAM,KAAK,cAAcD,CAAY,EAGpD,OAFA,KAAK,cAAgB,EAEbC,EAAO,KAAM,CACpB,IAAK,UACJ,OACD,IAAK,OACJ,KAAK,4BAA4BA,EAAO,OAAQD,EAAa,MAAM,EACnE,OACD,IAAK,YACJ,KAAK,OAAO,MACX,8DACAA,EAAa,OACbC,EAAO,MACR,EACA,OACD,IAAK,YACJ,GAAIF,GAAW,KAAK,WAAY,CAC/B,KAAK,OAAO,MACX,6DACAC,EAAa,OACbC,EAAO,MACR,EACA,MACD,CACA,MAAM,KAAK,MAAM,KAAK,eAAeF,CAAO,CAAC,EAC7CA,GAAW,EACX,SACD,IAAK,UAOJ,GANIE,EAAO,UAAU,OAAS,GAC7B,KAAK,OAAO,MACX,wDACAA,EAAO,UAAU,MAClB,EAEGA,EAAO,UAAU,SAAW,EAAG,OACnC,GAAIF,GAAW,KAAK,WAAY,CAC/B,KAAK,OAAO,MACX,mEACAE,EAAO,UAAU,MAClB,EACA,MACD,CACAD,EAAeC,EAAO,UACtB,MAAM,KAAK,MAAM,KAAK,eAAeF,CAAO,CAAC,EAC7CA,GAAW,EACX,QACF,CACD,CACD,CAEA,MAAc,cACbG,EAC2B,CAC3B,IAAIC,EAEJ,GAAI,CACHA,EAAW,MAAM,KAAK,QAAQ,KAAK,YAAa,CAC/C,OAAQ,OACR,QAAS,CACR,eAAgB,mBAChB,cAAe,UAAU,KAAK,MAAM,GACpC,iBAAkBpB,CACnB,EACA,KAAM,KAAK,UAAU,KAAK,iBAAiBmB,CAAM,CAAC,CACnD,CAAC,CACF,OAASE,EAAO,CACf,MAAO,CACN,KAAM,YACN,OAAQC,EAAgBD,CAAK,CAC9B,CACD,CAEA,GAAIpB,EAAoB,IAAImB,EAAS,MAAM,EAC1C,MAAO,CAAE,KAAM,OAAQ,OAAQA,EAAS,MAAO,EAGhD,GAAIlB,EAAiB,IAAIkB,EAAS,MAAM,EACvC,MAAO,CACN,KAAM,YACN,OAAQ,QAAQA,EAAS,MAAM,EAChC,EAGD,GAAI,CAACA,EAAS,GACb,MAAO,CACN,KAAM,YACN,OAAQ,QAAQA,EAAS,MAAM,EAChC,EAGD,IAAMG,EAAO,MAAMC,EAAmCJ,CAAQ,EAC9D,GAAI,CAACG,GAAM,UAAYA,EAAK,SAAS,SAAW,EAC/C,MAAO,CAAE,KAAM,SAAU,EAG1B,IAAME,EAAU,KAAK,uBAAuBN,EAAQI,EAAK,QAAQ,EACjE,OAAIE,EAAQ,UAAU,SAAW,GAAKA,EAAQ,UAAU,SAAW,EAC3D,CAAE,KAAM,SAAU,EAGnB,CACN,KAAM,UACN,UAAWA,EAAQ,UACnB,UAAWA,EAAQ,SACpB,CACD,CAEQ,iBAAiBN,EAA2C,CACnE,MAAO,CACN,OAAQ,KAAK,IAAI,EAAE,YAAY,EAC/B,OAAQ,CACP,IAAKnB,EACL,QAAS,KAAK,YAAc,OAC7B,EACA,OAAAmB,CACD,CACD,CAEQ,uBACPA,EACAO,EAIC,CACD,IAAMC,EAAO,IAAI,IAAIR,EAAO,IAAKT,GAAU,CAACA,EAAM,GAAIA,CAAK,CAAC,CAAC,EACvDkB,EAA+B,CAAC,EAChCC,EAA+B,CAAC,EAEtC,QAAWC,KAAiBJ,EAAU,CACrC,IAAMhB,EAAQiB,EAAK,IAAIG,EAAc,OAAO,EAC5C,GAAKpB,EACL,IAAIqB,EAAyBD,CAAa,EAAG,CAC5CF,EAAU,KAAKlB,CAAK,EACpB,QACD,CACAmB,EAAU,KAAKnB,CAAK,EACrB,CAEA,MAAO,CAAE,UAAAkB,EAAW,UAAAC,CAAU,CAC/B,CAEQ,eAAeb,EAAyB,CAC/C,IAAMgB,EAAW,KAAK,iBAAmB,GAAKhB,EAC9C,OAAO,KAAK,IAAIgB,EAAU,KAAK,eAAe,CAC/C,CAEQ,4BACPC,EACAC,EACO,CACP,KAAK,UAAY,GACjB,IAAMC,EAAW,KAAK,OAAO,OAC7B,KAAK,OAAO,OAAO,EAAGA,CAAQ,EAC9B,KAAK,OAAO,MACX,iGACAF,EACAC,EAAgBC,CACjB,CACD,CACD,EAEA,SAASJ,EACRD,EACU,CACV,GAAIA,EAAc,YAAc,GAAM,MAAO,GAC7C,IAAMM,EAAON,EAAc,KAAK,YAAY,EAC5C,OACCM,EAAK,SAAS,SAAS,GACvBA,EAAK,SAAS,WAAW,GACzBA,EAAK,SAAS,aAAa,GAC3BA,EAAK,SAAS,YAAY,GAC1BA,EAAK,SAAS,WAAW,GACzBA,EAAK,SAAS,QAAQ,CAExB,CAEA,eAAeZ,EACdJ,EACyB,CACzB,IAAMiB,EAAO,MAAMjB,EAAS,KAAK,EACjC,GAAKiB,EACL,GAAI,CACH,OAAO,KAAK,MAAMA,CAAI,CACvB,MAAQ,CACP,MACD,CACD,CAEA,SAAS/B,EAAQgC,EAAiBC,EAA8B,CAC/D,IAAMC,EAAiBF,EAAQ,SAAS,GAAG,EAAIA,EAAU,GAAGA,CAAO,IAC7DG,EAAiBF,EAAa,WAAW,GAAG,EAC/CA,EAAa,MAAM,CAAC,EACpBA,EACH,MAAO,GAAGC,CAAc,GAAGC,CAAc,EAC1C,CAEA,SAASnB,EAAgBD,EAAwB,CAChD,OAAIA,aAAiB,MAAcA,EAAM,QAClC,OAAOA,CAAK,CACpB,CC3YO,SAASqB,EAAqBC,EAAwC,CAC5E,GAAM,CAAE,QAAAC,EAAS,OAAAC,EAAQ,SAAAC,CAAS,EAAIH,EAEtC,SAASI,GAAwB,CAChC,GAAI,CAACF,EACJ,MAAM,IAAI,MAAM,6BAA6B,EAE9C,OAAOA,CACR,CAEA,IAAMG,EAAYH,EACfI,EAAuB,CACvB,QAAAL,EACA,OAAAC,EACA,aAAcC,EAAS,aACvB,gBAAiBA,EAAS,gBAC1B,aAAcA,EAAS,aACvB,cAAeA,EAAS,cACxB,WAAYA,EAAS,WACrB,iBAAkBA,EAAS,iBAC3B,gBAAiBA,EAAS,gBAC1B,kBAAmBA,EAAS,iBAC7B,CAAC,EACA,OAEGI,EAAyB,CAC9B,MAAM,MAAMC,EAAiD,CAC5DJ,EAAc,EACd,IAAMK,EAAcC,EAAkBF,CAAK,EAC3C,OAAAH,GAAW,QAAQI,CAAW,EACvB,CAAE,QAASA,EAAY,EAAG,CAClC,EACA,MAAM,OAAuB,CAC5BL,EAAc,EACd,MAAMC,GAAW,MAAM,CACxB,EACA,MAAM,SAASM,EAAmC,CACjD,OAAAP,EAAc,EAEZ,MAAMC,GAAW,SAAS,CAC1B,UAAWM,GAAS,WAAaR,EAAS,iBAC3C,CAAC,GAAM,CAAE,SAAU,GAAO,cAAe,CAAE,CAE7C,CACD,EAEA,OAAIE,GACHO,EAAoBL,EAAQJ,EAAS,iBAAiB,EAEhDI,CACR,CAEA,SAASK,EACRL,EACAM,EACO,CACP,GACC,OAAO,QAAY,KACnB,OAAO,QAAQ,MAAS,YACxB,OAAO,QAAQ,IAAO,WAEtB,OAGD,IAAMC,EAAW,IAAM,CACjBP,EAAO,SAAS,CAAE,UAAWM,CAAiB,CAAC,CACrD,EAEA,QAAQ,KAAK,aAAcC,CAAQ,EACnC,QAAQ,KAAK,SAAUA,CAAQ,EAC/B,QAAQ,KAAK,UAAWA,CAAQ,CACjC,CClFO,SAASC,EAASC,EAAyC,CACjE,IAAMC,EAAUD,GAAQ,SAAW,0BAC7BE,EAASF,GAAQ,QAAU,QAAQ,IAAI,iBACvCG,EAAiB,CACtB,aAAcH,GAAQ,UAAU,cAAgB,2BAChD,gBAAiBA,GAAQ,UAAU,iBAAmB,IACtD,aAAcA,GAAQ,UAAU,cAAgB,GAChD,cAAeA,GAAQ,UAAU,eAAiB,IAClD,WAAYA,GAAQ,UAAU,YAAc,EAC5C,iBAAkBA,GAAQ,UAAU,kBAAoB,IACxD,gBAAiBA,GAAQ,UAAU,iBAAmB,IACtD,kBAAmBA,GAAQ,UAAU,mBAAqB,GAC3D,EAEMI,EAAiB,CAAE,QAAAH,EAAS,OAAAC,EAAQ,SAAUC,CAAe,EAG7DE,EAAiBC,EAAqBF,CAAc,EACpDG,EAAWC,EAAeJ,CAAc,EAE9C,MAAO,CACN,GAAGC,EACH,GAAIE,EACJ,QAASH,CACV,CACD","names":["WaniWaniError","message","status","SDK_NAME","createKbClient","config","baseUrl","apiKey","requireApiKey","request","method","path","body","key","url","headers","init","response","text","WaniWaniError","files","query","options","DEFAULT_SOURCE","mapTrackEventToV2","input","options","now","generateId","createEventId","eventName","resolveEventName","meta","toRecord","metadata","correlation","resolveCorrelationIds","eventId","takeNonEmptyString","timestamp","normalizeTimestamp","source","rawLegacy","isLegacyTrackEvent","mappedMetadata","mapProperties","legacyProperties","mapLegacyProperties","explicitProperties","properties","requestId","pickFirstString","sessionId","traceId","externalUserId","correlationId","date","record","keys","key","value","DEFAULT_ENDPOINT_PATH","SDK_NAME","AUTH_FAILURE_STATUS","RETRYABLE_STATUS","createV2BatchTransport","options","BatchingV2Transport","joinUrl","DEFAULT_ENDPOINT_PATH","delayMs","resolve","event","dropCount","timeoutMs","flushPromise","timeoutSignal","batch","attempt","pendingBatch","result","events","response","error","getErrorMessage","data","parseJsonResponse","partial","rejected","byId","retryable","permanent","rejectedEvent","isRetryableRejectedEvent","rawDelay","status","rejectedCount","buffered","code","body","baseUrl","endpointPath","normalizedBase","normalizedPath","createTrackingClient","config","baseUrl","apiKey","tracking","requireApiKey","transport","createV2BatchTransport","client","event","mappedEvent","mapTrackEventToV2","options","attachShutdownHooks","defaultTimeoutMs","shutdown","waniwani","config","baseUrl","apiKey","trackingConfig","internalConfig","trackingClient","createTrackingClient","kbClient","createKbClient"]}
@@ -0,0 +1,3 @@
1
+ "use client";
2
+ import"./chunk-V3ZDECK5.js";var n=Object.freeze(JSON.parse(`{"displayName":"INI","name":"ini","patterns":[{"begin":"(^[\\\\t ]+)?(?=#)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ini"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.ini"}},"end":"\\\\n","name":"comment.line.number-sign.ini"}]},{"begin":"(^[\\\\t ]+)?(?=;)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ini"}},"end":"(?!\\\\G)","patterns":[{"begin":";","beginCaptures":{"0":{"name":"punctuation.definition.comment.ini"}},"end":"\\\\n","name":"comment.line.semicolon.ini"}]},{"captures":{"1":{"name":"keyword.other.definition.ini"},"2":{"name":"punctuation.separator.key-value.ini"}},"match":"\\\\b([-.0-9A-Z_a-z]+)\\\\b\\\\s*(=)"},{"captures":{"1":{"name":"punctuation.definition.entity.ini"},"3":{"name":"punctuation.definition.entity.ini"}},"match":"^(\\\\[)(.*?)(])","name":"entity.name.section.group-title.ini"},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ini"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.ini"}},"name":"string.quoted.single.ini","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.ini"}]},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ini"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.ini"}},"name":"string.quoted.double.ini"}],"scopeName":"source.ini","aliases":["properties"]}`)),i=[n];export{i as default};
3
+ //# sourceMappingURL=ini-J2OP4CNW.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../node_modules/@shikijs/langs/dist/ini.mjs"],"sourcesContent":["const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"INI\\\",\\\"name\\\":\\\"ini\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^[\\\\\\\\t ]+)?(?=#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.ini\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ini\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.number-sign.ini\\\"}]},{\\\"begin\\\":\\\"(^[\\\\\\\\t ]+)?(?=;)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.ini\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\";\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ini\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.semicolon.ini\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.definition.ini\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.ini\\\"}},\\\"match\\\":\\\"\\\\\\\\b([-.0-9A-Z_a-z]+)\\\\\\\\b\\\\\\\\s*(=)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.ini\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.entity.ini\\\"}},\\\"match\\\":\\\"^(\\\\\\\\[)(.*?)(])\\\",\\\"name\\\":\\\"entity.name.section.group-title.ini\\\"},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ini\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ini\\\"}},\\\"name\\\":\\\"string.quoted.single.ini\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.ini\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ini\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ini\\\"}},\\\"name\\\":\\\"string.quoted.double.ini\\\"}],\\\"scopeName\\\":\\\"source.ini\\\",\\\"aliases\\\":[\\\"properties\\\"]}\"))\n\nexport default [\nlang\n]\n"],"mappings":";4BAAA,IAAMA,EAAO,OAAO,OAAO,KAAK,MAAM,q7CAA+nD,CAAC,EAE/pDC,EAAQ,CACfD,CACA","names":["lang","ini_default"]}
@@ -0,0 +1,3 @@
1
+ "use client";
2
+ import{a}from"./chunk-WKR2RWJ6.js";import"./chunk-V3ZDECK5.js";export{a as default};
3
+ //# sourceMappingURL=java-MJKJ5GPP.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,3 @@
1
+ "use client";
2
+ import{a}from"./chunk-VME4UB43.js";import"./chunk-V3ZDECK5.js";export{a as default};
3
+ //# sourceMappingURL=javascript-IYAGHPR6.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,3 @@
1
+ "use client";
2
+ import{a as e}from"./chunk-HMEGK7JX.js";import"./chunk-VME4UB43.js";import"./chunk-FWHINPYE.js";import"./chunk-V3ZDECK5.js";var n=Object.freeze(JSON.parse(`{"displayName":"jinja-html","firstLineMatch":"^\\\\{% extends [\\"'][^\\"']+[\\"'] %}","foldingStartMarker":"(<(?i:(head|table|tr|div|style|script|ul|ol|form|dl))\\\\b.*?>|\\\\{%\\\\s*(block|filter|for|if|macro|raw))","foldingStopMarker":"(</(?i:(head|table|tr|div|style|script|ul|ol|form|dl))\\\\b.*?>|\\\\{%\\\\s*(end(?:block|filter|for|if|macro|raw))\\\\s*%})","name":"jinja-html","patterns":[{"include":"source.jinja"},{"include":"text.html.basic"}],"scopeName":"text.html.jinja","embeddedLangs":["html"]}`)),a=[...e,n];var t=Object.freeze(JSON.parse(`{"displayName":"Jinja","foldingStartMarker":"(\\\\{%\\\\s*(block|filter|for|if|macro|raw))","foldingStopMarker":"(\\\\{%\\\\s*(end(?:block|filter|for|if|macro|raw))\\\\s*%})","name":"jinja","patterns":[{"begin":"(\\\\{%)\\\\s*(raw)\\\\s*(%})","captures":{"1":{"name":"entity.other.jinja.delimiter.tag"},"2":{"name":"keyword.control.jinja"},"3":{"name":"entity.other.jinja.delimiter.tag"}},"end":"(\\\\{%)\\\\s*(endraw)\\\\s*(%})","name":"comment.block.jinja.raw"},{"include":"#comments"},{"begin":"\\\\{\\\\{-?","captures":[{"name":"variable.entity.other.jinja.delimiter"}],"end":"-?}}","name":"variable.meta.scope.jinja","patterns":[{"include":"#expression"}]},{"begin":"\\\\{%-?","captures":[{"name":"entity.other.jinja.delimiter.tag"}],"end":"-?%}","name":"meta.scope.jinja.tag","patterns":[{"include":"#expression"}]}],"repository":{"comments":{"begin":"\\\\{#-?","captures":[{"name":"entity.other.jinja.delimiter.comment"}],"end":"-?#}","name":"comment.block.jinja","patterns":[{"include":"#comments"}]},"escaped_char":{"match":"\\\\\\\\x[0-9A-F]{2}","name":"constant.character.escape.hex.jinja"},"escaped_unicode_char":{"captures":{"1":{"name":"constant.character.escape.unicode.16-bit-hex.jinja"},"2":{"name":"constant.character.escape.unicode.32-bit-hex.jinja"},"3":{"name":"constant.character.escape.unicode.name.jinja"}},"match":"(\\\\\\\\U\\\\h{8})|(\\\\\\\\u\\\\h{4})|(\\\\\\\\N\\\\{[ A-Za-z]+})"},"expression":{"patterns":[{"captures":{"1":{"name":"keyword.control.jinja"},"2":{"name":"variable.other.jinja.block"}},"match":"\\\\s*\\\\b(block)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\b"},{"captures":{"1":{"name":"keyword.control.jinja"},"2":{"name":"variable.other.jinja.filter"}},"match":"\\\\s*\\\\b(filter)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\b"},{"captures":{"1":{"name":"keyword.control.jinja"},"2":{"name":"variable.other.jinja.test"}},"match":"\\\\s*\\\\b(is)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\b"},{"captures":{"1":{"name":"keyword.control.jinja"}},"match":"(?<=\\\\{%-?)\\\\s*\\\\b([A-Z_a-z][0-9A-Z_a-z]*)\\\\b(?!\\\\s*[,=])"},{"match":"\\\\b(and|else|if|in|import|not|or|recursive|with(out)?\\\\s+context)\\\\b","name":"keyword.control.jinja"},{"match":"\\\\b(true|false|none)\\\\b","name":"constant.language.jinja"},{"match":"\\\\b(loop|super|self|varargs|kwargs)\\\\b","name":"variable.language.jinja"},{"match":"[A-Z_a-z][0-9A-Z_a-z]*","name":"variable.other.jinja"},{"match":"([-+]|\\\\*\\\\*?|//|[%/])","name":"keyword.operator.arithmetic.jinja"},{"captures":{"1":{"name":"punctuation.other.jinja"},"2":{"name":"variable.other.jinja.filter"}},"match":"(\\\\|)([A-Z_a-z][0-9A-Z_a-z]*)"},{"captures":{"1":{"name":"punctuation.other.jinja"},"2":{"name":"variable.other.jinja.attribute"}},"match":"(\\\\.)([A-Z_a-z][0-9A-Z_a-z]*)"},{"begin":"\\\\[","captures":[{"name":"punctuation.other.jinja"}],"end":"]","patterns":[{"include":"#expression"}]},{"begin":"\\\\(","captures":[{"name":"punctuation.other.jinja"}],"end":"\\\\)","patterns":[{"include":"#expression"}]},{"begin":"\\\\{","captures":[{"name":"punctuation.other.jinja"}],"end":"}","patterns":[{"include":"#expression"}]},{"match":"([,.:|])","name":"punctuation.other.jinja"},{"match":"(==|<=|=>|[<>]|!=)","name":"keyword.operator.comparison.jinja"},{"match":"=","name":"keyword.operator.assignment.jinja"},{"begin":"\\"","beginCaptures":[{"name":"punctuation.definition.string.begin.jinja"}],"end":"\\"","endCaptures":[{"name":"punctuation.definition.string.end.jinja"}],"name":"string.quoted.double.jinja","patterns":[{"include":"#string"}]},{"begin":"'","beginCaptures":[{"name":"punctuation.definition.string.begin.jinja"}],"end":"'","endCaptures":[{"name":"punctuation.definition.string.end.jinja"}],"name":"string.quoted.single.jinja","patterns":[{"include":"#string"}]},{"begin":"@/","beginCaptures":[{"name":"punctuation.definition.regexp.begin.jinja"}],"end":"/","endCaptures":[{"name":"punctuation.definition.regexp.end.jinja"}],"name":"string.regexp.jinja","patterns":[{"include":"#simple_escapes"}]}]},"simple_escapes":{"captures":{"1":{"name":"constant.character.escape.newline.jinja"},"2":{"name":"constant.character.escape.backlash.jinja"},"3":{"name":"constant.character.escape.double-quote.jinja"},"4":{"name":"constant.character.escape.single-quote.jinja"},"5":{"name":"constant.character.escape.bell.jinja"},"6":{"name":"constant.character.escape.backspace.jinja"},"7":{"name":"constant.character.escape.formfeed.jinja"},"8":{"name":"constant.character.escape.linefeed.jinja"},"9":{"name":"constant.character.escape.return.jinja"},"10":{"name":"constant.character.escape.tab.jinja"},"11":{"name":"constant.character.escape.vertical-tab.jinja"}},"match":"(\\\\\\\\\\\\n)|(\\\\\\\\\\\\\\\\)|(\\\\\\\\\\")|(\\\\\\\\')|(\\\\\\\\a)|(\\\\\\\\b)|(\\\\\\\\f)|(\\\\\\\\n)|(\\\\\\\\r)|(\\\\\\\\t)|(\\\\\\\\v)"},"string":{"patterns":[{"include":"#simple_escapes"},{"include":"#escaped_char"},{"include":"#escaped_unicode_char"}]}},"scopeName":"source.jinja","embeddedLangs":["jinja-html"]}`)),s=[...a,t];export{s as default};
3
+ //# sourceMappingURL=jinja-WPD26JJ6.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../node_modules/@shikijs/langs/dist/jinja-html.mjs","../node_modules/@shikijs/langs/dist/jinja.mjs"],"sourcesContent":["import html from './html.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"jinja-html\\\",\\\"firstLineMatch\\\":\\\"^\\\\\\\\{% extends [\\\\\\\"'][^\\\\\\\"']+[\\\\\\\"'] %}\\\",\\\"foldingStartMarker\\\":\\\"(<(?i:(head|table|tr|div|style|script|ul|ol|form|dl))\\\\\\\\b.*?>|\\\\\\\\{%\\\\\\\\s*(block|filter|for|if|macro|raw))\\\",\\\"foldingStopMarker\\\":\\\"(</(?i:(head|table|tr|div|style|script|ul|ol|form|dl))\\\\\\\\b.*?>|\\\\\\\\{%\\\\\\\\s*(end(?:block|filter|for|if|macro|raw))\\\\\\\\s*%})\\\",\\\"name\\\":\\\"jinja-html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.jinja\\\"},{\\\"include\\\":\\\"text.html.basic\\\"}],\\\"scopeName\\\":\\\"text.html.jinja\\\",\\\"embeddedLangs\\\":[\\\"html\\\"]}\"))\n\nexport default [\n...html,\nlang\n]\n","import jinja_html from './jinja-html.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Jinja\\\",\\\"foldingStartMarker\\\":\\\"(\\\\\\\\{%\\\\\\\\s*(block|filter|for|if|macro|raw))\\\",\\\"foldingStopMarker\\\":\\\"(\\\\\\\\{%\\\\\\\\s*(end(?:block|filter|for|if|macro|raw))\\\\\\\\s*%})\\\",\\\"name\\\":\\\"jinja\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\{%)\\\\\\\\s*(raw)\\\\\\\\s*(%})\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.jinja.delimiter.tag\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.jinja\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.other.jinja.delimiter.tag\\\"}},\\\"end\\\":\\\"(\\\\\\\\{%)\\\\\\\\s*(endraw)\\\\\\\\s*(%})\\\",\\\"name\\\":\\\"comment.block.jinja.raw\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"\\\\\\\\{\\\\\\\\{-?\\\",\\\"captures\\\":[{\\\"name\\\":\\\"variable.entity.other.jinja.delimiter\\\"}],\\\"end\\\":\\\"-?}}\\\",\\\"name\\\":\\\"variable.meta.scope.jinja\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\{%-?\\\",\\\"captures\\\":[{\\\"name\\\":\\\"entity.other.jinja.delimiter.tag\\\"}],\\\"end\\\":\\\"-?%}\\\",\\\"name\\\":\\\"meta.scope.jinja.tag\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]}],\\\"repository\\\":{\\\"comments\\\":{\\\"begin\\\":\\\"\\\\\\\\{#-?\\\",\\\"captures\\\":[{\\\"name\\\":\\\"entity.other.jinja.delimiter.comment\\\"}],\\\"end\\\":\\\"-?#}\\\",\\\"name\\\":\\\"comment.block.jinja\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"}]},\\\"escaped_char\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\x[0-9A-F]{2}\\\",\\\"name\\\":\\\"constant.character.escape.hex.jinja\\\"},\\\"escaped_unicode_char\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.escape.unicode.16-bit-hex.jinja\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.character.escape.unicode.32-bit-hex.jinja\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.escape.unicode.name.jinja\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\U\\\\\\\\h{8})|(\\\\\\\\\\\\\\\\u\\\\\\\\h{4})|(\\\\\\\\\\\\\\\\N\\\\\\\\{[ A-Za-z]+})\\\"},\\\"expression\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.jinja\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.jinja.block\\\"}},\\\"match\\\":\\\"\\\\\\\\s*\\\\\\\\b(block)\\\\\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.jinja\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.jinja.filter\\\"}},\\\"match\\\":\\\"\\\\\\\\s*\\\\\\\\b(filter)\\\\\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.jinja\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.jinja.test\\\"}},\\\"match\\\":\\\"\\\\\\\\s*\\\\\\\\b(is)\\\\\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.jinja\\\"}},\\\"match\\\":\\\"(?<=\\\\\\\\{%-?)\\\\\\\\s*\\\\\\\\b([A-Z_a-z][0-9A-Z_a-z]*)\\\\\\\\b(?!\\\\\\\\s*[,=])\\\"},{\\\"match\\\":\\\"\\\\\\\\b(and|else|if|in|import|not|or|recursive|with(out)?\\\\\\\\s+context)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.jinja\\\"},{\\\"match\\\":\\\"\\\\\\\\b(true|false|none)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.jinja\\\"},{\\\"match\\\":\\\"\\\\\\\\b(loop|super|self|varargs|kwargs)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.jinja\\\"},{\\\"match\\\":\\\"[A-Z_a-z][0-9A-Z_a-z]*\\\",\\\"name\\\":\\\"variable.other.jinja\\\"},{\\\"match\\\":\\\"([-+]|\\\\\\\\*\\\\\\\\*?|//|[%/])\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.jinja\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.other.jinja\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.jinja.filter\\\"}},\\\"match\\\":\\\"(\\\\\\\\|)([A-Z_a-z][0-9A-Z_a-z]*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.other.jinja\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.jinja.attribute\\\"}},\\\"match\\\":\\\"(\\\\\\\\.)([A-Z_a-z][0-9A-Z_a-z]*)\\\"},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"captures\\\":[{\\\"name\\\":\\\"punctuation.other.jinja\\\"}],\\\"end\\\":\\\"]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":[{\\\"name\\\":\\\"punctuation.other.jinja\\\"}],\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":[{\\\"name\\\":\\\"punctuation.other.jinja\\\"}],\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"match\\\":\\\"([,.:|])\\\",\\\"name\\\":\\\"punctuation.other.jinja\\\"},{\\\"match\\\":\\\"(==|<=|=>|[<>]|!=)\\\",\\\"name\\\":\\\"keyword.operator.comparison.jinja\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.jinja\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":[{\\\"name\\\":\\\"punctuation.definition.string.begin.jinja\\\"}],\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":[{\\\"name\\\":\\\"punctuation.definition.string.end.jinja\\\"}],\\\"name\\\":\\\"string.quoted.double.jinja\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":[{\\\"name\\\":\\\"punctuation.definition.string.begin.jinja\\\"}],\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":[{\\\"name\\\":\\\"punctuation.definition.string.end.jinja\\\"}],\\\"name\\\":\\\"string.quoted.single.jinja\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"}]},{\\\"begin\\\":\\\"@/\\\",\\\"beginCaptures\\\":[{\\\"name\\\":\\\"punctuation.definition.regexp.begin.jinja\\\"}],\\\"end\\\":\\\"/\\\",\\\"endCaptures\\\":[{\\\"name\\\":\\\"punctuation.definition.regexp.end.jinja\\\"}],\\\"name\\\":\\\"string.regexp.jinja\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#simple_escapes\\\"}]}]},\\\"simple_escapes\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.escape.newline.jinja\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.character.escape.backlash.jinja\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.escape.double-quote.jinja\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.character.escape.single-quote.jinja\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.character.escape.bell.jinja\\\"},\\\"6\\\":{\\\"name\\\":\\\"constant.character.escape.backspace.jinja\\\"},\\\"7\\\":{\\\"name\\\":\\\"constant.character.escape.formfeed.jinja\\\"},\\\"8\\\":{\\\"name\\\":\\\"constant.character.escape.linefeed.jinja\\\"},\\\"9\\\":{\\\"name\\\":\\\"constant.character.escape.return.jinja\\\"},\\\"10\\\":{\\\"name\\\":\\\"constant.character.escape.tab.jinja\\\"},\\\"11\\\":{\\\"name\\\":\\\"constant.character.escape.vertical-tab.jinja\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\\\\\\\\\n)|(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\)|(\\\\\\\\\\\\\\\\\\\\\\\")|(\\\\\\\\\\\\\\\\')|(\\\\\\\\\\\\\\\\a)|(\\\\\\\\\\\\\\\\b)|(\\\\\\\\\\\\\\\\f)|(\\\\\\\\\\\\\\\\n)|(\\\\\\\\\\\\\\\\r)|(\\\\\\\\\\\\\\\\t)|(\\\\\\\\\\\\\\\\v)\\\"},\\\"string\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#simple_escapes\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#escaped_unicode_char\\\"}]}},\\\"scopeName\\\":\\\"source.jinja\\\",\\\"embeddedLangs\\\":[\\\"jinja-html\\\"]}\"))\n\nexport default [\n...jinja_html,\nlang\n]\n"],"mappings":";4HAEA,IAAMA,EAAO,OAAO,OAAO,KAAK,MAAM,+fAAwiB,CAAC,EAExkBC,EAAQ,CACf,GAAGC,EACHF,CACA,ECLA,IAAMG,EAAO,OAAO,OAAO,KAAK,MAAM,22JAAs7K,CAAC,EAEt9KC,EAAQ,CACf,GAAGC,EACHF,CACA","names":["lang","jinja_html_default","html_default","lang","jinja_default","jinja_html_default"]}
@@ -0,0 +1,3 @@
1
+ "use client";
2
+ import{a as e}from"./chunk-VME4UB43.js";import"./chunk-V3ZDECK5.js";var n=Object.freeze(JSON.parse(`{"displayName":"Jison","fileTypes":["jison"],"injections":{"L:(meta.action.jison - (comment | string)), source.js.embedded.jison - (comment | string), source.js.embedded.source - (comment | string.quoted.double | string.quoted.single)":{"patterns":[{"match":"\\\\\${2}","name":"variable.language.semantic-value.jison"},{"match":"@\\\\$","name":"variable.language.result-location.jison"},{"match":"##\\\\$|\\\\byysp\\\\b","name":"variable.language.stack-index-0.jison"},{"match":"#\\\\S+#","name":"support.variable.token-reference.jison"},{"match":"#\\\\$","name":"variable.language.result-id.jison"},{"match":"\\\\$(?:-?\\\\d+|[_[:alpha:]](?:[-\\\\w]*\\\\w)?)","name":"support.variable.token-value.jison"},{"match":"@(?:-?\\\\d+|[_[:alpha:]](?:[-\\\\w]*\\\\w)?)","name":"support.variable.token-location.jison"},{"match":"##(?:-?\\\\d+|[_[:alpha:]](?:[-\\\\w]*\\\\w)?)","name":"support.variable.stack-index.jison"},{"match":"#(?:-?\\\\d+|[_[:alpha:]](?:[-\\\\w]*\\\\w)?)","name":"support.variable.token-id.jison"},{"match":"\\\\byy(?:l(?:eng|ineno|oc|stack)|rulelength|s(?:tate|s?tack)|text|vstack)\\\\b","name":"variable.language.jison"},{"match":"\\\\byy(?:clearin|erro[kr])\\\\b","name":"keyword.other.jison"}]}},"name":"jison","patterns":[{"begin":"%%","beginCaptures":{"0":{"name":"meta.separator.section.jison"}},"end":"\\\\z","patterns":[{"begin":"%%","beginCaptures":{"0":{"name":"meta.separator.section.jison"}},"end":"\\\\z","patterns":[{"begin":"\\\\G","contentName":"source.js.embedded.jison","end":"\\\\z","name":"meta.section.epilogue.jison","patterns":[{"include":"#epilogue_section"}]}]},{"begin":"\\\\G","end":"(?=%%)","name":"meta.section.rules.jison","patterns":[{"include":"#rules_section"}]}]},{"begin":"^","end":"(?=%%)","name":"meta.section.declarations.jison","patterns":[{"include":"#declarations_section"}]}],"repository":{"actions":{"patterns":[{"begin":"\\\\{\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.action.begin.jison"}},"contentName":"source.js.embedded.jison","end":"}}","endCaptures":{"0":{"name":"punctuation.definition.action.end.jison"}},"name":"meta.action.jison","patterns":[{"include":"source.js"}]},{"begin":"(?=%\\\\{)","end":"(?<=%})","name":"meta.action.jison","patterns":[{"include":"#user_code_blocks"}]}]},"comments":{"patterns":[{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.jison"}},"end":"$","name":"comment.line.double-slash.jison"},{"begin":"/\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.jison"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.jison"}},"name":"comment.block.jison"}]},"declarations_section":{"patterns":[{"include":"#comments"},{"begin":"^\\\\s*(%lex)\\\\s*$","beginCaptures":{"1":{"name":"entity.name.tag.lexer.begin.jison"}},"end":"^\\\\s*(/lex)\\\\b","endCaptures":{"1":{"name":"entity.name.tag.lexer.end.jison"}},"patterns":[{"begin":"%%","beginCaptures":{"0":{"name":"meta.separator.section.jisonlex"}},"end":"(?=/lex)","patterns":[{"begin":"^%%","beginCaptures":{"0":{"name":"meta.separator.section.jisonlex"}},"end":"(?=/lex)","patterns":[{"begin":"\\\\G","contentName":"source.js.embedded.jisonlex","end":"(?=/lex)","name":"meta.section.user-code.jisonlex","patterns":[{"include":"source.jisonlex#user_code_section"}]}]},{"begin":"\\\\G","end":"^(?=%%|/lex)","name":"meta.section.rules.jisonlex","patterns":[{"include":"source.jisonlex#rules_section"}]}]},{"begin":"^","end":"(?=%%|/lex)","name":"meta.section.definitions.jisonlex","patterns":[{"include":"source.jisonlex#definitions_section"}]}]},{"begin":"(?=%\\\\{)","end":"(?<=%})","name":"meta.section.prologue.jison","patterns":[{"include":"#user_code_blocks"}]},{"include":"#options_declarations"},{"match":"%(ebnf|left|nonassoc|parse-param|right|start)\\\\b","name":"keyword.other.declaration.$1.jison"},{"include":"#include_declarations"},{"begin":"%(code)\\\\b","beginCaptures":{"0":{"name":"keyword.other.declaration.$1.jison"}},"end":"$","name":"meta.code.jison","patterns":[{"include":"#comments"},{"include":"#rule_actions"},{"match":"(init|required)","name":"keyword.other.code-qualifier.$1.jison"},{"include":"#quoted_strings"},{"match":"\\\\b[_[:alpha:]](?:[-\\\\w]*\\\\w)?\\\\b","name":"string.unquoted.jison"}]},{"begin":"%(parser-type)\\\\b","beginCaptures":{"0":{"name":"keyword.other.declaration.$1.jison"}},"end":"$","name":"meta.parser-type.jison","patterns":[{"include":"#comments"},{"include":"#quoted_strings"},{"match":"\\\\b[_[:alpha:]](?:[-\\\\w]*\\\\w)?\\\\b","name":"string.unquoted.jison"}]},{"begin":"%(token)\\\\b","beginCaptures":{"0":{"name":"keyword.other.declaration.$1.jison"}},"end":"$|(%%|;)","endCaptures":{"1":{"name":"punctuation.terminator.declaration.token.jison"}},"name":"meta.token.jison","patterns":[{"include":"#comments"},{"include":"#numbers"},{"include":"#quoted_strings"},{"match":"<[_[:alpha:]](?:[-\\\\w]*\\\\w)?>","name":"invalid.unimplemented.jison"},{"match":"\\\\S+","name":"entity.other.token.jison"}]},{"match":"%(debug|import)\\\\b","name":"keyword.other.declaration.$1.jison"},{"match":"%prec\\\\b","name":"invalid.illegal.jison"},{"match":"%[_[:alpha:]](?:[-\\\\w]*\\\\w)?\\\\b","name":"invalid.unimplemented.jison"},{"include":"#numbers"},{"include":"#quoted_strings"}]},"epilogue_section":{"patterns":[{"include":"#user_code_include_declarations"},{"include":"source.js"}]},"include_declarations":{"patterns":[{"begin":"(%(include))\\\\s*","beginCaptures":{"1":{"name":"keyword.other.declaration.$2.jison"}},"end":"(?<=[\\"'])|(?=\\\\s)","name":"meta.include.jison","patterns":[{"include":"#include_paths"}]}]},"include_paths":{"patterns":[{"include":"#quoted_strings"},{"begin":"(?=\\\\S)","end":"(?=\\\\s)","name":"string.unquoted.jison","patterns":[{"include":"source.js#string_escapes"}]}]},"numbers":{"patterns":[{"captures":{"1":{"name":"storage.type.number.jison"},"2":{"name":"constant.numeric.integer.hexadecimal.jison"}},"match":"(0[Xx])(\\\\h+)"},{"match":"\\\\d+","name":"constant.numeric.integer.decimal.jison"}]},"options_declarations":{"patterns":[{"begin":"%options\\\\b","beginCaptures":{"0":{"name":"keyword.other.options.jison"}},"end":"^(?=\\\\S|\\\\s*$)","name":"meta.options.jison","patterns":[{"include":"#comments"},{"match":"\\\\b[_[:alpha:]](?:[-\\\\w]*\\\\w)?\\\\b","name":"entity.name.constant.jison"},{"begin":"(=)\\\\s*","beginCaptures":{"1":{"name":"keyword.operator.option.assignment.jison"}},"end":"(?<=[\\"'])|(?=\\\\s)","patterns":[{"include":"#comments"},{"match":"\\\\b(true|false)\\\\b","name":"constant.language.boolean.$1.jison"},{"include":"#numbers"},{"include":"#quoted_strings"},{"match":"\\\\S+","name":"string.unquoted.jison"}]},{"include":"#quoted_strings"}]}]},"quoted_strings":{"patterns":[{"begin":"\\"","end":"\\"","name":"string.quoted.double.jison","patterns":[{"include":"source.js#string_escapes"}]},{"begin":"'","end":"'","name":"string.quoted.single.jison","patterns":[{"include":"source.js#string_escapes"}]}]},"rule_actions":{"patterns":[{"include":"#actions"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.action.begin.jison"}},"contentName":"source.js.embedded.jison","end":"}","endCaptures":{"0":{"name":"punctuation.definition.action.end.jison"}},"name":"meta.action.jison","patterns":[{"include":"source.js"}]},{"include":"#include_declarations"},{"begin":"->|\u2192","beginCaptures":{"0":{"name":"punctuation.definition.action.arrow.jison"}},"contentName":"source.js.embedded.jison","end":"$","name":"meta.action.jison","patterns":[{"include":"source.js"}]}]},"rules_section":{"patterns":[{"include":"#comments"},{"include":"#actions"},{"include":"#include_declarations"},{"begin":"\\\\b[_[:alpha:]](?:[-\\\\w]*\\\\w)?\\\\b","beginCaptures":{"0":{"name":"entity.name.constant.rule-result.jison"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.rule.jison"}},"name":"meta.rule.jison","patterns":[{"include":"#comments"},{"begin":":","beginCaptures":{"0":{"name":"keyword.operator.rule-components.assignment.jison"}},"end":"(?=;)","name":"meta.rule-components.jison","patterns":[{"include":"#comments"},{"include":"#quoted_strings"},{"captures":{"1":{"name":"punctuation.definition.named-reference.begin.jison"},"2":{"name":"entity.name.other.reference.jison"},"3":{"name":"punctuation.definition.named-reference.end.jison"}},"match":"(\\\\[)([_[:alpha:]](?:[-\\\\w]*\\\\w)?)(])"},{"begin":"(%(prec))\\\\s*","beginCaptures":{"1":{"name":"keyword.other.$2.jison"}},"end":"(?<=[\\"'])|(?=\\\\s)","name":"meta.prec.jison","patterns":[{"include":"#comments"},{"include":"#quoted_strings"},{"begin":"(?=\\\\S)","end":"(?=\\\\s)","name":"constant.other.token.jison"}]},{"match":"\\\\|","name":"keyword.operator.rule-components.separator.jison"},{"match":"\\\\b(?:EOF|error)\\\\b","name":"keyword.other.$0.jison"},{"match":"(?:%e(?:mpty|psilon)|\\\\b[\u0190\u025B\u03B5\u03F5])\\\\b","name":"keyword.other.empty.jison"},{"include":"#rule_actions"}]}]}]},"user_code_blocks":{"patterns":[{"begin":"%\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.user-code-block.begin.jison"}},"contentName":"source.js.embedded.jison","end":"%}","endCaptures":{"0":{"name":"punctuation.definition.user-code-block.end.jison"}},"name":"meta.user-code-block.jison","patterns":[{"include":"source.js"}]}]},"user_code_include_declarations":{"patterns":[{"begin":"^(%(include))\\\\s*","beginCaptures":{"1":{"name":"keyword.other.declaration.$2.jison"}},"end":"(?<=[\\"'])|(?=\\\\s)","name":"meta.include.jison","patterns":[{"include":"#include_paths"}]}]}},"scopeName":"source.jison","embeddedLangs":["javascript"]}`)),i=[...e,n];export{i as default};
3
+ //# sourceMappingURL=jison-UYDZQBN5.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../node_modules/@shikijs/langs/dist/jison.mjs"],"sourcesContent":["import javascript from './javascript.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Jison\\\",\\\"fileTypes\\\":[\\\"jison\\\"],\\\"injections\\\":{\\\"L:(meta.action.jison - (comment | string)), source.js.embedded.jison - (comment | string), source.js.embedded.source - (comment | string.quoted.double | string.quoted.single)\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\${2}\\\",\\\"name\\\":\\\"variable.language.semantic-value.jison\\\"},{\\\"match\\\":\\\"@\\\\\\\\$\\\",\\\"name\\\":\\\"variable.language.result-location.jison\\\"},{\\\"match\\\":\\\"##\\\\\\\\$|\\\\\\\\byysp\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.stack-index-0.jison\\\"},{\\\"match\\\":\\\"#\\\\\\\\S+#\\\",\\\"name\\\":\\\"support.variable.token-reference.jison\\\"},{\\\"match\\\":\\\"#\\\\\\\\$\\\",\\\"name\\\":\\\"variable.language.result-id.jison\\\"},{\\\"match\\\":\\\"\\\\\\\\$(?:-?\\\\\\\\d+|[_[:alpha:]](?:[-\\\\\\\\w]*\\\\\\\\w)?)\\\",\\\"name\\\":\\\"support.variable.token-value.jison\\\"},{\\\"match\\\":\\\"@(?:-?\\\\\\\\d+|[_[:alpha:]](?:[-\\\\\\\\w]*\\\\\\\\w)?)\\\",\\\"name\\\":\\\"support.variable.token-location.jison\\\"},{\\\"match\\\":\\\"##(?:-?\\\\\\\\d+|[_[:alpha:]](?:[-\\\\\\\\w]*\\\\\\\\w)?)\\\",\\\"name\\\":\\\"support.variable.stack-index.jison\\\"},{\\\"match\\\":\\\"#(?:-?\\\\\\\\d+|[_[:alpha:]](?:[-\\\\\\\\w]*\\\\\\\\w)?)\\\",\\\"name\\\":\\\"support.variable.token-id.jison\\\"},{\\\"match\\\":\\\"\\\\\\\\byy(?:l(?:eng|ineno|oc|stack)|rulelength|s(?:tate|s?tack)|text|vstack)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.jison\\\"},{\\\"match\\\":\\\"\\\\\\\\byy(?:clearin|erro[kr])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.jison\\\"}]}},\\\"name\\\":\\\"jison\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"%%\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.separator.section.jison\\\"}},\\\"end\\\":\\\"\\\\\\\\z\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"%%\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.separator.section.jison\\\"}},\\\"end\\\":\\\"\\\\\\\\z\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"contentName\\\":\\\"source.js.embedded.jison\\\",\\\"end\\\":\\\"\\\\\\\\z\\\",\\\"name\\\":\\\"meta.section.epilogue.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#epilogue_section\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(?=%%)\\\",\\\"name\\\":\\\"meta.section.rules.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#rules_section\\\"}]}]},{\\\"begin\\\":\\\"^\\\",\\\"end\\\":\\\"(?=%%)\\\",\\\"name\\\":\\\"meta.section.declarations.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declarations_section\\\"}]}],\\\"repository\\\":{\\\"actions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.action.begin.jison\\\"}},\\\"contentName\\\":\\\"source.js.embedded.jison\\\",\\\"end\\\":\\\"}}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.action.end.jison\\\"}},\\\"name\\\":\\\"meta.action.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"(?=%\\\\\\\\{)\\\",\\\"end\\\":\\\"(?<=%})\\\",\\\"name\\\":\\\"meta.action.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#user_code_blocks\\\"}]}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.jison\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.double-slash.jison\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.jison\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.jison\\\"}},\\\"name\\\":\\\"comment.block.jison\\\"}]},\\\"declarations_section\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*(%lex)\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.lexer.begin.jison\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(/lex)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.lexer.end.jison\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"%%\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.separator.section.jisonlex\\\"}},\\\"end\\\":\\\"(?=/lex)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^%%\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.separator.section.jisonlex\\\"}},\\\"end\\\":\\\"(?=/lex)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"contentName\\\":\\\"source.js.embedded.jisonlex\\\",\\\"end\\\":\\\"(?=/lex)\\\",\\\"name\\\":\\\"meta.section.user-code.jisonlex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.jisonlex#user_code_section\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"^(?=%%|/lex)\\\",\\\"name\\\":\\\"meta.section.rules.jisonlex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.jisonlex#rules_section\\\"}]}]},{\\\"begin\\\":\\\"^\\\",\\\"end\\\":\\\"(?=%%|/lex)\\\",\\\"name\\\":\\\"meta.section.definitions.jisonlex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.jisonlex#definitions_section\\\"}]}]},{\\\"begin\\\":\\\"(?=%\\\\\\\\{)\\\",\\\"end\\\":\\\"(?<=%})\\\",\\\"name\\\":\\\"meta.section.prologue.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#user_code_blocks\\\"}]},{\\\"include\\\":\\\"#options_declarations\\\"},{\\\"match\\\":\\\"%(ebnf|left|nonassoc|parse-param|right|start)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.declaration.$1.jison\\\"},{\\\"include\\\":\\\"#include_declarations\\\"},{\\\"begin\\\":\\\"%(code)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.declaration.$1.jison\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.code.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#rule_actions\\\"},{\\\"match\\\":\\\"(init|required)\\\",\\\"name\\\":\\\"keyword.other.code-qualifier.$1.jison\\\"},{\\\"include\\\":\\\"#quoted_strings\\\"},{\\\"match\\\":\\\"\\\\\\\\b[_[:alpha:]](?:[-\\\\\\\\w]*\\\\\\\\w)?\\\\\\\\b\\\",\\\"name\\\":\\\"string.unquoted.jison\\\"}]},{\\\"begin\\\":\\\"%(parser-type)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.declaration.$1.jison\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.parser-type.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#quoted_strings\\\"},{\\\"match\\\":\\\"\\\\\\\\b[_[:alpha:]](?:[-\\\\\\\\w]*\\\\\\\\w)?\\\\\\\\b\\\",\\\"name\\\":\\\"string.unquoted.jison\\\"}]},{\\\"begin\\\":\\\"%(token)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.declaration.$1.jison\\\"}},\\\"end\\\":\\\"$|(%%|;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.declaration.token.jison\\\"}},\\\"name\\\":\\\"meta.token.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#quoted_strings\\\"},{\\\"match\\\":\\\"<[_[:alpha:]](?:[-\\\\\\\\w]*\\\\\\\\w)?>\\\",\\\"name\\\":\\\"invalid.unimplemented.jison\\\"},{\\\"match\\\":\\\"\\\\\\\\S+\\\",\\\"name\\\":\\\"entity.other.token.jison\\\"}]},{\\\"match\\\":\\\"%(debug|import)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.declaration.$1.jison\\\"},{\\\"match\\\":\\\"%prec\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.illegal.jison\\\"},{\\\"match\\\":\\\"%[_[:alpha:]](?:[-\\\\\\\\w]*\\\\\\\\w)?\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.unimplemented.jison\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#quoted_strings\\\"}]},\\\"epilogue_section\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#user_code_include_declarations\\\"},{\\\"include\\\":\\\"source.js\\\"}]},\\\"include_declarations\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(%(include))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.declaration.$2.jison\\\"}},\\\"end\\\":\\\"(?<=[\\\\\\\"'])|(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"meta.include.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#include_paths\\\"}]}]},\\\"include_paths\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#quoted_strings\\\"},{\\\"begin\\\":\\\"(?=\\\\\\\\S)\\\",\\\"end\\\":\\\"(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"string.unquoted.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js#string_escapes\\\"}]}]},\\\"numbers\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.number.jison\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.integer.hexadecimal.jison\\\"}},\\\"match\\\":\\\"(0[Xx])(\\\\\\\\h+)\\\"},{\\\"match\\\":\\\"\\\\\\\\d+\\\",\\\"name\\\":\\\"constant.numeric.integer.decimal.jison\\\"}]},\\\"options_declarations\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"%options\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.options.jison\\\"}},\\\"end\\\":\\\"^(?=\\\\\\\\S|\\\\\\\\s*$)\\\",\\\"name\\\":\\\"meta.options.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"\\\\\\\\b[_[:alpha:]](?:[-\\\\\\\\w]*\\\\\\\\w)?\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.constant.jison\\\"},{\\\"begin\\\":\\\"(=)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.option.assignment.jison\\\"}},\\\"end\\\":\\\"(?<=[\\\\\\\"'])|(?=\\\\\\\\s)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"\\\\\\\\b(true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.$1.jison\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#quoted_strings\\\"},{\\\"match\\\":\\\"\\\\\\\\S+\\\",\\\"name\\\":\\\"string.unquoted.jison\\\"}]},{\\\"include\\\":\\\"#quoted_strings\\\"}]}]},\\\"quoted_strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js#string_escapes\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.single.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js#string_escapes\\\"}]}]},\\\"rule_actions\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#actions\\\"},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.action.begin.jison\\\"}},\\\"contentName\\\":\\\"source.js.embedded.jison\\\",\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.action.end.jison\\\"}},\\\"name\\\":\\\"meta.action.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]},{\\\"include\\\":\\\"#include_declarations\\\"},{\\\"begin\\\":\\\"->|→\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.action.arrow.jison\\\"}},\\\"contentName\\\":\\\"source.js.embedded.jison\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.action.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}]},\\\"rules_section\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#actions\\\"},{\\\"include\\\":\\\"#include_declarations\\\"},{\\\"begin\\\":\\\"\\\\\\\\b[_[:alpha:]](?:[-\\\\\\\\w]*\\\\\\\\w)?\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.constant.rule-result.jison\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.jison\\\"}},\\\"name\\\":\\\"meta.rule.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.rule-components.assignment.jison\\\"}},\\\"end\\\":\\\"(?=;)\\\",\\\"name\\\":\\\"meta.rule-components.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#quoted_strings\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.named-reference.begin.jison\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.other.reference.jison\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.named-reference.end.jison\\\"}},\\\"match\\\":\\\"(\\\\\\\\[)([_[:alpha:]](?:[-\\\\\\\\w]*\\\\\\\\w)?)(])\\\"},{\\\"begin\\\":\\\"(%(prec))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.$2.jison\\\"}},\\\"end\\\":\\\"(?<=[\\\\\\\"'])|(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"meta.prec.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#quoted_strings\\\"},{\\\"begin\\\":\\\"(?=\\\\\\\\S)\\\",\\\"end\\\":\\\"(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"constant.other.token.jison\\\"}]},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.rule-components.separator.jison\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:EOF|error)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.$0.jison\\\"},{\\\"match\\\":\\\"(?:%e(?:mpty|psilon)|\\\\\\\\b[Ɛɛεϵ])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.empty.jison\\\"},{\\\"include\\\":\\\"#rule_actions\\\"}]}]}]},\\\"user_code_blocks\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"%\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.user-code-block.begin.jison\\\"}},\\\"contentName\\\":\\\"source.js.embedded.jison\\\",\\\"end\\\":\\\"%}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.user-code-block.end.jison\\\"}},\\\"name\\\":\\\"meta.user-code-block.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}]},\\\"user_code_include_declarations\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^(%(include))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.declaration.$2.jison\\\"}},\\\"end\\\":\\\"(?<=[\\\\\\\"'])|(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"meta.include.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#include_paths\\\"}]}]}},\\\"scopeName\\\":\\\"source.jison\\\",\\\"embeddedLangs\\\":[\\\"javascript\\\"]}\"))\n\nexport default [\n...javascript,\nlang\n]\n"],"mappings":";oEAEA,IAAMA,EAAO,OAAO,OAAO,KAAK,MAAM,g4SAA4iV,CAAC,EAE5kVC,EAAQ,CACf,GAAGC,EACHF,CACA","names":["lang","jison_default","javascript_default"]}
@@ -0,0 +1,3 @@
1
+ "use client";
2
+ import{a}from"./chunk-F3QSOBPN.js";import"./chunk-V3ZDECK5.js";export{a as default};
3
+ //# sourceMappingURL=json-5V4JESJO.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}