@juspay/shooter 1.5.0 → 1.6.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 (478) hide show
  1. package/README.md +24 -20
  2. package/bin/shooter.cjs +68 -17
  3. package/build/client/_app/immutable/assets/2.Dk9NfqnS.css +1 -0
  4. package/build/client/_app/immutable/assets/2.Dk9NfqnS.css.br +0 -0
  5. package/build/client/_app/immutable/assets/2.Dk9NfqnS.css.gz +0 -0
  6. package/build/client/_app/immutable/assets/3.DHxQoulp.css +1 -0
  7. package/build/client/_app/immutable/assets/3.DHxQoulp.css.br +0 -0
  8. package/build/client/_app/immutable/assets/3.DHxQoulp.css.gz +0 -0
  9. package/build/client/_app/immutable/assets/{3.DGDHCVnW.css → 4.D5l1JxgO.css} +1 -1
  10. package/build/client/_app/immutable/assets/4.D5l1JxgO.css.br +0 -0
  11. package/build/client/_app/immutable/assets/4.D5l1JxgO.css.gz +0 -0
  12. package/build/client/_app/immutable/assets/5.C5qz-NeI.css +1 -0
  13. package/build/client/_app/immutable/assets/5.C5qz-NeI.css.br +0 -0
  14. package/build/client/_app/immutable/assets/5.C5qz-NeI.css.gz +0 -0
  15. package/build/client/_app/immutable/chunks/1mEchsPO.js +1 -0
  16. package/build/client/_app/immutable/chunks/1mEchsPO.js.br +0 -0
  17. package/build/client/_app/immutable/chunks/1mEchsPO.js.gz +0 -0
  18. package/build/client/_app/immutable/chunks/B7X-vhXI.js +1 -0
  19. package/build/client/_app/immutable/chunks/B7X-vhXI.js.br +0 -0
  20. package/build/client/_app/immutable/chunks/B7X-vhXI.js.gz +0 -0
  21. package/build/client/_app/immutable/chunks/BRkqKgVG.js +1 -0
  22. package/build/client/_app/immutable/chunks/BRkqKgVG.js.br +0 -0
  23. package/build/client/_app/immutable/chunks/BRkqKgVG.js.gz +0 -0
  24. package/build/client/_app/immutable/chunks/BfJ-f-Tu.js +1 -0
  25. package/build/client/_app/immutable/chunks/BfJ-f-Tu.js.br +2 -0
  26. package/build/client/_app/immutable/chunks/BfJ-f-Tu.js.gz +0 -0
  27. package/build/client/_app/immutable/chunks/CGMJxf7r.js +1 -0
  28. package/build/client/_app/immutable/chunks/CGMJxf7r.js.br +0 -0
  29. package/build/client/_app/immutable/chunks/CGMJxf7r.js.gz +0 -0
  30. package/build/client/_app/immutable/chunks/{CZHsSL_X.js → CJFjKwJ7.js} +1 -1
  31. package/build/client/_app/immutable/chunks/CJFjKwJ7.js.br +0 -0
  32. package/build/client/_app/immutable/chunks/CJFjKwJ7.js.gz +0 -0
  33. package/build/client/_app/immutable/chunks/CNH2HlKj.js +20 -0
  34. package/build/client/_app/immutable/chunks/CNH2HlKj.js.br +0 -0
  35. package/build/client/_app/immutable/chunks/CNH2HlKj.js.gz +0 -0
  36. package/build/client/_app/immutable/chunks/CR6bkGJW.js +6 -0
  37. package/build/client/_app/immutable/chunks/CR6bkGJW.js.br +0 -0
  38. package/build/client/_app/immutable/chunks/CR6bkGJW.js.gz +0 -0
  39. package/build/client/_app/immutable/chunks/CVtJ6yRM.js +1 -0
  40. package/build/client/_app/immutable/chunks/CVtJ6yRM.js.br +0 -0
  41. package/build/client/_app/immutable/chunks/CVtJ6yRM.js.gz +0 -0
  42. package/build/client/_app/immutable/chunks/{CSoRdFvv.js → CaiJSUi3.js} +1 -1
  43. package/build/client/_app/immutable/chunks/CaiJSUi3.js.br +0 -0
  44. package/build/client/_app/immutable/chunks/CaiJSUi3.js.gz +0 -0
  45. package/build/client/_app/immutable/chunks/{DjsDGxCa.js → CmczWE_d.js} +4 -4
  46. package/build/client/_app/immutable/chunks/CmczWE_d.js.br +0 -0
  47. package/build/client/_app/immutable/chunks/CmczWE_d.js.gz +0 -0
  48. package/build/client/_app/immutable/chunks/CsgHjHGZ.js +1 -0
  49. package/build/client/_app/immutable/chunks/CsgHjHGZ.js.br +0 -0
  50. package/build/client/_app/immutable/chunks/CsgHjHGZ.js.gz +0 -0
  51. package/build/client/_app/immutable/chunks/{UJOiqIYE.js → CtrCjGZT.js} +1 -1
  52. package/build/client/_app/immutable/chunks/CtrCjGZT.js.br +0 -0
  53. package/build/client/_app/immutable/chunks/CtrCjGZT.js.gz +0 -0
  54. package/build/client/_app/immutable/chunks/DDiOVAd8.js +61 -0
  55. package/build/client/_app/immutable/chunks/DDiOVAd8.js.br +0 -0
  56. package/build/client/_app/immutable/chunks/DDiOVAd8.js.gz +0 -0
  57. package/build/client/_app/immutable/chunks/DVl0sebP.js +2 -0
  58. package/build/client/_app/immutable/chunks/DVl0sebP.js.br +0 -0
  59. package/build/client/_app/immutable/chunks/DVl0sebP.js.gz +0 -0
  60. package/build/client/_app/immutable/chunks/{CiF38mQq.js → Dc_Gg2H6.js} +1 -1
  61. package/build/client/_app/immutable/chunks/Dc_Gg2H6.js.br +0 -0
  62. package/build/client/_app/immutable/chunks/Dc_Gg2H6.js.gz +0 -0
  63. package/build/client/_app/immutable/chunks/{CRbaG9cv.js → DlnAjkg1.js} +1 -1
  64. package/build/client/_app/immutable/chunks/DlnAjkg1.js.br +0 -0
  65. package/build/client/_app/immutable/chunks/{CRbaG9cv.js.gz → DlnAjkg1.js.gz} +0 -0
  66. package/build/client/_app/immutable/chunks/YKoRJzXZ.js +3 -0
  67. package/build/client/_app/immutable/chunks/YKoRJzXZ.js.br +0 -0
  68. package/build/client/_app/immutable/chunks/YKoRJzXZ.js.gz +0 -0
  69. package/build/client/_app/immutable/chunks/gQJcRhou.js +1 -0
  70. package/build/client/_app/immutable/chunks/gQJcRhou.js.br +0 -0
  71. package/build/client/_app/immutable/chunks/gQJcRhou.js.gz +0 -0
  72. package/build/client/_app/immutable/chunks/pRcLbE0d.js +1 -0
  73. package/build/client/_app/immutable/chunks/pRcLbE0d.js.br +0 -0
  74. package/build/client/_app/immutable/chunks/pRcLbE0d.js.gz +0 -0
  75. package/build/client/_app/immutable/entry/app.CFPgQOa8.js +2 -0
  76. package/build/client/_app/immutable/entry/app.CFPgQOa8.js.br +0 -0
  77. package/build/client/_app/immutable/entry/app.CFPgQOa8.js.gz +0 -0
  78. package/build/client/_app/immutable/entry/start.BnJOVqhI.js +1 -0
  79. package/build/client/_app/immutable/entry/start.BnJOVqhI.js.br +2 -0
  80. package/build/client/_app/immutable/entry/start.BnJOVqhI.js.gz +0 -0
  81. package/build/client/_app/immutable/nodes/0.DR-BBF5r.js +1 -0
  82. package/build/client/_app/immutable/nodes/0.DR-BBF5r.js.br +0 -0
  83. package/build/client/_app/immutable/nodes/0.DR-BBF5r.js.gz +0 -0
  84. package/build/client/_app/immutable/nodes/1.CNm6rAwf.js +1 -0
  85. package/build/client/_app/immutable/nodes/1.CNm6rAwf.js.br +0 -0
  86. package/build/client/_app/immutable/nodes/1.CNm6rAwf.js.gz +0 -0
  87. package/build/client/_app/immutable/nodes/2.B08usYzr.js +13 -0
  88. package/build/client/_app/immutable/nodes/2.B08usYzr.js.br +0 -0
  89. package/build/client/_app/immutable/nodes/2.B08usYzr.js.gz +0 -0
  90. package/build/client/_app/immutable/nodes/3.CsY6J5HS.js +9 -0
  91. package/build/client/_app/immutable/nodes/3.CsY6J5HS.js.br +0 -0
  92. package/build/client/_app/immutable/nodes/3.CsY6J5HS.js.gz +0 -0
  93. package/build/client/_app/immutable/nodes/4.B_pbOZoD.js +4 -0
  94. package/build/client/_app/immutable/nodes/4.B_pbOZoD.js.br +0 -0
  95. package/build/client/_app/immutable/nodes/4.B_pbOZoD.js.gz +0 -0
  96. package/build/client/_app/immutable/nodes/5.CdLPNo5-.js +1 -0
  97. package/build/client/_app/immutable/nodes/5.CdLPNo5-.js.br +0 -0
  98. package/build/client/_app/immutable/nodes/5.CdLPNo5-.js.gz +0 -0
  99. package/build/client/_app/immutable/nodes/6.CbQQ3FtZ.js +1 -0
  100. package/build/client/_app/immutable/nodes/6.CbQQ3FtZ.js.br +0 -0
  101. package/build/client/_app/immutable/nodes/6.CbQQ3FtZ.js.gz +0 -0
  102. package/build/client/_app/immutable/nodes/{5.DIkXVP4q.js → 7.CCKgiNNk.js} +3 -3
  103. package/build/client/_app/immutable/nodes/7.CCKgiNNk.js.br +0 -0
  104. package/build/client/_app/immutable/nodes/7.CCKgiNNk.js.gz +0 -0
  105. package/build/client/_app/immutable/nodes/8.C7AaheUD.js +2 -0
  106. package/build/client/_app/immutable/nodes/8.C7AaheUD.js.br +0 -0
  107. package/build/client/_app/immutable/nodes/8.C7AaheUD.js.gz +0 -0
  108. package/build/client/_app/immutable/nodes/9.DfL9kMC4.js +2 -0
  109. package/build/client/_app/immutable/nodes/9.DfL9kMC4.js.br +0 -0
  110. package/build/client/_app/immutable/nodes/9.DfL9kMC4.js.gz +0 -0
  111. package/build/client/_app/version.json +1 -1
  112. package/build/client/_app/version.json.br +0 -0
  113. package/build/client/_app/version.json.gz +0 -0
  114. package/build/server/chunks/0-DC2VLooL.js +23 -0
  115. package/build/server/chunks/0-DC2VLooL.js.map +1 -0
  116. package/build/server/chunks/1-XJaf8Jvf.js +9 -0
  117. package/build/server/chunks/{1-D0N7vVhH.js.map → 1-XJaf8Jvf.js.map} +1 -1
  118. package/build/server/chunks/2-D4Cx-1QL.js +21 -0
  119. package/build/server/chunks/2-D4Cx-1QL.js.map +1 -0
  120. package/build/server/chunks/3-CVhIEP-u.js +21 -0
  121. package/build/server/chunks/3-CVhIEP-u.js.map +1 -0
  122. package/build/server/chunks/4-0UE_6Ep-.js +23 -0
  123. package/build/server/chunks/4-0UE_6Ep-.js.map +1 -0
  124. package/build/server/chunks/5-BBIP1PzX.js +24 -0
  125. package/build/server/chunks/5-BBIP1PzX.js.map +1 -0
  126. package/build/server/chunks/6-QFSbzRMP.js +9 -0
  127. package/build/server/chunks/6-QFSbzRMP.js.map +1 -0
  128. package/build/server/chunks/7-CZ_YGjMV.js +9 -0
  129. package/build/server/chunks/7-CZ_YGjMV.js.map +1 -0
  130. package/build/server/chunks/8-Xe2Rugb4.js +9 -0
  131. package/build/server/chunks/8-Xe2Rugb4.js.map +1 -0
  132. package/build/server/chunks/9-IwHpC4SO.js +9 -0
  133. package/build/server/chunks/9-IwHpC4SO.js.map +1 -0
  134. package/build/server/chunks/{Button-Cs1aE6ka.js → Button-WKgiLWZI.js} +4 -9
  135. package/build/server/chunks/Button-WKgiLWZI.js.map +1 -0
  136. package/build/server/chunks/{EmptyState-DDFH1K8g.js → EmptyState-BUBqASsp.js} +3 -3
  137. package/build/server/chunks/{EmptyState-DDFH1K8g.js.map → EmptyState-BUBqASsp.js.map} +1 -1
  138. package/build/server/chunks/{Icon-CEUrotA6.js → Icon-BNBAg85a.js} +3 -3
  139. package/build/server/chunks/Icon-BNBAg85a.js.map +1 -0
  140. package/build/server/chunks/{Shimmer-DB8W1zt6.js → Shimmer-C4uBVwxz.js} +2 -2
  141. package/build/server/chunks/{Shimmer-DB8W1zt6.js.map → Shimmer-C4uBVwxz.js.map} +1 -1
  142. package/build/server/chunks/{_error.svelte-uCOJNxvr.js → _error.svelte-DkIwmECt.js} +5 -5
  143. package/build/server/chunks/{_error.svelte-uCOJNxvr.js.map → _error.svelte-DkIwmECt.js.map} +1 -1
  144. package/build/server/chunks/{_layout.svelte-CtWmEJwe.js → _layout.svelte-DllETxmJ.js} +13 -7
  145. package/build/server/chunks/_layout.svelte-DllETxmJ.js.map +1 -0
  146. package/build/server/chunks/_page.svelte-BZSdLKE_.js +118 -0
  147. package/build/server/chunks/_page.svelte-BZSdLKE_.js.map +1 -0
  148. package/build/server/chunks/{_page.svelte-CxWcQ0Am.js → _page.svelte-Cmuco1mC.js} +84 -199
  149. package/build/server/chunks/_page.svelte-Cmuco1mC.js.map +1 -0
  150. package/build/server/chunks/{_page.svelte-BgevQjq1.js → _page.svelte-Co5sF7W-.js} +12 -11
  151. package/build/server/chunks/{_page.svelte-BgevQjq1.js.map → _page.svelte-Co5sF7W-.js.map} +1 -1
  152. package/build/server/chunks/{_page.svelte-DO4oa_LY.js → _page.svelte-CpL3R-VI.js} +8 -8
  153. package/build/server/chunks/{_page.svelte-DO4oa_LY.js.map → _page.svelte-CpL3R-VI.js.map} +1 -1
  154. package/build/server/chunks/_page.svelte-DDSzYLUs.js +137 -0
  155. package/build/server/chunks/_page.svelte-DDSzYLUs.js.map +1 -0
  156. package/build/server/chunks/_page.svelte-JIkgFUFf.js +26 -0
  157. package/build/server/chunks/_page.svelte-JIkgFUFf.js.map +1 -0
  158. package/build/server/chunks/{_page.svelte-CVq6tRb3.js → _page.svelte-Y9-O5a5w.js} +10 -9
  159. package/build/server/chunks/_page.svelte-Y9-O5a5w.js.map +1 -0
  160. package/build/server/chunks/{_page.svelte-BcZaKdX9.js → _page.svelte-fcX09N4d.js} +9 -9
  161. package/build/server/chunks/{_page.svelte-BcZaKdX9.js.map → _page.svelte-fcX09N4d.js.map} +1 -1
  162. package/build/server/chunks/{_server.ts-DYpJImqd.js → _server.ts-0Xr2fWaq.js} +9 -5
  163. package/build/server/chunks/_server.ts-0Xr2fWaq.js.map +1 -0
  164. package/build/server/chunks/{_server.ts-CTpcLUH8.js → _server.ts-2ixC-X3K.js} +20 -5
  165. package/build/server/chunks/_server.ts-2ixC-X3K.js.map +1 -0
  166. package/build/server/chunks/{_server.ts-CAxsWKvS.js → _server.ts-40c_epk8.js} +20 -4
  167. package/build/server/chunks/_server.ts-40c_epk8.js.map +1 -0
  168. package/build/server/chunks/{_server.ts-WhTJBEJy.js → _server.ts-A9_tRR-K.js} +5 -4
  169. package/build/server/chunks/{_server.ts-WhTJBEJy.js.map → _server.ts-A9_tRR-K.js.map} +1 -1
  170. package/build/server/chunks/_server.ts-BRAzC6W1.js +98 -0
  171. package/build/server/chunks/_server.ts-BRAzC6W1.js.map +1 -0
  172. package/build/server/chunks/{_server.ts-DB_Kg97c.js → _server.ts-BScvgttw.js} +24 -4
  173. package/build/server/chunks/_server.ts-BScvgttw.js.map +1 -0
  174. package/build/server/chunks/{_server.ts-tSpgyl1D.js → _server.ts-Bjbr7glm.js} +4 -3
  175. package/build/server/chunks/_server.ts-Bjbr7glm.js.map +1 -0
  176. package/build/server/chunks/{_server.ts-COu0vNpd.js → _server.ts-BrqaMMAa.js} +7 -6
  177. package/build/server/chunks/_server.ts-BrqaMMAa.js.map +1 -0
  178. package/build/server/chunks/{_server.ts-vekTmWAx.js → _server.ts-BuYyCrnF.js} +6 -4
  179. package/build/server/chunks/_server.ts-BuYyCrnF.js.map +1 -0
  180. package/build/server/chunks/{_server.ts-DYvb9ijZ.js → _server.ts-ByPExYfO.js} +4 -3
  181. package/build/server/chunks/{_server.ts-DYvb9ijZ.js.map → _server.ts-ByPExYfO.js.map} +1 -1
  182. package/build/server/chunks/_server.ts-CjpQ10xh.js +123 -0
  183. package/build/server/chunks/_server.ts-CjpQ10xh.js.map +1 -0
  184. package/build/server/chunks/_server.ts-CyjDrcZN.js +21 -0
  185. package/build/server/chunks/_server.ts-CyjDrcZN.js.map +1 -0
  186. package/build/server/chunks/{_server.ts-DV8zTCF9.js → _server.ts-DOGUMzPx.js} +4 -3
  187. package/build/server/chunks/{_server.ts-DV8zTCF9.js.map → _server.ts-DOGUMzPx.js.map} +1 -1
  188. package/build/server/chunks/_server.ts-DZvfyuNj.js +15 -0
  189. package/build/server/chunks/_server.ts-DZvfyuNj.js.map +1 -0
  190. package/build/server/chunks/{_server.ts-XzT2UHM1.js → _server.ts-DkPPTUPo.js} +4 -3
  191. package/build/server/chunks/{_server.ts-XzT2UHM1.js.map → _server.ts-DkPPTUPo.js.map} +1 -1
  192. package/build/server/chunks/{_server.ts-Deok2y88.js → _server.ts-Ds_SUGC3.js} +184 -90
  193. package/build/server/chunks/_server.ts-Ds_SUGC3.js.map +1 -0
  194. package/build/server/chunks/{_server.ts-Ch-6iOHp.js → _server.ts-G8OeADGj.js} +141 -89
  195. package/build/server/chunks/_server.ts-G8OeADGj.js.map +1 -0
  196. package/build/server/chunks/{auth-DeCdZ83n.js → auth-DuunT7Cg.js} +2 -2
  197. package/build/server/chunks/{auth-DeCdZ83n.js.map → auth-DuunT7Cg.js.map} +1 -1
  198. package/build/server/chunks/{client-BdGHe_hY.js → client-DRtPDkMh.js} +4 -4
  199. package/build/server/chunks/{client-BdGHe_hY.js.map → client-DRtPDkMh.js.map} +1 -1
  200. package/build/server/chunks/client2-bqqmu0b7.js +7 -0
  201. package/build/server/chunks/{client2-CCBGA-2V.js.map → client2-bqqmu0b7.js.map} +1 -1
  202. package/build/server/chunks/close-BGlLztTb.js +192 -0
  203. package/build/server/chunks/close-BGlLztTb.js.map +1 -0
  204. package/build/server/chunks/events-handler-Dm1mNPQP.js +20 -0
  205. package/build/server/chunks/events-handler-Dm1mNPQP.js.map +1 -0
  206. package/build/server/chunks/html-FW6Ia4bL.js +8 -0
  207. package/build/server/chunks/html-FW6Ia4bL.js.map +1 -0
  208. package/build/server/chunks/{shared-server-sSGG17Df.js → index-CoD1IJuy.js} +2 -11
  209. package/build/server/chunks/index-CoD1IJuy.js.map +1 -0
  210. package/build/server/chunks/{index-DwaY1cAm.js → index-DP9bWJrR.js} +2 -2
  211. package/build/server/chunks/{index-DwaY1cAm.js.map → index-DP9bWJrR.js.map} +1 -1
  212. package/build/server/chunks/{index-server-CrDaL06Y.js → index-server-BUmV4MIG.js} +2 -2
  213. package/build/server/chunks/index-server-BUmV4MIG.js.map +1 -0
  214. package/build/server/chunks/index-server2-BJrT0wnA.js +5 -0
  215. package/build/server/chunks/index-server2-BJrT0wnA.js.map +1 -0
  216. package/build/server/chunks/{index2-CgclKpUj.js → index2-D5Y19GKR.js} +2 -2
  217. package/build/server/chunks/index2-D5Y19GKR.js.map +1 -0
  218. package/build/server/chunks/{library-apns-BqJbvSKh.js → library-apns-Cf-E-DhM.js} +5 -2
  219. package/build/server/chunks/library-apns-Cf-E-DhM.js.map +1 -0
  220. package/build/server/chunks/providers-DtstoHQ0.js +17 -0
  221. package/build/server/chunks/providers-DtstoHQ0.js.map +1 -0
  222. package/build/server/chunks/{pty-manager-BQVB7IVj.js → pty-manager-TyMUpDA9.js} +41 -9
  223. package/build/server/chunks/pty-manager-TyMUpDA9.js.map +1 -0
  224. package/build/server/chunks/{root-DDSnEAZv.js → root-CATOR_0t.js} +2 -2
  225. package/build/server/chunks/root-CATOR_0t.js.map +1 -0
  226. package/build/server/chunks/shared-server-DaWdgxVh.js +11 -0
  227. package/build/server/chunks/shared-server-DaWdgxVh.js.map +1 -0
  228. package/build/server/chunks/{state.svelte-hBbXlUak.js → state.svelte-CftllyvC.js} +3 -3
  229. package/build/server/chunks/state.svelte-CftllyvC.js.map +1 -0
  230. package/build/server/chunks/{stores-DHNzYNpX.js → stores-BjL57aOK.js} +4 -4
  231. package/build/server/chunks/{stores-DHNzYNpX.js.map → stores-BjL57aOK.js.map} +1 -1
  232. package/build/server/index.js +173 -6
  233. package/build/server/index.js.map +1 -1
  234. package/build/server/manifest.js +53 -30
  235. package/build/server/manifest.js.map +1 -1
  236. package/package.json +24 -6
  237. package/scripts/dev.mjs +361 -0
  238. package/scripts/install.sh +11 -3
  239. package/scripts/{fix-generated-types.sh → postgen-types.sh} +2 -2
  240. package/scripts/setup.cjs +219 -24
  241. package/scripts/vercel-env-commands.sh +3 -3
  242. package/server.ts +3 -3
  243. package/src/app.html +163 -0
  244. package/src/lib/modules/client/activity/ActivityFeed.svelte +279 -0
  245. package/src/lib/modules/client/activity/index.ts +8 -0
  246. package/src/lib/modules/client/activity/store.svelte.ts +478 -0
  247. package/src/lib/modules/client/activity/summarizer.ts +224 -0
  248. package/src/lib/modules/client/common/Card.svelte +2 -9
  249. package/src/lib/modules/client/common/EmptyState.svelte +2 -20
  250. package/src/lib/modules/client/common/Icon.svelte +3 -7
  251. package/src/lib/modules/client/common/StatusBadge.svelte +2 -4
  252. package/src/lib/modules/client/common/config-guard.ts +22 -2
  253. package/src/lib/modules/client/common/index.ts +1 -1
  254. package/src/lib/modules/client/common/time.ts +27 -9
  255. package/src/lib/modules/client/dashboard/DashboardCard.svelte +374 -0
  256. package/src/lib/modules/client/dashboard/DashboardView.svelte +66 -0
  257. package/src/lib/modules/client/dashboard/index.ts +12 -0
  258. package/src/lib/modules/client/dashboard/store.svelte.ts +663 -0
  259. package/src/lib/modules/client/dashboard/summarizer.ts +205 -0
  260. package/src/lib/modules/client/neurolink/fetch-proxy.ts +70 -0
  261. package/src/lib/modules/client/neurolink/provider-config.ts +111 -0
  262. package/src/lib/modules/client/terminal/ChatView.svelte +46 -43
  263. package/src/lib/modules/client/terminal/CommandPalette.svelte +3 -12
  264. package/src/lib/modules/client/terminal/ConnectionStatus.svelte +3 -6
  265. package/src/lib/modules/client/terminal/LaunchSheet.svelte +10 -21
  266. package/src/lib/modules/client/terminal/QuickKeys.svelte +4 -11
  267. package/src/lib/modules/client/terminal/ShortcutsHelp.svelte +3 -6
  268. package/src/lib/modules/client/terminal/keyboard-shortcuts.ts +5 -7
  269. package/src/lib/modules/client/terminal/xterm-wrapper.ts +27 -47
  270. package/src/lib/modules/server/apn/library-apns.ts +6 -3
  271. package/src/lib/modules/server/apn/notification-history.ts +2 -2
  272. package/src/lib/modules/server/apn/notification-sessions.ts +1 -3
  273. package/src/lib/modules/server/apn/pending-requests.ts +1 -1
  274. package/src/lib/modules/server/apn/types.ts +2 -52
  275. package/src/lib/modules/server/cli/index.ts +1 -30
  276. package/src/lib/modules/server/cli/runner.ts +7 -15
  277. package/src/lib/modules/server/fcm/fcm-service.ts +2 -2
  278. package/src/lib/modules/server/sessions/jsonl-parser.ts +97 -42
  279. package/src/lib/modules/server/sessions/jsonl-reader.ts +144 -76
  280. package/src/lib/modules/server/sessions/opencode-reader.ts +1 -1
  281. package/src/lib/modules/server/sessions/process-detector.ts +72 -31
  282. package/src/lib/modules/server/sessions/types.ts +2 -42
  283. package/src/lib/modules/server/terminal/holder-client.ts +11 -35
  284. package/src/lib/modules/server/terminal/opencode-watcher.ts +16 -24
  285. package/src/lib/modules/server/terminal/pty-manager.ts +40 -45
  286. package/src/lib/modules/server/terminal/session-watcher.ts +15 -17
  287. package/src/lib/modules/server/terminal/terminal-store.ts +1 -1
  288. package/src/lib/modules/server/ws/events-handler.ts +1 -16
  289. package/src/lib/modules/server/ws/keepalive.ts +1 -5
  290. package/src/lib/modules/server/ws/server.ts +1 -1
  291. package/src/lib/modules/server/ws/session-handler.ts +20 -86
  292. package/src/lib/modules/server/ws/terminal-handler.ts +28 -51
  293. package/src/lib/modules/server/ws/ticket-store.ts +1 -1
  294. package/src/lib/modules/shared/providers.ts +21 -0
  295. package/src/lib/types/activity.ts +18 -0
  296. package/src/lib/types/apn.ts +43 -0
  297. package/src/lib/types/cli.ts +39 -0
  298. package/src/lib/types/common.ts +39 -0
  299. package/src/lib/types/dashboard.ts +4 -0
  300. package/src/lib/types/generated/Client.ts +1656 -0
  301. package/src/{generated/types → lib/types/generated}/WsProtocol.ts +344 -2
  302. package/src/lib/types/index.ts +28 -0
  303. package/src/lib/types/neurolink.ts +4 -0
  304. package/src/lib/types/server.ts +93 -0
  305. package/src/lib/types/sessions.ts +59 -0
  306. package/src/lib/types/terminal-client.ts +132 -0
  307. package/src/lib/types/ws.ts +161 -0
  308. package/src/routes/+error.svelte +7 -2
  309. package/src/routes/+layout.server.ts +9 -0
  310. package/src/routes/+layout.svelte +36 -7
  311. package/src/routes/+page.server.ts +7 -0
  312. package/src/routes/+page.svelte +85 -35
  313. package/src/routes/activity/+page.server.ts +7 -0
  314. package/src/routes/activity/+page.svelte +58 -0
  315. package/src/routes/api/health/+server.ts +32 -19
  316. package/src/routes/api/neurolink-proxy/+server.ts +136 -0
  317. package/src/routes/api/notify/+server.ts +190 -87
  318. package/src/routes/api/sessions/+server.ts +1 -1
  319. package/src/routes/api/sessions/connect/+server.ts +10 -6
  320. package/src/routes/api/terminals/+server.ts +20 -1
  321. package/src/routes/api/terminals/[id]/+server.ts +16 -2
  322. package/src/routes/api/webhook/+server.ts +5 -33
  323. package/src/routes/api/ws-ticket/+server.ts +4 -4
  324. package/src/routes/config/+page.server.ts +9 -0
  325. package/src/routes/config/+page.svelte +118 -25
  326. package/src/routes/neurolink/+page.server.ts +10 -0
  327. package/src/routes/neurolink/+page.svelte +331 -0
  328. package/src/routes/project/+page.svelte +17 -12
  329. package/src/routes/session/[id]/+page.svelte +146 -62
  330. package/src/routes/terminals/+page.svelte +2 -2
  331. package/src/routes/terminals/[id]/+page.svelte +99 -88
  332. package/svelte.config.js +1 -3
  333. package/tsconfig.json +1 -0
  334. package/build/client/_app/immutable/assets/2.CAShZ7lQ.css +0 -1
  335. package/build/client/_app/immutable/assets/2.CAShZ7lQ.css.br +0 -1
  336. package/build/client/_app/immutable/assets/2.CAShZ7lQ.css.gz +0 -0
  337. package/build/client/_app/immutable/assets/3.DGDHCVnW.css.br +0 -0
  338. package/build/client/_app/immutable/assets/3.DGDHCVnW.css.gz +0 -0
  339. package/build/client/_app/immutable/chunks/B5NAKyil.js +0 -20
  340. package/build/client/_app/immutable/chunks/B5NAKyil.js.br +0 -0
  341. package/build/client/_app/immutable/chunks/B5NAKyil.js.gz +0 -0
  342. package/build/client/_app/immutable/chunks/B8XegpSE.js +0 -1
  343. package/build/client/_app/immutable/chunks/B8XegpSE.js.br +0 -0
  344. package/build/client/_app/immutable/chunks/B8XegpSE.js.gz +0 -0
  345. package/build/client/_app/immutable/chunks/B8zoBsv3.js +0 -6
  346. package/build/client/_app/immutable/chunks/B8zoBsv3.js.br +0 -0
  347. package/build/client/_app/immutable/chunks/B8zoBsv3.js.gz +0 -0
  348. package/build/client/_app/immutable/chunks/BIaXC2t9.js +0 -1
  349. package/build/client/_app/immutable/chunks/BIaXC2t9.js.br +0 -0
  350. package/build/client/_app/immutable/chunks/BIaXC2t9.js.gz +0 -0
  351. package/build/client/_app/immutable/chunks/BOYo8yTr.js +0 -1
  352. package/build/client/_app/immutable/chunks/BOYo8yTr.js.br +0 -0
  353. package/build/client/_app/immutable/chunks/BOYo8yTr.js.gz +0 -0
  354. package/build/client/_app/immutable/chunks/Bu1aqm5j.js +0 -1
  355. package/build/client/_app/immutable/chunks/Bu1aqm5j.js.br +0 -0
  356. package/build/client/_app/immutable/chunks/Bu1aqm5j.js.gz +0 -0
  357. package/build/client/_app/immutable/chunks/CQjSATpv.js +0 -61
  358. package/build/client/_app/immutable/chunks/CQjSATpv.js.br +0 -0
  359. package/build/client/_app/immutable/chunks/CQjSATpv.js.gz +0 -0
  360. package/build/client/_app/immutable/chunks/CRbaG9cv.js.br +0 -0
  361. package/build/client/_app/immutable/chunks/CSoRdFvv.js.br +0 -0
  362. package/build/client/_app/immutable/chunks/CSoRdFvv.js.gz +0 -0
  363. package/build/client/_app/immutable/chunks/CZHsSL_X.js.br +0 -0
  364. package/build/client/_app/immutable/chunks/CZHsSL_X.js.gz +0 -0
  365. package/build/client/_app/immutable/chunks/CiF38mQq.js.br +0 -0
  366. package/build/client/_app/immutable/chunks/CiF38mQq.js.gz +0 -0
  367. package/build/client/_app/immutable/chunks/DSU1n5N_.js +0 -1
  368. package/build/client/_app/immutable/chunks/DSU1n5N_.js.br +0 -0
  369. package/build/client/_app/immutable/chunks/DSU1n5N_.js.gz +0 -0
  370. package/build/client/_app/immutable/chunks/DVkn4r72.js +0 -1
  371. package/build/client/_app/immutable/chunks/DVkn4r72.js.br +0 -0
  372. package/build/client/_app/immutable/chunks/DVkn4r72.js.gz +0 -0
  373. package/build/client/_app/immutable/chunks/DjsDGxCa.js.br +0 -0
  374. package/build/client/_app/immutable/chunks/DjsDGxCa.js.gz +0 -0
  375. package/build/client/_app/immutable/chunks/UJOiqIYE.js.br +0 -0
  376. package/build/client/_app/immutable/chunks/UJOiqIYE.js.gz +0 -0
  377. package/build/client/_app/immutable/chunks/r0JawsZc.js +0 -2
  378. package/build/client/_app/immutable/chunks/r0JawsZc.js.br +0 -0
  379. package/build/client/_app/immutable/chunks/r0JawsZc.js.gz +0 -0
  380. package/build/client/_app/immutable/entry/app.CU7KVZja.js +0 -2
  381. package/build/client/_app/immutable/entry/app.CU7KVZja.js.br +0 -0
  382. package/build/client/_app/immutable/entry/app.CU7KVZja.js.gz +0 -0
  383. package/build/client/_app/immutable/entry/start.RAMZY19t.js +0 -1
  384. package/build/client/_app/immutable/entry/start.RAMZY19t.js.br +0 -2
  385. package/build/client/_app/immutable/entry/start.RAMZY19t.js.gz +0 -0
  386. package/build/client/_app/immutable/nodes/0.Bi3XYMSu.js +0 -1
  387. package/build/client/_app/immutable/nodes/0.Bi3XYMSu.js.br +0 -0
  388. package/build/client/_app/immutable/nodes/0.Bi3XYMSu.js.gz +0 -0
  389. package/build/client/_app/immutable/nodes/1.DTmfBFmm.js +0 -1
  390. package/build/client/_app/immutable/nodes/1.DTmfBFmm.js.br +0 -0
  391. package/build/client/_app/immutable/nodes/1.DTmfBFmm.js.gz +0 -0
  392. package/build/client/_app/immutable/nodes/2.Cm269yzt.js +0 -1
  393. package/build/client/_app/immutable/nodes/2.Cm269yzt.js.br +0 -0
  394. package/build/client/_app/immutable/nodes/2.Cm269yzt.js.gz +0 -0
  395. package/build/client/_app/immutable/nodes/3.3yohCM25.js +0 -3
  396. package/build/client/_app/immutable/nodes/3.3yohCM25.js.br +0 -0
  397. package/build/client/_app/immutable/nodes/3.3yohCM25.js.gz +0 -0
  398. package/build/client/_app/immutable/nodes/4.C25c5hMg.js +0 -1
  399. package/build/client/_app/immutable/nodes/4.C25c5hMg.js.br +0 -0
  400. package/build/client/_app/immutable/nodes/4.C25c5hMg.js.gz +0 -0
  401. package/build/client/_app/immutable/nodes/5.DIkXVP4q.js.br +0 -0
  402. package/build/client/_app/immutable/nodes/5.DIkXVP4q.js.gz +0 -0
  403. package/build/client/_app/immutable/nodes/6.BPL-HzUX.js +0 -2
  404. package/build/client/_app/immutable/nodes/6.BPL-HzUX.js.br +0 -0
  405. package/build/client/_app/immutable/nodes/6.BPL-HzUX.js.gz +0 -0
  406. package/build/client/_app/immutable/nodes/7.IgEqce53.js +0 -2
  407. package/build/client/_app/immutable/nodes/7.IgEqce53.js.br +0 -0
  408. package/build/client/_app/immutable/nodes/7.IgEqce53.js.gz +0 -0
  409. package/build/server/chunks/0-DiORznXb.js +0 -9
  410. package/build/server/chunks/0-DiORznXb.js.map +0 -1
  411. package/build/server/chunks/1-D0N7vVhH.js +0 -9
  412. package/build/server/chunks/2-DfSav7a7.js +0 -9
  413. package/build/server/chunks/2-DfSav7a7.js.map +0 -1
  414. package/build/server/chunks/3-Ck7ewhOX.js +0 -9
  415. package/build/server/chunks/3-Ck7ewhOX.js.map +0 -1
  416. package/build/server/chunks/4-DV5MZUz_.js +0 -9
  417. package/build/server/chunks/4-DV5MZUz_.js.map +0 -1
  418. package/build/server/chunks/5-DJhoAjb0.js +0 -9
  419. package/build/server/chunks/5-DJhoAjb0.js.map +0 -1
  420. package/build/server/chunks/6-Cp8CzYbr.js +0 -9
  421. package/build/server/chunks/6-Cp8CzYbr.js.map +0 -1
  422. package/build/server/chunks/7-BA4xzUj3.js +0 -9
  423. package/build/server/chunks/7-BA4xzUj3.js.map +0 -1
  424. package/build/server/chunks/Button-Cs1aE6ka.js.map +0 -1
  425. package/build/server/chunks/Icon-CEUrotA6.js.map +0 -1
  426. package/build/server/chunks/_layout.svelte-CtWmEJwe.js.map +0 -1
  427. package/build/server/chunks/_page.svelte-BdYynOck.js +0 -85
  428. package/build/server/chunks/_page.svelte-BdYynOck.js.map +0 -1
  429. package/build/server/chunks/_page.svelte-CVq6tRb3.js.map +0 -1
  430. package/build/server/chunks/_page.svelte-CxWcQ0Am.js.map +0 -1
  431. package/build/server/chunks/_server.ts-BStnNIcq.js +0 -34
  432. package/build/server/chunks/_server.ts-BStnNIcq.js.map +0 -1
  433. package/build/server/chunks/_server.ts-CAxsWKvS.js.map +0 -1
  434. package/build/server/chunks/_server.ts-COu0vNpd.js.map +0 -1
  435. package/build/server/chunks/_server.ts-CTpcLUH8.js.map +0 -1
  436. package/build/server/chunks/_server.ts-Cf84YIaW.js +0 -25
  437. package/build/server/chunks/_server.ts-Cf84YIaW.js.map +0 -1
  438. package/build/server/chunks/_server.ts-Ch-6iOHp.js.map +0 -1
  439. package/build/server/chunks/_server.ts-CtH0dhUp.js +0 -71
  440. package/build/server/chunks/_server.ts-CtH0dhUp.js.map +0 -1
  441. package/build/server/chunks/_server.ts-DB_Kg97c.js.map +0 -1
  442. package/build/server/chunks/_server.ts-DYpJImqd.js.map +0 -1
  443. package/build/server/chunks/_server.ts-Deok2y88.js.map +0 -1
  444. package/build/server/chunks/_server.ts-tSpgyl1D.js.map +0 -1
  445. package/build/server/chunks/_server.ts-vekTmWAx.js.map +0 -1
  446. package/build/server/chunks/client2-CCBGA-2V.js +0 -7
  447. package/build/server/chunks/index-server-CrDaL06Y.js.map +0 -1
  448. package/build/server/chunks/index2-CgclKpUj.js.map +0 -1
  449. package/build/server/chunks/library-apns-BqJbvSKh.js.map +0 -1
  450. package/build/server/chunks/pty-manager-BQVB7IVj.js.map +0 -1
  451. package/build/server/chunks/root-DDSnEAZv.js.map +0 -1
  452. package/build/server/chunks/shared-server-sSGG17Df.js.map +0 -1
  453. package/build/server/chunks/state.svelte-hBbXlUak.js.map +0 -1
  454. package/src/generated/types/Client.ts +0 -589
  455. package/src/lib/types/config.ts +0 -1
  456. /package/build/client/_app/immutable/assets/{4.BFUut--w.css → 6.BFUut--w.css} +0 -0
  457. /package/build/client/_app/immutable/assets/{4.BFUut--w.css.br → 6.BFUut--w.css.br} +0 -0
  458. /package/build/client/_app/immutable/assets/{4.BFUut--w.css.gz → 6.BFUut--w.css.gz} +0 -0
  459. /package/build/client/_app/immutable/assets/{5.BTOx7yt7.css → 7.BTOx7yt7.css} +0 -0
  460. /package/build/client/_app/immutable/assets/{5.BTOx7yt7.css.br → 7.BTOx7yt7.css.br} +0 -0
  461. /package/build/client/_app/immutable/assets/{5.BTOx7yt7.css.gz → 7.BTOx7yt7.css.gz} +0 -0
  462. /package/build/client/_app/immutable/assets/{6.eZGZN-BF.css → 8.eZGZN-BF.css} +0 -0
  463. /package/build/client/_app/immutable/assets/{6.eZGZN-BF.css.br → 8.eZGZN-BF.css.br} +0 -0
  464. /package/build/client/_app/immutable/assets/{6.eZGZN-BF.css.gz → 8.eZGZN-BF.css.gz} +0 -0
  465. /package/build/client/_app/immutable/assets/{7.DwS5ZHBh.css → 9.DwS5ZHBh.css} +0 -0
  466. /package/build/client/_app/immutable/assets/{7.DwS5ZHBh.css.br → 9.DwS5ZHBh.css.br} +0 -0
  467. /package/build/client/_app/immutable/assets/{7.DwS5ZHBh.css.gz → 9.DwS5ZHBh.css.gz} +0 -0
  468. /package/src/{generated/types → lib/types/generated}/API.ts +0 -0
  469. /package/src/{generated/types → lib/types/generated}/APN.ts +0 -0
  470. /package/src/{generated/types → lib/types/generated}/CLI.ts +0 -0
  471. /package/src/{generated/types → lib/types/generated}/Config.ts +0 -0
  472. /package/src/{generated/types → lib/types/generated}/Holder.ts +0 -0
  473. /package/src/{generated/types → lib/types/generated}/JWT.ts +0 -0
  474. /package/src/{generated/types → lib/types/generated}/Notification.ts +0 -0
  475. /package/src/{generated/types → lib/types/generated}/OpenCode.ts +0 -0
  476. /package/src/{generated/types → lib/types/generated}/Sessions.ts +0 -0
  477. /package/src/{generated/types → lib/types/generated}/Terminal.ts +0 -0
  478. /package/src/{generated/types → lib/types/generated}/index.ts +0 -0
@@ -1 +0,0 @@
1
- import{a as y,b as u,H as _,E as g,h as t,C as o,g as i,d as l,e as d,i as p,j as m}from"./CZHsSL_X.js";function C(n,r){let s=null,E=t;var a;if(t){s=p;for(var e=m(document.head);e!==null&&(e.nodeType!==o||e.data!==n);)e=i(e);if(e===null)l(!1);else{var f=i(e);e.remove(),d(f)}}t||(a=document.head.appendChild(y()));try{u(()=>r(a),_|g)}finally{E&&(l(!0),d(s))}}export{C as h};
@@ -1 +0,0 @@
1
- import{F as L,x as Y,G as x,I as R,J as E,K as N,S as w,L as g,M as B,P as M,z as h,q as U,y as j,N as G,O as q,Q as z,R as K,T as Z,U as $,V as C,W as F,X as J,Y as T,Z as p}from"./CZHsSL_X.js";import{e as Q}from"./r0JawsZc.js";function I(e,r){return e===r||e?.[w]===r}function H(e={},r,n,t){var i=L.r,u=E;return Y(()=>{var o,f;return x(()=>{o=f,f=[],R(()=>{e!==n(...f)&&(r(e,...f),o&&I(n(...o),e)&&r(null,...o))})}),()=>{let a=u;for(;a!==i&&a.parent!==null&&a.parent.f&N;)a=a.parent;const v=()=>{f&&I(n(...f),e)&&r(null,...f)},l=a.teardown;a.teardown=()=>{v(),l?.()}}}),e}const V={get(e,r){let n=e.props.length;for(;n--;){let t=e.props[n];if(p(t)&&(t=t()),typeof t=="object"&&t!==null&&r in t)return t[r]}},set(e,r,n){let t=e.props.length;for(;t--;){let i=e.props[t];p(i)&&(i=i());const u=g(i,r);if(u&&u.set)return u.set(n),!0}return!1},getOwnPropertyDescriptor(e,r){let n=e.props.length;for(;n--;){let t=e.props[n];if(p(t)&&(t=t()),typeof t=="object"&&t!==null&&r in t){const i=g(t,r);return i&&!i.configurable&&(i.configurable=!0),i}}},has(e,r){if(r===w||r===T)return!1;for(let n of e.props)if(p(n)&&(n=n()),n!=null&&r in n)return!0;return!1},ownKeys(e){const r=[];for(let n of e.props)if(p(n)&&(n=n()),!!n){for(const t in n)r.includes(t)||r.push(t);for(const t of Object.getOwnPropertySymbols(n))r.includes(t)||r.push(t)}return r}};function m(...e){return new Proxy({props:e},V)}function k(e,r,n,t){var i=!K||(n&Z)!==0,u=(n&z)!==0,o=(n&J)!==0,f=t,a=!0,v=()=>(a&&(a=!1,f=o?R(t):t),f);let l;if(u){var y=w in e||T in e;l=g(e,r)?.set??(y&&r in e?s=>e[r]=s:void 0)}var c,O=!1;u?[c,O]=Q(()=>e[r]):c=e[r],c===void 0&&t!==void 0&&(c=v(),l&&(i&&B(),l(c)));var d;if(i?d=()=>{var s=e[r];return s===void 0?v():(a=!0,s)}:d=()=>{var s=e[r];return s!==void 0&&(f=void 0),s===void 0?f:s},i&&(n&M)===0)return d;if(l){var A=e.$$legacy;return(function(s,S){return arguments.length>0?((!i||!S||A||O)&&l(S?d():s),s):d()})}var P=!1,_=((n&$)!==0?C:F)(()=>(P=!1,d()));u&&h(_);var D=E;return(function(s,S){if(arguments.length>0){const b=S?h(_):i&&u?U(s):s;return j(_,b),P=!0,f!==void 0&&(f=b),s}return G&&P||(D.f&q)!==0?_.v:h(_)})}export{H as b,k as p,m as s};
@@ -1,61 +0,0 @@
1
- import{b as qn,l as jn,h as Qt}from"./CZHsSL_X.js";import{B as Zn}from"./r0JawsZc.js";function os(n,e,...r){var s=new Zn(n);qn(()=>{const t=e()??null;s.ensure(t,t&&(a=>t(a,...r)))},jn)}function gn(n){var e,r,s="";if(typeof n=="string"||typeof n=="number")s+=n;else if(typeof n=="object")if(Array.isArray(n)){var t=n.length;for(e=0;e<t;e++)n[e]&&(r=gn(n[e]))&&(s&&(s+=" "),s+=r)}else for(r in n)n[r]&&(s&&(s+=" "),s+=r);return s}function Yn(){for(var n,e,r=0,s="",t=arguments.length;r<t;r++)(n=arguments[r])&&(e=gn(n))&&(s&&(s+=" "),s+=e);return s}function cs(n){return typeof n=="object"?Yn(n):n??""}const Vt=[...`
2
- \r\f \v\uFEFF`];function Xn(n,e,r){var s=n==null?"":""+n;if(e&&(s=s?s+" "+e:e),r){for(var t of Object.keys(r))if(r[t])s=s?s+" "+t:t;else if(s.length)for(var a=t.length,l=0;(l=s.indexOf(t,l))>=0;){var c=l+a;(l===0||Vt.includes(s[l-1]))&&(c===s.length||Vt.includes(s[c]))?s=(l===0?"":s.substring(0,l))+s.substring(c+1):l=c}}return s===""?null:s}function Kt(n,e=!1){var r=e?" !important;":";",s="";for(var t of Object.keys(n)){var a=n[t];a!=null&&a!==""&&(s+=" "+t+": "+a+r)}return s}function it(n){return n[0]!=="-"||n[1]!=="-"?n.toLowerCase():n}function us(n,e){if(e){var r="",s,t;if(Array.isArray(e)?(s=e[0],t=e[1]):s=e,n){n=String(n).replaceAll(/\s*\/\*.*?\*\/\s*/g,"").trim();var a=!1,l=0,c=!1,o=[];s&&o.push(...Object.keys(s).map(it)),t&&o.push(...Object.keys(t).map(it));var h=0,p=-1;const v=n.length;for(var m=0;m<v;m++){var d=n[m];if(c?d==="/"&&n[m-1]==="*"&&(c=!1):a?a===d&&(a=!1):d==="/"&&n[m+1]==="*"?c=!0:d==='"'||d==="'"?a=d:d==="("?l++:d===")"&&l--,!c&&a===!1&&l===0){if(d===":"&&p===-1)p=m;else if(d===";"||m===v-1){if(p!==-1){var A=it(n.substring(h,p).trim());if(!o.includes(A)){d!==";"&&m++;var x=n.substring(h,m).trim();r+=" "+x+";"}}h=m+1,p=-1}}}}return s&&(r+=Kt(s)),t&&(r+=Kt(t,!0)),r=r.trim(),r===""?null:r}return n==null?null:String(n)}function ps(n,e,r,s,t,a){var l=n.__className;if(Qt||l!==r||l===void 0){var c=Xn(r,s,a);(!Qt||c!==n.getAttribute("class"))&&(c==null?n.removeAttribute("class"):e?n.className=c:n.setAttribute("class",c)),n.__className=r}else if(a&&t!==a)for(var o in a){var h=!!a[o];(t==null||h!==!!t[o])&&n.classList.toggle(o,h)}return a}const{entries:dn,setPrototypeOf:Jt,isFrozen:Qn,getPrototypeOf:Vn,getOwnPropertyDescriptor:Kn}=Object;let{freeze:M,seal:U,create:$e}=Object,{apply:ht,construct:ft}=typeof Reflect<"u"&&Reflect;M||(M=function(e){return e});U||(U=function(e){return e});ht||(ht=function(e,r){for(var s=arguments.length,t=new Array(s>2?s-2:0),a=2;a<s;a++)t[a-2]=arguments[a];return e.apply(r,t)});ft||(ft=function(e){for(var r=arguments.length,s=new Array(r>1?r-1:0),t=1;t<r;t++)s[t-1]=arguments[t];return new e(...s)});const Pe=P(Array.prototype.forEach),Jn=P(Array.prototype.lastIndexOf),en=P(Array.prototype.pop),ge=P(Array.prototype.push),er=P(Array.prototype.splice),Ue=P(String.prototype.toLowerCase),lt=P(String.prototype.toString),at=P(String.prototype.match),de=P(String.prototype.replace),tr=P(String.prototype.indexOf),nr=P(String.prototype.trim),$=P(Object.prototype.hasOwnProperty),O=P(RegExp.prototype.test),me=rr(TypeError);function P(n){return function(e){e instanceof RegExp&&(e.lastIndex=0);for(var r=arguments.length,s=new Array(r>1?r-1:0),t=1;t<r;t++)s[t-1]=arguments[t];return ht(n,e,s)}}function rr(n){return function(){for(var e=arguments.length,r=new Array(e),s=0;s<e;s++)r[s]=arguments[s];return ft(n,r)}}function k(n,e){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Ue;Jt&&Jt(n,null);let s=e.length;for(;s--;){let t=e[s];if(typeof t=="string"){const a=r(t);a!==t&&(Qn(e)||(e[s]=a),t=a)}n[t]=!0}return n}function sr(n){for(let e=0;e<n.length;e++)$(n,e)||(n[e]=null);return n}function W(n){const e=$e(null);for(const[r,s]of dn(n))$(n,r)&&(Array.isArray(s)?e[r]=sr(s):s&&typeof s=="object"&&s.constructor===Object?e[r]=W(s):e[r]=s);return e}function ke(n,e){for(;n!==null;){const s=Kn(n,e);if(s){if(s.get)return P(s.get);if(typeof s.value=="function")return P(s.value)}n=Vn(n)}function r(){return null}return r}const tn=M(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),ot=M(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),ct=M(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),ir=M(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),ut=M(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),lr=M(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),nn=M(["#text"]),rn=M(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns","slot"]),pt=M(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),sn=M(["accent","accentunder","align","bevelled","close","columnsalign","columnlines","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lspace","lquote","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),ve=M(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),ar=U(/\{\{[\w\W]*|[\w\W]*\}\}/gm),or=U(/<%[\w\W]*|[\w\W]*%>/gm),cr=U(/\$\{[\w\W]*/gm),ur=U(/^data-[\-\w.\u00B7-\uFFFF]+$/),pr=U(/^aria-[\-\w]+$/),mn=U(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),hr=U(/^(?:\w+script|data):/i),fr=U(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),kn=U(/^html$/i),gr=U(/^[a-z][.\w]*(-[.\w]+)+$/i);var ln=Object.freeze({__proto__:null,ARIA_ATTR:pr,ATTR_WHITESPACE:fr,CUSTOM_ELEMENT:gr,DATA_ATTR:ur,DOCTYPE_NAME:kn,ERB_EXPR:or,IS_ALLOWED_URI:mn,IS_SCRIPT_OR_DATA:hr,MUSTACHE_EXPR:ar,TMPLIT_EXPR:cr});const be={element:1,text:3,progressingInstruction:7,comment:8,document:9},dr=function(){return typeof window>"u"?null:window},mr=function(e,r){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let s=null;const t="data-tt-policy-suffix";r&&r.hasAttribute(t)&&(s=r.getAttribute(t));const a="dompurify"+(s?"#"+s:"");try{return e.createPolicy(a,{createHTML(l){return l},createScriptURL(l){return l}})}catch{return console.warn("TrustedTypes policy "+a+" could not be created."),null}},an=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function bn(){let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:dr();const e=g=>bn(g);if(e.version="3.3.3",e.removed=[],!n||!n.document||n.document.nodeType!==be.document||!n.Element)return e.isSupported=!1,e;let{document:r}=n;const s=r,t=s.currentScript,{DocumentFragment:a,HTMLTemplateElement:l,Node:c,Element:o,NodeFilter:h,NamedNodeMap:p=n.NamedNodeMap||n.MozNamedAttrMap,HTMLFormElement:m,DOMParser:d,trustedTypes:A}=n,x=o.prototype,v=ke(x,"cloneNode"),Se=ke(x,"remove"),_e=ke(x,"nextSibling"),Re=ke(x,"childNodes"),re=ke(x,"parentNode");if(typeof l=="function"){const g=r.createElement("template");g.content&&g.content.ownerDocument&&(r=g.content.ownerDocument)}let y,j="";const{implementation:Z,createNodeIterator:In,createDocumentFragment:Cn,getElementsByTagName:Dn}=r,{importNode:On}=s;let D=an();e.isSupported=typeof dn=="function"&&typeof re=="function"&&Z&&Z.createHTMLDocument!==void 0;const{MUSTACHE_EXPR:qe,ERB_EXPR:je,TMPLIT_EXPR:Ze,DATA_ATTR:Nn,ARIA_ATTR:Mn,IS_SCRIPT_OR_DATA:Pn,ATTR_WHITESPACE:Rt,CUSTOM_ELEMENT:vn}=ln;let{IS_ALLOWED_URI:yt}=ln,R=null;const Lt=k({},[...tn,...ot,...ct,...ut,...nn]);let L=null;const It=k({},[...rn,...pt,...sn,...ve]);let E=Object.seal($e(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),pe=null,ye=null;const V=Object.seal($e(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}}));let Ct=!0,Ye=!0,Dt=!1,Ot=!0,se=!1,Le=!0,K=!1,Xe=!1,Qe=!1,ie=!1,Ie=!1,Ce=!1,Nt=!0,Mt=!1;const zn="user-content-";let Ve=!0,he=!1,le={},H=null;const Ke=k({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let Pt=null;const vt=k({},["audio","video","img","source","image","track"]);let Je=null;const zt=k({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),De="http://www.w3.org/1998/Math/MathML",Oe="http://www.w3.org/2000/svg",Y="http://www.w3.org/1999/xhtml";let ae=Y,et=!1,tt=null;const $n=k({},[De,Oe,Y],lt);let Ne=k({},["mi","mo","mn","ms","mtext"]),Me=k({},["annotation-xml"]);const Un=k({},["title","style","font","a","script"]);let fe=null;const Fn=["application/xhtml+xml","text/html"],Bn="text/html";let _=null,oe=null;const Hn=r.createElement("form"),$t=function(i){return i instanceof RegExp||i instanceof Function},nt=function(){let i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(oe&&oe===i)){if((!i||typeof i!="object")&&(i={}),i=W(i),fe=Fn.indexOf(i.PARSER_MEDIA_TYPE)===-1?Bn:i.PARSER_MEDIA_TYPE,_=fe==="application/xhtml+xml"?lt:Ue,R=$(i,"ALLOWED_TAGS")?k({},i.ALLOWED_TAGS,_):Lt,L=$(i,"ALLOWED_ATTR")?k({},i.ALLOWED_ATTR,_):It,tt=$(i,"ALLOWED_NAMESPACES")?k({},i.ALLOWED_NAMESPACES,lt):$n,Je=$(i,"ADD_URI_SAFE_ATTR")?k(W(zt),i.ADD_URI_SAFE_ATTR,_):zt,Pt=$(i,"ADD_DATA_URI_TAGS")?k(W(vt),i.ADD_DATA_URI_TAGS,_):vt,H=$(i,"FORBID_CONTENTS")?k({},i.FORBID_CONTENTS,_):Ke,pe=$(i,"FORBID_TAGS")?k({},i.FORBID_TAGS,_):W({}),ye=$(i,"FORBID_ATTR")?k({},i.FORBID_ATTR,_):W({}),le=$(i,"USE_PROFILES")?i.USE_PROFILES:!1,Ct=i.ALLOW_ARIA_ATTR!==!1,Ye=i.ALLOW_DATA_ATTR!==!1,Dt=i.ALLOW_UNKNOWN_PROTOCOLS||!1,Ot=i.ALLOW_SELF_CLOSE_IN_ATTR!==!1,se=i.SAFE_FOR_TEMPLATES||!1,Le=i.SAFE_FOR_XML!==!1,K=i.WHOLE_DOCUMENT||!1,ie=i.RETURN_DOM||!1,Ie=i.RETURN_DOM_FRAGMENT||!1,Ce=i.RETURN_TRUSTED_TYPE||!1,Qe=i.FORCE_BODY||!1,Nt=i.SANITIZE_DOM!==!1,Mt=i.SANITIZE_NAMED_PROPS||!1,Ve=i.KEEP_CONTENT!==!1,he=i.IN_PLACE||!1,yt=i.ALLOWED_URI_REGEXP||mn,ae=i.NAMESPACE||Y,Ne=i.MATHML_TEXT_INTEGRATION_POINTS||Ne,Me=i.HTML_INTEGRATION_POINTS||Me,E=i.CUSTOM_ELEMENT_HANDLING||{},i.CUSTOM_ELEMENT_HANDLING&&$t(i.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(E.tagNameCheck=i.CUSTOM_ELEMENT_HANDLING.tagNameCheck),i.CUSTOM_ELEMENT_HANDLING&&$t(i.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(E.attributeNameCheck=i.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),i.CUSTOM_ELEMENT_HANDLING&&typeof i.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(E.allowCustomizedBuiltInElements=i.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),se&&(Ye=!1),Ie&&(ie=!0),le&&(R=k({},nn),L=$e(null),le.html===!0&&(k(R,tn),k(L,rn)),le.svg===!0&&(k(R,ot),k(L,pt),k(L,ve)),le.svgFilters===!0&&(k(R,ct),k(L,pt),k(L,ve)),le.mathMl===!0&&(k(R,ut),k(L,sn),k(L,ve))),$(i,"ADD_TAGS")||(V.tagCheck=null),$(i,"ADD_ATTR")||(V.attributeCheck=null),i.ADD_TAGS&&(typeof i.ADD_TAGS=="function"?V.tagCheck=i.ADD_TAGS:(R===Lt&&(R=W(R)),k(R,i.ADD_TAGS,_))),i.ADD_ATTR&&(typeof i.ADD_ATTR=="function"?V.attributeCheck=i.ADD_ATTR:(L===It&&(L=W(L)),k(L,i.ADD_ATTR,_))),i.ADD_URI_SAFE_ATTR&&k(Je,i.ADD_URI_SAFE_ATTR,_),i.FORBID_CONTENTS&&(H===Ke&&(H=W(H)),k(H,i.FORBID_CONTENTS,_)),i.ADD_FORBID_CONTENTS&&(H===Ke&&(H=W(H)),k(H,i.ADD_FORBID_CONTENTS,_)),Ve&&(R["#text"]=!0),K&&k(R,["html","head","body"]),R.table&&(k(R,["tbody"]),delete pe.tbody),i.TRUSTED_TYPES_POLICY){if(typeof i.TRUSTED_TYPES_POLICY.createHTML!="function")throw me('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof i.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw me('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');y=i.TRUSTED_TYPES_POLICY,j=y.createHTML("")}else y===void 0&&(y=mr(A,t)),y!==null&&typeof j=="string"&&(j=y.createHTML(""));M&&M(i),oe=i}},Ut=k({},[...ot,...ct,...ir]),Ft=k({},[...ut,...lr]),Gn=function(i){let u=re(i);(!u||!u.tagName)&&(u={namespaceURI:ae,tagName:"template"});const f=Ue(i.tagName),w=Ue(u.tagName);return tt[i.namespaceURI]?i.namespaceURI===Oe?u.namespaceURI===Y?f==="svg":u.namespaceURI===De?f==="svg"&&(w==="annotation-xml"||Ne[w]):!!Ut[f]:i.namespaceURI===De?u.namespaceURI===Y?f==="math":u.namespaceURI===Oe?f==="math"&&Me[w]:!!Ft[f]:i.namespaceURI===Y?u.namespaceURI===Oe&&!Me[w]||u.namespaceURI===De&&!Ne[w]?!1:!Ft[f]&&(Un[f]||!Ut[f]):!!(fe==="application/xhtml+xml"&&tt[i.namespaceURI]):!1},G=function(i){ge(e.removed,{element:i});try{re(i).removeChild(i)}catch{Se(i)}},J=function(i,u){try{ge(e.removed,{attribute:u.getAttributeNode(i),from:u})}catch{ge(e.removed,{attribute:null,from:u})}if(u.removeAttribute(i),i==="is")if(ie||Ie)try{G(u)}catch{}else try{u.setAttribute(i,"")}catch{}},Bt=function(i){let u=null,f=null;if(Qe)i="<remove></remove>"+i;else{const S=at(i,/^[\r\n\t ]+/);f=S&&S[0]}fe==="application/xhtml+xml"&&ae===Y&&(i='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+i+"</body></html>");const w=y?y.createHTML(i):i;if(ae===Y)try{u=new d().parseFromString(w,fe)}catch{}if(!u||!u.documentElement){u=Z.createDocument(ae,"template",null);try{u.documentElement.innerHTML=et?j:w}catch{}}const C=u.body||u.documentElement;return i&&f&&C.insertBefore(r.createTextNode(f),C.childNodes[0]||null),ae===Y?Dn.call(u,K?"html":"body")[0]:K?u.documentElement:C},Ht=function(i){return In.call(i.ownerDocument||i,i,h.SHOW_ELEMENT|h.SHOW_COMMENT|h.SHOW_TEXT|h.SHOW_PROCESSING_INSTRUCTION|h.SHOW_CDATA_SECTION,null)},rt=function(i){return i instanceof m&&(typeof i.nodeName!="string"||typeof i.textContent!="string"||typeof i.removeChild!="function"||!(i.attributes instanceof p)||typeof i.removeAttribute!="function"||typeof i.setAttribute!="function"||typeof i.namespaceURI!="string"||typeof i.insertBefore!="function"||typeof i.hasChildNodes!="function")},Gt=function(i){return typeof c=="function"&&i instanceof c};function X(g,i,u){Pe(g,f=>{f.call(e,i,u,oe)})}const Wt=function(i){let u=null;if(X(D.beforeSanitizeElements,i,null),rt(i))return G(i),!0;const f=_(i.nodeName);if(X(D.uponSanitizeElement,i,{tagName:f,allowedTags:R}),Le&&i.hasChildNodes()&&!Gt(i.firstElementChild)&&O(/<[/\w!]/g,i.innerHTML)&&O(/<[/\w!]/g,i.textContent)||i.nodeType===be.progressingInstruction||Le&&i.nodeType===be.comment&&O(/<[/\w]/g,i.data))return G(i),!0;if(!(V.tagCheck instanceof Function&&V.tagCheck(f))&&(!R[f]||pe[f])){if(!pe[f]&&jt(f)&&(E.tagNameCheck instanceof RegExp&&O(E.tagNameCheck,f)||E.tagNameCheck instanceof Function&&E.tagNameCheck(f)))return!1;if(Ve&&!H[f]){const w=re(i)||i.parentNode,C=Re(i)||i.childNodes;if(C&&w){const S=C.length;for(let z=S-1;z>=0;--z){const Q=v(C[z],!0);Q.__removalCount=(i.__removalCount||0)+1,w.insertBefore(Q,_e(i))}}}return G(i),!0}return i instanceof o&&!Gn(i)||(f==="noscript"||f==="noembed"||f==="noframes")&&O(/<\/no(script|embed|frames)/i,i.innerHTML)?(G(i),!0):(se&&i.nodeType===be.text&&(u=i.textContent,Pe([qe,je,Ze],w=>{u=de(u,w," ")}),i.textContent!==u&&(ge(e.removed,{element:i.cloneNode()}),i.textContent=u)),X(D.afterSanitizeElements,i,null),!1)},qt=function(i,u,f){if(ye[u]||Nt&&(u==="id"||u==="name")&&(f in r||f in Hn))return!1;if(!(Ye&&!ye[u]&&O(Nn,u))){if(!(Ct&&O(Mn,u))){if(!(V.attributeCheck instanceof Function&&V.attributeCheck(u,i))){if(!L[u]||ye[u]){if(!(jt(i)&&(E.tagNameCheck instanceof RegExp&&O(E.tagNameCheck,i)||E.tagNameCheck instanceof Function&&E.tagNameCheck(i))&&(E.attributeNameCheck instanceof RegExp&&O(E.attributeNameCheck,u)||E.attributeNameCheck instanceof Function&&E.attributeNameCheck(u,i))||u==="is"&&E.allowCustomizedBuiltInElements&&(E.tagNameCheck instanceof RegExp&&O(E.tagNameCheck,f)||E.tagNameCheck instanceof Function&&E.tagNameCheck(f))))return!1}else if(!Je[u]){if(!O(yt,de(f,Rt,""))){if(!((u==="src"||u==="xlink:href"||u==="href")&&i!=="script"&&tr(f,"data:")===0&&Pt[i])){if(!(Dt&&!O(Pn,de(f,Rt,"")))){if(f)return!1}}}}}}}return!0},jt=function(i){return i!=="annotation-xml"&&at(i,vn)},Zt=function(i){X(D.beforeSanitizeAttributes,i,null);const{attributes:u}=i;if(!u||rt(i))return;const f={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:L,forceKeepAttr:void 0};let w=u.length;for(;w--;){const C=u[w],{name:S,namespaceURI:z,value:Q}=C,ce=_(S),st=Q;let I=S==="value"?st:nr(st);if(f.attrName=ce,f.attrValue=I,f.keepAttr=!0,f.forceKeepAttr=void 0,X(D.uponSanitizeAttribute,i,f),I=f.attrValue,Mt&&(ce==="id"||ce==="name")&&(J(S,i),I=zn+I),Le&&O(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,I)){J(S,i);continue}if(ce==="attributename"&&at(I,"href")){J(S,i);continue}if(f.forceKeepAttr)continue;if(!f.keepAttr){J(S,i);continue}if(!Ot&&O(/\/>/i,I)){J(S,i);continue}se&&Pe([qe,je,Ze],Xt=>{I=de(I,Xt," ")});const Yt=_(i.nodeName);if(!qt(Yt,ce,I)){J(S,i);continue}if(y&&typeof A=="object"&&typeof A.getAttributeType=="function"&&!z)switch(A.getAttributeType(Yt,ce)){case"TrustedHTML":{I=y.createHTML(I);break}case"TrustedScriptURL":{I=y.createScriptURL(I);break}}if(I!==st)try{z?i.setAttributeNS(z,S,I):i.setAttribute(S,I),rt(i)?G(i):en(e.removed)}catch{J(S,i)}}X(D.afterSanitizeAttributes,i,null)},Wn=function g(i){let u=null;const f=Ht(i);for(X(D.beforeSanitizeShadowDOM,i,null);u=f.nextNode();)X(D.uponSanitizeShadowNode,u,null),Wt(u),Zt(u),u.content instanceof a&&g(u.content);X(D.afterSanitizeShadowDOM,i,null)};return e.sanitize=function(g){let i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},u=null,f=null,w=null,C=null;if(et=!g,et&&(g="<!-->"),typeof g!="string"&&!Gt(g))if(typeof g.toString=="function"){if(g=g.toString(),typeof g!="string")throw me("dirty is not a string, aborting")}else throw me("toString is not a function");if(!e.isSupported)return g;if(Xe||nt(i),e.removed=[],typeof g=="string"&&(he=!1),he){if(g.nodeName){const Q=_(g.nodeName);if(!R[Q]||pe[Q])throw me("root node is forbidden and cannot be sanitized in-place")}}else if(g instanceof c)u=Bt("<!---->"),f=u.ownerDocument.importNode(g,!0),f.nodeType===be.element&&f.nodeName==="BODY"||f.nodeName==="HTML"?u=f:u.appendChild(f);else{if(!ie&&!se&&!K&&g.indexOf("<")===-1)return y&&Ce?y.createHTML(g):g;if(u=Bt(g),!u)return ie?null:Ce?j:""}u&&Qe&&G(u.firstChild);const S=Ht(he?g:u);for(;w=S.nextNode();)Wt(w),Zt(w),w.content instanceof a&&Wn(w.content);if(he)return g;if(ie){if(Ie)for(C=Cn.call(u.ownerDocument);u.firstChild;)C.appendChild(u.firstChild);else C=u;return(L.shadowroot||L.shadowrootmode)&&(C=On.call(s,C,!0)),C}let z=K?u.outerHTML:u.innerHTML;return K&&R["!doctype"]&&u.ownerDocument&&u.ownerDocument.doctype&&u.ownerDocument.doctype.name&&O(kn,u.ownerDocument.doctype.name)&&(z="<!DOCTYPE "+u.ownerDocument.doctype.name+`>
3
- `+z),se&&Pe([qe,je,Ze],Q=>{z=de(z,Q," ")}),y&&Ce?y.createHTML(z):z},e.setConfig=function(){let g=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};nt(g),Xe=!0},e.clearConfig=function(){oe=null,Xe=!1},e.isValidAttribute=function(g,i,u){oe||nt({});const f=_(g),w=_(i);return qt(f,w,u)},e.addHook=function(g,i){typeof i=="function"&&ge(D[g],i)},e.removeHook=function(g,i){if(i!==void 0){const u=Jn(D[g],i);return u===-1?void 0:er(D[g],u,1)[0]}return en(D[g])},e.removeHooks=function(g){D[g]=[]},e.removeAllHooks=function(){D=an()},e}var kr=bn();function kt(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var ne=kt();function xn(n){ne=n}var ee={exec:()=>null};function b(n,e=""){let r=typeof n=="string"?n:n.source,s={replace:(t,a)=>{let l=typeof a=="string"?a:a.source;return l=l.replace(N.caret,"$1"),r=r.replace(t,l),s},getRegex:()=>new RegExp(r,e)};return s}var br=(()=>{try{return!!new RegExp("(?<=1)(?<!1)")}catch{return!1}})(),N={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:n=>new RegExp(`^( {0,3}${n})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}#`),htmlBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}<(?:[a-z].*>|!--)`,"i"),blockquoteBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}>`)},xr=/^(?:[ \t]*(?:\n|$))+/,Tr=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,wr=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,Ee=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,Ar=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,bt=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,Tn=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,wn=b(Tn).replace(/bull/g,bt).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),Er=b(Tn).replace(/bull/g,bt).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),xt=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,Sr=/^[^\n]+/,Tt=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,_r=b(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",Tt).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),Rr=b(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,bt).getRegex(),Ge="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",wt=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,yr=b("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",wt).replace("tag",Ge).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),An=b(xt).replace("hr",Ee).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Ge).getRegex(),Lr=b(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",An).getRegex(),At={blockquote:Lr,code:Tr,def:_r,fences:wr,heading:Ar,hr:Ee,html:yr,lheading:wn,list:Rr,newline:xr,paragraph:An,table:ee,text:Sr},on=b("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",Ee).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Ge).getRegex(),Ir={...At,lheading:Er,table:on,paragraph:b(xt).replace("hr",Ee).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",on).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Ge).getRegex()},Cr={...At,html:b(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",wt).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:ee,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:b(xt).replace("hr",Ee).replace("heading",` *#{1,6} *[^
4
- ]`).replace("lheading",wn).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},Dr=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,Or=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,En=/^( {2,}|\\)\n(?!\s*$)/,Nr=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,ue=/[\p{P}\p{S}]/u,We=/[\s\p{P}\p{S}]/u,Et=/[^\s\p{P}\p{S}]/u,Mr=b(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,We).getRegex(),Sn=/(?!~)[\p{P}\p{S}]/u,Pr=/(?!~)[\s\p{P}\p{S}]/u,vr=/(?:[^\s\p{P}\p{S}]|~)/u,zr=b(/link|precode-code|html/,"g").replace("link",/\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",br?"(?<!`)()":"(^^|[^`])").replace("code",/(?<b>`+)[^`]+\k<b>(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),_n=/^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/,$r=b(_n,"u").replace(/punct/g,ue).getRegex(),Ur=b(_n,"u").replace(/punct/g,Sn).getRegex(),Rn="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",Fr=b(Rn,"gu").replace(/notPunctSpace/g,Et).replace(/punctSpace/g,We).replace(/punct/g,ue).getRegex(),Br=b(Rn,"gu").replace(/notPunctSpace/g,vr).replace(/punctSpace/g,Pr).replace(/punct/g,Sn).getRegex(),Hr=b("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,Et).replace(/punctSpace/g,We).replace(/punct/g,ue).getRegex(),Gr=b(/^~~?(?:((?!~)punct)|[^\s~])/,"u").replace(/punct/g,ue).getRegex(),Wr="^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)",qr=b(Wr,"gu").replace(/notPunctSpace/g,Et).replace(/punctSpace/g,We).replace(/punct/g,ue).getRegex(),jr=b(/\\(punct)/,"gu").replace(/punct/g,ue).getRegex(),Zr=b(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Yr=b(wt).replace("(?:-->|$)","-->").getRegex(),Xr=b("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",Yr).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Fe=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/,Qr=b(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label",Fe).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),yn=b(/^!?\[(label)\]\[(ref)\]/).replace("label",Fe).replace("ref",Tt).getRegex(),Ln=b(/^!?\[(ref)\](?:\[\])?/).replace("ref",Tt).getRegex(),Vr=b("reflink|nolink(?!\\()","g").replace("reflink",yn).replace("nolink",Ln).getRegex(),cn=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,St={_backpedal:ee,anyPunctuation:jr,autolink:Zr,blockSkip:zr,br:En,code:Or,del:ee,delLDelim:ee,delRDelim:ee,emStrongLDelim:$r,emStrongRDelimAst:Fr,emStrongRDelimUnd:Hr,escape:Dr,link:Qr,nolink:Ln,punctuation:Mr,reflink:yn,reflinkSearch:Vr,tag:Xr,text:Nr,url:ee},Kr={...St,link:b(/^!?\[(label)\]\((.*?)\)/).replace("label",Fe).getRegex(),reflink:b(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Fe).getRegex()},gt={...St,emStrongRDelimAst:Br,emStrongLDelim:Ur,delLDelim:Gr,delRDelim:qr,url:b(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",cn).replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:b(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol",cn).getRegex()},Jr={...gt,br:b(En).replace("{2,}","*").getRegex(),text:b(gt.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},ze={normal:At,gfm:Ir,pedantic:Cr},xe={normal:St,gfm:gt,breaks:Jr,pedantic:Kr},es={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},un=n=>es[n];function q(n,e){if(e){if(N.escapeTest.test(n))return n.replace(N.escapeReplace,un)}else if(N.escapeTestNoEncode.test(n))return n.replace(N.escapeReplaceNoEncode,un);return n}function pn(n){try{n=encodeURI(n).replace(N.percentDecode,"%")}catch{return null}return n}function hn(n,e){let r=n.replace(N.findPipe,(a,l,c)=>{let o=!1,h=l;for(;--h>=0&&c[h]==="\\";)o=!o;return o?"|":" |"}),s=r.split(N.splitPipe),t=0;if(s[0].trim()||s.shift(),s.length>0&&!s.at(-1)?.trim()&&s.pop(),e)if(s.length>e)s.splice(e);else for(;s.length<e;)s.push("");for(;t<s.length;t++)s[t]=s[t].trim().replace(N.slashPipe,"|");return s}function Te(n,e,r){let s=n.length;if(s===0)return"";let t=0;for(;t<s&&n.charAt(s-t-1)===e;)t++;return n.slice(0,s-t)}function ts(n,e){if(n.indexOf(e[1])===-1)return-1;let r=0;for(let s=0;s<n.length;s++)if(n[s]==="\\")s++;else if(n[s]===e[0])r++;else if(n[s]===e[1]&&(r--,r<0))return s;return r>0?-2:-1}function ns(n,e=0){let r=e,s="";for(let t of n)if(t===" "){let a=4-r%4;s+=" ".repeat(a),r+=a}else s+=t,r++;return s}function fn(n,e,r,s,t){let a=e.href,l=e.title||null,c=n[1].replace(t.other.outputLinkReplace,"$1");s.state.inLink=!0;let o={type:n[0].charAt(0)==="!"?"image":"link",raw:r,href:a,title:l,text:c,tokens:s.inlineTokens(c)};return s.state.inLink=!1,o}function rs(n,e,r){let s=n.match(r.other.indentCodeCompensation);if(s===null)return e;let t=s[1];return e.split(`
5
- `).map(a=>{let l=a.match(r.other.beginningSpace);if(l===null)return a;let[c]=l;return c.length>=t.length?a.slice(t.length):a}).join(`
6
- `)}var Be=class{options;rules;lexer;constructor(n){this.options=n||ne}space(n){let e=this.rules.block.newline.exec(n);if(e&&e[0].length>0)return{type:"space",raw:e[0]}}code(n){let e=this.rules.block.code.exec(n);if(e){let r=e[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?r:Te(r,`
7
- `)}}}fences(n){let e=this.rules.block.fences.exec(n);if(e){let r=e[0],s=rs(r,e[3]||"",this.rules);return{type:"code",raw:r,lang:e[2]?e[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):e[2],text:s}}}heading(n){let e=this.rules.block.heading.exec(n);if(e){let r=e[2].trim();if(this.rules.other.endingHash.test(r)){let s=Te(r,"#");(this.options.pedantic||!s||this.rules.other.endingSpaceChar.test(s))&&(r=s.trim())}return{type:"heading",raw:e[0],depth:e[1].length,text:r,tokens:this.lexer.inline(r)}}}hr(n){let e=this.rules.block.hr.exec(n);if(e)return{type:"hr",raw:Te(e[0],`
8
- `)}}blockquote(n){let e=this.rules.block.blockquote.exec(n);if(e){let r=Te(e[0],`
9
- `).split(`
10
- `),s="",t="",a=[];for(;r.length>0;){let l=!1,c=[],o;for(o=0;o<r.length;o++)if(this.rules.other.blockquoteStart.test(r[o]))c.push(r[o]),l=!0;else if(!l)c.push(r[o]);else break;r=r.slice(o);let h=c.join(`
11
- `),p=h.replace(this.rules.other.blockquoteSetextReplace,`
12
- $1`).replace(this.rules.other.blockquoteSetextReplace2,"");s=s?`${s}
13
- ${h}`:h,t=t?`${t}
14
- ${p}`:p;let m=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(p,a,!0),this.lexer.state.top=m,r.length===0)break;let d=a.at(-1);if(d?.type==="code")break;if(d?.type==="blockquote"){let A=d,x=A.raw+`
15
- `+r.join(`
16
- `),v=this.blockquote(x);a[a.length-1]=v,s=s.substring(0,s.length-A.raw.length)+v.raw,t=t.substring(0,t.length-A.text.length)+v.text;break}else if(d?.type==="list"){let A=d,x=A.raw+`
17
- `+r.join(`
18
- `),v=this.list(x);a[a.length-1]=v,s=s.substring(0,s.length-d.raw.length)+v.raw,t=t.substring(0,t.length-A.raw.length)+v.raw,r=x.substring(a.at(-1).raw.length).split(`
19
- `);continue}}return{type:"blockquote",raw:s,tokens:a,text:t}}}list(n){let e=this.rules.block.list.exec(n);if(e){let r=e[1].trim(),s=r.length>1,t={type:"list",raw:"",ordered:s,start:s?+r.slice(0,-1):"",loose:!1,items:[]};r=s?`\\d{1,9}\\${r.slice(-1)}`:`\\${r}`,this.options.pedantic&&(r=s?r:"[*+-]");let a=this.rules.other.listItemRegex(r),l=!1;for(;n;){let o=!1,h="",p="";if(!(e=a.exec(n))||this.rules.block.hr.test(n))break;h=e[0],n=n.substring(h.length);let m=ns(e[2].split(`
20
- `,1)[0],e[1].length),d=n.split(`
21
- `,1)[0],A=!m.trim(),x=0;if(this.options.pedantic?(x=2,p=m.trimStart()):A?x=e[1].length+1:(x=m.search(this.rules.other.nonSpaceChar),x=x>4?1:x,p=m.slice(x),x+=e[1].length),A&&this.rules.other.blankLine.test(d)&&(h+=d+`
22
- `,n=n.substring(d.length+1),o=!0),!o){let v=this.rules.other.nextBulletRegex(x),Se=this.rules.other.hrRegex(x),_e=this.rules.other.fencesBeginRegex(x),Re=this.rules.other.headingBeginRegex(x),re=this.rules.other.htmlBeginRegex(x),y=this.rules.other.blockquoteBeginRegex(x);for(;n;){let j=n.split(`
23
- `,1)[0],Z;if(d=j,this.options.pedantic?(d=d.replace(this.rules.other.listReplaceNesting," "),Z=d):Z=d.replace(this.rules.other.tabCharGlobal," "),_e.test(d)||Re.test(d)||re.test(d)||y.test(d)||v.test(d)||Se.test(d))break;if(Z.search(this.rules.other.nonSpaceChar)>=x||!d.trim())p+=`
24
- `+Z.slice(x);else{if(A||m.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||_e.test(m)||Re.test(m)||Se.test(m))break;p+=`
25
- `+d}A=!d.trim(),h+=j+`
26
- `,n=n.substring(j.length+1),m=Z.slice(x)}}t.loose||(l?t.loose=!0:this.rules.other.doubleBlankLine.test(h)&&(l=!0)),t.items.push({type:"list_item",raw:h,task:!!this.options.gfm&&this.rules.other.listIsTask.test(p),loose:!1,text:p,tokens:[]}),t.raw+=h}let c=t.items.at(-1);if(c)c.raw=c.raw.trimEnd(),c.text=c.text.trimEnd();else return;t.raw=t.raw.trimEnd();for(let o of t.items){if(this.lexer.state.top=!1,o.tokens=this.lexer.blockTokens(o.text,[]),o.task){if(o.text=o.text.replace(this.rules.other.listReplaceTask,""),o.tokens[0]?.type==="text"||o.tokens[0]?.type==="paragraph"){o.tokens[0].raw=o.tokens[0].raw.replace(this.rules.other.listReplaceTask,""),o.tokens[0].text=o.tokens[0].text.replace(this.rules.other.listReplaceTask,"");for(let p=this.lexer.inlineQueue.length-1;p>=0;p--)if(this.rules.other.listIsTask.test(this.lexer.inlineQueue[p].src)){this.lexer.inlineQueue[p].src=this.lexer.inlineQueue[p].src.replace(this.rules.other.listReplaceTask,"");break}}let h=this.rules.other.listTaskCheckbox.exec(o.raw);if(h){let p={type:"checkbox",raw:h[0]+" ",checked:h[0]!=="[ ]"};o.checked=p.checked,t.loose?o.tokens[0]&&["paragraph","text"].includes(o.tokens[0].type)&&"tokens"in o.tokens[0]&&o.tokens[0].tokens?(o.tokens[0].raw=p.raw+o.tokens[0].raw,o.tokens[0].text=p.raw+o.tokens[0].text,o.tokens[0].tokens.unshift(p)):o.tokens.unshift({type:"paragraph",raw:p.raw,text:p.raw,tokens:[p]}):o.tokens.unshift(p)}}if(!t.loose){let h=o.tokens.filter(m=>m.type==="space"),p=h.length>0&&h.some(m=>this.rules.other.anyLine.test(m.raw));t.loose=p}}if(t.loose)for(let o of t.items){o.loose=!0;for(let h of o.tokens)h.type==="text"&&(h.type="paragraph")}return t}}html(n){let e=this.rules.block.html.exec(n);if(e)return{type:"html",block:!0,raw:e[0],pre:e[1]==="pre"||e[1]==="script"||e[1]==="style",text:e[0]}}def(n){let e=this.rules.block.def.exec(n);if(e){let r=e[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal," "),s=e[2]?e[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",t=e[3]?e[3].substring(1,e[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):e[3];return{type:"def",tag:r,raw:e[0],href:s,title:t}}}table(n){let e=this.rules.block.table.exec(n);if(!e||!this.rules.other.tableDelimiter.test(e[2]))return;let r=hn(e[1]),s=e[2].replace(this.rules.other.tableAlignChars,"").split("|"),t=e[3]?.trim()?e[3].replace(this.rules.other.tableRowBlankLine,"").split(`
27
- `):[],a={type:"table",raw:e[0],header:[],align:[],rows:[]};if(r.length===s.length){for(let l of s)this.rules.other.tableAlignRight.test(l)?a.align.push("right"):this.rules.other.tableAlignCenter.test(l)?a.align.push("center"):this.rules.other.tableAlignLeft.test(l)?a.align.push("left"):a.align.push(null);for(let l=0;l<r.length;l++)a.header.push({text:r[l],tokens:this.lexer.inline(r[l]),header:!0,align:a.align[l]});for(let l of t)a.rows.push(hn(l,a.header.length).map((c,o)=>({text:c,tokens:this.lexer.inline(c),header:!1,align:a.align[o]})));return a}}lheading(n){let e=this.rules.block.lheading.exec(n);if(e){let r=e[1].trim();return{type:"heading",raw:e[0],depth:e[2].charAt(0)==="="?1:2,text:r,tokens:this.lexer.inline(r)}}}paragraph(n){let e=this.rules.block.paragraph.exec(n);if(e){let r=e[1].charAt(e[1].length-1)===`
28
- `?e[1].slice(0,-1):e[1];return{type:"paragraph",raw:e[0],text:r,tokens:this.lexer.inline(r)}}}text(n){let e=this.rules.block.text.exec(n);if(e)return{type:"text",raw:e[0],text:e[0],tokens:this.lexer.inline(e[0])}}escape(n){let e=this.rules.inline.escape.exec(n);if(e)return{type:"escape",raw:e[0],text:e[1]}}tag(n){let e=this.rules.inline.tag.exec(n);if(e)return!this.lexer.state.inLink&&this.rules.other.startATag.test(e[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(e[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(e[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(e[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:e[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:e[0]}}link(n){let e=this.rules.inline.link.exec(n);if(e){let r=e[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(r)){if(!this.rules.other.endAngleBracket.test(r))return;let a=Te(r.slice(0,-1),"\\");if((r.length-a.length)%2===0)return}else{let a=ts(e[2],"()");if(a===-2)return;if(a>-1){let l=(e[0].indexOf("!")===0?5:4)+e[1].length+a;e[2]=e[2].substring(0,a),e[0]=e[0].substring(0,l).trim(),e[3]=""}}let s=e[2],t="";if(this.options.pedantic){let a=this.rules.other.pedanticHrefTitle.exec(s);a&&(s=a[1],t=a[3])}else t=e[3]?e[3].slice(1,-1):"";return s=s.trim(),this.rules.other.startAngleBracket.test(s)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(r)?s=s.slice(1):s=s.slice(1,-1)),fn(e,{href:s&&s.replace(this.rules.inline.anyPunctuation,"$1"),title:t&&t.replace(this.rules.inline.anyPunctuation,"$1")},e[0],this.lexer,this.rules)}}reflink(n,e){let r;if((r=this.rules.inline.reflink.exec(n))||(r=this.rules.inline.nolink.exec(n))){let s=(r[2]||r[1]).replace(this.rules.other.multipleSpaceGlobal," "),t=e[s.toLowerCase()];if(!t){let a=r[0].charAt(0);return{type:"text",raw:a,text:a}}return fn(r,t,r[0],this.lexer,this.rules)}}emStrong(n,e,r=""){let s=this.rules.inline.emStrongLDelim.exec(n);if(!(!s||!s[1]&&!s[2]&&!s[3]&&!s[4]||s[4]&&r.match(this.rules.other.unicodeAlphaNumeric))&&(!(s[1]||s[3])||!r||this.rules.inline.punctuation.exec(r))){let t=[...s[0]].length-1,a,l,c=t,o=0,h=s[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(h.lastIndex=0,e=e.slice(-1*n.length+t);(s=h.exec(e))!=null;){if(a=s[1]||s[2]||s[3]||s[4]||s[5]||s[6],!a)continue;if(l=[...a].length,s[3]||s[4]){c+=l;continue}else if((s[5]||s[6])&&t%3&&!((t+l)%3)){o+=l;continue}if(c-=l,c>0)continue;l=Math.min(l,l+c+o);let p=[...s[0]][0].length,m=n.slice(0,t+s.index+p+l);if(Math.min(t,l)%2){let A=m.slice(1,-1);return{type:"em",raw:m,text:A,tokens:this.lexer.inlineTokens(A)}}let d=m.slice(2,-2);return{type:"strong",raw:m,text:d,tokens:this.lexer.inlineTokens(d)}}}}codespan(n){let e=this.rules.inline.code.exec(n);if(e){let r=e[2].replace(this.rules.other.newLineCharGlobal," "),s=this.rules.other.nonSpaceChar.test(r),t=this.rules.other.startingSpaceChar.test(r)&&this.rules.other.endingSpaceChar.test(r);return s&&t&&(r=r.substring(1,r.length-1)),{type:"codespan",raw:e[0],text:r}}}br(n){let e=this.rules.inline.br.exec(n);if(e)return{type:"br",raw:e[0]}}del(n,e,r=""){let s=this.rules.inline.delLDelim.exec(n);if(s&&(!s[1]||!r||this.rules.inline.punctuation.exec(r))){let t=[...s[0]].length-1,a,l,c=t,o=this.rules.inline.delRDelim;for(o.lastIndex=0,e=e.slice(-1*n.length+t);(s=o.exec(e))!=null;){if(a=s[1]||s[2]||s[3]||s[4]||s[5]||s[6],!a||(l=[...a].length,l!==t))continue;if(s[3]||s[4]){c+=l;continue}if(c-=l,c>0)continue;l=Math.min(l,l+c);let h=[...s[0]][0].length,p=n.slice(0,t+s.index+h+l),m=p.slice(t,-t);return{type:"del",raw:p,text:m,tokens:this.lexer.inlineTokens(m)}}}}autolink(n){let e=this.rules.inline.autolink.exec(n);if(e){let r,s;return e[2]==="@"?(r=e[1],s="mailto:"+r):(r=e[1],s=r),{type:"link",raw:e[0],text:r,href:s,tokens:[{type:"text",raw:r,text:r}]}}}url(n){let e;if(e=this.rules.inline.url.exec(n)){let r,s;if(e[2]==="@")r=e[0],s="mailto:"+r;else{let t;do t=e[0],e[0]=this.rules.inline._backpedal.exec(e[0])?.[0]??"";while(t!==e[0]);r=e[0],e[1]==="www."?s="http://"+e[0]:s=e[0]}return{type:"link",raw:e[0],text:r,href:s,tokens:[{type:"text",raw:r,text:r}]}}}inlineText(n){let e=this.rules.inline.text.exec(n);if(e){let r=this.lexer.state.inRawBlock;return{type:"text",raw:e[0],text:e[0],escaped:r}}}},F=class dt{tokens;options;state;inlineQueue;tokenizer;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||ne,this.options.tokenizer=this.options.tokenizer||new Be,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let r={other:N,block:ze.normal,inline:xe.normal};this.options.pedantic?(r.block=ze.pedantic,r.inline=xe.pedantic):this.options.gfm&&(r.block=ze.gfm,this.options.breaks?r.inline=xe.breaks:r.inline=xe.gfm),this.tokenizer.rules=r}static get rules(){return{block:ze,inline:xe}}static lex(e,r){return new dt(r).lex(e)}static lexInline(e,r){return new dt(r).inlineTokens(e)}lex(e){e=e.replace(N.carriageReturn,`
29
- `),this.blockTokens(e,this.tokens);for(let r=0;r<this.inlineQueue.length;r++){let s=this.inlineQueue[r];this.inlineTokens(s.src,s.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(e,r=[],s=!1){for(this.tokenizer.lexer=this,this.options.pedantic&&(e=e.replace(N.tabCharGlobal," ").replace(N.spaceLine,""));e;){let t;if(this.options.extensions?.block?.some(l=>(t=l.call({lexer:this},e,r))?(e=e.substring(t.raw.length),r.push(t),!0):!1))continue;if(t=this.tokenizer.space(e)){e=e.substring(t.raw.length);let l=r.at(-1);t.raw.length===1&&l!==void 0?l.raw+=`
30
- `:r.push(t);continue}if(t=this.tokenizer.code(e)){e=e.substring(t.raw.length);let l=r.at(-1);l?.type==="paragraph"||l?.type==="text"?(l.raw+=(l.raw.endsWith(`
31
- `)?"":`
32
- `)+t.raw,l.text+=`
33
- `+t.text,this.inlineQueue.at(-1).src=l.text):r.push(t);continue}if(t=this.tokenizer.fences(e)){e=e.substring(t.raw.length),r.push(t);continue}if(t=this.tokenizer.heading(e)){e=e.substring(t.raw.length),r.push(t);continue}if(t=this.tokenizer.hr(e)){e=e.substring(t.raw.length),r.push(t);continue}if(t=this.tokenizer.blockquote(e)){e=e.substring(t.raw.length),r.push(t);continue}if(t=this.tokenizer.list(e)){e=e.substring(t.raw.length),r.push(t);continue}if(t=this.tokenizer.html(e)){e=e.substring(t.raw.length),r.push(t);continue}if(t=this.tokenizer.def(e)){e=e.substring(t.raw.length);let l=r.at(-1);l?.type==="paragraph"||l?.type==="text"?(l.raw+=(l.raw.endsWith(`
34
- `)?"":`
35
- `)+t.raw,l.text+=`
36
- `+t.raw,this.inlineQueue.at(-1).src=l.text):this.tokens.links[t.tag]||(this.tokens.links[t.tag]={href:t.href,title:t.title},r.push(t));continue}if(t=this.tokenizer.table(e)){e=e.substring(t.raw.length),r.push(t);continue}if(t=this.tokenizer.lheading(e)){e=e.substring(t.raw.length),r.push(t);continue}let a=e;if(this.options.extensions?.startBlock){let l=1/0,c=e.slice(1),o;this.options.extensions.startBlock.forEach(h=>{o=h.call({lexer:this},c),typeof o=="number"&&o>=0&&(l=Math.min(l,o))}),l<1/0&&l>=0&&(a=e.substring(0,l+1))}if(this.state.top&&(t=this.tokenizer.paragraph(a))){let l=r.at(-1);s&&l?.type==="paragraph"?(l.raw+=(l.raw.endsWith(`
37
- `)?"":`
38
- `)+t.raw,l.text+=`
39
- `+t.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=l.text):r.push(t),s=a.length!==e.length,e=e.substring(t.raw.length);continue}if(t=this.tokenizer.text(e)){e=e.substring(t.raw.length);let l=r.at(-1);l?.type==="text"?(l.raw+=(l.raw.endsWith(`
40
- `)?"":`
41
- `)+t.raw,l.text+=`
42
- `+t.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=l.text):r.push(t);continue}if(e){let l="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(l);break}else throw new Error(l)}}return this.state.top=!0,r}inline(e,r=[]){return this.inlineQueue.push({src:e,tokens:r}),r}inlineTokens(e,r=[]){this.tokenizer.lexer=this;let s=e,t=null;if(this.tokens.links){let o=Object.keys(this.tokens.links);if(o.length>0)for(;(t=this.tokenizer.rules.inline.reflinkSearch.exec(s))!=null;)o.includes(t[0].slice(t[0].lastIndexOf("[")+1,-1))&&(s=s.slice(0,t.index)+"["+"a".repeat(t[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(t=this.tokenizer.rules.inline.anyPunctuation.exec(s))!=null;)s=s.slice(0,t.index)+"++"+s.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let a;for(;(t=this.tokenizer.rules.inline.blockSkip.exec(s))!=null;)a=t[2]?t[2].length:0,s=s.slice(0,t.index+a)+"["+"a".repeat(t[0].length-a-2)+"]"+s.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);s=this.options.hooks?.emStrongMask?.call({lexer:this},s)??s;let l=!1,c="";for(;e;){l||(c=""),l=!1;let o;if(this.options.extensions?.inline?.some(p=>(o=p.call({lexer:this},e,r))?(e=e.substring(o.raw.length),r.push(o),!0):!1))continue;if(o=this.tokenizer.escape(e)){e=e.substring(o.raw.length),r.push(o);continue}if(o=this.tokenizer.tag(e)){e=e.substring(o.raw.length),r.push(o);continue}if(o=this.tokenizer.link(e)){e=e.substring(o.raw.length),r.push(o);continue}if(o=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(o.raw.length);let p=r.at(-1);o.type==="text"&&p?.type==="text"?(p.raw+=o.raw,p.text+=o.text):r.push(o);continue}if(o=this.tokenizer.emStrong(e,s,c)){e=e.substring(o.raw.length),r.push(o);continue}if(o=this.tokenizer.codespan(e)){e=e.substring(o.raw.length),r.push(o);continue}if(o=this.tokenizer.br(e)){e=e.substring(o.raw.length),r.push(o);continue}if(o=this.tokenizer.del(e,s,c)){e=e.substring(o.raw.length),r.push(o);continue}if(o=this.tokenizer.autolink(e)){e=e.substring(o.raw.length),r.push(o);continue}if(!this.state.inLink&&(o=this.tokenizer.url(e))){e=e.substring(o.raw.length),r.push(o);continue}let h=e;if(this.options.extensions?.startInline){let p=1/0,m=e.slice(1),d;this.options.extensions.startInline.forEach(A=>{d=A.call({lexer:this},m),typeof d=="number"&&d>=0&&(p=Math.min(p,d))}),p<1/0&&p>=0&&(h=e.substring(0,p+1))}if(o=this.tokenizer.inlineText(h)){e=e.substring(o.raw.length),o.raw.slice(-1)!=="_"&&(c=o.raw.slice(-1)),l=!0;let p=r.at(-1);p?.type==="text"?(p.raw+=o.raw,p.text+=o.text):r.push(o);continue}if(e){let p="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(p);break}else throw new Error(p)}}return r}},He=class{options;parser;constructor(n){this.options=n||ne}space(n){return""}code({text:n,lang:e,escaped:r}){let s=(e||"").match(N.notSpaceStart)?.[0],t=n.replace(N.endingNewline,"")+`
43
- `;return s?'<pre><code class="language-'+q(s)+'">'+(r?t:q(t,!0))+`</code></pre>
44
- `:"<pre><code>"+(r?t:q(t,!0))+`</code></pre>
45
- `}blockquote({tokens:n}){return`<blockquote>
46
- ${this.parser.parse(n)}</blockquote>
47
- `}html({text:n}){return n}def(n){return""}heading({tokens:n,depth:e}){return`<h${e}>${this.parser.parseInline(n)}</h${e}>
48
- `}hr(n){return`<hr>
49
- `}list(n){let e=n.ordered,r=n.start,s="";for(let l=0;l<n.items.length;l++){let c=n.items[l];s+=this.listitem(c)}let t=e?"ol":"ul",a=e&&r!==1?' start="'+r+'"':"";return"<"+t+a+`>
50
- `+s+"</"+t+`>
51
- `}listitem(n){return`<li>${this.parser.parse(n.tokens)}</li>
52
- `}checkbox({checked:n}){return"<input "+(n?'checked="" ':"")+'disabled="" type="checkbox"> '}paragraph({tokens:n}){return`<p>${this.parser.parseInline(n)}</p>
53
- `}table(n){let e="",r="";for(let t=0;t<n.header.length;t++)r+=this.tablecell(n.header[t]);e+=this.tablerow({text:r});let s="";for(let t=0;t<n.rows.length;t++){let a=n.rows[t];r="";for(let l=0;l<a.length;l++)r+=this.tablecell(a[l]);s+=this.tablerow({text:r})}return s&&(s=`<tbody>${s}</tbody>`),`<table>
54
- <thead>
55
- `+e+`</thead>
56
- `+s+`</table>
57
- `}tablerow({text:n}){return`<tr>
58
- ${n}</tr>
59
- `}tablecell(n){let e=this.parser.parseInline(n.tokens),r=n.header?"th":"td";return(n.align?`<${r} align="${n.align}">`:`<${r}>`)+e+`</${r}>
60
- `}strong({tokens:n}){return`<strong>${this.parser.parseInline(n)}</strong>`}em({tokens:n}){return`<em>${this.parser.parseInline(n)}</em>`}codespan({text:n}){return`<code>${q(n,!0)}</code>`}br(n){return"<br>"}del({tokens:n}){return`<del>${this.parser.parseInline(n)}</del>`}link({href:n,title:e,tokens:r}){let s=this.parser.parseInline(r),t=pn(n);if(t===null)return s;n=t;let a='<a href="'+n+'"';return e&&(a+=' title="'+q(e)+'"'),a+=">"+s+"</a>",a}image({href:n,title:e,text:r,tokens:s}){s&&(r=this.parser.parseInline(s,this.parser.textRenderer));let t=pn(n);if(t===null)return q(r);n=t;let a=`<img src="${n}" alt="${q(r)}"`;return e&&(a+=` title="${q(e)}"`),a+=">",a}text(n){return"tokens"in n&&n.tokens?this.parser.parseInline(n.tokens):"escaped"in n&&n.escaped?n.text:q(n.text)}},_t=class{strong({text:n}){return n}em({text:n}){return n}codespan({text:n}){return n}del({text:n}){return n}html({text:n}){return n}text({text:n}){return n}link({text:n}){return""+n}image({text:n}){return""+n}br(){return""}checkbox({raw:n}){return n}},B=class mt{options;renderer;textRenderer;constructor(e){this.options=e||ne,this.options.renderer=this.options.renderer||new He,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new _t}static parse(e,r){return new mt(r).parse(e)}static parseInline(e,r){return new mt(r).parseInline(e)}parse(e){this.renderer.parser=this;let r="";for(let s=0;s<e.length;s++){let t=e[s];if(this.options.extensions?.renderers?.[t.type]){let l=t,c=this.options.extensions.renderers[l.type].call({parser:this},l);if(c!==!1||!["space","hr","heading","code","table","blockquote","list","html","def","paragraph","text"].includes(l.type)){r+=c||"";continue}}let a=t;switch(a.type){case"space":{r+=this.renderer.space(a);break}case"hr":{r+=this.renderer.hr(a);break}case"heading":{r+=this.renderer.heading(a);break}case"code":{r+=this.renderer.code(a);break}case"table":{r+=this.renderer.table(a);break}case"blockquote":{r+=this.renderer.blockquote(a);break}case"list":{r+=this.renderer.list(a);break}case"checkbox":{r+=this.renderer.checkbox(a);break}case"html":{r+=this.renderer.html(a);break}case"def":{r+=this.renderer.def(a);break}case"paragraph":{r+=this.renderer.paragraph(a);break}case"text":{r+=this.renderer.text(a);break}default:{let l='Token with "'+a.type+'" type was not found.';if(this.options.silent)return console.error(l),"";throw new Error(l)}}}return r}parseInline(e,r=this.renderer){this.renderer.parser=this;let s="";for(let t=0;t<e.length;t++){let a=e[t];if(this.options.extensions?.renderers?.[a.type]){let c=this.options.extensions.renderers[a.type].call({parser:this},a);if(c!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(a.type)){s+=c||"";continue}}let l=a;switch(l.type){case"escape":{s+=r.text(l);break}case"html":{s+=r.html(l);break}case"link":{s+=r.link(l);break}case"image":{s+=r.image(l);break}case"checkbox":{s+=r.checkbox(l);break}case"strong":{s+=r.strong(l);break}case"em":{s+=r.em(l);break}case"codespan":{s+=r.codespan(l);break}case"br":{s+=r.br(l);break}case"del":{s+=r.del(l);break}case"text":{s+=r.text(l);break}default:{let c='Token with "'+l.type+'" type was not found.';if(this.options.silent)return console.error(c),"";throw new Error(c)}}}return s}},Ae=class{options;block;constructor(n){this.options=n||ne}static passThroughHooks=new Set(["preprocess","postprocess","processAllTokens","emStrongMask"]);static passThroughHooksRespectAsync=new Set(["preprocess","postprocess","processAllTokens"]);preprocess(n){return n}postprocess(n){return n}processAllTokens(n){return n}emStrongMask(n){return n}provideLexer(){return this.block?F.lex:F.lexInline}provideParser(){return this.block?B.parse:B.parseInline}},ss=class{defaults=kt();options=this.setOptions;parse=this.parseMarkdown(!0);parseInline=this.parseMarkdown(!1);Parser=B;Renderer=He;TextRenderer=_t;Lexer=F;Tokenizer=Be;Hooks=Ae;constructor(...n){this.use(...n)}walkTokens(n,e){let r=[];for(let s of n)switch(r=r.concat(e.call(this,s)),s.type){case"table":{let t=s;for(let a of t.header)r=r.concat(this.walkTokens(a.tokens,e));for(let a of t.rows)for(let l of a)r=r.concat(this.walkTokens(l.tokens,e));break}case"list":{let t=s;r=r.concat(this.walkTokens(t.items,e));break}default:{let t=s;this.defaults.extensions?.childTokens?.[t.type]?this.defaults.extensions.childTokens[t.type].forEach(a=>{let l=t[a].flat(1/0);r=r.concat(this.walkTokens(l,e))}):t.tokens&&(r=r.concat(this.walkTokens(t.tokens,e)))}}return r}use(...n){let e=this.defaults.extensions||{renderers:{},childTokens:{}};return n.forEach(r=>{let s={...r};if(s.async=this.defaults.async||s.async||!1,r.extensions&&(r.extensions.forEach(t=>{if(!t.name)throw new Error("extension name required");if("renderer"in t){let a=e.renderers[t.name];a?e.renderers[t.name]=function(...l){let c=t.renderer.apply(this,l);return c===!1&&(c=a.apply(this,l)),c}:e.renderers[t.name]=t.renderer}if("tokenizer"in t){if(!t.level||t.level!=="block"&&t.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let a=e[t.level];a?a.unshift(t.tokenizer):e[t.level]=[t.tokenizer],t.start&&(t.level==="block"?e.startBlock?e.startBlock.push(t.start):e.startBlock=[t.start]:t.level==="inline"&&(e.startInline?e.startInline.push(t.start):e.startInline=[t.start]))}"childTokens"in t&&t.childTokens&&(e.childTokens[t.name]=t.childTokens)}),s.extensions=e),r.renderer){let t=this.defaults.renderer||new He(this.defaults);for(let a in r.renderer){if(!(a in t))throw new Error(`renderer '${a}' does not exist`);if(["options","parser"].includes(a))continue;let l=a,c=r.renderer[l],o=t[l];t[l]=(...h)=>{let p=c.apply(t,h);return p===!1&&(p=o.apply(t,h)),p||""}}s.renderer=t}if(r.tokenizer){let t=this.defaults.tokenizer||new Be(this.defaults);for(let a in r.tokenizer){if(!(a in t))throw new Error(`tokenizer '${a}' does not exist`);if(["options","rules","lexer"].includes(a))continue;let l=a,c=r.tokenizer[l],o=t[l];t[l]=(...h)=>{let p=c.apply(t,h);return p===!1&&(p=o.apply(t,h)),p}}s.tokenizer=t}if(r.hooks){let t=this.defaults.hooks||new Ae;for(let a in r.hooks){if(!(a in t))throw new Error(`hook '${a}' does not exist`);if(["options","block"].includes(a))continue;let l=a,c=r.hooks[l],o=t[l];Ae.passThroughHooks.has(a)?t[l]=h=>{if(this.defaults.async&&Ae.passThroughHooksRespectAsync.has(a))return(async()=>{let m=await c.call(t,h);return o.call(t,m)})();let p=c.call(t,h);return o.call(t,p)}:t[l]=(...h)=>{if(this.defaults.async)return(async()=>{let m=await c.apply(t,h);return m===!1&&(m=await o.apply(t,h)),m})();let p=c.apply(t,h);return p===!1&&(p=o.apply(t,h)),p}}s.hooks=t}if(r.walkTokens){let t=this.defaults.walkTokens,a=r.walkTokens;s.walkTokens=function(l){let c=[];return c.push(a.call(this,l)),t&&(c=c.concat(t.call(this,l))),c}}this.defaults={...this.defaults,...s}}),this}setOptions(n){return this.defaults={...this.defaults,...n},this}lexer(n,e){return F.lex(n,e??this.defaults)}parser(n,e){return B.parse(n,e??this.defaults)}parseMarkdown(n){return(e,r)=>{let s={...r},t={...this.defaults,...s},a=this.onError(!!t.silent,!!t.async);if(this.defaults.async===!0&&s.async===!1)return a(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof e>"u"||e===null)return a(new Error("marked(): input parameter is undefined or null"));if(typeof e!="string")return a(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(e)+", string expected"));if(t.hooks&&(t.hooks.options=t,t.hooks.block=n),t.async)return(async()=>{let l=t.hooks?await t.hooks.preprocess(e):e,c=await(t.hooks?await t.hooks.provideLexer():n?F.lex:F.lexInline)(l,t),o=t.hooks?await t.hooks.processAllTokens(c):c;t.walkTokens&&await Promise.all(this.walkTokens(o,t.walkTokens));let h=await(t.hooks?await t.hooks.provideParser():n?B.parse:B.parseInline)(o,t);return t.hooks?await t.hooks.postprocess(h):h})().catch(a);try{t.hooks&&(e=t.hooks.preprocess(e));let l=(t.hooks?t.hooks.provideLexer():n?F.lex:F.lexInline)(e,t);t.hooks&&(l=t.hooks.processAllTokens(l)),t.walkTokens&&this.walkTokens(l,t.walkTokens);let c=(t.hooks?t.hooks.provideParser():n?B.parse:B.parseInline)(l,t);return t.hooks&&(c=t.hooks.postprocess(c)),c}catch(l){return a(l)}}}onError(n,e){return r=>{if(r.message+=`
61
- Please report this to https://github.com/markedjs/marked.`,n){let s="<p>An error occurred:</p><pre>"+q(r.message+"",!0)+"</pre>";return e?Promise.resolve(s):s}if(e)return Promise.reject(r);throw r}}},te=new ss;function T(n,e){return te.parse(n,e)}T.options=T.setOptions=function(n){return te.setOptions(n),T.defaults=te.defaults,xn(T.defaults),T};T.getDefaults=kt;T.defaults=ne;T.use=function(...n){return te.use(...n),T.defaults=te.defaults,xn(T.defaults),T};T.walkTokens=function(n,e){return te.walkTokens(n,e)};T.parseInline=te.parseInline;T.Parser=B;T.parser=B.parse;T.Renderer=He;T.TextRenderer=_t;T.Lexer=F;T.lexer=F.lex;T.Tokenizer=Be;T.Hooks=Ae;T.parse=T;T.options;T.setOptions;T.use;T.walkTokens;T.parseInline;B.parse;F.lex;T.setOptions({breaks:!0,gfm:!0});const we=new Map,is=500;function hs(n){if(!n)return"";const e=we.get(n);if(e!==void 0)return e;const r=T.parse(n),s=kr.sanitize(r);if(we.size>=is){const t=we.keys().next().value;t!==void 0&&we.delete(t)}return we.set(n,s),s}export{ps as a,cs as c,hs as r,os as s,us as t};
@@ -1 +0,0 @@
1
- function t(r){if(!r||typeof r!="object")return!1;const e=r;return typeof e.apiKey!="string"||e.apiKey.length===0||e.deviceToken!==void 0&&e.deviceToken!==null&&typeof e.deviceToken!="string"||e.serverUrl!==void 0&&e.serverUrl!==null&&typeof e.serverUrl!="string"||e.lastUpdated!==void 0&&e.lastUpdated!==null&&typeof e.lastUpdated!="string"?!1:(e.deviceToken===void 0&&(e.deviceToken=null),e.serverUrl===void 0&&(e.serverUrl=null),e.lastUpdated===void 0&&(e.lastUpdated=null),!0)}export{t as i};
@@ -1 +0,0 @@
1
- import{a as o,f as i,d as Tt,i as Dt,s as H,c as K,b as R}from"./r0JawsZc.js";import{c as r,a6 as It,r as a,t as P,o as fe,a7 as Xe,a8 as Ct,z as e,y as L,a9 as Fe,p as Pt,q as At,a0 as Gt,aa as Ht,s as n,w as Ot,A as Ze,f as O,B as k}from"./CZHsSL_X.js";import{i as y}from"./B8XegpSE.js";import{P as Ee,e as Se,i as Ke,A as $e,I as Bt,B as et,h as Ce}from"./B5NAKyil.js";import{s as Ut,a as te,r as Pe}from"./CQjSATpv.js";import{p as ye,b as Ft}from"./Bu1aqm5j.js";function Kt(B,t){return B==="Bash"?t.command||t.description||"":B==="Read"||B==="Edit"||B==="Write"?t.file_path||"":B==="Grep"||B==="Glob"?t.pattern||"":B==="Agent"?t.description||t.prompt?.slice(0,50)||"":JSON.stringify(t).slice(0,60)}var Rt=i('<div><div class="accordion-content svelte-19akzbp"><!></div></div>');function Ae(B,t){let v=ye(t,"expand",3,!1);var c=Rt();let u;var he=r(c),Ge=r(he);Ut(Ge,()=>t.children??It),a(he),a(c),P(()=>u=te(c,1,`accordion ${t.classes??""??""}`,"svelte-19akzbp",u,{expanded:v()})),o(B,c)}var Lt=["forEach","isDisjointFrom","isSubsetOf","isSupersetOf"],Mt=["difference","intersection","symmetricDifference","union"],tt=!1;class Te extends Set{#s=new Map;#e=fe(0);#t=fe(0);#a=Xe||-1;constructor(t){if(super(),t){for(var v of t)super.add(v);this.#t.v=super.size}tt||this.#o()}#r(t){return Xe===this.#a?fe(t):Ct(t)}#o(){tt=!0;var t=Te.prototype,v=Set.prototype;for(const c of Lt)t[c]=function(...u){return e(this.#e),v[c].apply(this,u)};for(const c of Mt)t[c]=function(...u){e(this.#e);var he=v[c].apply(this,u);return new Te(he)}}has(t){var v=super.has(t),c=this.#s,u=c.get(t);if(u===void 0){if(!v)return e(this.#e),!1;u=this.#r(!0),c.set(t,u)}return e(u),v}add(t){return super.has(t)||(super.add(t),L(this.#t,super.size),Fe(this.#e)),this}delete(t){var v=super.delete(t),c=this.#s,u=c.get(t);return u!==void 0&&(c.delete(t),L(u,!1)),v&&(L(this.#t,super.size),Fe(this.#e)),v}clear(){if(super.size!==0){super.clear();var t=this.#s;for(var v of t.values())L(v,!1);t.clear(),L(this.#t,0),Fe(this.#e)}}keys(){return this.values()}values(){return e(this.#e),super.values()}entries(){return e(this.#e),super.entries()}[Symbol.iterator](){return this.keys()}get size(){return e(this.#t)}}var Nt=i('<div class="chatview-header svelte-1tpzk7f"><div class="chatview-header-left svelte-1tpzk7f"><!> <span class="chatview-title svelte-1tpzk7f">Session</span></div> <div class="chatview-header-right svelte-1tpzk7f"><span><span class="connection-status-dot"></span> </span> <!></div></div>'),Wt=i('<div class="chatview-empty svelte-1tpzk7f"><p class="chatview-empty-text svelte-1tpzk7f">Waiting for session messages...</p></div>'),jt=i('<div class="chat-bubble chat-bubble-user"></div>'),qt=i('<div class="chat-message chat-message-user"><div><!> <div class="chat-timestamp"> </div></div> <!></div>'),Jt=i('<div class="chat-tool-body"> </div>'),Vt=i('<div class="chat-tool-card svelte-1tpzk7f"><div class="chat-tool-header" role="button" tabindex="0"><span>&#9654;</span> <!> <span class="chat-tool-description"> </span></div> <!></div>'),Yt=i('<div class="chat-tool-group-body svelte-1tpzk7f"></div>'),Qt=i('<div class="chat-tool-group svelte-1tpzk7f"><div class="chat-tool-group-header svelte-1tpzk7f" role="button" tabindex="0"><span>&#9654;</span> <span class="chat-tool-group-summary svelte-1tpzk7f"> </span></div> <!></div>'),Xt=i('<div class="chat-bubble chat-bubble-assistant"></div>'),Zt=i('<div class="chat-tool-body"> </div>'),$t=i('<div class="chat-tool-card"><div class="chat-tool-header" role="button" tabindex="0"><span>&#9654;</span> <!> <span class="chat-tool-description"> </span></div> <!></div>'),es=i('<div class="chat-thinking-body"></div>'),ts=i('<div class="chat-thinking"><div class="chat-thinking-header" role="button" tabindex="0"> </div> <!></div>'),ss=i('<div class="chat-message chat-message-assistant"><!> <div><!> <div class="chat-timestamp"> </div></div></div>'),as=i("<div> </div>"),rs=i('<div class="chat-message chat-message-system"><div class="chat-tool-card"><div class="chat-tool-header" role="button" tabindex="0"><span>&#9654;</span> <!></div> <!></div></div>'),os=i('<div class="chat-message chat-message-system"><div class="chat-bubble chat-bubble-system"></div></div>'),ns=i('<div class="chatview-ended svelte-1tpzk7f"><!> <span>Session has ended</span></div>'),is=i('<div class="chatview-details-toggle svelte-1tpzk7f"><button type="button"><span class="chatview-details-icon svelte-1tpzk7f"> </span> </button></div> <!> <!>',1),ls=i('<div class="chat-input-bar"><!> <!></div>'),vs=i('<div class="chatview-wrapper svelte-1tpzk7f"><!> <div class="chat-container chatview-scroll svelte-1tpzk7f"><!></div> <!></div>');function ms(B,t){Pt(t,!0);const v=ye(t,"connectionState",3,"idle"),c=ye(t,"newestFirst",3,!1),u=ye(t,"sessionEnded",3,!1),he=ye(t,"showHeader",3,!1),Ge=ye(t,"showInput",3,!0),Re=k(()=>u()||(t.sendDisabled!==void 0?t.sendDisabled:v()!=="connected"));let be=fe(""),J=fe(null),He=fe(!0);const se=new Te,De=new Te,Le="shooter:chatview:showDetails";let A=fe(At(localStorage.getItem(Le)==="true"));function st(){L(A,!e(A)),localStorage.setItem(Le,String(e(A)))}function at(s,f){const h=[];let m=[],G=0;function T(){if(m.length!==0){if(m.length===1)h.push(m[0]);else{const W=m.map(ae=>ae.toolName),we=[...new Set(W)],pe=`Used ${m.length} tools: ${we.join(", ")}`;h.push({groupId:`toolgroup-${f}-${G}`,summary:pe,tools:m,type:"tool_group"}),G++}m=[]}}for(const W of s)W.type==="tool_use"?m.push(W):(T(),h.push(W));return T(),h}function rt(s){return s.type==="tool_group"}function ot(s){return s.parts.every(f=>f.type==="tool_result")}Gt(()=>{t.messages,nt()});async function nt(){!e(He)||!e(J)||(await Ht(),c()?e(J).scrollTop=0:e(J).scrollTop=e(J).scrollHeight)}function it(){if(!e(J))return;const{clientHeight:s,scrollHeight:f,scrollTop:h}=e(J);c()?L(He,h<100):L(He,f-h-s<100)}function Me(){const s=e(be).trim();s&&(L(be,""),t.onSendInput?.(s))}function lt(s){s.key==="Enter"&&!s.shiftKey&&(s.preventDefault(),Me())}function V(s){se.has(s)?se.delete(s):se.add(s)}function Ne(s){De.has(s)?De.delete(s):De.add(s)}function We(s){return new Date(s).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}function je(s){return Kt(s.toolName,s.input)}function qe(s){return JSON.stringify(s,null,2)}function vt(s){return s.type==="tool_use"}var Oe=vs(),Je=r(Oe);{var dt=s=>{var f=Nt(),h=r(f),m=r(h);Ee(m,{text:"LIVE",classes:"pill-live"}),Ze(2),a(h);var G=n(h,2),T=r(G),W=n(r(T));a(T);var we=n(T,2);{var pe=ae=>{et(ae,{classes:"btn-danger btn-sm",onclick:()=>{t.onCancel()},text:"Cancel"})};y(we,ae=>{!u()&&t.onCancel&&ae(pe)})}a(G),a(f),P(()=>{te(T,1,`connection-status ${v()??""}`,"svelte-1tpzk7f"),H(W,` ${v()==="connected"?"Connected":v()==="connecting"||v()==="reconnecting"?"Connecting...":"Disconnected"}`)}),o(s,f)};y(Je,s=>{he()&&s(dt)})}var xe=n(Je,2),ct=r(xe);{var ut=s=>{var f=Wt();o(s,f)},ft=s=>{var f=is(),h=O(f),m=r(h);let G;var T=r(m),W=r(T,!0);a(T);var we=n(T);a(m),a(h);var pe=n(h,2);Se(pe,17,()=>t.messages,re=>re.id,(re,b)=>{var Ie=K(),mt=O(Ie);{var gt=j=>{var M=qt(),Y=r(M),oe=r(Y);Se(oe,17,()=>e(b).parts,Ke,(q,d)=>{var x=K(),me=O(x);{var ze=ie=>{var le=jt();Ce(le,()=>Pe(e(d).content),!0),a(le),o(ie,le)};y(me,ie=>{e(d).type==="text"&&ie(ze)})}o(q,x)});var ne=n(oe,2),Q=r(ne,!0);a(ne),a(Y);var _e=n(Y,2);$e(_e,{alt:"User",name:"User",size:"small",classes:"avatar-user"}),a(M),P(q=>H(Q,q),[()=>We(e(b).timestamp)]),o(j,M)},kt=j=>{var M=ss(),Y=r(M);$e(Y,{alt:"Claude",name:"Claude",size:"small",classes:"avatar-assistant"});var oe=n(Y,2),ne=r(oe);Se(ne,17,()=>at(e(b).parts,e(b).id),Ke,(q,d)=>{var x=K(),me=O(x);{var ze=z=>{const p=k(()=>e(A)||De.has(e(d).groupId));var w=Qt(),g=r(w),_=r(g);let N;var D=n(_,2),I=r(D,!0);a(D),a(g);var $=n(g,2);{var ee=C=>{var l=Yt();Se(l,21,()=>e(d).tools,U=>U.id,(U,E)=>{const ve=k(()=>e(E).id),de=k(()=>e(A)||se.has(e(ve)));var F=Vt(),S=r(F),ce=r(S);let ke;var Ve=n(ce,2);Ee(Ve,{get text(){return e(E).toolName},classes:"pill-tool-name"});var Ye=n(Ve,2),bt=r(Ye,!0);a(Ye),a(S);var xt=n(S,2);Ae(xt,{get expand(){return e(de)},children:(ue,ds)=>{var Qe=K(),wt=O(Qe);{var zt=Be=>{var Ue=Jt(),Et=r(Ue,!0);a(Ue),P(St=>H(Et,St),[()=>qe(e(E).input)]),o(Be,Ue)};y(wt,Be=>{e(de)&&Be(zt)})}o(ue,Qe)},$$slots:{default:!0}}),a(F),P(ue=>{ke=te(ce,1,"chat-tool-chevron",null,ke,{expanded:e(de)}),H(bt,ue)},[()=>je(e(E))]),R("click",S,()=>{V(e(ve))}),R("keydown",S,ue=>{(ue.key==="Enter"||ue.key===" ")&&(ue.preventDefault(),V(e(ve)))}),o(U,F)}),a(l),o(C,l)};y($,C=>{e(p)&&C(ee)})}a(w),P(()=>{N=te(_,1,"chat-tool-group-chevron svelte-1tpzk7f",null,N,{expanded:e(p)}),H(I,e(d).summary)}),R("click",g,()=>{Ne(e(d).groupId)}),R("keydown",g,C=>{(C.key==="Enter"||C.key===" ")&&(C.preventDefault(),Ne(e(d).groupId))}),o(z,w)},ie=k(()=>rt(e(d))),le=z=>{var p=Xt();Ce(p,()=>Pe(e(d).content),!0),a(p),o(z,p)},X=z=>{const p=k(()=>e(d).id),w=k(()=>e(A)||se.has(e(p)));var g=$t(),_=r(g),N=r(_);let D;var I=n(N,2);Ee(I,{get text(){return e(d).toolName},classes:"pill-tool-name"});var $=n(I,2),ee=r($,!0);a($),a(_);var C=n(_,2);Ae(C,{get expand(){return e(w)},children:(l,U)=>{var E=K(),ve=O(E);{var de=F=>{var S=Zt(),ce=r(S,!0);a(S),P(ke=>H(ce,ke),[()=>qe(e(d).input)]),o(F,S)};y(ve,F=>{e(w)&&F(de)})}o(l,E)},$$slots:{default:!0}}),a(g),P(l=>{D=te(N,1,"chat-tool-chevron",null,D,{expanded:e(w)}),H(ee,l)},[()=>je(e(d))]),R("click",_,()=>{V(e(p))}),R("keydown",_,l=>{(l.key==="Enter"||l.key===" ")&&(l.preventDefault(),V(e(p)))}),o(z,g)},Z=k(()=>vt(e(d))),ge=z=>{const p=k(()=>`thinking-${e(b).id}`),w=k(()=>e(A)||se.has(e(p)));var g=ts(),_=r(g),N=r(_);a(_);var D=n(_,2);Ae(D,{get expand(){return e(w)},children:(I,$)=>{var ee=K(),C=O(ee);{var l=U=>{var E=es();Ce(E,()=>Pe(e(d).content),!0),a(E),o(U,E)};y(C,U=>{e(w)&&U(l)})}o(I,ee)},$$slots:{default:!0}}),a(g),P(()=>H(N,`💭 Thinking... ${e(w)?"&#9660;":"&#9654;"}`)),R("click",_,()=>{V(e(p))}),R("keydown",_,I=>{(I.key==="Enter"||I.key===" ")&&(I.preventDefault(),V(e(p)))}),o(z,g)};y(me,z=>{e(ie)?z(ze):e(d).type==="text"?z(le,1):e(Z)?z(X,2):e(d).type==="thinking"&&z(ge,3)})}o(q,x)});var Q=n(ne,2),_e=r(Q,!0);a(Q),a(oe),a(M),P(q=>H(_e,q),[()=>We(e(b).timestamp)]),o(j,M)},yt=j=>{var M=K(),Y=O(M);{var oe=Q=>{var _e=K(),q=O(_e);Se(q,17,()=>e(b).parts,Ke,(d,x)=>{var me=K(),ze=O(me);{var ie=X=>{var Z=K(),ge=O(Z);{var z=p=>{const w=k(()=>`result-${e(x).toolUseId}`),g=k(()=>se.has(e(w)));var _=rs(),N=r(_),D=r(N),I=r(D);let $;var ee=n(I,2);{let l=k(()=>e(x).isError?"❌ Tool Error":"✅ Tool Result"),U=k(()=>e(x).isError?"pill-tool-error":"pill-tool-success");Ee(ee,{get text(){return e(l)},get classes(){return e(U)}})}a(D);var C=n(D,2);Ae(C,{get expand(){return e(g)},children:(l,U)=>{var E=K(),ve=O(E);{var de=F=>{var S=as();let ce;var ke=r(S,!0);a(S),P(()=>{ce=te(S,1,"chat-tool-result",null,ce,{"chat-tool-result-success":!e(x).isError,"chat-tool-result-error":e(x).isError}),H(ke,e(x).output)}),o(F,S)};y(ve,F=>{e(g)&&F(de)})}o(l,E)},$$slots:{default:!0}}),a(N),a(_),P(()=>$=te(I,1,"chat-tool-chevron",null,$,{expanded:e(g)})),R("click",D,()=>{V(e(w))}),R("keydown",D,l=>{(l.key==="Enter"||l.key===" ")&&(l.preventDefault(),V(e(w)))}),o(p,_)};y(ge,p=>{e(A)&&p(z)})}o(X,Z)},le=X=>{var Z=os(),ge=r(Z);Ce(ge,()=>Pe(e(x).content),!0),a(ge),a(Z),o(X,Z)};y(ze,X=>{e(x).type==="tool_result"?X(ie):e(x).type==="text"&&X(le,1)})}o(d,me)}),o(Q,_e)},ne=k(()=>e(A)||!ot(e(b)));y(Y,Q=>{e(ne)&&Q(oe)})}o(j,M)};y(mt,j=>{e(b).role==="user"?j(gt):e(b).role==="assistant"?j(kt,1):e(b).role==="system"&&j(yt,2)})}o(re,Ie)});var ae=n(pe,2);{var _t=re=>{var b=ns(),Ie=r(b);Ee(Ie,{text:"ENDED",classes:"pill-badge-ended"}),Ze(2),a(b),o(re,b)};y(ae,re=>{u()&&re(_t)})}P(()=>{G=te(m,1,"chatview-details-btn svelte-1tpzk7f",null,G,{active:e(A)}),H(W,e(A)?"&#9660;":"&#9654;"),H(we,` ${e(A)?"Hide details":"Show details"}`)}),R("click",m,st),o(s,f)};y(ct,s=>{t.messages.length===0?s(ut):s(ft,-1)})}a(xe),Ft(xe,s=>L(J,s),()=>e(J));var ht=n(xe,2);{var pt=s=>{var f=ls(),h=r(f);{let G=k(()=>u()?"Session ended":"Send a message... (Shift+Enter for new line)");Bt(h,{dataType:"text",useTextArea:!0,get placeholder(){return e(G)},get disable(){return e(Re)},onKeyDown:lt,classes:"chat-input-field",get value(){return e(be)},set value(T){L(be,T,!0)}})}var m=n(h,2);{let G=k(()=>e(Re)||!e(be).trim());et(m,{classes:"btn-primary btn-sm",get disabled(){return e(G)},onclick:Me,text:"Send"})}a(f),o(s,f)};y(ht,s=>{Ge()&&s(pt)})}a(Oe),Dt("scroll",xe,it),o(B,Oe),Ot()}Tt(["click","keydown"]);export{ms as C};
@@ -1,2 +0,0 @@
1
- import{af as Z,ad as ee,a6 as z,ae as ue,ag as le,ah as ce,z as q,y as de,ai as he,G as _e,a8 as te,I as pe,a9 as $,aj as N,i as c,h as _,J as m,ak as G,b as ve,k as re,al as ge,am as J,an as v,a as y,ao as I,ap as x,aq as se,ar as me,as as L,at as F,au as K,av as be,aw as ye,ax as ne,F as ie,ay as Ee,az as w,e as S,A as Te,n as we,aA as M,l as Ae,E as ke,aB as Ne,aC as Se,aD as Me,aE as Re,j as P,aF as De,aG as Oe,aH as Ie,aI as Le,aJ as Fe,aK as Ce,aL as B,C as ae,ab as xe,g as Pe,aM as H,d as R,aN as Be,aO as He,aP as Ve,aQ as je,p as Ue,aR as We,aS as qe,w as Ye,aT as ze,aU as $e}from"./CZHsSL_X.js";let D=!1,V=Symbol();function ut(t,e,r){const n=r[e]??={store:null,source:ue(void 0),unsubscribe:z};if(n.store!==t&&!(V in r))if(n.unsubscribe(),n.store=t??null,t==null)n.source.v=void 0,n.unsubscribe=z;else{var i=!0;n.unsubscribe=le(t,s=>{i?n.source.v=s:de(n.source,s)}),i=!1}return t&&V in r?ce(t):q(n.source)}function lt(){const t={};function e(){Z(()=>{for(var r in t)t[r].unsubscribe();ee(t,V,{enumerable:!1,value:!0})})}return[t,e]}function ct(t){var e=D;try{return D=!1,[t(),D]}finally{D=e}}function Ge(t){let e=0,r=te(0),n;return()=>{he()&&(q(r),_e(()=>(e===0&&(n=pe(()=>t(()=>$(r)))),e+=1,()=>{N(()=>{e-=1,e===0&&(n?.(),n=void 0,$(r))})})))}}var Je=Ae|ke;function Ke(t,e,r,n){new Qe(t,e,r,n)}class Qe{parent;is_pending=!1;transform_error;#e;#n=_?c:null;#t;#a;#r;#i=null;#s=null;#o=null;#f=null;#c=0;#l=0;#d=!1;#p=new Set;#v=new Set;#u=null;#b=Ge(()=>(this.#u=te(this.#c),()=>{this.#u=null}));constructor(e,r,n,i){this.#e=e,this.#t=r,this.#a=s=>{var a=m;a.b=this,a.f|=G,n(s)},this.parent=m.b,this.transform_error=i??this.parent?.transform_error??(s=>s),this.#r=ve(()=>{if(_){const s=this.#n;re();const a=s.data===ge;if(s.data.startsWith(J)){const o=JSON.parse(s.data.slice(J.length));this.#E(o)}else a?this.#T():this.#y()}else this.#g()},Je),_&&(this.#e=c)}#y(){try{this.#i=v(()=>this.#a(this.#e))}catch(e){this.error(e)}}#E(e){const r=this.#t.failed;r&&(this.#o=v(()=>{r(this.#e,()=>e,()=>()=>{})}))}#T(){const e=this.#t.pending;e&&(this.is_pending=!0,this.#s=v(()=>e(this.#e)),N(()=>{var r=this.#f=document.createDocumentFragment(),n=y();r.append(n),this.#i=this.#_(()=>v(()=>this.#a(n))),this.#l===0&&(this.#e.before(r),this.#f=null,I(this.#s,()=>{this.#s=null}),this.#h(x))}))}#g(){try{if(this.is_pending=this.has_pending_snippet(),this.#l=0,this.#c=0,this.#i=v(()=>{this.#a(this.#e)}),this.#l>0){var e=this.#f=document.createDocumentFragment();se(this.#i,e);const r=this.#t.pending;this.#s=v(()=>r(this.#e))}else this.#h(x)}catch(r){this.error(r)}}#h(e){this.is_pending=!1,e.transfer_effects(this.#p,this.#v)}defer_effect(e){me(e,this.#p,this.#v)}is_rendered(){return!this.is_pending&&(!this.parent||this.parent.is_rendered())}has_pending_snippet(){return!!this.#t.pending}#_(e){var r=m,n=ne,i=ie;L(this.#r),F(this.#r),K(this.#r.ctx);try{return be.ensure(),e()}catch(s){return ye(s),null}finally{L(r),F(n),K(i)}}#m(e,r){if(!this.has_pending_snippet()){this.parent&&this.parent.#m(e,r);return}this.#l+=e,this.#l===0&&(this.#h(r),this.#s&&I(this.#s,()=>{this.#s=null}),this.#f&&(this.#e.before(this.#f),this.#f=null))}update_pending_count(e,r){this.#m(e,r),this.#c+=e,!(!this.#u||this.#d)&&(this.#d=!0,N(()=>{this.#d=!1,this.#u&&Ee(this.#u,this.#c)}))}get_effect_pending(){return this.#b(),q(this.#u)}error(e){var r=this.#t.onerror;let n=this.#t.failed;if(!r&&!n)throw e;this.#i&&(w(this.#i),this.#i=null),this.#s&&(w(this.#s),this.#s=null),this.#o&&(w(this.#o),this.#o=null),_&&(S(this.#n),Te(),S(we()));var i=!1,s=!1;const a=()=>{if(i){Se();return}i=!0,s&&Ne(),this.#o!==null&&I(this.#o,()=>{this.#o=null}),this.#_(()=>{this.#g()})},f=o=>{try{s=!0,r?.(o,a),s=!1}catch(u){M(u,this.#r&&this.#r.parent)}n&&(this.#o=this.#_(()=>{try{return v(()=>{var u=m;u.b=this,u.f|=G,n(this.#e,()=>o,()=>a)})}catch(u){return M(u,this.#r.parent),null}}))};N(()=>{var o;try{o=this.transform_error(e)}catch(u){M(u,this.#r&&this.#r.parent);return}o!==null&&typeof o=="object"&&typeof o.then=="function"?o.then(f,u=>M(u,this.#r&&this.#r.parent)):f(o)})}}function dt(t){return t.endsWith("capture")&&t!=="gotpointercapture"&&t!=="lostpointercapture"}const Xe=["beforeinput","click","change","dblclick","contextmenu","focusin","focusout","input","keydown","keyup","mousedown","mousemove","mouseout","mouseover","mouseup","pointerdown","pointermove","pointerout","pointerover","pointerup","touchend","touchmove","touchstart"];function ht(t){return Xe.includes(t)}const Ze={formnovalidate:"formNoValidate",ismap:"isMap",nomodule:"noModule",playsinline:"playsInline",readonly:"readOnly",defaultvalue:"defaultValue",defaultchecked:"defaultChecked",srcobject:"srcObject",novalidate:"noValidate",allowfullscreen:"allowFullscreen",disablepictureinpicture:"disablePictureInPicture",disableremoteplayback:"disableRemotePlayback"};function _t(t){return t=t.toLowerCase(),Ze[t]??t}const et=["touchstart","touchmove"];function tt(t){return et.includes(t)}const k=Symbol("events"),oe=new Set,j=new Set;function pt(t){if(!_)return;t.removeAttribute("onload"),t.removeAttribute("onerror");const e=t.__e;e!==void 0&&(t.__e=void 0,queueMicrotask(()=>{t.isConnected&&t.dispatchEvent(e)}))}function rt(t,e,r,n={}){function i(s){if(n.capture||U.call(e,s),!s.cancelBubble)return Me(()=>r?.call(this,s))}return t.startsWith("pointer")||t.startsWith("touch")||t==="wheel"?N(()=>{e.addEventListener(t,i,n)}):e.addEventListener(t,i,n),i}function vt(t,e,r,n,i){var s={capture:n,passive:i},a=rt(t,e,r,s);(e===document.body||e===window||e===document||e instanceof HTMLMediaElement)&&Z(()=>{e.removeEventListener(t,a,s)})}function gt(t,e,r){(e[k]??={})[t]=r}function mt(t){for(var e=0;e<t.length;e++)oe.add(t[e]);for(var r of j)r(t)}let Q=null;function U(t){var e=this,r=e.ownerDocument,n=t.type,i=t.composedPath?.()||[],s=i[0]||t.target;Q=t;var a=0,f=Q===t&&t[k];if(f){var o=i.indexOf(f);if(o!==-1&&(e===document||e===window)){t[k]=e;return}var u=i.indexOf(e);if(u===-1)return;o<=u&&(a=o)}if(s=i[a]||t.target,s!==e){ee(t,"currentTarget",{configurable:!0,get(){return s||r}});var E=ne,A=m;F(null),L(null);try{for(var g,d=[];s!==null;){var l=s.assignedSlot||s.parentNode||s.host||null;try{var h=s[k]?.[n];h!=null&&(!s.disabled||t.target===s)&&h.call(s,t)}catch(p){g?d.push(p):g=p}if(t.cancelBubble||l===e||l===null)break;s=l}if(g){for(let p of d)queueMicrotask(()=>{throw p});throw g}}finally{t[k]=e,delete t.currentTarget,F(E),L(A)}}}const st=globalThis?.window?.trustedTypes&&globalThis.window.trustedTypes.createPolicy("svelte-trusted-html",{createHTML:t=>t});function nt(t){return st?.createHTML(t)??t}function it(t){var e=Re("template");return e.innerHTML=nt(t.replaceAll("<!>","<!---->")),e.content}function b(t,e){var r=m;r.nodes===null&&(r.nodes={start:t,end:e,a:null,t:null})}function bt(t,e){var r=(e&Oe)!==0,n=(e&Ie)!==0,i,s=!t.startsWith("<!>");return()=>{if(_)return b(c,null),c;i===void 0&&(i=it(s?t:"<!>"+t),r||(i=P(i)));var a=n||De?document.importNode(i,!0):i.cloneNode(!0);if(r){var f=P(a),o=a.lastChild;b(f,o)}else b(a,a);return a}}function yt(t=""){if(!_){var e=y(t+"");return b(e,e),e}var r=c;return r.nodeType!==Fe?(r.before(r=y()),S(r)):Ce(r),b(r,r),r}function Et(){if(_)return b(c,null),c;var t=document.createDocumentFragment(),e=document.createComment(""),r=y();return t.append(e,r),b(e,r),t}function Tt(t,e){if(_){var r=m;((r.f&Le)===0||r.nodes.end===null)&&(r.nodes.end=c),re();return}t!==null&&t.before(e)}let X=!0;function wt(t,e){var r=e==null?"":typeof e=="object"?`${e}`:e;r!==(t.__t??=t.nodeValue)&&(t.__t=r,t.nodeValue=`${r}`)}function at(t,e){return fe(t,e)}function At(t,e){B(),e.intro=e.intro??!1;const r=e.target,n=_,i=c;try{for(var s=P(r);s&&(s.nodeType!==ae||s.data!==xe);)s=Pe(s);if(!s)throw H;R(!0),S(s);const a=fe(t,{...e,anchor:s});return R(!1),a}catch(a){if(a instanceof Error&&a.message.split(`
2
- `).some(f=>f.startsWith("https://svelte.dev/e/")))throw a;return a!==H&&console.warn("Failed to hydrate: ",a),e.recover===!1&&Be(),B(),He(r),R(!1),at(t,e)}finally{R(n),S(i)}}const O=new Map;function fe(t,{target:e,anchor:r,props:n={},events:i,context:s,intro:a=!0,transformError:f}){B();var o=void 0,u=Ve(()=>{var E=r??e.appendChild(y());Ke(E,{pending:()=>{}},d=>{Ue({});var l=ie;if(s&&(l.c=s),i&&(n.$$events=i),_&&b(d,null),X=a,o=t(d,n)||{},X=!0,_&&(m.nodes.end=c,c===null||c.nodeType!==ae||c.data!==We))throw qe(),H;Ye()},f);var A=new Set,g=d=>{for(var l=0;l<d.length;l++){var h=d[l];if(!A.has(h)){A.add(h);var p=tt(h);for(const C of[e,document]){var T=O.get(C);T===void 0&&(T=new Map,O.set(C,T));var Y=T.get(h);Y===void 0?(C.addEventListener(h,U,{passive:p}),T.set(h,1)):T.set(h,Y+1)}}}};return g(je(oe)),j.add(g),()=>{for(var d of A)for(const p of[e,document]){var l=O.get(p),h=l.get(d);--h==0?(p.removeEventListener(d,U),l.delete(d),l.size===0&&O.delete(p)):l.set(d,h)}j.delete(g),E!==r&&E.parentNode?.removeChild(E)}});return W.set(o,u),o}let W=new WeakMap;function kt(t,e){const r=W.get(t);return r?(W.delete(t),r(e)):Promise.resolve()}class Nt{anchor;#e=new Map;#n=new Map;#t=new Map;#a=new Set;#r=!0;constructor(e,r=!0){this.anchor=e,this.#r=r}#i=e=>{if(this.#e.has(e)){var r=this.#e.get(e),n=this.#n.get(r);if(n)ze(n),this.#a.delete(r);else{var i=this.#t.get(r);i&&(this.#n.set(r,i.effect),this.#t.delete(r),i.fragment.lastChild.remove(),this.anchor.before(i.fragment),n=i.effect)}for(const[s,a]of this.#e){if(this.#e.delete(s),s===e)break;const f=this.#t.get(a);f&&(w(f.effect),this.#t.delete(a))}for(const[s,a]of this.#n){if(s===r||this.#a.has(s))continue;const f=()=>{if(Array.from(this.#e.values()).includes(s)){var u=document.createDocumentFragment();se(a,u),u.append(y()),this.#t.set(s,{effect:a,fragment:u})}else w(a);this.#a.delete(s),this.#n.delete(s)};this.#r||!n?(this.#a.add(s),I(a,f,!1)):f()}}};#s=e=>{this.#e.delete(e);const r=Array.from(this.#e.values());for(const[n,i]of this.#t)r.includes(n)||(w(i.effect),this.#t.delete(n))};ensure(e,r){var n=x,i=$e();if(r&&!this.#n.has(e)&&!this.#t.has(e))if(i){var s=document.createDocumentFragment(),a=y();s.append(a),this.#t.set(e,{effect:v(()=>r(a)),fragment:s})}else this.#n.set(e,v(()=>r(this.anchor)));if(this.#e.set(n,e),i){for(const[f,o]of this.#n)f===e?n.unskip_effect(o):n.skip_effect(o);for(const[f,o]of this.#t)f===e?n.unskip_effect(o.effect):n.skip_effect(o.effect);n.oncommit(this.#i),n.ondiscard(this.#s)}else _&&(this.anchor=c),this.#i(n)}}const ot="5";typeof window<"u"&&((window.__svelte??={}).v??=new Set).add(ot);export{Nt as B,Tt as a,gt as b,Et as c,mt as d,ct as e,bt as f,lt as g,ut as h,vt as i,At as j,b as k,X as l,at as m,dt as n,rt as o,_t as p,ht as q,pt as r,wt as s,yt as t,kt as u};
@@ -1,2 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.Bi3XYMSu.js","../chunks/r0JawsZc.js","../chunks/CZHsSL_X.js","../chunks/CQjSATpv.js","../assets/markdown.Dc-OSJWY.css","../chunks/BIaXC2t9.js","../chunks/CiF38mQq.js","../assets/0.BhZOCxO4.css","../nodes/1.DTmfBFmm.js","../chunks/B8XegpSE.js","../chunks/BOYo8yTr.js","../assets/1.BYutk3aU.css","../nodes/2.Cm269yzt.js","../chunks/B5NAKyil.js","../chunks/Bu1aqm5j.js","../assets/Phone.FQEfwCX2.css","../chunks/UJOiqIYE.js","../chunks/DSU1n5N_.js","../chunks/CSoRdFvv.js","../chunks/DjsDGxCa.js","../chunks/BLszSzTT.js","../assets/2.CAShZ7lQ.css","../nodes/3.3yohCM25.js","../assets/3.DGDHCVnW.css","../nodes/4.C25c5hMg.js","../chunks/CRbaG9cv.js","../assets/4.BFUut--w.css","../nodes/5.DIkXVP4q.js","../chunks/DVkn4r72.js","../assets/ChatView.CwWbzIL-.css","../assets/5.BTOx7yt7.css","../nodes/6.BPL-HzUX.js","../assets/6.eZGZN-BF.css","../nodes/7.IgEqce53.js","../chunks/PPVm8Dsz.js","../assets/7.DwS5ZHBh.css"])))=>i.map(i=>d[i]);
2
- import{_}from"../chunks/PPVm8Dsz.js";import{h as j,k as G,b as H,l as q,m as J,n as K,e as Q,d as k,ab as U,i as W,y as R,Y as X,z as u,ac as Z,ad as $,ae as tt,p as et,_ as rt,a0 as at,u as st,aa as ot,f as b,s as nt,w as it,o as O,c as ct,r as ut,t as _t,B as p}from"../chunks/CZHsSL_X.js";import{B as mt,j as dt,m as lt,u as ft,a as v,c as T,f as w,t as ht,s as vt}from"../chunks/r0JawsZc.js";import{i as A}from"../chunks/B8XegpSE.js";import{p as x,b as D}from"../chunks/Bu1aqm5j.js";function I(s,t,a){var n;j&&(n=W,G());var o=new mt(s);H(()=>{var e=t()??null;if(j){var r=J(n),c=r===U,P=e!==null;if(c!==P){var g=K();Q(g),o.anchor=g,k(!1),o.ensure(e,e&&(f=>a(f,e))),k(!0);return}}o.ensure(e,e&&(f=>a(f,e)))},q)}function gt(s){return class extends yt{constructor(t){super({component:s,...t})}}}class yt{#e;#t;constructor(t){var a=new Map,n=(e,r)=>{var c=tt(r,!1,!1);return a.set(e,c),c};const o=new Proxy({...t.props||{},$$events:{}},{get(e,r){return u(a.get(r)??n(r,Reflect.get(e,r)))},has(e,r){return r===X?!0:(u(a.get(r)??n(r,Reflect.get(e,r))),Reflect.has(e,r))},set(e,r,c){return R(a.get(r)??n(r,c),c),Reflect.set(e,r,c)}});this.#t=(t.hydrate?dt:lt)(t.component,{target:t.target,anchor:t.anchor,props:o,context:t.context,intro:t.intro??!1,recover:t.recover,transformError:t.transformError}),(!t?.props?.$$host||t.sync===!1)&&Z(),this.#e=o.$$events;for(const e of Object.keys(this.#t))e==="$set"||e==="$destroy"||e==="$on"||$(this,e,{get(){return this.#t[e]},set(r){this.#t[e]=r},enumerable:!0});this.#t.$set=e=>{Object.assign(o,e)},this.#t.$destroy=()=>{ft(this.#t)}}$set(t){this.#t.$set(t)}$on(t,a){this.#e[t]=this.#e[t]||[];const n=(...o)=>a.call(this,...o);return this.#e[t].push(n),()=>{this.#e[t]=this.#e[t].filter(o=>o!==n)}}$destroy(){this.#t.$destroy()}}const It={};var Et=w('<div id="svelte-announcer" aria-live="assertive" aria-atomic="true" style="position: absolute; left: 0; top: 0; clip: rect(0 0 0 0); clip-path: inset(50%); overflow: hidden; white-space: nowrap; width: 1px; height: 1px"><!></div>'),bt=w("<!> <!>",1);function Rt(s,t){et(t,!0);let a=x(t,"components",23,()=>[]),n=x(t,"data_0",3,null),o=x(t,"data_1",3,null);rt(()=>t.stores.page.set(t.page)),at(()=>{t.stores,t.page,t.constructors,a(),t.form,n(),o(),t.stores.page.notify()});let e=O(!1),r=O(!1),c=O(null);st(()=>{const i=t.stores.page.subscribe(()=>{u(e)&&(R(r,!0),ot().then(()=>{R(c,document.title||"untitled page",!0)}))});return R(e,!0),i});const P=p(()=>t.constructors[1]);var g=bt(),f=b(g);{var C=i=>{const m=p(()=>t.constructors[0]);var d=T(),y=b(d);I(y,()=>u(m),(l,h)=>{D(h(l,{get data(){return n()},get form(){return t.form},get params(){return t.page.params},children:(E,Ot)=>{var L=T(),N=b(L);I(N,()=>u(P),(Y,F)=>{D(F(Y,{get data(){return o()},get form(){return t.form},get params(){return t.page.params}}),z=>a()[1]=z,()=>a()?.[1])}),v(E,L)},$$slots:{default:!0}}),E=>a()[0]=E,()=>a()?.[0])}),v(i,d)},S=i=>{const m=p(()=>t.constructors[0]);var d=T(),y=b(d);I(y,()=>u(m),(l,h)=>{D(h(l,{get data(){return n()},get form(){return t.form},get params(){return t.page.params}}),E=>a()[0]=E,()=>a()?.[0])}),v(i,d)};A(f,i=>{t.constructors[1]?i(C):i(S,-1)})}var B=nt(f,2);{var M=i=>{var m=Et(),d=ct(m);{var y=l=>{var h=ht();_t(()=>vt(h,u(c))),v(l,h)};A(d,l=>{u(r)&&l(y)})}ut(m),v(i,m)};A(B,i=>{u(e)&&i(M)})}v(s,g),it()}const Lt=gt(Rt),jt=[()=>_(()=>import("../nodes/0.Bi3XYMSu.js"),__vite__mapDeps([0,1,2,3,4,5,6,7]),import.meta.url),()=>_(()=>import("../nodes/1.DTmfBFmm.js"),__vite__mapDeps([8,1,2,9,10,5,6,11]),import.meta.url),()=>_(()=>import("../nodes/2.Cm269yzt.js"),__vite__mapDeps([12,1,2,9,13,3,4,14,15,10,5,16,17,18,19,20,21]),import.meta.url),()=>_(()=>import("../nodes/3.3yohCM25.js"),__vite__mapDeps([22,1,2,9,10,13,3,4,14,15,17,19,23]),import.meta.url),()=>_(()=>import("../nodes/4.C25c5hMg.js"),__vite__mapDeps([24,1,2,9,13,3,4,14,15,10,5,25,16,17,18,19,20,26]),import.meta.url),()=>_(()=>import("../nodes/5.DIkXVP4q.js"),__vite__mapDeps([27,1,2,9,10,13,3,4,14,15,25,5,16,28,29,30]),import.meta.url),()=>_(()=>import("../nodes/6.BPL-HzUX.js"),__vite__mapDeps([31,1,2,9,13,3,4,14,15,10,5,16,17,18,19,20,32]),import.meta.url),()=>_(()=>import("../nodes/7.IgEqce53.js"),__vite__mapDeps([33,34,1,2,9,10,13,3,4,14,15,5,6,18,19,28,29,35]),import.meta.url)],kt=[],wt={"/":[2],"/config":[3],"/project":[4],"/session/[id]":[5],"/terminals":[6],"/terminals/[id]":[7]},V={handleError:(({error:s})=>{console.error(s)}),reroute:(()=>{}),transport:{}},Pt=Object.fromEntries(Object.entries(V.transport).map(([s,t])=>[s,t.decode])),Vt=Object.fromEntries(Object.entries(V.transport).map(([s,t])=>[s,t.encode])),Ct=!1,St=(s,t)=>Pt[s](t);export{St as decode,Pt as decoders,wt as dictionary,Vt as encoders,Ct as hash,V as hooks,It as matchers,jt as nodes,Lt as root,kt as server_loads};
@@ -1 +0,0 @@
1
- import{l as o,a as r}from"../chunks/BIaXC2t9.js";export{o as load_css,r as start};
@@ -1,2 +0,0 @@
1
- )�import{l as o,a as r}from"../chunks/BIaXC2t9.js";export{o as load_css,r as start};
2
- 
@@ -1 +0,0 @@
1
- import{a as j,f as A,s as z,d as H,b as M,g as V,h as W}from"../chunks/r0JawsZc.js";import{t as C,s as i,c as t,r as e,p as I,u as O,w as D,y as f,z as L,o as P}from"../chunks/CZHsSL_X.js";import{a as v,s as T}from"../chunks/CQjSATpv.js";import{g as E}from"../chunks/BIaXC2t9.js";import{p as F}from"../chunks/CiF38mQq.js";var G=A('<div><span class="status-dot"></span> <span> </span></div>');function J(u,c){function s(a){switch(a){case"degraded":return"Degraded";case"error":return"Offline";case"healthy":return"Online";default:return"Checking"}}function p(a){switch(a){case"degraded":return"degraded";case"error":return"offline";case"healthy":return"online";default:return""}}var n=G(),r=i(t(n),2),d=t(r,!0);e(r),e(n),C((a,h)=>{v(n,1,`status-badge ${a??""}`),z(d,h)},[()=>p(c.status),()=>s(c.status)]),j(u,n)}var K=A('<div class="app"><header class="header"><div class="header-content"><a href="/" class="logo"><img src="/app-icon.png" alt="Shooter" class="logo-icon" width="24" height="24"/> <span class="logo-text">Shooter</span></a> <div class="nav-right svelte-12qhfyh"><!> <button aria-label="Settings"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="3"></circle><path d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06A1.65 1.65 0 0 0 4.68 15a1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06A1.65 1.65 0 0 0 9 4.68a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06A1.65 1.65 0 0 0 19.4 9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z"></path></svg></button></div></div></header> <div class="content-area svelte-12qhfyh"><!></div> <nav class="bottom-tabs svelte-12qhfyh"><div class="bottom-tabs-inner svelte-12qhfyh"><a href="/"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z"></path></svg> <span>Projects</span></a> <a href="/terminals"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><polyline points="4 17 10 11 4 5"></polyline><line x1="12" y1="19" x2="20" y2="19"></line></svg> <span>Terminals</span></a></div></nav></div>');function Y(u,c){I(c,!0);const s=()=>W(F,"$page",p),[p,n]=V();let r=P("unknown");O(()=>{d();const o=setInterval(()=>{d()},3e4);return()=>{clearInterval(o)}});async function d(){try{const o=await fetch("/api/health");if(!o.ok){f(r,"error");return}const l=await o.json();f(r,l.status==="healthy"||l.status==="degraded"||l.status==="error"?l.status:"unknown",!0)}catch{f(r,"error")}}var a=K(),h=t(a),m=t(h),y=i(t(m),2),k=t(y);J(k,{get status(){return L(r)}});var b=i(k,2);e(y),e(m),e(h);var g=i(h,2),$=t(g);T($,()=>c.children),e(g);var w=i(g,2),_=t(w),x=t(_);let S;var B=i(x,2);let q;e(_),e(w),e(a),C((o,l)=>{v(b,1,`btn-gear ${s().url.pathname==="/config"?"btn-gear-active":""}`,"svelte-12qhfyh"),S=v(x,1,"tab-item svelte-12qhfyh",null,S,o),q=v(B,1,"tab-item svelte-12qhfyh",null,q,l)},[()=>({active:s().url.pathname==="/"||s().url.pathname.startsWith("/project")||s().url.pathname.startsWith("/session")}),()=>({active:s().url.pathname.startsWith("/terminals")})]),M("click",b,()=>E("/config")),j(u,a),D(),n()}H(["click"]);export{Y as component};
@@ -1 +0,0 @@
1
- import{d as P,b as x,a as i,g as V,f as q,s as w,h as C,t as d}from"../chunks/r0JawsZc.js";import{F as D,_ as J,a0 as k,I as K,a1 as j,a2 as L,z as S,a3 as M,V as N,a4 as O,p as Q,t as y,w as R,c as f,s as g,x as U,$ as W,r as v}from"../chunks/CZHsSL_X.js";import{i as $}from"../chunks/B8XegpSE.js";import{h as X}from"../chunks/BOYo8yTr.js";import{g as Y}from"../chunks/BIaXC2t9.js";import{p as Z}from"../chunks/CiF38mQq.js";function ee(n=!1){const s=D,t=s.l.u;if(!t)return;let p=()=>M(s.s);if(n){let l=0,a={};const m=N(()=>{let c=!1;const u=s.s;for(const o in u)u[o]!==a[o]&&(a[o]=u[o],c=!0);return c&&l++,l});p=()=>S(m)}t.b.length&&J(()=>{G(s,p),j(t.b)}),k(()=>{const l=K(()=>t.m.map(L));return()=>{for(const a of l)typeof a=="function"&&a()}}),t.a.length&&k(()=>{G(s,p),j(t.a)})}function G(n,s){if(n.l.s)for(const t of n.l.s)S(t);s()}O();var te=q('<main class="error-page svelte-1j96wlh"><div class="error-content svelte-1j96wlh"><div class="error-code svelte-1j96wlh"> </div> <h1 class="error-title svelte-1j96wlh"><!></h1> <p class="error-message svelte-1j96wlh"><!></p> <div class="error-actions svelte-1j96wlh"><button class="error-btn svelte-1j96wlh">Go Home</button> <button class="error-btn error-btn-secondary svelte-1j96wlh">Go Back</button></div></div></main>');function ce(n,s){Q(s,!1);const t=()=>C(Z,"$page",p),[p,l]=V();ee();var a=te();X("1j96wlh",e=>{U(()=>{W.title="Error - Shooter"})});var m=f(a),c=f(m),u=f(c,!0);v(c);var o=g(c,2),T=f(o);{var z=e=>{var r=d("Page not found");i(e,r)},A=e=>{var r=d("Something went wrong");i(e,r)};$(T,e=>{t().status===404?e(z):e(A,-1)})}v(o);var h=g(o,2),B=f(h);{var E=e=>{var r=d();y(()=>w(r,t().error.message)),i(e,r)},F=e=>{var r=d("The page you're looking for doesn't exist or has been moved.");i(e,r)},H=e=>{var r=d("An unexpected error occurred. Try refreshing or going back.");i(e,r)};$(B,e=>{t().error?.message?e(E):t().status===404?e(F,1):e(H,-1)})}v(h);var _=g(h,2),b=f(_),I=g(b,2);v(_),v(m),v(a),y(()=>w(u,t().status)),x("click",b,()=>Y("/")),x("click",I,()=>{history.back()}),i(n,a),R(),l()}P(["click"]);export{ce as component};
@@ -1 +0,0 @@
1
- import{a as f,f as u,s as S}from"../chunks/r0JawsZc.js";import{p as ue,o as g,q as pe,u as he,v as me,w as ge,x as _e,y as r,z as s,$ as ye,c as o,s as d,f as F,A as Ce,r as t,B as q,t as xe}from"../chunks/CZHsSL_X.js";import{i as E}from"../chunks/B8XegpSE.js";import{B as L,a as Se,e as J,i as be,P as Pe,s as $e}from"../chunks/B5NAKyil.js";import{h as je}from"../chunks/BOYo8yTr.js";import{g as Ie}from"../chunks/BIaXC2t9.js";import{g as ke,s as we,c as Ae,S as Ee}from"../chunks/UJOiqIYE.js";import{i as Le}from"../chunks/DSU1n5N_.js";import{E as D}from"../chunks/CSoRdFvv.js";import{I as Me}from"../chunks/DjsDGxCa.js";import"../chunks/CQjSATpv.js";import{f as Te}from"../chunks/BLszSzTT.js";var Be=u('<meta name="description" content="Claude Code sessions across all projects"/>'),Re=u("<!> Refresh",1),Ke=u('<div class="loading-container"></div>'),Ne=u('<a class="session-card"><div class="session-card-header"><div><h3 class="session-card-title"> </h3> <div class="session-card-subtitle"> </div></div> <!></div> <div class="session-stats"><span><strong> </strong> </span></div></a>'),Oe=u('<div style="text-align: center; padding: 1rem;"><!></div>'),ze=u('<div class="projects-container svelte-1uha8ag"></div> <!>',1),Fe=u('<main class="main"><div class="page-header svelte-1uha8ag"><div class="page-header-content svelte-1uha8ag"><div><h1 class="page-title svelte-1uha8ag">Projects</h1> <p class="page-description svelte-1uha8ag">Claude Code sessions across all projects</p></div> <div class="page-actions svelte-1uha8ag"><!></div></div></div> <!> <!></main>');function es(G,H){ue(H,!0);const V=1e4,M=20;let n=g(pe([])),p=g(!1),b=!1,h=g(null),C=null,_=g(null),T=g(!1),P=g(0);he(()=>{Z();const e=ke("shooter_projects");e&&(r(n,e,!0),r(p,!1)),x(),C=setInterval(()=>{s(h)?.apiKey&&s(P)<=M&&x()},V)}),me(()=>{C&&(clearInterval(C),C=null)});function Z(){try{const e=localStorage.getItem("shooter_config");if(e){const a=JSON.parse(e);Le(a)?r(h,a,!0):(localStorage.removeItem("shooter_config"),r(h,null))}}catch{}}async function x(e=!1,a=!1){if(!s(h)?.apiKey||b)return;b=!0,s(n).length===0&&r(p,!0);const l=e?s(P):0;try{const y=await fetch(`${a?"/api/sessions?refresh=true&":"/api/sessions?"}limit=${M}&offset=${l}`,{headers:{Authorization:`Bearer ${s(h).apiKey}`}});if(!y.ok){r(_,`Failed to load projects (HTTP ${y.status})`);return}r(_,null);const i=await y.json();e?r(n,[...s(n),...i.projects],!0):r(n,i.projects,!0),r(P,s(n).length,!0),r(T,i.total!==void 0?s(n).length<i.total:!1,!0),we("shooter_projects",s(n))}catch(v){r(_,"Failed to load projects"),console.error("Failed to fetch sessions:",v)}finally{r(p,!1),b=!1}}async function Q(){await x(!0)}async function U(){r(p,!0),Ae("shooter_projects"),await x(!1,!0)}function W(){Ie("/config")}function X(){return s(n).reduce((e,a)=>e+a.sessionCount,0)}var $=Fe();je("1uha8ag",e=>{var a=Be();_e(()=>{ye.title="Projects - Shooter"}),f(e,a)});var j=o($),B=o(j),R=d(o(B),2),Y=o(R);L(Y,{classes:"btn-secondary",onclick:U,get disabled(){return s(p)},children:(e,a)=>{var l=Re(),v=F(l);Me(v,{name:"refresh",size:14}),Ce(),f(e,l)},$$slots:{default:!0}}),t(R),t(B),t(j);var K=d(j,2);{var ee=e=>{Se(e,{get text(){return s(_)},classes:"banner-error"})};E(K,e=>{s(_)&&e(ee)})}var se=d(K,2);{var ae=e=>{var a=Ke();J(a,20,()=>Array(5),be,(l,v)=>{Ee(l,{classes:"shimmer-card"})}),t(a),f(e,a)},te=e=>{D(e,{icon:"settings",title:"Configuration Required",description:"Set up your API credentials to start tracking sessions",children:(a,l)=>{L(a,{classes:"btn-primary",onclick:W,text:"Configure Settings"})}})},re=e=>{D(e,{icon:"bell",title:"No sessions yet",description:"Claude Code sessions will appear here once JSONL files are found"})},oe=q(()=>X()===0),ie=e=>{var a=ze(),l=F(a);J(l,21,()=>s(n),i=>i.id,(i,c)=>{var m=Ne(),I=o(m),k=o(I),w=o(k),ne=o(w,!0);t(w);var N=d(w,2),le=o(N,!0);t(N),t(k);var ce=d(k,2);{let fe=q(()=>Te(s(c).lastModified));Pe(ce,{get text(){return`Last updated ${s(fe)??""}`},classes:"pill-session-time"})}t(I);var O=d(I,2),z=o(O),A=o(z),de=o(A,!0);t(A);var ve=d(A);t(z),t(O),t(m),xe(()=>{$e(m,"href",`/project?id=${s(c).id??""}`),S(ne,s(c).name),S(le,s(c).fullPath),S(de,s(c).sessionCount),S(ve,` ${s(c).sessionCount===1?"session":"sessions"}`)}),f(i,m)}),t(l);var v=d(l,2);{var y=i=>{var c=Oe(),m=o(c);L(m,{classes:"btn-secondary",onclick:Q,text:"Load More"}),t(c),f(i,c)};E(v,i=>{s(T)&&i(y)})}f(e,a)};E(se,e=>{s(p)&&s(n).length===0?e(ae):s(h)?.apiKey?s(oe)?e(re,2):e(ie,-1):e(te,1)})}t($),f(G,$),ge()}export{es as component};
@@ -1,3 +0,0 @@
1
- import{a as d,f as u,s as E}from"../chunks/r0JawsZc.js";import{t as R,c as f,s as h,r as v,z as t,p as qe,u as Ae,w as Be,x as Qe,f as K,y as e,o as _,$ as Ne,A as fe,B as k}from"../chunks/CZHsSL_X.js";import{i as B}from"../chunks/B8XegpSE.js";import{h as Pe}from"../chunks/BOYo8yTr.js";import{e as Ke,b as De,i as Oe,B as J,I as X,a as Le,s as Je}from"../chunks/B5NAKyil.js";import{s as ze,a as ee}from"../chunks/CQjSATpv.js";import{p as Me}from"../chunks/Bu1aqm5j.js";import{i as je}from"../chunks/DSU1n5N_.js";import{I as pe}from"../chunks/DjsDGxCa.js";var Ee=u('<p class="card-description"> </p>'),Fe=u('<div class="card-header"><h2 class="card-title"> </h2> <!></div>'),Ge=u('<div><!> <div class="card-content"><!></div></div>');function M(c,l){const p=Me(l,"class",3,"");var n=Ge(),g=f(n);{var s=C=>{var $=Fe(),x=f($),Q=f(x,!0);v(x);var U=h(x,2);{var q=D=>{var N=Ee(),P=f(N,!0);v(N),R(()=>E(P,l.description)),d(D,N)};B(U,D=>{l.description&&D(q)})}v($),R(()=>E(Q,l.title)),d(C,$)};B(g,C=>{l.title&&C(s)})}var m=h(g,2),o=f(m);ze(o,()=>l.children),v(m),v(n),R(()=>ee(n,1,`card ${p()??""}`)),d(c,n)}function j(c){return c instanceof Error?c.message:typeof c=="string"?c:String(c)}function He(){return ge()!==null}async function We(){const c=ge();if(!c)throw new Error("Scanner not available");return c()}function ge(){if(typeof window>"u")return null;const c=window.ShooterBridge?.scanner;if(c&&typeof c.scan=="function")return()=>c.scan();const l=window.ShooterNativeBridge?.scanner;return l&&typeof l.scan=="function"?()=>l.scan():null}var Ye=u("<div><!></div>"),Ze=u("<div></div>");function Ve(c,l){var p=Ze();Ke(p,21,()=>l.steps,Oe,(n,g,s)=>{var m=Ye();let o;var C=f(m);De(C,{get onclick(){return l.onhandleStepClick},get label(){return t(g).label},get icon(){return t(g).icon},stepIndex:s+1}),v(m),R(()=>o=ee(m,1,"step-container svelte-xw39st",null,o,{"active-step":l.currentStepIndex===s,"completed-step":l.currentStepIndex>s})),d(n,m)}),v(p),R(()=>ee(p,1,`container ${l.classes??""??""}`,"svelte-xw39st")),d(c,p)}var Xe=u('<meta name="description" content="Configure notification system settings"/>'),et=u('<!> <!> <p class="input-help svelte-1gp6n77">Find this in your <code class="svelte-1gp6n77">~/.shooter/.env</code> file. Run <code class="svelte-1gp6n77">shooter setup</code> to generate one.</p> <!> <p class="input-help svelte-1gp6n77">Optional — only needed for iOS/Android push notifications.</p>',1),tt=u("<!> Test Connection",1),rt=u(`<p class="qr-description svelte-1gp6n77">Scan the QR code shown on your server's settings page to auto-configure the
2
- connection.</p> <!>`,1),at=u('<p class="qr-server-url svelte-1gp6n77">Server: <code class="svelte-1gp6n77"> </code></p>'),nt=u('<div class="qr-container svelte-1gp6n77"><img alt="QR code for mobile app pairing" class="qr-image svelte-1gp6n77"/></div> <p class="qr-hint svelte-1gp6n77">Scan this QR code with the Shooter iOS or Android app to connect.</p> <!>',1),ot=u('<div class="qr-placeholder svelte-1gp6n77"><p class="qr-loading-text svelte-1gp6n77">Generating QR code...</p></div>'),st=u('<p class="qr-error svelte-1gp6n77"> </p>'),it=u(`<p class="qr-description svelte-1gp6n77">Generate a QR code containing your server URL and API key. Your mobile app can
3
- scan it to auto-configure the connection.</p>`),ct=u("<!> <!>",1),lt=u('<div class="qr-section svelte-1gp6n77"><!></div>'),dt=u('<p class="danger-description svelte-1gp6n77">Clear all saved configuration data from this device.</p> <!>',1),vt=u('<main class="main"><div class="settings-container svelte-1gp6n77"><div style="margin-bottom: var(--space-4);"><a href="/" class="back-link">← Back to Projects</a></div> <div class="page-header svelte-1gp6n77"><h1 class="page-title svelte-1gp6n77">Settings</h1> <p class="page-description svelte-1gp6n77">Configure your API credentials and notification preferences</p></div> <div class="settings-grid svelte-1gp6n77"><section class="settings-section svelte-1gp6n77"><!> <!> <div class="button-group svelte-1gp6n77"><!> <!></div></section> <aside class="settings-sidebar svelte-1gp6n77"><!> <!> <!></aside></div></div></main>');function wt(c,l){qe(l,!0);let p=_(""),n=_(""),g=_(""),s=_(""),m=_(!1),o=_(""),C=_(!1),$=_(""),x=_(""),Q=_(!1),U=_(""),q=_(!1),D=_(!1),N=!1,P=_(!1);async function me(){if(!t(n).trim()){e(U,"Save an API key first to generate a QR code");return}e(Q,!0),e(U,""),e($,""),e(x,"");try{const r=await fetch("/api/qr-config",{headers:{Authorization:`Bearer ${t(n).trim()}`}});if(!r.ok){const i=await r.json();e(U,i.error||"Failed to generate QR code",!0);return}const a=await r.json();e($,a.dataUrl,!0),e(x,a.serverUrl,!0)}catch(r){e(U,`Network error: ${j(r)}`)}finally{e(Q,!1)}}async function he(){e(P,!0),e(s,""),e(o,"");try{const r=await We();try{const a=JSON.parse(r);typeof a.serverUrl=="string"&&a.serverUrl&&e(p,a.serverUrl,!0),typeof a.apiKey=="string"&&a.apiKey&&e(n,a.apiKey,!0),await re();const i=t(o);i!=="error"&&i!=="warning"&&(e(s,"Configuration updated from QR code"),e(o,"success"))}catch{e(s,"Invalid QR code data"),e(o,"error")}}catch(r){const a=j(r);a!=="cancelled"&&(e(s,`Scanner error: ${a}`),e(o,"error"))}finally{e(P,!1)}}function F(){return typeof window>"u"?null:window.ShooterBridge?window.ShooterBridge:window.ShooterNativeBridge?window.ShooterNativeBridge:null}function G(){return window.location.origin}function te(){const r=F();if(r&&!N){e(C,!0);try{const a=JSON.parse(r.getConfig?.()??"{}");a.serverUrl&&e(p,a.serverUrl,!0),a.apiKey&&e(n,a.apiKey,!0);const i=r.getFcmToken?.();i&&e(g,i,!0),N=!0}catch{}}e(q,He(),!0)}Ae(()=>{{try{const r=localStorage.getItem("shooter_config");if(r){const a=JSON.parse(r);je(a)?(a.apiKey&&e(n,a.apiKey,!0),a.deviceToken&&e(g,a.deviceToken,!0),a.serverUrl&&e(p,a.serverUrl,!0)):localStorage.removeItem("shooter_config")}}catch{}if(te(),t(p)||e(p,G(),!0),e(D,!0),!t(q)){const r=setInterval(()=>{te(),t(q)&&clearInterval(r)},200);setTimeout(()=>{clearInterval(r)},3e3)}}});async function re(){e(m,!0),e(s,""),e(o,"");try{const r=t(p).trim().replace(/\/+$/,"");localStorage.setItem("shooter_config",JSON.stringify({apiKey:t(n).trim(),deviceToken:t(g).trim(),lastUpdated:Date.now(),serverUrl:r||G()}));const a=F();a&&a.saveConfig?.(JSON.stringify({apiKey:t(n).trim(),serverUrl:r||G()})),(await fetch("/api/health")).ok?(e(s,"Configuration saved successfully"),e(o,"success")):(e(s,"Configuration saved but system health check failed"),e(o,"warning"))}catch(r){e(s,`Configuration failed: ${j(r)}`),e(o,"error")}e(m,!1)}async function ye(){if(!t(n).trim()){e(s,"API key is required for testing"),e(o,"error");return}e(m,!0),e(s,""),e(o,"");try{const r={data:{source:"config-test",timestamp:Date.now()},message:`Configuration test at ${new Date().toLocaleTimeString()}`,title:"Configuration Test"};t(g).trim()&&(r.deviceToken=t(g).trim());const a=await fetch("/api/notify",{body:JSON.stringify(r),headers:{Authorization:`Bearer ${t(n)}`,"Content-Type":"application/json"},method:"POST"}),i=await a.json();a.ok?(e(s,"Test notification sent successfully"),e(o,"success")):(e(s,`Test failed: ${i.error||"Unknown error"}`),e(o,"error"))}catch(r){e(s,`Network error: ${j(r)}`),e(o,"error")}e(m,!1)}function _e(){{localStorage.removeItem("shooter_config"),e(p,typeof window<"u"?window.location.origin:"",!0),e(n,""),e(g,""),e(s,"Configuration cleared"),e(o,"success");const r=F();r&&r.saveConfig?.(JSON.stringify({apiKey:"",serverUrl:""}))}}var H=vt();Pe("1gp6n77",r=>{var a=Xe();Qe(()=>{Ne.title="Settings - Shooter"}),d(r,a)});var ae=f(H),ne=h(f(ae),4),W=f(ne),oe=f(W);M(oe,{title:"Server Configuration",description:"Configure server connection and credentials",children:(r,a)=>{var i=et(),S=K(i);X(S,{name:"serverUrl",label:"Server URL",dataType:"text",placeholder:"https://shooter.breezehq.dev",infoMessage:"Base URL of your Shooter server. Apps will reload with this URL on next launch.",get value(){return t(p)},set value(b){e(p,b,!0)}});var I=h(S,2);X(I,{name:"apiKey",label:"API Key",dataType:"password",placeholder:"Enter your API key",infoMessage:"Required for sending notifications",get value(){return t(n)},set value(b){e(n,b,!0)}});var O=h(I,4);{let b=k(()=>t(C)?"Waiting for token...":"64-character hex string"),T=k(()=>t(C)&&t(g)?"Auto-detected from app":"Device token from app registration");X(O,{name:"deviceToken",label:"Device Token",dataType:"text",get placeholder(){return t(b)},get infoMessage(){return t(T)},classes:"input-mono",get value(){return t(g)},set value(A){e(g,A,!0)}})}fe(2),d(r,i)},$$slots:{default:!0}});var se=h(oe,2);{var Se=r=>{const a=k(()=>t(o)==="success"?"check-circle":t(o)==="error"?"x-circle":"alert-triangle");{const i=I=>{pe(I,{get name(){return t(a)},size:16})};let S=k(()=>t(o)||"info");Le(r,{get text(){return t(s)},get classes(){return`banner-${t(S)??""}`},icon:i,$$slots:{icon:!0}})}};B(se,r=>{t(s)&&r(Se)})}var ie=h(se,2),ce=f(ie);{let r=k(()=>t(m)||!t(n).trim());J(ce,{classes:"btn-secondary",onclick:ye,get disabled(){return t(r)},children:(a,i)=>{var S=tt(),I=K(S);{var O=b=>{pe(b,{name:"play",size:14})};B(I,b=>{t(m)||b(O)})}fe(),d(a,S)},$$slots:{default:!0}})}var we=h(ce,2);{let r=k(()=>t(m)||!t(n).trim());J(we,{classes:"btn-primary",onclick:re,get disabled(){return t(r)},get showLoader(){return t(m)},text:"Save Changes"})}v(ie),v(W);var le=h(W,2),de=f(le);M(de,{title:"Setup Guide",children:(r,a)=>{{let i=k(()=>t(n).trim()&&t(g).trim()?2:t(n).trim()?1:0);Ve(r,{steps:[{label:"Get API Key"},{label:"Find Device Token"},{label:"Test Connection"}],get currentStepIndex(){return t(i)},classes:"setup-stepper"})}},$$slots:{default:!0}});var ve=h(de,2);{let r=k(()=>t(q)?"Scan a QR code to connect":"Scan to connect your mobile app");M(ve,{title:"Mobile App Setup",get description(){return t(r)},children:(a,i)=>{var S=lt(),I=f(S);{var O=T=>{var A=rt(),z=h(K(A),2);{let Y=k(()=>t(P)?"Scanning...":"Scan QR Code");J(z,{classes:"btn-secondary btn-sm",onclick:he,get disabled(){return t(P)},get text(){return t(Y)}})}d(T,A)},b=T=>{var A=ct(),z=K(A);{var Y=y=>{var w=nt(),L=K(w),Ue=f(L);v(L);var Ie=h(L,4);{var Te=Z=>{var V=at(),ue=h(f(V)),Re=f(ue,!0);v(ue),v(V),R(()=>E(Re,t(x))),d(Z,V)};B(Ie,Z=>{t(x)&&Z(Te)})}R(()=>Je(Ue,"src",t($))),d(y,w)},ke=y=>{var w=ot();d(y,w)},Ce=y=>{var w=st(),L=f(w,!0);v(w),R(()=>E(L,t(U))),d(y,w)},$e=y=>{var w=it();d(y,w)};B(z,y=>{t($)?y(Y):t(Q)?y(ke,1):t(U)?y(Ce,2):y($e,-1)})}var xe=h(z,2);{let y=k(()=>t(Q)||!t(n).trim()),w=k(()=>t($)?"Regenerate QR Code":"Generate QR Code");J(xe,{classes:"btn-secondary btn-sm",onclick:me,get disabled(){return t(y)},get text(){return t(w)}})}d(T,A)};B(I,T=>{t(q)?T(O):T(b,-1)})}v(S),d(a,S)},$$slots:{default:!0}})}var be=h(ve,2);M(be,{title:"Danger Zone",children:(r,a)=>{var i=dt(),S=h(K(i),2);J(S,{classes:"btn-danger btn-sm",onclick:_e,text:"Clear Configuration"}),d(r,i)},$$slots:{default:!0}}),v(le),v(ne),v(ae),v(H),d(c,H),Be()}export{wt as component};
@@ -1 +0,0 @@
1
- import{a as u,f as p,s as b}from"../chunks/r0JawsZc.js";import{p as Qe,o as w,q as We,u as Xe,v as Ye,w as et,D as tt,z as e,y as c,$ as at,c as n,s as l,r as o,B as f,f as L,A as Q,t as W}from"../chunks/CZHsSL_X.js";import{i as j}from"../chunks/B8XegpSE.js";import{a as st,e as de,i as rt,B as N,P as D,s as ot}from"../chunks/B5NAKyil.js";import{h as nt}from"../chunks/BOYo8yTr.js";import{g as it}from"../chunks/BIaXC2t9.js";import{p as ct}from"../chunks/CRbaG9cv.js";import{g as lt,s as dt,S as ve,c as vt}from"../chunks/UJOiqIYE.js";import{i as ut}from"../chunks/DSU1n5N_.js";import{E as ue}from"../chunks/CSoRdFvv.js";import{I as ft}from"../chunks/DjsDGxCa.js";import"../chunks/CQjSATpv.js";import{f as pt}from"../chunks/BLszSzTT.js";var mt=p('<meta name="description" content="Project sessions sorted by latest update"/>'),ht=p('<div class="loading-container"><!> <!></div>'),_t=p('<div class="project-back-row svelte-urn6fi"><a href="/" class="back-link"><span class="back-arrow">&larr;</span> Back to Projects</a></div> <!>',1),gt=p("<!> Refresh",1),yt=p('<div class="session-card-subtitle"> </div>'),bt=p('<span class="connect-dot svelte-urn6fi"></span> Connect',1),jt=p('<a class="session-card"><div class="session-card-header"><div><h3 class="session-card-title"> </h3> <!></div> <div class="session-card-actions svelte-urn6fi"><!> <!></div></div> <div class="session-stats"><span><strong> </strong> messages</span> <!> <!></div> <div class="session-meta-row svelte-urn6fi"><span class="session-modified svelte-urn6fi"> </span> <span class="session-duration svelte-urn6fi"> </span></div></a>'),$t=p('<div style="text-align: center; padding: 1rem;"><!></div>'),Pt=p('<div class="sessions-container svelte-urn6fi"></div> <!>',1),xt=p('<div class="chat-session-header"><div class="chat-session-header-top svelte-urn6fi"><a href="/" class="back-link">&#8592; Back to Projects</a> <!></div> <h1 class="chat-session-title"> </h1> <div class="chat-session-meta"><span class="session-card-subtitle"> </span> <span> </span></div></div> <!>',1),St=p('<main class="main"><!> <!></main>');function Mt(fe,pe){Qe(pe,!0);const me=15e3,R=20;let i=w(null),g=w(!0),m=w(null),E=w(null),K=null,k=w(R),X=w(We([])),$=w(null);const P=f(()=>ct.url.searchParams.get("id")||""),he=f(()=>e(i)?e(i).sessions.slice(0,e(k)):[]),_e=f(()=>e(i)?e(k)<e(i).sessions.length:!1),ge=f(()=>new Set(e(X).filter(t=>t.sessionId).map(t=>t.sessionId)));Xe(()=>{ye();const t=lt(`shooter_project_${e(P)}`);t&&(c(i,t,!0),c(g,!1)),setTimeout(()=>{z(),M()},50),K=setInterval(()=>{e(m)?.apiKey&&e(P)&&(z(),M())},me)}),Ye(()=>{K&&(clearInterval(K),K=null)});function ye(){try{const t=localStorage.getItem("shooter_config");if(t){const a=JSON.parse(t);ut(a)?c(m,a,!0):(localStorage.removeItem("shooter_config"),c(m,null))}}catch{}}async function z(t=!1){if(!e(m)?.apiKey||!e(P)){c(g,!1);return}e(i)||c(g,!0);try{const d=await fetch(t?"/api/sessions?refresh=true":"/api/sessions",{headers:{Authorization:`Bearer ${e(m).apiKey}`}});if(!d.ok){c(E,`Failed to load project (HTTP ${d.status})`),c(g,!1);return}c(E,null);const h=(await d.json()).projects.find(C=>C.id===e(P))||null;c(i,h,!0),h&&dt(`shooter_project_${e(P)}`,h)}catch(a){console.error("Failed to fetch project:",a)}finally{c(g,!1)}}async function M(){if(e(m)?.apiKey)try{const t=await fetch("/api/sessions/detect",{headers:{Authorization:`Bearer ${e(m).apiKey}`}});if(t.ok){const a=await t.json();c(X,a.processes,!0)}}catch{}}async function Y(t,a,d){if(t.preventDefault(),t.stopPropagation(),!(!e(m)?.apiKey||!e(i)||e($))){c($,a,!0);try{const v=await fetch("/api/sessions/connect",{body:JSON.stringify({command:d,cwd:e(i).fullPath,sessionId:a}),headers:{Authorization:`Bearer ${e(m).apiKey}`,"Content-Type":"application/json"},method:"POST"});if(v.ok){const h=await v.json();it(`/terminals/${h.terminalId}`)}}catch(v){console.error("Failed to connect to session:",v)}finally{c($,null)}}}async function be(){c(g,!0),c(i,null),c(k,R),vt(`shooter_project_${e(P)}`),await z(!0),await M()}function je(){c(k,e(k)+R)}function ee(t){if(!t)return"";const a=new Date(t);return isNaN(a.getTime())?"":a.toLocaleDateString("en-US",{day:"numeric",hour:"2-digit",minute:"2-digit",month:"short"})}function $e(t,a){return t.length<=a?t:`${t.slice(0,a).trimEnd()}...`}var O=St();nt("urn6fi",t=>{var a=mt();tt(()=>{at.title=`${(e(i)?.name||"Project")??""} - Shooter`}),u(t,a)});var te=n(O);{var Pe=t=>{st(t,{get text(){return e(E)},classes:"banner-error"})};j(te,t=>{e(E)&&t(Pe)})}var xe=l(te,2);{var Se=t=>{var a=ht(),d=n(a);ve(d,{classes:"shimmer-header"});var v=l(d,2);de(v,16,()=>Array(4),rt,(h,C)=>{ve(h,{classes:"shimmer-card"})}),o(a),u(t,a)},we=t=>{var a=_t(),d=l(L(a),2);ue(d,{icon:"alert-triangle",title:"Project Not Found",description:"The requested project could not be found."}),u(t,a)},ke=t=>{var a=xt(),d=L(a),v=n(d),h=l(n(v),2);N(h,{classes:"btn-secondary",onclick:be,get disabled(){return e(g)},children:(y,q)=>{var I=gt(),J=L(I);ft(J,{name:"refresh",size:14}),Q(),u(y,I)},$$slots:{default:!0}}),o(v);var C=l(v,2),Ce=n(C,!0);o(C);var ae=l(C,2),F=n(ae),Ie=n(F,!0);o(F);var se=l(F,2),Be=n(se);o(se),o(ae),o(d);var Te=l(d,2);{var Ae=y=>{ue(y,{icon:"bell",title:"No sessions yet",description:"Sessions for this project will appear here"})},Ee=y=>{var q=Pt(),I=L(q);de(I,21,()=>e(he),x=>x.id,(x,r)=>{var B=jt(),T=n(B),G=n(T),H=n(G),Le=n(H,!0);o(H);var Ne=l(H,2);{var De=s=>{var _=yt(),A=n(_,!0);o(_),W(S=>b(A,S),[()=>$e(e(r).summary,80)]),u(s,_)};j(Ne,s=>{e(r).summary&&s(De)})}o(G);var re=l(G,2),oe=n(re);{let s=f(()=>pt(e(r).modified));D(oe,{get text(){return e(s)},classes:"pill-session-time"})}var Re=l(oe,2);{var ze=s=>{{let _=f(()=>e($)===e(r).id),A=f(()=>e($)===e(r).id);N(s,{classes:"btn-connect btn-xs",onclick:S=>Y(S,e(r).id,e(r).source==="opencode"?"opencode":"claude"),get disabled(){return e(_)},get showLoader(){return e(A)},children:(S,wt)=>{var Ze=bt();Q(),u(S,Ze)},$$slots:{default:!0}})}},Me=f(()=>e(ge).has(e(r).id)),Oe=s=>{{let _=f(()=>e($)===e(r).id),A=f(()=>e($)===e(r).id);N(s,{classes:"btn-resume btn-xs",onclick:S=>Y(S,e(r).id,e(r).source==="opencode"?"opencode":"claude"),get disabled(){return e(_)},get showLoader(){return e(A)},text:"Resume"})}};j(Re,s=>{e(Me)?s(ze):s(Oe,-1)})}o(re),o(T);var U=l(T,2),V=n(U),ne=n(V),Fe=n(ne,!0);o(ne),Q(),o(V);var ie=l(V,2);{var qe=s=>{D(s,{get text(){return`🌿 ${e(r).gitBranch??""}`},classes:"pill-git-branch"})};j(ie,s=>{e(r).gitBranch&&s(qe)})}var Je=l(ie,2);{var Ge=s=>{D(s,{text:"OpenCode",classes:"pill-source-opencode"})},He=s=>{D(s,{text:"Claude Code",classes:"pill-source-claude"})};j(Je,s=>{e(r).source==="opencode"?s(Ge):s(He,-1)})}o(U);var ce=l(U,2),Z=n(ce),Ue=n(Z);o(Z);var le=l(Z,2),Ve=n(le);o(le),o(ce),o(B),W((s,_)=>{ot(B,"href",`/session/${e(r).id??""}?project=${e(P)??""}`),b(Le,e(r).title),b(Fe,e(r).messageCount),b(Ue,`Last updated ${s??""}`),b(Ve,`Created ${_??""}`)},[()=>ee(e(r).modified),()=>ee(e(r).created)]),u(x,B)}),o(I);var J=l(I,2);{var Ke=x=>{var r=$t(),B=n(r);{let T=f(()=>`Load More (${e(i).sessions.length-e(k)} remaining)`);N(B,{classes:"btn-secondary",onclick:je,get text(){return e(T)}})}o(r),u(x,r)};j(J,x=>{e(_e)&&x(Ke)})}u(y,q)};j(Te,y=>{e(i).sessions.length===0?y(Ae):y(Ee,-1)})}W(()=>{b(Ce,e(i).name),b(Ie,e(i).fullPath),b(Be,`${e(i).sessionCount??""} sessions`)}),u(t,a)};j(xe,t=>{e(g)&&!e(i)?t(Se):e(i)?t(ke,-1):t(we,1)})}o(O),u(fe,O),et()}export{Mt as component};